Remove deprecated InventoryItemQuery class

This commit is contained in:
Jordan Atwood
2018-10-11 16:52:57 -07:00
committed by Adam
parent d4f51c4600
commit 3d3ec76af8
2 changed files with 25 additions and 93 deletions

View File

@@ -24,11 +24,14 @@
*/
package net.runelite.client.plugins.runecraft;
import com.google.common.collect.ImmutableList;
import com.google.inject.Provides;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Stream;
import javax.inject.Inject;
import lombok.AccessLevel;
import lombok.Getter;
@@ -48,8 +51,8 @@ import net.runelite.api.events.DecorativeObjectDespawned;
import net.runelite.api.events.DecorativeObjectSpawned;
import net.runelite.api.events.GameStateChanged;
import net.runelite.api.events.GameTick;
import net.runelite.api.events.ItemContainerChanged;
import net.runelite.api.events.MenuOptionClicked;
import net.runelite.api.queries.InventoryItemQuery;
import net.runelite.api.queries.NPCQuery;
import net.runelite.api.widgets.Widget;
import net.runelite.api.widgets.WidgetInfo;
@@ -72,6 +75,11 @@ public class RunecraftPlugin extends Plugin
private static final String POUCH_DECAYED_NOTIFICATION_MESSAGE = "Your rune pouch has decayed.";
private static final String POUCH_DECAYED_MESSAGE = "Your pouch has decayed through use.";
private static final int DESTROY_ITEM_WIDGET_ID = WidgetInfo.DESTROY_ITEM_YES.getId();
private static final List<Integer> DEGRADED_POUCHES = ImmutableList.of(
ItemID.MEDIUM_POUCH_5511,
ItemID.LARGE_POUCH_5513,
ItemID.GIANT_POUCH_5515
);
@Getter(AccessLevel.PACKAGE)
private final Set<DecorativeObject> abyssObjects = new HashSet<>();
@@ -233,29 +241,30 @@ public class RunecraftPlugin extends Plugin
}
@Subscribe
public void onGameTick(GameTick event)
public void onItemContainerChanged(ItemContainerChanged event)
{
darkMage = null;
if (!config.hightlightDarkMage())
if (event.getItemContainer() != client.getItemContainer(InventoryID.INVENTORY))
{
return;
}
Query inventoryQuery = new InventoryItemQuery(InventoryID.INVENTORY).idEquals(
ItemID.MEDIUM_POUCH_5511,
ItemID.LARGE_POUCH_5513,
ItemID.GIANT_POUCH_5515
);
final Item[] items = event.getItemContainer().getItems();
degradedPouchInInventory = Stream.of(items).anyMatch(i -> DEGRADED_POUCHES.contains(i.getId()));
}
Item[] items = queryRunner.runQuery(inventoryQuery);
degradedPouchInInventory = items != null && items.length > 0;
@Subscribe
public void onGameTick(GameTick event)
{
darkMage = null;
if (degradedPouchInInventory)
if (!config.hightlightDarkMage()
|| !degradedPouchInInventory)
{
Query darkMageQuery = new NPCQuery().idEquals(NpcID.DARK_MAGE);
NPC[] result = queryRunner.runQuery(darkMageQuery);
darkMage = result.length >= 1 ? result[0] : null;
return;
}
Query darkMageQuery = new NPCQuery().idEquals(NpcID.DARK_MAGE);
NPC[] result = queryRunner.runQuery(darkMageQuery);
darkMage = result.length >= 1 ? result[0] : null;
}
}