From 929d1c7fb64a75e2cba22005313540f18a872a6f Mon Sep 17 00:00:00 2001 From: Adam Date: Fri, 30 Nov 2018 22:06:06 -0500 Subject: [PATCH 1/3] Revert "Merge pull request #6760 from deathbeam/fix-slayer-task" This reverts commit 699cc233e8ff825e2137ff1d31317fed49c668d8, reversing changes made to 4104c04d374dfd89f1ad5f0d5d89fcb9e0ae016d. --- .../java/net/runelite/client/plugins/slayer/SlayerPlugin.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java index ba1716a6b7..7178b84a57 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java @@ -287,7 +287,7 @@ public class SlayerPlugin extends Plugin } else if (mAssignFirst.find()) { - setTask(mAssignFirst.group(1), Integer.parseInt(mAssignFirst.group(2)), Integer.parseInt(mAssignFirst.group(2))); + setTask(mAssignFirst.group(1), Integer.parseInt(mAssignFirst.group(2))); } else if (mAssignBoss.find()) { From 3c797ec685f0e355a0849be4a7bea364e4444fcb Mon Sep 17 00:00:00 2001 From: Adam Date: Fri, 30 Nov 2018 22:06:30 -0500 Subject: [PATCH 2/3] Revert "Add initial kill counter to slayer task (#6654)" This reverts commit 4104c04d374dfd89f1ad5f0d5d89fcb9e0ae016d. --- .../client/plugins/slayer/SlayerConfig.java | 18 ----- .../client/plugins/slayer/SlayerPlugin.java | 71 +++++++------------ 2 files changed, 27 insertions(+), 62 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerConfig.java b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerConfig.java index 1fd5e5a007..c3dd2dd752 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerConfig.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerConfig.java @@ -136,24 +136,6 @@ public interface SlayerConfig extends Config ) void amount(int amt); - @ConfigItem( - keyName = "initialAmount", - name = "", - description = "", - hidden = true - ) - default int initialAmount() - { - return -1; - } - - @ConfigItem( - keyName = "initialAmount", - name = "", - description = "" - ) - void initialAmount(int initAmt); - @ConfigItem( keyName = "streak", name = "", diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java index 7178b84a57..cb127f528d 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java @@ -148,10 +148,6 @@ public class SlayerPlugin extends Plugin @Setter(AccessLevel.PACKAGE) private int amount; - @Getter(AccessLevel.PACKAGE) - @Setter(AccessLevel.PACKAGE) - private int initialAmount; - @Getter(AccessLevel.PACKAGE) @Setter(AccessLevel.PACKAGE) private int expeditiousChargeCount; @@ -191,7 +187,7 @@ public class SlayerPlugin extends Plugin streak = config.streak(); setExpeditiousChargeCount(config.expeditious()); setSlaughterChargeCount(config.slaughter()); - clientThread.invoke(() -> setTask(config.taskName(), config.amount(), config.initialAmount())); + clientThread.invoke(() -> setTask(config.taskName(), config.amount())); } } @@ -221,7 +217,6 @@ public class SlayerPlugin extends Plugin cachedXp = 0; taskName = ""; amount = 0; - initialAmount = 0; loginFlag = true; highlightedTargets.clear(); break; @@ -234,7 +229,7 @@ public class SlayerPlugin extends Plugin streak = config.streak(); setExpeditiousChargeCount(config.expeditious()); setSlaughterChargeCount(config.slaughter()); - setTask(config.taskName(), config.amount(), config.initialAmount()); + setTask(config.taskName(), config.amount()); loginFlag = false; } break; @@ -244,7 +239,6 @@ public class SlayerPlugin extends Plugin private void save() { config.amount(amount); - config.initialAmount(initialAmount); config.taskName(taskName); config.points(points); config.streak(streak); @@ -283,7 +277,7 @@ public class SlayerPlugin extends Plugin if (mAssign.find()) { - setTask(mAssign.group(2), Integer.parseInt(mAssign.group(1)), Integer.parseInt(mAssign.group(1))); + setTask(mAssign.group(2), Integer.parseInt(mAssign.group(1))); } else if (mAssignFirst.find()) { @@ -291,12 +285,12 @@ public class SlayerPlugin extends Plugin } else if (mAssignBoss.find()) { - setTask(mAssignBoss.group(1), Integer.parseInt(mAssignBoss.group(2)), Integer.parseInt(mAssignBoss.group(2))); + setTask(mAssignBoss.group(1), Integer.parseInt(mAssignBoss.group(2))); points = Integer.parseInt(mAssignBoss.group(3).replaceAll(",", "")); } else if (mCurrent.find()) { - setTask(mCurrent.group(1), Integer.parseInt(mCurrent.group(2)), Integer.parseInt(mCurrent.group(2))); + setTask(mCurrent.group(1), Integer.parseInt(mCurrent.group(2))); } } @@ -419,13 +413,13 @@ public class SlayerPlugin extends Plugin default: log.warn("Unreachable default case for message ending in '; return to Slayer master'"); } - setTask("", 0, initialAmount); + setTask("", 0); return; } if (chatMsg.equals(CHAT_GEM_COMPLETE_MESSAGE) || chatMsg.equals(CHAT_CANCEL_MESSAGE) || chatMsg.equals(CHAT_CANCEL_MESSAGE_JAD)) { - setTask("", 0, initialAmount); + setTask("", 0); return; } @@ -441,7 +435,7 @@ public class SlayerPlugin extends Plugin { String gemTaskName = mProgress.group(1); int gemAmount = Integer.parseInt(mProgress.group(2)); - setTask(gemTaskName, gemAmount, initialAmount); + setTask(gemTaskName, gemAmount); return; } @@ -450,7 +444,7 @@ public class SlayerPlugin extends Plugin if (bracerProgress.find()) { final int taskAmount = Integer.parseInt(bracerProgress.group(1)); - setTask(taskName, taskAmount, initialAmount); + setTask(taskName, taskAmount); // Avoid race condition (combat brace message goes through first before XP drop) amount++; @@ -590,11 +584,10 @@ public class SlayerPlugin extends Plugin } } - private void setTask(String name, int amt, int initAmt) + private void setTask(String name, int amt) { taskName = name; amount = amt; - initialAmount = initAmt; save(); removeCounter(); addCounter(); @@ -607,38 +600,28 @@ public class SlayerPlugin extends Plugin private void addCounter() { - if (config.showInfobox() && counter == null && !Strings.isNullOrEmpty(taskName)) + if (!config.showInfobox() || counter != null || Strings.isNullOrEmpty(taskName)) { - Task task = Task.getTask(taskName); - int itemSpriteId = ItemID.ENCHANTED_GEM; - if (task != null) - { - itemSpriteId = task.getItemSpriteId(); - } - - BufferedImage taskImg = itemManager.getImage(itemSpriteId); - counter = new TaskCounter(taskImg, this, amount); - infoBoxManager.addInfoBox(counter); + return; } - if (counter != null && !Strings.isNullOrEmpty(taskName)) + Task task = Task.getTask(taskName); + int itemSpriteId = ItemID.ENCHANTED_GEM; + if (task != null) { - String taskTooltip = ColorUtil.prependColorTag("%s
", new Color(255, 119, 0)) - + ColorUtil.wrapWithColorTag("Pts:", Color.YELLOW) - + " %s
" - + ColorUtil.wrapWithColorTag("Streak:", Color.YELLOW) - + " %s"; - - // makes it so upon updating to track initialAmount people's previously active task won't show X/-1 - if (initialAmount != -1) - { - taskTooltip += "
" - + ColorUtil.wrapWithColorTag("Start:", Color.YELLOW) - + " " + initialAmount; - - } - counter.setTooltip(String.format(taskTooltip, capsString(taskName), points, streak)); + itemSpriteId = task.getItemSpriteId(); } + + BufferedImage taskImg = itemManager.getImage(itemSpriteId); + final String taskTooltip = ColorUtil.prependColorTag("%s
", new Color(255, 119, 0)) + + ColorUtil.wrapWithColorTag("Pts:", Color.YELLOW) + + " %s
" + + ColorUtil.wrapWithColorTag("Streak:", Color.YELLOW) + + " %s"; + counter = new TaskCounter(taskImg, this, amount); + counter.setTooltip(String.format(taskTooltip, capsString(taskName), points, streak)); + + infoBoxManager.addInfoBox(counter); } private void removeCounter() From 3c90724219db086353d2226911e406abb67d1d7d Mon Sep 17 00:00:00 2001 From: Adam Date: Fri, 30 Nov 2018 22:16:59 -0500 Subject: [PATCH 3/3] slayer plugin: show initial assignment amount in infobox tooltip --- .../client/plugins/slayer/SlayerConfig.java | 17 +++++++ .../client/plugins/slayer/SlayerPlugin.java | 44 +++++++++++++------ 2 files changed, 48 insertions(+), 13 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerConfig.java b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerConfig.java index c3dd2dd752..6ade381617 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerConfig.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerConfig.java @@ -129,6 +129,23 @@ public interface SlayerConfig extends Config return -1; } + @ConfigItem( + keyName = "initialAmount", + name = "", + description = "", + hidden = true + ) + default int initialAmount() + { + return -1; + } + @ConfigItem( + keyName = "initialAmount", + name = "", + description = "" + ) + void initialAmount(int initialAmount); + @ConfigItem( keyName = "amount", name = "", diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java index cb127f528d..2961670e1a 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java @@ -50,7 +50,6 @@ import net.runelite.api.ItemID; import net.runelite.api.NPC; import net.runelite.api.NPCComposition; import static net.runelite.api.Skill.SLAYER; -import net.runelite.api.vars.SlayerUnlock; import net.runelite.api.coords.WorldPoint; import net.runelite.api.events.ChatMessage; import net.runelite.api.events.ConfigChanged; @@ -59,6 +58,7 @@ import net.runelite.api.events.GameStateChanged; import net.runelite.api.events.GameTick; import net.runelite.api.events.NpcDespawned; import net.runelite.api.events.NpcSpawned; +import net.runelite.api.vars.SlayerUnlock; import net.runelite.api.widgets.Widget; import net.runelite.api.widgets.WidgetInfo; import net.runelite.client.Notifier; @@ -148,6 +148,10 @@ public class SlayerPlugin extends Plugin @Setter(AccessLevel.PACKAGE) private int amount; + @Getter(AccessLevel.PACKAGE) + @Setter(AccessLevel.PACKAGE) + private int initialAmount; + @Getter(AccessLevel.PACKAGE) @Setter(AccessLevel.PACKAGE) private int expeditiousChargeCount; @@ -187,7 +191,7 @@ public class SlayerPlugin extends Plugin streak = config.streak(); setExpeditiousChargeCount(config.expeditious()); setSlaughterChargeCount(config.slaughter()); - clientThread.invoke(() -> setTask(config.taskName(), config.amount())); + clientThread.invoke(() -> setTask(config.taskName(), config.amount(), config.initialAmount())); } } @@ -229,7 +233,7 @@ public class SlayerPlugin extends Plugin streak = config.streak(); setExpeditiousChargeCount(config.expeditious()); setSlaughterChargeCount(config.slaughter()); - setTask(config.taskName(), config.amount()); + setTask(config.taskName(), config.amount(), config.initialAmount()); loginFlag = false; } break; @@ -239,6 +243,7 @@ public class SlayerPlugin extends Plugin private void save() { config.amount(amount); + config.initialAmount(initialAmount); config.taskName(taskName); config.points(points); config.streak(streak); @@ -277,20 +282,24 @@ public class SlayerPlugin extends Plugin if (mAssign.find()) { - setTask(mAssign.group(2), Integer.parseInt(mAssign.group(1))); + int amount = Integer.parseInt(mAssign.group(1)); + setTask(mAssign.group(2), amount, amount); } else if (mAssignFirst.find()) { - setTask(mAssignFirst.group(1), Integer.parseInt(mAssignFirst.group(2))); + int amount = Integer.parseInt(mAssignFirst.group(2)); + setTask(mAssignFirst.group(1), amount, amount); } else if (mAssignBoss.find()) { - setTask(mAssignBoss.group(1), Integer.parseInt(mAssignBoss.group(2))); + int amount = Integer.parseInt(mAssignBoss.group(2)); + setTask(mAssignBoss.group(1), amount, amount); points = Integer.parseInt(mAssignBoss.group(3).replaceAll(",", "")); } else if (mCurrent.find()) { - setTask(mCurrent.group(1), Integer.parseInt(mCurrent.group(2))); + int amount = Integer.parseInt(mCurrent.group(2)); + setTask(mCurrent.group(1), amount, amount); } } @@ -413,13 +422,13 @@ public class SlayerPlugin extends Plugin default: log.warn("Unreachable default case for message ending in '; return to Slayer master'"); } - setTask("", 0); + setTask("", 0, 0); return; } if (chatMsg.equals(CHAT_GEM_COMPLETE_MESSAGE) || chatMsg.equals(CHAT_CANCEL_MESSAGE) || chatMsg.equals(CHAT_CANCEL_MESSAGE_JAD)) { - setTask("", 0); + setTask("", 0, 0); return; } @@ -435,7 +444,7 @@ public class SlayerPlugin extends Plugin { String gemTaskName = mProgress.group(1); int gemAmount = Integer.parseInt(mProgress.group(2)); - setTask(gemTaskName, gemAmount); + setTask(gemTaskName, gemAmount, initialAmount); return; } @@ -444,7 +453,7 @@ public class SlayerPlugin extends Plugin if (bracerProgress.find()) { final int taskAmount = Integer.parseInt(bracerProgress.group(1)); - setTask(taskName, taskAmount); + setTask(taskName, taskAmount, initialAmount); // Avoid race condition (combat brace message goes through first before XP drop) amount++; @@ -584,10 +593,11 @@ public class SlayerPlugin extends Plugin } } - private void setTask(String name, int amt) + private void setTask(String name, int amt, int initAmt) { taskName = name; amount = amt; + initialAmount = initAmt; save(); removeCounter(); addCounter(); @@ -613,11 +623,19 @@ public class SlayerPlugin extends Plugin } BufferedImage taskImg = itemManager.getImage(itemSpriteId); - final String taskTooltip = ColorUtil.prependColorTag("%s
", new Color(255, 119, 0)) + String taskTooltip = ColorUtil.prependColorTag("%s
", new Color(255, 119, 0)) + ColorUtil.wrapWithColorTag("Pts:", Color.YELLOW) + " %s
" + ColorUtil.wrapWithColorTag("Streak:", Color.YELLOW) + " %s"; + + if (initialAmount > 0) + { + taskTooltip += "
" + + ColorUtil.wrapWithColorTag("Start:", Color.YELLOW) + + " " + initialAmount; + } + counter = new TaskCounter(taskImg, this, amount); counter.setTooltip(String.format(taskTooltip, capsString(taskName), points, streak));