From cdfffd9780768bf1f4cc9bd786849a88bf471d20 Mon Sep 17 00:00:00 2001 From: Davis Cook Date: Tue, 12 Feb 2019 16:01:45 -0500 Subject: [PATCH] Prevent kc from constantly ticking once task is completed --- .../client/plugins/slayer/SlayerTaskPanel.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerTaskPanel.java b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerTaskPanel.java index b3e9937a8a..426da6c5ce 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerTaskPanel.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerTaskPanel.java @@ -268,10 +268,15 @@ public class SlayerTaskPanel extends PluginPanel // current task has ended even though it should still have 1 amount remaining b/c the ending chat message // pops before the slayer xp drop so we need to force the remaining kc to zero and add the last kc to // the elapsed kc - current.getTaskData().setAmount(0); - current.getTaskData().setElapsedKills(current.getTaskData().getElapsedKills() + 1); - // current task has ended so it should be paused - current.update(true, true, current.getTaskData()); + if (current.getTaskData().getAmount() != 0) // must check not equal zero b/c otherwise this would constantly tick + { + int amountDelta = current.getTaskData().getAmount(); + current.getTaskData().setAmount(0); + current.getTaskData().setElapsedKills(current.getTaskData().getElapsedKills() + amountDelta); + // current task has ended so it should be paused + current.update(true, true, current.getTaskData()); + updateOverall(); + } return; }