Add events for slayer amount and task changed

This commit is contained in:
Davis Cook
2019-02-12 02:43:07 -05:00
parent 1dfc4b535a
commit d1ede44d49
4 changed files with 36 additions and 0 deletions

View File

@@ -0,0 +1,9 @@
package net.runelite.client.events;
import lombok.Value;
@Value
public class SlayerAmountChanged
{
private int oldAmount, newAmount;
}

View File

@@ -0,0 +1,9 @@
package net.runelite.client.events;
import lombok.Value;
@Value
public class SlayerTaskChanged
{
private final String oldTask, newTask;
}

View File

@@ -70,8 +70,11 @@ import net.runelite.client.chat.ChatCommandManager;
import net.runelite.client.chat.ChatMessageBuilder; import net.runelite.client.chat.ChatMessageBuilder;
import net.runelite.client.chat.ChatMessageManager; import net.runelite.client.chat.ChatMessageManager;
import net.runelite.client.config.ConfigManager; import net.runelite.client.config.ConfigManager;
import net.runelite.client.eventbus.EventBus;
import net.runelite.client.eventbus.Subscribe; import net.runelite.client.eventbus.Subscribe;
import net.runelite.client.events.ChatInput; import net.runelite.client.events.ChatInput;
import net.runelite.client.events.SlayerAmountChanged;
import net.runelite.client.events.SlayerTaskChanged;
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;
@@ -170,6 +173,9 @@ public class SlayerPlugin extends Plugin
@Inject @Inject
private ChatClient chatClient; private ChatClient chatClient;
@Inject
private EventBus eventBus;
@Getter(AccessLevel.PACKAGE) @Getter(AccessLevel.PACKAGE)
private List<NPC> highlightedTargets = new ArrayList<>(); private List<NPC> highlightedTargets = new ArrayList<>();
@@ -560,6 +566,8 @@ public class SlayerPlugin extends Plugin
@VisibleForTesting @VisibleForTesting
void killedOne() void killedOne()
{ {
int oldAmount = amount;
if (amount == 0) if (amount == 0)
{ {
return; return;
@@ -572,6 +580,7 @@ public class SlayerPlugin extends Plugin
} }
config.amount(amount); // save changed value config.amount(amount); // save changed value
eventBus.post(new SlayerAmountChanged(oldAmount, amount));
if (!config.showInfobox()) if (!config.showInfobox())
{ {
@@ -658,6 +667,8 @@ public class SlayerPlugin extends Plugin
private void setTask(String name, int amt, int initAmt, String location) private void setTask(String name, int amt, int initAmt, String location)
{ {
String oldName = taskName;
taskName = name; taskName = name;
amount = amt; amount = amt;
initialAmount = initAmt; initialAmount = initAmt;
@@ -666,6 +677,7 @@ public class SlayerPlugin extends Plugin
removeCounter(); removeCounter();
addCounter(); addCounter();
infoTimer = Instant.now(); infoTimer = Instant.now();
eventBus.post(new SlayerTaskChanged(oldName, taskName));
Task task = Task.getTask(name); Task task = Task.getTask(name);
rebuildTargetNames(task); rebuildTargetNames(task);

View File

@@ -0,0 +1,6 @@
package net.runelite.client.plugins.slayer;
public class SlayerTaskPanel
{
}