Jump to content

Recommended Posts

Posted (edited)

nt9niPq.png
 

Hello, cheaters.
 - Nothing really new or unique, an simple panel that create list with pages for the droplist of Monster/Raidboss.
 - Simple addon : Player can choose to avoid specific item from the droplist.

 - Code not include part of "item.getIcon()" you can find many shared ways to get icon for each item.
 

Preview :

TyMkMkT.png

 

Code : Here

Edited by StinkyMadness
Added "Hide"
  • Like 8
  • Thanks 7
  • Sad 1
  • Upvote 4
Posted (edited)

Good work Stinky this is very nice and clean!

 

Drop rate of bosses seem to change based on normal drop rate tho and not boss drop rate.

 

PS : Would love if there was quantity included but I still like it! Thank you!

Edited by FrozenWarrior
  • Thanks 1
Posted
38 minutes ago, StinkyMadness said:

Quantity it’s 1 String everyone can add it I guess.

 

Also about raidboss you right, but not a big deal to fix it :P

Yup that's true.

Just wanted to let you know :dat:

Posted (edited)
4 minutes ago, FrozenWarrior said:

Yup that's true.

Just wanted to let you know :dat:


Your update :P

-double chance = (drop.getItemId() == 57 ? drop.getChance() * Config.RATE_DROP_ADENA : drop.getChance() * Config.RATE_DROP_ITEMS) / 10000;
+double chance = (npc.isType("RaidBoss") || npc.isType("GrandBoss") ? drop.getChance() * Config.RATE_DROP_ITEMS_BY_RAID : drop.getItemId() == 57 ? drop.getChance() * Config.RATE_DROP_ADENA : drop.getChance() * Config.RATE_DROP_ITEMS) / 10000;


                

Edited by StinkyMadness
  • 4 weeks later...
Posted
+   public void ignored(Integer itemId)
+   {
+       if (_ignored.contains(itemId))
+           _ignored.remove(itemId);
+       else
+           _ignored.add(itemId);
+   }

 

Integer as parameter and why this? Is there some null check or so?

Posted (edited)
On 7/6/2019 at 12:44 PM, V-Ray said:

...

Integer as parameter and why this? Is there some null check or so?

 

null check for what, how can be null when you select the item ID from existing list?
 

 

There are too way to remove an element from ArrayList.

1. By using remove() methods :
ArrayList provides two overloaded remove() method.
a. remove(int index) : Accept index of object to be removed.
b. remove(Obejct obj) : Accept object to be removed.

Edited by StinkyMadness
Posted
11 hours ago, V-Ray said:

+   public void ignored(Integer itemId)
+   {
+       if (_ignored.contains(itemId))
+           _ignored.remove(itemId);
+       else
+           _ignored.add(itemId);
+   }

 

Integer as parameter and why this? Is there some null check or so?

 

Java remove(int) drops by the index, not the stored value. If you .remove(636) on a Java List, you delete the 636th element of your List, going IOOBE if your List hasn't enough elements. To delete the integer 636 stored into your list, you have to pass it as Integer object.

Posted
+   public void ignored(Integer itemId)
+   {
+       if (_ignored.contains(itemId))
+           _ignored.remove(_ignored.indexOf(itemId));
+       else
+           _ignored.add(itemId);
+   }

Check this out.

Posted
16 minutes ago, Rootware said:

Check this out.

 

+   public void ignored(int itemId)
+   {
+       if (_ignored.contains(itemId))
+           _ignored.remove(Integer.valueOf(itemId));
+       else
+           _ignored.add(itemId);
+   }

You mean :P as my sensei told me

Posted (edited)

@StinkyMadness you don't understood one little thing. ArrayList in Java as Integer means index of array. You tries get index by itemId. Need get array index by object first and after remove the object by taken index.

 

If i'm not mistaken i sent you the same code in Skype. :smile: I don't see the better way.

 

https://stackoverflow.com/questions/8520808/how-to-remove-specific-object-from-arraylist-in-java

 

public class Test
{
	private static List<Integer> _ignored = new ArrayList<>();
	
	public static void main(String[] args)
	{
		for (int i = 0; i < 10; i++)
			ignored(57);
	}
	
	public static void ignored(int itemId)
	{
		if (_ignored.contains(itemId))
			System.out.println("Try to remove " + _ignored.remove(_ignored.indexOf(itemId)));
		else
		{
			_ignored.add(itemId);
			System.out.println("Try to add " + itemId);
		}
	}
}

 

Edited by Rootware
Posted
11 minutes ago, Rootware said:

@StinkyMadness you don't understood one little thing. ArrayList in Java as Integer means index of array. You tries get index by itemId. Need get array index by object first and after remove the object by taken index.

 

If i'm not mistaken i sent you the same code in Skype. :smile: I don't see the better way.

 

https://stackoverflow.com/questions/8520808/how-to-remove-specific-object-from-arraylist-in-java

 


public class Test
{
	private static List<Integer> _ignored = new ArrayList<>();
	
	public static void main(String[] args)
	{
		for (int i = 0; i < 10; i++)
			ignored(57);
	}
	
	public static void ignored(int itemId)
	{
		if (_ignored.contains(itemId))
			System.out.println("Try to remove " + _ignored.remove(_ignored.indexOf(itemId)));
		else
		{
			_ignored.add(itemId);
			System.out.println("Try to add " + itemId);
		}
	}
}

 

 

remove(Integer.valueOf( 

 

is normally more correct.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...