use of net.runelite.api.widgets.Widget in project runelite by runelite.
the class InventoryWidgetItemQuery method getInventoryItems.
private Collection<WidgetItem> getInventoryItems(Client client) {
Collection<WidgetItem> widgetItems = new ArrayList<>();
for (WidgetInfo widgetInfo : INVENTORY_WIDGET_INFOS) {
Widget inventory = client.getWidget(widgetInfo);
if (inventory == null || inventory.isHidden()) {
continue;
}
if (widgetInfo == WidgetInfo.INVENTORY) {
widgetItems.addAll(inventory.getWidgetItems());
break;
} else {
Widget[] children = inventory.getDynamicChildren();
for (int i = 0; i < children.length; i++) {
// set bounds to same size as default inventory
Rectangle bounds = children[i].getBounds();
bounds.setBounds(bounds.x - 1, bounds.y - 1, 32, 32);
widgetItems.add(new WidgetItem(children[i].getItemId(), children[i].getItemQuantity(), i, bounds));
}
break;
}
}
return widgetItems;
}
use of net.runelite.api.widgets.Widget in project runelite by runelite.
the class BankItemQuery method getBankItems.
private Collection<WidgetItem> getBankItems(Client client) {
Collection<WidgetItem> widgetItems = new ArrayList<>();
Widget bank = client.getWidget(WidgetInfo.BANK_ITEM_CONTAINER);
if (bank != null && !bank.isHidden()) {
Widget[] children = bank.getDynamicChildren();
for (int i = 0; i < children.length; i++) {
if (children[i].getItemId() == ITEM_EMPTY || children[i].isHidden()) {
continue;
}
// set bounds to same size as default inventory
Rectangle bounds = children[i].getBounds();
bounds.setBounds(bounds.x - 1, bounds.y - 1, 32, 32);
// Index is set to 0 because the widget's index does not correlate to the order in the bank
widgetItems.add(new WidgetItem(children[i].getItemId(), children[i].getItemQuantity(), 0, bounds));
}
}
return widgetItems;
}
use of net.runelite.api.widgets.Widget in project runelite by runelite.
the class EquipmentItemQuery method getEquippedItems.
private Collection<WidgetItem> getEquippedItems(Client client) {
Collection<WidgetItem> widgetItems = new ArrayList<>();
Widget equipment = client.getWidget(WidgetInfo.EQUIPMENT);
if (equipment != null && !equipment.isHidden()) {
if (slots.isEmpty()) {
slots.addAll(Arrays.asList(ALL_EQUIPMENT_WIDGET_INFOS));
}
for (WidgetInfo slot : slots) {
Widget parentWidget = client.getWidget(slot);
Widget itemWidget = parentWidget.getChild(1);
// Check if background icon is hidden. if hidden, item is equipped.
boolean equipped = parentWidget.getChild(2).isHidden();
// set bounds to same size as default inventory
Rectangle bounds = itemWidget.getBounds();
bounds.setBounds(bounds.x - 1, bounds.y - 1, 32, 32);
// Index is set to 0 because there is no set in stone order of equipment slots
widgetItems.add(new WidgetItem(equipped ? itemWidget.getItemId() : -1, itemWidget.getItemQuantity(), 0, bounds));
}
}
return widgetItems;
}
use of net.runelite.api.widgets.Widget in project runelite by runelite.
the class MinimapPlugin method startUp.
@Override
protected void startUp() throws Exception {
Widget minimapWidget = client.getWidget(WidgetInfo.MINIMAP_WIDGET);
if (minimapWidget != null) {
minimapWidget.setHidden(config.hideMinimap());
}
storeOriginalDots();
replaceMapDots();
}
use of net.runelite.api.widgets.Widget in project runelite by runelite.
the class ClueScrollEmoteOverlay method render.
@Override
public Dimension render(Graphics2D graphics) {
ClueScroll clue = plugin.getClue();
if (clue == null || !(clue instanceof EmoteClue)) {
return null;
}
EmoteClue emoteClue = (EmoteClue) clue;
if (!emoteClue.getFirstEmote().hasSprite()) {
return null;
}
Widget emoteContainer = client.getWidget(WidgetInfo.EMOTE_CONTAINER);
if (emoteContainer == null || emoteContainer.isHidden()) {
return null;
}
Widget emoteWindow = client.getWidget(WidgetInfo.EMOTE_WINDOW);
if (emoteWindow == null) {
return null;
}
for (Widget emoteWidget : emoteContainer.getDynamicChildren()) {
if (emoteWidget.getSpriteId() == emoteClue.getFirstEmote().getSpriteId()) {
highlightWidget(graphics, emoteWindow, emoteWidget, emoteClue.getSecondEmote() != null ? "1st" : "");
} else if (emoteClue.getSecondEmote() != null && emoteWidget.getSpriteId() == emoteClue.getSecondEmote().getSpriteId()) {
highlightWidget(graphics, emoteWindow, emoteWidget, "2nd");
}
}
return null;
}
Aggregations