client: update itemcontainer api usage

Use new api methods if appropriate
This commit is contained in:
Adam
2020-04-21 17:47:33 -04:00
parent 8f12c2846d
commit 6f0a2c9069
19 changed files with 66 additions and 130 deletions

View File

@@ -30,10 +30,8 @@ import java.awt.Graphics2D;
import java.awt.Shape; import java.awt.Shape;
import javax.inject.Inject; import javax.inject.Inject;
import net.runelite.api.Client; import net.runelite.api.Client;
import net.runelite.api.EquipmentInventorySlot;
import net.runelite.api.GameObject; import net.runelite.api.GameObject;
import net.runelite.api.InventoryID; import net.runelite.api.InventoryID;
import net.runelite.api.Item;
import net.runelite.api.ItemContainer; import net.runelite.api.ItemContainer;
import net.runelite.api.ItemID; import net.runelite.api.ItemID;
import net.runelite.api.Point; import net.runelite.api.Point;
@@ -89,16 +87,7 @@ class BlastFurnaceClickBoxOverlay extends Overlay
return false; return false;
} }
Item[] items = equipmentContainer.getItems(); return equipmentContainer.contains(ItemID.ICE_GLOVES);
int idx = EquipmentInventorySlot.GLOVES.getSlotIdx();
if (items == null || idx >= items.length)
{
return false;
}
Item glove = items[idx];
return glove != null && glove.getId() == ItemID.ICE_GLOVES;
} }
private void renderObject(GameObject object, Graphics2D graphics, Color color) private void renderObject(GameObject object, Graphics2D graphics, Color color)

View File

