From 67212e5bee52e436c7937a08ab68f57fac75fcd9 Mon Sep 17 00:00:00 2001 From: Adry_85 <Adrya85@hotmail.it> Date: Tue, 22 Oct 2013 09:19:22 +0000 Subject: [PATCH] BETA: Retail like quest '''Conquest of Alligator Island''' (354). --- L2J_DataPack_BETA/dist/game/data/scripts.cfg | 2 +- .../30895-00.htm | 7 - .../30895-00a.htm | 4 - .../30895-02.htm | 8 - .../30895-03.htm | 7 - .../30895-04.htm | 9 - .../30895-04a.htm | 9 - .../30895-05a.htm | 5 - .../30895-05b.htm | 7 - .../30895-07.htm | 5 - .../30895-08.htm | 5 - .../354_ConquestOfAlligatorIsland/__init__.py | 108 ---------- .../30895-01.htm | 10 +- .../30895-02.html | 5 + .../30895-03.html | 5 + .../30895-04.html | 7 + .../30895-05.html | 6 + .../30895-06.html | 6 + .../30895-07.html | 5 + .../30895-08.html} | 4 +- .../30895-09.html} | 4 +- .../30895-10.html} | 6 +- .../30895-11.html | 8 + .../30895-12.html | 4 + .../30895-13.html | 5 + .../Q00354_ConquestOfAlligatorIsland.java | 204 ++++++++++++++++++ .../dist/sql/game/updates/20131022update.sql | 1 + 27 files changed, 269 insertions(+), 187 deletions(-) delete mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-00.htm delete mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-00a.htm delete mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-02.htm delete mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-03.htm delete mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-04.htm delete mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-04a.htm delete mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-05a.htm delete mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-05b.htm delete mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-07.htm delete mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-08.htm delete mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/__init__.py rename L2J_DataPack_BETA/dist/game/data/scripts/quests/{354_ConquestOfAlligatorIsland => Q00354_ConquestOfAlligatorIsland}/30895-01.htm (70%) create mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-02.html create mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-03.html create mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-04.html create mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-05.html create mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-06.html create mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-07.html rename L2J_DataPack_BETA/dist/game/data/scripts/quests/{354_ConquestOfAlligatorIsland/30895-05.htm => Q00354_ConquestOfAlligatorIsland/30895-08.html} (75%) rename L2J_DataPack_BETA/dist/game/data/scripts/quests/{354_ConquestOfAlligatorIsland/30895-06.htm => Q00354_ConquestOfAlligatorIsland/30895-09.html} (57%) rename L2J_DataPack_BETA/dist/game/data/scripts/quests/{354_ConquestOfAlligatorIsland/30895-09.htm => Q00354_ConquestOfAlligatorIsland/30895-10.html} (59%) create mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-11.html create mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-12.html create mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-13.html create mode 100644 L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/Q00354_ConquestOfAlligatorIsland.java create mode 100644 L2J_DataPack_BETA/dist/sql/game/updates/20131022update.sql diff --git a/L2J_DataPack_BETA/dist/game/data/scripts.cfg b/L2J_DataPack_BETA/dist/game/data/scripts.cfg index a585818daa..643a5efa40 100644 --- a/L2J_DataPack_BETA/dist/game/data/scripts.cfg +++ b/L2J_DataPack_BETA/dist/game/data/scripts.cfg @@ -479,7 +479,7 @@ quests/348_ArrogantSearch/__init__.py quests/Q00350_EnhanceYourWeapon/Q00350_EnhanceYourWeapon.java quests/351_BlackSwan/__init__.py quests/352_HelpRoodRaiseANewPet/__init__.py -quests/354_ConquestOfAlligatorIsland/__init__.py +quests/Q00354_ConquestOfAlligatorIsland/Q00354_ConquestOfAlligatorIsland.java quests/355_FamilyHonor/__init__.py quests/356_DigUpTheSeaOfSpores/__init__.py quests/357_WarehouseKeepersAmbition/__init__.py diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-00.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-00.htm deleted file mode 100644 index 065a9aa652..0000000000 --- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-00.htm +++ /dev/null @@ -1,7 +0,0 @@ -<html><body>Warehouse Keeper Kluck:<br> -Whew! There's no way I can keep up this pace! Hello, friend! Am I glad to see you!<br> -For as long as anyone can remember, Dwarves have been traders, am I right? And now come the Humans, with their friends in high places, taking over the trade routes in Innadril, Abella, and Giran! Who do they think they are?<br> -Boycott the Humans! We're establishing a free trade zone near Alligator Island! The only problem is, that place is crawling with horrible monsters.<br> -Would you help us get rid of them? If you'd like, we can draw up a contract right now!<br> -<a action="bypass -h Quest 354_ConquestOfAlligatorIsland 30895-00a.htm">"I will help you."</a> -</body></html> diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-00a.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-00a.htm deleted file mode 100644 index 3686315453..0000000000 --- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-00a.htm +++ /dev/null @@ -1,4 +0,0 @@ -<html><body>Warehouse Keeper Kluck:<br> -I'm sorry but i think those monsters are to hard for you!<br> -(This is a quest that can only be performed by players of level 38 and above.) -</body></html> diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-02.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-02.htm deleted file mode 100644 index c3754d65f3..0000000000 --- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-02.htm +++ /dev/null @@ -1,8 +0,0 @@ -<html><body>Warehouse Keeper Kluck:<br> -Well, then, here you go! Sign on the dotted line... Now, I'll read the contrac to to you.<br> -Adventurer agrees to go to Alligator Island and kill the<font color="LEVEL"> Crokian Lads, Dailaon Lads, Crokian Lad Warriors, Farhite Lads, Nos Lads, and the Swamp Tribe</font> and bring back their teeth as proof. -And Kluck, that's me, will count the number of teeth brought back and reward said adventurer accordingly.<br> -Third, if said adventurer birngs back 100 or more teeth at a time, he or she will receive an additional bonus.<br> -Fourth, while carrying out the task specified in the contract on Alligator Island, if the adventurer finds items other than the teeth of monsters, the adventurer will own those items free and clear.<br> -Do these terms meet with your approval? Then, the contract is formally established between us! Alligator Island is to the north, across the sea from here. This work will be hard for you to carry out by yourself. You'd better find another adventurers to go with you. If you wish, I will establish a contract with them as well. Sorry, there's no bridge... You look rather strapping... Couldn't you swim there? -</body></html> diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-03.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-03.htm deleted file mode 100644 index 0327b39986..0000000000 --- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-03.htm +++ /dev/null @@ -1,7 +0,0 @@ -<html><body>Warehouse Keeper Kluck:<br> -Good to see you again, my friend... Have you brought teeth? Or perhaps you have a question?<br> -<a action="bypass -h Quest 354_ConquestOfAlligatorIsland 30895-04.htm">"Tell me more about the Contract i signed."</a><br> -<a action="bypass -h Quest 354_ConquestOfAlligatorIsland 30895-05.htm">"Here are the teeth."</a><br> -<a action="bypass -h Quest 354_ConquestOfAlligatorIsland 30895-06.htm">"I have a work to do."</a><br> -<a action="bypass -h Quest 354_ConquestOfAlligatorIsland 30895-09.htm">"I want out of the Contract."</a> -</body></html> diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-04.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-04.htm deleted file mode 100644 index 98ef25356f..0000000000 --- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-04.htm +++ /dev/null @@ -1,9 +0,0 @@ -<html><body>Warehouse Keeper Kluck:<br> -Ok, one more time...<br> -Adventurer agrees to go to Alligator Island and kill the<font color="LEVEL"> Crokian Lads, Dailaon Lads, Crokian Lad Warriors, Farhite Lads, Nos Lads, and the Swamp Tribe</font> and bring back their teeth as proof. -And Kluck, that's me, will count the number of teeth brought back and reward said adventurer accordingly.<br> -Third, if said adventurer birngs back 100 or more teeth at a time, he or she will receive an additional bonus.<br> -Fourth, while carrying out the task specified in the contract on Alligator Island, if the adventurer finds items other than the teeth of monsters, the adventurer will own those items free and clear.<br> -Do these terms meet with your approval? Then, the contract is formally established between us! Alligator Island is to the north, across the sea from here. This work will be hard for you to carry out by yourself. You'd better find another adventurers to go with you. If you wish, I will establish a contract with them as well. Sorry, there's no bridge... You look rather strapping... Couldn't you swim there?<br> -<a action="bypass -h Quest 354_ConquestOfAlligatorIsland 30895-03.htm">Back</a> -</body></html> diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-04a.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-04a.htm deleted file mode 100644 index ea1fa6b615..0000000000 --- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-04a.htm +++ /dev/null @@ -1,9 +0,0 @@ -<html><body>Warehouse Keeper Kluck:<br> -Ok, one more time...<br> -Adventurer agrees to go to Alligator Island and kill the<font color="LEVEL"> Crokian Lads, Dailaon Lads, Crokian Lad Warriors, Farhite Lads, Nos Lads, and the Swamp Tribe</font> and bring back their teeth as proof. -And Kluck, that's me, will count the number of teeth brought back and reward said adventurer accordingly.<br> -Third, if said adventurer birngs back 100 or more teeth at a time, he or she will receive an additional bonus.<br> -Fourth, while carrying out the task specified in the contract on Alligator Island, if the adventurer finds items other than the teeth of monsters, the adventurer will own those items free and clear.<br> -Do these terms meet with your approval? Then, the contract is formally established between us! Alligator Island is to the north, across the sea from here. This work will be hard for you to carry out by yourself. You'd better find another adventurers to go with you. If you wish, I will establish a contract with them as well. Sorry, there's no bridge... You look rather strapping... Couldn't you swim there?<br> -<a action="bypass -h Quest 354_ConquestOfAlligatorIsland 30895-05b.htm">Back</a> -</body></html> diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-05a.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-05a.htm deleted file mode 100644 index 41db7bf7ec..0000000000 --- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-05a.htm +++ /dev/null @@ -1,5 +0,0 @@ -<html><body>Warehouse Keeper Kluck:<br> -Let's see, teeth are worth... Here you go! Thank you for your hard work! Hopefully soon the island will be completely free of monsters and our dream of a free trade zone without tax can be realized! Keep up the good work!<br> -<a action="bypass -h Quest 354_ConquestOfAlligatorIsland 30895-06.htm">"I'll be getting back to work now."</a><br> -<a action="bypass -h Quest 354_ConquestOfAlligatorIsland 30895-09.htm">"I want out of the Contract."</a> -</body></html> diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-05b.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-05b.htm deleted file mode 100644 index 42e07c1bca..0000000000 --- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-05b.htm +++ /dev/null @@ -1,7 +0,0 @@ -<html><body>Warehouse Keeper Kluck:<br> -Hey, impressive! You've brought over 100! Here is your reward! And, per the contract, your<font color="LEVEL"> bonus</font> as well!<br> -I appreciate your hard work! Hopefully soon our dream of a free trade zone without tax will be realised. Keep up the good work!<br> -<a action="bypass -h Quest 354_ConquestOfAlligatorIsland 30895-04a.htm">"Tell me more about the Contract i signed."</a><br> -<a action="bypass -h Quest 354_ConquestOfAlligatorIsland 30895-06.htm">"I'll be getting back to work now."</a><br> -<a action="bypass -h Quest 354_ConquestOfAlligatorIsland 30895-09.htm">"I want out of the contract."</a> -</body></html> diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-07.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-07.htm deleted file mode 100644 index 3fb6935392..0000000000 --- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-07.htm +++ /dev/null @@ -1,5 +0,0 @@ -<html><body>Warehouse Keeper Kluck:<br> -Hey, what is this ?!<br> -(*Sees the mysterious map fragments*)<br> -<a action="bypass -h Quest 354_ConquestOfAlligatorIsland 30895-08.htm">Show him the fragments.</a> -</body></html> diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-08.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-08.htm deleted file mode 100644 index e098ba3d5d..0000000000 --- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-08.htm +++ /dev/null @@ -1,5 +0,0 @@ -<html><body>Warehouse Keeper Kluck:<br> -Ah, yes, these pieces definitely go together... Just like doing puzzle! What have we here? this mark must show where the treasure is hidden!<br> -This must surely be the map to the legendary treasure of Zaken the pirate!<br> -Hmm, I suppose, according to the terms of the contract, that the map rightfully belongs to you. Go see<font color="LEVEL"> Traider Espen</font> in the weapon shop. He is an expert on Zaken. All pirates, actually... -</body></html> diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/__init__.py b/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/__init__.py deleted file mode 100644 index 0216b59f71..0000000000 --- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/__init__.py +++ /dev/null @@ -1,108 +0,0 @@ -# Made by mtrix -import sys -from com.l2jserver import Config -from com.l2jserver.gameserver.model.quest import State -from com.l2jserver.gameserver.model.quest import QuestState -from com.l2jserver.gameserver.model.quest import Quest as JQuest - -qn = "354_ConquestOfAlligatorIsland" - -ADENA = 57 -ALLIGATOR_TOOTH = 5863 -TORN_MAP_FRAGMENT = 5864 -PIRATES_TREASURE_MAP = 5915 -CHANCE = 45 -CHANCE2 = 10 -#These items are custom, since we don't have info about them. Feel free to change them as you see fit (DrLecter) -#Syntax: [itemid,max qty], -RANDOM_REWARDS=[[736,15], #SoE - [1061,20],#Healing Potion - [734,15], #Haste Potion - [735,15], #Alacrity Potion - [1878,35],#Braided Hemp - [1875,15],#Stone of Purity - [1879,15],#Cokes - [1880,15],#Steel - [956,1], #Enchant Armor D - [955,1], #Enchant Weapon D - ] - -class Quest (JQuest) : - - def __init__(self,id,name,descr): - JQuest.__init__(self,id,name,descr) - self.questItemIds = [ALLIGATOR_TOOTH, TORN_MAP_FRAGMENT] - - def onEvent (self,event,st) : - htmltext = event - amount = st.getQuestItemsCount(ALLIGATOR_TOOTH) - maps = divmod(st.getQuestItemsCount(TORN_MAP_FRAGMENT),10) - if event == "30895-00a.htm" : - st.exitQuest(1) - elif event == "1" : - st.setState(State.STARTED) - st.set("cond","1") - htmltext = "30895-02.htm" - st.playSound("ItemSound.quest_accept") - elif event == "30895-06.htm" : - if st.getQuestItemsCount(TORN_MAP_FRAGMENT)>=10 : - htmltext = "30895-07.htm" - elif event == "30895-05.htm" : - if amount : - st.giveItems(ADENA,amount*300) - st.takeItems(ALLIGATOR_TOOTH,-1) - st.playSound("ItemSound.quest_itemget") - htmltext = "30895-05a.htm" - if amount > 99 : - htmltext = "30895-05b.htm" - item=RANDOM_REWARDS[self.getRandom(len(RANDOM_REWARDS))] - st.rewardItems(item[0],self.getRandom(item[1])+1) - elif event == "30895-08.htm" : - st.giveItems(PIRATES_TREASURE_MAP,maps[0]) - st.takeItems(TORN_MAP_FRAGMENT,maps[0]*10) - elif event == "30895-09.htm" : - st.exitQuest(1) - st.playSound("ItemSound.quest_finish") - return htmltext - - def onTalk (self,npc,player): - htmltext = Quest.getNoQuestMsg(player) - st = player.getQuestState(qn) - if not st : return htmltext - - npcId = npc.getId() - id = st.getState() - level = player.getLevel() - cond = st.getInt("cond") - if id == State.CREATED : - if level>=38 : - htmltext = "30895-01.htm" - else : - htmltext = "30895-00.htm" - elif cond==1 : - htmltext = "30895-03.htm" - return htmltext - - def onKill(self,npc,player,isPet): - partyMember = self.getRandomPartyMemberState(player,State.STARTED) - if not partyMember : return - st = partyMember.getQuestState(qn) - - npcId = npc.getId() - cond = st.getInt("cond") - random = self.getRandom(100) - if random<=CHANCE : - st.giveItems(ALLIGATOR_TOOTH,1) - st.playSound("ItemSound.quest_itemget") - if random<=CHANCE2 and st.getQuestItemsCount(TORN_MAP_FRAGMENT)<10 : - st.giveItems(TORN_MAP_FRAGMENT,1) - return - -QUEST = Quest(354,qn,"Conquest Of Alligator Island") - -QUEST.addStartNpc(30895) - -QUEST.addTalkId(30895) - -for i in range(20804,20809)+[20991] : - QUEST.addKillId(i) \ No newline at end of file diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-01.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-01.htm similarity index 70% rename from L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-01.htm rename to L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-01.htm index bc5c060df4..59f6138b63 100644 --- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-01.htm +++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-01.htm @@ -1,7 +1,7 @@ -<html><body>Warehouse Keeper Kluck:<br> -Whew! There's no way I can keep up this pace! Hello, friend! Am I glad to see you!<br> +<html><body>Warehouse Freightman Kluck:<br> +Whew! There's no way I can keep up this pace! Hello, friend! Am I glad to see you! <br> For as long as anyone can remember, Dwarves have been traders, am I right? And now come the Humans, with their friends in high places, taking over the trade routes in Innadril, Abella, and Giran! Who do they think they are?<br> Boycott the Humans! We're establishing a free trade zone near Alligator Island! The only problem is, that place is crawling with horrible monsters.<br> -Would you help us get rid of them? If you'd like, we can draw up a contract right now!<br> -<a action="bypass -h Quest 354_ConquestOfAlligatorIsland 1">"I will help you."</a> -</body></html> +Would you help us get rid of them? If you'd like, we can draw up a Contract right now!<br> +<a action="bypass -h Quest Q00354_ConquestOfAlligatorIsland 30895-02.html">"I will help you."</a> +</body></html> \ No newline at end of file diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-02.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-02.html new file mode 100644 index 0000000000..c131ac2635 --- /dev/null +++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-02.html @@ -0,0 +1,5 @@ +<html><body>Warehouse Freightman Kluck:<br> +Well, then, here you go! Sign on the dotted line... Now, I'll read the Contract to you.<br> +Adventurer agrees to go to Alligator Island and kill the <font color="LEVEL">Crokian lads, dailaon lads, Crokian lad warriors, farhite lads, nos lads, and the Swamp Tribe</font> and bring back their teeth as proof.<br1>And Kluck, that's me, will count the number of teeth brought back and reward said adventurer accordingly.<br1>Third, if said adventurer brings back 100 or more teeth at a time, he or she will receive an additional bonus.<br1>Fourth, while carrying out the task specified in the Contract on Alligator Island, if the adventurer finds items other than the teeth of monsters, the adventurer will own those items free and clear.<br> +Do these terms meet with your approval? Then, the Contract is formally established between us! Alligator Island is to the north, across the sea from here. This work will be hard for you to carry out by yourself. You'd better find other adventurers to go with you. If you wish, I will establish a Contract with them as well. Sorry, there's no bridge... You look rather strapping... Couldn't you swim there? +</body></html> \ No newline at end of file diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-03.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-03.html new file mode 100644 index 0000000000..b45680604d --- /dev/null +++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-03.html @@ -0,0 +1,5 @@ +<html><body>Warehouse Freightman Kluck:<br> +I'm going crazy here! So many things to do... And nothing seems to be going right... What is the guild thinking, giving me such an assignment? What could they possibly expect me to do? Sometimes I wonder why I stay in this stupid guild!<br> +How long have you been standing there? I was just talking to myself. You're an adventurer, am I right? I don't have any work to give you right now. Come back later.<br> +(This quest may only be undertaken by a character of level 38 or above.) +</body></html> \ No newline at end of file diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-04.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-04.html new file mode 100644 index 0000000000..4fca7ef867 --- /dev/null +++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-04.html @@ -0,0 +1,7 @@ +<html><body>Warehouse Freightman Kluck:<br> +Good to see you again, my friend... Have you brought teeth? Or perhaps you have a question...?<br> +<a action="bypass -h Quest Q00354_ConquestOfAlligatorIsland 30895-05.html">"Tell me more about the Contract I signed."</a><br> +<a action="bypass -h Quest Q00354_ConquestOfAlligatorIsland ADENA">"Here are the teeth."</a><br> +<a action="bypass -h Quest Q00354_ConquestOfAlligatorIsland 30895-09.html">"I have work to do."</a><br> +<a action="bypass -h Quest Q00354_ConquestOfAlligatorIsland 30895-10.html">"I want out of the Contract."</a> +</body></html> \ No newline at end of file diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-05.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-05.html new file mode 100644 index 0000000000..4b73d69bdc --- /dev/null +++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-05.html @@ -0,0 +1,6 @@ +<html><body>Warehouse Freightman Kluck:<br> +OK, one more time...<br><br> +Adventurer agrees to go to Alligator Island and kill the <font color="LEVEL">Crokian lads, dailaon lads, Crokian lad warriors, farhite lads, nos lads, and the Swamp Tribe</font> and bring back their teeth as proof.<br1>And Kluck, that's me, will count the number of teeth brought back and reward said adventurer accordingly.<br1>Third, if said adventurer brings back 100 or more teeth at a time, he or she will receive an additional bonus.<br1>Fourth, while carrying out the task specified in the Contract on Alligator Island, if the adventurer finds items other than the teeth of monsters, the adventurer will own those items free and clear.<br> +Alligator Island is to the north, across the sea from here. Swim there! You look like you could use the exercise!<br> +<a action="bypass -h Quest Q00354_ConquestOfAlligatorIsland 30895-04.html">Back</a> +</body></html> \ No newline at end of file diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-06.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-06.html new file mode 100644 index 0000000000..52fd003c9b --- /dev/null +++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-06.html @@ -0,0 +1,6 @@ +<html><body>Warehouse Freightman Kluck:<br> +Hey, impressive! You've brought over 100! Here is your reward! And, per the Contract, your <font color="LEVEL">bonus</font> as well!<br> +I appreciate your hard work! Hopefully soon our dream of a free trade zone without tax will be realized. Keep up the good work! <br> +<a action="bypass -h Quest Q00354_ConquestOfAlligatorIsland 30895-09.html">"I'll be getting back to work now."</a><br> +<a action="bypass -h Quest Q00354_ConquestOfAlligatorIsland 30895-10.html">"I want out of the Contract."</a> +</body></html> \ No newline at end of file diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-07.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-07.html new file mode 100644 index 0000000000..5c55cc24bc --- /dev/null +++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-07.html @@ -0,0 +1,5 @@ +<html><body>Warehouse Freightman Kluck:<br> +Let's see, teeth are worth... Here you go! Thank you for your hard work! Hopefully soon the island will be completely free of monsters and our dream of a free trade zone without tax can be realized! Keep up the good work!<br> +<a action="bypass -h Quest Q00354_ConquestOfAlligatorIsland 30895-09.html">"I'll get back to work now."</a><br> +<a action="bypass -h Quest Q00354_ConquestOfAlligatorIsland 30895-10.html">"I want out of the Contract."</a> +</body></html> \ No newline at end of file diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-05.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-08.html similarity index 75% rename from L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-05.htm rename to L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-08.html index 65475aba68..3c85d5d72b 100644 --- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-05.htm +++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-08.html @@ -1,3 +1,3 @@ -<html><body>Warehouse Keeper Kluck:<br> +<html><body>Warehouse Freightman Kluck:<br> Are you kidding? You expect something for nothing? Not around here, my friend! Go to Alligator Island immediately and bring me back some teeth! Do I need to read the Contract to you again? -</body></html> +</body></html> \ No newline at end of file diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-06.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-09.html similarity index 57% rename from L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-06.htm rename to L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-09.html index 3a113b2d71..0429bf8b3a 100644 --- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-06.htm +++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-09.html @@ -1,3 +1,3 @@ -<html><body>Warehouse Keeper Kluck:<br> +<html><body>Warehouse Freightman Kluck:<br> That's a good adventurer... Heh heh... This free trade zone will benefit us all! -</body></html> +</body></html> \ No newline at end of file diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-09.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-10.html similarity index 59% rename from L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-09.htm rename to L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-10.html index 2c08b22beb..e25d530c49 100644 --- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/354_ConquestOfAlligatorIsland/30895-09.htm +++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-10.html @@ -1,3 +1,3 @@ -<html><body>Warehouse Keeper Kluck:<br> -What a pity... You won't be easy to replace... I appreciate your contribution to our cause... When the free trade zone on Alligator Island becomes a reality and I have opened my own shop, you must visit me there. May the prosperty of Maphr be with you always... -</body></html> +<html><body>Warehouse Freightman Kluck:<br> +What a pity... You won't be easy to replace... I appreciate your contribution to our cause... When the free trade zone on Alligator Island becomes a reality and I have opened my own shop, you must visit me there. May the prosperity of Maphr be with you always... +</body></html> \ No newline at end of file diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-11.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-11.html new file mode 100644 index 0000000000..d1731bfed2 --- /dev/null +++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-11.html @@ -0,0 +1,8 @@ +<html><body>Warehouse Freightman Kluck:<br> +Ah, you again... Have you brought me teeth? Or is it another question? What's that, a piece of paper?<br> +<a action="bypass -h Quest Q00354_ConquestOfAlligatorIsland 30895-05.html">"I have a question about the Contract."</a><br> +<a action="bypass -h Quest Q00354_ConquestOfAlligatorIsland ADENA">"I've brought you teeth."</a><br> +<a action="bypass -h Quest Q00354_ConquestOfAlligatorIsland 30895-09.html">"I've got work to do."</a><br> +<a action="bypass -h Quest Q00354_ConquestOfAlligatorIsland 30895-10.html">"I want out of the Contract."</a><br> +<a action="bypass -h Quest Q00354_ConquestOfAlligatorIsland REWARD">"Yes, it seems to be a piece of a Map..."</a> +</body></html> \ No newline at end of file diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-12.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-12.html new file mode 100644 index 0000000000..41dc7694e1 --- /dev/null +++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-12.html @@ -0,0 +1,4 @@ +<html><body>Warehouse Freightman Kluck:<br> +Hmm... A piece of Map, eh? I bet if we collected about 10 pieces just like it, we'd have a complete Map!<br> +Come to think of it, there is a rumor that part of the legendary treasure of Zaken the pirate is buried on Alligator Island. Zaken's boatswain's lover stole it and hid it there... +</body></html> \ No newline at end of file diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-13.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-13.html new file mode 100644 index 0000000000..b590639dd8 --- /dev/null +++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/30895-13.html @@ -0,0 +1,5 @@ +<html><body>Warehouse Freightman Kluck:<br> +Ah, yes, these pieces definitely go together... Just like doing a puzzle! What have we here? This mark must show where the treasure is hidden!<br> +This must surely be the Map to the legendary treasure of Zaken the pirate!<br> +Hmm, I suppose, according to the terms of the Contract, that the Map rightfully belongs to you. Go and see <font color="LEVEL">Trader Espen</font> in the weapons shop. He is an expert on Zaken. All pirates, actually... +</body></html> \ No newline at end of file diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/Q00354_ConquestOfAlligatorIsland.java b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/Q00354_ConquestOfAlligatorIsland.java new file mode 100644 index 0000000000..40e8e0d111 --- /dev/null +++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00354_ConquestOfAlligatorIsland/Q00354_ConquestOfAlligatorIsland.java @@ -0,0 +1,204 @@ +/* + * Copyright (C) 2004-2013 L2J DataPack + * + * This file is part of L2J DataPack. + * + * L2J DataPack 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. + * + * L2J DataPack 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 <http://www.gnu.org/licenses/>. + */ +package quests.Q00354_ConquestOfAlligatorIsland; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jserver.Config; +import com.l2jserver.gameserver.enums.QuestSound; +import com.l2jserver.gameserver.model.actor.L2Npc; +import com.l2jserver.gameserver.model.actor.instance.L2PcInstance; +import com.l2jserver.gameserver.model.quest.Quest; +import com.l2jserver.gameserver.model.quest.QuestState; +import com.l2jserver.gameserver.model.quest.State; +import com.l2jserver.gameserver.util.Util; + +/** + * Conquest of Alligator Island (354) + * @author Adry_85 + */ +public class Q00354_ConquestOfAlligatorIsland extends Quest +{ + // NPC + private static final int KLUCK = 30895; + // Items + private static final int ALLIGATOR_TOOTH = 5863; + private static final int MYSTERIOUS_MAP_PIECE = 5864; + private static final int PIRATES_TREASURE_MAP = 5915; + // Misc + private static final int MIN_LEVEL = 38; + // Mobs + private static final Map<Integer, Integer> MOB1 = new HashMap<>(); + private static final Map<Integer, Integer> MOB2 = new HashMap<>(); + static + { + MOB1.put(20804, 84); // crokian_lad + MOB1.put(20805, 91); // dailaon_lad + MOB1.put(20806, 88); // crokian_lad_warrior + MOB1.put(20807, 92); // farhite_lad + MOB2.put(22208, 14); // nos_lad + MOB2.put(20991, 69); // tribe_of_swamp + } + + private Q00354_ConquestOfAlligatorIsland(int questId, String name, String descr) + { + super(questId, name, descr); + addKillId(MOB1.keySet()); + addKillId(MOB2.keySet()); + addStartNpc(KLUCK); + addTalkId(KLUCK); + registerQuestItems(ALLIGATOR_TOOTH, MYSTERIOUS_MAP_PIECE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = player.getQuestState(getName()); + if (st == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "30895-04.html": + case "30895-05.html": + case "30895-09.html": + { + htmltext = event; + break; + } + case "30895-02.html": + { + st.startQuest(); + htmltext = event; + break; + } + case "ADENA": + { + final int count = (int) st.getQuestItemsCount(ALLIGATOR_TOOTH); + if (count >= 100) + { + st.giveAdena((count * 220) + 10700, true); + st.takeItems(ALLIGATOR_TOOTH, -1); + htmltext = "30895-06.html"; + } + else if ((count > 0) && (count < 100)) + { + st.giveAdena((count * 220) + 10700, true); + st.takeItems(ALLIGATOR_TOOTH, -1); + htmltext = "30895-07.html"; + } + else if (count == 0) + { + htmltext = "30895-08.html"; + } + break; + } + case "30895-10.html": + { + st.exitQuest(true, true); + htmltext = event; + break; + } + case "REWARD": + { + final int count = (int) st.getQuestItemsCount(MYSTERIOUS_MAP_PIECE); + if ((count > 0) && (count < 10)) + { + htmltext = "30895-12.html"; + } + else if (count >= 10) + { + st.giveItems(PIRATES_TREASURE_MAP, 1); + st.takeItems(MYSTERIOUS_MAP_PIECE, 10); + htmltext = "30895-13.html"; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon) + { + final QuestState st = getRandomPartyMemberState(player, -1, 3, npc); + if ((st != null) && st.isStarted() && Util.checkIfInRange(1500, npc, player, false)) + { + int npcId = npc.getId(); + if (MOB1.containsKey(npcId)) + { + float chance = MOB1.get(npcId) * Config.RATE_QUEST_DROP; + if (getRandom(100) < chance) + { + st.giveItems(ALLIGATOR_TOOTH, 1); + st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + else if (MOB2.containsKey(npcId)) + { + float chance = MOB2.get(npcId) * Config.RATE_QUEST_DROP; + st.giveItems(ALLIGATOR_TOOTH, getRandom(100) < chance ? 2 : 1); + st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + + if (getRandom(10) == 5) + { + st.giveItems(MYSTERIOUS_MAP_PIECE, 1); + } + } + return super.onKill(npc, player, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + QuestState st = player.getQuestState(getName()); + String htmltext = getNoQuestMsg(player); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getLevel() >= MIN_LEVEL) ? "30895-01.htm" : "30895-03.html"; + break; + } + case State.STARTED: + { + if (st.isCond(1)) + { + htmltext = (!st.hasQuestItems(MYSTERIOUS_MAP_PIECE)) ? "30895-04.html" : "30895-11.html"; + } + } + } + return htmltext; + } + + public static void main(String args[]) + { + new Q00354_ConquestOfAlligatorIsland(354, Q00354_ConquestOfAlligatorIsland.class.getSimpleName(), "Conquest of Alligator Island"); + } +} diff --git a/L2J_DataPack_BETA/dist/sql/game/updates/20131022update.sql b/L2J_DataPack_BETA/dist/sql/game/updates/20131022update.sql new file mode 100644 index 0000000000..c6e42e47ef --- /dev/null +++ b/L2J_DataPack_BETA/dist/sql/game/updates/20131022update.sql @@ -0,0 +1 @@ +UPDATE character_quests SET name='Q00354_ConquestOfAlligatorIsland' WHERE name='354_ConquestOfAlligatorIsland'; \ No newline at end of file -- GitLab