use of net.runelite.api.Query in project runelite by runelite.
the class BindNeckOverlay method getNecklaceWidgetItems.
private Collection<WidgetItem> getNecklaceWidgetItems() {
Query inventoryQuery = new InventoryWidgetItemQuery().idEquals(BINDING_NECKLACE);
WidgetItem[] inventoryWidgetItems = queryRunner.runQuery(inventoryQuery);
Query equipmentQuery = new EquipmentItemQuery().slotEquals(WidgetInfo.EQUIPMENT_AMULET).idEquals(BINDING_NECKLACE);
WidgetItem[] equipmentWidgetItems = queryRunner.runQuery(equipmentQuery);
Collection<WidgetItem> necklaces = new ArrayList<>();
necklaces.addAll(Arrays.asList(inventoryWidgetItems));
necklaces.addAll(Arrays.asList(equipmentWidgetItems));
return necklaces;
}
use of net.runelite.api.Query in project runelite by runelite.
the class JewelleryCountOverlay method getJewelleryWidgetItems.
private Collection<WidgetItem> getJewelleryWidgetItems() {
Query inventoryQuery = new InventoryWidgetItemQuery();
WidgetItem[] inventoryWidgetItems = queryRunner.runQuery(inventoryQuery);
Query equipmentQuery = new EquipmentItemQuery().slotEquals(WidgetInfo.EQUIPMENT_AMULET, WidgetInfo.EQUIPMENT_RING, WidgetInfo.EQUIPMENT_GLOVES, WidgetInfo.EQUIPMENT_WEAPON);
WidgetItem[] equipmentWidgetItems = queryRunner.runQuery(equipmentQuery);
Collection<WidgetItem> jewellery = new ArrayList<>();
jewellery.addAll(Arrays.asList(inventoryWidgetItems));
jewellery.addAll(Arrays.asList(equipmentWidgetItems));
return jewellery;
}
use of net.runelite.api.Query in project runelite by runelite.
the class ClueScrollPlugin method checkForClues.
@Schedule(period = 600, unit = ChronoUnit.MILLIS)
public void checkForClues() {
if (client.getGameState() == GameState.LOGIN_SCREEN) {
clue = null;
return;
}
npcsToMark = null;
objectsToMark = null;
equippedItems = null;
if (clue instanceof NpcClueScroll) {
String npc = ((NpcClueScroll) clue).getNpc();
if (npc != null) {
Query query = new NPCQuery().nameContains(npc);
npcsToMark = queryRunner.runQuery(query);
}
}
if (clue instanceof ObjectClueScroll) {
int objectId = ((ObjectClueScroll) clue).getObjectId();
if (objectId != -1) {
GameObjectQuery query = new GameObjectQuery().idEquals(objectId);
objectsToMark = queryRunner.runQuery(query);
}
}
if (clue instanceof EmoteClue) {
equippedItems = new HashSet<>();
Item[] result = queryRunner.runQuery(new InventoryItemQuery(InventoryID.EQUIPMENT));
if (result != null) {
for (Item item : result) {
equippedItems.add(item.getId());
}
}
}
ClueScroll clue = findClueScroll();
if (clue == null && this.clue != null) {
// wait for WAIT_DURATION before discarding the knowledge of the player having a clue.
if (Instant.now().compareTo(clueTimeout.plus(WAIT_DURATION)) < 0) {
return;
}
}
// so the clue window doesn't have to be open.
if (clue != null) {
this.clue = clue;
this.clueTimeout = Instant.now();
}
}
use of net.runelite.api.Query in project runelite by runelite.
the class FightCavePlugin method findJad.
private NPC findJad() {
Query query = new NPCQuery().nameContains("TzTok-Jad");
NPC[] result = queryRunner.runQuery(query);
return result.length >= 1 ? result[0] : null;
}
Aggregations