Fishing Guild Member:
+As a Fishing Guild member, have you ever dreamed of doing something new, for example, finding a new hobby?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
new file mode 100644
index 0000000000..7728255573
--- /dev/null
+++ b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+You know, we at the Fishing Guild always advise you to get some good fishing gear.
+It's even better when getting top-grade equipment turns into a hobby. Do you want to know why we give so much importance to gear?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
new file mode 100644
index 0000000000..8c5906f4b0
--- /dev/null
+++ b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+Equipment plays a big part in fishing. It's significance shouldn't be underestimated. Warriors preparing for the battle choose most enduring swords and shields to overcome the enemy for sure. We, fishermen, do the same. We choose a firmer fishing rod to get a rich take.
+A clever fisherman always tries to get good equipment. A Master Fishing Rod is the best choice!
+The Fishing Guild wants as many fishermen as possible to learn about this fishing rod and get it. Well, are you interested?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
new file mode 100644
index 0000000000..ef9051b385
--- /dev/null
+++ b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+So, I'll to tell you everything I know about Master Fishing Rod.
+First of all, to get one you must do something. Bring me 40 Nimble Fish.
+It doesn't matter how you get them. The point is that you bring me the exact number I'm asking for. It's the main ingredient.
+Bring me 40 Nimble Fish, and I will reward you with materials for your Master Fishing Rod.
+
\ No newline at end of file
diff --git a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
new file mode 100644
index 0000000000..8907811dfe
--- /dev/null
+++ b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+You must gather 40 Nimble Fish, but I don't see any of them. It doesn't matter how you get them. Just bring me 40 Nimble Fish.
+
\ No newline at end of file
diff --git a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
new file mode 100644
index 0000000000..44c7488636
--- /dev/null
+++ b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+Have you fished enough? Did you catch anything?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
new file mode 100644
index 0000000000..172814aa69
--- /dev/null
+++ b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+Thank you. As a token of our appreciation, here is a small gift. I hope you find it useful.
+
\ No newline at end of file
diff --git a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
new file mode 100644
index 0000000000..fcaea628f2
--- /dev/null
+++ b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
@@ -0,0 +1,168 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package quests.Q00938_TheFishermansOtherHobby;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.FishingEndReason;
+import org.l2jmobius.gameserver.enums.QuestSound;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.Player;
+import org.l2jmobius.gameserver.model.events.EventType;
+import org.l2jmobius.gameserver.model.events.ListenerRegisterType;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterEvent;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterType;
+import org.l2jmobius.gameserver.model.events.impl.creature.player.OnPlayerFishing;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * The Fisherman's Other Hobby (938)
+ * @author CostyKiller
+ */
+public class Q00938_TheFishermansOtherHobby extends Quest
+{
+ // NPCs
+ private static final int OFULLE = 31572;
+ private static final int LINNAEUS = 31577;
+ private static final int PERELIN = 31563;
+ private static final int BLEAKER = 31567;
+ private static final int CYANO = 31569;
+ private static final int PAMFUS = 31568;
+ private static final int LANOSCO = 31570;
+ private static final int HUFS = 31571;
+ private static final int MONAKAN = 31573;
+ private static final int BERIX = 31576;
+ private static final int LITULON = 31575;
+ private static final int WILLIE = 31574;
+ private static final int HILGENDORF = 31578;
+ private static final int PLATIS = 31696;
+ private static final int KLAUS = 31579;
+ private static final int BATIDAE = 31989;
+ private static final int EINDARKNER = 31697;
+ private static final int GALBA = 32007;
+ private static final int SANTIAGO = 34138;
+ // Reward
+ private static final int SANTIAGOS_REEL_FRAGMENT = 47562;
+ // Misc
+ private static final int MIN_LEVEL = 85;
+ private static final int NIMBLE_FISH = 47551;
+ private static final int NIMBLE_FISH_NEEDED = 40;
+
+ public Q00938_TheFishermansOtherHobby()
+ {
+ super(938);
+ addStartNpc(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addTalkId(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addCondMinLevel(MIN_LEVEL, "noLevel.htm");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, false);
+ if (qs == null)
+ {
+ return null;
+ }
+ String htmltext = null;
+ switch (event)
+ {
+ case "Guild-02.htm":
+ case "Guild-03.htm":
+ {
+ htmltext = event;
+ break;
+ }
+ case "Guild-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "Guild-07.html":
+ {
+ if (qs.isCond(2))
+ {
+ takeItems(player, NIMBLE_FISH, NIMBLE_FISH_NEEDED);
+ giveItems(player, SANTIAGOS_REEL_FRAGMENT, 2);
+ addFactionPoints(player, Faction.FISHING_GUILD, 100);
+ qs.exitQuest(QuestType.REPEATABLE, true);
+ htmltext = event;
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ htmltext = "Guild-01.htm";
+ break;
+ }
+ case State.STARTED:
+ {
+ if (qs.isCond(1))
+ {
+ htmltext = "Guild-05.html";
+ }
+ else if (qs.isCond(2))
+ {
+ htmltext = "Guild-06.html";
+ }
+ break;
+ }
+ case State.COMPLETED:
+ {
+ htmltext = getAlreadyCompletedMsg(player);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @RegisterEvent(EventType.ON_PLAYER_FISHING)
+ @RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
+ public void onPlayerFishing(OnPlayerFishing event)
+ {
+ if (event.getReason() == FishingEndReason.WIN)
+ {
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
+ {
+ if (getQuestItemsCount(player, NIMBLE_FISH) >= NIMBLE_FISH_NEEDED)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
new file mode 100644
index 0000000000..60f4c4b593
--- /dev/null
+++ b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+Hmm, it would seem that it's a bit too early still to discuss the Fishing Guild with you. Please return after you've become stronger.
+(Only characters with Lv. 85 or above may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/QuestMasterHandler.java
index 4f786b2368..47c4ab585c 100644
--- a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/QuestMasterHandler.java
+++ b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/QuestMasterHandler.java
@@ -217,6 +217,7 @@ import quests.Q00930_DisparagingThePhantoms.Q00930_DisparagingThePhantoms;
import quests.Q00931_MemoriesOfTheWind.Q00931_MemoriesOfTheWind;
import quests.Q00932_SayhasEnergy.Q00932_SayhasEnergy;
import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild;
+import quests.Q00938_TheFishermansOtherHobby.Q00938_TheFishermansOtherHobby;
import quests.Q10273_GoodDayToFly.Q10273_GoodDayToFly;
import quests.Q10274_CollectingInTheAir.Q10274_CollectingInTheAir;
import quests.Q10275_ContainingTheAttributePower.Q10275_ContainingTheAttributePower;
@@ -516,7 +517,6 @@ import quests.not_done.Q00912_RedLibraRequestLv3;
import quests.not_done.Q00913_RedLibraRequestLv4;
import quests.not_done.Q00914_RedLibraRequestLv5;
import quests.not_done.Q00929_SeekerRescue;
-import quests.not_done.Q00938_TheFishermansOtherHobby;
import quests.not_done.Q10298_WastelandQueen;
import quests.not_done.Q10357_AltarOfBloodThatAwakensDestruction;
import quests.not_done.Q10396_WitchOfSpores;
@@ -766,7 +766,7 @@ public class QuestMasterHandler
Q00931_MemoriesOfTheWind.class,
Q00932_SayhasEnergy.class,
Q00937_ToReviveTheFishingGuild.class,
- Q00938_TheFishermansOtherHobby.class, // TODO: Not done.
+ Q00938_TheFishermansOtherHobby.class,
Q10273_GoodDayToFly.class,
Q10274_CollectingInTheAir.class,
Q10275_ContainingTheAttributePower.class,
diff --git a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/not_done/Q00938_TheFishermansOtherHobby.java b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/not_done/Q00938_TheFishermansOtherHobby.java
deleted file mode 100644
index e58321da64..0000000000
--- a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/quests/not_done/Q00938_TheFishermansOtherHobby.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * This file is part of the L2J Mobius project.
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- */
-package quests.not_done;
-
-import org.l2jmobius.Config;
-import org.l2jmobius.gameserver.model.quest.Quest;
-
-/**
- * @author Mobius
- */
-public class Q00938_TheFishermansOtherHobby extends Quest
-{
- private static final int START_NPC = 34138;
-
- public Q00938_TheFishermansOtherHobby()
- {
- super(938);
- addStartNpc(START_NPC);
- addTalkId(START_NPC);
- addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
- }
-}
diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/MissingQuests.txt b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/MissingQuests.txt
index b05595d222..ee6555091c 100644
--- a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/MissingQuests.txt
+++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/MissingQuests.txt
@@ -96,7 +96,6 @@
922 Hunter Guild Request - Northern Region, Isle of Prayer
925 Hunter Guild Request - Garden of Spirits
929 Seeker Rescue
-938 The Fisherman's Other Hobby
940 Hunter Guild Request - Atelia Fortress
986 Adventure Guild's Special Request - Lv. 2
987 Adventure Guild's Special Request - Lv. 3
diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
index eb4d38b951..7e36a436ae 100644
--- a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
+++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
@@ -159,19 +159,22 @@ public class Q00937_ToReviveTheFishingGuild extends Quest
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
public void onPlayerFishing(OnPlayerFishing event)
{
- final Player player = event.getPlayer();
- final QuestState qs = getQuestState(player, false);
- if ((qs != null) && qs.isCond(1) && (event.getReason() == FishingEndReason.WIN))
+ if (event.getReason() == FishingEndReason.WIN)
{
- int count = qs.getInt(COUNT_VAR);
- qs.set(COUNT_VAR, ++count);
- if (count >= 100)
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
{
- qs.setCond(2, true);
- }
- else
- {
- playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ int count = qs.getInt(COUNT_VAR);
+ qs.set(COUNT_VAR, ++count);
+ if (count >= 100)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
}
}
}
diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
new file mode 100644
index 0000000000..75d4f7706f
--- /dev/null
+++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+As a Fishing Guild member, have you ever dreamed of doing something new, for example, finding a new hobby?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
new file mode 100644
index 0000000000..7728255573
--- /dev/null
+++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+You know, we at the Fishing Guild always advise you to get some good fishing gear.
+It's even better when getting top-grade equipment turns into a hobby. Do you want to know why we give so much importance to gear?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
new file mode 100644
index 0000000000..8c5906f4b0
--- /dev/null
+++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+Equipment plays a big part in fishing. It's significance shouldn't be underestimated. Warriors preparing for the battle choose most enduring swords and shields to overcome the enemy for sure. We, fishermen, do the same. We choose a firmer fishing rod to get a rich take.
+A clever fisherman always tries to get good equipment. A Master Fishing Rod is the best choice!
+The Fishing Guild wants as many fishermen as possible to learn about this fishing rod and get it. Well, are you interested?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
new file mode 100644
index 0000000000..ef9051b385
--- /dev/null
+++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+So, I'll to tell you everything I know about Master Fishing Rod.
+First of all, to get one you must do something. Bring me 40 Nimble Fish.
+It doesn't matter how you get them. The point is that you bring me the exact number I'm asking for. It's the main ingredient.
+Bring me 40 Nimble Fish, and I will reward you with materials for your Master Fishing Rod.
+
\ No newline at end of file
diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
new file mode 100644
index 0000000000..8907811dfe
--- /dev/null
+++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+You must gather 40 Nimble Fish, but I don't see any of them. It doesn't matter how you get them. Just bring me 40 Nimble Fish.
+
\ No newline at end of file
diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
new file mode 100644
index 0000000000..44c7488636
--- /dev/null
+++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+Have you fished enough? Did you catch anything?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
new file mode 100644
index 0000000000..172814aa69
--- /dev/null
+++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+Thank you. As a token of our appreciation, here is a small gift. I hope you find it useful.
+
\ No newline at end of file
diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
new file mode 100644
index 0000000000..fcaea628f2
--- /dev/null
+++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
@@ -0,0 +1,168 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package quests.Q00938_TheFishermansOtherHobby;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.FishingEndReason;
+import org.l2jmobius.gameserver.enums.QuestSound;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.Player;
+import org.l2jmobius.gameserver.model.events.EventType;
+import org.l2jmobius.gameserver.model.events.ListenerRegisterType;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterEvent;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterType;
+import org.l2jmobius.gameserver.model.events.impl.creature.player.OnPlayerFishing;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * The Fisherman's Other Hobby (938)
+ * @author CostyKiller
+ */
+public class Q00938_TheFishermansOtherHobby extends Quest
+{
+ // NPCs
+ private static final int OFULLE = 31572;
+ private static final int LINNAEUS = 31577;
+ private static final int PERELIN = 31563;
+ private static final int BLEAKER = 31567;
+ private static final int CYANO = 31569;
+ private static final int PAMFUS = 31568;
+ private static final int LANOSCO = 31570;
+ private static final int HUFS = 31571;
+ private static final int MONAKAN = 31573;
+ private static final int BERIX = 31576;
+ private static final int LITULON = 31575;
+ private static final int WILLIE = 31574;
+ private static final int HILGENDORF = 31578;
+ private static final int PLATIS = 31696;
+ private static final int KLAUS = 31579;
+ private static final int BATIDAE = 31989;
+ private static final int EINDARKNER = 31697;
+ private static final int GALBA = 32007;
+ private static final int SANTIAGO = 34138;
+ // Reward
+ private static final int SANTIAGOS_REEL_FRAGMENT = 47562;
+ // Misc
+ private static final int MIN_LEVEL = 85;
+ private static final int NIMBLE_FISH = 47551;
+ private static final int NIMBLE_FISH_NEEDED = 40;
+
+ public Q00938_TheFishermansOtherHobby()
+ {
+ super(938);
+ addStartNpc(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addTalkId(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addCondMinLevel(MIN_LEVEL, "noLevel.htm");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, false);
+ if (qs == null)
+ {
+ return null;
+ }
+ String htmltext = null;
+ switch (event)
+ {
+ case "Guild-02.htm":
+ case "Guild-03.htm":
+ {
+ htmltext = event;
+ break;
+ }
+ case "Guild-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "Guild-07.html":
+ {
+ if (qs.isCond(2))
+ {
+ takeItems(player, NIMBLE_FISH, NIMBLE_FISH_NEEDED);
+ giveItems(player, SANTIAGOS_REEL_FRAGMENT, 2);
+ addFactionPoints(player, Faction.FISHING_GUILD, 100);
+ qs.exitQuest(QuestType.REPEATABLE, true);
+ htmltext = event;
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ htmltext = "Guild-01.htm";
+ break;
+ }
+ case State.STARTED:
+ {
+ if (qs.isCond(1))
+ {
+ htmltext = "Guild-05.html";
+ }
+ else if (qs.isCond(2))
+ {
+ htmltext = "Guild-06.html";
+ }
+ break;
+ }
+ case State.COMPLETED:
+ {
+ htmltext = getAlreadyCompletedMsg(player);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @RegisterEvent(EventType.ON_PLAYER_FISHING)
+ @RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
+ public void onPlayerFishing(OnPlayerFishing event)
+ {
+ if (event.getReason() == FishingEndReason.WIN)
+ {
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
+ {
+ if (getQuestItemsCount(player, NIMBLE_FISH) >= NIMBLE_FISH_NEEDED)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
new file mode 100644
index 0000000000..60f4c4b593
--- /dev/null
+++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+Hmm, it would seem that it's a bit too early still to discuss the Fishing Guild with you. Please return after you've become stronger.
+(Only characters with Lv. 85 or above may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/QuestMasterHandler.java
index bfe82bcd39..d8f62cc6f6 100644
--- a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/QuestMasterHandler.java
+++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/quests/QuestMasterHandler.java
@@ -223,6 +223,7 @@ import quests.Q00930_DisparagingThePhantoms.Q00930_DisparagingThePhantoms;
import quests.Q00931_MemoriesOfTheWind.Q00931_MemoriesOfTheWind;
import quests.Q00932_SayhasEnergy.Q00932_SayhasEnergy;
import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild;
+import quests.Q00938_TheFishermansOtherHobby.Q00938_TheFishermansOtherHobby;
import quests.Q10273_GoodDayToFly.Q10273_GoodDayToFly;
import quests.Q10274_CollectingInTheAir.Q10274_CollectingInTheAir;
import quests.Q10275_ContainingTheAttributePower.Q10275_ContainingTheAttributePower;
@@ -786,6 +787,7 @@ public class QuestMasterHandler
Q00931_MemoriesOfTheWind.class,
Q00932_SayhasEnergy.class,
Q00937_ToReviveTheFishingGuild.class,
+ Q00938_TheFishermansOtherHobby.class,
Q00985_AdventureGuildsSpecialRequestLv1.class, // TODO: Not done.
Q00986_AdventureGuildsSpecialRequestLv2.class, // TODO: Not done.
Q00987_AdventureGuildsSpecialRequestLv3.class, // TODO: Not done.
diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/MissingQuests.txt b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/MissingQuests.txt
index 779441d46b..17e6289759 100644
--- a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/MissingQuests.txt
+++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/MissingQuests.txt
@@ -102,7 +102,6 @@
922 Hunter Guild Request - Northern Region, Isle of Prayer
925 Hunter Guild Request - Garden of Spirits
929 Seeker Rescue
-938 The Fisherman's Other Hobby
940 Hunter Guild Request - Atelia Fortress
986 Adventure Guild's Special Request - Lv. 2
987 Adventure Guild's Special Request - Lv. 3
diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
index f1f12c9399..784084e18f 100644
--- a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
+++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
@@ -160,21 +160,24 @@ public class Q00937_ToReviveTheFishingGuild extends Quest
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
public void onPlayerFishing(OnPlayerFishing event)
{
- final Player player = event.getPlayer();
- final QuestState qs = getQuestState(player, false);
- if ((qs != null) && qs.isCond(1) && (event.getReason() == FishingEndReason.WIN))
+ if (event.getReason() == FishingEndReason.WIN)
{
- int count = qs.getInt(COUNT_VAR);
- qs.set(COUNT_VAR, ++count);
- if (count >= 100)
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
{
- qs.setCond(2, true);
+ int count = qs.getInt(COUNT_VAR);
+ qs.set(COUNT_VAR, ++count);
+ if (count >= 100)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ sendNpcLogList(player);
}
- else
- {
- playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
- }
- sendNpcLogList(player);
}
}
diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
new file mode 100644
index 0000000000..75d4f7706f
--- /dev/null
+++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+As a Fishing Guild member, have you ever dreamed of doing something new, for example, finding a new hobby?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
new file mode 100644
index 0000000000..7728255573
--- /dev/null
+++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+You know, we at the Fishing Guild always advise you to get some good fishing gear.
+It's even better when getting top-grade equipment turns into a hobby. Do you want to know why we give so much importance to gear?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
new file mode 100644
index 0000000000..8c5906f4b0
--- /dev/null
+++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+Equipment plays a big part in fishing. It's significance shouldn't be underestimated. Warriors preparing for the battle choose most enduring swords and shields to overcome the enemy for sure. We, fishermen, do the same. We choose a firmer fishing rod to get a rich take.
+A clever fisherman always tries to get good equipment. A Master Fishing Rod is the best choice!
+The Fishing Guild wants as many fishermen as possible to learn about this fishing rod and get it. Well, are you interested?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
new file mode 100644
index 0000000000..ef9051b385
--- /dev/null
+++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+So, I'll to tell you everything I know about Master Fishing Rod.
+First of all, to get one you must do something. Bring me 40 Nimble Fish.
+It doesn't matter how you get them. The point is that you bring me the exact number I'm asking for. It's the main ingredient.
+Bring me 40 Nimble Fish, and I will reward you with materials for your Master Fishing Rod.
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
new file mode 100644
index 0000000000..8907811dfe
--- /dev/null
+++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+You must gather 40 Nimble Fish, but I don't see any of them. It doesn't matter how you get them. Just bring me 40 Nimble Fish.
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
new file mode 100644
index 0000000000..44c7488636
--- /dev/null
+++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+Have you fished enough? Did you catch anything?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
new file mode 100644
index 0000000000..172814aa69
--- /dev/null
+++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+Thank you. As a token of our appreciation, here is a small gift. I hope you find it useful.
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
new file mode 100644
index 0000000000..fcaea628f2
--- /dev/null
+++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
@@ -0,0 +1,168 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package quests.Q00938_TheFishermansOtherHobby;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.FishingEndReason;
+import org.l2jmobius.gameserver.enums.QuestSound;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.Player;
+import org.l2jmobius.gameserver.model.events.EventType;
+import org.l2jmobius.gameserver.model.events.ListenerRegisterType;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterEvent;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterType;
+import org.l2jmobius.gameserver.model.events.impl.creature.player.OnPlayerFishing;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * The Fisherman's Other Hobby (938)
+ * @author CostyKiller
+ */
+public class Q00938_TheFishermansOtherHobby extends Quest
+{
+ // NPCs
+ private static final int OFULLE = 31572;
+ private static final int LINNAEUS = 31577;
+ private static final int PERELIN = 31563;
+ private static final int BLEAKER = 31567;
+ private static final int CYANO = 31569;
+ private static final int PAMFUS = 31568;
+ private static final int LANOSCO = 31570;
+ private static final int HUFS = 31571;
+ private static final int MONAKAN = 31573;
+ private static final int BERIX = 31576;
+ private static final int LITULON = 31575;
+ private static final int WILLIE = 31574;
+ private static final int HILGENDORF = 31578;
+ private static final int PLATIS = 31696;
+ private static final int KLAUS = 31579;
+ private static final int BATIDAE = 31989;
+ private static final int EINDARKNER = 31697;
+ private static final int GALBA = 32007;
+ private static final int SANTIAGO = 34138;
+ // Reward
+ private static final int SANTIAGOS_REEL_FRAGMENT = 47562;
+ // Misc
+ private static final int MIN_LEVEL = 85;
+ private static final int NIMBLE_FISH = 47551;
+ private static final int NIMBLE_FISH_NEEDED = 40;
+
+ public Q00938_TheFishermansOtherHobby()
+ {
+ super(938);
+ addStartNpc(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addTalkId(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addCondMinLevel(MIN_LEVEL, "noLevel.htm");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, false);
+ if (qs == null)
+ {
+ return null;
+ }
+ String htmltext = null;
+ switch (event)
+ {
+ case "Guild-02.htm":
+ case "Guild-03.htm":
+ {
+ htmltext = event;
+ break;
+ }
+ case "Guild-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "Guild-07.html":
+ {
+ if (qs.isCond(2))
+ {
+ takeItems(player, NIMBLE_FISH, NIMBLE_FISH_NEEDED);
+ giveItems(player, SANTIAGOS_REEL_FRAGMENT, 2);
+ addFactionPoints(player, Faction.FISHING_GUILD, 100);
+ qs.exitQuest(QuestType.REPEATABLE, true);
+ htmltext = event;
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ htmltext = "Guild-01.htm";
+ break;
+ }
+ case State.STARTED:
+ {
+ if (qs.isCond(1))
+ {
+ htmltext = "Guild-05.html";
+ }
+ else if (qs.isCond(2))
+ {
+ htmltext = "Guild-06.html";
+ }
+ break;
+ }
+ case State.COMPLETED:
+ {
+ htmltext = getAlreadyCompletedMsg(player);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @RegisterEvent(EventType.ON_PLAYER_FISHING)
+ @RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
+ public void onPlayerFishing(OnPlayerFishing event)
+ {
+ if (event.getReason() == FishingEndReason.WIN)
+ {
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
+ {
+ if (getQuestItemsCount(player, NIMBLE_FISH) >= NIMBLE_FISH_NEEDED)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
new file mode 100644
index 0000000000..60f4c4b593
--- /dev/null
+++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+Hmm, it would seem that it's a bit too early still to discuss the Fishing Guild with you. Please return after you've become stronger.
+(Only characters with Lv. 85 or above may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
index 33c7b9fcd8..d47e535813 100644
--- a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
+++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
@@ -155,22 +155,25 @@ public class Q10575_LetsGoFishing extends Quest
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
public void onPlayerFishing(OnPlayerFishing event)
{
- final Player player = event.getPlayer();
- final QuestState qs = getQuestState(player, false);
- if ((qs != null) && qs.isCond(2) && (event.getReason() == FishingEndReason.WIN))
+ if (event.getReason() == FishingEndReason.WIN)
{
- int count = qs.getInt(COUNT_VAR);
- qs.set(COUNT_VAR, ++count);
- if (count >= 5)
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(2))
{
- qs.setCond(3, true);
+ int count = qs.getInt(COUNT_VAR);
+ qs.set(COUNT_VAR, ++count);
+ if (count >= 5)
+ {
+ qs.setCond(3, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+
+ sendNpcLogList(player);
}
- else
- {
- playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
- }
-
- sendNpcLogList(player);
}
}
diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/QuestMasterHandler.java
index bb4ef07f27..a240b448e6 100644
--- a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/QuestMasterHandler.java
+++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/quests/QuestMasterHandler.java
@@ -245,6 +245,7 @@ import quests.Q00930_DisparagingThePhantoms.Q00930_DisparagingThePhantoms;
import quests.Q00931_MemoriesOfTheWind.Q00931_MemoriesOfTheWind;
import quests.Q00932_SayhasEnergy.Q00932_SayhasEnergy;
import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild;
+import quests.Q00938_TheFishermansOtherHobby.Q00938_TheFishermansOtherHobby;
import quests.Q10273_GoodDayToFly.Q10273_GoodDayToFly;
import quests.Q10274_CollectingInTheAir.Q10274_CollectingInTheAir;
import quests.Q10282_ToTheSeedOfAnnihilation.Q10282_ToTheSeedOfAnnihilation;
@@ -862,6 +863,7 @@ public class QuestMasterHandler
Q00931_MemoriesOfTheWind.class,
Q00932_SayhasEnergy.class,
Q00937_ToReviveTheFishingGuild.class,
+ Q00938_TheFishermansOtherHobby.class,
Q00985_AdventureGuildsSpecialRequestLv1.class, // TODO: Not done.
Q00986_AdventureGuildsSpecialRequestLv2.class, // TODO: Not done.
Q00987_AdventureGuildsSpecialRequestLv3.class, // TODO: Not done.
diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/MissingQuests.txt b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/MissingQuests.txt
index c74662b24d..0df4ea6ef0 100644
--- a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/MissingQuests.txt
+++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/MissingQuests.txt
@@ -110,7 +110,6 @@
922 Hunter Guild Request - Northern Region, Isle of Prayer
925 Hunter Guild Request - Garden of Spirits
929 Seeker Rescue
-938 The Fisherman's Other Hobby
940 Hunter Guild Request - Atelia Fortress
986 Adventure Guild's Special Request - Lv. 2
987 Adventure Guild's Special Request - Lv. 3
diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
index f1f12c9399..784084e18f 100644
--- a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
+++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
@@ -160,21 +160,24 @@ public class Q00937_ToReviveTheFishingGuild extends Quest
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
public void onPlayerFishing(OnPlayerFishing event)
{
- final Player player = event.getPlayer();
- final QuestState qs = getQuestState(player, false);
- if ((qs != null) && qs.isCond(1) && (event.getReason() == FishingEndReason.WIN))
+ if (event.getReason() == FishingEndReason.WIN)
{
- int count = qs.getInt(COUNT_VAR);
- qs.set(COUNT_VAR, ++count);
- if (count >= 100)
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
{
- qs.setCond(2, true);
+ int count = qs.getInt(COUNT_VAR);
+ qs.set(COUNT_VAR, ++count);
+ if (count >= 100)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ sendNpcLogList(player);
}
- else
- {
- playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
- }
- sendNpcLogList(player);
}
}
diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
new file mode 100644
index 0000000000..75d4f7706f
--- /dev/null
+++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+As a Fishing Guild member, have you ever dreamed of doing something new, for example, finding a new hobby?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
new file mode 100644
index 0000000000..7728255573
--- /dev/null
+++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+You know, we at the Fishing Guild always advise you to get some good fishing gear.
+It's even better when getting top-grade equipment turns into a hobby. Do you want to know why we give so much importance to gear?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
new file mode 100644
index 0000000000..8c5906f4b0
--- /dev/null
+++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+Equipment plays a big part in fishing. It's significance shouldn't be underestimated. Warriors preparing for the battle choose most enduring swords and shields to overcome the enemy for sure. We, fishermen, do the same. We choose a firmer fishing rod to get a rich take.
+A clever fisherman always tries to get good equipment. A Master Fishing Rod is the best choice!
+The Fishing Guild wants as many fishermen as possible to learn about this fishing rod and get it. Well, are you interested?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
new file mode 100644
index 0000000000..ef9051b385
--- /dev/null
+++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+So, I'll to tell you everything I know about Master Fishing Rod.
+First of all, to get one you must do something. Bring me 40 Nimble Fish.
+It doesn't matter how you get them. The point is that you bring me the exact number I'm asking for. It's the main ingredient.
+Bring me 40 Nimble Fish, and I will reward you with materials for your Master Fishing Rod.
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
new file mode 100644
index 0000000000..8907811dfe
--- /dev/null
+++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+You must gather 40 Nimble Fish, but I don't see any of them. It doesn't matter how you get them. Just bring me 40 Nimble Fish.
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
new file mode 100644
index 0000000000..44c7488636
--- /dev/null
+++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+Have you fished enough? Did you catch anything?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
new file mode 100644
index 0000000000..172814aa69
--- /dev/null
+++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+Thank you. As a token of our appreciation, here is a small gift. I hope you find it useful.
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
new file mode 100644
index 0000000000..fcaea628f2
--- /dev/null
+++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
@@ -0,0 +1,168 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package quests.Q00938_TheFishermansOtherHobby;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.FishingEndReason;
+import org.l2jmobius.gameserver.enums.QuestSound;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.Player;
+import org.l2jmobius.gameserver.model.events.EventType;
+import org.l2jmobius.gameserver.model.events.ListenerRegisterType;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterEvent;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterType;
+import org.l2jmobius.gameserver.model.events.impl.creature.player.OnPlayerFishing;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * The Fisherman's Other Hobby (938)
+ * @author CostyKiller
+ */
+public class Q00938_TheFishermansOtherHobby extends Quest
+{
+ // NPCs
+ private static final int OFULLE = 31572;
+ private static final int LINNAEUS = 31577;
+ private static final int PERELIN = 31563;
+ private static final int BLEAKER = 31567;
+ private static final int CYANO = 31569;
+ private static final int PAMFUS = 31568;
+ private static final int LANOSCO = 31570;
+ private static final int HUFS = 31571;
+ private static final int MONAKAN = 31573;
+ private static final int BERIX = 31576;
+ private static final int LITULON = 31575;
+ private static final int WILLIE = 31574;
+ private static final int HILGENDORF = 31578;
+ private static final int PLATIS = 31696;
+ private static final int KLAUS = 31579;
+ private static final int BATIDAE = 31989;
+ private static final int EINDARKNER = 31697;
+ private static final int GALBA = 32007;
+ private static final int SANTIAGO = 34138;
+ // Reward
+ private static final int SANTIAGOS_REEL_FRAGMENT = 47562;
+ // Misc
+ private static final int MIN_LEVEL = 85;
+ private static final int NIMBLE_FISH = 47551;
+ private static final int NIMBLE_FISH_NEEDED = 40;
+
+ public Q00938_TheFishermansOtherHobby()
+ {
+ super(938);
+ addStartNpc(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addTalkId(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addCondMinLevel(MIN_LEVEL, "noLevel.htm");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, false);
+ if (qs == null)
+ {
+ return null;
+ }
+ String htmltext = null;
+ switch (event)
+ {
+ case "Guild-02.htm":
+ case "Guild-03.htm":
+ {
+ htmltext = event;
+ break;
+ }
+ case "Guild-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "Guild-07.html":
+ {
+ if (qs.isCond(2))
+ {
+ takeItems(player, NIMBLE_FISH, NIMBLE_FISH_NEEDED);
+ giveItems(player, SANTIAGOS_REEL_FRAGMENT, 2);
+ addFactionPoints(player, Faction.FISHING_GUILD, 100);
+ qs.exitQuest(QuestType.REPEATABLE, true);
+ htmltext = event;
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ htmltext = "Guild-01.htm";
+ break;
+ }
+ case State.STARTED:
+ {
+ if (qs.isCond(1))
+ {
+ htmltext = "Guild-05.html";
+ }
+ else if (qs.isCond(2))
+ {
+ htmltext = "Guild-06.html";
+ }
+ break;
+ }
+ case State.COMPLETED:
+ {
+ htmltext = getAlreadyCompletedMsg(player);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @RegisterEvent(EventType.ON_PLAYER_FISHING)
+ @RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
+ public void onPlayerFishing(OnPlayerFishing event)
+ {
+ if (event.getReason() == FishingEndReason.WIN)
+ {
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
+ {
+ if (getQuestItemsCount(player, NIMBLE_FISH) >= NIMBLE_FISH_NEEDED)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
new file mode 100644
index 0000000000..60f4c4b593
--- /dev/null
+++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+Hmm, it would seem that it's a bit too early still to discuss the Fishing Guild with you. Please return after you've become stronger.
+(Only characters with Lv. 85 or above may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
index 33c7b9fcd8..d47e535813 100644
--- a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
+++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
@@ -155,22 +155,25 @@ public class Q10575_LetsGoFishing extends Quest
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
public void onPlayerFishing(OnPlayerFishing event)
{
- final Player player = event.getPlayer();
- final QuestState qs = getQuestState(player, false);
- if ((qs != null) && qs.isCond(2) && (event.getReason() == FishingEndReason.WIN))
+ if (event.getReason() == FishingEndReason.WIN)
{
- int count = qs.getInt(COUNT_VAR);
- qs.set(COUNT_VAR, ++count);
- if (count >= 5)
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(2))
{
- qs.setCond(3, true);
+ int count = qs.getInt(COUNT_VAR);
+ qs.set(COUNT_VAR, ++count);
+ if (count >= 5)
+ {
+ qs.setCond(3, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+
+ sendNpcLogList(player);
}
- else
- {
- playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
- }
-
- sendNpcLogList(player);
}
}
diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/QuestMasterHandler.java
index ae8180366b..4dc42dbef7 100644
--- a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/QuestMasterHandler.java
+++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/quests/QuestMasterHandler.java
@@ -221,6 +221,7 @@ import quests.Q00930_DisparagingThePhantoms.Q00930_DisparagingThePhantoms;
import quests.Q00931_MemoriesOfTheWind.Q00931_MemoriesOfTheWind;
import quests.Q00932_SayhasEnergy.Q00932_SayhasEnergy;
import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild;
+import quests.Q00938_TheFishermansOtherHobby.Q00938_TheFishermansOtherHobby;
import quests.Q10282_ToTheSeedOfAnnihilation.Q10282_ToTheSeedOfAnnihilation;
import quests.Q10283_RequestOfIceMerchant.Q10283_RequestOfIceMerchant;
import quests.Q10284_AcquisitionOfDivineSword.Q10284_AcquisitionOfDivineSword;
@@ -804,6 +805,7 @@ public class QuestMasterHandler
Q00931_MemoriesOfTheWind.class,
Q00932_SayhasEnergy.class,
Q00937_ToReviveTheFishingGuild.class,
+ Q00938_TheFishermansOtherHobby.class,
Q00985_AdventureGuildsSpecialRequestLv1.class, // TODO: Not done.
Q00986_AdventureGuildsSpecialRequestLv2.class, // TODO: Not done.
Q00987_AdventureGuildsSpecialRequestLv3.class, // TODO: Not done.
diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/MissingQuests.txt b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/MissingQuests.txt
index abf88e9180..ae466916da 100644
--- a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/MissingQuests.txt
+++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/MissingQuests.txt
@@ -113,7 +113,6 @@
922 Hunter Guild Request - Northern Region, Isle of Prayer
925 Hunter Guild Request - Garden of Spirits
929 Seeker Rescue
-938 The Fisherman's Other Hobby
940 Hunter Guild Request - Atelia Fortress
986 Adventure Guild's Special Request - Lv. 2
987 Adventure Guild's Special Request - Lv. 3
diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
index f1f12c9399..784084e18f 100644
--- a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
+++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
@@ -160,21 +160,24 @@ public class Q00937_ToReviveTheFishingGuild extends Quest
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
public void onPlayerFishing(OnPlayerFishing event)
{
- final Player player = event.getPlayer();
- final QuestState qs = getQuestState(player, false);
- if ((qs != null) && qs.isCond(1) && (event.getReason() == FishingEndReason.WIN))
+ if (event.getReason() == FishingEndReason.WIN)
{
- int count = qs.getInt(COUNT_VAR);
- qs.set(COUNT_VAR, ++count);
- if (count >= 100)
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
{
- qs.setCond(2, true);
+ int count = qs.getInt(COUNT_VAR);
+ qs.set(COUNT_VAR, ++count);
+ if (count >= 100)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ sendNpcLogList(player);
}
- else
- {
- playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
- }
- sendNpcLogList(player);
}
}
diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
new file mode 100644
index 0000000000..75d4f7706f
--- /dev/null
+++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+As a Fishing Guild member, have you ever dreamed of doing something new, for example, finding a new hobby?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
new file mode 100644
index 0000000000..7728255573
--- /dev/null
+++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+You know, we at the Fishing Guild always advise you to get some good fishing gear.
+It's even better when getting top-grade equipment turns into a hobby. Do you want to know why we give so much importance to gear?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
new file mode 100644
index 0000000000..8c5906f4b0
--- /dev/null
+++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+Equipment plays a big part in fishing. It's significance shouldn't be underestimated. Warriors preparing for the battle choose most enduring swords and shields to overcome the enemy for sure. We, fishermen, do the same. We choose a firmer fishing rod to get a rich take.
+A clever fisherman always tries to get good equipment. A Master Fishing Rod is the best choice!
+The Fishing Guild wants as many fishermen as possible to learn about this fishing rod and get it. Well, are you interested?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
new file mode 100644
index 0000000000..ef9051b385
--- /dev/null
+++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+So, I'll to tell you everything I know about Master Fishing Rod.
+First of all, to get one you must do something. Bring me 40 Nimble Fish.
+It doesn't matter how you get them. The point is that you bring me the exact number I'm asking for. It's the main ingredient.
+Bring me 40 Nimble Fish, and I will reward you with materials for your Master Fishing Rod.
+
\ No newline at end of file
diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
new file mode 100644
index 0000000000..8907811dfe
--- /dev/null
+++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+You must gather 40 Nimble Fish, but I don't see any of them. It doesn't matter how you get them. Just bring me 40 Nimble Fish.
+
\ No newline at end of file
diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
new file mode 100644
index 0000000000..44c7488636
--- /dev/null
+++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+Have you fished enough? Did you catch anything?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
new file mode 100644
index 0000000000..172814aa69
--- /dev/null
+++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+Thank you. As a token of our appreciation, here is a small gift. I hope you find it useful.
+
\ No newline at end of file
diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
new file mode 100644
index 0000000000..fcaea628f2
--- /dev/null
+++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
@@ -0,0 +1,168 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package quests.Q00938_TheFishermansOtherHobby;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.FishingEndReason;
+import org.l2jmobius.gameserver.enums.QuestSound;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.Player;
+import org.l2jmobius.gameserver.model.events.EventType;
+import org.l2jmobius.gameserver.model.events.ListenerRegisterType;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterEvent;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterType;
+import org.l2jmobius.gameserver.model.events.impl.creature.player.OnPlayerFishing;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * The Fisherman's Other Hobby (938)
+ * @author CostyKiller
+ */
+public class Q00938_TheFishermansOtherHobby extends Quest
+{
+ // NPCs
+ private static final int OFULLE = 31572;
+ private static final int LINNAEUS = 31577;
+ private static final int PERELIN = 31563;
+ private static final int BLEAKER = 31567;
+ private static final int CYANO = 31569;
+ private static final int PAMFUS = 31568;
+ private static final int LANOSCO = 31570;
+ private static final int HUFS = 31571;
+ private static final int MONAKAN = 31573;
+ private static final int BERIX = 31576;
+ private static final int LITULON = 31575;
+ private static final int WILLIE = 31574;
+ private static final int HILGENDORF = 31578;
+ private static final int PLATIS = 31696;
+ private static final int KLAUS = 31579;
+ private static final int BATIDAE = 31989;
+ private static final int EINDARKNER = 31697;
+ private static final int GALBA = 32007;
+ private static final int SANTIAGO = 34138;
+ // Reward
+ private static final int SANTIAGOS_REEL_FRAGMENT = 47562;
+ // Misc
+ private static final int MIN_LEVEL = 85;
+ private static final int NIMBLE_FISH = 47551;
+ private static final int NIMBLE_FISH_NEEDED = 40;
+
+ public Q00938_TheFishermansOtherHobby()
+ {
+ super(938);
+ addStartNpc(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addTalkId(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addCondMinLevel(MIN_LEVEL, "noLevel.htm");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, false);
+ if (qs == null)
+ {
+ return null;
+ }
+ String htmltext = null;
+ switch (event)
+ {
+ case "Guild-02.htm":
+ case "Guild-03.htm":
+ {
+ htmltext = event;
+ break;
+ }
+ case "Guild-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "Guild-07.html":
+ {
+ if (qs.isCond(2))
+ {
+ takeItems(player, NIMBLE_FISH, NIMBLE_FISH_NEEDED);
+ giveItems(player, SANTIAGOS_REEL_FRAGMENT, 2);
+ addFactionPoints(player, Faction.FISHING_GUILD, 100);
+ qs.exitQuest(QuestType.REPEATABLE, true);
+ htmltext = event;
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ htmltext = "Guild-01.htm";
+ break;
+ }
+ case State.STARTED:
+ {
+ if (qs.isCond(1))
+ {
+ htmltext = "Guild-05.html";
+ }
+ else if (qs.isCond(2))
+ {
+ htmltext = "Guild-06.html";
+ }
+ break;
+ }
+ case State.COMPLETED:
+ {
+ htmltext = getAlreadyCompletedMsg(player);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @RegisterEvent(EventType.ON_PLAYER_FISHING)
+ @RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
+ public void onPlayerFishing(OnPlayerFishing event)
+ {
+ if (event.getReason() == FishingEndReason.WIN)
+ {
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
+ {
+ if (getQuestItemsCount(player, NIMBLE_FISH) >= NIMBLE_FISH_NEEDED)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
new file mode 100644
index 0000000000..60f4c4b593
--- /dev/null
+++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+Hmm, it would seem that it's a bit too early still to discuss the Fishing Guild with you. Please return after you've become stronger.
+(Only characters with Lv. 85 or above may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
index 33c7b9fcd8..d47e535813 100644
--- a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
+++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
@@ -155,22 +155,25 @@ public class Q10575_LetsGoFishing extends Quest
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
public void onPlayerFishing(OnPlayerFishing event)
{
- final Player player = event.getPlayer();
- final QuestState qs = getQuestState(player, false);
- if ((qs != null) && qs.isCond(2) && (event.getReason() == FishingEndReason.WIN))
+ if (event.getReason() == FishingEndReason.WIN)
{
- int count = qs.getInt(COUNT_VAR);
- qs.set(COUNT_VAR, ++count);
- if (count >= 5)
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(2))
{
- qs.setCond(3, true);
+ int count = qs.getInt(COUNT_VAR);
+ qs.set(COUNT_VAR, ++count);
+ if (count >= 5)
+ {
+ qs.setCond(3, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+
+ sendNpcLogList(player);
}
- else
- {
- playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
- }
-
- sendNpcLogList(player);
}
}
diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java
index 45ecda9fa3..568b54f3e2 100644
--- a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java
+++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java
@@ -227,6 +227,7 @@ import quests.Q00930_DisparagingThePhantoms.Q00930_DisparagingThePhantoms;
import quests.Q00931_MemoriesOfTheWind.Q00931_MemoriesOfTheWind;
import quests.Q00932_SayhasEnergy.Q00932_SayhasEnergy;
import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild;
+import quests.Q00938_TheFishermansOtherHobby.Q00938_TheFishermansOtherHobby;
import quests.Q10282_ToTheSeedOfAnnihilation.Q10282_ToTheSeedOfAnnihilation;
import quests.Q10283_RequestOfIceMerchant.Q10283_RequestOfIceMerchant;
import quests.Q10284_AcquisitionOfDivineSword.Q10284_AcquisitionOfDivineSword;
@@ -832,6 +833,7 @@ public class QuestMasterHandler
Q00931_MemoriesOfTheWind.class,
Q00932_SayhasEnergy.class,
Q00937_ToReviveTheFishingGuild.class,
+ Q00938_TheFishermansOtherHobby.class,
Q00985_AdventureGuildsSpecialRequestLv1.class, // TODO: Not done.
Q00986_AdventureGuildsSpecialRequestLv2.class, // TODO: Not done.
Q00987_AdventureGuildsSpecialRequestLv3.class, // TODO: Not done.
diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/MissingQuests.txt b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/MissingQuests.txt
index 9bdf9f87f2..f5d39a24ef 100644
--- a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/MissingQuests.txt
+++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/MissingQuests.txt
@@ -108,7 +108,6 @@
918 Red Libra Request - Atelia Fortress
919 Red Libra Request - Superion
929 Seeker Rescue
-938 The Fisherman's Other Hobby
986 Adventure Guild's Special Request - Lv. 2
987 Adventure Guild's Special Request - Lv. 3
988 Adventure Guild's Special Request - Lv. 4
diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
index f1f12c9399..784084e18f 100644
--- a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
+++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
@@ -160,21 +160,24 @@ public class Q00937_ToReviveTheFishingGuild extends Quest
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
public void onPlayerFishing(OnPlayerFishing event)
{
- final Player player = event.getPlayer();
- final QuestState qs = getQuestState(player, false);
- if ((qs != null) && qs.isCond(1) && (event.getReason() == FishingEndReason.WIN))
+ if (event.getReason() == FishingEndReason.WIN)
{
- int count = qs.getInt(COUNT_VAR);
- qs.set(COUNT_VAR, ++count);
- if (count >= 100)
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
{
- qs.setCond(2, true);
+ int count = qs.getInt(COUNT_VAR);
+ qs.set(COUNT_VAR, ++count);
+ if (count >= 100)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ sendNpcLogList(player);
}
- else
- {
- playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
- }
- sendNpcLogList(player);
}
}
diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
new file mode 100644
index 0000000000..75d4f7706f
--- /dev/null
+++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+As a Fishing Guild member, have you ever dreamed of doing something new, for example, finding a new hobby?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
new file mode 100644
index 0000000000..7728255573
--- /dev/null
+++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+You know, we at the Fishing Guild always advise you to get some good fishing gear.
+It's even better when getting top-grade equipment turns into a hobby. Do you want to know why we give so much importance to gear?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
new file mode 100644
index 0000000000..8c5906f4b0
--- /dev/null
+++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+Equipment plays a big part in fishing. It's significance shouldn't be underestimated. Warriors preparing for the battle choose most enduring swords and shields to overcome the enemy for sure. We, fishermen, do the same. We choose a firmer fishing rod to get a rich take.
+A clever fisherman always tries to get good equipment. A Master Fishing Rod is the best choice!
+The Fishing Guild wants as many fishermen as possible to learn about this fishing rod and get it. Well, are you interested?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
new file mode 100644
index 0000000000..ef9051b385
--- /dev/null
+++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+So, I'll to tell you everything I know about Master Fishing Rod.
+First of all, to get one you must do something. Bring me 40 Nimble Fish.
+It doesn't matter how you get them. The point is that you bring me the exact number I'm asking for. It's the main ingredient.
+Bring me 40 Nimble Fish, and I will reward you with materials for your Master Fishing Rod.
+
\ No newline at end of file
diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
new file mode 100644
index 0000000000..8907811dfe
--- /dev/null
+++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+You must gather 40 Nimble Fish, but I don't see any of them. It doesn't matter how you get them. Just bring me 40 Nimble Fish.
+
\ No newline at end of file
diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
new file mode 100644
index 0000000000..44c7488636
--- /dev/null
+++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+Have you fished enough? Did you catch anything?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
new file mode 100644
index 0000000000..172814aa69
--- /dev/null
+++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+Thank you. As a token of our appreciation, here is a small gift. I hope you find it useful.
+
\ No newline at end of file
diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
new file mode 100644
index 0000000000..fcaea628f2
--- /dev/null
+++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
@@ -0,0 +1,168 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package quests.Q00938_TheFishermansOtherHobby;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.FishingEndReason;
+import org.l2jmobius.gameserver.enums.QuestSound;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.Player;
+import org.l2jmobius.gameserver.model.events.EventType;
+import org.l2jmobius.gameserver.model.events.ListenerRegisterType;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterEvent;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterType;
+import org.l2jmobius.gameserver.model.events.impl.creature.player.OnPlayerFishing;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * The Fisherman's Other Hobby (938)
+ * @author CostyKiller
+ */
+public class Q00938_TheFishermansOtherHobby extends Quest
+{
+ // NPCs
+ private static final int OFULLE = 31572;
+ private static final int LINNAEUS = 31577;
+ private static final int PERELIN = 31563;
+ private static final int BLEAKER = 31567;
+ private static final int CYANO = 31569;
+ private static final int PAMFUS = 31568;
+ private static final int LANOSCO = 31570;
+ private static final int HUFS = 31571;
+ private static final int MONAKAN = 31573;
+ private static final int BERIX = 31576;
+ private static final int LITULON = 31575;
+ private static final int WILLIE = 31574;
+ private static final int HILGENDORF = 31578;
+ private static final int PLATIS = 31696;
+ private static final int KLAUS = 31579;
+ private static final int BATIDAE = 31989;
+ private static final int EINDARKNER = 31697;
+ private static final int GALBA = 32007;
+ private static final int SANTIAGO = 34138;
+ // Reward
+ private static final int SANTIAGOS_REEL_FRAGMENT = 47562;
+ // Misc
+ private static final int MIN_LEVEL = 85;
+ private static final int NIMBLE_FISH = 47551;
+ private static final int NIMBLE_FISH_NEEDED = 40;
+
+ public Q00938_TheFishermansOtherHobby()
+ {
+ super(938);
+ addStartNpc(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addTalkId(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addCondMinLevel(MIN_LEVEL, "noLevel.htm");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, false);
+ if (qs == null)
+ {
+ return null;
+ }
+ String htmltext = null;
+ switch (event)
+ {
+ case "Guild-02.htm":
+ case "Guild-03.htm":
+ {
+ htmltext = event;
+ break;
+ }
+ case "Guild-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "Guild-07.html":
+ {
+ if (qs.isCond(2))
+ {
+ takeItems(player, NIMBLE_FISH, NIMBLE_FISH_NEEDED);
+ giveItems(player, SANTIAGOS_REEL_FRAGMENT, 2);
+ addFactionPoints(player, Faction.FISHING_GUILD, 100);
+ qs.exitQuest(QuestType.REPEATABLE, true);
+ htmltext = event;
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ htmltext = "Guild-01.htm";
+ break;
+ }
+ case State.STARTED:
+ {
+ if (qs.isCond(1))
+ {
+ htmltext = "Guild-05.html";
+ }
+ else if (qs.isCond(2))
+ {
+ htmltext = "Guild-06.html";
+ }
+ break;
+ }
+ case State.COMPLETED:
+ {
+ htmltext = getAlreadyCompletedMsg(player);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @RegisterEvent(EventType.ON_PLAYER_FISHING)
+ @RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
+ public void onPlayerFishing(OnPlayerFishing event)
+ {
+ if (event.getReason() == FishingEndReason.WIN)
+ {
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
+ {
+ if (getQuestItemsCount(player, NIMBLE_FISH) >= NIMBLE_FISH_NEEDED)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
new file mode 100644
index 0000000000..60f4c4b593
--- /dev/null
+++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+Hmm, it would seem that it's a bit too early still to discuss the Fishing Guild with you. Please return after you've become stronger.
+(Only characters with Lv. 85 or above may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
index 33c7b9fcd8..d47e535813 100644
--- a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
+++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
@@ -155,22 +155,25 @@ public class Q10575_LetsGoFishing extends Quest
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
public void onPlayerFishing(OnPlayerFishing event)
{
- final Player player = event.getPlayer();
- final QuestState qs = getQuestState(player, false);
- if ((qs != null) && qs.isCond(2) && (event.getReason() == FishingEndReason.WIN))
+ if (event.getReason() == FishingEndReason.WIN)
{
- int count = qs.getInt(COUNT_VAR);
- qs.set(COUNT_VAR, ++count);
- if (count >= 5)
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(2))
{
- qs.setCond(3, true);
+ int count = qs.getInt(COUNT_VAR);
+ qs.set(COUNT_VAR, ++count);
+ if (count >= 5)
+ {
+ qs.setCond(3, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+
+ sendNpcLogList(player);
}
- else
- {
- playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
- }
-
- sendNpcLogList(player);
}
}
diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/QuestMasterHandler.java
index 1159a4d99a..5ce233d8c4 100644
--- a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/QuestMasterHandler.java
+++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/quests/QuestMasterHandler.java
@@ -140,6 +140,7 @@ import quests.Q00930_DisparagingThePhantoms.Q00930_DisparagingThePhantoms;
import quests.Q00931_MemoriesOfTheWind.Q00931_MemoriesOfTheWind;
import quests.Q00932_SayhasEnergy.Q00932_SayhasEnergy;
import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild;
+import quests.Q00938_TheFishermansOtherHobby.Q00938_TheFishermansOtherHobby;
import quests.Q00985_AdventureGuildsSpecialRequestLv1.Q00985_AdventureGuildsSpecialRequestLv1;
import quests.Q10282_ToTheSeedOfAnnihilation.Q10282_ToTheSeedOfAnnihilation;
import quests.Q10283_RequestOfIceMerchant.Q10283_RequestOfIceMerchant;
@@ -481,6 +482,7 @@ public class QuestMasterHandler
Q00931_MemoriesOfTheWind.class,
Q00932_SayhasEnergy.class,
Q00937_ToReviveTheFishingGuild.class,
+ Q00938_TheFishermansOtherHobby.class,
Q00985_AdventureGuildsSpecialRequestLv1.class,
Q00986_AdventureGuildsSpecialRequestLv2.class, // TODO: Not done.
Q00987_AdventureGuildsSpecialRequestLv3.class, // TODO: Not done.
diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/MissingQuests.txt b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/MissingQuests.txt
index 40de275aa1..1e480763a9 100644
--- a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/MissingQuests.txt
+++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/MissingQuests.txt
@@ -46,9 +46,7 @@
839 Request from the Unworldly Visitors
840 Request from the Kingdom's Royal Guard
861 Kain's Choice
-938 The Fisherman's Other Hobby
1900 Storm Isle - Secret Spot
1901 Storm Isle - Furtive Deal
-10507 Obtaining New Power
10595 The Dimensional Warp, Part 8
10596 The Dimensional Warp, Part 9
\ No newline at end of file
diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
index f1f12c9399..784084e18f 100644
--- a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
+++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
@@ -160,21 +160,24 @@ public class Q00937_ToReviveTheFishingGuild extends Quest
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
public void onPlayerFishing(OnPlayerFishing event)
{
- final Player player = event.getPlayer();
- final QuestState qs = getQuestState(player, false);
- if ((qs != null) && qs.isCond(1) && (event.getReason() == FishingEndReason.WIN))
+ if (event.getReason() == FishingEndReason.WIN)
{
- int count = qs.getInt(COUNT_VAR);
- qs.set(COUNT_VAR, ++count);
- if (count >= 100)
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
{
- qs.setCond(2, true);
+ int count = qs.getInt(COUNT_VAR);
+ qs.set(COUNT_VAR, ++count);
+ if (count >= 100)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ sendNpcLogList(player);
}
- else
- {
- playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
- }
- sendNpcLogList(player);
}
}
diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
new file mode 100644
index 0000000000..75d4f7706f
--- /dev/null
+++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+As a Fishing Guild member, have you ever dreamed of doing something new, for example, finding a new hobby?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
new file mode 100644
index 0000000000..7728255573
--- /dev/null
+++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+You know, we at the Fishing Guild always advise you to get some good fishing gear.
+It's even better when getting top-grade equipment turns into a hobby. Do you want to know why we give so much importance to gear?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
new file mode 100644
index 0000000000..8c5906f4b0
--- /dev/null
+++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+Equipment plays a big part in fishing. It's significance shouldn't be underestimated. Warriors preparing for the battle choose most enduring swords and shields to overcome the enemy for sure. We, fishermen, do the same. We choose a firmer fishing rod to get a rich take.
+A clever fisherman always tries to get good equipment. A Master Fishing Rod is the best choice!
+The Fishing Guild wants as many fishermen as possible to learn about this fishing rod and get it. Well, are you interested?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
new file mode 100644
index 0000000000..ef9051b385
--- /dev/null
+++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+So, I'll to tell you everything I know about Master Fishing Rod.
+First of all, to get one you must do something. Bring me 40 Nimble Fish.
+It doesn't matter how you get them. The point is that you bring me the exact number I'm asking for. It's the main ingredient.
+Bring me 40 Nimble Fish, and I will reward you with materials for your Master Fishing Rod.
+
\ No newline at end of file
diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
new file mode 100644
index 0000000000..8907811dfe
--- /dev/null
+++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+You must gather 40 Nimble Fish, but I don't see any of them. It doesn't matter how you get them. Just bring me 40 Nimble Fish.
+
\ No newline at end of file
diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
new file mode 100644
index 0000000000..44c7488636
--- /dev/null
+++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+Have you fished enough? Did you catch anything?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
new file mode 100644
index 0000000000..172814aa69
--- /dev/null
+++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+Thank you. As a token of our appreciation, here is a small gift. I hope you find it useful.
+
\ No newline at end of file
diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
new file mode 100644
index 0000000000..fcaea628f2
--- /dev/null
+++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
@@ -0,0 +1,168 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package quests.Q00938_TheFishermansOtherHobby;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.FishingEndReason;
+import org.l2jmobius.gameserver.enums.QuestSound;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.Player;
+import org.l2jmobius.gameserver.model.events.EventType;
+import org.l2jmobius.gameserver.model.events.ListenerRegisterType;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterEvent;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterType;
+import org.l2jmobius.gameserver.model.events.impl.creature.player.OnPlayerFishing;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * The Fisherman's Other Hobby (938)
+ * @author CostyKiller
+ */
+public class Q00938_TheFishermansOtherHobby extends Quest
+{
+ // NPCs
+ private static final int OFULLE = 31572;
+ private static final int LINNAEUS = 31577;
+ private static final int PERELIN = 31563;
+ private static final int BLEAKER = 31567;
+ private static final int CYANO = 31569;
+ private static final int PAMFUS = 31568;
+ private static final int LANOSCO = 31570;
+ private static final int HUFS = 31571;
+ private static final int MONAKAN = 31573;
+ private static final int BERIX = 31576;
+ private static final int LITULON = 31575;
+ private static final int WILLIE = 31574;
+ private static final int HILGENDORF = 31578;
+ private static final int PLATIS = 31696;
+ private static final int KLAUS = 31579;
+ private static final int BATIDAE = 31989;
+ private static final int EINDARKNER = 31697;
+ private static final int GALBA = 32007;
+ private static final int SANTIAGO = 34138;
+ // Reward
+ private static final int SANTIAGOS_REEL_FRAGMENT = 47562;
+ // Misc
+ private static final int MIN_LEVEL = 85;
+ private static final int NIMBLE_FISH = 47551;
+ private static final int NIMBLE_FISH_NEEDED = 40;
+
+ public Q00938_TheFishermansOtherHobby()
+ {
+ super(938);
+ addStartNpc(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addTalkId(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addCondMinLevel(MIN_LEVEL, "noLevel.htm");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, false);
+ if (qs == null)
+ {
+ return null;
+ }
+ String htmltext = null;
+ switch (event)
+ {
+ case "Guild-02.htm":
+ case "Guild-03.htm":
+ {
+ htmltext = event;
+ break;
+ }
+ case "Guild-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "Guild-07.html":
+ {
+ if (qs.isCond(2))
+ {
+ takeItems(player, NIMBLE_FISH, NIMBLE_FISH_NEEDED);
+ giveItems(player, SANTIAGOS_REEL_FRAGMENT, 2);
+ addFactionPoints(player, Faction.FISHING_GUILD, 100);
+ qs.exitQuest(QuestType.REPEATABLE, true);
+ htmltext = event;
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ htmltext = "Guild-01.htm";
+ break;
+ }
+ case State.STARTED:
+ {
+ if (qs.isCond(1))
+ {
+ htmltext = "Guild-05.html";
+ }
+ else if (qs.isCond(2))
+ {
+ htmltext = "Guild-06.html";
+ }
+ break;
+ }
+ case State.COMPLETED:
+ {
+ htmltext = getAlreadyCompletedMsg(player);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @RegisterEvent(EventType.ON_PLAYER_FISHING)
+ @RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
+ public void onPlayerFishing(OnPlayerFishing event)
+ {
+ if (event.getReason() == FishingEndReason.WIN)
+ {
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
+ {
+ if (getQuestItemsCount(player, NIMBLE_FISH) >= NIMBLE_FISH_NEEDED)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
new file mode 100644
index 0000000000..60f4c4b593
--- /dev/null
+++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+Hmm, it would seem that it's a bit too early still to discuss the Fishing Guild with you. Please return after you've become stronger.
+(Only characters with Lv. 85 or above may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
index 33c7b9fcd8..d47e535813 100644
--- a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
+++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
@@ -155,22 +155,25 @@ public class Q10575_LetsGoFishing extends Quest
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
public void onPlayerFishing(OnPlayerFishing event)
{
- final Player player = event.getPlayer();
- final QuestState qs = getQuestState(player, false);
- if ((qs != null) && qs.isCond(2) && (event.getReason() == FishingEndReason.WIN))
+ if (event.getReason() == FishingEndReason.WIN)
{
- int count = qs.getInt(COUNT_VAR);
- qs.set(COUNT_VAR, ++count);
- if (count >= 5)
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(2))
{
- qs.setCond(3, true);
+ int count = qs.getInt(COUNT_VAR);
+ qs.set(COUNT_VAR, ++count);
+ if (count >= 5)
+ {
+ qs.setCond(3, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+
+ sendNpcLogList(player);
}
- else
- {
- playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
- }
-
- sendNpcLogList(player);
}
}
diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/QuestMasterHandler.java
index 0e461df04d..84b88e12eb 100644
--- a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/QuestMasterHandler.java
+++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/quests/QuestMasterHandler.java
@@ -28,6 +28,7 @@ import quests.Q00833_DevilsTreasureTauti.Q00833_DevilsTreasureTauti;
import quests.Q00835_PitiableMelisa.Q00835_PitiableMelisa;
import quests.Q00933_TombRaiders.Q00933_TombRaiders;
import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild;
+import quests.Q00938_TheFishermansOtherHobby.Q00938_TheFishermansOtherHobby;
import quests.Q10423_EmbryoStrongholdRaid.Q10423_EmbryoStrongholdRaid;
import quests.Q10454_FinalEmbryoApostle.Q10454_FinalEmbryoApostle;
import quests.Q10507_ObtainingNewPower.Q10507_ObtainingNewPower;
@@ -99,6 +100,7 @@ public class QuestMasterHandler
Q00840_RequestFromTheKingdomsRoyalGuard.class, // TODO: Not done.
Q00933_TombRaiders.class,
Q00937_ToReviveTheFishingGuild.class,
+ Q00938_TheFishermansOtherHobby.class,
Q01900_StormIsleSecretSpot.class, // TODO: Not done.
Q01901_StormIsleFurtiveDeal.class, // TODO: Not done.
Q10423_EmbryoStrongholdRaid.class,
diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/MissingQuests.txt b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/MissingQuests.txt
index 40de275aa1..1e480763a9 100644
--- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/MissingQuests.txt
+++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/MissingQuests.txt
@@ -46,9 +46,7 @@
839 Request from the Unworldly Visitors
840 Request from the Kingdom's Royal Guard
861 Kain's Choice
-938 The Fisherman's Other Hobby
1900 Storm Isle - Secret Spot
1901 Storm Isle - Furtive Deal
-10507 Obtaining New Power
10595 The Dimensional Warp, Part 8
10596 The Dimensional Warp, Part 9
\ No newline at end of file
diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
index f1f12c9399..784084e18f 100644
--- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
+++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
@@ -160,21 +160,24 @@ public class Q00937_ToReviveTheFishingGuild extends Quest
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
public void onPlayerFishing(OnPlayerFishing event)
{
- final Player player = event.getPlayer();
- final QuestState qs = getQuestState(player, false);
- if ((qs != null) && qs.isCond(1) && (event.getReason() == FishingEndReason.WIN))
+ if (event.getReason() == FishingEndReason.WIN)
{
- int count = qs.getInt(COUNT_VAR);
- qs.set(COUNT_VAR, ++count);
- if (count >= 100)
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
{
- qs.setCond(2, true);
+ int count = qs.getInt(COUNT_VAR);
+ qs.set(COUNT_VAR, ++count);
+ if (count >= 100)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ sendNpcLogList(player);
}
- else
- {
- playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
- }
- sendNpcLogList(player);
}
}
diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
new file mode 100644
index 0000000000..75d4f7706f
--- /dev/null
+++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+As a Fishing Guild member, have you ever dreamed of doing something new, for example, finding a new hobby?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
new file mode 100644
index 0000000000..7728255573
--- /dev/null
+++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+You know, we at the Fishing Guild always advise you to get some good fishing gear.
+It's even better when getting top-grade equipment turns into a hobby. Do you want to know why we give so much importance to gear?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
new file mode 100644
index 0000000000..8c5906f4b0
--- /dev/null
+++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+Equipment plays a big part in fishing. It's significance shouldn't be underestimated. Warriors preparing for the battle choose most enduring swords and shields to overcome the enemy for sure. We, fishermen, do the same. We choose a firmer fishing rod to get a rich take.
+A clever fisherman always tries to get good equipment. A Master Fishing Rod is the best choice!
+The Fishing Guild wants as many fishermen as possible to learn about this fishing rod and get it. Well, are you interested?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
new file mode 100644
index 0000000000..ef9051b385
--- /dev/null
+++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+So, I'll to tell you everything I know about Master Fishing Rod.
+First of all, to get one you must do something. Bring me 40 Nimble Fish.
+It doesn't matter how you get them. The point is that you bring me the exact number I'm asking for. It's the main ingredient.
+Bring me 40 Nimble Fish, and I will reward you with materials for your Master Fishing Rod.
+
\ No newline at end of file
diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
new file mode 100644
index 0000000000..8907811dfe
--- /dev/null
+++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+You must gather 40 Nimble Fish, but I don't see any of them. It doesn't matter how you get them. Just bring me 40 Nimble Fish.
+
\ No newline at end of file
diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
new file mode 100644
index 0000000000..44c7488636
--- /dev/null
+++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+Have you fished enough? Did you catch anything?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
new file mode 100644
index 0000000000..172814aa69
--- /dev/null
+++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+Thank you. As a token of our appreciation, here is a small gift. I hope you find it useful.
+
\ No newline at end of file
diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
new file mode 100644
index 0000000000..fcaea628f2
--- /dev/null
+++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
@@ -0,0 +1,168 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package quests.Q00938_TheFishermansOtherHobby;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.FishingEndReason;
+import org.l2jmobius.gameserver.enums.QuestSound;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.Player;
+import org.l2jmobius.gameserver.model.events.EventType;
+import org.l2jmobius.gameserver.model.events.ListenerRegisterType;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterEvent;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterType;
+import org.l2jmobius.gameserver.model.events.impl.creature.player.OnPlayerFishing;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * The Fisherman's Other Hobby (938)
+ * @author CostyKiller
+ */
+public class Q00938_TheFishermansOtherHobby extends Quest
+{
+ // NPCs
+ private static final int OFULLE = 31572;
+ private static final int LINNAEUS = 31577;
+ private static final int PERELIN = 31563;
+ private static final int BLEAKER = 31567;
+ private static final int CYANO = 31569;
+ private static final int PAMFUS = 31568;
+ private static final int LANOSCO = 31570;
+ private static final int HUFS = 31571;
+ private static final int MONAKAN = 31573;
+ private static final int BERIX = 31576;
+ private static final int LITULON = 31575;
+ private static final int WILLIE = 31574;
+ private static final int HILGENDORF = 31578;
+ private static final int PLATIS = 31696;
+ private static final int KLAUS = 31579;
+ private static final int BATIDAE = 31989;
+ private static final int EINDARKNER = 31697;
+ private static final int GALBA = 32007;
+ private static final int SANTIAGO = 34138;
+ // Reward
+ private static final int SANTIAGOS_REEL_FRAGMENT = 47562;
+ // Misc
+ private static final int MIN_LEVEL = 85;
+ private static final int NIMBLE_FISH = 47551;
+ private static final int NIMBLE_FISH_NEEDED = 40;
+
+ public Q00938_TheFishermansOtherHobby()
+ {
+ super(938);
+ addStartNpc(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addTalkId(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addCondMinLevel(MIN_LEVEL, "noLevel.htm");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, false);
+ if (qs == null)
+ {
+ return null;
+ }
+ String htmltext = null;
+ switch (event)
+ {
+ case "Guild-02.htm":
+ case "Guild-03.htm":
+ {
+ htmltext = event;
+ break;
+ }
+ case "Guild-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "Guild-07.html":
+ {
+ if (qs.isCond(2))
+ {
+ takeItems(player, NIMBLE_FISH, NIMBLE_FISH_NEEDED);
+ giveItems(player, SANTIAGOS_REEL_FRAGMENT, 2);
+ addFactionPoints(player, Faction.FISHING_GUILD, 100);
+ qs.exitQuest(QuestType.REPEATABLE, true);
+ htmltext = event;
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ htmltext = "Guild-01.htm";
+ break;
+ }
+ case State.STARTED:
+ {
+ if (qs.isCond(1))
+ {
+ htmltext = "Guild-05.html";
+ }
+ else if (qs.isCond(2))
+ {
+ htmltext = "Guild-06.html";
+ }
+ break;
+ }
+ case State.COMPLETED:
+ {
+ htmltext = getAlreadyCompletedMsg(player);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @RegisterEvent(EventType.ON_PLAYER_FISHING)
+ @RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
+ public void onPlayerFishing(OnPlayerFishing event)
+ {
+ if (event.getReason() == FishingEndReason.WIN)
+ {
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
+ {
+ if (getQuestItemsCount(player, NIMBLE_FISH) >= NIMBLE_FISH_NEEDED)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
new file mode 100644
index 0000000000..60f4c4b593
--- /dev/null
+++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+Hmm, it would seem that it's a bit too early still to discuss the Fishing Guild with you. Please return after you've become stronger.
+(Only characters with Lv. 85 or above may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
index 33c7b9fcd8..d47e535813 100644
--- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
+++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
@@ -155,22 +155,25 @@ public class Q10575_LetsGoFishing extends Quest
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
public void onPlayerFishing(OnPlayerFishing event)
{
- final Player player = event.getPlayer();
- final QuestState qs = getQuestState(player, false);
- if ((qs != null) && qs.isCond(2) && (event.getReason() == FishingEndReason.WIN))
+ if (event.getReason() == FishingEndReason.WIN)
{
- int count = qs.getInt(COUNT_VAR);
- qs.set(COUNT_VAR, ++count);
- if (count >= 5)
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(2))
{
- qs.setCond(3, true);
+ int count = qs.getInt(COUNT_VAR);
+ qs.set(COUNT_VAR, ++count);
+ if (count >= 5)
+ {
+ qs.setCond(3, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+
+ sendNpcLogList(player);
}
- else
- {
- playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
- }
-
- sendNpcLogList(player);
}
}
diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/QuestMasterHandler.java
index 0e461df04d..84b88e12eb 100644
--- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/QuestMasterHandler.java
+++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/quests/QuestMasterHandler.java
@@ -28,6 +28,7 @@ import quests.Q00833_DevilsTreasureTauti.Q00833_DevilsTreasureTauti;
import quests.Q00835_PitiableMelisa.Q00835_PitiableMelisa;
import quests.Q00933_TombRaiders.Q00933_TombRaiders;
import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild;
+import quests.Q00938_TheFishermansOtherHobby.Q00938_TheFishermansOtherHobby;
import quests.Q10423_EmbryoStrongholdRaid.Q10423_EmbryoStrongholdRaid;
import quests.Q10454_FinalEmbryoApostle.Q10454_FinalEmbryoApostle;
import quests.Q10507_ObtainingNewPower.Q10507_ObtainingNewPower;
@@ -99,6 +100,7 @@ public class QuestMasterHandler
Q00840_RequestFromTheKingdomsRoyalGuard.class, // TODO: Not done.
Q00933_TombRaiders.class,
Q00937_ToReviveTheFishingGuild.class,
+ Q00938_TheFishermansOtherHobby.class,
Q01900_StormIsleSecretSpot.class, // TODO: Not done.
Q01901_StormIsleFurtiveDeal.class, // TODO: Not done.
Q10423_EmbryoStrongholdRaid.class,
diff --git a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/MissingQuests.txt b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/MissingQuests.txt
index 40de275aa1..1e480763a9 100644
--- a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/MissingQuests.txt
+++ b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/MissingQuests.txt
@@ -46,9 +46,7 @@
839 Request from the Unworldly Visitors
840 Request from the Kingdom's Royal Guard
861 Kain's Choice
-938 The Fisherman's Other Hobby
1900 Storm Isle - Secret Spot
1901 Storm Isle - Furtive Deal
-10507 Obtaining New Power
10595 The Dimensional Warp, Part 8
10596 The Dimensional Warp, Part 9
\ No newline at end of file
diff --git a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
index f1f12c9399..784084e18f 100644
--- a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
+++ b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java
@@ -160,21 +160,24 @@ public class Q00937_ToReviveTheFishingGuild extends Quest
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
public void onPlayerFishing(OnPlayerFishing event)
{
- final Player player = event.getPlayer();
- final QuestState qs = getQuestState(player, false);
- if ((qs != null) && qs.isCond(1) && (event.getReason() == FishingEndReason.WIN))
+ if (event.getReason() == FishingEndReason.WIN)
{
- int count = qs.getInt(COUNT_VAR);
- qs.set(COUNT_VAR, ++count);
- if (count >= 100)
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
{
- qs.setCond(2, true);
+ int count = qs.getInt(COUNT_VAR);
+ qs.set(COUNT_VAR, ++count);
+ if (count >= 100)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ sendNpcLogList(player);
}
- else
- {
- playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
- }
- sendNpcLogList(player);
}
}
diff --git a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
new file mode 100644
index 0000000000..75d4f7706f
--- /dev/null
+++ b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-01.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+As a Fishing Guild member, have you ever dreamed of doing something new, for example, finding a new hobby?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
new file mode 100644
index 0000000000..7728255573
--- /dev/null
+++ b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-02.htm
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+You know, we at the Fishing Guild always advise you to get some good fishing gear.
+It's even better when getting top-grade equipment turns into a hobby. Do you want to know why we give so much importance to gear?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
new file mode 100644
index 0000000000..8c5906f4b0
--- /dev/null
+++ b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-03.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+Equipment plays a big part in fishing. It's significance shouldn't be underestimated. Warriors preparing for the battle choose most enduring swords and shields to overcome the enemy for sure. We, fishermen, do the same. We choose a firmer fishing rod to get a rich take.
+A clever fisherman always tries to get good equipment. A Master Fishing Rod is the best choice!
+The Fishing Guild wants as many fishermen as possible to learn about this fishing rod and get it. Well, are you interested?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
new file mode 100644
index 0000000000..ef9051b385
--- /dev/null
+++ b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-04.htm
@@ -0,0 +1,6 @@
+Fishing Guild Member:
+So, I'll to tell you everything I know about Master Fishing Rod.
+First of all, to get one you must do something. Bring me 40 Nimble Fish.
+It doesn't matter how you get them. The point is that you bring me the exact number I'm asking for. It's the main ingredient.
+Bring me 40 Nimble Fish, and I will reward you with materials for your Master Fishing Rod.
+
\ No newline at end of file
diff --git a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
new file mode 100644
index 0000000000..8907811dfe
--- /dev/null
+++ b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-05.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+You must gather 40 Nimble Fish, but I don't see any of them. It doesn't matter how you get them. Just bring me 40 Nimble Fish.
+
\ No newline at end of file
diff --git a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
new file mode 100644
index 0000000000..44c7488636
--- /dev/null
+++ b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-06.html
@@ -0,0 +1,5 @@
+Fishing Guild Member:
+Have you fished enough? Did you catch anything?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
new file mode 100644
index 0000000000..172814aa69
--- /dev/null
+++ b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Guild-07.html
@@ -0,0 +1,3 @@
+Fishing Guild Member:
+Thank you. As a token of our appreciation, here is a small gift. I hope you find it useful.
+
\ No newline at end of file
diff --git a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
new file mode 100644
index 0000000000..fcaea628f2
--- /dev/null
+++ b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/Q00938_TheFishermansOtherHobby.java
@@ -0,0 +1,168 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package quests.Q00938_TheFishermansOtherHobby;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.FishingEndReason;
+import org.l2jmobius.gameserver.enums.QuestSound;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.Player;
+import org.l2jmobius.gameserver.model.events.EventType;
+import org.l2jmobius.gameserver.model.events.ListenerRegisterType;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterEvent;
+import org.l2jmobius.gameserver.model.events.annotations.RegisterType;
+import org.l2jmobius.gameserver.model.events.impl.creature.player.OnPlayerFishing;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * The Fisherman's Other Hobby (938)
+ * @author CostyKiller
+ */
+public class Q00938_TheFishermansOtherHobby extends Quest
+{
+ // NPCs
+ private static final int OFULLE = 31572;
+ private static final int LINNAEUS = 31577;
+ private static final int PERELIN = 31563;
+ private static final int BLEAKER = 31567;
+ private static final int CYANO = 31569;
+ private static final int PAMFUS = 31568;
+ private static final int LANOSCO = 31570;
+ private static final int HUFS = 31571;
+ private static final int MONAKAN = 31573;
+ private static final int BERIX = 31576;
+ private static final int LITULON = 31575;
+ private static final int WILLIE = 31574;
+ private static final int HILGENDORF = 31578;
+ private static final int PLATIS = 31696;
+ private static final int KLAUS = 31579;
+ private static final int BATIDAE = 31989;
+ private static final int EINDARKNER = 31697;
+ private static final int GALBA = 32007;
+ private static final int SANTIAGO = 34138;
+ // Reward
+ private static final int SANTIAGOS_REEL_FRAGMENT = 47562;
+ // Misc
+ private static final int MIN_LEVEL = 85;
+ private static final int NIMBLE_FISH = 47551;
+ private static final int NIMBLE_FISH_NEEDED = 40;
+
+ public Q00938_TheFishermansOtherHobby()
+ {
+ super(938);
+ addStartNpc(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addTalkId(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA, SANTIAGO);
+ addCondMinLevel(MIN_LEVEL, "noLevel.htm");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, false);
+ if (qs == null)
+ {
+ return null;
+ }
+ String htmltext = null;
+ switch (event)
+ {
+ case "Guild-02.htm":
+ case "Guild-03.htm":
+ {
+ htmltext = event;
+ break;
+ }
+ case "Guild-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "Guild-07.html":
+ {
+ if (qs.isCond(2))
+ {
+ takeItems(player, NIMBLE_FISH, NIMBLE_FISH_NEEDED);
+ giveItems(player, SANTIAGOS_REEL_FRAGMENT, 2);
+ addFactionPoints(player, Faction.FISHING_GUILD, 100);
+ qs.exitQuest(QuestType.REPEATABLE, true);
+ htmltext = event;
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, Player player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ htmltext = "Guild-01.htm";
+ break;
+ }
+ case State.STARTED:
+ {
+ if (qs.isCond(1))
+ {
+ htmltext = "Guild-05.html";
+ }
+ else if (qs.isCond(2))
+ {
+ htmltext = "Guild-06.html";
+ }
+ break;
+ }
+ case State.COMPLETED:
+ {
+ htmltext = getAlreadyCompletedMsg(player);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @RegisterEvent(EventType.ON_PLAYER_FISHING)
+ @RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
+ public void onPlayerFishing(OnPlayerFishing event)
+ {
+ if (event.getReason() == FishingEndReason.WIN)
+ {
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(1))
+ {
+ if (getQuestItemsCount(player, NIMBLE_FISH) >= NIMBLE_FISH_NEEDED)
+ {
+ qs.setCond(2, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
new file mode 100644
index 0000000000..60f4c4b593
--- /dev/null
+++ b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q00938_TheFishermansOtherHobby/noLevel.htm
@@ -0,0 +1,4 @@
+Fishing Guild Member:
+Hmm, it would seem that it's a bit too early still to discuss the Fishing Guild with you. Please return after you've become stronger.
+(Only characters with Lv. 85 or above may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
index 33c7b9fcd8..d47e535813 100644
--- a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
+++ b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java
@@ -155,22 +155,25 @@ public class Q10575_LetsGoFishing extends Quest
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
public void onPlayerFishing(OnPlayerFishing event)
{
- final Player player = event.getPlayer();
- final QuestState qs = getQuestState(player, false);
- if ((qs != null) && qs.isCond(2) && (event.getReason() == FishingEndReason.WIN))
+ if (event.getReason() == FishingEndReason.WIN)
{
- int count = qs.getInt(COUNT_VAR);
- qs.set(COUNT_VAR, ++count);
- if (count >= 5)
+ final Player player = event.getPlayer();
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && qs.isCond(2))
{
- qs.setCond(3, true);
+ int count = qs.getInt(COUNT_VAR);
+ qs.set(COUNT_VAR, ++count);
+ if (count >= 5)
+ {
+ qs.setCond(3, true);
+ }
+ else
+ {
+ playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+ }
+
+ sendNpcLogList(player);
}
- else
- {
- playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
- }
-
- sendNpcLogList(player);
}
}
diff --git a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/QuestMasterHandler.java
index 0e461df04d..84b88e12eb 100644
--- a/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/QuestMasterHandler.java
+++ b/L2J_Mobius_10.0_MasterClass/dist/game/data/scripts/quests/QuestMasterHandler.java
@@ -28,6 +28,7 @@ import quests.Q00833_DevilsTreasureTauti.Q00833_DevilsTreasureTauti;
import quests.Q00835_PitiableMelisa.Q00835_PitiableMelisa;
import quests.Q00933_TombRaiders.Q00933_TombRaiders;
import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild;
+import quests.Q00938_TheFishermansOtherHobby.Q00938_TheFishermansOtherHobby;
import quests.Q10423_EmbryoStrongholdRaid.Q10423_EmbryoStrongholdRaid;
import quests.Q10454_FinalEmbryoApostle.Q10454_FinalEmbryoApostle;
import quests.Q10507_ObtainingNewPower.Q10507_ObtainingNewPower;
@@ -99,6 +100,7 @@ public class QuestMasterHandler
Q00840_RequestFromTheKingdomsRoyalGuard.class, // TODO: Not done.
Q00933_TombRaiders.class,
Q00937_ToReviveTheFishingGuild.class,
+ Q00938_TheFishermansOtherHobby.class,
Q01900_StormIsleSecretSpot.class, // TODO: Not done.
Q01901_StormIsleFurtiveDeal.class, // TODO: Not done.
Q10423_EmbryoStrongholdRaid.class,