From 292818848eb4716efa5d4ed22d5f0ff2b8945c09 Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Thu, 18 Apr 2019 02:26:51 +0000 Subject: [PATCH] Addition of Santiago (34138) and two related quests. Contributed by NightBR and Werum. --- .../dist/game/data/Fishing.xml | 3 + .../dist/game/data/html/fisherman/34138-1.htm | 9 + .../dist/game/data/html/fisherman/34138-2.htm | 6 + .../dist/game/data/html/fisherman/34138-3.htm | 5 + .../game/data/html/fisherman/34138-pk.htm | 3 + .../dist/game/data/html/fisherman/34138.htm | 7 + .../data/scripts/quests/MissingQuests.txt | 2 - .../Q00937_ToReviveTheFishingGuild.java | 6 +- .../quests/Q10566_BestChoice/34362-01.htm | 4 + .../quests/Q10566_BestChoice/34362-02.htm | 4 + .../quests/Q10566_BestChoice/34362-03.htm | 5 + .../quests/Q10566_BestChoice/34362-04.htm | 4 + .../quests/Q10566_BestChoice/34362-05.html | 4 + .../quests/Q10566_BestChoice/34362-06.html | 4 + .../quests/Q10566_BestChoice/34362-07.html | 3 + .../quests/Q10566_BestChoice/34362-99.html | 4 + .../Q10566_BestChoice/Q10566_BestChoice.java | 123 ++++++++++++ .../quests/Q10566_BestChoice/noLevel.html | 4 + .../quests/Q10575_LetsGoFishing/34138-01.htm | 4 + .../quests/Q10575_LetsGoFishing/34138-02.htm | 6 + .../quests/Q10575_LetsGoFishing/34138-03.html | 6 + .../quests/Q10575_LetsGoFishing/34138-04.html | 6 + .../quests/Q10575_LetsGoFishing/34138-05.html | 6 + .../quests/Q10575_LetsGoFishing/34138-06.html | 5 + .../quests/Q10575_LetsGoFishing/34138-07.html | 4 + .../quests/Q10575_LetsGoFishing/34138-99.html | 4 + .../Q10575_LetsGoFishing.java | 190 ++++++++++++++++++ .../quests/Q10575_LetsGoFishing/noLevel.html | 4 + .../scripts/quests/QuestMasterHandler.java | 6 +- .../quests/not_done/Q10566_BestChoice.java | 36 ---- .../quests/not_done/Q10575_LetsGoFishing.java | 36 ---- .../dist/game/data/spawns/Innadril/Heine.xml | 1 + .../dist/game/data/stats/npcs/34100-34199.xml | 2 +- .../dist/game/data/Fishing.xml | 3 + .../dist/game/data/html/fisherman/34138-1.htm | 9 + .../dist/game/data/html/fisherman/34138-2.htm | 6 + .../dist/game/data/html/fisherman/34138-3.htm | 5 + .../game/data/html/fisherman/34138-pk.htm | 3 + .../dist/game/data/html/fisherman/34138.htm | 7 + .../data/scripts/quests/MissingQuests.txt | 2 - .../Q00937_ToReviveTheFishingGuild.java | 6 +- .../quests/Q10566_BestChoice/34362-01.htm | 4 + .../quests/Q10566_BestChoice/34362-02.htm | 4 + .../quests/Q10566_BestChoice/34362-03.htm | 5 + .../quests/Q10566_BestChoice/34362-04.htm | 4 + .../quests/Q10566_BestChoice/34362-05.html | 4 + .../quests/Q10566_BestChoice/34362-06.html | 4 + .../quests/Q10566_BestChoice/34362-07.html | 3 + .../quests/Q10566_BestChoice/34362-99.html | 4 + .../Q10566_BestChoice/Q10566_BestChoice.java | 123 ++++++++++++ .../quests/Q10566_BestChoice/noLevel.html | 4 + .../quests/Q10575_LetsGoFishing/34138-01.htm | 4 + .../quests/Q10575_LetsGoFishing/34138-02.htm | 6 + .../quests/Q10575_LetsGoFishing/34138-03.html | 6 + .../quests/Q10575_LetsGoFishing/34138-04.html | 6 + .../quests/Q10575_LetsGoFishing/34138-05.html | 6 + .../quests/Q10575_LetsGoFishing/34138-06.html | 5 + .../quests/Q10575_LetsGoFishing/34138-07.html | 4 + .../quests/Q10575_LetsGoFishing/34138-99.html | 4 + .../Q10575_LetsGoFishing.java | 190 ++++++++++++++++++ .../quests/Q10575_LetsGoFishing/noLevel.html | 4 + .../scripts/quests/QuestMasterHandler.java | 6 +- .../quests/not_done/Q10566_BestChoice.java | 36 ---- .../quests/not_done/Q10575_LetsGoFishing.java | 36 ---- .../dist/game/data/spawns/Innadril/Heine.xml | 1 + .../dist/game/data/stats/npcs/34100-34199.xml | 2 +- .../dist/game/data/Fishing.xml | 3 + .../dist/game/data/html/fisherman/34138-1.htm | 9 + .../dist/game/data/html/fisherman/34138-2.htm | 6 + .../dist/game/data/html/fisherman/34138-3.htm | 5 + .../game/data/html/fisherman/34138-pk.htm | 3 + .../dist/game/data/html/fisherman/34138.htm | 7 + .../data/scripts/quests/MissingQuests.txt | 2 - .../Q00937_ToReviveTheFishingGuild.java | 6 +- .../quests/Q10566_BestChoice/34362-01.htm | 4 + .../quests/Q10566_BestChoice/34362-02.htm | 4 + .../quests/Q10566_BestChoice/34362-03.htm | 5 + .../quests/Q10566_BestChoice/34362-04.htm | 4 + .../quests/Q10566_BestChoice/34362-05.html | 4 + .../quests/Q10566_BestChoice/34362-06.html | 4 + .../quests/Q10566_BestChoice/34362-07.html | 3 + .../quests/Q10566_BestChoice/34362-99.html | 4 + .../Q10566_BestChoice/Q10566_BestChoice.java | 123 ++++++++++++ .../quests/Q10566_BestChoice/noLevel.html | 4 + .../quests/Q10575_LetsGoFishing/34138-01.htm | 4 + .../quests/Q10575_LetsGoFishing/34138-02.htm | 6 + .../quests/Q10575_LetsGoFishing/34138-03.html | 6 + .../quests/Q10575_LetsGoFishing/34138-04.html | 6 + .../quests/Q10575_LetsGoFishing/34138-05.html | 6 + .../quests/Q10575_LetsGoFishing/34138-06.html | 5 + .../quests/Q10575_LetsGoFishing/34138-07.html | 4 + .../quests/Q10575_LetsGoFishing/34138-99.html | 4 + .../Q10575_LetsGoFishing.java | 190 ++++++++++++++++++ .../quests/Q10575_LetsGoFishing/noLevel.html | 4 + .../scripts/quests/QuestMasterHandler.java | 6 +- .../quests/not_done/Q10566_BestChoice.java | 36 ---- .../quests/not_done/Q10575_LetsGoFishing.java | 36 ---- .../dist/game/data/spawns/Innadril/Heine.xml | 1 + .../dist/game/data/stats/npcs/34100-34199.xml | 2 +- 99 files changed, 1311 insertions(+), 237 deletions(-) create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-1.htm create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-2.htm create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-3.htm create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-pk.htm create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138.htm create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-01.htm create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-02.htm create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-03.htm create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-04.htm create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-05.html create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-06.html create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-07.html create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-99.html create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/Q10566_BestChoice.java create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/noLevel.html create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-01.htm create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-02.htm create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-03.html create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-04.html create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-05.html create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-06.html create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-07.html create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-99.html create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java create mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/noLevel.html delete mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/not_done/Q10566_BestChoice.java delete mode 100644 L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/not_done/Q10575_LetsGoFishing.java create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-1.htm create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-2.htm create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-3.htm create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-pk.htm create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138.htm create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-01.htm create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-02.htm create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-03.htm create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-04.htm create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-05.html create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-06.html create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-07.html create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-99.html create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/Q10566_BestChoice.java create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/noLevel.html create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-01.htm create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-02.htm create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-03.html create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-04.html create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-05.html create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-06.html create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-07.html create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-99.html create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java create mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/noLevel.html delete mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/not_done/Q10566_BestChoice.java delete mode 100644 L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/not_done/Q10575_LetsGoFishing.java create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-1.htm create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-2.htm create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-3.htm create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-pk.htm create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138.htm create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-01.htm create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-02.htm create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-03.htm create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-04.htm create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-05.html create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-06.html create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-07.html create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-99.html create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/Q10566_BestChoice.java create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/noLevel.html create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-01.htm create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-02.htm create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-03.html create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-04.html create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-05.html create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-06.html create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-07.html create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-99.html create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java create mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/noLevel.html delete mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/not_done/Q10566_BestChoice.java delete mode 100644 L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/not_done/Q10575_LetsGoFishing.java diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/Fishing.xml b/L2J_Mobius_5.0_Salvation/dist/game/data/Fishing.xml index 0152888ab6..010f98b80b 100644 --- a/L2J_Mobius_5.0_Salvation/dist/game/data/Fishing.xml +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/Fishing.xml @@ -4,6 +4,9 @@ + + + diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-1.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-1.htm new file mode 100644 index 0000000000..1d3b7c99d2 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-1.htm @@ -0,0 +1,9 @@ +Fishing Guild Leader Santiago:
+Asking around about the Anglers Fishing Rod, you're quite the fishing nut now, you are.
+It's only fair that with all the hard work you're doing for the sake of the Fishing Guild, you end up with a better fishing rod, isn't it?
+So, if you have a Sturdy Fishing Rod to start with, and you build up enough skill to satisfy our standards at the Fishing Guild, we'll modify your fishing rod using our special techniques to make it better. We can also make simple improvements so that the performance increases without making big changes.
+Of course, you're still not quite there yet in terms of skill. Please retum after building some more skill. Hmm.. let's say Faction level 2. That should do it.
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-2.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-2.htm new file mode 100644 index 0000000000..81935caa21 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-2.htm @@ -0,0 +1,6 @@ +Fishing Guild Leader Santiago:
+If you want an Master Fishing Rod made, what's most important is to have a Sturdy Fishing Rod. See, a fishing rod needs to be as sturdy as possible in order to withstand the modifications we're going to make to it.
+When you find a Sturdy Fishing Rod, along with Santiago's Reel Fragment and the additional fees necessary, come and find me. I'll make sure your fishing rod tums out exceptionally well.
+Like I told you before, you can also improve the performance of your rod, so investigate thoroughly. To improve your fishing rod's performance, you will need your Master Fishing Rod, Sturdy Fishing Rod, Santiago's Reel Fragment, and some other things.
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-3.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-3.htm new file mode 100644 index 0000000000..767cacacf7 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-3.htm @@ -0,0 +1,5 @@ +Fishing Guild Leader Santiago:
+So what does the Master Fishing Rod benefit you?
+Of course you're curious. With the Master Fishing Rod, you can catch fish faster and more conveniently. A Sturdy Fishing Rod means that you expend less energy trying to catch your fish, you see.
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-pk.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-pk.htm new file mode 100644 index 0000000000..ae9a0ab9d0 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138-pk.htm @@ -0,0 +1,3 @@ +Fishing Guild Leader Santiago:
+Sorry, but I'm forbidden by my guild from doing business with criminals like you! + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138.htm new file mode 100644 index 0000000000..62909b112e --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/html/fisherman/34138.htm @@ -0,0 +1,7 @@ +Fishing Guild Leader Santiago:
+Hey there isnt a great day to fish,rain or shine.the weater just changes the experience.
+Come to think of it, I haven't even introduced myself to you. I'm Santiago, and i've become the new leader of the Fishing Guild.Before I took this job,through, i was a Professional Fisher who used to venture out onto the High seas where I fought with the Largest of fish.
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/MissingQuests.txt b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/MissingQuests.txt index c7def342c4..a1f274547f 100644 --- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/MissingQuests.txt +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/MissingQuests.txt @@ -177,7 +177,6 @@ 10563 Control of Power 10564 Prove Progress 10565 Nothing Is Impossible -10566 Best Choice 10567 Special Mission: Nornil's Garden 10568 Kamael's Technological Advancement 10569 Declaration of War @@ -185,7 +184,6 @@ 10571 Strategic Reconciliation 10572 To Expel the Embryo's Forces 10574 Special Mission: Fortuna -10575 Let's Go Fishing 10576 Glittering Weapons 10577 Temper a Rusting Blade 10578 The Soul of a Sword diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java index e343fe609c..ef13558176 100644 --- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java @@ -62,6 +62,7 @@ public class Q00937_ToReviveTheFishingGuild extends Quest 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 BASIC_SUPPLY_BOX = 47571; private static final int INTERMEDIATE_SUPPLY_BOX = 47572; @@ -72,8 +73,8 @@ public class Q00937_ToReviveTheFishingGuild extends Quest public Q00937_ToReviveTheFishingGuild() { super(937); - addStartNpc(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA); - addTalkId(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA); + 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"); } @@ -174,6 +175,7 @@ public class Q00937_ToReviveTheFishingGuild extends Quest { playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); } + sendNpcLogList(player); } } diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-01.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-01.htm new file mode 100644 index 0000000000..9c5a8d2da3 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-01.htm @@ -0,0 +1,4 @@ +Herphah:
+Do you think continuous fighting is the only way of becoming strong?That's a serious mistake.There are many other ways to become stronger.
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-02.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-02.htm new file mode 100644 index 0000000000..8560258f01 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-02.htm @@ -0,0 +1,4 @@ +Herphah:
+Weapon enhancement and fishing are goot examples.They can strenghten you indirectly.You should make use of every possible means to become stronger.
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-03.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-03.htm new file mode 100644 index 0000000000..82cebbe4e0 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-03.htm @@ -0,0 +1,5 @@ +Herphah:
+So,I�´m going to give you a chance to experience all of them.What do you think?Are you moved by my Generosity?.
+Say yes,Otherwise,I won�´t help you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-04.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-04.htm new file mode 100644 index 0000000000..0c50cea851 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-04.htm @@ -0,0 +1,4 @@ +Herphah:
+Alright.Complete the missions these people give you and bring back their certificates.Complete the fishing mission from Fishing GuildMaster Santiago in Heine,the enchanting mission from Blacksmith Rupio in the town of Giran, the augmenting mission from Head Blacksmith Flutter in the Town of Oren, the Soul Crystal mission from Blacksmith Vincenz in the Town of Rune, and the attribute mission from Head Blacksmith Ferris in the Town of Aden.
+If you are confused about who to go to find,look at the list from the mission I gave You. That's it.
+ \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-05.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-05.html new file mode 100644 index 0000000000..de8e5910da --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-05.html @@ -0,0 +1,4 @@ +Herphah:
+I'll tell you again. Complete the missions these people give you and bring back their certificates. Complete the fishing mission from Fishing GuildMaster Santiago in Heine, the enchanting mission from Blacksmith Rupio in the town of Giran, the augmenting mission from Head Blacksmith Flutter in the Town of Oren, the Soul Crystal mission from Blacksmith Vincenz in the Town of Rune, and the attribute mission from Head Blacksmith Ferris in the Town of Aden.
+If you are confused about who to go to find,look at the list from the mission I gave You. That's it.
+ \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-06.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-06.html new file mode 100644 index 0000000000..8936e95557 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-06.html @@ -0,0 +1,4 @@ +Herphah:
+Five certificates... you completed all the missions.
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-07.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-07.html new file mode 100644 index 0000000000..7120a31924 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-07.html @@ -0,0 +1,3 @@ +Herphah:
+Good job! Time to try other methods I taught you.You shouldn't get lazy to become strong.
+ \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-99.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-99.html new file mode 100644 index 0000000000..adfb9daa3b --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/34362-99.html @@ -0,0 +1,4 @@ +Fishing Guild Leader Santiago:
+Hey, let nature take its course. It's not good for us to go against it.
+(Only Premium characters who have the quest "Best Choice" in progress, can play this quest.)
+ \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/Q10566_BestChoice.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/Q10566_BestChoice.java new file mode 100644 index 0000000000..22d89850d9 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/Q10566_BestChoice.java @@ -0,0 +1,123 @@ +/* + * 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.Q10566_BestChoice; + +import org.l2jmobius.gameserver.enums.QuestType; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; +import org.l2jmobius.gameserver.model.quest.Quest; +import org.l2jmobius.gameserver.model.quest.QuestState; +import org.l2jmobius.gameserver.model.quest.State; + +/** + * Best Choice (10566) + * @URL https://l2wiki.com/Best_Choice + * @author Werum / Standardization by NightBR + */ +public class Q10566_BestChoice extends Quest +{ + // NPC + private static final int HERPHAH = 34362; + // Misc + private static final int MIN_LEVEL = 95; + // Items + private static final int CERTIFICATE_SANTIAGO = 48173; + private static final int CERTIFICATE_RUPIO = 48174; + private static final int CERTIFICATE_FLUTTER = 48175; + private static final int CERTIFICATE_VINCENZ = 48176; + private static final int CERTIFICATE_FERRIS = 48177; + private static final int HERPHAHS_SUPPORT_BOX = 48250; + private static final int HERPHAHS_MISSION_LIST = 48172; + + public Q10566_BestChoice() + { + super(10566); + addStartNpc(HERPHAH); + addTalkId(HERPHAH); + addCondMinLevel(MIN_LEVEL, "noLevel.html"); + registerQuestItems(CERTIFICATE_SANTIAGO, CERTIFICATE_RUPIO, CERTIFICATE_FLUTTER, CERTIFICATE_VINCENZ, CERTIFICATE_FERRIS, HERPHAHS_MISSION_LIST); + } + + @Override + public String onAdvEvent(String event, Npc npc, PlayerInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return getNoQuestMsg(player); + } + String htmltext = null; + switch (event) + { + case "34362-02.htm": + case "34362-03.htm": + { + htmltext = event; + break; + } + case "34362-04.htm": + { + qs.startQuest(); + giveItems(player, HERPHAHS_MISSION_LIST, 1); + break; + } + case "34362-07.html": + { + giveItems(player, HERPHAHS_SUPPORT_BOX, 1); + qs.exitQuest(QuestType.ONE_TIME, true); + break; + } + } + return htmltext; + } + + @Override + public String onTalk(Npc npc, PlayerInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + + switch (qs.getState()) + { + case State.CREATED: + { + htmltext = (player.hasPremiumStatus()) ? "34362-01.htm" : "34362-99.html"; + break; + } + case State.STARTED: + { + if (qs.isCond(1)) + { + boolean hasItems = hasQuestItems(player, CERTIFICATE_SANTIAGO, CERTIFICATE_RUPIO, CERTIFICATE_FLUTTER, CERTIFICATE_VINCENZ, CERTIFICATE_FERRIS); + // Chck if player has the necessary quest items to complete the quest + if (hasItems) + { + qs.setCond(2, true); + } + htmltext = (hasItems) ? "34362-06.html" : "34362-05.html"; + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/noLevel.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/noLevel.html new file mode 100644 index 0000000000..089e4f3aa4 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10566_BestChoice/noLevel.html @@ -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. 95 or above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-01.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-01.htm new file mode 100644 index 0000000000..ccd19c97dc --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-01.htm @@ -0,0 +1,4 @@ +Fishing Guild Leader Santiago:
+Could it be that you'd like to learn how to fish, but don't know where to start or don't have the necessary equipment? Oh, you've come to just the place. I have a great opportunity for you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-02.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-02.htm new file mode 100644 index 0000000000..5738b1e29d --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-02.htm @@ -0,0 +1,6 @@ +Fishing Guild Leader Santiago:
+Since you agreed, I'll take it that you accepted the experience. I'll explain in simple terms, you always need to learn the theory first.
+In order to fish, you need to find a fishing dock. Once you arrive at the right spot, you'll see the button on the right side of your screen that alerts you that you can fish. If you see that button, it means you've found a right spot.
+Fishing docks are at the Iris Lake, Narsell Lake, Giran Harbor. near the Plains of the Lizardmen, the banks near the Town of Gludio, the Neutral Zone, Heine, Fellmere Lake, and the bridge near the Town of Giran. Understand so far?
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-03.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-03.html new file mode 100644 index 0000000000..db831cebc9 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-03.html @@ -0,0 +1,6 @@ +Fishing Guild Leader Santiago:
+Then you'll need to prepare your fishing tools. You'll need Fishing Rod and Bait. You can only fish if you have them.
+You can receive the Normal Bait from me, but if you want to catch more expensive fish, I recommend you use the Special Bait. I have never seen Special Bait, but I heard that you can get it from the boxes you get from fishing.
+You can buy fishing rods from Fishing Guild Members, but I'll give you one for practice. If you already have a fishing rod, you can use that one. already have a fishing rod, you can use that one. Sounds easy, right?
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-04.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-04.html new file mode 100644 index 0000000000..4de09332fb --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-04.html @@ -0,0 +1,6 @@ +Fishing Guild Leader Santiago:
+One more thing! I must tell you about Fishing Shots. It's like applying Soulshots to Fishing. When you fish, use this item to increase the chances of catching fish. You can buy them from Fishing Guild Members and register it in the shortcuts to use them automatically.
+I won't give you any right now since you are practicing, but if you want to get them yourself... go ahead.
+That should be everything I need to explain. Let's get practicing now! + + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-05.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-05.html new file mode 100644 index 0000000000..ae14b3e809 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-05.html @@ -0,0 +1,6 @@ +Fishing Guild Leader Santiago:
+Well.. practice is... practice, what else? You'll be having a go at fishing. Find a fishing dock, and use the fishing tools to catch a fish.
+Well, I'll give you the things you need. Your goal is to catch 5 Practice Fish. If you succeed, you won't be a complete newbie anymore.
+Oh, remember that practice fish can only be caught using the practice bait I'll be giving you. It isn't worth much, but you'll catch them faster than normal fish, and that makes them perfect for practice!
+Good luck to you, then! + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-06.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-06.html new file mode 100644 index 0000000000..5ce05fe826 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-06.html @@ -0,0 +1,5 @@ +Fishing Guild Leader Santiago:
+Ah, you've caught all the practice fish you need.
+So? It's not that hard to fish, right? And it's fun!
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-07.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-07.html new file mode 100644 index 0000000000..b346f01a4b --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-07.html @@ -0,0 +1,4 @@ +Fishing Guild Leader Santiago:
+Yes, great.
+I'll give you a box with fishing supplies as a reward. How about making it into your new hobby? Hahaha!
+ \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-99.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-99.html new file mode 100644 index 0000000000..3d7c38ff25 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-99.html @@ -0,0 +1,4 @@ +Fishing Guild Leader Santiago:
+Hey, let nature take its course. It's not good for us to go against it.
+(Only Premium characters who have the quest "Best Choice" in progress, can play this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java new file mode 100644 index 0000000000..569048c491 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java @@ -0,0 +1,190 @@ +/* + * 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.Q10575_LetsGoFishing; + +import java.util.HashSet; +import java.util.Set; + +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.instance.PlayerInstance; +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.holders.NpcLogListHolder; +import org.l2jmobius.gameserver.model.quest.Quest; +import org.l2jmobius.gameserver.model.quest.QuestState; +import org.l2jmobius.gameserver.model.quest.State; +import org.l2jmobius.gameserver.network.NpcStringId; +import org.l2jmobius.gameserver.network.serverpackets.ExTutorialShowId; +import org.l2jmobius.gameserver.network.serverpackets.fishing.ExFishingEnd.FishingEndReason; + +import quests.Q10566_BestChoice.Q10566_BestChoice; + +/** + * Let's Go Fishing (10575) + * @URL https://l2wiki.com/Let%27s_Go_Fishing + * @author NightBR / htmls: by Werum + */ +public class Q10575_LetsGoFishing extends Quest +{ + // NPCs + private static final int SANTIAGO = 34138; + // Items + private static final int PRACTICE_BAIT = 46737; + private static final int PRACTICE_FISH = 46736; + private static final int PRACTICE_FISHING_ROD = 46738; + // Rewards + private static final int XP = 597699960; + private static final int SP = 597690; + private static final int CERTIFICATE_FROM_SANTIAGO = 48173; + private static final int FISHING_SHOT = 38154; + private static final int REWARD_FISHING_ROD_PACK = 46739; + private static final int BAIT = 48537; + // Misc + private static final int MIN_LEVEL = 95; + private static final String COUNT_VAR = "FishWinCount"; + private static final int NPCSTRING_ID = NpcStringId.CATCH_PRACTICE_FISH.getId(); + + public Q10575_LetsGoFishing() + { + super(10575); + addStartNpc(SANTIAGO); + addTalkId(SANTIAGO); + registerQuestItems(PRACTICE_BAIT, PRACTICE_FISH, PRACTICE_FISHING_ROD); + addCondMinLevel(MIN_LEVEL, "noLevel.htm"); + addCondStartedQuest(Q10566_BestChoice.class.getSimpleName(), "34138-99.html"); + } + + @Override + public String onAdvEvent(String event, Npc npc, PlayerInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + String htmltext = null; + switch (event) + { + case "34138-03.html": + case "34138-04.html": + { + htmltext = event; + break; + } + case "34138-02.htm": + { + qs.startQuest(); + htmltext = event; + break; + } + case "34138-05.html": + { + // show Service/Help/Fishing page + player.sendPacket(new ExTutorialShowId(111)); + qs.setCond(2, true); + giveItems(player, PRACTICE_BAIT, 50); + giveItems(player, PRACTICE_FISHING_ROD, 1); + htmltext = event; + break; + } + case "34138-07.html": + { + if (qs.isCond(3)) + { + addExpAndSp(player, XP, SP); + giveItems(player, CERTIFICATE_FROM_SANTIAGO, 1); + giveItems(player, FISHING_SHOT, 60); + giveItems(player, REWARD_FISHING_ROD_PACK, 1); + giveItems(player, BAIT, 60); + qs.exitQuest(QuestType.ONE_TIME, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onTalk(Npc npc, PlayerInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + + switch (qs.getState()) + { + case State.CREATED: + { + htmltext = (player.hasPremiumStatus()) ? "34138-01.htm" : "34138-99.html"; + break; + } + case State.STARTED: + { + htmltext = (qs.getCond() <= 2) ? "34138-05.html" : "34138-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) + { + final PlayerInstance player = event.getPlayer(); + final QuestState qs = getQuestState(player, false); + if ((qs != null) && qs.isCond(2) && (event.getReason() == FishingEndReason.WIN)) + { + 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); + } + } + + @Override + public Set getNpcLogList(PlayerInstance player) + { + final QuestState qs = getQuestState(player, false); + if ((qs != null) && qs.isCond(2)) + { + final Set holder = new HashSet<>(); + holder.add(new NpcLogListHolder(NPCSTRING_ID, true, qs.getInt(COUNT_VAR))); + return holder; + } + return super.getNpcLogList(player); + } +} diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/noLevel.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/noLevel.html new file mode 100644 index 0000000000..089e4f3aa4 --- /dev/null +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q10575_LetsGoFishing/noLevel.html @@ -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. 95 or above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/QuestMasterHandler.java index 156e1b0e7d..4f04ea3e79 100644 --- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/QuestMasterHandler.java +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/QuestMasterHandler.java @@ -354,6 +354,8 @@ import quests.Q10544_SeekerSupplies.Q10544_SeekerSupplies; import quests.Q10560_WayOfWanderingKnight.Q10560_WayOfWanderingKnight; import quests.Q10561_AcrossTheDeathLine.Q10561_AcrossTheDeathLine; import quests.Q10562_TakeUpArms.Q10562_TakeUpArms; +import quests.Q10566_BestChoice.Q10566_BestChoice; +import quests.Q10575_LetsGoFishing.Q10575_LetsGoFishing; import quests.Q10658_MakkumInTheDimension.Q10658_MakkumInTheDimension; import quests.Q10701_TheRoadToDestruction.Q10701_TheRoadToDestruction; import quests.Q10702_TheRoadToInfinity.Q10702_TheRoadToInfinity; @@ -900,7 +902,7 @@ public class QuestMasterHandler Q10563_ControlOfPower.class, // TODO: Not done. Q10564_ProveProgress.class, // TODO: Not done. Q10565_NothingIsImpossible.class, // TODO: Not done. - Q10566_BestChoice.class, // TODO: Not done. + Q10566_BestChoice.class, Q10567_SpecialMissionNornilsGarden.class, // TODO: Not done. Q10568_KamaelsTechnologicalAdvancement.class, // TODO: Not done. Q10569_DeclarationOfWar.class, // TODO: Not done. @@ -908,7 +910,7 @@ public class QuestMasterHandler Q10571_StrategicReconciliation.class, // TODO: Not done. Q10572_ToExpelTheEmbryosForces.class, // TODO: Not done. Q10574_SpecialMissionFortuna.class, // TODO: Not done. - Q10575_LetsGoFishing.class, // TODO: Not done. + Q10575_LetsGoFishing.class, Q10576_GlitteringWeapons.class, // TODO: Not done. Q10577_TemperARustingBlade.class, // TODO: Not done. Q10578_TheSoulOfASword.class, // TODO: Not done. diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/not_done/Q10566_BestChoice.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/not_done/Q10566_BestChoice.java deleted file mode 100644 index ec0f499385..0000000000 --- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/not_done/Q10566_BestChoice.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 Q10566_BestChoice extends Quest -{ - private static final int START_NPC = 34362; - - public Q10566_BestChoice() - { - super(10566); - addStartNpc(START_NPC); - addTalkId(START_NPC); - addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null)); - } -} diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/not_done/Q10575_LetsGoFishing.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/not_done/Q10575_LetsGoFishing.java deleted file mode 100644 index 781393fa5f..0000000000 --- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/not_done/Q10575_LetsGoFishing.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 Q10575_LetsGoFishing extends Quest -{ - private static final int START_NPC = 34138; - - public Q10575_LetsGoFishing() - { - super(10575); - addStartNpc(START_NPC); - addTalkId(START_NPC); - addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null)); - } -} diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/spawns/Innadril/Heine.xml b/L2J_Mobius_5.0_Salvation/dist/game/data/spawns/Innadril/Heine.xml index 8a89d9a86e..cb04bd1f6c 100644 --- a/L2J_Mobius_5.0_Salvation/dist/game/data/spawns/Innadril/Heine.xml +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/spawns/Innadril/Heine.xml @@ -76,6 +76,7 @@ + diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/stats/npcs/34100-34199.xml b/L2J_Mobius_5.0_Salvation/dist/game/data/stats/npcs/34100-34199.xml index 0ac054ebc2..418581e6e2 100644 --- a/L2J_Mobius_5.0_Salvation/dist/game/data/stats/npcs/34100-34199.xml +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/stats/npcs/34100-34199.xml @@ -744,7 +744,7 @@ - + HUMAN FEMALE diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/Fishing.xml b/L2J_Mobius_5.5_EtinasFate/dist/game/data/Fishing.xml index 0152888ab6..010f98b80b 100644 --- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/Fishing.xml +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/Fishing.xml @@ -4,6 +4,9 @@ + + + diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-1.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-1.htm new file mode 100644 index 0000000000..1d3b7c99d2 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-1.htm @@ -0,0 +1,9 @@ +Fishing Guild Leader Santiago:
+Asking around about the Anglers Fishing Rod, you're quite the fishing nut now, you are.
+It's only fair that with all the hard work you're doing for the sake of the Fishing Guild, you end up with a better fishing rod, isn't it?
+So, if you have a Sturdy Fishing Rod to start with, and you build up enough skill to satisfy our standards at the Fishing Guild, we'll modify your fishing rod using our special techniques to make it better. We can also make simple improvements so that the performance increases without making big changes.
+Of course, you're still not quite there yet in terms of skill. Please retum after building some more skill. Hmm.. let's say Faction level 2. That should do it.
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-2.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-2.htm new file mode 100644 index 0000000000..81935caa21 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-2.htm @@ -0,0 +1,6 @@ +Fishing Guild Leader Santiago:
+If you want an Master Fishing Rod made, what's most important is to have a Sturdy Fishing Rod. See, a fishing rod needs to be as sturdy as possible in order to withstand the modifications we're going to make to it.
+When you find a Sturdy Fishing Rod, along with Santiago's Reel Fragment and the additional fees necessary, come and find me. I'll make sure your fishing rod tums out exceptionally well.
+Like I told you before, you can also improve the performance of your rod, so investigate thoroughly. To improve your fishing rod's performance, you will need your Master Fishing Rod, Sturdy Fishing Rod, Santiago's Reel Fragment, and some other things.
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-3.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-3.htm new file mode 100644 index 0000000000..767cacacf7 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-3.htm @@ -0,0 +1,5 @@ +Fishing Guild Leader Santiago:
+So what does the Master Fishing Rod benefit you?
+Of course you're curious. With the Master Fishing Rod, you can catch fish faster and more conveniently. A Sturdy Fishing Rod means that you expend less energy trying to catch your fish, you see.
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-pk.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-pk.htm new file mode 100644 index 0000000000..ae9a0ab9d0 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138-pk.htm @@ -0,0 +1,3 @@ +Fishing Guild Leader Santiago:
+Sorry, but I'm forbidden by my guild from doing business with criminals like you! + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138.htm new file mode 100644 index 0000000000..62909b112e --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/html/fisherman/34138.htm @@ -0,0 +1,7 @@ +Fishing Guild Leader Santiago:
+Hey there isnt a great day to fish,rain or shine.the weater just changes the experience.
+Come to think of it, I haven't even introduced myself to you. I'm Santiago, and i've become the new leader of the Fishing Guild.Before I took this job,through, i was a Professional Fisher who used to venture out onto the High seas where I fought with the Largest of fish.
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/MissingQuests.txt b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/MissingQuests.txt index de30221a0f..f6b734cd0a 100644 --- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/MissingQuests.txt +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/MissingQuests.txt @@ -191,7 +191,6 @@ 10563 Control of Power 10564 Prove Progress 10565 Nothing Is Impossible -10566 Best Choice 10567 Special Mission: Nornil's Garden 10568 Kamael's Technological Advancement 10569 Declaration of War @@ -199,7 +198,6 @@ 10571 Strategic Reconciliation 10572 To Expel the Embryo's Forces 10574 Special Mission: Fortuna -10575 Let's Go Fishing 10576 Glittering Weapons 10577 Temper a Rusting Blade 10578 The Soul of a Sword diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java index e343fe609c..ef13558176 100644 --- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java @@ -62,6 +62,7 @@ public class Q00937_ToReviveTheFishingGuild extends Quest 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 BASIC_SUPPLY_BOX = 47571; private static final int INTERMEDIATE_SUPPLY_BOX = 47572; @@ -72,8 +73,8 @@ public class Q00937_ToReviveTheFishingGuild extends Quest public Q00937_ToReviveTheFishingGuild() { super(937); - addStartNpc(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA); - addTalkId(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA); + 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"); } @@ -174,6 +175,7 @@ public class Q00937_ToReviveTheFishingGuild extends Quest { playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); } + sendNpcLogList(player); } } diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-01.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-01.htm new file mode 100644 index 0000000000..9c5a8d2da3 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-01.htm @@ -0,0 +1,4 @@ +Herphah:
+Do you think continuous fighting is the only way of becoming strong?That's a serious mistake.There are many other ways to become stronger.
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-02.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-02.htm new file mode 100644 index 0000000000..8560258f01 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-02.htm @@ -0,0 +1,4 @@ +Herphah:
+Weapon enhancement and fishing are goot examples.They can strenghten you indirectly.You should make use of every possible means to become stronger.
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-03.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-03.htm new file mode 100644 index 0000000000..966fbca9de --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-03.htm @@ -0,0 +1,5 @@ +Herphah:
+So,I´m going to give you a chance to experience all of them.What do you think?Are you moved by my Generosity?.
+Say yes,Otherwise,I won´t help you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-04.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-04.htm new file mode 100644 index 0000000000..0c50cea851 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-04.htm @@ -0,0 +1,4 @@ +Herphah:
+Alright.Complete the missions these people give you and bring back their certificates.Complete the fishing mission from Fishing GuildMaster Santiago in Heine,the enchanting mission from Blacksmith Rupio in the town of Giran, the augmenting mission from Head Blacksmith Flutter in the Town of Oren, the Soul Crystal mission from Blacksmith Vincenz in the Town of Rune, and the attribute mission from Head Blacksmith Ferris in the Town of Aden.
+If you are confused about who to go to find,look at the list from the mission I gave You. That's it.
+ \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-05.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-05.html new file mode 100644 index 0000000000..de8e5910da --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-05.html @@ -0,0 +1,4 @@ +Herphah:
+I'll tell you again. Complete the missions these people give you and bring back their certificates. Complete the fishing mission from Fishing GuildMaster Santiago in Heine, the enchanting mission from Blacksmith Rupio in the town of Giran, the augmenting mission from Head Blacksmith Flutter in the Town of Oren, the Soul Crystal mission from Blacksmith Vincenz in the Town of Rune, and the attribute mission from Head Blacksmith Ferris in the Town of Aden.
+If you are confused about who to go to find,look at the list from the mission I gave You. That's it.
+ \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-06.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-06.html new file mode 100644 index 0000000000..8936e95557 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-06.html @@ -0,0 +1,4 @@ +Herphah:
+Five certificates... you completed all the missions.
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-07.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-07.html new file mode 100644 index 0000000000..7120a31924 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-07.html @@ -0,0 +1,3 @@ +Herphah:
+Good job! Time to try other methods I taught you.You shouldn't get lazy to become strong.
+ \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-99.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-99.html new file mode 100644 index 0000000000..adfb9daa3b --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/34362-99.html @@ -0,0 +1,4 @@ +Fishing Guild Leader Santiago:
+Hey, let nature take its course. It's not good for us to go against it.
+(Only Premium characters who have the quest "Best Choice" in progress, can play this quest.)
+ \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/Q10566_BestChoice.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/Q10566_BestChoice.java new file mode 100644 index 0000000000..22d89850d9 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/Q10566_BestChoice.java @@ -0,0 +1,123 @@ +/* + * 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.Q10566_BestChoice; + +import org.l2jmobius.gameserver.enums.QuestType; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; +import org.l2jmobius.gameserver.model.quest.Quest; +import org.l2jmobius.gameserver.model.quest.QuestState; +import org.l2jmobius.gameserver.model.quest.State; + +/** + * Best Choice (10566) + * @URL https://l2wiki.com/Best_Choice + * @author Werum / Standardization by NightBR + */ +public class Q10566_BestChoice extends Quest +{ + // NPC + private static final int HERPHAH = 34362; + // Misc + private static final int MIN_LEVEL = 95; + // Items + private static final int CERTIFICATE_SANTIAGO = 48173; + private static final int CERTIFICATE_RUPIO = 48174; + private static final int CERTIFICATE_FLUTTER = 48175; + private static final int CERTIFICATE_VINCENZ = 48176; + private static final int CERTIFICATE_FERRIS = 48177; + private static final int HERPHAHS_SUPPORT_BOX = 48250; + private static final int HERPHAHS_MISSION_LIST = 48172; + + public Q10566_BestChoice() + { + super(10566); + addStartNpc(HERPHAH); + addTalkId(HERPHAH); + addCondMinLevel(MIN_LEVEL, "noLevel.html"); + registerQuestItems(CERTIFICATE_SANTIAGO, CERTIFICATE_RUPIO, CERTIFICATE_FLUTTER, CERTIFICATE_VINCENZ, CERTIFICATE_FERRIS, HERPHAHS_MISSION_LIST); + } + + @Override + public String onAdvEvent(String event, Npc npc, PlayerInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return getNoQuestMsg(player); + } + String htmltext = null; + switch (event) + { + case "34362-02.htm": + case "34362-03.htm": + { + htmltext = event; + break; + } + case "34362-04.htm": + { + qs.startQuest(); + giveItems(player, HERPHAHS_MISSION_LIST, 1); + break; + } + case "34362-07.html": + { + giveItems(player, HERPHAHS_SUPPORT_BOX, 1); + qs.exitQuest(QuestType.ONE_TIME, true); + break; + } + } + return htmltext; + } + + @Override + public String onTalk(Npc npc, PlayerInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + + switch (qs.getState()) + { + case State.CREATED: + { + htmltext = (player.hasPremiumStatus()) ? "34362-01.htm" : "34362-99.html"; + break; + } + case State.STARTED: + { + if (qs.isCond(1)) + { + boolean hasItems = hasQuestItems(player, CERTIFICATE_SANTIAGO, CERTIFICATE_RUPIO, CERTIFICATE_FLUTTER, CERTIFICATE_VINCENZ, CERTIFICATE_FERRIS); + // Chck if player has the necessary quest items to complete the quest + if (hasItems) + { + qs.setCond(2, true); + } + htmltext = (hasItems) ? "34362-06.html" : "34362-05.html"; + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/noLevel.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/noLevel.html new file mode 100644 index 0000000000..089e4f3aa4 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10566_BestChoice/noLevel.html @@ -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. 95 or above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-01.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-01.htm new file mode 100644 index 0000000000..ccd19c97dc --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-01.htm @@ -0,0 +1,4 @@ +Fishing Guild Leader Santiago:
+Could it be that you'd like to learn how to fish, but don't know where to start or don't have the necessary equipment? Oh, you've come to just the place. I have a great opportunity for you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-02.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-02.htm new file mode 100644 index 0000000000..5738b1e29d --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-02.htm @@ -0,0 +1,6 @@ +Fishing Guild Leader Santiago:
+Since you agreed, I'll take it that you accepted the experience. I'll explain in simple terms, you always need to learn the theory first.
+In order to fish, you need to find a fishing dock. Once you arrive at the right spot, you'll see the button on the right side of your screen that alerts you that you can fish. If you see that button, it means you've found a right spot.
+Fishing docks are at the Iris Lake, Narsell Lake, Giran Harbor. near the Plains of the Lizardmen, the banks near the Town of Gludio, the Neutral Zone, Heine, Fellmere Lake, and the bridge near the Town of Giran. Understand so far?
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-03.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-03.html new file mode 100644 index 0000000000..db831cebc9 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-03.html @@ -0,0 +1,6 @@ +Fishing Guild Leader Santiago:
+Then you'll need to prepare your fishing tools. You'll need Fishing Rod and Bait. You can only fish if you have them.
+You can receive the Normal Bait from me, but if you want to catch more expensive fish, I recommend you use the Special Bait. I have never seen Special Bait, but I heard that you can get it from the boxes you get from fishing.
+You can buy fishing rods from Fishing Guild Members, but I'll give you one for practice. If you already have a fishing rod, you can use that one. already have a fishing rod, you can use that one. Sounds easy, right?
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-04.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-04.html new file mode 100644 index 0000000000..4de09332fb --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-04.html @@ -0,0 +1,6 @@ +Fishing Guild Leader Santiago:
+One more thing! I must tell you about Fishing Shots. It's like applying Soulshots to Fishing. When you fish, use this item to increase the chances of catching fish. You can buy them from Fishing Guild Members and register it in the shortcuts to use them automatically.
+I won't give you any right now since you are practicing, but if you want to get them yourself... go ahead.
+That should be everything I need to explain. Let's get practicing now! + + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-05.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-05.html new file mode 100644 index 0000000000..ae14b3e809 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-05.html @@ -0,0 +1,6 @@ +Fishing Guild Leader Santiago:
+Well.. practice is... practice, what else? You'll be having a go at fishing. Find a fishing dock, and use the fishing tools to catch a fish.
+Well, I'll give you the things you need. Your goal is to catch 5 Practice Fish. If you succeed, you won't be a complete newbie anymore.
+Oh, remember that practice fish can only be caught using the practice bait I'll be giving you. It isn't worth much, but you'll catch them faster than normal fish, and that makes them perfect for practice!
+Good luck to you, then! + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-06.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-06.html new file mode 100644 index 0000000000..5ce05fe826 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-06.html @@ -0,0 +1,5 @@ +Fishing Guild Leader Santiago:
+Ah, you've caught all the practice fish you need.
+So? It's not that hard to fish, right? And it's fun!
+ + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-07.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-07.html new file mode 100644 index 0000000000..b346f01a4b --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-07.html @@ -0,0 +1,4 @@ +Fishing Guild Leader Santiago:
+Yes, great.
+I'll give you a box with fishing supplies as a reward. How about making it into your new hobby? Hahaha!
+ \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-99.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-99.html new file mode 100644 index 0000000000..3d7c38ff25 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-99.html @@ -0,0 +1,4 @@ +Fishing Guild Leader Santiago:
+Hey, let nature take its course. It's not good for us to go against it.
+(Only Premium characters who have the quest "Best Choice" in progress, can play this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java new file mode 100644 index 0000000000..569048c491 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java @@ -0,0 +1,190 @@ +/* + * 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.Q10575_LetsGoFishing; + +import java.util.HashSet; +import java.util.Set; + +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.instance.PlayerInstance; +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.holders.NpcLogListHolder; +import org.l2jmobius.gameserver.model.quest.Quest; +import org.l2jmobius.gameserver.model.quest.QuestState; +import org.l2jmobius.gameserver.model.quest.State; +import org.l2jmobius.gameserver.network.NpcStringId; +import org.l2jmobius.gameserver.network.serverpackets.ExTutorialShowId; +import org.l2jmobius.gameserver.network.serverpackets.fishing.ExFishingEnd.FishingEndReason; + +import quests.Q10566_BestChoice.Q10566_BestChoice; + +/** + * Let's Go Fishing (10575) + * @URL https://l2wiki.com/Let%27s_Go_Fishing + * @author NightBR / htmls: by Werum + */ +public class Q10575_LetsGoFishing extends Quest +{ + // NPCs + private static final int SANTIAGO = 34138; + // Items + private static final int PRACTICE_BAIT = 46737; + private static final int PRACTICE_FISH = 46736; + private static final int PRACTICE_FISHING_ROD = 46738; + // Rewards + private static final int XP = 597699960; + private static final int SP = 597690; + private static final int CERTIFICATE_FROM_SANTIAGO = 48173; + private static final int FISHING_SHOT = 38154; + private static final int REWARD_FISHING_ROD_PACK = 46739; + private static final int BAIT = 48537; + // Misc + private static final int MIN_LEVEL = 95; + private static final String COUNT_VAR = "FishWinCount"; + private static final int NPCSTRING_ID = NpcStringId.CATCH_PRACTICE_FISH.getId(); + + public Q10575_LetsGoFishing() + { + super(10575); + addStartNpc(SANTIAGO); + addTalkId(SANTIAGO); + registerQuestItems(PRACTICE_BAIT, PRACTICE_FISH, PRACTICE_FISHING_ROD); + addCondMinLevel(MIN_LEVEL, "noLevel.htm"); + addCondStartedQuest(Q10566_BestChoice.class.getSimpleName(), "34138-99.html"); + } + + @Override + public String onAdvEvent(String event, Npc npc, PlayerInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + String htmltext = null; + switch (event) + { + case "34138-03.html": + case "34138-04.html": + { + htmltext = event; + break; + } + case "34138-02.htm": + { + qs.startQuest(); + htmltext = event; + break; + } + case "34138-05.html": + { + // show Service/Help/Fishing page + player.sendPacket(new ExTutorialShowId(111)); + qs.setCond(2, true); + giveItems(player, PRACTICE_BAIT, 50); + giveItems(player, PRACTICE_FISHING_ROD, 1); + htmltext = event; + break; + } + case "34138-07.html": + { + if (qs.isCond(3)) + { + addExpAndSp(player, XP, SP); + giveItems(player, CERTIFICATE_FROM_SANTIAGO, 1); + giveItems(player, FISHING_SHOT, 60); + giveItems(player, REWARD_FISHING_ROD_PACK, 1); + giveItems(player, BAIT, 60); + qs.exitQuest(QuestType.ONE_TIME, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onTalk(Npc npc, PlayerInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + + switch (qs.getState()) + { + case State.CREATED: + { + htmltext = (player.hasPremiumStatus()) ? "34138-01.htm" : "34138-99.html"; + break; + } + case State.STARTED: + { + htmltext = (qs.getCond() <= 2) ? "34138-05.html" : "34138-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) + { + final PlayerInstance player = event.getPlayer(); + final QuestState qs = getQuestState(player, false); + if ((qs != null) && qs.isCond(2) && (event.getReason() == FishingEndReason.WIN)) + { + 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); + } + } + + @Override + public Set getNpcLogList(PlayerInstance player) + { + final QuestState qs = getQuestState(player, false); + if ((qs != null) && qs.isCond(2)) + { + final Set holder = new HashSet<>(); + holder.add(new NpcLogListHolder(NPCSTRING_ID, true, qs.getInt(COUNT_VAR))); + return holder; + } + return super.getNpcLogList(player); + } +} diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/noLevel.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/noLevel.html new file mode 100644 index 0000000000..089e4f3aa4 --- /dev/null +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q10575_LetsGoFishing/noLevel.html @@ -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. 95 or above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/QuestMasterHandler.java index 11f1a951b7..92d4b76006 100644 --- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/QuestMasterHandler.java +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/QuestMasterHandler.java @@ -308,6 +308,8 @@ import quests.Q10544_SeekerSupplies.Q10544_SeekerSupplies; import quests.Q10560_WayOfWanderingKnight.Q10560_WayOfWanderingKnight; import quests.Q10561_AcrossTheDeathLine.Q10561_AcrossTheDeathLine; import quests.Q10562_TakeUpArms.Q10562_TakeUpArms; +import quests.Q10566_BestChoice.Q10566_BestChoice; +import quests.Q10575_LetsGoFishing.Q10575_LetsGoFishing; import quests.Q10658_MakkumInTheDimension.Q10658_MakkumInTheDimension; import quests.Q10701_TheRoadToDestruction.Q10701_TheRoadToDestruction; import quests.Q10702_TheRoadToInfinity.Q10702_TheRoadToInfinity; @@ -811,7 +813,7 @@ public class QuestMasterHandler Q10563_ControlOfPower.class, // TODO: Not done. Q10564_ProveProgress.class, // TODO: Not done. Q10565_NothingIsImpossible.class, // TODO: Not done. - Q10566_BestChoice.class, // TODO: Not done. + Q10566_BestChoice.class, Q10567_SpecialMissionNornilsGarden.class, // TODO: Not done. Q10568_KamaelsTechnologicalAdvancement.class, // TODO: Not done. Q10569_DeclarationOfWar.class, // TODO: Not done. @@ -819,7 +821,7 @@ public class QuestMasterHandler Q10571_StrategicReconciliation.class, // TODO: Not done. Q10572_ToExpelTheEmbryosForces.class, // TODO: Not done. Q10574_SpecialMissionFortuna.class, // TODO: Not done. - Q10575_LetsGoFishing.class, // TODO: Not done. + Q10575_LetsGoFishing.class, Q10576_GlitteringWeapons.class, // TODO: Not done. Q10577_TemperARustingBlade.class, // TODO: Not done. Q10578_TheSoulOfASword.class, // TODO: Not done. diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/not_done/Q10566_BestChoice.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/not_done/Q10566_BestChoice.java deleted file mode 100644 index ec0f499385..0000000000 --- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/not_done/Q10566_BestChoice.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 Q10566_BestChoice extends Quest -{ - private static final int START_NPC = 34362; - - public Q10566_BestChoice() - { - super(10566); - addStartNpc(START_NPC); - addTalkId(START_NPC); - addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null)); - } -} diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/not_done/Q10575_LetsGoFishing.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/not_done/Q10575_LetsGoFishing.java deleted file mode 100644 index 781393fa5f..0000000000 --- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/not_done/Q10575_LetsGoFishing.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 Q10575_LetsGoFishing extends Quest -{ - private static final int START_NPC = 34138; - - public Q10575_LetsGoFishing() - { - super(10575); - addStartNpc(START_NPC); - addTalkId(START_NPC); - addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null)); - } -} diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/spawns/Innadril/Heine.xml b/L2J_Mobius_5.5_EtinasFate/dist/game/data/spawns/Innadril/Heine.xml index 8a89d9a86e..cb04bd1f6c 100644 --- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/spawns/Innadril/Heine.xml +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/spawns/Innadril/Heine.xml @@ -76,6 +76,7 @@ + diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/npcs/34100-34199.xml b/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/npcs/34100-34199.xml index 0ac054ebc2..418581e6e2 100644 --- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/npcs/34100-34199.xml +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/stats/npcs/34100-34199.xml @@ -744,7 +744,7 @@ - + HUMAN FEMALE diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/Fishing.xml b/L2J_Mobius_6.0_Fafurion/dist/game/data/Fishing.xml index 0152888ab6..010f98b80b 100644 --- a/L2J_Mobius_6.0_Fafurion/dist/game/data/Fishing.xml +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/Fishing.xml @@ -4,6 +4,9 @@ + + + diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-1.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-1.htm new file mode 100644 index 0000000000..1d3b7c99d2 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-1.htm @@ -0,0 +1,9 @@ +Fishing Guild Leader Santiago:
+Asking around about the Anglers Fishing Rod, you're quite the fishing nut now, you are.
+It's only fair that with all the hard work you're doing for the sake of the Fishing Guild, you end up with a better fishing rod, isn't it?
+So, if you have a Sturdy Fishing Rod to start with, and you build up enough skill to satisfy our standards at the Fishing Guild, we'll modify your fishing rod using our special techniques to make it better. We can also make simple improvements so that the performance increases without making big changes.
+Of course, you're still not quite there yet in terms of skill. Please retum after building some more skill. Hmm.. let's say Faction level 2. That should do it.
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-2.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-2.htm new file mode 100644 index 0000000000..81935caa21 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-2.htm @@ -0,0 +1,6 @@ +Fishing Guild Leader Santiago:
+If you want an Master Fishing Rod made, what's most important is to have a Sturdy Fishing Rod. See, a fishing rod needs to be as sturdy as possible in order to withstand the modifications we're going to make to it.
+When you find a Sturdy Fishing Rod, along with Santiago's Reel Fragment and the additional fees necessary, come and find me. I'll make sure your fishing rod tums out exceptionally well.
+Like I told you before, you can also improve the performance of your rod, so investigate thoroughly. To improve your fishing rod's performance, you will need your Master Fishing Rod, Sturdy Fishing Rod, Santiago's Reel Fragment, and some other things.
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-3.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-3.htm new file mode 100644 index 0000000000..767cacacf7 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-3.htm @@ -0,0 +1,5 @@ +Fishing Guild Leader Santiago:
+So what does the Master Fishing Rod benefit you?
+Of course you're curious. With the Master Fishing Rod, you can catch fish faster and more conveniently. A Sturdy Fishing Rod means that you expend less energy trying to catch your fish, you see.
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-pk.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-pk.htm new file mode 100644 index 0000000000..ae9a0ab9d0 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138-pk.htm @@ -0,0 +1,3 @@ +Fishing Guild Leader Santiago:
+Sorry, but I'm forbidden by my guild from doing business with criminals like you! + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138.htm new file mode 100644 index 0000000000..62909b112e --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/html/fisherman/34138.htm @@ -0,0 +1,7 @@ +Fishing Guild Leader Santiago:
+Hey there isnt a great day to fish,rain or shine.the weater just changes the experience.
+Come to think of it, I haven't even introduced myself to you. I'm Santiago, and i've become the new leader of the Fishing Guild.Before I took this job,through, i was a Professional Fisher who used to venture out onto the High seas where I fought with the Largest of fish.
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/MissingQuests.txt b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/MissingQuests.txt index 0f355f0a8a..4dd7df231f 100644 --- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/MissingQuests.txt +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/MissingQuests.txt @@ -197,14 +197,12 @@ 10563 Control of Power 10564 Prove Progress 10565 Nothing Is Impossible -10566 Best Choice 10567 Special Mission: Nornil's Garden 10568 Kamael's Technological Advancement 10569 Declaration of War 10570 Hurrah for Kamael's Independence 10571 Strategic Reconciliation 10572 To Expel the Embryo's Forces -10575 Let's Go Fishing 10576 Glittering Weapons 10577 Temper a Rusting Blade 10578 The Soul of a Sword diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java index e343fe609c..ef13558176 100644 --- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00937_ToReviveTheFishingGuild/Q00937_ToReviveTheFishingGuild.java @@ -62,6 +62,7 @@ public class Q00937_ToReviveTheFishingGuild extends Quest 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 BASIC_SUPPLY_BOX = 47571; private static final int INTERMEDIATE_SUPPLY_BOX = 47572; @@ -72,8 +73,8 @@ public class Q00937_ToReviveTheFishingGuild extends Quest public Q00937_ToReviveTheFishingGuild() { super(937); - addStartNpc(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA); - addTalkId(OFULLE, LINNAEUS, PERELIN, BLEAKER, CYANO, PAMFUS, LANOSCO, HUFS, MONAKAN, BERIX, LITULON, WILLIE, HILGENDORF, PLATIS, KLAUS, BATIDAE, EINDARKNER, GALBA); + 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"); } @@ -174,6 +175,7 @@ public class Q00937_ToReviveTheFishingGuild extends Quest { playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); } + sendNpcLogList(player); } } diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-01.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-01.htm new file mode 100644 index 0000000000..9c5a8d2da3 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-01.htm @@ -0,0 +1,4 @@ +Herphah:
+Do you think continuous fighting is the only way of becoming strong?That's a serious mistake.There are many other ways to become stronger.
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-02.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-02.htm new file mode 100644 index 0000000000..8560258f01 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-02.htm @@ -0,0 +1,4 @@ +Herphah:
+Weapon enhancement and fishing are goot examples.They can strenghten you indirectly.You should make use of every possible means to become stronger.
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-03.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-03.htm new file mode 100644 index 0000000000..73882815a8 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-03.htm @@ -0,0 +1,5 @@ +Herphah:
+So,I´m going to give you a chance to experience all of them.What do you think?Are you moved by my Generosity?.
+Say yes,Otherwise,I won´t help you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-04.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-04.htm new file mode 100644 index 0000000000..0c50cea851 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-04.htm @@ -0,0 +1,4 @@ +Herphah:
+Alright.Complete the missions these people give you and bring back their certificates.Complete the fishing mission from Fishing GuildMaster Santiago in Heine,the enchanting mission from Blacksmith Rupio in the town of Giran, the augmenting mission from Head Blacksmith Flutter in the Town of Oren, the Soul Crystal mission from Blacksmith Vincenz in the Town of Rune, and the attribute mission from Head Blacksmith Ferris in the Town of Aden.
+If you are confused about who to go to find,look at the list from the mission I gave You. That's it.
+ \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-05.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-05.html new file mode 100644 index 0000000000..de8e5910da --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-05.html @@ -0,0 +1,4 @@ +Herphah:
+I'll tell you again. Complete the missions these people give you and bring back their certificates. Complete the fishing mission from Fishing GuildMaster Santiago in Heine, the enchanting mission from Blacksmith Rupio in the town of Giran, the augmenting mission from Head Blacksmith Flutter in the Town of Oren, the Soul Crystal mission from Blacksmith Vincenz in the Town of Rune, and the attribute mission from Head Blacksmith Ferris in the Town of Aden.
+If you are confused about who to go to find,look at the list from the mission I gave You. That's it.
+ \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-06.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-06.html new file mode 100644 index 0000000000..8936e95557 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-06.html @@ -0,0 +1,4 @@ +Herphah:
+Five certificates... you completed all the missions.
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-07.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-07.html new file mode 100644 index 0000000000..7120a31924 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-07.html @@ -0,0 +1,3 @@ +Herphah:
+Good job! Time to try other methods I taught you.You shouldn't get lazy to become strong.
+ \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-99.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-99.html new file mode 100644 index 0000000000..adfb9daa3b --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/34362-99.html @@ -0,0 +1,4 @@ +Fishing Guild Leader Santiago:
+Hey, let nature take its course. It's not good for us to go against it.
+(Only Premium characters who have the quest "Best Choice" in progress, can play this quest.)
+ \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/Q10566_BestChoice.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/Q10566_BestChoice.java new file mode 100644 index 0000000000..22d89850d9 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/Q10566_BestChoice.java @@ -0,0 +1,123 @@ +/* + * 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.Q10566_BestChoice; + +import org.l2jmobius.gameserver.enums.QuestType; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; +import org.l2jmobius.gameserver.model.quest.Quest; +import org.l2jmobius.gameserver.model.quest.QuestState; +import org.l2jmobius.gameserver.model.quest.State; + +/** + * Best Choice (10566) + * @URL https://l2wiki.com/Best_Choice + * @author Werum / Standardization by NightBR + */ +public class Q10566_BestChoice extends Quest +{ + // NPC + private static final int HERPHAH = 34362; + // Misc + private static final int MIN_LEVEL = 95; + // Items + private static final int CERTIFICATE_SANTIAGO = 48173; + private static final int CERTIFICATE_RUPIO = 48174; + private static final int CERTIFICATE_FLUTTER = 48175; + private static final int CERTIFICATE_VINCENZ = 48176; + private static final int CERTIFICATE_FERRIS = 48177; + private static final int HERPHAHS_SUPPORT_BOX = 48250; + private static final int HERPHAHS_MISSION_LIST = 48172; + + public Q10566_BestChoice() + { + super(10566); + addStartNpc(HERPHAH); + addTalkId(HERPHAH); + addCondMinLevel(MIN_LEVEL, "noLevel.html"); + registerQuestItems(CERTIFICATE_SANTIAGO, CERTIFICATE_RUPIO, CERTIFICATE_FLUTTER, CERTIFICATE_VINCENZ, CERTIFICATE_FERRIS, HERPHAHS_MISSION_LIST); + } + + @Override + public String onAdvEvent(String event, Npc npc, PlayerInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return getNoQuestMsg(player); + } + String htmltext = null; + switch (event) + { + case "34362-02.htm": + case "34362-03.htm": + { + htmltext = event; + break; + } + case "34362-04.htm": + { + qs.startQuest(); + giveItems(player, HERPHAHS_MISSION_LIST, 1); + break; + } + case "34362-07.html": + { + giveItems(player, HERPHAHS_SUPPORT_BOX, 1); + qs.exitQuest(QuestType.ONE_TIME, true); + break; + } + } + return htmltext; + } + + @Override + public String onTalk(Npc npc, PlayerInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + + switch (qs.getState()) + { + case State.CREATED: + { + htmltext = (player.hasPremiumStatus()) ? "34362-01.htm" : "34362-99.html"; + break; + } + case State.STARTED: + { + if (qs.isCond(1)) + { + boolean hasItems = hasQuestItems(player, CERTIFICATE_SANTIAGO, CERTIFICATE_RUPIO, CERTIFICATE_FLUTTER, CERTIFICATE_VINCENZ, CERTIFICATE_FERRIS); + // Chck if player has the necessary quest items to complete the quest + if (hasItems) + { + qs.setCond(2, true); + } + htmltext = (hasItems) ? "34362-06.html" : "34362-05.html"; + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/noLevel.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/noLevel.html new file mode 100644 index 0000000000..089e4f3aa4 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10566_BestChoice/noLevel.html @@ -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. 95 or above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-01.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-01.htm new file mode 100644 index 0000000000..ccd19c97dc --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-01.htm @@ -0,0 +1,4 @@ +Fishing Guild Leader Santiago:
+Could it be that you'd like to learn how to fish, but don't know where to start or don't have the necessary equipment? Oh, you've come to just the place. I have a great opportunity for you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-02.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-02.htm new file mode 100644 index 0000000000..5738b1e29d --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-02.htm @@ -0,0 +1,6 @@ +Fishing Guild Leader Santiago:
+Since you agreed, I'll take it that you accepted the experience. I'll explain in simple terms, you always need to learn the theory first.
+In order to fish, you need to find a fishing dock. Once you arrive at the right spot, you'll see the button on the right side of your screen that alerts you that you can fish. If you see that button, it means you've found a right spot.
+Fishing docks are at the Iris Lake, Narsell Lake, Giran Harbor. near the Plains of the Lizardmen, the banks near the Town of Gludio, the Neutral Zone, Heine, Fellmere Lake, and the bridge near the Town of Giran. Understand so far?
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-03.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-03.html new file mode 100644 index 0000000000..db831cebc9 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-03.html @@ -0,0 +1,6 @@ +Fishing Guild Leader Santiago:
+Then you'll need to prepare your fishing tools. You'll need Fishing Rod and Bait. You can only fish if you have them.
+You can receive the Normal Bait from me, but if you want to catch more expensive fish, I recommend you use the Special Bait. I have never seen Special Bait, but I heard that you can get it from the boxes you get from fishing.
+You can buy fishing rods from Fishing Guild Members, but I'll give you one for practice. If you already have a fishing rod, you can use that one. already have a fishing rod, you can use that one. Sounds easy, right?
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-04.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-04.html new file mode 100644 index 0000000000..4de09332fb --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-04.html @@ -0,0 +1,6 @@ +Fishing Guild Leader Santiago:
+One more thing! I must tell you about Fishing Shots. It's like applying Soulshots to Fishing. When you fish, use this item to increase the chances of catching fish. You can buy them from Fishing Guild Members and register it in the shortcuts to use them automatically.
+I won't give you any right now since you are practicing, but if you want to get them yourself... go ahead.
+That should be everything I need to explain. Let's get practicing now! + + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-05.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-05.html new file mode 100644 index 0000000000..ae14b3e809 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-05.html @@ -0,0 +1,6 @@ +Fishing Guild Leader Santiago:
+Well.. practice is... practice, what else? You'll be having a go at fishing. Find a fishing dock, and use the fishing tools to catch a fish.
+Well, I'll give you the things you need. Your goal is to catch 5 Practice Fish. If you succeed, you won't be a complete newbie anymore.
+Oh, remember that practice fish can only be caught using the practice bait I'll be giving you. It isn't worth much, but you'll catch them faster than normal fish, and that makes them perfect for practice!
+Good luck to you, then! + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-06.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-06.html new file mode 100644 index 0000000000..5ce05fe826 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-06.html @@ -0,0 +1,5 @@ +Fishing Guild Leader Santiago:
+Ah, you've caught all the practice fish you need.
+So? It's not that hard to fish, right? And it's fun!
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-07.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-07.html new file mode 100644 index 0000000000..b346f01a4b --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-07.html @@ -0,0 +1,4 @@ +Fishing Guild Leader Santiago:
+Yes, great.
+I'll give you a box with fishing supplies as a reward. How about making it into your new hobby? Hahaha!
+ \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-99.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-99.html new file mode 100644 index 0000000000..3d7c38ff25 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/34138-99.html @@ -0,0 +1,4 @@ +Fishing Guild Leader Santiago:
+Hey, let nature take its course. It's not good for us to go against it.
+(Only Premium characters who have the quest "Best Choice" in progress, can play this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java new file mode 100644 index 0000000000..569048c491 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/Q10575_LetsGoFishing.java @@ -0,0 +1,190 @@ +/* + * 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.Q10575_LetsGoFishing; + +import java.util.HashSet; +import java.util.Set; + +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.instance.PlayerInstance; +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.holders.NpcLogListHolder; +import org.l2jmobius.gameserver.model.quest.Quest; +import org.l2jmobius.gameserver.model.quest.QuestState; +import org.l2jmobius.gameserver.model.quest.State; +import org.l2jmobius.gameserver.network.NpcStringId; +import org.l2jmobius.gameserver.network.serverpackets.ExTutorialShowId; +import org.l2jmobius.gameserver.network.serverpackets.fishing.ExFishingEnd.FishingEndReason; + +import quests.Q10566_BestChoice.Q10566_BestChoice; + +/** + * Let's Go Fishing (10575) + * @URL https://l2wiki.com/Let%27s_Go_Fishing + * @author NightBR / htmls: by Werum + */ +public class Q10575_LetsGoFishing extends Quest +{ + // NPCs + private static final int SANTIAGO = 34138; + // Items + private static final int PRACTICE_BAIT = 46737; + private static final int PRACTICE_FISH = 46736; + private static final int PRACTICE_FISHING_ROD = 46738; + // Rewards + private static final int XP = 597699960; + private static final int SP = 597690; + private static final int CERTIFICATE_FROM_SANTIAGO = 48173; + private static final int FISHING_SHOT = 38154; + private static final int REWARD_FISHING_ROD_PACK = 46739; + private static final int BAIT = 48537; + // Misc + private static final int MIN_LEVEL = 95; + private static final String COUNT_VAR = "FishWinCount"; + private static final int NPCSTRING_ID = NpcStringId.CATCH_PRACTICE_FISH.getId(); + + public Q10575_LetsGoFishing() + { + super(10575); + addStartNpc(SANTIAGO); + addTalkId(SANTIAGO); + registerQuestItems(PRACTICE_BAIT, PRACTICE_FISH, PRACTICE_FISHING_ROD); + addCondMinLevel(MIN_LEVEL, "noLevel.htm"); + addCondStartedQuest(Q10566_BestChoice.class.getSimpleName(), "34138-99.html"); + } + + @Override + public String onAdvEvent(String event, Npc npc, PlayerInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + String htmltext = null; + switch (event) + { + case "34138-03.html": + case "34138-04.html": + { + htmltext = event; + break; + } + case "34138-02.htm": + { + qs.startQuest(); + htmltext = event; + break; + } + case "34138-05.html": + { + // show Service/Help/Fishing page + player.sendPacket(new ExTutorialShowId(111)); + qs.setCond(2, true); + giveItems(player, PRACTICE_BAIT, 50); + giveItems(player, PRACTICE_FISHING_ROD, 1); + htmltext = event; + break; + } + case "34138-07.html": + { + if (qs.isCond(3)) + { + addExpAndSp(player, XP, SP); + giveItems(player, CERTIFICATE_FROM_SANTIAGO, 1); + giveItems(player, FISHING_SHOT, 60); + giveItems(player, REWARD_FISHING_ROD_PACK, 1); + giveItems(player, BAIT, 60); + qs.exitQuest(QuestType.ONE_TIME, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onTalk(Npc npc, PlayerInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + + switch (qs.getState()) + { + case State.CREATED: + { + htmltext = (player.hasPremiumStatus()) ? "34138-01.htm" : "34138-99.html"; + break; + } + case State.STARTED: + { + htmltext = (qs.getCond() <= 2) ? "34138-05.html" : "34138-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) + { + final PlayerInstance player = event.getPlayer(); + final QuestState qs = getQuestState(player, false); + if ((qs != null) && qs.isCond(2) && (event.getReason() == FishingEndReason.WIN)) + { + 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); + } + } + + @Override + public Set getNpcLogList(PlayerInstance player) + { + final QuestState qs = getQuestState(player, false); + if ((qs != null) && qs.isCond(2)) + { + final Set holder = new HashSet<>(); + holder.add(new NpcLogListHolder(NPCSTRING_ID, true, qs.getInt(COUNT_VAR))); + return holder; + } + return super.getNpcLogList(player); + } +} diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/noLevel.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/noLevel.html new file mode 100644 index 0000000000..089e4f3aa4 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q10575_LetsGoFishing/noLevel.html @@ -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. 95 or above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java index 7ff642ca22..143c4896c0 100644 --- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java @@ -306,6 +306,8 @@ import quests.Q10544_SeekerSupplies.Q10544_SeekerSupplies; import quests.Q10560_WayOfWanderingKnight.Q10560_WayOfWanderingKnight; import quests.Q10561_AcrossTheDeathLine.Q10561_AcrossTheDeathLine; import quests.Q10562_TakeUpArms.Q10562_TakeUpArms; +import quests.Q10566_BestChoice.Q10566_BestChoice; +import quests.Q10575_LetsGoFishing.Q10575_LetsGoFishing; import quests.Q10658_MakkumInTheDimension.Q10658_MakkumInTheDimension; import quests.Q10701_TheRoadToDestruction.Q10701_TheRoadToDestruction; import quests.Q10702_TheRoadToInfinity.Q10702_TheRoadToInfinity; @@ -831,14 +833,14 @@ public class QuestMasterHandler Q10563_ControlOfPower.class, // TODO: Not done. Q10564_ProveProgress.class, // TODO: Not done. Q10565_NothingIsImpossible.class, // TODO: Not done. - Q10566_BestChoice.class, // TODO: Not done. + Q10566_BestChoice.class, Q10567_SpecialMissionNornilsGarden.class, // TODO: Not done. Q10568_KamaelsTechnologicalAdvancement.class, // TODO: Not done. Q10569_DeclarationOfWar.class, // TODO: Not done. Q10570_HurrahForKamaelsIndependence.class, // TODO: Not done. Q10571_StrategicReconciliation.class, // TODO: Not done. Q10572_ToExpelTheEmbryosForces.class, // TODO: Not done. - Q10575_LetsGoFishing.class, // TODO: Not done. + Q10575_LetsGoFishing.class, Q10576_GlitteringWeapons.class, // TODO: Not done. Q10577_TemperARustingBlade.class, // TODO: Not done. Q10578_TheSoulOfASword.class, // TODO: Not done. diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/not_done/Q10566_BestChoice.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/not_done/Q10566_BestChoice.java deleted file mode 100644 index ec0f499385..0000000000 --- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/not_done/Q10566_BestChoice.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 Q10566_BestChoice extends Quest -{ - private static final int START_NPC = 34362; - - public Q10566_BestChoice() - { - super(10566); - addStartNpc(START_NPC); - addTalkId(START_NPC); - addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null)); - } -} diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/not_done/Q10575_LetsGoFishing.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/not_done/Q10575_LetsGoFishing.java deleted file mode 100644 index 781393fa5f..0000000000 --- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/not_done/Q10575_LetsGoFishing.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 Q10575_LetsGoFishing extends Quest -{ - private static final int START_NPC = 34138; - - public Q10575_LetsGoFishing() - { - super(10575); - addStartNpc(START_NPC); - addTalkId(START_NPC); - addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null)); - } -} diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/spawns/Innadril/Heine.xml b/L2J_Mobius_6.0_Fafurion/dist/game/data/spawns/Innadril/Heine.xml index bad6d06183..4c507b5836 100644 --- a/L2J_Mobius_6.0_Fafurion/dist/game/data/spawns/Innadril/Heine.xml +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/spawns/Innadril/Heine.xml @@ -76,6 +76,7 @@ + diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/npcs/34100-34199.xml b/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/npcs/34100-34199.xml index ee66a95c01..8644df41b9 100644 --- a/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/npcs/34100-34199.xml +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/stats/npcs/34100-34199.xml @@ -744,7 +744,7 @@ - + HUMAN FEMALE