From e5d9dd4ceb44842563b33a6f6d9304044a460824 Mon Sep 17 00:00:00 2001 From: AttackOfTheMoons <42690834+AttackOfTheMoons@users.noreply.github.com> Date: Sun, 28 Jul 2019 21:59:12 -1000 Subject: [PATCH 1/3] slayer: Fix NPE when getting unsupported task (#9490) --- .../runelite/client/plugins/slayer/SlayerPlugin.java | 11 +++++++++-- .../java/net/runelite/client/plugins/slayer/Task.java | 2 ++ 2 files changed, 11 insertions(+), 2 deletions(-) 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 09e9f95657..8204846ffe 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 @@ -535,7 +535,14 @@ public class SlayerPlugin extends Plugin return; } - final int taskKillExp = Task.getTask(taskName).getExpectedKillExp(); + final Task task = Task.getTask(taskName); + + if (task == null) + { + return; + } + + final int taskKillExp = task.getExpectedKillExp(); // Only count exp gain as a kill if the task either has no expected exp for a kill, or if the exp gain is equal // to the expected exp gain for the task. @@ -595,7 +602,7 @@ public class SlayerPlugin extends Plugin private boolean doubleTroubleExtraKill() { return WorldPoint.fromLocalInstance(client, client.getLocalPlayer().getLocalLocation()).getRegionID() == GROTESQUE_GUARDIANS_REGION && - SlayerUnlock.GROTESQUE_GUARDIAN_DOUBLE_COUNT.isEnabled(client); + SlayerUnlock.GROTESQUE_GUARDIAN_DOUBLE_COUNT.isEnabled(client); } private boolean isTarget(NPC npc) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/Task.java b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/Task.java index f844056473..654150ebda 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/Task.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/Task.java @@ -28,6 +28,7 @@ package net.runelite.client.plugins.slayer; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableMap; import java.util.Map; +import javax.annotation.Nullable; import lombok.Getter; import net.runelite.api.ItemID; @@ -228,6 +229,7 @@ enum Task this.expectedKillExp = expectedKillExp; } + @Nullable static Task getTask(String taskName) { return tasks.get(taskName.toLowerCase()); From 6866b38804154f1f465f278c0eeeea95c58cfd84 Mon Sep 17 00:00:00 2001 From: Kyle Eldridge Date: Mon, 29 Jul 2019 09:48:18 +0100 Subject: [PATCH 2/3] update quest items --- runelite-api/src/main/java/net/runelite/api/Quest.java | 4 ++-- runelite-api/src/main/java/net/runelite/api/VarPlayer.java | 2 +- runelite-api/src/main/java/net/runelite/api/Varbits.java | 2 +- .../achievementdiary/diaries/ArdougneDiaryRequirement.java | 2 +- .../achievementdiary/diaries/WesternDiaryRequirement.java | 6 +++--- .../client/plugins/worldmap/QuestStartLocation.java | 4 ++-- update.bat | 4 ++++ 7 files changed, 14 insertions(+), 10 deletions(-) create mode 100644 update.bat diff --git a/runelite-api/src/main/java/net/runelite/api/Quest.java b/runelite-api/src/main/java/net/runelite/api/Quest.java index 23a494d765..47453e7cad 100644 --- a/runelite-api/src/main/java/net/runelite/api/Quest.java +++ b/runelite-api/src/main/java/net/runelite/api/Quest.java @@ -120,8 +120,8 @@ public enum Quest MONKEY_MADNESS_II(396, "Monkey Madness II", Varbits.QUEST_MONKEY_MADNESS_II), MONKS_FRIEND(397, "Monk's Friend", VarPlayer.QUEST_MONKS_FRIEND), MOUNTAIN_DAUGHTER(398, "Mountain Daughter", Varbits.QUEST_MOUNTAIN_DAUGHTER), - MOURNINGS_ENDS_PART_I(399, "Mourning's Ends Part I", VarPlayer.QUEST_MOURNINGS_ENDS_PART_I), - MOURNINGS_ENDS_PART_II(400, "Mourning's Ends Part II", Varbits.QUEST_MOURNINGS_ENDS_PART_II), + MOURNINGS_END_PART_I(399, "Mourning's End Part I", VarPlayer.QUEST_MOURNINGS_END_PART_I), + MOURNINGS_END_PART_II(400, "Mourning's End Part II", Varbits.QUEST_MOURNINGS_END_PART_II), MURDER_MYSTERY(401, "Murder Mystery", VarPlayer.QUEST_MURDER_MYSTERY), MY_ARMS_BIG_ADVENTURE(402, "My Arm's Big Adventure", Varbits.QUEST_MY_ARMS_BIG_ADVENTURE), NATURE_SPIRIT(403, "Nature Spirit", VarPlayer.QUEST_NATURE_SPIRIT), diff --git a/runelite-api/src/main/java/net/runelite/api/VarPlayer.java b/runelite-api/src/main/java/net/runelite/api/VarPlayer.java index db9f9908d3..ba78672da5 100644 --- a/runelite-api/src/main/java/net/runelite/api/VarPlayer.java +++ b/runelite-api/src/main/java/net/runelite/api/VarPlayer.java @@ -220,7 +220,7 @@ public enum VarPlayer QUEST_MERLINS_CRYSTAL(14), QUEST_MONKEY_MADNESS_I(365), QUEST_MONKS_FRIEND(30), - QUEST_MOURNINGS_ENDS_PART_I(517), + QUEST_MOURNINGS_END_PART_I(517), QUEST_MURDER_MYSTERY(192), QUEST_NATURE_SPIRIT(307), QUEST_OBSERVATORY_QUEST(112), diff --git a/runelite-api/src/main/java/net/runelite/api/Varbits.java b/runelite-api/src/main/java/net/runelite/api/Varbits.java index 45619d0278..0ceac97105 100644 --- a/runelite-api/src/main/java/net/runelite/api/Varbits.java +++ b/runelite-api/src/main/java/net/runelite/api/Varbits.java @@ -595,7 +595,7 @@ public enum Varbits QUEST_LUNAR_DIPLOMACY(2448), QUEST_MAKING_HISTORY(1383), QUEST_MOUNTAIN_DAUGHTER(260), - QUEST_MOURNINGS_ENDS_PART_II(1103), + QUEST_MOURNINGS_END_PART_II(1103), QUEST_MY_ARMS_BIG_ADVENTURE(2790), QUEST_RATCATCHERS(1404), QUEST_RECIPE_FOR_DISASTER(1850), diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/achievementdiary/diaries/ArdougneDiaryRequirement.java b/runelite-client/src/main/java/net/runelite/client/plugins/achievementdiary/diaries/ArdougneDiaryRequirement.java index fbb7bbfa78..e519510885 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/achievementdiary/diaries/ArdougneDiaryRequirement.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/achievementdiary/diaries/ArdougneDiaryRequirement.java @@ -109,7 +109,7 @@ public class ArdougneDiaryRequirement extends GenericDiaryRequirement new QuestRequirement(Quest.LEGENDS_QUEST)); add("Craft some Death runes.", new SkillRequirement(Skill.RUNECRAFT, 65), - new QuestRequirement(Quest.MOURNINGS_ENDS_PART_II)); + new QuestRequirement(Quest.MOURNINGS_END_PART_II)); // ELITE add("Catch a Manta ray in the Fishing Trawler and cook it in Port Khazard.", diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/achievementdiary/diaries/WesternDiaryRequirement.java b/runelite-client/src/main/java/net/runelite/client/plugins/achievementdiary/diaries/WesternDiaryRequirement.java index b136f889fe..ed253026ba 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/achievementdiary/diaries/WesternDiaryRequirement.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/achievementdiary/diaries/WesternDiaryRequirement.java @@ -110,7 +110,7 @@ public class WesternDiaryRequirement extends GenericDiaryRequirement new QuestRequirement(Quest.REGICIDE)); add("Check the health of your Palm tree in Lletya.", new SkillRequirement(Skill.FARMING, 68), - new QuestRequirement(Quest.MOURNINGS_ENDS_PART_I, true)); + new QuestRequirement(Quest.MOURNINGS_END_PART_I, true)); add("Claim a Chompy bird hat from Rantz after registering at least 300 kills.", new QuestRequirement(Quest.BIG_CHOMPY_BIRD_HUNTING)); add("Build an Isafdar painting in your POH Quest hall.", @@ -128,7 +128,7 @@ public class WesternDiaryRequirement extends GenericDiaryRequirement // ELITE add("Fletch a Magic Longbow in the Elven lands.", new SkillRequirement(Skill.FLETCHING, 85), - new QuestRequirement(Quest.MOURNINGS_ENDS_PART_I)); + new QuestRequirement(Quest.MOURNINGS_END_PART_I)); add("Kill the Thermonuclear Smoke devil (Does not require task).", new SkillRequirement(Skill.SLAYER, 93)); add("Have Prissy Scilla protect your Magic tree.", @@ -140,6 +140,6 @@ public class WesternDiaryRequirement extends GenericDiaryRequirement new QuestRequirement(Quest.BIG_CHOMPY_BIRD_HUNTING)); add("Pickpocket an Elf.", new SkillRequirement(Skill.THIEVING, 85), - new QuestRequirement(Quest.MOURNINGS_ENDS_PART_I, true)); + new QuestRequirement(Quest.MOURNINGS_END_PART_I, true)); } } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/QuestStartLocation.java b/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/QuestStartLocation.java index 5c0f51e7de..d15ddf86b1 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/QuestStartLocation.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/QuestStartLocation.java @@ -122,8 +122,8 @@ enum QuestStartLocation MAKING_HISTORY(Quest.MAKING_HISTORY, new WorldPoint(2435, 3346, 0)), MONKS_FRIEND(Quest.MONKS_FRIEND, new WorldPoint(2605, 3209, 0)), MOUNTAIN_DAUGHTER(Quest.MOUNTAIN_DAUGHTER, new WorldPoint(2810, 3672, 0)), - MOURNINGS_ENDS_PART_I(Quest.MOURNINGS_ENDS_PART_I, new WorldPoint(2289, 3149, 0)), - MOURNINGS_ENDS_PART_II(Quest.MOURNINGS_ENDS_PART_II, new WorldPoint(2352, 3172, 0)), + MOURNINGS_END_PART_I(Quest.MOURNINGS_END_PART_I, new WorldPoint(2289, 3149, 0)), + MOURNINGS_END_PART_II(Quest.MOURNINGS_END_PART_II, new WorldPoint(2352, 3172, 0)), MURDER_MYSTERY(Quest.MURDER_MYSTERY, new WorldPoint(2740, 3562, 0)), MY_ARMS_BIG_ADVENTURE(Quest.MY_ARMS_BIG_ADVENTURE, new WorldPoint(2908, 10088, 0)), NATURE_SPIRIT(Quest.NATURE_SPIRIT, new WorldPoint(3440, 9894, 0)), diff --git a/update.bat b/update.bat new file mode 100644 index 0000000000..5bbc8b6318 --- /dev/null +++ b/update.bat @@ -0,0 +1,4 @@ +git checkout master +git reset --hard upstream/master +git pull --rebase upstream/master +git push origin master --force \ No newline at end of file From 8683e26be1c69daf4fdb4fd708f9bdfcd2f604cf Mon Sep 17 00:00:00 2001 From: Kyleeld <48519776+Kyleeld@users.noreply.github.com> Date: Mon, 29 Jul 2019 09:57:51 +0100 Subject: [PATCH 3/3] Delete update.bat --- update.bat | 4 ---- 1 file changed, 4 deletions(-) delete mode 100644 update.bat diff --git a/update.bat b/update.bat deleted file mode 100644 index 5bbc8b6318..0000000000 --- a/update.bat +++ /dev/null @@ -1,4 +0,0 @@ -git checkout master -git reset --hard upstream/master -git pull --rebase upstream/master -git push origin master --force \ No newline at end of file