@@ -36,12 +36,10 @@ import java.awt.Rectangle;
import java.awt.geom.Area; import java.awt.geom.Area;
import java.awt.image.BufferedImage; import java.awt.image.BufferedImage;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet; import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
import java.util.Set; import java.util.Set;
import java.util.stream.Stream;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;
import javax.annotation.Nullable; import javax.annotation.Nullable;
import javax.inject.Inject; import javax.inject.Inject;
@@ -56,6 +54,7 @@ import net.runelite.api.GameState;
import net.runelite.api.InventoryID; import net.runelite.api.InventoryID;
import net.runelite.api.Item; import net.runelite.api.Item;
import net.runelite.api.ItemComposition; import net.runelite.api.ItemComposition;
import net.runelite.api.ItemContainer;
import net.runelite.api.ItemID; import net.runelite.api.ItemID;
import net.runelite.api.MenuAction; import net.runelite.api.MenuAction;
import net.runelite.api.NPC; import net.runelite.api.NPC;
@@ -321,10 +320,10 @@ public class ClueScrollPlugin extends Plugin
// Check if item was removed from inventory // Check if item was removed from inventory
if (clue != null && clueItemId != null) if (clue != null && clueItemId != null)
{ {
final Stream<Item> items = Arrays.stream(event.getItemContainer().getItems()); ItemContainer itemContainer = event.getItemContainer();
// Check if clue was removed from inventory // Check if clue was removed from inventory
if (items.noneMatch(item -> itemManager.getItemComposition(item.getId()).getId() == clueItemId)) if (!itemContainer.contains(clueItemId))
{ {
resetClue(true); resetClue(true);
} }
@@ -333,7 +332,7 @@ public class ClueScrollPlugin extends Plugin
// if three step clue check for clue scroll pieces // if three step clue check for clue scroll pieces
if (clue instanceof ThreeStepCrypticClue) if (clue instanceof ThreeStepCrypticClue)
{ {
if (((ThreeStepCrypticClue) clue).update(client, event, itemManager)) if (((ThreeStepCrypticClue) clue).update(event.getContainerId(), event.getItemContainer()))
{ {
worldMapPointsSet = false; worldMapPointsSet = false;
npcsToMark.clear(); npcsToMark.clear();

View File

@@ -28,21 +28,16 @@ import java.awt.Dimension;
import java.awt.Graphics2D; import java.awt.Graphics2D;
import java.util.AbstractMap; import java.util.AbstractMap;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Stream;
import lombok.Getter; import lombok.Getter;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import net.runelite.api.Client;
import net.runelite.api.InventoryID; import net.runelite.api.InventoryID;
import net.runelite.api.Item; import net.runelite.api.ItemContainer;
import static net.runelite.api.ItemID.TORN_CLUE_SCROLL_PART_1; import static net.runelite.api.ItemID.TORN_CLUE_SCROLL_PART_1;
import static net.runelite.api.ItemID.TORN_CLUE_SCROLL_PART_2; import static net.runelite.api.ItemID.TORN_CLUE_SCROLL_PART_2;
import static net.runelite.api.ItemID.TORN_CLUE_SCROLL_PART_3; import static net.runelite.api.ItemID.TORN_CLUE_SCROLL_PART_3;
import net.runelite.api.coords.WorldPoint; import net.runelite.api.coords.WorldPoint;
import net.runelite.api.events.ItemContainerChanged;
import net.runelite.client.game.ItemManager;
import static net.runelite.client.plugins.cluescrolls.ClueScrollOverlay.TITLED_CONTENT_COLOR; import static net.runelite.client.plugins.cluescrolls.ClueScrollOverlay.TITLED_CONTENT_COLOR;
import net.runelite.client.plugins.cluescrolls.ClueScrollPlugin; import net.runelite.client.plugins.cluescrolls.ClueScrollPlugin;
import net.runelite.client.ui.overlay.components.LineComponent; import net.runelite.client.ui.overlay.components.LineComponent;
@@ -122,26 +117,22 @@ public class ThreeStepCrypticClue extends ClueScroll implements TextClueScroll,
} }
} }
public boolean update(Client client, final ItemContainerChanged event, ItemManager itemManager) public boolean update(int containerId, final ItemContainer itemContainer)
{ {
if (event.getItemContainer() == client.getItemContainer(InventoryID.INVENTORY)) if (containerId == InventoryID.INVENTORY.getId())
{ {
boolean success = false; return checkForPart(itemContainer, TORN_CLUE_SCROLL_PART_1, 0) ||
success |= checkForPart(event, itemManager, TORN_CLUE_SCROLL_PART_1, 0); checkForPart(itemContainer, TORN_CLUE_SCROLL_PART_2, 1) ||
success |= checkForPart(event, itemManager, TORN_CLUE_SCROLL_PART_2, 1); checkForPart(itemContainer, TORN_CLUE_SCROLL_PART_3, 2);
success |= checkForPart(event, itemManager, TORN_CLUE_SCROLL_PART_3, 2);
return success;
} }
return false; return false;
} }
private boolean checkForPart(final ItemContainerChanged event, ItemManager itemManager, int clueScrollPart, int index) private boolean checkForPart(final ItemContainer itemContainer, int clueScrollPart, int index)
{ {
final Stream<Item> items = Arrays.stream(event.getItemContainer().getItems());
// If we have the part then that step is done // If we have the part then that step is done
if (items.anyMatch(item -> itemManager.getItemComposition(item.getId()).getId() == clueScrollPart)) if (itemContainer.contains(clueScrollPart))
{ {
final Map.Entry<CrypticClue, Boolean> entry = clueSteps.get(index); final Map.Entry<CrypticClue, Boolean> entry = clueSteps.get(index);

View File

@@ -31,10 +31,10 @@ import javax.imageio.ImageIO;
import javax.inject.Inject; import javax.inject.Inject;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import net.runelite.api.Client; import net.runelite.api.Client;
import net.runelite.api.EquipmentInventorySlot;
import net.runelite.api.InventoryID; import net.runelite.api.InventoryID;
import net.runelite.api.Item; import net.runelite.api.Item;
import net.runelite.api.ItemContainer; import net.runelite.api.ItemContainer;
import net.runelite.api.EquipmentInventorySlot;
import net.runelite.api.events.ItemContainerChanged; import net.runelite.api.events.ItemContainerChanged;
import net.runelite.client.RuneLite; import net.runelite.client.RuneLite;
import net.runelite.client.callback.ClientThread; import net.runelite.client.callback.ClientThread;
@@ -147,16 +147,13 @@ public class CustomCursorPlugin extends Plugin
return; return;
} }
final Item[] items = equipment.getItems(); Item weapon = equipment.getItem(EquipmentInventorySlot.WEAPON.getSlotIdx());
final int weaponIdx = EquipmentInventorySlot.WEAPON.getSlotIdx(); if (weapon == null)
if (items == null || weaponIdx >= items.length)
{ {
clientUI.resetCursor(); clientUI.resetCursor();
return; return;
} }
final Item weapon = items[EquipmentInventorySlot.WEAPON.getSlotIdx()];
final BufferedImage image = itemManager.getImage(weapon.getId()); final BufferedImage image = itemManager.getImage(weapon.getId());
if (weapon.getQuantity() > 0) if (weapon.getQuantity() > 0)

View File

@@ -251,10 +251,6 @@ public class FishingPlugin extends Plugin
for (Item item : itemContainer.getItems()) for (Item item : itemContainer.getItems())
{ {
if (item == null)
{
continue;
}
switch (item.getId()) switch (item.getId())
{ {
case ItemID.DRAGON_HARPOON: case ItemID.DRAGON_HARPOON:

View File

@@ -320,9 +320,7 @@ public class ItemChargePlugin extends Plugin
return; return;
} }
Item[] items = equipment.getItems(); if (equipment.contains(ItemID.RING_OF_FORGING))
if (EquipmentInventorySlot.RING.getSlotIdx() < items.length
&& items[EquipmentInventorySlot.RING.getSlotIdx()].getId() == ItemID.RING_OF_FORGING)
{ {
int charges = Ints.constrainToRange(config.ringOfForging() - 1, 0, MAX_RING_OF_FORGING_CHARGES); int charges = Ints.constrainToRange(config.ringOfForging() - 1, 0, MAX_RING_OF_FORGING_CHARGES);
updateRingOfForgingCharges(charges); updateRingOfForgingCharges(charges);

View File

@@ -176,11 +176,10 @@ class ItemPricesOverlay extends Overlay
} }
// Find the item in the container to get stack size // Find the item in the container to get stack size
final Item[] items = container.getItems();
final int index = menuEntry.getParam0(); final int index = menuEntry.getParam0();
if (index < items.length) final Item item = container.getItem(index);
if (item != null)
{ {
final Item item = items[index];
return getItemStackValueText(item); return getItemStackValueText(item);
} }

View File

@@ -245,16 +245,12 @@ public class ItemStatOverlay extends Overlay
ItemContainer c = client.getItemContainer(InventoryID.EQUIPMENT); ItemContainer c = client.getItemContainer(InventoryID.EQUIPMENT);
if (s.isEquipable() && currentEquipment != null && c != null) if (s.isEquipable() && currentEquipment != null && c != null)
{ {
final Item[] items = c.getItems();
final int slot = currentEquipment.getSlot(); final int slot = currentEquipment.getSlot();
if (slot != -1 && slot < items.length) final Item item = c.getItem(slot);
if (item != null)
{ {
final Item item = items[slot]; other = itemManager.getItemStats(item.getId(), false);
if (item != null)
{
other = itemManager.getItemStats(item.getId(), false);
}
} }
if (other == null && slot == EquipmentInventorySlot.WEAPON.getSlotIdx()) if (other == null && slot == EquipmentInventorySlot.WEAPON.getSlotIdx())

View File

@@ -38,14 +38,12 @@ import net.runelite.api.Client;
import net.runelite.api.Constants; import net.runelite.api.Constants;
import net.runelite.api.FontID; import net.runelite.api.FontID;
import net.runelite.api.InventoryID; import net.runelite.api.InventoryID;
import net.runelite.api.Item;
import net.runelite.api.ItemContainer; import net.runelite.api.ItemContainer;
import net.runelite.api.ItemID; import net.runelite.api.ItemID;
import net.runelite.api.ScriptID; import net.runelite.api.ScriptID;
import net.runelite.api.SpriteID; import net.runelite.api.SpriteID;
import net.runelite.api.VarPlayer; import net.runelite.api.VarPlayer;
import net.runelite.api.Varbits; import net.runelite.api.Varbits;
import net.runelite.client.events.ConfigChanged;
import net.runelite.api.events.GameTick; import net.runelite.api.events.GameTick;
import net.runelite.api.events.ScriptPostFired; import net.runelite.api.events.ScriptPostFired;
import net.runelite.api.events.VarbitChanged; import net.runelite.api.events.VarbitChanged;
@@ -57,6 +55,7 @@ import net.runelite.api.widgets.WidgetType;
import net.runelite.client.callback.ClientThread; import net.runelite.client.callback.ClientThread;
import net.runelite.client.config.ConfigManager; import net.runelite.client.config.ConfigManager;
import net.runelite.client.eventbus.Subscribe; import net.runelite.client.eventbus.Subscribe;
import net.runelite.client.events.ConfigChanged;
import net.runelite.client.game.ItemManager; import net.runelite.client.game.ItemManager;
import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.plugins.PluginDescriptor;
@@ -407,15 +406,7 @@ public class ItemStatPlugin extends Plugin
return 0; return 0;
} }
for (final Item item : inventory.getItems()) return inventory.count(ItemID.COINS_995);
{
if (item.getId() == ItemID.COINS_995)
{
return item.getQuantity();
}
}
return 0;
} }
private Widget getInventoryContainer() private Widget getInventoryContainer()

View File

@@ -25,6 +25,7 @@
package net.runelite.client.plugins.itemstats.potions; package net.runelite.client.plugins.itemstats.potions;
import net.runelite.api.Client; import net.runelite.api.Client;
import net.runelite.api.EquipmentInventorySlot;
import net.runelite.api.InventoryID; import net.runelite.api.InventoryID;
import net.runelite.api.Item; import net.runelite.api.Item;
import net.runelite.api.ItemContainer; import net.runelite.api.ItemContainer;
@@ -42,8 +43,8 @@ public class PrayerPotion extends StatBoost
this.delta = delta; this.delta = delta;
} }
private static final int RING_SLOT = 12; private static final int RING_SLOT = EquipmentInventorySlot.RING.getSlotIdx();
private static final int CAPE_SLOT = 1; private static final int CAPE_SLOT = EquipmentInventorySlot.CAPE.getSlotIdx();
@Override @Override
public int heals(Client client) public int heals(Client client)
@@ -53,18 +54,19 @@ public class PrayerPotion extends StatBoost
ItemContainer equipContainer = client.getItemContainer(InventoryID.EQUIPMENT); ItemContainer equipContainer = client.getItemContainer(InventoryID.EQUIPMENT);
if (equipContainer != null) if (equipContainer != null)
{ {
Item[] equip = equipContainer.getItems(); Item cape = equipContainer.getItem(CAPE_SLOT);
Item ring = equipContainer.getItem(RING_SLOT);
hasHolyWrench |= equip.length > RING_SLOT && equip[RING_SLOT].getId() == ItemID.RING_OF_THE_GODS_I; hasHolyWrench = ring != null && ring.getId() == ItemID.RING_OF_THE_GODS_I;
if (equip.length > CAPE_SLOT) if (cape != null)
{ {
int cape = equip[CAPE_SLOT].getId(); int capeId = cape.getId();
hasHolyWrench |= cape == ItemID.PRAYER_CAPE; hasHolyWrench |= capeId == ItemID.PRAYER_CAPE;
hasHolyWrench |= cape == ItemID.PRAYER_CAPET; hasHolyWrench |= capeId == ItemID.PRAYER_CAPET;
hasHolyWrench |= cape == ItemID.PRAYER_CAPE_10643; // No idea what this is hasHolyWrench |= capeId == ItemID.PRAYER_CAPE_10643; // No idea what this is
hasHolyWrench |= cape == ItemID.MAX_CAPE; hasHolyWrench |= capeId == ItemID.MAX_CAPE;
hasHolyWrench |= cape == ItemID.MAX_CAPE_13282; // Or these hasHolyWrench |= capeId == ItemID.MAX_CAPE_13282; // Or these
hasHolyWrench |= cape == ItemID.MAX_CAPE_13342; hasHolyWrench |= capeId == ItemID.MAX_CAPE_13342;
} }
} }
if (!hasHolyWrench) if (!hasHolyWrench)
@@ -75,7 +77,7 @@ public class PrayerPotion extends StatBoost
for (Item itemStack : invContainer.getItems()) for (Item itemStack : invContainer.getItems())
{ {
int item = itemStack.getId(); int item = itemStack.getId();
hasHolyWrench |= item == ItemID.HOLY_WRENCH; hasHolyWrench = item == ItemID.HOLY_WRENCH;
hasHolyWrench |= item == ItemID.PRAYER_CAPE; hasHolyWrench |= item == ItemID.PRAYER_CAPE;
hasHolyWrench |= item == ItemID.PRAYER_CAPET; hasHolyWrench |= item == ItemID.PRAYER_CAPET;
hasHolyWrench |= item == ItemID.PRAYER_CAPE_10643; hasHolyWrench |= item == ItemID.PRAYER_CAPE_10643;

View File

@@ -73,11 +73,11 @@ public class CastleWarsBandage implements Effect
return false; return false;
} }
final Item[] equipment = equipmentContainer.getItems(); final Item gloves = equipmentContainer.getItem(EquipmentInventorySlot.GLOVES.getSlotIdx());
if (equipment.length > EquipmentInventorySlot.GLOVES.getSlotIdx()) if (gloves != null)
{ {
return BRACELETS.contains(equipment[EquipmentInventorySlot.GLOVES.getSlotIdx()].getId()); return BRACELETS.contains(gloves.getId());
} }
return false; return false;

View File

@@ -31,7 +31,7 @@ import lombok.Getter;
import net.runelite.api.Client; import net.runelite.api.Client;
import net.runelite.api.GameState; import net.runelite.api.GameState;
import net.runelite.api.InventoryID; import net.runelite.api.InventoryID;
import net.runelite.api.Item; import net.runelite.api.ItemContainer;
import net.runelite.api.ItemID; import net.runelite.api.ItemID;
import net.runelite.api.Tile; import net.runelite.api.Tile;
import net.runelite.api.TileObject; import net.runelite.api.TileObject;
@@ -91,21 +91,13 @@ public class RoguesDenPlugin extends Plugin
@Subscribe @Subscribe
public void onItemContainerChanged(ItemContainerChanged event) public void onItemContainerChanged(ItemContainerChanged event)
{ {
if (event.getItemContainer() != client.getItemContainer(InventoryID.INVENTORY)) if (event.getContainerId() != InventoryID.INVENTORY.getId())
{ {
return; return;
} }
for (Item item : event.getItemContainer().getItems()) ItemContainer itemContainer = event.getItemContainer();
{ hasGem = itemContainer.contains(ItemID.MYSTIC_JEWEL);
if (item.getId() == ItemID.MYSTIC_JEWEL)
{
hasGem = true;
return;
}
}
hasGem = false;
} }
@Subscribe @Subscribe

View File

@@ -43,7 +43,6 @@ import net.runelite.api.ItemID;
import net.runelite.api.NPC; import net.runelite.api.NPC;
import net.runelite.api.NpcID; import net.runelite.api.NpcID;
import net.runelite.api.events.ChatMessage; import net.runelite.api.events.ChatMessage;
import net.runelite.client.events.ConfigChanged;
import net.runelite.api.events.DecorativeObjectDespawned; import net.runelite.api.events.DecorativeObjectDespawned;
import net.runelite.api.events.DecorativeObjectSpawned; import net.runelite.api.events.DecorativeObjectSpawned;
import net.runelite.api.events.GameStateChanged; import net.runelite.api.events.GameStateChanged;
@@ -53,9 +52,22 @@ import net.runelite.api.events.NpcSpawned;
import net.runelite.client.Notifier; import net.runelite.client.Notifier;
import net.runelite.client.config.ConfigManager; import net.runelite.client.config.ConfigManager;
import net.runelite.client.eventbus.Subscribe; import net.runelite.client.eventbus.Subscribe;
import net.runelite.client.events.ConfigChanged;
import net.runelite.client.plugins.Plugin; import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor; import net.runelite.client.plugins.PluginDescriptor;
import static net.runelite.client.plugins.runecraft.AbyssRifts.*; import static net.runelite.client.plugins.runecraft.AbyssRifts.AIR_RIFT;
import static net.runelite.client.plugins.runecraft.AbyssRifts.BLOOD_RIFT;
import static net.runelite.client.plugins.runecraft.AbyssRifts.BODY_RIFT;
import static net.runelite.client.plugins.runecraft.AbyssRifts.CHAOS_RIFT;
import static net.runelite.client.plugins.runecraft.AbyssRifts.COSMIC_RIFT;
import static net.runelite.client.plugins.runecraft.AbyssRifts.DEATH_RIFT;
import static net.runelite.client.plugins.runecraft.AbyssRifts.EARTH_RIFT;
import static net.runelite.client.plugins.runecraft.AbyssRifts.FIRE_RIFT;
import static net.runelite.client.plugins.runecraft.AbyssRifts.LAW_RIFT;
import static net.runelite.client.plugins.runecraft.AbyssRifts.MIND_RIFT;
import static net.runelite.client.plugins.runecraft.AbyssRifts.NATURE_RIFT;
import static net.runelite.client.plugins.runecraft.AbyssRifts.SOUL_RIFT;
import static net.runelite.client.plugins.runecraft.AbyssRifts.WATER_RIFT;
import net.runelite.client.ui.overlay.OverlayManager; import net.runelite.client.ui.overlay.OverlayManager;
@PluginDescriptor( @PluginDescriptor(
@@ -190,7 +202,7 @@ public class RunecraftPlugin extends Plugin
@Subscribe @Subscribe
public void onItemContainerChanged(ItemContainerChanged event) public void onItemContainerChanged(ItemContainerChanged event)
{ {
if (event.getItemContainer() != client.getItemContainer(InventoryID.INVENTORY)) if (event.getContainerId() != InventoryID.INVENTORY.getId())
{ {
return; return;
} }

View File

@@ -234,11 +234,6 @@ public class RunEnergyPlugin extends Plugin
final Item[] items = equipment.getItems(); final Item[] items = equipment.getItems();
if (items == null)
{
return 0;
}
int boost = 0; int boost = 0;
for (final GracefulEquipmentSlot slot : GracefulEquipmentSlot.values()) for (final GracefulEquipmentSlot slot : GracefulEquipmentSlot.values())

View File

@@ -280,16 +280,12 @@ public class SpecialCounterPlugin extends Plugin
return null; return null;
} }
Item[] items = equipment.getItems(); Item weapon = equipment.getItem(EquipmentInventorySlot.WEAPON.getSlotIdx());
int weaponIdx = EquipmentInventorySlot.WEAPON.getSlotIdx(); if (weapon == null)
if (items == null || weaponIdx >= items.length)
{ {
return null; return null;
} }
Item weapon = items[weaponIdx];
for (SpecialWeapon specialWeapon : SpecialWeapon.values()) for (SpecialWeapon specialWeapon : SpecialWeapon.values())
{ {
if (specialWeapon.getItemID() == weapon.getId()) if (specialWeapon.getItemID() == weapon.getId())

View File

@@ -798,16 +798,8 @@ public class TimersPlugin extends Plugin
ItemContainer container = itemContainerChanged.getItemContainer(); ItemContainer container = itemContainerChanged.getItemContainer();
if (container == client.getItemContainer(InventoryID.EQUIPMENT)) if (container == client.getItemContainer(InventoryID.EQUIPMENT))
{ {
Item[] items = container.getItems(); Item weapon = container.getItem(EquipmentInventorySlot.WEAPON.getSlotIdx());
int weaponIdx = EquipmentInventorySlot.WEAPON.getSlotIdx();
if (items == null || weaponIdx >= items.length)
{
removeGameTimer(STAFF_OF_THE_DEAD);
return;
}
Item weapon = items[weaponIdx];
if (weapon == null) if (weapon == null)
{ {
removeGameTimer(STAFF_OF_THE_DEAD); removeGameTimer(STAFF_OF_THE_DEAD);

View File

@@ -31,9 +31,7 @@ import com.google.inject.testing.fieldbinder.BoundFieldModule;
import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.ScheduledExecutorService;
import net.runelite.api.ChatMessageType; import net.runelite.api.ChatMessageType;
import net.runelite.api.Client; import net.runelite.api.Client;
import net.runelite.api.EquipmentInventorySlot;
import net.runelite.api.InventoryID; import net.runelite.api.InventoryID;
import net.runelite.api.Item;
import net.runelite.api.ItemContainer; import net.runelite.api.ItemContainer;
import net.runelite.api.ItemID; import net.runelite.api.ItemID;
import net.runelite.api.events.ChatMessage; import net.runelite.api.events.ChatMessage;
@@ -134,10 +132,7 @@ public class ItemChargePluginTest
// Create equipment inventory with ring of forging // Create equipment inventory with ring of forging
ItemContainer equipmentItemContainer = mock(ItemContainer.class); ItemContainer equipmentItemContainer = mock(ItemContainer.class);
when(client.getItemContainer(eq(InventoryID.EQUIPMENT))).thenReturn(equipmentItemContainer); when(client.getItemContainer(eq(InventoryID.EQUIPMENT))).thenReturn(equipmentItemContainer);
Item[] items = new Item[EquipmentInventorySlot.RING.getSlotIdx() + 1]; when(equipmentItemContainer.contains(ItemID.RING_OF_FORGING)).thenReturn(true);
when(equipmentItemContainer.getItems()).thenReturn(items);
Item ring = new Item(ItemID.RING_OF_FORGING, 1);
items[EquipmentInventorySlot.RING.getSlotIdx()] = ring;
// Run message // Run message
chatMessage = new ChatMessage(null, ChatMessageType.GAMEMESSAGE, "", USED_RING_OF_FORGING, "", 0); chatMessage = new ChatMessage(null, ChatMessageType.GAMEMESSAGE, "", USED_RING_OF_FORGING, "", 0);
itemChargePlugin.onChatMessage(chatMessage); itemChargePlugin.onChatMessage(chatMessage);

View File

@@ -32,7 +32,6 @@ import java.awt.Color;
import net.runelite.api.Client; import net.runelite.api.Client;
import net.runelite.api.EquipmentInventorySlot; import net.runelite.api.EquipmentInventorySlot;
import net.runelite.api.InventoryID; import net.runelite.api.InventoryID;
import net.runelite.api.Item;
import net.runelite.api.ItemContainer; import net.runelite.api.ItemContainer;
import net.runelite.client.game.ItemManager; import net.runelite.client.game.ItemManager;
import net.runelite.client.util.Text; import net.runelite.client.util.Text;
@@ -129,7 +128,6 @@ public class ItemStatOverlayTest
{ {
// Empty equipment (fully unarmed) // Empty equipment (fully unarmed)
final ItemContainer equipment = mock(ItemContainer.class); final ItemContainer equipment = mock(ItemContainer.class);
when(equipment.getItems()).thenReturn(new Item[0]);
when(client.getItemContainer(InventoryID.EQUIPMENT)).thenReturn(equipment); when(client.getItemContainer(InventoryID.EQUIPMENT)).thenReturn(equipment);
String tooltip; String tooltip;

View File

@@ -86,9 +86,7 @@ public class SpecialCounterPluginTest
// Set up spec weapon // Set up spec weapon
ItemContainer equipment = mock(ItemContainer.class); ItemContainer equipment = mock(ItemContainer.class);
Item[] items = new Item[EquipmentInventorySlot.WEAPON.getSlotIdx() + 1]; when(equipment.getItem(EquipmentInventorySlot.WEAPON.getSlotIdx())).thenReturn(new Item(ItemID.BANDOS_GODSWORD, 1));
items[EquipmentInventorySlot.WEAPON.getSlotIdx()] = new Item(ItemID.BANDOS_GODSWORD, 1);
when(equipment.getItems()).thenReturn(items);
when(client.getItemContainer(InventoryID.EQUIPMENT)).thenReturn(equipment); when(client.getItemContainer(InventoryID.EQUIPMENT)).thenReturn(equipment);
// Set up special attack energy // Set up special attack energy