Fixed binding necklace charges not being reset when necklace is destroyed
This commit is contained in:
@@ -34,6 +34,7 @@ import javax.inject.Inject;
|
||||
import lombok.AccessLevel;
|
||||
import lombok.Getter;
|
||||
import net.runelite.api.ChatMessageType;
|
||||
import net.runelite.api.Client;
|
||||
import net.runelite.api.DecorativeObject;
|
||||
import net.runelite.api.GameState;
|
||||
import net.runelite.api.InventoryID;
|
||||
@@ -48,8 +49,11 @@ 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.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;
|
||||
import net.runelite.client.config.ConfigManager;
|
||||
import net.runelite.client.plugins.Plugin;
|
||||
import net.runelite.client.plugins.PluginDescriptor;
|
||||
@@ -62,6 +66,7 @@ import net.runelite.client.util.QueryRunner;
|
||||
public class RunecraftPlugin extends Plugin
|
||||
{
|
||||
private static Pattern bindNeckString = Pattern.compile("You have ([0-9]+) charges left before your Binding necklace disintegrates.");
|
||||
private static final int DESTROY_ITEM_WIDGET_ID = WidgetInfo.DESTROY_ITEM_YES.getId();
|
||||
|
||||
@Getter(AccessLevel.PACKAGE)
|
||||
private final Set<DecorativeObject> abyssObjects = new HashSet<>();
|
||||
@@ -72,6 +77,9 @@ public class RunecraftPlugin extends Plugin
|
||||
@Getter(AccessLevel.PACKAGE)
|
||||
private NPC darkMage;
|
||||
|
||||
@Inject
|
||||
private Client client;
|
||||
|
||||
@Inject
|
||||
private OverlayManager overlayManager;
|
||||
|
||||
@@ -158,6 +166,23 @@ public class RunecraftPlugin extends Plugin
|
||||
}
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
public void onMenuOptionClicked(MenuOptionClicked event)
|
||||
{
|
||||
if (event.getWidgetId() != DESTROY_ITEM_WIDGET_ID)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
Widget widgetDestroyItemName = client.getWidget(WidgetInfo.DESTROY_ITEM_NAME);
|
||||
if (widgetDestroyItemName == null || !widgetDestroyItemName.getText().equals("Binding necklace"))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
bindNeckOverlay.bindingCharges = 16;
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
public void onDecorativeObjectSpawn(DecorativeObjectSpawned event)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user