From c5d4dea4a9b5b1f021de9f639378182f4b992d63 Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Thu, 25 Nov 2021 22:59:34 +0000 Subject: [PATCH] Fixed probable Saviors Path - Hall of Etina (10890) NPE. --- .../Q10890_SaviorsPathHallOfEtina.java | 21 ++++++++++--------- .../Q10890_SaviorsPathHallOfEtina.java | 21 ++++++++++--------- .../Q10890_SaviorsPathHallOfEtina.java | 21 ++++++++++--------- 3 files changed, 33 insertions(+), 30 deletions(-) diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q10890_SaviorsPathHallOfEtina/Q10890_SaviorsPathHallOfEtina.java b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q10890_SaviorsPathHallOfEtina/Q10890_SaviorsPathHallOfEtina.java index 528d0aea68..5ec52384bd 100644 --- a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q10890_SaviorsPathHallOfEtina/Q10890_SaviorsPathHallOfEtina.java +++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q10890_SaviorsPathHallOfEtina/Q10890_SaviorsPathHallOfEtina.java @@ -20,7 +20,6 @@ import java.util.HashSet; import java.util.Set; import org.l2jmobius.Config; -import org.l2jmobius.gameserver.enums.QuestSound; import org.l2jmobius.gameserver.model.Location; import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Player; @@ -50,6 +49,7 @@ public class Q10890_SaviorsPathHallOfEtina extends Quest // Misc private static final int MIN_LEVEL = 104; private static final Location OUTLET_TELEPORT = new Location(-251728, 178576, -8928); + private static final String ETIS_VAN_ETINA_SOLO_VAR = "26322"; public Q10890_SaviorsPathHallOfEtina() { @@ -172,9 +172,13 @@ public class Q10890_SaviorsPathHallOfEtina extends Quest { htmltext = "34426-02.html"; } - else if (qs.isCond(3) && qs.get(Integer.toString(ETIS_VAN_ETINA_SOLO)).equals("true")) + else if (qs.isCond(3)) { - htmltext = "34426-03.htm"; + final String status = qs.get(ETIS_VAN_ETINA_SOLO_VAR); + if ((status != null) && status.equals("true")) + { + htmltext = "34426-03.htm"; + } } break; } @@ -203,14 +207,10 @@ public class Q10890_SaviorsPathHallOfEtina extends Quest final QuestState qs = getQuestState(player, false); if ((qs != null) && qs.isCond(2) && player.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE)) { - qs.set(Integer.toString(npc.getId()), "true"); + qs.setCond(3, true); + qs.set(ETIS_VAN_ETINA_SOLO_VAR, "true"); notifyKill(npc, player, isSummon); sendNpcLogList(player); - playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); - if ((qs.get(Integer.toString(ETIS_VAN_ETINA_SOLO)).equals("true"))) - { - qs.setCond(3); - } } } @@ -221,7 +221,8 @@ public class Q10890_SaviorsPathHallOfEtina extends Quest if ((qs != null) && qs.isCond(2)) { final Set holder = new HashSet<>(); - holder.add(new NpcLogListHolder(1026322, true, qs.get(Integer.toString(ETIS_VAN_ETINA_SOLO)).equals("true") ? 1 : 0)); + final String status = qs.get(ETIS_VAN_ETINA_SOLO_VAR); + holder.add(new NpcLogListHolder(1026322, true, (status != null) && status.equals("true") ? 1 : 0)); return holder; } return super.getNpcLogList(player); diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q10890_SaviorsPathHallOfEtina/Q10890_SaviorsPathHallOfEtina.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q10890_SaviorsPathHallOfEtina/Q10890_SaviorsPathHallOfEtina.java index 528d0aea68..5ec52384bd 100644 --- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q10890_SaviorsPathHallOfEtina/Q10890_SaviorsPathHallOfEtina.java +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q10890_SaviorsPathHallOfEtina/Q10890_SaviorsPathHallOfEtina.java @@ -20,7 +20,6 @@ import java.util.HashSet; import java.util.Set; import org.l2jmobius.Config; -import org.l2jmobius.gameserver.enums.QuestSound; import org.l2jmobius.gameserver.model.Location; import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Player; @@ -50,6 +49,7 @@ public class Q10890_SaviorsPathHallOfEtina extends Quest // Misc private static final int MIN_LEVEL = 104; private static final Location OUTLET_TELEPORT = new Location(-251728, 178576, -8928); + private static final String ETIS_VAN_ETINA_SOLO_VAR = "26322"; public Q10890_SaviorsPathHallOfEtina() { @@ -172,9 +172,13 @@ public class Q10890_SaviorsPathHallOfEtina extends Quest { htmltext = "34426-02.html"; } - else if (qs.isCond(3) && qs.get(Integer.toString(ETIS_VAN_ETINA_SOLO)).equals("true")) + else if (qs.isCond(3)) { - htmltext = "34426-03.htm"; + final String status = qs.get(ETIS_VAN_ETINA_SOLO_VAR); + if ((status != null) && status.equals("true")) + { + htmltext = "34426-03.htm"; + } } break; } @@ -203,14 +207,10 @@ public class Q10890_SaviorsPathHallOfEtina extends Quest final QuestState qs = getQuestState(player, false); if ((qs != null) && qs.isCond(2) && player.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE)) { - qs.set(Integer.toString(npc.getId()), "true"); + qs.setCond(3, true); + qs.set(ETIS_VAN_ETINA_SOLO_VAR, "true"); notifyKill(npc, player, isSummon); sendNpcLogList(player); - playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); - if ((qs.get(Integer.toString(ETIS_VAN_ETINA_SOLO)).equals("true"))) - { - qs.setCond(3); - } } } @@ -221,7 +221,8 @@ public class Q10890_SaviorsPathHallOfEtina extends Quest if ((qs != null) && qs.isCond(2)) { final Set holder = new HashSet<>(); - holder.add(new NpcLogListHolder(1026322, true, qs.get(Integer.toString(ETIS_VAN_ETINA_SOLO)).equals("true") ? 1 : 0)); + final String status = qs.get(ETIS_VAN_ETINA_SOLO_VAR); + holder.add(new NpcLogListHolder(1026322, true, (status != null) && status.equals("true") ? 1 : 0)); return holder; } return super.getNpcLogList(player); diff --git a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q10890_SaviorsPathHallOfEtina/Q10890_SaviorsPathHallOfEtina.java b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q10890_SaviorsPathHallOfEtina/Q10890_SaviorsPathHallOfEtina.java index 528d0aea68..5ec52384bd 100644 --- a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q10890_SaviorsPathHallOfEtina/Q10890_SaviorsPathHallOfEtina.java +++ b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q10890_SaviorsPathHallOfEtina/Q10890_SaviorsPathHallOfEtina.java @@ -20,7 +20,6 @@ import java.util.HashSet; import java.util.Set; import org.l2jmobius.Config; -import org.l2jmobius.gameserver.enums.QuestSound; import org.l2jmobius.gameserver.model.Location; import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Player; @@ -50,6 +49,7 @@ public class Q10890_SaviorsPathHallOfEtina extends Quest // Misc private static final int MIN_LEVEL = 104; private static final Location OUTLET_TELEPORT = new Location(-251728, 178576, -8928); + private static final String ETIS_VAN_ETINA_SOLO_VAR = "26322"; public Q10890_SaviorsPathHallOfEtina() { @@ -172,9 +172,13 @@ public class Q10890_SaviorsPathHallOfEtina extends Quest { htmltext = "34426-02.html"; } - else if (qs.isCond(3) && qs.get(Integer.toString(ETIS_VAN_ETINA_SOLO)).equals("true")) + else if (qs.isCond(3)) { - htmltext = "34426-03.htm"; + final String status = qs.get(ETIS_VAN_ETINA_SOLO_VAR); + if ((status != null) && status.equals("true")) + { + htmltext = "34426-03.htm"; + } } break; } @@ -203,14 +207,10 @@ public class Q10890_SaviorsPathHallOfEtina extends Quest final QuestState qs = getQuestState(player, false); if ((qs != null) && qs.isCond(2) && player.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE)) { - qs.set(Integer.toString(npc.getId()), "true"); + qs.setCond(3, true); + qs.set(ETIS_VAN_ETINA_SOLO_VAR, "true"); notifyKill(npc, player, isSummon); sendNpcLogList(player); - playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); - if ((qs.get(Integer.toString(ETIS_VAN_ETINA_SOLO)).equals("true"))) - { - qs.setCond(3); - } } } @@ -221,7 +221,8 @@ public class Q10890_SaviorsPathHallOfEtina extends Quest if ((qs != null) && qs.isCond(2)) { final Set holder = new HashSet<>(); - holder.add(new NpcLogListHolder(1026322, true, qs.get(Integer.toString(ETIS_VAN_ETINA_SOLO)).equals("true") ? 1 : 0)); + final String status = qs.get(ETIS_VAN_ETINA_SOLO_VAR); + holder.add(new NpcLogListHolder(1026322, true, (status != null) && status.equals("true") ? 1 : 0)); return holder; } return super.getNpcLogList(player);