diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30006-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30006-01.html new file mode 100644 index 0000000000..da098fe07a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30006-01.html @@ -0,0 +1,4 @@ +Roxxy:
+A letter...for me? From Darin? What does it say, I wonder... Oh my, I had no idea he had these feelings for me. I wish he hadn't waited so long to tell me!
+Please give Darin my handkerchief as a pledge of my affection for him. And tell him...tell him not to waste any more time. Tell him to come see me right away! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30006-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30006-02.html new file mode 100644 index 0000000000..c92e88ada9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30006-02.html @@ -0,0 +1,3 @@ +Roxxy:
+You haven't given my handkerchief to Darin yet? He must be suffering terribly waiting for my answer. Please put his mind at ease. Hurry to him and tell him that I have feelings for him as well. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30006-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30006-03.html new file mode 100644 index 0000000000..825834cf00 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30006-03.html @@ -0,0 +1,4 @@ +Roxxy:
+Did you give Darin my handkerchief? What did he say? Oh... I thought he would rush over and ask permission to court me, but instead...
+Sometimes he acts just like a shy little boy! Although I have to confess that that's a large part of why I find him so attractive. I think he brings out the mothering instinct in me... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30033-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30033-01.html new file mode 100644 index 0000000000..728bc0d849 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30033-01.html @@ -0,0 +1,4 @@ +Magister Baulro:
+Darin sent you, eh? Well, well... He's a fine lad, but far too shy for his own good. I'm glad he's finally decided to tell Roxxy his feelings, though. None but the brave deserve the fair, eh!
+Here's the "magic potion" he ordered. Just between us, it's nothing more than water drawn from the Temple well! Calm down -- I really do have Darin's best interests at heart. Think about it: if he believes that this will make him more eloquent, his self-confidence will soar and he really will find the words he needs. Now take it to him, and remember: not a word about the ingredients! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30033-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30033-02.html new file mode 100644 index 0000000000..ac1bdb3a60 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30033-02.html @@ -0,0 +1,3 @@ +Magister Baulro:
+Take this potion to Darin. I'm sure he's waiting anxiously for your return! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-01.html new file mode 100644 index 0000000000..85ca5d42ca --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-01.html @@ -0,0 +1,5 @@ +Darin:
+What's more dangerous than a Knight's sword or a Wizard's staff? That thing we call love. More silently than a thief, swifter than a sunset it comes upon you and captures your soul. The minstrels were right; it's sweet and bitter all at once! One moment my heart soars to the heights of joy, the next it plummets into the depths of despair. Can you explain it?
+Ah, but I see you are focused on the world of adventure, not romance. Just remember: one day you too may fall under love's irresistible spell...
+(Only characters who are level 2 and above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-02.html new file mode 100644 index 0000000000..73a4ce03b4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-02.html @@ -0,0 +1,4 @@ +Darin:
+What's more dangerous than a Knight's sword or a Wizard's staff? That thing we call love. More silently than a thief, swifter than a sunset it comes upon you and captures your soul. The minstrels were right; it's sweet and bitter all at once! I cannot concentrate, I cannot sleep, I cannot eat!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-03.html new file mode 100644 index 0000000000..c2d9eb92c5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-03.html @@ -0,0 +1,5 @@ +Darin:
+I am in love with Roxxy. Do you know her? She's our village Gatekeeper.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-04.html new file mode 100644 index 0000000000..50d1f13614 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-04.html @@ -0,0 +1,6 @@ +Darin:
+You don't know Roxxy?! She is the most beautiful woman on Talking Island... She is also very intelligent -- she was even a student at Oren's Ivory Tower! Now she belongs to the Gatekeeper Guild, able to bend time and space to connect many villages.
+Oh, why would a woman like that ever return the love I feel for her? For months, I vowed every day to tell her how I feel, and every day my courage deserted me. What would I do if she rejected me? Now I've written her a love letter, but I can't bring myself to deliver it.
+May I ask a favor? Would you deliver my letter to Roxxy?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-05.html new file mode 100644 index 0000000000..b4eb12c796 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-05.html @@ -0,0 +1,5 @@ +Darin:
+Ah, then you can see why I am so tormented! She is an amazing woman...in fact, why would a woman like that ever return the love I feel for her? For months, I vowed every day to tell her how I feel, and every day my courage deserted me. What would I do if she rejected me? Now I've written her a love letter, but I can't bring myself to deliver it.
+May I ask a favor? Would you deliver my letter to Roxxy?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-06.htm new file mode 100644 index 0000000000..cfaa438e23 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-06.htm @@ -0,0 +1,4 @@ +Darin:
+Thank you! Do you know the Temple of Einhasad? You will find Roxxy at the well in front of the temple.
+Please give her this letter. Please hurry -- my nerves can't stand the strain of waiting! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-07.html new file mode 100644 index 0000000000..08dc5e8def --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-07.html @@ -0,0 +1,3 @@ +Darin:
+You haven't given my letter to Roxxy yet?! Please hurry! I'm so anxious that I can't eat or sleep. I must know her answer! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-08.html new file mode 100644 index 0000000000..e5e651848c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-08.html @@ -0,0 +1,5 @@ +Darin:
+Roxxy's handkerchief! Oh, she really likes me! It seems like a dream... Thank you! If not for you, I would never have known..
+I must speak with her. So much to do: buy flowers, bathe, get dressed in my finest clothes... Oh, I must hurry! I hate to impose, but would you do me another favor?
+Baulro promised that he would brew a magic potion to make me more eloquent. I know how much a woman like Roxxy values intelligence... It wasn't cheap, but I couldn't afford not to buy it. Please take this receipt to Baulro, and he will give you the potion to bring back to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-09.html new file mode 100644 index 0000000000..91058717a2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-09.html @@ -0,0 +1,4 @@ +Darin:
+"Your eyes are like...puddles of moonlight..."
+Ah! You haven't brought Baulro's potion? Please hurry -- I'm writing a poem for Roxxy and I need all the help I can get. Everything must be perfect! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-10.html new file mode 100644 index 0000000000..22565f9ab6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/30048-10.html @@ -0,0 +1,4 @@ +Darin:
+You brought the potion? Thank you! I've already bought roses and even finished the poem I was writing for Roxxy. Now that I have Baulro's potion, all that's left is for me to do is to go and talk to her. I know in my heart this is meant to be! I couldn't have done any of this without your help.
+Please accept this small gift as a token of my gratitude. I'm afraid it's not much, but please know you have my undying thanks! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/Q00001_LettersOfLove.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/Q00001_LettersOfLove.java new file mode 100644 index 0000000000..954aa1d892 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00001_LettersOfLove/Q00001_LettersOfLove.java @@ -0,0 +1,234 @@ +/* + * 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.Q00001_LettersOfLove; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.network.NpcStringId; + +/** + * Letters of Love (1) + * @author Zoey76 + */ +public class Q00001_LettersOfLove extends Quest +{ + // NPCs + private static final int DARIN = 30048; + private static final int ROXXY = 30006; + private static final int BAULRO = 30033; + // Items + private static final int DARINS_LETTER = 687; + private static final int ROXXYS_KERCHIEF = 688; + private static final int DARINS_RECEIPT = 1079; + private static final int BAULROS_POTION = 1080; + private static final int NECKLACE_OF_KNOWLEDGE = 906; + // Misc + private static final int MIN_LEVEL = 2; + + public Q00001_LettersOfLove() + { + super(1); + addStartNpc(DARIN); + addTalkId(DARIN, ROXXY, BAULRO); + registerQuestItems(DARINS_LETTER, ROXXYS_KERCHIEF, DARINS_RECEIPT, BAULROS_POTION); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "30048-03.html": + case "30048-04.html": + case "30048-05.html": + { + htmltext = event; + break; + } + case "30048-06.htm": + { + if (player.getLevel() >= MIN_LEVEL) + { + st.startQuest(); + giveItems(player, DARINS_LETTER, 1); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getLevel() < MIN_LEVEL) ? "30048-01.html" : "30048-02.html"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + switch (npc.getId()) + { + case DARIN: + { + htmltext = "30048-07.html"; + break; + } + case ROXXY: + { + if (hasQuestItems(player, DARINS_LETTER) && !hasQuestItems(player, ROXXYS_KERCHIEF)) + { + takeItems(player, DARINS_LETTER, -1); + giveItems(player, ROXXYS_KERCHIEF, 1); + st.setCond(2, true); + htmltext = "30006-01.html"; + } + break; + } + } + break; + } + case 2: + { + switch (npc.getId()) + { + case DARIN: + { + if (hasQuestItems(player, ROXXYS_KERCHIEF)) + { + takeItems(player, ROXXYS_KERCHIEF, -1); + giveItems(player, DARINS_RECEIPT, 1); + st.setCond(3, true); + htmltext = "30048-08.html"; + } + break; + } + case ROXXY: + { + if (hasQuestItems(player, ROXXYS_KERCHIEF)) + { + htmltext = "30006-02.html"; + } + break; + } + } + break; + } + case 3: + { + switch (npc.getId()) + { + case DARIN: + { + if (hasQuestItems(player, DARINS_RECEIPT) || !hasQuestItems(player, BAULROS_POTION)) + { + htmltext = "30048-09.html"; + } + break; + } + case ROXXY: + { + if (hasQuestItems(player, DARINS_RECEIPT) || hasQuestItems(player, BAULROS_POTION)) + { + htmltext = "30006-03.html"; + } + break; + } + case BAULRO: + { + if (hasQuestItems(player, DARINS_RECEIPT)) + { + takeItems(player, DARINS_RECEIPT, -1); + giveItems(player, BAULROS_POTION, 1); + st.setCond(4, true); + htmltext = "30033-01.html"; + } + else if (hasQuestItems(player, BAULROS_POTION)) + { + htmltext = "30033-02.html"; + } + break; + } + } + break; + } + case 4: + { + switch (npc.getId()) + { + case DARIN: + { + // TODO: Beside this message something should be set for the Newbie Guide. + showOnScreenMsg(player, NpcStringId.DELIVERY_DUTY_COMPLETE_N_GO_FIND_THE_NEWBIE_HELPER, 2, 5000); + giveItems(player, NECKLACE_OF_KNOWLEDGE, 1); + addExpAndSp(player, 5672, 446); + giveAdena(player, 2466, false); + st.exitQuest(false, true); + htmltext = "30048-10.html"; + break; + } + case BAULRO: + { + if (hasQuestItems(player, BAULROS_POTION)) + { + htmltext = "30033-02.html"; + } + break; + } + case ROXXY: + { + if (hasQuestItems(player, BAULROS_POTION)) + { + htmltext = "30006-03.html"; + } + break; + } + } + break; + } + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30146-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30146-01.html new file mode 100644 index 0000000000..6aefc1b94a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30146-01.html @@ -0,0 +1,4 @@ +Gatekeeper Mirabel:
+Again!? Sigh... Every year around this time, some poor soul always seems to fall head-over-heels for sister. But what does any of this have to do with me? I have no idea what my sister thinks of Arujien or anyone else; from what I can tell, her heart has never been warmed by thoughts of love and romance.
+Perhaps I'm mistaken, though -- Greenis and I have never been particularly close, and I'm probably the last person she would confide in. Perhaps my Uncle Herbiel would know more. He raised us like his own children, after all. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30146-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30146-02.html new file mode 100644 index 0000000000..988514f4af --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30146-02.html @@ -0,0 +1,3 @@ +Gatekeeper Mirabel:
+Stop bothering me with this foolishness! I warn you: I'm this close to sending you somewhere where you'll never bother anyone ever again! If you want insights into my sister's romantic life, go pester my uncle, Trader Herbiel. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30150-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30150-01.html new file mode 100644 index 0000000000..fb32548a7d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30150-01.html @@ -0,0 +1,4 @@ +Trader Herbiel:
+My niece Greenis? Yes, I raised her and her sister after my brother and his wife were killed. She is a woman now, of course, but still as innocent as a child about the ways of the world.
+Arujien, eh? A fine lad, though a tad cautious. Still, I'm sure he and Greenis would be a good match. I can't imagine that she would object... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30150-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30150-02.html new file mode 100644 index 0000000000..90fa59d711 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30150-02.html @@ -0,0 +1,3 @@ +Trader Herbiel:
+Tell Arujien he has my blessing to court Greenis. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30157-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30157-01.html new file mode 100644 index 0000000000..ace88e4b25 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30157-01.html @@ -0,0 +1,3 @@ +Magister Greenis:
+Arujien? I had heard rumors that he had feelings for me, but I never gave them any thought. I wish he had spoken to me personally rather than send a messenger! This is very awkward... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30157-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30157-02.html new file mode 100644 index 0000000000..5e1b885d6b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30157-02.html @@ -0,0 +1,5 @@ +Magister Greenis:
+Oh, Arujien sent me a Book of Poems? I see...
+Please know that I appreciate his thoughtfulness, but...
+This is very difficult for me to say. I must write him a letter explaining that someone else has already captured my heart... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30157-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30157-03.html new file mode 100644 index 0000000000..f6147e6dd5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30157-03.html @@ -0,0 +1,3 @@ +Magister Greenis:
+You haven't delivered my reply to Arujien yet? Please...sometimes the kindest cut is the one delivered swiftly. Your hesitation simply prolongs a a painful situation. Please go to him at once. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-00.htm new file mode 100644 index 0000000000..9d33194cd8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-00.htm @@ -0,0 +1,5 @@ +Arujien:
+Have you ever been in love? Have you ever felt your heart leap at the sight of your beloved, or your pulse race at the sound of their voice?
+No? I know members of your race laugh at such emotions. What a pity! You have no idea how much you're missing...
+(Only Elves and Humans may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-01.html new file mode 100644 index 0000000000..4e38f60197 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-01.html @@ -0,0 +1,5 @@ +Arujien:
+Have you ever been in love? Have you ever felt your heart leap at the sight of your beloved, or your pulse race at the sound of her voice? I can think of nothing else; I cannot eat or sleep or even work!
+But I lack the courage to confess my feelings, so I suffer in silence. But I must know! I have decided to pour my heart out to her in a letter, but who will deliver it for me? It must be someone trustworthy -- this is too important to entrust to just anyone!
+(Only Elves and Humans who are at least level 2 may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-02.htm new file mode 100644 index 0000000000..32aa4123dc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-02.htm @@ -0,0 +1,4 @@ +Arujien:
+Have you ever been in love? Have you ever felt your heart leap at the sight of your beloved, or your pulse race at the sound of her voice? I can think of nothing else; I cannot eat or sleep or even work! If she would only have me, I would gladly devote the rest of my life to making her happy...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-03.html new file mode 100644 index 0000000000..7d2ce3f768 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-03.html @@ -0,0 +1,6 @@ +Arujien:
+If I tell you her name, you must give me your word that you will not reveal it -- I would sooner die than embarrass her publicly! Well... Her name is Greenis. Even saying her name aloud makes my heart beat faster!
+But I must know if she has feelings for me as well. If she does not, I won't burden her with my love.
+Will you help me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-04.htm new file mode 100644 index 0000000000..c8c18ae57e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-04.htm @@ -0,0 +1,5 @@ +Arujien:
+Thank you! I won't forget your kindness.
+Obviously, I can't approach Greenis directly -- what would people say! -- but she has a younger sister, Gatekeeper Mirabel. She will know Greenis' heart, and she can be trusted to be discreet. Take this letter to Mirabel and return to me with her answer.
+My happiness depends on you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-05.html new file mode 100644 index 0000000000..d437e45a2c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-05.html @@ -0,0 +1,4 @@ +Arujien:
+Have you learned anything about Greenis' feelings for me? What did Mirabel say? Oh, you haven't spoken to her yet?!
+Please hurry! This waiting is tearing me apart! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-06.html new file mode 100644 index 0000000000..cd3ec30bac --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-06.html @@ -0,0 +1,3 @@ +Arujien:
+So Mirabel said to ask Trader Herbiel? He is Greenis' uncle, of course, but it would be awkward for me to approach him on so...sensitive...a subject. But if Mirabel thinks he can help... Perhaps you would be willing to speak with him for me? Please show him my letter, then hurry back and give me his advice! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-07.html new file mode 100644 index 0000000000..048337407e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-07.html @@ -0,0 +1,5 @@ +Arujien:
+What did Herbiel say? Do I have a place in Greenis' heart? Tell me! You have the power to make me the happiest Elf in the world...or to shatter my heart to pieces.
+
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-08.html new file mode 100644 index 0000000000..ac2fc620f4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-08.html @@ -0,0 +1,3 @@ +Arujien:
+Eva be praised! I want to shout my happiness to the whole forest! I have one more favor to ask of you, my friend. I've written a book of poems to give Greenis, but now I find myself a little embarrassed to deliver it in person. Some of the poems are rather...intimate. Perhaps you could take it to her and come tell me her reaction? Whatever Herbiel says, I must hear it from her lips before I can fully believe it... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-09.html new file mode 100644 index 0000000000..5c31e2ccc3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-09.html @@ -0,0 +1,4 @@ +Arujien:
+No...I can't believe it! How can I go on living with the pain of her rejection? I am nothing more than love's fool. Pity me, my friend!
+Well, thank you for your efforts on my behalf. Take this for your trouble -- I have no use for worldly possessions now... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-10.html new file mode 100644 index 0000000000..735c26a601 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-10.html @@ -0,0 +1,3 @@ +Arujien:
+Have you given Greenis my book of poems yet? No?! Please hurry. My nerves can't stand the strain of waiting! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-11.html new file mode 100644 index 0000000000..2e95b0b9b5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/30223-11.html @@ -0,0 +1,4 @@ +Arujien:
+Ah, so this is where my love has brought me! How I wish I had never said anything to her. Ignorance was bliss compared to the pain of the truth! How will I ever show my face in the village again?
+Well, you've been a faithful friend, and I'm sure you did the best you could. Take this for your trouble -- I have no use for worldly possessions now, and I want you to have it... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/Q00002_WhatWomenWant.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/Q00002_WhatWomenWant.java new file mode 100644 index 0000000000..ecbd2afd0f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00002_WhatWomenWant/Q00002_WhatWomenWant.java @@ -0,0 +1,193 @@ +/* + * 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.Q00002_WhatWomenWant; + +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.network.NpcStringId; + +/** + * What Women Want (2) + * @author malyelfik + */ +public class Q00002_WhatWomenWant extends Quest +{ + // NPCs + private static final int ARUJIEN = 30223; + private static final int MIRABEL = 30146; + private static final int HERBIEL = 30150; + private static final int GREENIS = 30157; + // Items + private static final int ARUJIENS_LETTER1 = 1092; + private static final int ARUJIENS_LETTER2 = 1093; + private static final int ARUJIENS_LETTER3 = 1094; + private static final int POETRY_BOOK = 689; + private static final int GREENIS_LETTER = 693; + private static final int EARRING = 113; + // Misc + private static final int MIN_LEVEL = 2; + + public Q00002_WhatWomenWant() + { + super(2); + addStartNpc(ARUJIEN); + addTalkId(ARUJIEN, MIRABEL, HERBIEL, GREENIS); + registerQuestItems(ARUJIENS_LETTER1, ARUJIENS_LETTER2, ARUJIENS_LETTER3, POETRY_BOOK, GREENIS_LETTER); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + + String htmltext = event; + switch (event) + { + case "30223-04.htm": + st.startQuest(); + giveItems(player, ARUJIENS_LETTER1, 1); + break; + case "30223-08.html": + takeItems(player, ARUJIENS_LETTER3, -1); + giveItems(player, POETRY_BOOK, 1); + st.setCond(4, true); + break; + case "30223-09.html": + giveAdena(player, 450, true); + st.exitQuest(false, true); + // Newbie Guide + showOnScreenMsg(player, NpcStringId.DELIVERY_DUTY_COMPLETE_N_GO_FIND_THE_NEWBIE_HELPER, 2, 5000); + addExpAndSp(player, 4254, 335); + giveAdena(player, 1850, true); + break; + case "30223-03.html": + break; + default: + htmltext = null; + break; + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + switch (npc.getId()) + { + case ARUJIEN: + switch (st.getState()) + { + case State.CREATED: + htmltext = ((player.getRace() != Race.ELF) && (player.getRace() != Race.HUMAN)) ? "30223-00.htm" : (player.getLevel() >= MIN_LEVEL) ? "30223-02.htm" : "30223-01.html"; + break; + case State.STARTED: + switch (st.getCond()) + { + case 1: + htmltext = "30223-05.html"; + break; + case 2: + htmltext = "30223-06.html"; + break; + case 3: + htmltext = "30223-07.html"; + break; + case 4: + htmltext = "30223-10.html"; + break; + case 5: + giveItems(player, EARRING, 1); + st.exitQuest(false, true); + htmltext = "30223-11.html"; + // Newbie Guide + showOnScreenMsg(player, NpcStringId.DELIVERY_DUTY_COMPLETE_N_GO_FIND_THE_NEWBIE_HELPER, 2, 5000); + addExpAndSp(player, 4254, 335); + giveAdena(player, 1850, true); + break; + } + break; + case State.COMPLETED: + htmltext = getAlreadyCompletedMsg(player); + break; + } + break; + case MIRABEL: + if (st.isStarted()) + { + if (st.isCond(1)) + { + st.setCond(2, true); + takeItems(player, ARUJIENS_LETTER1, -1); + giveItems(player, ARUJIENS_LETTER2, 1); + htmltext = "30146-01.html"; + } + else + { + htmltext = "30146-02.html"; + } + } + break; + case HERBIEL: + if (st.isStarted() && (st.getCond() > 1)) + { + if (st.isCond(2)) + { + st.setCond(3, true); + takeItems(player, ARUJIENS_LETTER2, -1); + giveItems(player, ARUJIENS_LETTER3, 1); + htmltext = "30150-01.html"; + } + else + { + htmltext = "30150-02.html"; + } + } + break; + case GREENIS: + if (st.isStarted()) + { + if (st.isCond(4)) + { + st.setCond(5, true); + takeItems(player, POETRY_BOOK, -1); + giveItems(player, GREENIS_LETTER, 1); + htmltext = "30157-02.html"; + } + else if (st.isCond(5)) + { + htmltext = "30157-03.html"; + } + else + { + htmltext = "30157-01.html"; + } + } + break; + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-00.htm new file mode 100644 index 0000000000..f8353521a8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-00.htm @@ -0,0 +1,3 @@ +Tetrarch Talloth:
+I have no task reserved for those of foreign races. Begone. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-01.html new file mode 100644 index 0000000000..a37d2eb7e0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-01.html @@ -0,0 +1,5 @@ +Tetrarch Talloth:
+For hundreds of years, I have devoted my life to researching a method to break the seal that was placed on our Hierarch. I've received news that ancient magic scrolls have been discovered in the northern lands of Pabel, and they say that the scrolls contain secrets of dark arts that we have not yet learned.
+If the scrolls were to be brought here, we would be able to discover a method for breaking the seal placed on our Hierarch. I may need your help then, to gather materials needed for performing this magic when the time comes.
+(Quest for Dark Elven characters level 16 or above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-02.htm new file mode 100644 index 0000000000..666d61d4ad --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-02.htm @@ -0,0 +1,6 @@ +Tetrarch Talloth:
+For hundreds of years I have devoted myself to researching magic that could break the seal placed on our Hierarch, Mitraell. But we are still uncertain of the exact magic that created the seal -- all we are certain of is that the magic used for the seal is entirely different from Human or Elven magic today, and that all our efforts towards breaking the seal have so far been futile.
+But recently, ancient magic scrolls containing secrets of the Dark Arts have been discovered in the northern lands of Pabel. Our Dark Elven brothers who have been sent there have succeeded in recovering those scrolls. After three days and nights of pouring over the scrolls, I have discovered a lead for the magic needed to break the seal.
+As you know, the seal is composed of three levels -- the physical seal, that restrains the body, the mental seal that restrains his mind, and the spiritual seal that restrains his soul. This time, I am attempting to break that first seal, the physical seal. But to perform the magic, I need many rare materials. I'd like to ask you to go and gather them. I'm sure you won't refuse?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-03.htm new file mode 100644 index 0000000000..d615651f80 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-03.htm @@ -0,0 +1,5 @@ +Tetrarch Talloth:
+The materials that I require for my magic are the omen beast's eye, Taint Stone and succubus' blood. You can find all three materials at the abandoned School of Dark Arts. If you do not know the way, ask Sentry Kayleen.
+You can obtain the first component by killing the omen beast and taking the jewel that is embedded in its eye. The second material can be gathered by hunting stink zombies or tainted zombies, the undead that wander the School of Dark Arts. The final material can be obtained only by killing the succubus, who resides in the deepest lairs of the School of Dark Arts.
+It may be safer for you to train a bit more before you leave, because zombies and the succubus may be difficult for you to hunt. There is no need to hurry. Gather the materials diligently, and bring them to me when you have gathered all three. May the protection of Shilen be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-04.html new file mode 100644 index 0000000000..f79f3d61d3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-04.html @@ -0,0 +1,4 @@ +Tetrarch Talloth:
+You haven't been able to gather all three materials yet? Don't tell me that you've forgotten what materials you need to gather?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-05.html new file mode 100644 index 0000000000..6a88436305 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-05.html @@ -0,0 +1,4 @@ +Tetrarch Talloth:
+Tsk tsk. I will tell you one more time. I need the omen beast's eye, Taint Stone and succubus' blood. You can obtain the first component by killing the omen beast and taking the jewel that is embedded in its eye. The second material can be gathered by hunting stink zombies or tainted zombies, the undead that wander the School of Dark Arts. The final material can be obtained only by killing the succubus, who resides in the deepest lairs of the School of Dark Arts.
+When you have gathered all three materials, bring them to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-06.html new file mode 100644 index 0000000000..650a00ff78 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/30141-06.html @@ -0,0 +1,5 @@ +Tetrarch Talloth:
+You've found all three materials. Well done! Now I can start my research to undo the 'spiritual chains.' We need further observation to see if the research will yield any results, but I believe that the seals placed on our Hierarch will one day be broken. I will give you this as a token of my appreciation. Think of it as a just payment for working for our race.
+I am not alone in the research to break the seal. Magister Kayla is continuing her research in the region known as Giran, to free the mental chains that bind the mind of our Hierarch If you ever pass through that region, I suggest that you go and seek her. She may also need your help someday.
+May the shelter of the abyss be with you, 'til the day our Dark Elf race rules the destiny of the land. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/Q00003_WillTheSealBeBroken.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/Q00003_WillTheSealBeBroken.java new file mode 100644 index 0000000000..7a4ccc118f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00003_WillTheSealBeBroken/Q00003_WillTheSealBeBroken.java @@ -0,0 +1,151 @@ +/* + * 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.Q00003_WillTheSealBeBroken; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Will the Seal be Broken? (3) + * @author malyelfik + */ +public class Q00003_WillTheSealBeBroken extends Quest +{ + // NPC + private static final int TALLOTH = 30141; + // Monsters + private static final int OMEN_BEAST = 20031; + private static final int TAINTED_ZOMBIE = 20041; + private static final int STINK_ZOMBIE = 20046; + private static final int LESSER_SUCCUBUS = 20048; + private static final int LESSER_SUCCUBUS_TUREN = 20052; + private static final int LESSER_SUCCUBUS_TILFO = 20057; + // Items + private static final int OMEN_BEAST_EYE = 1081; + private static final int TAINT_STONE = 1082; + private static final int SUCCUBUS_BLOOD = 1083; + private static final int ENCHANT = 956; + // Misc + private static final int MIN_LEVEL = 16; + + public Q00003_WillTheSealBeBroken() + { + super(3); + addStartNpc(TALLOTH); + addTalkId(TALLOTH); + addKillId(OMEN_BEAST, TAINTED_ZOMBIE, STINK_ZOMBIE, LESSER_SUCCUBUS, LESSER_SUCCUBUS_TILFO, LESSER_SUCCUBUS_TUREN); + registerQuestItems(OMEN_BEAST_EYE, TAINT_STONE, SUCCUBUS_BLOOD); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + + String htmltext = event; + switch (event) + { + case "30141-03.htm": + st.startQuest(); + break; + case "30141-05.html": + break; + default: + htmltext = null; + break; + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon) + { + final L2PcInstance member = getRandomPartyMember(player, 1); + if (member == null) + { + return super.onKill(npc, player, isSummon); + } + final QuestState st = getQuestState(member, false); + switch (npc.getId()) + { + case OMEN_BEAST: + giveItem(member, st, OMEN_BEAST_EYE, getRegisteredItemIds()); + break; + case STINK_ZOMBIE: + case TAINTED_ZOMBIE: + giveItem(member, st, TAINT_STONE, getRegisteredItemIds()); + break; + case LESSER_SUCCUBUS: + case LESSER_SUCCUBUS_TILFO: + case LESSER_SUCCUBUS_TUREN: + giveItem(member, st, SUCCUBUS_BLOOD, getRegisteredItemIds()); + break; + } + return super.onKill(npc, player, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + switch (st.getState()) + { + case State.CREATED: + htmltext = (player.getRace() != Race.DARK_ELF) ? "30141-00.htm" : (player.getLevel() >= MIN_LEVEL) ? "30141-02.htm" : "30141-01.html"; + break; + case State.STARTED: + if (st.isCond(1)) + { + htmltext = "30141-04.html"; + } + else + { + giveItems(player, ENCHANT, 1); + st.exitQuest(false, true); + htmltext = "30141-06.html"; + } + break; + case State.COMPLETED: + htmltext = getAlreadyCompletedMsg(player); + break; + } + return htmltext; + } + + private static void giveItem(L2PcInstance player, QuestState st, int item, int... items) + { + if (!hasQuestItems(player, item)) + { + giveItems(player, item, 1); + playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); + if (hasQuestItems(player, items)) + { + st.setCond(2, true); + } + } + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30559-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30559-01.html new file mode 100644 index 0000000000..7b7458c6cd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30559-01.html @@ -0,0 +1,4 @@ +Trader Kunai:
+Other tribes may see this as an opportunity to puff out their chests and offer the Flame Lord something costly, extravagant...and utterly useless. But the Duda-Mara tribe is not vain; we simply wish for him to recover speedily from this illness that afflicts him. Accordingly, our elders offer the Flame Lord this rarest of medicines, Spider Dust, able to cleanse both body and mind of all impurities!
+We risked our lives to hunt the Great Spiders that live high in the mountains, slew them, dried their legs in the heat of the sun, then ground them into a fine powder whose very fragrance can purify what is unclean. Take this to Centurion Nakusin so that he may speedily deliver it to Flame Lord Kakai! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30559-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30559-02.html new file mode 100644 index 0000000000..e4c03a78f6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30559-02.html @@ -0,0 +1,3 @@ +Trader Kunai:
+Why do you still have the gift the Duda-Mara tribe prepared for the Flame Lord? Go at once and deliver the Spider Dust to Centurion Nakusin! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30560-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30560-01.html new file mode 100644 index 0000000000..336133b51b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30560-01.html @@ -0,0 +1,4 @@ +Trader Uska:
+On behalf of the glorious Gandi tribe, I offer this precious treasure to Flame Lord Kakai. It is the skull of Lamakan, the great Seer of the Gandi, who died over 300 years ago!
+May the power of our mighty ancestor ward off evil spirits and protect our lord from all harm! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30560-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30560-02.html new file mode 100644 index 0000000000..196ed2ab6c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30560-02.html @@ -0,0 +1,3 @@ +Trader Uska:
+The meager gifts of the other tribes cannot possibly compare to the treasure offered to the Flame Lord by we of the Gandi tribe. So why do you still have it? Deliver it to Centurion Nakusin at once! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30562-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30562-01.html new file mode 100644 index 0000000000..bcf6b9287d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30562-01.html @@ -0,0 +1,3 @@ +Warehouse Keeper Grookin:
+On behalf of the Neruga tribe, I, Grookin, offer this precious gift to the Flame Lord: the Bloody Axe. Stained with the blood of many animals, it pulses with the lives that it took! Among our tribe it is said that illness will flee a body at the mere touch of the Bloody Axe! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30562-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30562-02.html new file mode 100644 index 0000000000..02279ff4ac --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30562-02.html @@ -0,0 +1,3 @@ +Warehouse Keeper Grookin:
+On behalf of the Neruga tribe, I entrusted you with a precious gift. Why has the Flame Lord not yet received it?! What is the meaning of this, you rascal? Take it to Centurion Nakusin before my tribe is permanently disgraced! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30566-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30566-01.html new file mode 100644 index 0000000000..647be59b59 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30566-01.html @@ -0,0 +1,3 @@ +Atuba Chief Varkees:
+The Atuba tribe offers the Lord of Flame this miraculous Elixir! Brewed from the juice of the Khandar plant and honey, this it has the power to cure all fevers and drive out evil spirits! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30566-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30566-02.html new file mode 100644 index 0000000000..e4dde6f1f0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30566-02.html @@ -0,0 +1,3 @@ +Atuba Chief Varkees:
+Have you presented the Atuba tribe's gift to Centurion Nakusin? Do not be late! That would shame us in the eyes of the great Flame Lord! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-00.htm new file mode 100644 index 0000000000..1d3a36b195 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-00.htm @@ -0,0 +1,4 @@ +Centurion Nakusin:
+Dekara Lamchar Kakai! I have no time to waste with other races' runts! Go away!
+(Only Orcs may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-01.htm new file mode 100644 index 0000000000..3bc6a279c9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-01.htm @@ -0,0 +1,4 @@ +Centurion Nakusin:
+Dekara Lamchar Kakai! Perhaps you've heard that Flame Lord Kakai has fallen ill. The Elders have decreed that each tribe should offer him something to help restore his health. What can you possibly give the Flame Lord, my young Orc friend?
+(Only Orcs who are at least level 2 may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-02.htm new file mode 100644 index 0000000000..751dd0b216 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-02.htm @@ -0,0 +1,4 @@ +Centurion Nakusin:
+Dekara Lamchar Kakai! Perhaps you've heard that Flame Lord Kakai has fallen ill. The Elders have decreed that each tribe should offer him something to help restore his health. I was supposed to collect the items, but we have heard that there are troublemakers about and I am reluctant to leave my post. Will you meet the representatives of each tribe and bring back their gifts?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-03.htm new file mode 100644 index 0000000000..8dea53a8b5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-03.htm @@ -0,0 +1,10 @@ +Centurion Nakusin:
+Very well. Here are the tribal representatives you must meet:
+Tataru Zu Hestui of the dignified Hestui tribe
+Atuba Chief Varkees of the merciless Atuba tribe
+Warehouse Keeper Grookin of the tenacious Neruga tribe
+Gantaki Zu Urutu of the headstrong Urutu tribe
+Trader Kunai of the resourceful Duda-Mara tribe
+Trader Uska of the savage Gandi tribe
+Collect their gifts for Flame Lord Kakai and bring them to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-04.html new file mode 100644 index 0000000000..aabec6f0a8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-04.html @@ -0,0 +1,4 @@ +Centurion Nakusin:
+Meet the representatives from each tribe and collect their gifts for Flame Lord Kakai. You haven't forgotten your mission already, have you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-05.html new file mode 100644 index 0000000000..dffc9abea0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-05.html @@ -0,0 +1,10 @@ +Centurion Nakusin:
+Fool! You are as empty-headed as an Elf! Here are the tribal representatives you must meet:
+Tataru Zu Hestui of the dignified Hestui tribe
+Atuba Chief Varkees of the merciless Atuba tribe
+Warehouse Keeper Grookin of the tenacious Neruga tribe
+Gantaki Zu Urutu of the headstrong Urutu tribe
+Trader Kunai of the resourceful Duda-Mara tribe
+Trader Uska of the savage Gandi tribe
+Collect their gifts for Flame Lord Kakai and bring them to me. Hurry! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-06.html new file mode 100644 index 0000000000..f977168707 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30578-06.html @@ -0,0 +1,4 @@ +Centurion Nakusin:
+Dekara Lamchar Kakai! As long as our tribes stand united under the flag of our lord, the glory of the Orc Kingdom will never fade!
+You have done well. Treasure what you have seen -- it is a lesson in true loyalty to one's lord, something far more valuable than this small reward I now give you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30585-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30585-01.html new file mode 100644 index 0000000000..043aaaccb9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30585-01.html @@ -0,0 +1,4 @@ +Tataru Zu Hestui:
+We Hestuis offer the great Lord of the Flame this Bear Fur Cloak.
+May it keep him warm even on the coldest winter night! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30585-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30585-02.html new file mode 100644 index 0000000000..5594f8a64f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30585-02.html @@ -0,0 +1,3 @@ +Tataru Zu Hestui:
+Hurry and deliver our gift to Centurion Nakusin! Our tribe's honor would be disgraced if our gift arrived later than the others! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30587-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30587-01.html new file mode 100644 index 0000000000..02407b46e4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30587-01.html @@ -0,0 +1,4 @@ +Gantaki Zu Urutu:
+On behalf of the Urutu tribe, I present you with this gift for the Flame Lord: a rare Deep Sea Orb
+Fished from the depths of the Black Seas of the west, it is prized even by the Humans, who call it "pearl." Those who carry it on their person gain the ability to part the mists of time and see the future. May the great Kakai see in it only victory and glory! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30587-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30587-02.html new file mode 100644 index 0000000000..1c1cfc3123 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/30587-02.html @@ -0,0 +1,3 @@ +Gantaki Zu Urutu:
+Have you delivered the Deep Sea Orb to Centurion Nakusin? Unless you do so immediately, he will be unable to present it to Flame Lord Kakai on behalf of the Urutu tribe. We will be shamed! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/Q00004_LongLiveThePaagrioLord.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/Q00004_LongLiveThePaagrioLord.java new file mode 100644 index 0000000000..5c8d4673f2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00004_LongLiveThePaagrioLord/Q00004_LongLiveThePaagrioLord.java @@ -0,0 +1,159 @@ +/* + * 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.Q00004_LongLiveThePaagrioLord; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.network.NpcStringId; + +/** + * Long Live the Pa'agrio Lord (4) + * @author malyelfik + */ +public class Q00004_LongLiveThePaagrioLord extends Quest +{ + // NPCs + private static final int KUNAI = 30559; + private static final int USKA = 30560; + private static final int GROOKIN = 30562; + private static final int VARKEES = 30566; + private static final int NAKUSIN = 30578; + private static final int HESTUI = 30585; + private static final int URUTU = 30587; + // Items + private static final int CLUB = 4; + private static final int HONEY_KHANDAR = 1541; + private static final int BEAR_FUR_CLOAK = 1542; + private static final int BLOODY_AXE = 1543; + private static final int ANCESTOR_SKULL = 1544; + private static final int SPIDER_DUST = 1545; + private static final int DEEP_SEA_ORB = 1546; + // Misc + private static final int MIN_LEVEL = 2; + + public Q00004_LongLiveThePaagrioLord() + { + super(4); + addStartNpc(NAKUSIN); + addTalkId(NAKUSIN, VARKEES, URUTU, HESTUI, KUNAI, USKA, GROOKIN); + registerQuestItems(HONEY_KHANDAR, BEAR_FUR_CLOAK, BLOODY_AXE, ANCESTOR_SKULL, SPIDER_DUST, DEEP_SEA_ORB); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + + String htmltext = event; + switch (event) + { + case "30578-03.htm": + st.startQuest(); + break; + case "30578-05.html": + break; + default: + htmltext = null; + break; + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + switch (npc.getId()) + { + case NAKUSIN: + switch (st.getState()) + { + case State.CREATED: + htmltext = (player.getRace() != Race.ORC) ? "30578-00.htm" : (player.getLevel() >= MIN_LEVEL) ? "30578-02.htm" : "30578-01.htm"; + break; + case State.STARTED: + if (st.isCond(1)) + { + htmltext = "30578-04.html"; + } + else + { + giveItems(player, CLUB, 1); + // Newbie Guide + showOnScreenMsg(player, NpcStringId.DELIVERY_DUTY_COMPLETE_N_GO_FIND_THE_NEWBIE_HELPER, 2, 5000); + addExpAndSp(player, 4254, 335); + giveAdena(player, 1850, true); + st.exitQuest(false, true); + htmltext = "30578-06.html"; + } + break; + case State.COMPLETED: + htmltext = getAlreadyCompletedMsg(player); + break; + } + break; + case VARKEES: + htmltext = giveItem(player, st, npc.getId(), HONEY_KHANDAR, getRegisteredItemIds()); + break; + case URUTU: + htmltext = giveItem(player, st, npc.getId(), DEEP_SEA_ORB, getRegisteredItemIds()); + break; + case HESTUI: + htmltext = giveItem(player, st, npc.getId(), BEAR_FUR_CLOAK, getRegisteredItemIds()); + break; + case KUNAI: + htmltext = giveItem(player, st, npc.getId(), SPIDER_DUST, getRegisteredItemIds()); + break; + case USKA: + htmltext = giveItem(player, st, npc.getId(), ANCESTOR_SKULL, getRegisteredItemIds()); + break; + case GROOKIN: + htmltext = giveItem(player, st, npc.getId(), BLOODY_AXE, getRegisteredItemIds()); + break; + } + return htmltext; + } + + private static String giveItem(L2PcInstance player, QuestState st, int npcId, int itemId, int... items) + { + if (!st.isStarted()) + { + return getNoQuestMsg(player); + } + else if (hasQuestItems(player, itemId)) + { + return npcId + "-02.html"; + } + giveItems(player, itemId, 1); + playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); + if (hasQuestItems(player, items)) + { + st.setCond(2, true); + } + return npcId + "-01.html"; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30517-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30517-01.html new file mode 100644 index 0000000000..68ed84cd15 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30517-01.html @@ -0,0 +1,4 @@ +Trader Shari:
+Bolter sent you, eh? Lessee here...oh, he ordered some Boomboom Powder a few days ago. Last time he used too much while trying to blast a new mine entrance and singed his beard! Hopefully he'll be more careful with this batch.
+Here you go: 1 sack of Boomboom Powder. Please don't drop it! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30517-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30517-02.html new file mode 100644 index 0000000000..f06fb1fca8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30517-02.html @@ -0,0 +1,3 @@ +Trader Shari:
+I gave you a sack of Boomboom Powder, right? Hurry and take it to Miner Bolter. And be sure not to get it near any open flame, or getting Bolter's reward will be the least of your worries! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30518-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30518-01.html new file mode 100644 index 0000000000..9262de0cf7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30518-01.html @@ -0,0 +1,3 @@ +Trader Garita:
+The item that the Gray Pillar Guild ordered? Ah, here you go: a pair of strong leather Mining Boots. Let me just make a notation in my account book...there! Now take them to Miner Bolter with my thanks. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30518-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30518-02.html new file mode 100644 index 0000000000..c048f2e436 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30518-02.html @@ -0,0 +1,3 @@ +Trader Garita:
+I see that you're still here in the village. Isn't Miner Bolter waiting for his new Mining Boots? I think you'd best take them to him right away! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30520-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30520-01.html new file mode 100644 index 0000000000..6b6cd64072 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30520-01.html @@ -0,0 +1,4 @@ +Warehouse Chief Reed:
+The item Bolter entrusted to me...? Ah! You mean the Dion-brewed Redstone Beer he gave me last week! Where is it...here! It goes down very smooth, I can tell you that. Just the thing to wash away the dust of the road. Just thinking about it makes me thirsty...
+Well, well...uh, I really must return to my account book. You'd best deliver it to Bolter before something...happens...to that cool, tasty beer... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30520-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30520-02.html new file mode 100644 index 0000000000..bc1aa03fe2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30520-02.html @@ -0,0 +1,3 @@ +Warehouse Chief Reed:
+Look here, I'm trying to organize my account book! Bolter's beer? I already gave you the Redstone Beer! If you drank it already, it's not my fault! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30526-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30526-01.html new file mode 100644 index 0000000000..01a69fbb38 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30526-01.html @@ -0,0 +1,5 @@ +Blacksmith Brunon:
+Who are you you and what do you want? I am too busy to waste time with young idlers...
+Bolter's order, you say? And who is Bolter? Start talking sense or get out of my shop!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30526-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30526-02.html new file mode 100644 index 0000000000..9493ff9e95 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30526-02.html @@ -0,0 +1,4 @@ +Blacksmith Brunon:
+Ugh! That smell! Do you have a week-dead ferret in there? Ohh... Wait! Bolter! I remember him now. He placed an order last week, didn't he?
+Well, well! Here is the Miner's Pick he wanted. Take it -- and get that vile-smelling thing away from me! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30526-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30526-03.html new file mode 100644 index 0000000000..cef9b7a9a1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30526-03.html @@ -0,0 +1,3 @@ +Blacksmith Brunon:
+You again! What is it this time? I already gave you the Miner's Pick that Bolter ordered. Take it to him at the Strip Mine and leave me in peace! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30526-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30526-04.html new file mode 100644 index 0000000000..0e58c6d058 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30526-04.html @@ -0,0 +1,4 @@ +Blacksmith Brunon:
+No, I don't remember any Miner Bolter. Perhaps you're thinking of another blacksmith.
+In any case, I don't have time to play detective. Shoo! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-01.html new file mode 100644 index 0000000000..5fb89019ad --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-01.html @@ -0,0 +1,5 @@ +Miner Bolter:
+I'm a member of the Gray Pillar Guild, which controls this Strip Mine. Those hard-working Dwarves over there are all my guild brothers.
+Frankly, we prefer it out here, living among the rock and rubble of the mine instead of some stuffy cottage back in the village. The only drawback is that we still have to send someone into the village every few days to get supplies. It was Fundal's turn to go, but he broke his leg in a mining accident this morning. Do you know anyone trustworthy enough to go in his place?
+(Only characters who are at least level 2 may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-02.htm new file mode 100644 index 0000000000..09addcac2e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-02.htm @@ -0,0 +1,5 @@ +Miner Bolter:
+I'm a member of the Gray Pillar Guild, which controls this Strip Mine. Those hard-working Dwarves over there are all my guild brothers.
+Frankly, we prefer it out here, living among the rock and rubble of the mine instead of some stuffy cottage back in the village. The only drawback is that we still have to send someone into the village every few days to get supplies. It was Fundal's turn to go, but he broke his leg in a mining accident this morning. Will you go in his place?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-03.htm new file mode 100644 index 0000000000..f6395d60cb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-03.htm @@ -0,0 +1,8 @@ +Miner Bolter:
+Here's a list of the supplies we need. Let's see...
+Ah! First, stop by the Weapons and Armor Shop and get a sack of Boom-boom Powder from Trader Shari.
+Then go to the General Store and get a pair of Mining Boots from Trader Garita.
+After that, go to the Warehouse and get us a case of Redstone Beer from Warehouse Chief Reed.
+Finally, pick up a Miner's Pick from Blacksmith Brunon.
+Brunon has become very absent-minded, so take these -- just in case you need to shock him back to reality! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-04.html new file mode 100644 index 0000000000..66305d2d60 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-04.html @@ -0,0 +1,5 @@ +Miner Bolter:
+Hey, you! Where's the rest of the supplies I ordered?
+Did you lose the list I gave you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-05.html new file mode 100644 index 0000000000..de88ac3916 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-05.html @@ -0,0 +1,7 @@ +Miner Bolter:
+Argh! May your beard become as sparse as a Gremlin's whiskers, you empty-headed wastrel! You are as forgetful as Brunon...
+First, stop by the Weapons and Armor Shop and get a sack of Boom-boom Powder from Trader Shari.
+Then go to the General Store and get a pair of Mining Boots from Trader Garita.
+After that, go to the Warehouse and get us a case of Redstone Beer from Warehouse Chief Reed.
+Finally, pick up a Miner's Pick from Blacksmith Brunon. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-06.html new file mode 100644 index 0000000000..6225d3bfe0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/30554-06.html @@ -0,0 +1,4 @@ +Miner Bolter:
+You've done well, my young friend. Thanks to you, we now have all the comforts of home! Take this as a token of our gratitude. It's nothing fancy, but you might find it useful one day.
+In the meantime, what do you say to sharing a cold Redstone Beer with me? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/Q00005_MinersFavor.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/Q00005_MinersFavor.java new file mode 100644 index 0000000000..8ec3fe0a04 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00005_MinersFavor/Q00005_MinersFavor.java @@ -0,0 +1,169 @@ +/* + * 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.Q00005_MinersFavor; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.network.NpcStringId; + +/** + * Miner's Favor (5) + * @author malyelfik + */ +public class Q00005_MinersFavor extends Quest +{ + // NPCs + private static final int BOLTER = 30554; + private static final int SHARI = 30517; + private static final int GARITA = 30518; + private static final int REED = 30520; + private static final int BRUNON = 30526; + // Items + private static final int BOLTERS_LIST = 1547; + private static final int MINING_BOOTS = 1548; + private static final int MINERS_PICK = 1549; + private static final int BOOMBOOM_POWDER = 1550; + private static final int REDSTONE_BEER = 1551; + private static final int BOLTERS_SMELLY_SOCKS = 1552; + private static final int NECKLACE = 906; + // Misc + private static final int MIN_LEVEL = 2; + + public Q00005_MinersFavor() + { + super(5); + addStartNpc(BOLTER); + addTalkId(BOLTER, SHARI, GARITA, REED, BRUNON); + registerQuestItems(BOLTERS_LIST, MINING_BOOTS, MINERS_PICK, BOOMBOOM_POWDER, REDSTONE_BEER, BOLTERS_SMELLY_SOCKS); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + + String htmltext = event; + switch (event) + { + case "30554-03.htm": + st.startQuest(); + giveItems(player, BOLTERS_LIST, 1); + giveItems(player, BOLTERS_SMELLY_SOCKS, 1); + break; + case "30526-02.html": + if (!hasQuestItems(player, BOLTERS_SMELLY_SOCKS)) + { + return "30526-04.html"; + } + takeItems(player, BOLTERS_SMELLY_SOCKS, -1); + giveItems(player, MINERS_PICK, 1); + checkProgress(player, st); + break; + case "30554-05.html": + break; + default: + htmltext = null; + break; + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + switch (npc.getId()) + { + case BOLTER: + switch (st.getState()) + { + case State.CREATED: + htmltext = (player.getLevel() >= MIN_LEVEL) ? "30554-02.htm" : "30554-01.html"; + break; + case State.STARTED: + if (st.isCond(1)) + { + htmltext = "30554-04.html"; + } + else + { + giveAdena(player, 2466, true); + addExpAndSp(player, 5672, 446); + giveItems(player, NECKLACE, 1); + st.exitQuest(false, true); + // Newbie Guide + showOnScreenMsg(player, NpcStringId.DELIVERY_DUTY_COMPLETE_N_GO_FIND_THE_NEWBIE_HELPER, 2, 5000); + htmltext = "30554-06.html"; + } + break; + case State.COMPLETED: + htmltext = getAlreadyCompletedMsg(player); + break; + } + break; + case BRUNON: + if (st.isStarted()) + { + htmltext = (hasQuestItems(player, MINERS_PICK)) ? "30526-03.html" : "30526-01.html"; + } + break; + case REED: + htmltext = giveItem(player, st, npc.getId(), REDSTONE_BEER); + break; + case SHARI: + htmltext = giveItem(player, st, npc.getId(), BOOMBOOM_POWDER); + break; + case GARITA: + htmltext = giveItem(player, st, npc.getId(), MINING_BOOTS); + break; + } + return htmltext; + } + + private static void checkProgress(L2PcInstance player, QuestState st) + { + if (hasQuestItems(player, BOLTERS_LIST, MINING_BOOTS, MINERS_PICK, BOOMBOOM_POWDER, REDSTONE_BEER)) + { + st.setCond(2, true); + } + } + + private static String giveItem(L2PcInstance player, QuestState st, int npcId, int itemId) + { + if (!st.isStarted()) + { + return getNoQuestMsg(st.getPlayer()); + } + else if (hasQuestItems(player, itemId)) + { + return npcId + "-02.html"; + } + giveItems(player, itemId, 1); + playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); + checkProgress(player, st); + return npcId + "-01.html"; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-01.htm new file mode 100644 index 0000000000..f1e197a192 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-01.htm @@ -0,0 +1,4 @@ +Grand Master Roien:
+You have travelled quite far from your homeland, young stranger of a foreign race. I'm sorry, but I have no work for you.
+(Quest for Human characters level 9 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-02.htm new file mode 100644 index 0000000000..c01a232048 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-02.htm @@ -0,0 +1,4 @@ +Grand Master Roien:
+In the past, this island was where the Elves taught us Humans their magic. In the year marking the hundredth anniversary of the Humans coming to this remote island to learn the magic of the Elves, Human magicians commissioned a Dwarven craftsman to create a beautiful sword that was presented to the Elves. It was a sign of thanks for their teaching the Humans magic, and a symbol of the pledge to strengthen the unity between the two Human and Elf races. The Elves named this present the Sword of Solidarity.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-03.html new file mode 100644 index 0000000000..3dc026a3fe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-03.html @@ -0,0 +1,6 @@ +Grand Master Roien:
+A thousand years ago, war arose between the Humans and the Elves, and the Elves were eventually defeated. The Elves of Talking Island said that the present they had received was not a Sword of Solidarity but a sword of betrayal, and broke the blade in half before leaving the island. Thereafter, the Elves never returned to this island, and the building where they had taught magic was abandoned and became the present Elven Ruins.
+I read about the sword in a history book, and came to believe that it is hidden somewhere on this island. A few weeks ago, one of my pupils discovered an old sword handle during his exploration of the ruins. Upon close examination of the engravings on the handle, it exactly matched a text recorded in the Elven historical books that speak of the Sword of Solidarity. I am certain that the handle is a part of the Sword of Solidarity.
+It is my opinion that if the rest of the blade can be found, we can recreate the Sword of Solidarity that has only existed in history books until now.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-04.htm new file mode 100644 index 0000000000..578a5d75cd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-04.htm @@ -0,0 +1,4 @@ +Grand Master Roien:
+First, go and show this letter to Blacksmith Altran. In the letter, I have organized information that I've discovered regarding the Sword of Solidarity during my research of Ancient Scrolls at Einhovant's School of Magic. Altran says that his ancestors created the blade and asked me to research information about the sword.
+You can meet Altran by going to the village forge. Thank you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-05.html new file mode 100644 index 0000000000..e2a20809be --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-05.html @@ -0,0 +1,3 @@ +Grand Master Roien:
+Please deliver my letter to Blacksmith Altran. You can find him at the village forge. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-06.html new file mode 100644 index 0000000000..223db1e5ca --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-06.html @@ -0,0 +1,4 @@ +Grand Master Roien:
+You've found all the pieces of the broken blade?! What wonderful news! Now Altran can restore the Sword of Solidarity. But in order to do so, he's going to need the sword handle.
+Now, take this to Altran. Please tell him that it is given to him in thanks for all the help he has given us with the reconstruction of the training hall. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-07.html new file mode 100644 index 0000000000..81985e57f7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-07.html @@ -0,0 +1,3 @@ +Grand Master Roien:
+What, you haven't left yet? Go and deliver the sword handle to Blacksmith Altran immediately. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-08.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-08.htm new file mode 100644 index 0000000000..5232acf77a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-08.htm @@ -0,0 +1,5 @@ +Grand Master Roien:
+Perhaps you have heard of the Sword of Solidarity? They say it is a fine blade treasured by the Elves that resided on this island long ago. These days, whenever I have the time I visit the libraries within Einhovant's School of Magic, to look through books and read stories related to the sword. Seeing that it is recorded not only in Human history books but also in those of the Elves, it seems certain that this sword really existed...
+If this Sword of Solidarity really existed, wouldn't it be hidden somewhere on the island? Such a precious and magnificent blade as that would not be easily destroyed or abandoned... I plan to search the island for the sword some day. If you are interested, won't you come along?
+(Quest for Human characters level 9 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-09.html new file mode 100644 index 0000000000..93c5442ee6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-09.html @@ -0,0 +1,5 @@ +Grand Master Roien:
+A few days ago, I mentioned the sword handle to Blacksmith Altran over a couple of drinks, and he showed avid interest in it. He says that if only he had the blade portion, he could resurrect the sword to its original state, and suggested that since it is probably somewhere in the ruins, we should send someone to go and find it.
+Regretfully, I am occupied with the construction that is going on for the outer walls of the training hall, which was destroyed during a storm, and cannot perform the task myself. But I think you would be able to help Altran ... What do you think? Will you give it a try?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-10.html new file mode 100644 index 0000000000..5b8896adcd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-10.html @@ -0,0 +1,3 @@ +Grand Master Roien:
+I heard that you are helping Altran. They say you are going to find the broken sword blade in the Elven Ruins. I wish you good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-11.html new file mode 100644 index 0000000000..38c2cd3996 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-11.html @@ -0,0 +1,3 @@ +Blacksmith Altran:
+Is this from the blade of the Sword of Solidarity? If only we could find the other half! + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-12.html new file mode 100644 index 0000000000..3b1c6081a9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30008-12.html @@ -0,0 +1,3 @@ +Blacksmith Altran:
+You've found the broken sword blades! Quickly, bring them to Altran! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-01.html new file mode 100644 index 0000000000..b4bd681368 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-01.html @@ -0,0 +1,4 @@ +Blacksmith Altran:
+Oh! This is Roien's letter! Thank you!
It was a dwarf like me that forged the Sword of Solidarity that's found in the history books, wasn't it? I wonder how a sword that my ancestor made one thousand years ago looked. If I could find the broken sword blade, I'm sure I could remake the Sword of Solidarity in its original form... I'd appreciate it if you could find that broken sword blade for me. Am I asking for too much?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-02.html new file mode 100644 index 0000000000..192e3e4cf4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-02.html @@ -0,0 +1,4 @@ +Blacksmith Altran:
+According to Roien's research, the blade was broken in half. I think they're somewhere in the Elven Ruins. Or maybe those dirty orcs who live in the ruins have gotten their paws on them... Those orcs don't know how to handle metal, so they won't be able to reforge the broken pieces into one blade. They're probably using them to peel rabbit skins or something like that.
+Go to the Elven Ruins and find the two broken sword blade pieces. In case you don't know how to get into the ruins, I'll write it down for you in this note. Be careful! Orcs aren't the worst of the dangers in those ruins. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-03.html new file mode 100644 index 0000000000..f6e15973e4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-03.html @@ -0,0 +1,3 @@ +Blacksmith Altran:
+If you still have trouble finding the Elven Ruins after looking at my note, go and ask Guard Kenyos. Once you find the two broken sword blade pieces, bring them to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-04.html new file mode 100644 index 0000000000..fdc4a516d8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-04.html @@ -0,0 +1,3 @@ +Blacksmith Altran:
+You found them! Hmm. Now I have to make these two sword blade pieces into one. It might take some time. While I take care of this, go meet with Roien. I'll give you a note for him, asking for the sword handle. Go, bring it to him. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-05.html new file mode 100644 index 0000000000..7d6e9c96c3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-05.html @@ -0,0 +1,4 @@ +Blacksmith Altran:
+I have to connect the two broken halves together, but it will be a more difficult task than I thought. I'm calculating in my mind how high the temperature of the furnace must be, how many times I should hammer the blade, and other factors.
+By the way, have you brought back the sword handle from Roien? What do you mean, not yet? Look, if I don't have the sword handle, I can't restore this sword to its original state! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-06.html new file mode 100644 index 0000000000..7b41879f9c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-06.html @@ -0,0 +1,4 @@ +Blacksmith Altran:
+So this is the sword handle. While you were visiting the training hall, I managed to attach the broken blade fragments together. All I have to do now is attach the handle ... Would you wait a moment?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-07.html new file mode 100644 index 0000000000..e11825eec0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-07.html @@ -0,0 +1,5 @@ +Blacksmith Altran:
+Ta da, it's finished! This is the legendary Sword of Solidarity. Isn't it beautiful? The blade has been crafted of Mithril and hasn't lost its sharpness yet!
+As my ancestors created this Sword of Solidarity for the Humans of this island a thousand years ago, I will now present you with this sword. Please do not refuse, and accept it as a gift. For your information, Dwarves are happiest when the weapons they create have been placed in the hands of a skilled user. The way I see it, you are qualified to receive this sword.
+I hope that you will perform a mighty deed appropriate for a sword with such a great history. And if anyone should ask, tell them that Blacksmith Altran reconstructed this sword! May the grace of Maphr be with you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-08.html new file mode 100644 index 0000000000..2bb8f31e42 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/30283-08.html @@ -0,0 +1,3 @@ +Blacksmith Altran:
+Ah ha! So you've found one half of the broken blade! Please find the other half! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/Q00101_SwordOfSolidarity.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/Q00101_SwordOfSolidarity.java new file mode 100644 index 0000000000..7b918aef8a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00101_SwordOfSolidarity/Q00101_SwordOfSolidarity.java @@ -0,0 +1,299 @@ +/* + * 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.Q00101_SwordOfSolidarity; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Sword of Solidarity (101) + * @author xban1x + */ +public class Q00101_SwordOfSolidarity extends Quest +{ + // NPCs + private static final int ROIEN = 30008; + private static final int ALTRAN = 30283; + // Items + private static final int BROKEN_SWORD_HANDLE = 739; + private static final int BROKEN_BLADE_BOTTOM = 740; + private static final int BROKEN_BLADE_TOP = 741; + private static final int ALTRANS_NOTE = 742; + private static final int ROIENS_LETTER = 796; + private static final int DIRECTIONS_TO_RUINS = 937; + // Monsters + private static final int[] MONSTERS = + { + 20361, // Tunath Orc Marksman + 20362, // Tunath Orc Warrior + }; + // Rewards + private static final ItemHolder[] REWARDS = + { + new ItemHolder(738, 1), // Sword of Solidarity + new ItemHolder(1060, 100), // Lesser Healing Potion + new ItemHolder(4412, 10), // Echo Crystal - Theme of Battle + new ItemHolder(4413, 10), // Echo Crystal - Theme of Love + new ItemHolder(4414, 10), // Echo Crystal - Theme of Solitude + new ItemHolder(4415, 10), // Echo Crystal - Theme of Feast + new ItemHolder(4416, 10), // Echo Crystal - Theme of Celebration + }; + // Misc + private static final int MIN_LVL = 9; + + public Q00101_SwordOfSolidarity() + { + super(101); + addStartNpc(ROIEN); + addKillId(MONSTERS); + addTalkId(ROIEN, ALTRAN); + registerQuestItems(BROKEN_SWORD_HANDLE, BROKEN_BLADE_BOTTOM, BROKEN_BLADE_TOP, ALTRANS_NOTE, ROIENS_LETTER, DIRECTIONS_TO_RUINS); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st != null) + { + switch (event) + { + case "30008-03.html": + case "30008-09.html": + { + htmltext = event; + break; + } + case "30008-04.htm": + { + st.startQuest(); + giveItems(player, ROIENS_LETTER, 1); + htmltext = event; + break; + } + case "30283-02.html": + { + if (st.isCond(1) && hasQuestItems(player, ROIENS_LETTER)) + { + takeItems(player, ROIENS_LETTER, -1); + giveItems(player, DIRECTIONS_TO_RUINS, 1); + st.setCond(2, true); + htmltext = event; + } + break; + } + case "30283-07.html": + { + if (st.isCond(5) && hasQuestItems(player, BROKEN_SWORD_HANDLE)) + { + // Q00281_HeadForTheHills.giveNewbieReward(player); + for (ItemHolder reward : REWARDS) + { + giveItems(player, reward); + } + addExpAndSp(player, 25747, 2171); + giveAdena(player, 10981, true); + st.exitQuest(false, true); + htmltext = event; + } + break; + } + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(2) && (getRandom(5) == 0)) + { + if (!hasQuestItems(killer, BROKEN_BLADE_TOP)) + { + giveItems(killer, BROKEN_BLADE_TOP, 1); + if (hasQuestItems(killer, BROKEN_BLADE_BOTTOM)) + { + st.setCond(3, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + else if (!hasQuestItems(killer, BROKEN_BLADE_BOTTOM)) + { + giveItems(killer, BROKEN_BLADE_BOTTOM, 1); + if (hasQuestItems(killer, BROKEN_BLADE_TOP)) + { + st.setCond(3, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (npc.getId()) + { + case ROIEN: + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.HUMAN) ? (player.getLevel() >= MIN_LVL) ? "30008-02.htm" : "30008-08.htm" : "30008-01.htm"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + if (hasQuestItems(player, ROIENS_LETTER)) + { + htmltext = "30008-05.html"; + } + break; + } + case 2: + { + if (hasAtLeastOneQuestItem(player, BROKEN_BLADE_BOTTOM, BROKEN_BLADE_TOP)) + { + htmltext = "30008-11.html"; + } + else if (hasQuestItems(player, DIRECTIONS_TO_RUINS)) + { + htmltext = "30008-10.html"; + } + break; + } + case 3: + { + if (hasQuestItems(player, BROKEN_BLADE_BOTTOM, BROKEN_BLADE_TOP)) + { + htmltext = "30008-12.html"; + } + break; + } + case 4: + { + if (hasQuestItems(player, ALTRANS_NOTE)) + { + takeItems(player, ALTRANS_NOTE, -1); + giveItems(player, BROKEN_SWORD_HANDLE, 1); + st.setCond(5, true); + htmltext = "30008-06.html"; + } + break; + } + case 5: + { + if (hasQuestItems(player, BROKEN_SWORD_HANDLE)) + { + htmltext = "30008-07.html"; + } + break; + } + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + break; + } + case ALTRAN: + { + switch (st.getCond()) + { + case 1: + { + if (hasQuestItems(player, ROIENS_LETTER)) + { + htmltext = "30283-01.html"; + } + break; + } + case 2: + { + if (hasAtLeastOneQuestItem(player, BROKEN_BLADE_BOTTOM, BROKEN_BLADE_TOP)) + { + htmltext = "30283-08.html"; + } + else if (hasQuestItems(player, DIRECTIONS_TO_RUINS)) + { + htmltext = "30283-03.html"; + } + break; + } + case 3: + { + if (hasQuestItems(player, BROKEN_BLADE_BOTTOM, BROKEN_BLADE_TOP)) + { + takeItems(player, -1, DIRECTIONS_TO_RUINS, BROKEN_BLADE_TOP, BROKEN_BLADE_BOTTOM); + giveItems(player, ALTRANS_NOTE, 1); + st.setCond(4, true); + htmltext = "30283-04.html"; + } + break; + } + case 4: + { + if (hasQuestItems(player, ALTRANS_NOTE)) + { + htmltext = "30283-05.html"; + } + break; + } + case 5: + { + if (hasQuestItems(player, BROKEN_SWORD_HANDLE)) + { + htmltext = "30283-06.html"; + } + break; + } + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30156-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30156-03.html new file mode 100644 index 0000000000..089a5ff8a9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30156-03.html @@ -0,0 +1,5 @@ +Master Cobendell:
+To create a Healing Potion to treat the fever, I need the dryad's tear, where the purest life forces of the earth are concentrated. Long ago the dryads were beautiful spirits of the trees that sang of the life force of the earth. However, after the balance of magic powers flowing through the woods and the earth were undone during the battle with the Humans, the dryads became spirits with a deep-rooted hatred for all the material races. You can still find dryads today if you travel to the Elven Forest to west of the village.
+When the dryad's physical body is destroyed, a dryad's tear is created. But you must keep this amulet with you at all times. The crystal embedded in this necklace works as a catalyst to concentrate the spiritual power scattered when a dryad is killed into the dryad's tear.
+Well then, good luck on your journey. Gather ten Dryad's Tears and bring them to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30156-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30156-04.html new file mode 100644 index 0000000000..9fc156e3bf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30156-04.html @@ -0,0 +1,3 @@ +Master Cobendell:
+My dear friend, did you not agree to bring me ten Dryad's Tears? I must create a Healing Potion before the poisons of the spores spread throughout the entire village. Please hurry. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30156-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30156-05.html new file mode 100644 index 0000000000..b77f431b27 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30156-05.html @@ -0,0 +1,5 @@ +Master Cobendell:
+My friend, you have done well to return. Have you gathered all the Dryad's Tears? Ah, excellent.
+Please wait a moment. All I need to do is add the Dryad's Tears to the mixture that I have prepared.
+Here, I have created the five potions that are needed most immediately. Please deliver this to Sentinel Knight Alberius. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30156-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30156-06.html new file mode 100644 index 0000000000..8ab5213a15 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30156-06.html @@ -0,0 +1,4 @@ +Master Cobendell:
+Please deliver the Dryad's Tears potion that I have made to Sentinel Knight Alberius.
+Alberius is standing guard at the terrace of the building directly in front of us. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30156-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30156-07.html new file mode 100644 index 0000000000..09376ba2ab --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30156-07.html @@ -0,0 +1,3 @@ +Master Cobendell:
+I hear that Alberius has asked you to deliver the medicine to all the Sentinels that traveled to the Sea of Spores? Have you delivered them all? They are all healthy individuals, and there's probably no need to worry, but it's best to have them take the medication. Better safe than sorry, right? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30217-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30217-01.html new file mode 100644 index 0000000000..5cbd7267e0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30217-01.html @@ -0,0 +1,3 @@ +Sentinel Berros:
+Ah, the medicine concocted by Cobendell. Thank you. Thank you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30219-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30219-01.html new file mode 100644 index 0000000000..20555cf063 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30219-01.html @@ -0,0 +1,3 @@ +Sentinel Veltress:
+Is this the medicine to treat the fever? Please tell Cobendell thank you for me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30221-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30221-01.html new file mode 100644 index 0000000000..547d759a4c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30221-01.html @@ -0,0 +1,3 @@ +Sentinel Rayen:
+Ah, is this the fever medication? If only this could also erase the horrendous memories of my experiences in the Sea of Spores. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-00.htm new file mode 100644 index 0000000000..48edc13d30 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-00.htm @@ -0,0 +1,4 @@ +Sentinel Knight Alberius:
+Well I must say, I do have a very important task at hand... but I cannot ask one who is not an Elf to perform this task.
+(This quest may only be undertaken by Elf characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-02.htm new file mode 100644 index 0000000000..dd7a115d4a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-02.htm @@ -0,0 +1,3 @@ +Sentinel Knight Alberius:
+Go and seek Master Cobendell, who resides within the Sanctum of Eva. Give him this letter and tell him that Alberius has sent you. Cobendell will provide further details. Please hurry. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-03.html new file mode 100644 index 0000000000..5ec7636fc8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-03.html @@ -0,0 +1,3 @@ +Sentinel Knight Alberius:
+What, you haven't gone yet? Go on, take the letter I have given you and find Master Cobendell. He'll be at the Sanctum of Eva, where the Hierarchs are. Please hurry. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-04.html new file mode 100644 index 0000000000..687b914fca --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-04.html @@ -0,0 +1,5 @@ +Sentinel Knight Alberius:
+Ah, Master Cobendell has completed his medicine. Here, give me one for starters.
+I need to make one more request of you. I would like you to deliver the rest of this medicine to the other Sentinels. In these times, with Dark Elven spies always watching for signs of weakness, none of the sentinels, including myself, dare to leave our posts. I need you to deal with this, because we do not want to give off the impression that we sentinels, the protectors of the woods, are harmed or affected in the slightest. Please honor my request and grant me this favor.
+The other Sentinels who traveled to the Sea of Spores are Berry, Veltress, Rayen, and Gartrandell. I have written down their names on this list. Come and seek me again after you have delivered the medicine to them. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-05.html new file mode 100644 index 0000000000..e429c7a8ea --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-05.html @@ -0,0 +1,3 @@ +Sentinel Knight Alberius:
+Please deliver Cobendell's Medicine to the sentinels on my list. Thank you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-06.html new file mode 100644 index 0000000000..0ca48f4dfe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-06.html @@ -0,0 +1,5 @@ +Sentinel Knight Alberius:
+Have you delivered all of the medicine to the Sentinels? Well done indeed, my friend. You have performed a great deed for the Sentinels, guardians of the wood.
+As the representative of the sentinels, I hereby present you with this. This is a precious weapon that symbolizes the honor and pride of those who protect the sacred woods and the Mother Tree. I ask only that you see that this weapon is not used in unjust causes.
+Until the day we meet again, may the smiles of the stars light your path. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-07.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-07.htm new file mode 100644 index 0000000000..1fb2df19d2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-07.htm @@ -0,0 +1,4 @@ +Sentinel Knight Alberius:
+I would like to ask you to carry out a task for me. This task must be swiftly and quietly completed without attracting the attention of the other Elves. Can I trust you with this?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-08.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-08.htm new file mode 100644 index 0000000000..bed2f65669 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-08.htm @@ -0,0 +1,6 @@ +Sentinel Knight Alberius:
+Recently the Human Mystics of the Ivory Tower and the top Spellsingers of our race have been working together to research methods to purify the poisons that fill the Sea of Spores, and perhaps some day return it to the beautiful forest it used to be.
+Recently Spellsinger Adria Lumingshine personally travelled to the Sea of Spores to gather materials necessary for research, and a few Sentinels, including myself, accompanied her to that horrendous place as her guards.
+But after she returned from her journey, Adria fell ill of a fever. They say that she has been infected with the poison from the Sea of Spores. Master Cobendell is concocting a medication, but is worried that he may be short on ingredients. If he lacks ingredients for his fever remedy, I would ask your help in gathering those ingredients.
+(Elf characters with Level 12 and higher may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-09.html new file mode 100644 index 0000000000..171c628ac3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30284-09.html @@ -0,0 +1,3 @@ +Sentinel Knight Alberius:
+I hear that Cobendell has asked you to gather dryad tears. Dryads may be found in the remote corners of the Elven Forest. Their appearance may indeed be beautiful, but be careful -- they have a deep-rooted hatred for our race. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30285-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30285-01.html new file mode 100644 index 0000000000..3f8fa7091e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/30285-01.html @@ -0,0 +1,3 @@ +Sentinel Gartrandell:
+I don't think anything's wrong with me ... But Alberius has ordered me to take this medicine, and I must follow my orders. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/Q00102_SeaOfSporesFever.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/Q00102_SeaOfSporesFever.java new file mode 100644 index 0000000000..814ac5f39a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00102_SeaOfSporesFever/Q00102_SeaOfSporesFever.java @@ -0,0 +1,292 @@ +/* + * 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.Q00102_SeaOfSporesFever; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Sea of Spores Fever (102) + * @author xban1x + */ +public class Q00102_SeaOfSporesFever extends Quest +{ + // NPCs + private static final int COBENDELL = 30156; + private static final int BERROS = 30217; + private static final int VELTRESS = 30219; + private static final int RAYEN = 30221; + private static final int ALBERIUS = 30284; + private static final int GARTRANDELL = 30285; + // Monsters + private static final int DRYAD = 20013; + private static final int DRYAD_ELDER = 20019; + // Items + private static final int SWORD_OF_SENTINEL = 743; + private static final int STAFF_OF_SENTINEL = 744; + private static final int ALBERIUS_LIST = 746; + private static final int ALBERIUS_LETTER = 964; + private static final int EVERGREEN_AMULET = 965; + private static final int DRYADS_TEAR = 966; + private static final int LESSER_HEALING_POTION = 1060; + private static final int COBENDELLS_MEDICINE1 = 1130; + private static final int COBENDELLS_MEDICINE2 = 1131; + private static final int COBENDELLS_MEDICINE3 = 1132; + private static final int COBENDELLS_MEDICINE4 = 1133; + private static final int COBENDELLS_MEDICINE5 = 1134; + private static final int SOULSHOT_NO_GRADE = 1835; + private static final int SPIRITSHOT_NO_GRADE = 2509; + private static final int ECHO_CRYSTAL_THEME_OF_BATTLE = 4412; + private static final int ECHO_CRYSTAL_THEME_OF_LOVE = 4413; + private static final int ECHO_CRYSTAL_THEME_OF_SOLITUDE = 4414; + private static final int ECHO_CRYSTAL_THEME_OF_FEAST = 4415; + private static final int ECHO_CRYSTAL_THEME_OF_CELEBRATION = 4416; + // Misc + private static final int MIN_LVL = 12; + private static final Map SENTINELS = new HashMap<>(); + static + { + SENTINELS.put(GARTRANDELL, COBENDELLS_MEDICINE5); + SENTINELS.put(RAYEN, COBENDELLS_MEDICINE4); + SENTINELS.put(VELTRESS, COBENDELLS_MEDICINE3); + SENTINELS.put(BERROS, COBENDELLS_MEDICINE2); + SENTINELS.put(ALBERIUS, COBENDELLS_MEDICINE1); + } + + public Q00102_SeaOfSporesFever() + { + super(102); + addStartNpc(ALBERIUS); + addTalkId(ALBERIUS, COBENDELL, GARTRANDELL, BERROS, VELTRESS, RAYEN); + addKillId(DRYAD, DRYAD_ELDER); + registerQuestItems(ALBERIUS_LIST, ALBERIUS_LETTER, EVERGREEN_AMULET, DRYADS_TEAR, COBENDELLS_MEDICINE1, COBENDELLS_MEDICINE2, COBENDELLS_MEDICINE3, COBENDELLS_MEDICINE4, COBENDELLS_MEDICINE5); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equals("30284-02.htm")) + { + st.startQuest(); + giveItems(player, ALBERIUS_LETTER, 1); + return event; + } + return super.onAdvEvent(event, npc, player); + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(2) && (getRandom(10) < 3)) + { + giveItems(killer, DRYADS_TEAR, 1); + if (getQuestItemsCount(killer, DRYADS_TEAR) < 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + else + { + st.setCond(3, true); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (npc.getId()) + { + case ALBERIUS: + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = player.getRace() == Race.ELF ? player.getLevel() >= MIN_LVL ? "30284-07.htm" : "30284-08.htm" : "30284-00.htm"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + if (hasQuestItems(player, ALBERIUS_LETTER)) + { + htmltext = "30284-03.html"; + } + break; + } + case 2: + { + if (hasQuestItems(player, EVERGREEN_AMULET)) + { + htmltext = "30284-09.html"; + } + break; + } + case 4: + { + if (hasQuestItems(player, COBENDELLS_MEDICINE1)) + { + takeItems(player, COBENDELLS_MEDICINE1, 1); + giveItems(player, ALBERIUS_LIST, 1); + st.setCond(5); + htmltext = "30284-04.html"; + } + break; + } + case 5: + { + if (hasAtLeastOneQuestItem(player, COBENDELLS_MEDICINE1, COBENDELLS_MEDICINE2, COBENDELLS_MEDICINE3, COBENDELLS_MEDICINE4, COBENDELLS_MEDICINE5)) + { + htmltext = "30284-05.html"; + } + break; + } + case 6: + { + if (!hasAtLeastOneQuestItem(player, COBENDELLS_MEDICINE1, COBENDELLS_MEDICINE2, COBENDELLS_MEDICINE3, COBENDELLS_MEDICINE4, COBENDELLS_MEDICINE5)) + { + giveItems(player, LESSER_HEALING_POTION, 100); + giveItems(player, ECHO_CRYSTAL_THEME_OF_BATTLE, 10); + giveItems(player, ECHO_CRYSTAL_THEME_OF_LOVE, 10); + giveItems(player, ECHO_CRYSTAL_THEME_OF_SOLITUDE, 10); + giveItems(player, ECHO_CRYSTAL_THEME_OF_FEAST, 10); + giveItems(player, ECHO_CRYSTAL_THEME_OF_CELEBRATION, 10); + if (player.isMageClass()) + { + giveItems(player, STAFF_OF_SENTINEL, 1); + giveItems(player, SPIRITSHOT_NO_GRADE, 500); + } + else + { + giveItems(player, SWORD_OF_SENTINEL, 1); + giveItems(player, SOULSHOT_NO_GRADE, 500); + } + addExpAndSp(player, 30202, 1339); + giveAdena(player, 6331, true); + st.exitQuest(false, true); + htmltext = "30284-06.html"; + } + break; + } + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + break; + } + case COBENDELL: + { + switch (st.getCond()) + { + case 1: + { + if (hasQuestItems(player, ALBERIUS_LETTER)) + { + takeItems(player, ALBERIUS_LETTER, 1); + giveItems(player, EVERGREEN_AMULET, 1); + st.setCond(2, true); + htmltext = "30156-03.html"; + } + break; + } + case 2: + { + if (hasQuestItems(player, EVERGREEN_AMULET) && (getQuestItemsCount(player, DRYADS_TEAR) < 10)) + { + htmltext = "30156-04.html"; + } + break; + } + case 3: + { + if (getQuestItemsCount(player, DRYADS_TEAR) >= 10) + { + takeItems(player, EVERGREEN_AMULET, -1); + takeItems(player, DRYADS_TEAR, -1); + giveItems(player, COBENDELLS_MEDICINE1, 1); + giveItems(player, COBENDELLS_MEDICINE2, 1); + giveItems(player, COBENDELLS_MEDICINE3, 1); + giveItems(player, COBENDELLS_MEDICINE4, 1); + giveItems(player, COBENDELLS_MEDICINE5, 1); + st.setCond(4, true); + htmltext = "30156-05.html"; + } + break; + } + case 4: + { + if (hasAtLeastOneQuestItem(player, COBENDELLS_MEDICINE1, COBENDELLS_MEDICINE2, COBENDELLS_MEDICINE3, COBENDELLS_MEDICINE4, COBENDELLS_MEDICINE5)) + { + htmltext = "30156-06.html"; + } + break; + } + case 5: + { + if (hasAtLeastOneQuestItem(player, COBENDELLS_MEDICINE1, COBENDELLS_MEDICINE2, COBENDELLS_MEDICINE3, COBENDELLS_MEDICINE4, COBENDELLS_MEDICINE5)) + { + htmltext = "30156-07.html"; + } + break; + } + } + break; + } + case GARTRANDELL: + case RAYEN: + case VELTRESS: + case BERROS: + { + if (hasQuestItems(player, ALBERIUS_LIST, SENTINELS.get(npc.getId()))) + { + takeItems(player, SENTINELS.get(npc.getId()), -1); + if (!hasAtLeastOneQuestItem(player, COBENDELLS_MEDICINE1, COBENDELLS_MEDICINE2, COBENDELLS_MEDICINE3, COBENDELLS_MEDICINE4, COBENDELLS_MEDICINE5)) + { + st.setCond(6); + } + htmltext = npc.getId() + "-01.html"; + } + break; + } + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-01.html new file mode 100644 index 0000000000..53898aaaef --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-01.html @@ -0,0 +1,5 @@ +Abyssal Celebrant Cecktinon:
+A letter for me from Blacksmith Karrod ...? Hmm, what use does he have for the soul of a Dwarf slave who is already dead ... Whatever the reason may be, I cannot refuse my friend's request. It has been less than ten years since Steelbender died, and I don't think it would be difficult to call his spirit up from the kingdom of Shilen.
+This Well of Souls in the middle of the temple is connected to the kingdom of the dead, where Shilen rules. Shall we call it, say, a sort of mirror that lets us see into the kingdom of death? We abyssal celebrants call upon the spirits of our ancestors to seek their advice, or enemy generals that have been killed on the battlefield to learn their secrets, through this well of souls.
+But to call upon a spirit of the dead from the well of souls and capture it in this world, something called a Soul Catcher is required. Sadly, I don't have a Soul Catcher with me, but you should be able to obtain one by going to Magister Harne in the village. I purchase all of my materials for spell casting or rituals from Harne. I will write you a Letter of Introduction, so go to Magister Harne and ask about the Soul Catcher. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-02.html new file mode 100644 index 0000000000..dd857fe4ca --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-02.html @@ -0,0 +1,3 @@ +Abyssal Celebrant Cecktinon:
+You haven't sought out Magister Harne yet? Go and show her the Letter of Introduction I wrote you, and ask about the Soul Catcher. We must have a Soul Catcher to proceed with the ritual summoning of Steelbender's spirit. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-03.html new file mode 100644 index 0000000000..c01adfe082 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-03.html @@ -0,0 +1,4 @@ +Abyssal Celebrant Cecktinon:
+You have brought me the Soul Catcher. Now I can start the ritual calling upon the dead Dwarf's spirit. Did you say the slave's name was Roberto Steelbender?
+While I am preparing for this ritual, there is one thing that you can do for me. It seems that Karrod has a lot to ask this Dwarven slave, so shouldn't we make it a little easier for them to talk? There are many zombies in the swamp area. Go and bring me the head of a zombie. Make sure it is not too decayed or mangled. When you have obtained the zombie's head, rub this oil on it so that it does not rot, then bring the head to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-04.html new file mode 100644 index 0000000000..f9a546df62 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-04.html @@ -0,0 +1,3 @@ +Abyssal Celebrant Cecktinon:
+If you keep interrupting me, it will interfere with my ritual. Go to the swamp and bring me the head of a zombie. I need an intact head that is not decayed or mangled. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-05.html new file mode 100644 index 0000000000..839890e5c7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-05.html @@ -0,0 +1,5 @@ +Abyssal Celebrant Cecktinon:
+This Zombie Head is in excellent condition. The chin area moves well, and all the teeth are still intact. This will do.
+... I command you in the name of the abyss which rules over death. I hereby seal you to this spirit of power ...
+I have just transferred Steelbender's spirit, trapped in the Soul Catcher, into the head of the zombie and sealed it within. That should let him answer Karrod's questions. Please deliver this head to Blacksmith Karrod. We have applied a preservation oil on the zombie's head, but the effects do not last very long. After a few days, the head will decay and the spirit trapped within will escape back to the kingdom of the dead, so tell Karrod to finish his business with Steelbender before then. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-06.html new file mode 100644 index 0000000000..f71a7ae394 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30132-06.html @@ -0,0 +1,3 @@ +Abyssal Celebrant Cecktinon:
+You haven't gone to the village yet? Go and deliver the head that holds the trapped spirit of Steelbender to Blacksmith Karrod before it begins to rot. You can find him at the village forge. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30144-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30144-01.html new file mode 100644 index 0000000000..4c9fb79a4b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30144-01.html @@ -0,0 +1,4 @@ +Magister Harne:
+You need a Soul Catcher? Planning on an exorcism ritual or something? The Abyssal Celebrants have conducted rituals to call the dead up from Shilen's kingdom for hundreds of years now, but I am always nervous -- long ago, the celebrants once called upon a dangerous entity that could not be sent back. Eventually, the elders were called upon to take care of the matter and the spirit was finally restrained, but as a result of that event many Celebrants lost their lives. The dead should be left dead. I do not attempt dangerous magic such as exorcism.
+Anyhow, it seems that Cecktinon needs a Soul Catcher, so I guess I must make one. For that, I will need the bones of the dead. The older the bones, the better. Please do me a favor -- go to the abandoned School of Dark Arts and hunt the undead that take the form of skeletons. Gather ten undead Bone Fragments and come back to me. I will make you the Soul Catcher with those bones.
+The School of Dark Arts is located southwest of the village. If you do not know the way there, ask Sentry Kayleen for directions. \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30144-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30144-02.html new file mode 100644 index 0000000000..481dcc5e8e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30144-02.html @@ -0,0 +1,3 @@ +Magister Harne:
+To create the Soul Catcher that Abyssal Celebrant Cecktinon has asked for, I need ten undead Bone Fragments. You can gather the Bone Fragments by hunting undead skeletons at the abandoned School of Dark Arts located southwest of the village. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30144-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30144-03.html new file mode 100644 index 0000000000..762679404e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30144-03.html @@ -0,0 +1,4 @@ +Magister Harne:
+Good, now I can create a Soul Catcher from this. Like a fisherman catches fish with his net, the Abyssal Celebrants can capture the spirits of the dead from the well of souls. But unless the spirit is tied to this world, it flows back into the well. That's why a Soul Catcher is necessary. Simply put, it is a sort of bowl where the spirit of the dead can be held.
+Here, it is complete. When you go to the temple, please give Abyssal Celebrant Cecktinon my regards. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30144-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30144-04.html new file mode 100644 index 0000000000..e6e3d40baf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30144-04.html @@ -0,0 +1,3 @@ +Magister Harne:
+Take the Soul Catcher that I have made to Cecktinon at the Shilen Temple. Hurry! We shouldn't keep the Abyssal Celebrant waiting. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-01.htm new file mode 100644 index 0000000000..071903819e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-01.htm @@ -0,0 +1,5 @@ +Blacksmith Karrod:
+It pains me to say it, but I will have no business with you. I just do not trust other races ...
+No offense.
+(Quest for Dark Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-02.htm new file mode 100644 index 0000000000..090cfc2cf3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-02.htm @@ -0,0 +1,4 @@ +Blacksmith Karrod:
+In a few days, the shipment of Oriharukon Ore that I ordered from the Dwarves in Giran will be arriving. Tetrarch Thifiell has commissioned me to make Oriharukon blades. But I am worried that I may not be able to make a blade good enough to satisfy the Tetrarch, as I am still unskilled in handling Oriharukon metals. As soon as the Oriharukon is delivered, I will start looking for ways to handle the metal. I may require your assistance then.
+(Quest for Dark Elven characters level 10 or above.) + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-03.htm new file mode 100644 index 0000000000..62764d9af6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-03.htm @@ -0,0 +1,4 @@ +Blacksmith Karrod:
+Recently I ordered a large amount of Oriharukon Ore from the Dwarven Blacksmiths of Giran. Tetrarch Thifiell has commissioned me to make Oriharukon blades. But I am having difficulties, since I am not skilled in working with this material. This precious metal is particularly difficult in all steps of manufacturing, even from its Augmentation stage. If only Steelbender were here now, I would be able to ask him ...
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-04.htm new file mode 100644 index 0000000000..6125f763cf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-04.htm @@ -0,0 +1,6 @@ +Blacksmith Karrod:
+Roberto Steelbender ... He was a Dwarven Warsmith that was enslaved by we Dark Elves for nearly a century. Warsmith is a Dwarven title given to the most elite Dwarven Blacksmiths. I learned my skills from that slave Blacksmith.
+For decades, I worked hard under his direction, but there was always a limit to what I could do. No matter how closely I followed his instructions, the weapons and shields I made were always missing something, and always a bit dull. Then I found out that Steelbender had only taught me basic knowledge and hidden the most important skills from me -- he said that those skills were only passed on to the Dwarves and that he couldn't teach me ... I put him on a torture device and extracted those skills from him after 15 days of torture. Sadly, he couldn't stand the pain and died, but not before I found out the methods for manipulating Mithril, adamantite and Damascus metals.
+This time around, I plan to call upon the spirit of Steelbender and ask him about the Augmentation process of Oriharukon. To do that, I am going to have to ask the Abyssal Celebrants of Shilen for exorcism rituals and prepare various materials. Do you think you can help?
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-05.htm new file mode 100644 index 0000000000..39fc397949 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-05.htm @@ -0,0 +1,3 @@ +Blacksmith Karrod:
+First, head to the Shilen Temple and give this letter to Abyssal Celebrant Cecktinon. Thank you. He is a friend of mine. He will gladly help. He will tell you about the exorcism spell to call the soul of Steelbender from the abyss. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-06.html new file mode 100644 index 0000000000..a70c3940da --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-06.html @@ -0,0 +1,3 @@ +Blacksmith Karrod:
+Go and deliver my letter to the Abyssal Celebrant Cecktinon at the Shilen Temple. Hurry! Tetrarch Thifiell is an impatient man. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-07.html new file mode 100644 index 0000000000..0d36caa337 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/30307-07.html @@ -0,0 +1,4 @@ +Blacksmith Karrod:
+Steelbender's spirit is contained in this head? I see that Abyssal Celebrant Cecktinon went to great lengths for this. So now I can receive personal lessons from Steelbender about the refining of Oriharukon. You've done well, my friend. For helping me out, I will give this sword to you. It may sound like I am boasting, but it's a very useful weapon. Put it to good use.
+Now, shall we start ... Hey, Steelbender! What has it been, a decade now? Different head, but that dumb expression is still the same. Let's keep our welcomes short ... I've got a lot to ask you ... + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/Q00103_SpiritOfCraftsman.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/Q00103_SpiritOfCraftsman.java new file mode 100644 index 0000000000..c67394d5c6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00103_SpiritOfCraftsman/Q00103_SpiritOfCraftsman.java @@ -0,0 +1,267 @@ +/* + * 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.Q00103_SpiritOfCraftsman; + +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Spirit of Craftsman (103) + * @author janiko + */ +public final class Q00103_SpiritOfCraftsman extends Quest +{ + // NPCs + private static final int BLACKSMITH_KAROYD = 30307; + private static final int CECON = 30132; + private static final int HARNE = 30144; + // Items + private static final int KAROYDS_LETTER = 968; + private static final int CECKTINONS_VOUCHER1 = 969; + private static final int CECKTINONS_VOUCHER2 = 970; + private static final int SOUL_CATCHER = 971; + private static final int PRESERVE_OIL = 972; + private static final int ZOMBIE_HEAD = 973; + private static final int STEELBENDERS_HEAD = 974; + private static final int BONE_FRAGMENT = 1107; + // Monsters + private static final int MARSH_ZOMBIE = 20015; + private static final int DOOM_SOLDIER = 20455; + private static final int SKELETON_HUNTER = 20517; + private static final int SKELETON_HUNTER_ARCHER = 20518; + // Rewards + private static final int BLOODSABER = 975; + private static final ItemHolder[] REWARDS = + { + new ItemHolder(1060, 100), // Lesser Healing Potion + new ItemHolder(4412, 10), // Echo Crystal - Theme of Battle + new ItemHolder(4413, 10), // Echo Crystal - Theme of Love + new ItemHolder(4414, 10), // Echo Crystal - Theme of Solitude + new ItemHolder(4415, 10), // Echo Crystal - Theme of Feast + new ItemHolder(4416, 10), // Echo Crystal - Theme of Celebration + }; + // Misc + private static final int MIN_LVL = 10; + + public Q00103_SpiritOfCraftsman() + { + super(103); + addStartNpc(BLACKSMITH_KAROYD); + addTalkId(BLACKSMITH_KAROYD, CECON, HARNE); + addKillId(MARSH_ZOMBIE, DOOM_SOLDIER, SKELETON_HUNTER, SKELETON_HUNTER_ARCHER); + registerQuestItems(KAROYDS_LETTER, CECKTINONS_VOUCHER1, CECKTINONS_VOUCHER2, SOUL_CATCHER, PRESERVE_OIL, ZOMBIE_HEAD, STEELBENDERS_HEAD, BONE_FRAGMENT); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + String htmltext = null; + if (qs == null) + { + return htmltext; + } + switch (event) + { + case "30307-04.htm": + { + htmltext = event; + break; + } + case "30307-05.htm": + { + if (qs.isCreated()) + { + qs.startQuest(); + giveItems(player, KAROYDS_LETTER, 1); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance talker) + { + final QuestState qs = getQuestState(talker, true); + String htmltext = getNoQuestMsg(talker); + switch (npc.getId()) + { + case BLACKSMITH_KAROYD: + { + if (qs.isCreated()) + { + if (talker.getRace() != Race.DARK_ELF) + { + htmltext = "30307-01.htm"; + } + else if (talker.getLevel() < MIN_LVL) + { + htmltext = "30307-02.htm"; + } + else + { + htmltext = "30307-03.htm"; + } + } + else if (qs.isStarted()) + { + if (hasAtLeastOneQuestItem(talker, KAROYDS_LETTER, CECKTINONS_VOUCHER1, CECKTINONS_VOUCHER2)) + { + htmltext = "30307-06.html"; + } + else if (hasQuestItems(talker, STEELBENDERS_HEAD)) + { + // Q00281_HeadForTheHills.giveNewbieReward(talker); + addExpAndSp(talker, 46663, 3999); + giveAdena(talker, 19799, true); + for (ItemHolder reward : REWARDS) + { + rewardItems(talker, reward); + } + rewardItems(talker, BLOODSABER, 1); + qs.exitQuest(false, true); + talker.sendPacket(new SocialAction(talker.getObjectId(), 3)); + htmltext = "30307-07.html"; + } + } + else if (qs.isCompleted()) + { + htmltext = getAlreadyCompletedMsg(talker); + break; + } + } + case CECON: + { + if (qs.isStarted()) + { + if (hasQuestItems(talker, KAROYDS_LETTER)) + { + qs.setCond(2, true); + takeItems(talker, KAROYDS_LETTER, 1); + giveItems(talker, CECKTINONS_VOUCHER1, 1); + htmltext = "30132-01.html"; + } + else if (hasAtLeastOneQuestItem(talker, CECKTINONS_VOUCHER1, CECKTINONS_VOUCHER2)) + { + htmltext = "30132-02.html"; + } + else if (hasQuestItems(talker, SOUL_CATCHER)) + { + qs.setCond(6, true); + takeItems(talker, SOUL_CATCHER, 1); + giveItems(talker, PRESERVE_OIL, 1); + htmltext = "30132-03.html"; + } + else if (hasQuestItems(talker, PRESERVE_OIL) && !hasQuestItems(talker, ZOMBIE_HEAD, STEELBENDERS_HEAD)) + { + htmltext = "30132-04.html"; + } + else if (hasQuestItems(talker, ZOMBIE_HEAD)) + { + qs.setCond(8, true); + takeItems(talker, ZOMBIE_HEAD, 1); + giveItems(talker, STEELBENDERS_HEAD, 1); + htmltext = "30132-05.html"; + } + else if (hasQuestItems(talker, STEELBENDERS_HEAD)) + { + htmltext = "30132-06.html"; + } + } + break; + } + case HARNE: + { + if (qs.isStarted()) + { + if (hasQuestItems(talker, CECKTINONS_VOUCHER1)) + { + qs.setCond(3, true); + takeItems(talker, CECKTINONS_VOUCHER1, 1); + giveItems(talker, CECKTINONS_VOUCHER2, 1); + htmltext = "30144-01.html"; + } + else if (hasQuestItems(talker, CECKTINONS_VOUCHER2)) + { + if (getQuestItemsCount(talker, BONE_FRAGMENT) >= 10) + { + qs.setCond(5, true); + takeItems(talker, CECKTINONS_VOUCHER2, 1); + takeItems(talker, BONE_FRAGMENT, 10); + giveItems(talker, SOUL_CATCHER, 1); + htmltext = "30144-03.html"; + } + else + { + htmltext = "30144-02.html"; + } + } + else if (hasQuestItems(talker, SOUL_CATCHER)) + { + htmltext = "30144-04.html"; + } + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getRandomPartyMemberState(killer, -1, 3, npc); + if (qs == null) + { + return super.onKill(npc, killer, isSummon); + } + + switch (npc.getId()) + { + case MARSH_ZOMBIE: + { + if (hasQuestItems(killer, PRESERVE_OIL) && (getRandom(10) < 5) && Util.checkIfInRange(1500, npc, killer, true)) + { + giveItems(killer, ZOMBIE_HEAD, 1); + takeItems(killer, PRESERVE_OIL, -1); + qs.setCond(7, true); + } + break; + } + case DOOM_SOLDIER: + case SKELETON_HUNTER: + case SKELETON_HUNTER_ARCHER: + { + if (hasQuestItems(killer, CECKTINONS_VOUCHER2) && giveItemRandomly(qs.getPlayer(), npc, BONE_FRAGMENT, 1, 10, 1.0, true)) + { + qs.setCond(4, true); + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-01.htm new file mode 100644 index 0000000000..15c4a9e5cf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-01.htm @@ -0,0 +1,5 @@ +Grand Magister Gallint:
+Young traveler of an alien race, how did you chance to journey to this remote island? I'm sure the Human world must seem fascinating to your eyes. I do wish I could speak with you longer, but unfortunately I have pressing matters to attend to, and cannot spend my time in idle conversation.
+When we both have more time, won't you tell me about your homeland?
+(Quest for Human characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-02.htm new file mode 100644 index 0000000000..ca12d77667 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-02.htm @@ -0,0 +1,5 @@ +Grand Magister Gallint:
+I don't know why, but the magic defense field that I erected around the school of magic disappeared a few days ago. I have restored most of the shields, but I am worried that the spirits that were kept within the school for research have escaped to the outside.
+If some spirits have escaped, I may have to ask you to go and capture them ...
+(Quest for Human characters level 10 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-03.htm new file mode 100644 index 0000000000..6ba0e2567b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-03.htm @@ -0,0 +1,6 @@ +Grand Magister Gallint:
+Recently I have been studying the Spirit Of Mirrors. This spirit does not have a set form and reflects the form of others, like a mirror. The name Spirit Of Mirrors comes from that trait. I think that the magical creature called the doppelganger may also be an evolved form of the Spirit Of Mirrors.
+But there has been a problem! I don't know why, but the magic defense field that I built around the School of Magic disappeared a few days ago. Three of the spirits of mirrors kept in my research lab escaped during that time.
+I need to recapture the escaped spirits before they harm anyone, but my priority is in examining the shields around the magic school. So, please help me. Do you think you can find the spirits of mirrors for me? If you help, I will give you the wand of the adept as a reward. It is a very useful weapon for those walking the path of a mage.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-04.htm new file mode 100644 index 0000000000..a0f1459af7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-04.htm @@ -0,0 +1,5 @@ +Grand Magister Gallint:
+Thank you. Fortunately, I think the spirits have gone into the woods rather than to the village. Things may become complicated if a Spirit Of Mirrors encounters a dangerous beast and changes into its identical form, so they must be caught as soon as possible.
+To capture the Spirit Of Mirrors, you need this oak wand. Weaken the spirit by attacking it with sword or magic, then deliver the finishing blow with this oak wand, and you will be able to seal the spirit within the wand. I will give you three enchanted wands, one for each spirit that has escaped.
+The village guards may have found some helpful evidence during their patrol. It may be a good idea to stop by the village and speak to the guards. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-05.html new file mode 100644 index 0000000000..d18202755f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-05.html @@ -0,0 +1,4 @@ +Grand Magister Gallint:
+Go and capture all three escaped spirits of mirrors. Don't forget! You can only capture them using the oak wands I gave you.
+You might get some leads on the spirits of mirrors by speaking to the guards of the village. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-06.html new file mode 100644 index 0000000000..cfdfca1c59 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30017-06.html @@ -0,0 +1,4 @@ +Grand Magister Gallint:
+You have captured all the escaped spirits of mirrors! Thank you! Now that I have restored all the force fields around the School of Wizardry, the spirits will never escape again.
+I will give you this as a sign of my appreciation. It may not seem like much, but it will help bring out the hidden magic potential of its user. As Einhovant always says, true strength must be found within. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30041-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30041-01.html new file mode 100644 index 0000000000..7369868c94 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30041-01.html @@ -0,0 +1,4 @@ +Guard Arnold:
+Yesterday afternoon, as I was guarding the students of the magic school while they gathered materials near the Obelisk of Victory, a great toad crawled by. I wasn't paying much attention to it, but all of a sudden, that great toad turned into an Orc Warrior! I was startled and about to draw my sword, but I guess he felt threatened, escaping beyond the falls.
+I rubbed my eyes and asked the magister from the magic school what was going on and he had also clearly seen the toad turn into an Orc Warrior. I have no idea what happened. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30043-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30043-01.html new file mode 100644 index 0000000000..a0cc9843c4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30043-01.html @@ -0,0 +1,3 @@ +Guard Johnstone:
+A few days ago, while patrolling the western parts of the School of Wizardry, I encountered a werewolf near a bridge. I drew my bow and chased after him, but all of a sudden, his body started to waver, and he turned into a great toad! Do you think there are some werewolves that know how to perform strange magic? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30045-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30045-01.html new file mode 100644 index 0000000000..a64ab09d18 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/30045-01.html @@ -0,0 +1,3 @@ +Guard Kenyos:
+Last night, while patrolling the west coast of the island, I saw an Orc transforming into a werewolf! I thought I may have been seeing things, because I was so tired, but I asked the other guards and they all say that they saw the same thing! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/Q00104_SpiritOfMirrors.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/Q00104_SpiritOfMirrors.java new file mode 100644 index 0000000000..e7e1021fcf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00104_SpiritOfMirrors/Q00104_SpiritOfMirrors.java @@ -0,0 +1,180 @@ +/* + * 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.Q00104_SpiritOfMirrors; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.itemcontainer.Inventory; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Spirit of Mirrors (104) + * @author xban1x + */ +public final class Q00104_SpiritOfMirrors extends Quest +{ + // NPCs + private static final int GALLINT = 30017; + private static final int ARNOLD = 30041; + private static final int JOHNSTONE = 30043; + private static final int KENYOS = 30045; + // Items + private static final int GALLINTS_OAK_WAND = 748; + private static final int SPIRITBOUND_WAND1 = 1135; + private static final int SPIRITBOUND_WAND2 = 1136; + private static final int SPIRITBOUND_WAND3 = 1137; + // Monsters + private static final Map MONSTERS = new HashMap<>(); + static + { + MONSTERS.put(27003, SPIRITBOUND_WAND1); // Spirit Of Mirrors + MONSTERS.put(27004, SPIRITBOUND_WAND2); // Spirit Of Mirrors + MONSTERS.put(27005, SPIRITBOUND_WAND3); // Spirit Of Mirrors + } + // Rewards + private static final ItemHolder[] REWARDS = + { + new ItemHolder(1060, 100), // Lesser Healing Potion + new ItemHolder(4412, 10), // Echo Crystal - Theme of Battle + new ItemHolder(4413, 10), // Echo Crystal - Theme of Love + new ItemHolder(4414, 10), // Echo Crystal - Theme of Solitude + new ItemHolder(4415, 10), // Echo Crystal - Theme of Feast + new ItemHolder(4416, 10), // Echo Crystal - Theme of Celebration + new ItemHolder(747, 1), // Wand of Adept + }; + // Misc + private static final int MIN_LVL = 10; + + public Q00104_SpiritOfMirrors() + { + super(104); + addStartNpc(GALLINT); + addTalkId(ARNOLD, GALLINT, JOHNSTONE, KENYOS); + addKillId(MONSTERS.keySet()); + registerQuestItems(GALLINTS_OAK_WAND, SPIRITBOUND_WAND1, SPIRITBOUND_WAND2, SPIRITBOUND_WAND3); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equalsIgnoreCase("30017-04.htm")) + { + st.startQuest(); + giveItems(player, GALLINTS_OAK_WAND, 3); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && (st.isCond(1) || st.isCond(2)) && (getItemEquipped(killer, Inventory.PAPERDOLL_RHAND) == GALLINTS_OAK_WAND) && !hasQuestItems(killer, MONSTERS.get(npc.getId()))) + { + takeItems(killer, GALLINTS_OAK_WAND, 1); + giveItems(killer, MONSTERS.get(npc.getId()), 1); + if (hasQuestItems(killer, SPIRITBOUND_WAND1, SPIRITBOUND_WAND2, SPIRITBOUND_WAND3)) + { + st.setCond(3, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (npc.getId()) + { + case GALLINT: + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.HUMAN) ? (player.getLevel() >= MIN_LVL) ? "30017-03.htm" : "30017-02.htm" : "30017-01.htm"; + break; + } + case State.STARTED: + { + if (st.isCond(3) && hasQuestItems(player, SPIRITBOUND_WAND1, SPIRITBOUND_WAND2, SPIRITBOUND_WAND3)) + { + // Q00281_HeadForTheHills.giveNewbieReward(player); + for (ItemHolder reward : REWARDS) + { + giveItems(player, reward); + } + addExpAndSp(player, 39750, 3407); + giveAdena(player, 16866, true); + st.exitQuest(false, true); + htmltext = "30017-06.html"; + } + else + { + htmltext = "30017-05.html"; + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + break; + } + case ARNOLD: + case JOHNSTONE: + case KENYOS: + { + if (st.isCond(1)) + { + if (!st.isSet(npc.getName())) + { + st.set(npc.getName(), "1"); + } + if (st.isSet("Arnold") && st.isSet("Johnstone") && st.isSet("Kenyos")) + { + st.setCond(2, true); + } + } + htmltext = npc.getId() + "-01.html"; + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-01.htm new file mode 100644 index 0000000000..4749e63f10 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-01.htm @@ -0,0 +1,4 @@ +Sentinel Kendell:
+Traveller of a foreign race, the Elves are currently engaged in war with the kaboo Orc tribe. If you plan on travelling outside the village, take care not to become involved in the battle or you shall be hurt.
+(Quest for Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-02.htm new file mode 100644 index 0000000000..c3db80a1bd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-02.htm @@ -0,0 +1,5 @@ +Sentinel Kendell:
+Looking at young Elves today, I think that they are like fragile flowers growing under the shade of the Mother Tree. Granted, they learn the use of The Bow or arrow from many fine masters, or magic to command the elementals from wise sorcerors, but that is purely academic, and I worry that they may not be able to perform well in actual battle. Thus, I have always advocated that young Elves need to actively go into the battlefield and receive actual training.
+I'm sure you also want to see the results of your training, and also receive acknowledgement of your skills? Soon the Orc tribes from the Misty Mountains and our Elven Fighters will be having a skirmish. When the time comes, I will give you the chance to participate in battle.
+(Quest for Elven characters level 10 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-03.htm new file mode 100644 index 0000000000..7cd445430c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-03.htm @@ -0,0 +1,5 @@ +Sentinel Kendell:
+Recently the orcs of Fog Mountain have become bold, and have attacked our beautiful woods in large groups. Orcs have invaded our forests before, but never in such large numbers.
+We Elven fighters plan to take this opportunity to strike back at those orcs that invade our homes, so that they will never again try to take over the Elven Forest. Will you face the orcs as a member of the guardians?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-04.html new file mode 100644 index 0000000000..1d25e7edd0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-04.html @@ -0,0 +1,4 @@ +Sentinel Kendell:
+My young friend, I advise you to take this opportunity to prove your bravery. Now I will tell you exactly what role you must play from this moment on.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-05.html new file mode 100644 index 0000000000..3c5c832f84 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-05.html @@ -0,0 +1,5 @@ +Sentinel Kendell:
+As you know, the Elven fighting method is to form many squadrons and weaken the opponent's strength slowly through repeated attacks and retreats, rather than rely on a full scale clash between large armies. Bear this in mind. A retreat is not a shameful thing. If we retreat without overextending the fight, the opportunity for victory will always seek us out.
+Your task is to throw the opponents into turmoil by slaying their leaders. This decree lists which Orc leaders you must slay and where their locations are. The information has been written based on the reports of scouts, and is surely valid. Slay the targets and bring back proof of their deaths.
+Well, go on now. May the blessings of Eva be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-06.html new file mode 100644 index 0000000000..1fad96cf9e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-06.html @@ -0,0 +1,5 @@ +Sentinel Kendell:
+Young friend, why have you not left yet? We must spare no time in defeating the kaboo orcs that invade our beautiful woods!
+The orders I have given you list which Orc leaders you must slay and where their locations are. Slay the targets and bring back proof of their deaths. As your opponent is an Orc leader, take extra caution.
+Well, go on now. May the blessings of Eva be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-07.html new file mode 100644 index 0000000000..aebab2cc99 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-07.html @@ -0,0 +1,4 @@ +Sentinel Kendell:
+Well done indeed, my young friend. I have received reports that the kaboo orcs, having lost their leader, have scattered. Now it is only a matter of time before we can completely drive the scattered orcs out of our woods. May the souls of our brothers slain by the orcs be comforted through this...
+But the battle is not over yet. I have received reports that the Orc army is amassing near Lake Iris, south of the village. Your second task is to defeat one of the leaders of that army. This order contains details about the target you must face. Bear this in mind. An animal becomes violent if cornered. Be extra careful. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-08.html new file mode 100644 index 0000000000..4c62b3d874 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-08.html @@ -0,0 +1,4 @@ +Sentinel Kendell:
+Young friend, have you not left the village yet? The target you must slay is written on the orders I gave you. Slay him and bring back proof of his death.
+And take heed. An animal becomes violent if cornered. Be extra careful. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-09.html new file mode 100644 index 0000000000..6c4a64350c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/30218-09.html @@ -0,0 +1,6 @@ +Sentinel Kendell:
+By the looks of that amulet, I see that you have delivered Bhato Bloodspear to the eternal rest of the deep lake. I'm sure Shilen has taken his bloody soul.
+My comrade, you have fought well for the brothers of the woods. There is nothing more you need to do now. I have received word that the Orc army has retreated back to the Misty Mountains. I'm sure their severe defeat this time will be a lesson to them, and they will not attempt to take over our woods again. There are still orcs lurking in the woods, but they are mere stragglers that have strayed from their army.
+To commemorate your achievement in this battle, I will present you with this. This is a weapon used by our Red Sunset Brothers who fought alongside Alberius during the battle with the Elves. That clan has been disbanded now, but the swords and staffs they used are presented even now to talented youth that fight for the glory of our race.
+My young brother, until the day we meet again, may the brilliance of Mithril shine on the woods, lakes, and in your soul. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/Q00105_SkirmishWithOrcs.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/Q00105_SkirmishWithOrcs.java new file mode 100644 index 0000000000..d4301f1cb2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00105_SkirmishWithOrcs/Q00105_SkirmishWithOrcs.java @@ -0,0 +1,216 @@ +/* + * 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.Q00105_SkirmishWithOrcs; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Skimirish with Orcs (105) + * @author janiko + */ +public final class Q00105_SkirmishWithOrcs extends Quest +{ + // NPC + private static final int KENDNELL = 30218; + // Items + private static final int KENDELLS_1ST_ORDER = 1836; + private static final int KENDELLS_2ND_ORDER = 1837; + private static final int KENDELLS_3RD_ORDER = 1838; + private static final int KENDELLS_4TH_ORDER = 1839; + private static final int KENDELLS_5TH_ORDER = 1840; + private static final int KENDELLS_6TH_ORDER = 1841; + private static final int KENDELLS_7TH_ORDER = 1842; + private static final int KENDELLS_8TH_ORDER = 1843; + private static final int KABOO_CHIEFS_1ST_TORQUE = 1844; + private static final int KABOO_CHIEFS_2ST_TORQUE = 1845; + private static final Map MONSTER_DROP = new HashMap<>(); + static + { + MONSTER_DROP.put(27059, KENDELLS_1ST_ORDER); // Uoph (Kaboo Chief) + MONSTER_DROP.put(27060, KENDELLS_2ND_ORDER); // Kracha (Kaboo Chief) + MONSTER_DROP.put(27061, KENDELLS_3RD_ORDER); // Batoh (Kaboo Chief) + MONSTER_DROP.put(27062, KENDELLS_4TH_ORDER); // Tanukia (Kaboo Chief) + MONSTER_DROP.put(27064, KENDELLS_5TH_ORDER); // Turel (Kaboo Chief) + MONSTER_DROP.put(27065, KENDELLS_6TH_ORDER); // Roko (Kaboo Chief) + MONSTER_DROP.put(27067, KENDELLS_7TH_ORDER); // Kamut (Kaboo Chief) + MONSTER_DROP.put(27068, KENDELLS_8TH_ORDER); // Murtika (Kaboo Chief) + } + private static final int[] KENDNELLS_ORDERS = + { + KENDELLS_1ST_ORDER, + KENDELLS_2ND_ORDER, + KENDELLS_3RD_ORDER, + KENDELLS_4TH_ORDER, + KENDELLS_5TH_ORDER, + KENDELLS_6TH_ORDER, + KENDELLS_7TH_ORDER, + KENDELLS_8TH_ORDER + }; + // Misc + private static final int MIN_LVL = 10; + + public Q00105_SkirmishWithOrcs() + { + super(105); + addStartNpc(KENDNELL); + addTalkId(KENDNELL); + addKillId(MONSTER_DROP.keySet()); + registerQuestItems(KENDNELLS_ORDERS); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st == null) + { + return htmltext; + } + switch (event) + { + case "30218-04.html": + { + if (st.isCreated()) + { + st.startQuest(); + giveItems(player, KENDNELLS_ORDERS[getRandom(0, 3)], 1); + htmltext = event; + } + break; + } + case "30218-05.html": + { + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case 27059: + case 27060: + case 27061: + case 27062: + { + if (st.isCond(1) && hasQuestItems(killer, MONSTER_DROP.get(npc.getId()))) + { + giveItems(killer, KABOO_CHIEFS_1ST_TORQUE, 1); + st.setCond(2, true); + } + break; + } + case 27064: + case 27065: + case 27067: + case 27068: + { + if (st.isCond(3) && hasQuestItems(killer, MONSTER_DROP.get(npc.getId()))) + { + giveItems(killer, KABOO_CHIEFS_2ST_TORQUE, 1); + st.setCond(4, true); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance talker) + { + final QuestState st = getQuestState(talker, true); + String htmltext = getNoQuestMsg(talker); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + if (talker.getRace() == Race.ELF) + { + htmltext = (talker.getLevel() >= MIN_LVL) ? "30218-03.htm" : "30218-02.htm"; + } + else + { + htmltext = "30218-01.htm"; + } + break; + } + case State.STARTED: + { + if (hasAtLeastOneQuestItem(talker, KENDELLS_1ST_ORDER, KENDELLS_2ND_ORDER, KENDELLS_3RD_ORDER, KENDELLS_4TH_ORDER)) + { + htmltext = "30218-06.html"; + } + if (st.isCond(2) && hasQuestItems(talker, KABOO_CHIEFS_1ST_TORQUE)) + { + for (int i = 0; i < 4; i++) + { + takeItems(talker, KENDNELLS_ORDERS[i], -1); + } + takeItems(talker, KABOO_CHIEFS_1ST_TORQUE, 1); + giveItems(talker, KENDNELLS_ORDERS[getRandom(4, 7)], 1); + st.setCond(3, true); + htmltext = "30218-07.html"; + } + if (hasAtLeastOneQuestItem(talker, KENDELLS_5TH_ORDER, KENDELLS_6TH_ORDER, KENDELLS_7TH_ORDER, KENDELLS_8TH_ORDER)) + { + htmltext = "30218-08.html"; + } + if (st.isCond(4) && hasQuestItems(talker, KABOO_CHIEFS_2ST_TORQUE)) + { + // Q00281_HeadForTheHills.giveNewbieReward(talker); + talker.sendPacket(new SocialAction(talker.getObjectId(), 3)); + giveAdena(talker, 17599, true); + addExpAndSp(talker, 41478, 3555); + st.exitQuest(false, true); + htmltext = "30218-09.html"; + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(talker); + break; + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30133-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30133-01.html new file mode 100644 index 0000000000..dddb83b64c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30133-01.html @@ -0,0 +1,6 @@ +Abyssal Celebrant Kartia:
+How may I help you? Tetrarch Thifiell sent you? Oh, no ... I haven't even sent word yet, and he has already sent someone ...
+Well, I guess it will be best to just let you know the truth. Actually, four days ago, the exact day the Tetrarch asked me to do this translation work, in fact, I sent an apprentice to fetch the original Revelation from the Tetrarch. But while the apprentice was returning to the temple, he was attacked by Orcs and robbed of the documents.
+Before he was killed by the Orcs, the apprentice cast a spell on himself and came to me in the form of a mangled zombie. Just as the magic gave out, he informed me of the situation with his last dying breath. Based upon the intelligence that the apprentice gave me, I have released spirits everywhere for the last two days, and finally found where the lost scrolls are. The Orcs of the Blackskull tribe looted the documents. They are currently camped out in a region south of the Altar of Passage. To get to the altar, you must follow the path southwest of the village. Pass the School of Dark Arts and go further southwest. It's a considerable distance from here.
+You must track down those Orcs and recover the lost scrolls! You know very well what would happen if Tetrarch Thifiell were angered! Neither you nor I can be safe on the day he discovers that the scrolls have been stolen. Those scrolls must be brought back at once! Hurry! You must recover both the ancient clay tablet and the characters recorded on the sheepskin scroll. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30133-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30133-02.html new file mode 100644 index 0000000000..49fc0d20ce --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30133-02.html @@ -0,0 +1,4 @@ +Abyssal Celebrant Kartia:
+You haven't left yet?! I'm telling you one more time, the Black Skull tribe Orcs that took the Revelation are currently camped near the Altar of Passage. To get to the altar, you must follow the path southwest of the village. Pass the School of Dark Arts and go further southwest. It's a considerable distance from here.
+The day that the Tetrarch hears about the loss of the revelation is the day both our lives are in peril! I'm sure you know by now the fiery temper of the Tetrarch. I beg you to hurry! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30133-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30133-03.html new file mode 100644 index 0000000000..da7c61ea8b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30133-03.html @@ -0,0 +1,5 @@ +Abyssal Celebrant Kartia:
+Oh, you have recovered the scroll and the tablet. Thank you so much. Now I can start the translation.
+This sheepskin scroll is Kaisha's Revelation. And this clay tablet was recorded by Mystics in the Elmoreden age. It lists the kingdom's characters alongside the characters used by the giants, and is a key in translating the revelation. It's surprising that Tetrarch Thifiell even got his hands on this.
+All right! The translation is complete. Please take it. Go and deliver it to Tetrarch Thifiell at once. I must go now and create a copy of the original revelation. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30133-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30133-04.html new file mode 100644 index 0000000000..754631c627 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30133-04.html @@ -0,0 +1,3 @@ +Abyssal Celebrant Kartia:
+Go immediately and deliver my translations to Tetrarch Thifiell! Thifiell is very impatient and hates waiting. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-01.htm new file mode 100644 index 0000000000..82d1df912e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-01.htm @@ -0,0 +1,4 @@ +Tetrarch Thifiell:
+Curious foreign traveler, I have no favor to ask of you. As a rule, our race of darkness prefers not to receive the aid of others.
+(Quest for Dark Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-02.htm new file mode 100644 index 0000000000..f12b99b811 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-02.htm @@ -0,0 +1,5 @@ +Tetrarch Thifiell:
+Recently a portion of the School of Dark Arts collapsed and I was able to obtain an ancient document. Because it was written in the long lost language of the ancient giants, I have asked Abyssal Celebrant Kartia, who is well learned in the ancient languages, to translate it for me.
+When Kartia notifies me that he has completed the translation, I'd like you to bring that document to me. I think he will contact me soon, so come back again later.
+(Quest for Dark Elven characters level 10 or above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-03.htm new file mode 100644 index 0000000000..2d77d07684 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-03.htm @@ -0,0 +1,6 @@ +Tetrarch Thifiell:
+Recently, when a portion of the School of Dark Arts collapsed, a hidden room was revealed, and a portion of the ancient scroll called Kaisha's Revelation was discovered. Have you ever heard of this scroll?
+Fifty years ago, by the western shores of the Human kingdom Elmore, a number of very old sheepskin scrolls were discovered. According to Honorius, the Human scholar who discovered them, the scrolls were part of a religious text written in the Early Age of the Giants. Surprisingly, the writings of the scroll contained truths previously unknown to the world or else tainted by falsehoods, the legend of Gran Kain and Shillien.
+But unfortunately, Honorius was imprisoned by the foolish Humans who worship Einhasad before he could translate the scrolls, and the documents he had been translating were all taken from him. A ridiculous religious court hearing was held, and the judgment was even more unbelievable -- "The accused is hereby convicted of forgery of a heretical text in secret correspondence with the followers of the dark arts, and his blasphemy is unforgivable." In the end, this poor scholar was accused of being a pagan and was put to death by those religious leaders who feared the truth. Torched at the stake. The Humans say that our Dark Elven brothers are ruthless, but we can never be a match for the coldhearted cruelty of the Humans.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-04.htm new file mode 100644 index 0000000000..284564dab9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-04.htm @@ -0,0 +1,5 @@ +Tetrarch Thifiell:
+It is believed that at Honorius' execution by burning at the stake, the documents he had been translating were all burned, but there were also rumors that a portion of them had been stolen. The sheepskin scrolls were never found, and thus the rumors were believed to be false, but actually, they were hidden in the School of Dark Arts. That they found their way to me can only be considered Shillien's will.
+It's a shame that I cannot read the Revelations properly, because I do not know the language of the giants of ere. So I have asked Abyssal Celebrant Kartia, who is well learned in the ancient languages, to translate them for me. It has been four days, and I think that they should have been finished by now. I'd like you to go to the temple of Shillien, seek Abyssal Celebrant Kartia, and bring back the translated revelations to me. I'm sure it will be a learning experience for you also.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-05.htm new file mode 100644 index 0000000000..8fc927c36b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-05.htm @@ -0,0 +1,4 @@ +Tetrarch Thifiell:
+Go and seek Abyssal Celebrant Kartia in the Temple of Shillien. This black onyx necklace was promised to Kartia in return for the translation, so go deliver it to him, and return to me with the translated Revelations.
+Take care that no one hears about Kaisha's revelations. There are many dangerous characters who would stop at nothing to get their hands on that ancient scroll. For your safety and for mine, it would be best to take care of this matter quietly. Do you understand what I'm saying? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-06.html new file mode 100644 index 0000000000..3e7160131f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-06.html @@ -0,0 +1,3 @@ +Tetrarch Thifiell:
+What are you doing, you haven't gone to the temple yet?! Go immediately to the Temple of Shillien and seek Kartia. Give him the onyx talisman and return to me with the translated revelations. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-07.html new file mode 100644 index 0000000000..eaa19cbde9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/30358-07.html @@ -0,0 +1,6 @@ +Tetrarch Thifiell:
+Well done! I was just getting anxious that you were not returning ... So, is this the Kaisha's revelation that Kartia has translated? This ancient writing contains the dark inheritance passed on to our race, the truths that have been until now hidden by the Elves of Light and the Humans. Would you like to hear?
+In the beginning Gran Kain of the darkness and Einhasad of the light decreed us their children the lords of all creatures and had us rule all the earth ... Of the four children that were produced from the union of these two gods, the goddess born with the destiny to rule water was Shillien ... Later Einhasad borrowed the power of water from Shillien and created new life. The Treants, race of the trees. Shillien looked after this newly born race as a mother takes care of her child ...
+The Elves of light seek the origin of our race from the goddess Eva, but before she became the goddess of water, the title belonged to Shillien. Now the queen of death, Shillien is the true mother of our race. If you seek the path of darkness, keep this story deeply engraved in your mind. If you have studied the basics of the dark arts, you would know that the gods are the origin of the magic power that makes up this universe; thus the deeper the understanding of the gods, the greater the power of the one walking the path of darkness becomes.
+In honor of your new revelation, I will give you this weapon. It is a sharp blade that contains the magic power of the spirits. It will be useful in the future. But take care not to rely too heavily on such small tools. Never forget that the true power of magic lies within the Mystic. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/Q00106_ForgottenTruth.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/Q00106_ForgottenTruth.java new file mode 100644 index 0000000000..5b82ae404e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00106_ForgottenTruth/Q00106_ForgottenTruth.java @@ -0,0 +1,216 @@ +/* + * 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.Q00106_ForgottenTruth; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Forgotten Truth (106) + * @author janiko + */ +public final class Q00106_ForgottenTruth extends Quest +{ + // NPCs + private static final int THIFIELL = 30358; + private static final int KARTA = 30133; + // Monster + private static final int TUMRAN_ORC_BRIGAND = 27070; + // Items + private static final int ONYX_TALISMAN1 = 984; + private static final int ONYX_TALISMAN2 = 985; + private static final int ANCIENT_SCROLL = 986; + private static final int ANCIENT_CLAY_TABLET = 987; + private static final int KARTAS_TRANSLATION = 988; + // Misc + private static final int MIN_LVL = 10; + + public Q00106_ForgottenTruth() + { + super(106); + addStartNpc(THIFIELL); + addTalkId(THIFIELL, KARTA); + addKillId(TUMRAN_ORC_BRIGAND); + registerQuestItems(KARTAS_TRANSLATION, ONYX_TALISMAN1, ONYX_TALISMAN2, ANCIENT_SCROLL, ANCIENT_CLAY_TABLET); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st == null) + { + return htmltext; + } + switch (event) + { + case "30358-04.htm": + { + htmltext = event; + break; + } + case "30358-05.htm": + { + if (st.isCreated()) + { + st.startQuest(); + giveItems(player, ONYX_TALISMAN1, 1); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(2) && Util.checkIfInRange(1500, npc, killer, true)) + { + if ((getRandom(100) < 20) && hasQuestItems(killer, ONYX_TALISMAN2)) + { + if (!hasQuestItems(killer, ANCIENT_SCROLL)) + { + giveItems(killer, ANCIENT_SCROLL, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, ANCIENT_CLAY_TABLET)) + { + st.setCond(3, true); + giveItems(killer, ANCIENT_CLAY_TABLET, 1); + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance talker) + { + final QuestState st = getQuestState(talker, true); + String htmltext = getNoQuestMsg(talker); + if (st == null) + { + return htmltext; + } + + switch (npc.getId()) + { + case THIFIELL: + { + switch (st.getState()) + { + case State.CREATED: + { + if (talker.getRace() == Race.DARK_ELF) + { + htmltext = talker.getLevel() >= MIN_LVL ? "30358-03.htm" : "30358-02.htm"; + } + else + { + htmltext = "30358-01.htm"; + } + break; + } + case State.STARTED: + { + if (hasAtLeastOneQuestItem(talker, ONYX_TALISMAN1, ONYX_TALISMAN2) && !hasQuestItems(talker, KARTAS_TRANSLATION)) + { + htmltext = "30358-06.html"; + } + else if (st.isCond(4) && hasQuestItems(talker, KARTAS_TRANSLATION)) + { + // Q00281_HeadForTheHills.giveNewbieReward(talker); + talker.sendPacket(new SocialAction(talker.getObjectId(), 3)); + giveAdena(talker, 10266, true); + addExpAndSp(talker, 24195, 2074); + st.exitQuest(false, true); + htmltext = "30358-07.html"; + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(talker); + break; + } + } + break; + } + case KARTA: + { + if (st.isStarted()) + { + switch (st.getCond()) + { + case 1: + { + if (hasQuestItems(talker, ONYX_TALISMAN1)) + { + st.setCond(2, true); + takeItems(talker, ONYX_TALISMAN1, -1); + giveItems(talker, ONYX_TALISMAN2, 1); + htmltext = "30133-01.html"; + } + break; + } + case 2: + { + if (hasQuestItems(talker, ONYX_TALISMAN2)) + { + htmltext = "30133-02.html"; + } + break; + } + case 3: + { + if (hasQuestItems(talker, ANCIENT_SCROLL, ANCIENT_CLAY_TABLET)) + { + st.setCond(4, true); + takeItems(talker, -1, ANCIENT_SCROLL, ANCIENT_CLAY_TABLET, ONYX_TALISMAN2); + giveItems(talker, KARTAS_TRANSLATION, 1); + htmltext = "30133-03.html"; + } + break; + } + case 4: + { + if (hasQuestItems(talker, KARTAS_TRANSLATION)) + { + htmltext = "30133-04.html"; + } + break; + } + + } + } + break; + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-01.htm new file mode 100644 index 0000000000..2035905fcf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-01.htm @@ -0,0 +1,4 @@ +Urutu Chief Hatos:
+I, Urutu Chief Hatos, do not assign quests to pitiful underlings of other weak races!
+(Quest for Orc characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-02.htm new file mode 100644 index 0000000000..340593a248 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-02.htm @@ -0,0 +1,4 @@ +Urutu Chief Hatos:
+We cannot afford to fail in this important mission. I, Urutu Chief Hatos, cannot assign this important mission to an inexperienced stripling like you!
+(Only Orc characters level 10 and above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-03.htm new file mode 100644 index 0000000000..2e8046ff99 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-03.htm @@ -0,0 +1,5 @@ +Urutu Chief Hatos:
+Seer Livina has sent an urgent message. She says that the traitor Baranka is planning something suspicious! What's more, according to the scout's report, Baranka's followers are moving quickly to a new location!
+Anyone who finds out what the traitor is plotting, and even better, puts a stop to the scheme, will receive a great reward from me, Urutu Chief Hatos! I don't care who it is!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-04.htm new file mode 100644 index 0000000000..decace674a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-04.htm @@ -0,0 +1,5 @@ +Urutu Chief Hatos:
+Tejakar Oroka! Good! First, we must capture Baranka's followers!
+Once you catch them, do whatever you'd like with them! But first, find out what they are plotting, and report to me!
+Ask Centurion Parugon about the traitor's followers! He is in the northern part of the village. Leave at once! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-05.html new file mode 100644 index 0000000000..5829137ad5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-05.html @@ -0,0 +1,4 @@ +Urutu Chief Hatos:
+Has Centurion Parugon told you where to find the followers of the traitor? Raid them and find out their scheme as soon as possible!
+If you succeed, I will reward you! If not, expect a punishment as great as my reward would have been! Do not disappoint me! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-06.html new file mode 100644 index 0000000000..2a05f5d5b9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-06.html @@ -0,0 +1,7 @@ +Urutu Chief Hatos:
+As I, Hatos, expected, the traitor is secretly communicating with other races!
+Dekara Pa'agrio! Praise Pa'agrio! Bring death to the traitor of our race!
+There is no way Baranka would send secret letters to only one place! There must be some letters that were sent to other places as well! Find the rest of them!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-07.html new file mode 100644 index 0000000000..e9830ee4fa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-07.html @@ -0,0 +1,4 @@ +Urutu Chief Hatos:
+How dare you disobey me!
+I would put you to death right now, but a promise is a promise! I, Urutu Chief Hatos, always keep my word! Take this reward and get out of my sight! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-08.html new file mode 100644 index 0000000000..9546539ae0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-08.html @@ -0,0 +1,3 @@ +Urutu Chief Hatos:
+That's the spirit! Do not forget that fiery battle spirit, and hurry to fulfill my orders! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-09.html new file mode 100644 index 0000000000..018610e383 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-09.html @@ -0,0 +1,7 @@ +Urutu Chief Hatos:
+How dare he conspire with those dirty Dark Elves...!
+Dekara Pa'agrio! Praise Pa'agrio! Bring death to the traitor of our race!
+The traitor Baranka must have sent secret letters to other places as well. Find the rest and bring them to me!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-10.html new file mode 100644 index 0000000000..0a89921671 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-10.html @@ -0,0 +1,4 @@ +Urutu Chief Hatos:
+Dekara Pa'agrio! Praise Pa'agrio! Bring death to the traitor of our race!
+Go and find the rest of the letters! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-11.html new file mode 100644 index 0000000000..a6a35936f7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30568-11.html @@ -0,0 +1,5 @@ +Urutu Chief Hatos:
+What, even the Elves? Baranka, has he truly forgotten the pride of the Orcs?!
+I, Urutu Chief Hatos, declare this! The traitor cannot be forgiven. I will prepare the cruelest punishment for Baranka, for betraying his own people!
+And you! Urutu Chief Hatos is very pleased! I will give you a great reward! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30580-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30580-01.html new file mode 100644 index 0000000000..a388efc426 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/30580-01.html @@ -0,0 +1,5 @@ +Centurion Parugon:
+Young Orc, are you in charge of Hatos's mission? Somehow, you don't look trustworthy enough!
+But, for now, I will tell you what you should know. Baranka's Messenger is about to leave the eastern part of the Immortal Plateau, and move to the Frozen Waterfalls. You can reach the Frozen Waterfalls by traveling northeast.
+Baranka's Messenger is accompanied by escorts, so be careful. You will be able to catch them if you leave now! Hurry!! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/Q00107_MercilessPunishment.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/Q00107_MercilessPunishment.java new file mode 100644 index 0000000000..3271652f5e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00107_MercilessPunishment/Q00107_MercilessPunishment.java @@ -0,0 +1,282 @@ +/* + * 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.Q00107_MercilessPunishment; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Merciless Punishment (107) + * @author janiko + */ +public final class Q00107_MercilessPunishment extends Quest +{ + // Npc + private static final int URUTU_CHIEF_HATOS = 30568; + private static final int CENTURION_PARUGON = 30580; + // Items + private static final int HATOSS_ORDER_1 = 1553; + private static final int HATOSS_ORDER_2 = 1554; + private static final int HATOSS_ORDER_3 = 1555; + private static final int LETTER_TO_DARK_ELF = 1556; + private static final int LETTER_TO_HUMAN = 1557; + private static final int LETTER_TO_ELF = 1558; + // Monster + private static final int BARANKA_MESSENGER = 27041; + // Rewards + private static final int BUTCHER = 1510; + private static final ItemHolder[] REWARDS = + { + new ItemHolder(1060, 100), // Lesser Healing Potion + new ItemHolder(4412, 10), // Echo Crystal - Theme of Battle + new ItemHolder(4413, 10), // Echo Crystal - Theme of Love + new ItemHolder(4414, 10), // Echo Crystal - Theme of Solitude + new ItemHolder(4415, 10), // Echo Crystal - Theme of Feast + new ItemHolder(4416, 10), // Echo Crystal - Theme of Celebration + }; + // Misc + private static final int MIN_LVL = 10; + + public Q00107_MercilessPunishment() + { + super(107); + addStartNpc(URUTU_CHIEF_HATOS); + addTalkId(URUTU_CHIEF_HATOS, CENTURION_PARUGON); + addKillId(BARANKA_MESSENGER); + registerQuestItems(HATOSS_ORDER_1, HATOSS_ORDER_2, HATOSS_ORDER_3, LETTER_TO_DARK_ELF, LETTER_TO_HUMAN, LETTER_TO_ELF); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + String htmltext = null; + if (qs == null) + { + return htmltext; + } + switch (event) + { + case "30568-04.htm": + { + if (qs.isCreated()) + { + qs.startQuest(); + giveItems(player, HATOSS_ORDER_1, 1); + htmltext = event; + } + break; + } + case "30568-07.html": + { + giveAdena(player, 200, true); + playSound(player, QuestSound.ITEMSOUND_QUEST_GIVEUP); + qs.exitQuest(false, true); + htmltext = event; + break; + } + case "30568-08.html": + { + if (qs.isCond(3) && hasQuestItems(player, HATOSS_ORDER_1)) + { + qs.setCond(4); + takeItems(player, HATOSS_ORDER_1, -1); + giveItems(player, HATOSS_ORDER_2, 1); + htmltext = event; + } + break; + } + case "30568-10.html": + { + if (qs.isCond(5) && hasQuestItems(player, HATOSS_ORDER_2)) + { + qs.setCond(6); + takeItems(player, HATOSS_ORDER_2, -1); + giveItems(player, HATOSS_ORDER_3, 1); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance talker) + { + final QuestState qs = getQuestState(talker, true); + String htmltext = getNoQuestMsg(talker); + switch (npc.getId()) + { + case URUTU_CHIEF_HATOS: + { + switch (qs.getState()) + { + case State.CREATED: + { + if (talker.getRace() != Race.ORC) + { + htmltext = "30568-01.htm"; + } + else if (talker.getLevel() < MIN_LVL) + { + htmltext = "30568-02.htm"; + } + else + { + htmltext = "30568-03.htm"; + } + break; + } + case State.STARTED: + { + switch (qs.getCond()) + { + case 1: + case 2: + { + if (hasQuestItems(talker, HATOSS_ORDER_1)) + { + htmltext = "30568-05.html"; + } + break; + } + case 3: + { + if (hasQuestItems(talker, HATOSS_ORDER_1, LETTER_TO_HUMAN)) + { + htmltext = "30568-06.html"; + } + break; + } + case 4: + { + if (hasQuestItems(talker, HATOSS_ORDER_2, LETTER_TO_HUMAN)) + { + htmltext = "30568-08.html"; + } + break; + } + case 5: + { + if (hasQuestItems(talker, HATOSS_ORDER_2, LETTER_TO_HUMAN, LETTER_TO_DARK_ELF)) + { + htmltext = "30568-09.html"; + } + break; + } + case 6: + { + if (hasQuestItems(talker, HATOSS_ORDER_3, LETTER_TO_HUMAN, LETTER_TO_DARK_ELF)) + { + htmltext = "30568-10.html"; + } + break; + } + case 7: + { + if (hasQuestItems(talker, HATOSS_ORDER_3, LETTER_TO_HUMAN, LETTER_TO_DARK_ELF, LETTER_TO_ELF)) + { + // Q00281_HeadForTheHills.giveNewbieReward(talker); + addExpAndSp(talker, 34565, 2962); + giveAdena(talker, 14666, true); + for (ItemHolder reward : REWARDS) + { + giveItems(talker, reward); + } + giveItems(talker, BUTCHER, 1); + qs.exitQuest(false, true); + talker.sendPacket(new SocialAction(talker.getObjectId(), 3)); + htmltext = "30568-11.html"; + } + break; + } + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(talker); + break; + } + } + break; + } + case CENTURION_PARUGON: + { + if (qs.isStarted()) + { + if (qs.isCond(1) && hasQuestItems(talker, HATOSS_ORDER_1)) + { + qs.setCond(2, true); + htmltext = "30580-01.html"; + } + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (qs.getCond()) + { + case 2: + { + if (hasQuestItems(killer, HATOSS_ORDER_1)) + { + giveItems(killer, LETTER_TO_HUMAN, 1); + qs.setCond(3, true); + } + break; + } + case 4: + { + if (hasQuestItems(killer, HATOSS_ORDER_2)) + { + giveItems(killer, LETTER_TO_DARK_ELF, 1); + qs.setCond(5, true); + } + break; + } + case 6: + { + if (hasQuestItems(killer, HATOSS_ORDER_3)) + { + giveItems(killer, LETTER_TO_ELF, 1); + qs.setCond(7, true); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30516-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30516-01.html new file mode 100644 index 0000000000..a0ea8b2fcc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30516-01.html @@ -0,0 +1,5 @@ +Trader Reep:
+Star Diamond? I went on a business trip to Giran expressly for Gouph, and acquired the Star Diamond, that is a fact. I was going to bring it here myself... But Gouph insisted that one of his guild members, Carrier Torocco, be in charge of delivery... So, I gave the jewel to Torocco as he asked. I don't know what happened afterwards.
+As our Contract states, I acquired the Star Diamond for him. It was Gouph who insisted that someone else should deliver it. This Contract was drawn up when requesting the delivery. It may be of aid, so take it. I have nothing to do with this anymore.
+Ah! And when you see Gouph again, tell him that Trader Reep wants the rest of the payment for the jewel. And!!! If he's trying to cheat me, tell him I won't let him get away with it!!! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30516-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30516-02.html new file mode 100644 index 0000000000..26e59707d7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30516-02.html @@ -0,0 +1,3 @@ +Trader Reep:
+Why have you come back? Didn't I tell you? I don't have the Star Diamond! The last person who had the jewel was Carrier Torocco. If you find him, show him the Contract I gave you and ask him why the delivery is taking so long. I have nothing to do with this anymore, so don't come back to me again. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30521-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30521-01.html new file mode 100644 index 0000000000..f9e2eeca8d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30521-01.html @@ -0,0 +1,5 @@ +Warehouse Keeper Murdoc:
+Has Brunon sent you? Ah ha! You came to the right place! I was going to visit him regarding the same matter! I opened the Treasure Chest I got from Brunon, and was very surprised to find a jewel in it! I then realized that the Treasure Chests must have been switched.
+But then, something happened! My friend Warehouse Keeper Airy's pet bat all of a sudden swooped in and swallowed the jewel. I was trying to catch the bat and make it spit the jewel out, but it flew out the window... Airy is very upset that I made her lovely Kurupuru fly away, and she won't talk to me!
+This Berry Tart is Airy's favorite dessert. Please give this to her. Her anger will be alleviated somewhat. I need to find that stupid bat as soon as possible... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30521-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30521-02.html new file mode 100644 index 0000000000..013659b8ef --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30521-02.html @@ -0,0 +1,3 @@ +Warehouse Keeper Murdoc:
+Hey, you! Don't be shy, and give those pastries to Warehouse Keeper Airy! Also, tell her that I'm very sorry... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30521-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30521-03.html new file mode 100644 index 0000000000..173be2b134 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30521-03.html @@ -0,0 +1,3 @@ +Warehouse Keeper Murdoc:
+My colleague Airy is very upset... Whew... Well, it's all my fault... What should I do... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30522-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30522-01.html new file mode 100644 index 0000000000..37a801bd50 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30522-01.html @@ -0,0 +1,5 @@ +Warehouse Keeper Airy:
+Berry Tart...? Wow... My favorite... Is that for me? Wow! Thank you very much!
+It's from Murdoc? Humph! I hate Murdoc! He harassed my lovely Kurupuru... It was just a stupid jewel... He didn't have to run after Kurupuru with a knife... Kurupuru got scared and flew away!!!
+Find my Kurupuru! I've had that lovely blade bat for one year! Look at this drawing! Kurupuru looks like this! What do you think? You can find him, right? You can find the jewel if you bring Kurupuru, right...? Right? Right? So please find him...! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30522-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30522-02.html new file mode 100644 index 0000000000..8e50731605 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30522-02.html @@ -0,0 +1,3 @@ +Warehouse Keeper Airy:
+You haven't found Kurupuru yet? I even gave you a drawing!!! He's a very cute blade bat! Kurupuru swallowed that Star Diamond or whatever it is you are looking for, and flew away... He must be somewhere outside the village, all cold and dark... trembling... My poor Kurupuru... You must find him! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30522-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30522-03.html new file mode 100644 index 0000000000..a550b57615 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30522-03.html @@ -0,0 +1,4 @@ +Warehouse Keeper Airy:
+That diamond is...? It's the jewel Kurupuru swallowed, right...? Right? Then, have you found Kurupuru? What? What?
+Wait...! What is this blood on the jewel... It can't be... Kurupuru? Kurupuru!!! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30522-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30522-04.html new file mode 100644 index 0000000000..a608a732fc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30522-04.html @@ -0,0 +1,3 @@ +Warehouse Keeper Airy:
+Ugh... Poor Kurupuru... He must be cold and hungry... trembling in some cave... Ughh... Please come back... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-01.htm new file mode 100644 index 0000000000..e459018887 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-01.htm @@ -0,0 +1,4 @@ +Collector Gouph:
+I can't ask an honored guest of another race who has visited our Dwarven town to run an errand for me! Take your time looking around, and enjoy!
+(Quest for Dwarven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-02.htm new file mode 100644 index 0000000000..3f312bf84e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-02.htm @@ -0,0 +1,4 @@ +Collector Gouph:
+Hey, young friend! Have you ever heard of the jewel called the Star Diamond? It's a very rare gem of which only twelve exist on the entire continent. Due to a recent stroke of luck, I've managed to obtain one of those Star Diamonds... It will be delivered here in few days... I am so excited...! Hoo Hoo Hoo...
+(Quest for Dwarven characters level 10 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-03.htm new file mode 100644 index 0000000000..38b8c616e6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-03.htm @@ -0,0 +1,6 @@ +Collector Gouph:
+Look here, friend. Have you heard of a jewel called the Star Diamond? It's an incredibly rare gem -- only 12 in existence. Well, I got a lead on one of them a while back. It was quite a bit of trouble... Heh, heh...
+But the delivery is already four days late...! Ergh...
+Hey, friend! Do you feel like taking on a job? Go find out why my jewel delivery is late. I'll make it well worth your while, so don't worry! I take care of everyone who does work for me. You won't regret it.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-04.htm new file mode 100644 index 0000000000..029af3a453 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-04.htm @@ -0,0 +1,4 @@ +Collector Gouph:
+Good! Do you know Trader Reep of the weapons shop? He got the Star Diamond for me as my agent in Giran. That fellow is a master of bargaining, and so he got me a really nice price for the jewel. Go see him and ask him what's going on. If you show him this Contract, that scoundrel can't play innocent!
+And tell him this ... if that no-good crook is planning to cheat me, I will not let him get away with it! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-05.html new file mode 100644 index 0000000000..bc7cb353fc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-05.html @@ -0,0 +1,3 @@ +Collector Gouph:
+Have you met Reep? Not yet? What in the world are you doing? If you've made up your mind to do this job, you'd better be responsible and get to it! Go and meet Trader Reep at the weapon shop and ask him where my diamond is, right now. If you show him this Contract, he can't pretend that he doesn't know anything! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-06.html new file mode 100644 index 0000000000..8c81f3fabc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-06.html @@ -0,0 +1,3 @@ +Collector Gouph:
+What did Reep say? Where is my jewel? Hey, youngster, hurry up and find my jewel! You should be more responsible when you're hired to do a job! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-07.html new file mode 100644 index 0000000000..8fcfa03d4e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-07.html @@ -0,0 +1,4 @@ +Collector Gouph:
+Oooh! You've finally brought me my jewel. My precious Star Diamond... Heh, heh, heh... Let me see... my baby...
+What in the world is this? A lump of Coal? Look, young friend, what is the meaning of this? Can't you do a simple job right? Why have you brought me the wrong box? Take this dirty Coal Piece back immediately! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-08.html new file mode 100644 index 0000000000..c0f8440281 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-08.html @@ -0,0 +1,3 @@ +Collector Gouph:
+Are you still running around with that lump of Coal? When are you going to bring me my jewel? Can't you do this job right! Look, youngster, don't disappoint me! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-09.html new file mode 100644 index 0000000000..ad1aa68d23 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30523-09.html @@ -0,0 +1,4 @@ +Collector Gouph:
+Oooh! You've finally found it! My Star Diamond...! Heh, heh, heh... Give it to me now! Thank you! Thank you! Thank you!
+You've done well, young friend. As promised, I will give you a reward. Here, take this weapon. This hammer was used by silversmiths from the Elmoreden period. I got it from Gracia a few days ago, and what do you know, they say that someone stole it from the personal vaults of Count Boldstone and smuggled it here... As I hold a public position as one of the leaders of the guild, it is not good for me to have smuggled goods in my possession... So feel free to take it! You can use it or sell it. It's up to you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-01.html new file mode 100644 index 0000000000..f495744689 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-01.html @@ -0,0 +1,6 @@ +Blacksmith Brunon:
+... This dice...? Where did you get this? Thanks anyway. Is there anything else you want to tell me about?
+Star Diamond? Oh, you mean the fool's jewel that I won from gambling yesterday! I don't care about you people, but I won that jewel through a fair dice game. The jewel is mine now! No matter what you say, I will not give it back to him! You shouldn't ignore the sacred rules of gambling!
+But, it seems like you are in some kind of trouble... Then, how about this? If you do me a favor... I will give you the jewel.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-02.html new file mode 100644 index 0000000000..d6a4c23d5c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-02.html @@ -0,0 +1,5 @@ +Blacksmith Brunon:
+All right. I will explain this quest to you, so listen carefully. This happened few weeks ago...
+... When I was delivering jewels that I got at the Mithril Mines, I was attacked by goblin brigands... I barely got out alive, but they took all the jewels I was delivering... I fired those guards, but... Anyway, I didn't get the jewels back yet... I think the goblin brigand lieutenant split the jewels...
+Please go to the west of the Spine Mines, defeat them, and bring the jewels back. They are ten Aquamarines and ten Chrysoberyls. Should you return all of them, I shall give you the jewel your friend had lost from me. You have my word. I consider our agreement to be a binding Contract and I hope it will satisfy you. Please concentrate on finding my precious jewels. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-03.html new file mode 100644 index 0000000000..7e4e089c08 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-03.html @@ -0,0 +1,3 @@ +Blacksmith Brunon:
+Have you recovered all my jewels? Not yet? Have you forgotten about our Contract? I promised that if you restore all my jewels that the goblin brigand lieutenant took from me, I would give you the diamond back that I won from your friend, Torocco. You have to find my ten Aquamarines and ten Chrysoberyls. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-04.html new file mode 100644 index 0000000000..5bd6811cbb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-04.html @@ -0,0 +1,3 @@ +Blacksmith Brunon:
+Good job! You found all my jewels! Thank you! Now, as we agreed, I will give your friend's diamond back. Take this Gem Box! You don't need to worry about anything. I've never opened it ever since I got it from your friend. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-05.html new file mode 100644 index 0000000000..f9aaddfd93 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-05.html @@ -0,0 +1,3 @@ +Blacksmith Brunon:
+Why have you come back? You got the Gem Box. What else do you need from me? Hurry up and give the diamond back to the owner. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-06.html new file mode 100644 index 0000000000..f9908cd970 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-06.html @@ -0,0 +1,5 @@ +Blacksmith Brunon:
+Woot?! Is that Murdoc's coal...? How did you...?
+Oh yeah! The treasure chests must have been mixed up! Haha...! How could it have...?! Hey, don't look at me.. Somehow the chest with diamonds got mixed up with the treasure chest of Warehouse Keeper Murdoc. Hahaha... ah nuts.
+Look, I'm sorry, I'll write a letter explaining this whole mess. Give it to Warehouse Keeper Murdoc. He can correct this for us. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-07.html new file mode 100644 index 0000000000..9c60e2c689 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-07.html @@ -0,0 +1,3 @@ +Blacksmith Brunon:
+Look! I didn't mean it! I was not trying to deceive you! Take the letter I wrote to Warehouse Keeper Murdoc. Then, you will be able to get your Gem Box back. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-08.html new file mode 100644 index 0000000000..1475c0ea3b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30526-08.html @@ -0,0 +1,3 @@ +Blacksmith Brunon:
+... Look. I am very busy now... I don't know what you are up to, but can we talk about this later? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30529-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30529-01.html new file mode 100644 index 0000000000..00f7a663d9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30529-01.html @@ -0,0 +1,5 @@ +Miner Maron:
+Elven Wine...? A gift from Torocco? Oh my... This gift is great, but... he's going to have to fix that bad drinking habit of his... I'm always worried that Torocco might start trouble while drinking...
+Whew... I am worried about him... My friend, Torocco, is a fine, steady lad, but... He has two bad habits... One is drinking... And the other is gambling...
+... We were drinking together last night... Then, Blacksmith Brunon suggested we gamble with dice... I told him not to... but Torocco just couldn't resist the temptation, and started to roll the dice... These exact dice here... He was very drunk and lost everything he had... Whew... He may be my friend, but I'm very ashamed of him... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30529-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30529-02.html new file mode 100644 index 0000000000..0e1e5eea7d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30529-02.html @@ -0,0 +1,3 @@ +Miner Maron:
+Ah! You again... Are you an investigator of the Bronze Key Guild? I told you everything I know... I don't know about the Star Diamond... But what I know for sure is that my friend lost everything he had while gambling... to Blacksmith Brunon. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30529-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30529-03.html new file mode 100644 index 0000000000..c7daca04e4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30529-03.html @@ -0,0 +1,3 @@ +Miner Maron:
+Whew... I am very worried about my friend, Torocco... He is a nice fellow... Except for his terrible drinking and gambling habits... I don't know when he will cause another problem, so I can't let down my guard... Whew... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30555-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30555-01.html new file mode 100644 index 0000000000..b15b1e0015 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30555-01.html @@ -0,0 +1,5 @@ +Carrier Torocco:
+Blast... What should I do? What should I do? How can I ever get that diamond back? I am in so much trouble... Gouph will kill me... What should I do?
+... What the?! Who are you? How long have you been there? Did Gouph sent you?? Agghh... I'm sorry! Please forgive me...!!! I don't know what to do!!! I lost the legendary Star Diamond, that was my responsibility!!! I dishonored the Carriers, who are famous for their competence... My guild will excommunicate me... I won't be able to pay off the expensive fines even if I worked for the rest of my life? My colleagues and my family will laugh at me... Aghh... This is the end of my life!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30555-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30555-02.html new file mode 100644 index 0000000000..43d536b714 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30555-02.html @@ -0,0 +1,5 @@ +Carrier Torocco:
+I received the Star Diamond at Giran... and drew a Contract with Reep... I told him that I would be responsible for delivery... Everything was great when I was traveling... And I got here, Kingdom of the Dwarves, last night... I drank with my old friend, Miner Maron... We have been friends ever since we were very young... When we meet once in awhile, we have the bad habit of drinking until we pass out...
+... and we had quite a bit to drink last night... But when I woke up in the morning, I found that my weapons, equipment, travel money, and the box where I put the Star Diamond were missing...! I don't know what could have happened... Agghhhhh...! However... Perhaps my friend Maron remembers something about last night...
+But he paid for the drinks last night, as well as for the tables and chairs I broke... I'm too ashamed to meet him... Why don't you go to the Strip Mine and ask him? Give this wine to Maron for me... This is a rare wine I brought for him from Giran as a present... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30555-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30555-03.html new file mode 100644 index 0000000000..5e49019555 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30555-03.html @@ -0,0 +1,4 @@ +Carrier Torocco:
+Have you found the Star Diamond...? Not yet... Oh no, oh no... What should I do...
+But you... Didn't you say that you would meet my friend, Miner Maron, and ask him about the jewel? Hurry up and go to the Strip Mine and meet Maron! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30555-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30555-04.html new file mode 100644 index 0000000000..8481bff8df --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30555-04.html @@ -0,0 +1,3 @@ +Carrier Torocco:
+This is...? Oh wow! The Treasure Chest I was delivering...! You've found the Star Diamond!!! Thank you. Thank you. How can I ever repay you... But first, please take this Treasure Chest to Collector Gouph... He must be waiting... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30555-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30555-05.html new file mode 100644 index 0000000000..20b712fcc6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/30555-05.html @@ -0,0 +1,3 @@ +Carrier Torocco:
+What should I do... What should I do... How can I ever get the diamond back... I am in so much trouble... Gouph will kill me... What should I do... What should I do... Disqualification and excommunication from the guild... ... Expensive fines that I can never pay back in this lifetime... The mocking laughter of my colleagues and my family... Aghh... This is the end of my life... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/Q00108_JumbleTumbleDiamondFuss.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/Q00108_JumbleTumbleDiamondFuss.java new file mode 100644 index 0000000000..ee1562c8d0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00108_JumbleTumbleDiamondFuss/Q00108_JumbleTumbleDiamondFuss.java @@ -0,0 +1,564 @@ +/* + * 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.Q00108_JumbleTumbleDiamondFuss; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Jumble, Tumble, Diamond Fuss (108) + * @author Janiko + */ +public final class Q00108_JumbleTumbleDiamondFuss extends Quest +{ + // NPCs + private static final int COLLECTOR_GOUPH = 30523; + private static final int TRADER_REEP = 30516; + private static final int CARRIER_TOROCCO = 30555; + private static final int MINER_MARON = 30529; + private static final int BLACKSMITH_BRUNON = 30526; + private static final int WAREHOUSE_KEEPER_MURDOC = 30521; + private static final int WAREHOUSE_KEEPER_AIRY = 30522; + // Monsters + private static final int GOBLIN_BRIGAND_LEADER = 20323; + private static final int GOBLIN_BRIGAND_LIEUTENANT = 20324; + private static final int BLADE_BAT = 20480; + // Items + private static final int GOUPHS_CONTRACT = 1559; + private static final int REEPS_CONTRACT = 1560; + private static final int ELVEN_WINE = 1561; + private static final int BRUNONS_DICE = 1562; + private static final int BRUNONS_CONTRACT = 1563; + private static final int AQUAMARINE = 1564; + private static final int CHRYSOBERYL = 1565; + private static final int GEM_BOX = 1566; + private static final int COAL_PIECE = 1567; + private static final int BRUNONS_LETTER = 1568; + private static final int BERRY_TART = 1569; + private static final int BAT_DIAGRAM = 1570; + private static final int STAR_DIAMOND = 1571; + // Rewards + private static final ItemHolder[] REWARDS = + { + new ItemHolder(1060, 100), // Lesser Healing Potion + new ItemHolder(4412, 10), // Echo Crystal - Theme of Battle + new ItemHolder(4413, 10), // Echo Crystal - Theme of Love + new ItemHolder(4414, 10), // Echo Crystal - Theme of Solitude + new ItemHolder(4415, 10), // Echo Crystal - Theme of Feast + new ItemHolder(4416, 10), // Echo Crystal - Theme of Celebration + }; + private static final int SILVERSMITH_HAMMER = 1511; + // Misc + private static final int MIN_LVL = 10; + private static final int MAX_GEM_COUNT = 10; + private static final Map GOBLIN_DROP_CHANCES = new HashMap<>(); + static + { + GOBLIN_DROP_CHANCES.put(GOBLIN_BRIGAND_LEADER, 0.8); + GOBLIN_DROP_CHANCES.put(GOBLIN_BRIGAND_LIEUTENANT, 0.6); + } + + public Q00108_JumbleTumbleDiamondFuss() + { + super(108); + addStartNpc(COLLECTOR_GOUPH); + addTalkId(COLLECTOR_GOUPH, TRADER_REEP, CARRIER_TOROCCO, MINER_MARON, BLACKSMITH_BRUNON, WAREHOUSE_KEEPER_MURDOC, WAREHOUSE_KEEPER_AIRY); + addKillId(GOBLIN_BRIGAND_LEADER, GOBLIN_BRIGAND_LIEUTENANT, BLADE_BAT); + registerQuestItems(GOUPHS_CONTRACT, REEPS_CONTRACT, ELVEN_WINE, BRUNONS_DICE, BRUNONS_CONTRACT, AQUAMARINE, CHRYSOBERYL, GEM_BOX, COAL_PIECE, BRUNONS_LETTER, BERRY_TART, BAT_DIAGRAM, STAR_DIAMOND); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st == null) + { + return htmltext; + } + switch (event) + { + case "30523-04.htm": + { + if (st.isCreated()) + { + st.startQuest(); + giveItems(player, GOUPHS_CONTRACT, 1); + htmltext = event; + } + break; + } + case "30555-02.html": + { + if (st.isCond(2) && hasQuestItems(player, REEPS_CONTRACT)) + { + takeItems(player, REEPS_CONTRACT, -1); + giveItems(player, ELVEN_WINE, 1); + st.setCond(3, true); + htmltext = event; + } + break; + } + case "30526-02.html": + { + if (st.isCond(4) && hasQuestItems(player, BRUNONS_DICE)) + { + takeItems(player, BRUNONS_DICE, -1); + giveItems(player, BRUNONS_CONTRACT, 1); + st.setCond(5, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance talker) + { + final QuestState st = getQuestState(talker, true); + String htmltext = getNoQuestMsg(talker); + if (st == null) + { + return htmltext; + } + switch (npc.getId()) + { + case COLLECTOR_GOUPH: + { + switch (st.getState()) + { + case State.CREATED: + { + if (talker.getRace() != Race.DWARF) + { + htmltext = "30523-01.htm"; + } + else if (talker.getLevel() < MIN_LVL) + { + htmltext = "30523-02.htm"; + } + else + { + htmltext = "30523-03.htm"; + } + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + if (hasQuestItems(talker, GOUPHS_CONTRACT)) + { + htmltext = "30523-05.html"; + } + break; + } + case 2: + case 3: + case 4: + case 5: + case 6: + { + if (hasAtLeastOneQuestItem(talker, REEPS_CONTRACT, ELVEN_WINE, BRUNONS_DICE, BRUNONS_CONTRACT)) + { + htmltext = "30523-06.html"; + } + break; + } + case 7: + { + if (hasQuestItems(talker, GEM_BOX)) + { + takeItems(talker, GEM_BOX, -1); + giveItems(talker, COAL_PIECE, 1); + st.setCond(8, true); + htmltext = "30523-07.html"; + } + break; + } + case 8: + case 9: + case 10: + case 11: + { + if (hasAtLeastOneQuestItem(talker, COAL_PIECE, BRUNONS_LETTER, BERRY_TART, BAT_DIAGRAM)) + { + htmltext = "30523-08.html"; + } + break; + } + case 12: + { + if (hasQuestItems(talker, STAR_DIAMOND)) + { + // Q00281_HeadForTheHills.giveNewbieReward(talker); + addExpAndSp(talker, 34565, 2962); + giveAdena(talker, 14666, true); + for (ItemHolder reward : REWARDS) + { + giveItems(talker, reward); + } + giveItems(talker, SILVERSMITH_HAMMER, 1); + st.exitQuest(false, true); + talker.sendPacket(new SocialAction(talker.getObjectId(), 3)); + htmltext = "30523-09.html"; + } + break; + } + + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(talker); + break; + } + } + break; + } + case TRADER_REEP: + { + switch (st.getCond()) + { + case 1: + { + if (hasQuestItems(talker, GOUPHS_CONTRACT)) + { + takeItems(talker, GOUPHS_CONTRACT, -1); + giveItems(talker, REEPS_CONTRACT, 1); + st.setCond(2, true); + htmltext = "30516-01.html"; + } + break; + } + case 2: + { + if (hasQuestItems(talker, REEPS_CONTRACT)) + { + htmltext = "30516-02.html"; + } + break; + } + default: + { + if (st.getCond() > 2) + { + htmltext = "30516-02.html"; + } + break; + } + } + break; + } + case CARRIER_TOROCCO: + { + switch (st.getCond()) + { + case 2: + { + if (hasQuestItems(talker, REEPS_CONTRACT)) + { + htmltext = "30555-01.html"; + } + break; + } + case 3: + { + if (hasQuestItems(talker, ELVEN_WINE)) + { + htmltext = "30555-03.html"; + } + break; + } + case 7: + { + if (hasQuestItems(talker, GEM_BOX)) + { + htmltext = "30555-04.html"; + } + break; + } + default: + { + if (st.isStarted()) + { + htmltext = "30555-05.html"; + } + break; + } + } + break; + } + case MINER_MARON: + { + switch (st.getCond()) + { + case 3: + { + if (hasQuestItems(talker, ELVEN_WINE)) + { + takeItems(talker, ELVEN_WINE, -1); + giveItems(talker, BRUNONS_DICE, 1); + st.setCond(4, true); + htmltext = "30529-01.html"; + } + break; + } + case 4: + { + if (hasQuestItems(talker, BRUNONS_DICE)) + { + htmltext = "30529-02.html"; + } + break; + } + default: + { + if (st.getCond() > 4) + { + htmltext = "30529-03.html"; + } + break; + } + } + break; + } + case BLACKSMITH_BRUNON: + { + switch (st.getCond()) + { + case 4: + { + if (hasQuestItems(talker, BRUNONS_DICE)) + { + htmltext = "30526-01.html"; + } + break; + } + case 5: + { + if (hasQuestItems(talker, BRUNONS_CONTRACT)) + { + htmltext = "30526-03.html"; + } + break; + } + case 6: + { + if (hasQuestItems(talker, BRUNONS_CONTRACT) && (getQuestItemsCount(talker, AQUAMARINE) >= MAX_GEM_COUNT) && (getQuestItemsCount(talker, CHRYSOBERYL) >= MAX_GEM_COUNT)) + { + takeItems(talker, -1, BRUNONS_CONTRACT, AQUAMARINE, CHRYSOBERYL); + giveItems(talker, GEM_BOX, 1); + st.setCond(7, true); + htmltext = "30526-04.html"; + } + break; + } + case 7: + { + if (hasQuestItems(talker, GEM_BOX)) + { + htmltext = "30526-05.html"; + } + break; + } + case 8: + { + if (hasQuestItems(talker, COAL_PIECE)) + { + takeItems(talker, COAL_PIECE, -1); + giveItems(talker, BRUNONS_LETTER, 1); + st.setCond(9, true); + htmltext = "30526-06.html"; + } + break; + } + case 9: + { + if (hasQuestItems(talker, BRUNONS_LETTER)) + { + htmltext = "30526-07.html"; + } + break; + } + case 10: + case 11: + case 12: + { + if (hasAtLeastOneQuestItem(talker, BERRY_TART, BAT_DIAGRAM, STAR_DIAMOND)) + { + htmltext = "30526-08.html"; + } + break; + } + } + break; + } + case WAREHOUSE_KEEPER_MURDOC: + { + switch (st.getCond()) + { + case 9: + { + if (hasQuestItems(talker, BRUNONS_LETTER)) + { + takeItems(talker, BRUNONS_LETTER, -1); + giveItems(talker, BERRY_TART, 1); + st.setCond(10, true); + htmltext = "30521-01.html"; + } + break; + } + case 10: + { + if (hasQuestItems(talker, BERRY_TART)) + { + htmltext = "30521-02.html"; + } + break; + } + case 11: + case 12: + { + htmltext = "30521-03.html"; + break; + } + } + break; + } + case WAREHOUSE_KEEPER_AIRY: + { + switch (st.getCond()) + { + case 10: + { + if (hasQuestItems(talker, BERRY_TART)) + { + takeItems(talker, BERRY_TART, -1); + giveItems(talker, BAT_DIAGRAM, 1); + st.setCond(11, true); + htmltext = "30522-01.html"; + } + break; + } + case 11: + { + if (hasQuestItems(talker, BAT_DIAGRAM)) + { + htmltext = "30522-02.html"; + } + break; + } + case 12: + { + if (hasQuestItems(talker, STAR_DIAMOND)) + { + htmltext = "30522-03.html"; + } + break; + } + default: + { + if (st.isStarted()) + { + htmltext = "30522-04.html"; + } + break; + } + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case GOBLIN_BRIGAND_LEADER: + case GOBLIN_BRIGAND_LIEUTENANT: + { + if (st.isCond(5) && hasQuestItems(killer, BRUNONS_CONTRACT)) + { + final double dropChance = GOBLIN_DROP_CHANCES.get(npc.getId()); + boolean playSound = false; + if (giveItemRandomly(killer, npc, AQUAMARINE, 1, MAX_GEM_COUNT, dropChance, false)) + { + if (getQuestItemsCount(killer, CHRYSOBERYL) >= MAX_GEM_COUNT) + { + st.setCond(6, true); + break; + } + + playSound = true; + } + if (giveItemRandomly(killer, npc, CHRYSOBERYL, 1, MAX_GEM_COUNT, dropChance, false)) + { + if (getQuestItemsCount(killer, AQUAMARINE) >= MAX_GEM_COUNT) + { + st.setCond(6, true); + break; + } + + playSound = true; + } + + if (playSound) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case BLADE_BAT: + { + if (st.isCond(11) && hasQuestItems(killer, BAT_DIAGRAM)) + { + if (giveItemRandomly(killer, npc, STAR_DIAMOND, 1, 1, 0.2, true)) + { + takeItems(killer, BAT_DIAGRAM, -1); + st.setCond(12); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30032-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30032-01.html new file mode 100644 index 0000000000..df45d0c2be --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30032-01.html @@ -0,0 +1,4 @@ +Priest Yohanes:
+Elias has sent you, I presume. I will hurry and make the medicine from the Poison Sacs you have brought me. Anyhow, Elias must be devastated at the turn of events that has happened to his students. But I think that Elias is largely responsible... taking the students to such a dangerous place and all. We Priests always request the protection of the guards when venturing outside the village, but they say that Elias refused the help of the guards, relying only on his magic. So his students pay for his folly... tsk tsk...
+Here, the medicine is finished. Take this and hurry back to Elias. I'd like to see the students from the magic school run through the streets again. I pray that the blessings of Einhasad be with them. With this medicine and the powers of Einhasad, I am sure that the students will recover soon. May the blessings of Einhasad be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30032-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30032-02.html new file mode 100644 index 0000000000..5adb9eb1f5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30032-02.html @@ -0,0 +1,3 @@ +Priest Yohanes:
+Have you met Elias yet? I am sure he is anxiously awaiting your return. Please hurry, the lives of many students are at stake. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-01.htm new file mode 100644 index 0000000000..c545030a88 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-01.htm @@ -0,0 +1,5 @@ +Elias:
+I'm Elias, one of the teachers from the Einhovant School of Wizardry. My students and I went to the forest to the north of the island on a field trip recently, but some of my students have fallen ill with a strange fever. It has been more than a week since they became ill, but we have yet to find a treatment. I am going crazy with worry that my students may die.
+Thankfully, the Priest Yohanes is researching methods to create a medicine for them. He is very learned in herb lore, and has treated many illnesses. I trust that he will soon find a way to create a medicine for them. But I worry that because there are so many students that need to be treated, he may not have enough ingredients. If we are short on ingredients, I will ask for your aid, so please help us if it is necessary.
+(Quest for characters level 15 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-02.htm new file mode 100644 index 0000000000..dee8dbd6f7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-02.htm @@ -0,0 +1,5 @@ +Elias:
+I am Elias, a teacher at Einhovant's School of Magic. Some time ago, my students and I went on a field trip to the northern part of the island to collect herbs needed for class, and many of the students fainted after catching a strange fever. It has been a week since they fell ill, and we still have not found a cure. I'm worried out of my mind when I think that my students might die from this.
+Thankfully, Priest Yohanes thinks he might have a remedy. Won't you find me some medicine ingredients for my young students who are dying? I truly need your help. That ingredient is the Giant Spider's Poison Sac, but I believe that someone like you can easily obtain it.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-03.htm new file mode 100644 index 0000000000..34a42d1e1a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-03.htm @@ -0,0 +1,5 @@ +Elias:
+I can't thank you enough for your help. The giant spiders abound in the northern parts of the island, so hunt them and bring back their Poison Sacs.
+Once you have obtained the Poison Sacs, go to Priest Yohanes. He will create a Fever Medicine from the Poison Sacs. Bring the medicine back to me.
+If one of my students should die, how will I ever face their parents? I just want to run far, far away. I implore you, please find those Poison Sacs. My students are dying! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-04.html new file mode 100644 index 0000000000..d9e6a5dc1b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-04.html @@ -0,0 +1,4 @@ +Elias:
+Are you still here? Please hury and bring back the poison sac. My students are dying, and watching those youngsters muttering in their delirium just breaks my heart.
+Go to the northern part of Talking Island, kill the Giant Spider, and bring back its poison sac. If you bring the poison sac to Priest Yohanes, he will make the medicine for the fever, so bring that to me. Please make haste! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-05.html new file mode 100644 index 0000000000..40e5d4f621 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-05.html @@ -0,0 +1,3 @@ +Elias:
+Ahh... You have obtained a poison sac. Thank you! Please hurry and take it to Priest Yohanes who is at the Temple of Einhasad. He will make the medicine for you. When he is done, you just have to bring the medicine back to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-06.html new file mode 100644 index 0000000000..cb55946f88 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/30050-06.html @@ -0,0 +1,4 @@ +Elias:
+So this is the Fever Medicine. Ahh ... I am deeply grateful to you. Because you have so willingly helped others, we can save the lives of my students. May the angels bless you. I must hurry and send this medicine off to the school.
+But first ... Please accept this. This is a token of appreciation for having saved my students. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/Q00151_CureForFever.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/Q00151_CureForFever.java new file mode 100644 index 0000000000..47620d1bd9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00151_CureForFever/Q00151_CureForFever.java @@ -0,0 +1,143 @@ +/* + * 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.Q00151_CureForFever; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.network.NpcStringId; + +/** + * Cure for Fever (151) + * @author malyelfik + */ +public class Q00151_CureForFever extends Quest +{ + // NPCs + private static final int ELLIAS = 30050; + private static final int YOHANES = 30032; + // Monsters + private static final int[] MOBS = + { + 20103, // Giant Spider + 20106, // Talon Spider + 20108, // Blade Spider + }; + // Items + private static final int ROUND_SHIELD = 102; + private static final int POISON_SAC = 703; + private static final int FEVER_MEDICINE = 704; + // Misc + private static final int MIN_LEVEL = 15; + private static final int CHANCE = 0; + + public Q00151_CureForFever() + { + super(151); + addStartNpc(ELLIAS); + addTalkId(ELLIAS, YOHANES); + addKillId(MOBS); + registerQuestItems(POISON_SAC, FEVER_MEDICINE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equalsIgnoreCase("30050-03.htm")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(1) && (getRandom(5) == CHANCE)) + { + giveItems(killer, POISON_SAC, 1); + st.setCond(2, true); + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st == null) + { + return htmltext; + } + + switch (npc.getId()) + { + case ELLIAS: + switch (st.getState()) + { + case State.CREATED: + htmltext = (player.getLevel() >= MIN_LEVEL) ? "30050-02.htm" : "30050-01.htm"; + break; + case State.STARTED: + if (st.isCond(3) && hasQuestItems(player, FEVER_MEDICINE)) + { + giveItems(player, ROUND_SHIELD, 1); + addExpAndSp(player, 13106, 613); + st.exitQuest(false, true); + showOnScreenMsg(player, NpcStringId.LAST_DUTY_COMPLETE_N_GO_FIND_THE_NEWBIE_HELPER, 2, 5000); // TODO: Newbie Guide + htmltext = "30050-06.html"; + } + else if (st.isCond(2) && hasQuestItems(player, POISON_SAC)) + { + htmltext = "30050-05.html"; + } + else + { + htmltext = "30050-04.html"; + } + break; + case State.COMPLETED: + htmltext = getAlreadyCompletedMsg(player); + break; + } + break; + case YOHANES: + if (st.isStarted()) + { + if (st.isCond(2) && hasQuestItems(player, POISON_SAC)) + { + st.setCond(3, true); + takeItems(player, POISON_SAC, -1); + giveItems(player, FEVER_MEDICINE, 1); + htmltext = "30032-01.html"; + } + else if (st.isCond(3) && hasQuestItems(player, FEVER_MEDICINE)) + { + htmltext = "30032-02.html"; + } + } + break; + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-01.htm new file mode 100644 index 0000000000..ca94346e18 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-01.htm @@ -0,0 +1,4 @@ +Magister Harrys:
+Recently the severe storms damaged the roof of the temple in several places. We will be starting repairs soon, and I hope you can help us at that time.
+(Quest for characters level 10 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-02.htm new file mode 100644 index 0000000000..4f0b95c969 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-02.htm @@ -0,0 +1,5 @@ +Magister Harrys:
+Recently, the severe storms damaged the roof of the temple in several places. We are in the middle of repairing the roof right now, but it is harder than we thought. Plus, all our tools are old and dull, making this an even slower task. The high priest has personally asked us to hurry with the repairs, and I am worried that progress is too slow.
+A few days ago I went to the village Blacksmith and asked Altran to create new tools for us. I cannot leave the temple right now, as I have to prepare for the services, but could you go to the village and bring the tools back to me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-03.htm new file mode 100644 index 0000000000..6f85fd0c38 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-03.htm @@ -0,0 +1,3 @@ +<Magister Harrys:
+Thank you. Take this receipt. Go to the village Blacksmith and show Altran this receipt, and come back here with the tools. We are planning to do repairs this afternoon, so I hope I can receive them before then. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-04.html new file mode 100644 index 0000000000..4420918662 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-04.html @@ -0,0 +1,3 @@ +>Magister Harrys:
+Go and fetch the tools that I have ordered from Blacksmith Altran. I'd like to receive them before this afternoon, as we plan on making repairs then. Please hurry. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-04a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-04a.html new file mode 100644 index 0000000000..6edb7db650 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-04a.html @@ -0,0 +1,3 @@ +Magister Harrys:
+You haven't met with Blacksmith Altran yet, have you? Go and see him right away at the blacksmith shop in the village. We're planning to start some maintenance this afternoon. Hurry and get your new tool before we start work! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-05.html new file mode 100644 index 0000000000..ee7651b8c1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30035-05.html @@ -0,0 +1,3 @@ +Magister Harrys:
+So these are the tools that have been forged by Blacksmith Altran. I'm sure they are of the highest quality. Thank you for bringing them here. I heard that you obtained the materials to make the tools for Blacksmith Altran? I will give you a reward for your help. Please do not decline, and accept my gift. May the blessings of Einhasad be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30283-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30283-01.html new file mode 100644 index 0000000000..57fa098f69 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30283-01.html @@ -0,0 +1,5 @@ +Blacksmith Altran:
+So, Magister Harrys sent you. He asked me to make strong tools that would not rust. Even if I could make saws and nails from Damascus metal, hammers must be made from a lighter, harder material.
+I'm thinking of taking this opportunity to make a new tool that I've only been thinking of. To make that, I need a slightly exotic material. Could you help me in finding it?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30283-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30283-02.html new file mode 100644 index 0000000000..a5da56a318 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30283-02.html @@ -0,0 +1,4 @@ +Blacksmith Altran:
+This time, I'm thinking of making the hammer head with stone instead of steel or a hardener like damascus. Why a stone axe, you ask, as if we were craven barbarians? The stone I'm talking about comes from the fragmented bodies of golems.
+There are stone golems in the woods to the northern area of this island where there are very few people. They are magical creatures that were created by the elves who lived on this land a long time ago. I don't know much about magic, but those golem fragments are very strong yet also lightweight. Please bring me five stone golem fragments. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30283-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30283-03.html new file mode 100644 index 0000000000..e760041e07 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30283-03.html @@ -0,0 +1,4 @@ +Blacksmith Altran:
+Please bring me five stone golem fragments. Then I can make a hammer for Magister Harrys to be used in the temple maintenance work.
+According to the guards, there are many stone golems along the northern seashore of the island. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30283-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30283-04.html new file mode 100644 index 0000000000..6cf50011e8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30283-04.html @@ -0,0 +1,5 @@ +Blacksmith Altran:
+So this is the Golem Shard ... Similar to diamond, but more dense and thus very hard. It will take some time to polish and carve this shard, so would you wait a moment?
+All I have to do is polish this Golem Shard a bit with a Mithril hammer and fix it firmly to this wooden handle that I've already made. Wonderful! Finished! It may look a bit coarse, but no other tool can compare to this. Try it! Quite heavy, eh?
+Here, this is a toolbox that contains the tools that Magister Harrys has asked for. It includes the hammer that I just made from the Golem Shard, as well as nails, a saw, and various other equipment. Go and deliver them to him. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30283-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30283-05.html new file mode 100644 index 0000000000..5d410793e5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/30283-05.html @@ -0,0 +1,3 @@ +Blacksmith Altran:
+What are you doing, lazing around like that? Go to the temple immediately and deliver the toolbox that I have given you to Magister Harrys. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/Q00152_ShardsOfGolem.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/Q00152_ShardsOfGolem.java new file mode 100644 index 0000000000..d1ecb1cd5f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00152_ShardsOfGolem/Q00152_ShardsOfGolem.java @@ -0,0 +1,213 @@ +/* + * 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.Q00152_ShardsOfGolem; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Shards of Golem (152) + * @author xban1x + */ +public class Q00152_ShardsOfGolem extends Quest +{ + // NPCs + private static final int HARRYS = 30035; + private static final int ALTRAN = 30283; + // Monster + private static final int STONE_GOLEM = 20016; + // Items + private static final int WOODEN_BREASTPLATE = 23; + private static final int HARRYS_1ST_RECIEPT = 1008; + private static final int HARRYS_2ND_RECIEPT = 1009; + private static final int GOLEM_SHARD = 1010; + private static final int TOOL_BOX = 1011; + // Misc + private static final int MIN_LVL = 10; + + public Q00152_ShardsOfGolem() + { + super(152); + addStartNpc(HARRYS); + addTalkId(HARRYS, ALTRAN); + addKillId(STONE_GOLEM); + registerQuestItems(HARRYS_1ST_RECIEPT, HARRYS_2ND_RECIEPT, GOLEM_SHARD, TOOL_BOX); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st != null) + { + switch (event) + { + case "30035-03.htm": + { + st.startQuest(); + giveItems(player, HARRYS_1ST_RECIEPT, 1); + htmltext = event; + break; + } + case "30283-02.html": + { + if (st.isCond(1) && hasQuestItems(player, HARRYS_1ST_RECIEPT)) + { + takeItems(player, HARRYS_1ST_RECIEPT, -1); + giveItems(player, HARRYS_2ND_RECIEPT, 1); + st.setCond(2, true); + htmltext = event; + } + break; + } + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(2) && (getRandom(100) < 30) && (getQuestItemsCount(killer, GOLEM_SHARD) < 5)) + { + giveItems(killer, GOLEM_SHARD, 1); + if (getQuestItemsCount(killer, GOLEM_SHARD) >= 5) + { + st.setCond(3, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (npc.getId()) + { + case HARRYS: + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = player.getLevel() >= MIN_LVL ? "30035-02.htm" : "30035-01.htm"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + if (hasQuestItems(player, HARRYS_1ST_RECIEPT)) + { + htmltext = "30035-04a.html"; + } + break; + } + case 2: + case 3: + { + if (hasQuestItems(player, HARRYS_2ND_RECIEPT)) + { + htmltext = "30035-04.html"; + } + break; + } + case 4: + { + if (hasQuestItems(player, HARRYS_2ND_RECIEPT, TOOL_BOX)) + { + giveItems(player, WOODEN_BREASTPLATE, 1); + addExpAndSp(player, 5000, 0); + st.exitQuest(false, true); + htmltext = "30035-05.html"; + } + break; + } + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + break; + } + case ALTRAN: + { + switch (st.getCond()) + { + case 1: + { + if (hasQuestItems(player, HARRYS_1ST_RECIEPT)) + { + htmltext = "30283-01.html"; + } + break; + } + case 2: + { + if (hasQuestItems(player, HARRYS_2ND_RECIEPT) && (getQuestItemsCount(player, GOLEM_SHARD) < 5)) + { + htmltext = "30283-03.html"; + } + break; + } + case 3: + { + if (hasQuestItems(player, HARRYS_2ND_RECIEPT) && (getQuestItemsCount(player, GOLEM_SHARD) >= 5)) + { + takeItems(player, GOLEM_SHARD, -1); + giveItems(player, TOOL_BOX, 1); + st.setCond(4, true); + htmltext = "30283-04.html"; + } + break; + } + case 4: + { + if (hasQuestItems(player, HARRYS_2ND_RECIEPT, TOOL_BOX)) + { + htmltext = "30283-05.html"; + } + break; + } + } + break; + } + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30002-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30002-01.html new file mode 100644 index 0000000000..868c5e54cb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30002-01.html @@ -0,0 +1,4 @@ +Trader Jackson:
+Ah, the goods that I ordered from the mainland! Thank you. I heard that the trade ship was shipwrecked because of the storm... for a time, I thought that I would never receive my goods... I'm glad that it turned out otherwise!
+Wonderful! Here is the receipt. Carry on! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30002-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30002-02.html new file mode 100644 index 0000000000..64392f30b9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30002-02.html @@ -0,0 +1,3 @@ +Trader Jackson:
+Take the receipt I have given you and go to Guard Arnold. He is so old-fashioned, he will probably worry continuously until he has the receipt in his hand. Thanks a lot, then! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30003-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30003-01.html new file mode 100644 index 0000000000..52de99519c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30003-01.html @@ -0,0 +1,4 @@ +Trader Silvia:
+Oh, the cloth I ordered has arrived. Thank you. So kind of you to personally deliver it to the store... Now I can make a new robe for Cristel to wear on her outings.
+Wait a moment... take this receipt. And here, take this as a reward for personally delivering the goods to me. Have a fine day! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30003-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30003-02.html new file mode 100644 index 0000000000..f94283d566 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30003-02.html @@ -0,0 +1,3 @@ +Trader Silvia:
+Go and show the receipt I gave you to Guard Arnold. And please tell him thank you, I have received the goods in good condition. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30041-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30041-00.htm new file mode 100644 index 0000000000..342f007321 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30041-00.htm @@ -0,0 +1,6 @@ +Guard Arnold:
+These days, no trade ships bearing the flag of Gracia sail into the dock. That's because all trade with Gracia has been halted since the war. It was quite a sight to see the great trade ships slowly sail into the harbor with their horns sounding, but I guess we won't be seeing any of that anymore. Instead, there has been an increase in trade ships coming in from Giran.
+However, the recent storms have caused numerous Giran trade ships to be shipwrecked on the island's western shores. Fortunately, none of the crews were lost, but even we guards had to be called out to collect the sunken trade goods.
+Now we have to organize the goods that were on the shipwrecked ships. As soon as we organize them, we will have to deliver the goods to their respective owners. I hope you can help us when the time comes.
+(Characters of Level 2 and above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30041-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30041-01.htm new file mode 100644 index 0000000000..8cf399716d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30041-01.htm @@ -0,0 +1,6 @@ +Guard Arnold:
+Following the war with Gracia, our king issued a trade embargo, and trade with Gracia was stopped altogether. That's why Gracian trade ships cannot be seen nowadays. On those days that the grand, magnificent Gracian trade ships slowly sailed into the harbor, the village people would all come out to the docks and greet the ship with enthusiastic waves ...
+Lately there have been many trade ships coming in from Giran. But compared to Gracia, it seems that they are inexperienced when it comes to navigation. The recent storms have caused numerous trade ships to be shipwrecked on the southern shores of the island. Fortunately, none of the crew were killed, but even we guards had to be called out to collect the sunken trade goods.
+We're just about finished organizing the goods that were on the shipwrecked ships, but the task of delivering the goods to their respective owners still remains. We're still short on help. Do you think you can help us out?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30041-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30041-02.html new file mode 100644 index 0000000000..8a4c839028 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30041-02.html @@ -0,0 +1,4 @@ +Sentry Arnold:
+Here is the list of all the townspeople you must deliver items to. It's that simple! I'll figure your wages based on how well you do.
+That Heavy Wooden Box goes to Merchant Jackson at the Weapons Shop, the Fabric goes to Merchant Silvia at the General Store, and that Clay Pot goes to Warehouse Keeper Rant. Deliver those items and bring back the receipts. Thank you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30041-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30041-03.html new file mode 100644 index 0000000000..ae06724703 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30041-03.html @@ -0,0 +1,4 @@ +Sentry Arnold:
+You still haven't made the deliveries? Please do so immediately and bring me back the receipts!
+The Heavy Wooden Box goes to Merchant Jackson at the Weapons Shop, the Fabrics go to Merchant Silvia at the General Store, and the Clay Pot goes to Warehouse Keeper Rant. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30041-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30041-04.html new file mode 100644 index 0000000000..64099e4c39 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30041-04.html @@ -0,0 +1,4 @@ +Guard Arnold:
+Have you finished all your deliveries? Thank you. As promised, here is your pay.
+If you ever get the chance, let's have a drink sometime. It's not a bad experience to sit on the shore and tip back a drink, while watching the night sea. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30054-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30054-01.html new file mode 100644 index 0000000000..d97a1fcca9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30054-01.html @@ -0,0 +1,4 @@ +Warehouse Keeper Rant:
+Ha ha! It's the jar I ordered from Giran. I was worried it would be broken during shipping. I'm so relieved!
+Ah, you need a receipt, don't you? Here it is. Let me just sign it and confirm delivery. There you go -- have a nice day! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30054-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30054-02.html new file mode 100644 index 0000000000..2992a90497 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/30054-02.html @@ -0,0 +1,3 @@ +Warehouse Keeper Rant:
+Please tell Mr. Arnold that I received it. And don't forget to show him the receipt I gave you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/Q00153_DeliverGoods.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/Q00153_DeliverGoods.java new file mode 100644 index 0000000000..6624fc6902 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00153_DeliverGoods/Q00153_DeliverGoods.java @@ -0,0 +1,165 @@ +/* + * 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.Q00153_DeliverGoods; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Deliver Goods (153) + * @author Zoey76 + * @version 1.0 Freya (11/16/2010), Based on Naia (EURO) + */ +public class Q00153_DeliverGoods extends Quest +{ + // NPCs + private static final int JACKSON_ID = 30002; + private static final int SILVIA_ID = 30003; + private static final int ARNOLD_ID = 30041; + private static final int RANT_ID = 30054; + // Items + private static final int DELIVERY_LIST_ID = 1012; + private static final int HEAVY_WOOD_BOX_ID = 1013; + private static final int CLOTH_BUNDLE_ID = 1014; + private static final int CLAY_POT_ID = 1015; + private static final int JACKSONS_RECEIPT_ID = 1016; + private static final int SILVIAS_RECEIPT_ID = 1017; + private static final int RANTS_RECEIPT_ID = 1018; + // Rewards + private static final int SOULSHOT_NO_GRADE_ID = 1835; // You get 3 Soulshots no grade. + private static final int RING_OF_KNOWLEDGE_ID = 875; + private static final int XP_REWARD_AMOUNT = 600; + + public Q00153_DeliverGoods() + { + super(153); + addStartNpc(ARNOLD_ID); + addTalkId(JACKSON_ID, SILVIA_ID, ARNOLD_ID, RANT_ID); + registerQuestItems(DELIVERY_LIST_ID, HEAVY_WOOD_BOX_ID, CLOTH_BUNDLE_ID, CLAY_POT_ID, JACKSONS_RECEIPT_ID, SILVIAS_RECEIPT_ID, RANTS_RECEIPT_ID); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && (npc.getId() == ARNOLD_ID)) + { + if (event.equalsIgnoreCase("30041-02.html")) + { + st.startQuest(); + giveItems(player, DELIVERY_LIST_ID, 1); + giveItems(player, HEAVY_WOOD_BOX_ID, 1); + giveItems(player, CLOTH_BUNDLE_ID, 1); + giveItems(player, CLAY_POT_ID, 1); + } + } + return event; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st != null) + { + if (npc.getId() == ARNOLD_ID) + { + switch (st.getState()) + { + case State.CREATED: + htmltext = (player.getLevel() >= 2) ? "30041-01.htm" : "30041-00.htm"; + break; + case State.STARTED: + if (st.isCond(1)) + { + htmltext = "30041-03.html"; + } + else if (st.isCond(2)) + { + takeItems(player, DELIVERY_LIST_ID, -1); + takeItems(player, JACKSONS_RECEIPT_ID, -1); + takeItems(player, SILVIAS_RECEIPT_ID, -1); + takeItems(player, RANTS_RECEIPT_ID, -1); + // On retail it gives 2 rings but one at the time. + giveItems(player, RING_OF_KNOWLEDGE_ID, 1); + giveItems(player, RING_OF_KNOWLEDGE_ID, 1); + addExpAndSp(player, XP_REWARD_AMOUNT, 0); + st.exitQuest(false, true); + htmltext = "30041-04.html"; + } + break; + case State.COMPLETED: + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + else + { + if (npc.getId() == JACKSON_ID) + { + if (hasQuestItems(player, HEAVY_WOOD_BOX_ID)) + { + takeItems(player, HEAVY_WOOD_BOX_ID, -1); + giveItems(player, JACKSONS_RECEIPT_ID, 1); + htmltext = "30002-01.html"; + } + else + { + htmltext = "30002-02.html"; + } + } + else if (npc.getId() == SILVIA_ID) + { + if (hasQuestItems(player, CLOTH_BUNDLE_ID)) + { + takeItems(player, CLOTH_BUNDLE_ID, -1); + giveItems(player, SILVIAS_RECEIPT_ID, 1); + giveItems(player, SOULSHOT_NO_GRADE_ID, 3); + htmltext = "30003-01.html"; + } + else + { + htmltext = "30003-02.html"; + } + } + else if (npc.getId() == RANT_ID) + { + if (hasQuestItems(player, CLAY_POT_ID)) + { + takeItems(player, CLAY_POT_ID, -1); + giveItems(player, RANTS_RECEIPT_ID, 1); + htmltext = "30054-01.html"; + } + else + { + htmltext = "30054-02.html"; + } + } + + if (st.isCond(1) && hasQuestItems(player, JACKSONS_RECEIPT_ID) && hasQuestItems(player, SILVIAS_RECEIPT_ID) && hasQuestItems(player, RANTS_RECEIPT_ID)) + { + st.setCond(2, true); + } + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30051-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30051-01.html new file mode 100644 index 0000000000..a2d56d0ebd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30051-01.html @@ -0,0 +1,5 @@ +Cristel:
+Ah, Rockswell must have sent you. This is such soft fur. This amount should be enough for one bundle of yarn. Just a moment, and I'll spin it for you...
+There you are, one bundle of yarn. I wonder if Rockswell is planning on sewing something...
+Oh, and please tell him that I'm knitting a sweater for him to wear this winter. It must be hard on him to guard the lighthouse all by himself in the freezing ocean wind... Tsk tsk. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30051-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30051-02.html new file mode 100644 index 0000000000..e2594e3164 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30051-02.html @@ -0,0 +1,3 @@ +Cristel:
+Ah, Rockswell must have sent you. This is such soft fur. But you don't have enough to make into yarn. It would be good to have about ten bundles of fur like this... I'm sorry to trouble you, but please go get me some more, and I'll make it into yarn. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30051-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30051-03.html new file mode 100644 index 0000000000..91a416ea0e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30051-03.html @@ -0,0 +1,3 @@ +Cristel:
+I see you still have the yarn that I gave you. Please deliver it to Rockswell. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30051-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30051-04.html new file mode 100644 index 0000000000..c0d1aeb586 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30051-04.html @@ -0,0 +1,3 @@ +Cristel:
+Oh my! What a pretty doll! Did Rolfe make this? He is really talented with his hands. I guess it's a gift for someone? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30055-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30055-01.html new file mode 100644 index 0000000000..b763e48421 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30055-01.html @@ -0,0 +1,5 @@ +Warehouse Keeper Rolfe:
+Oh, this yarn is of quite good quality. Looks like... ah, yes, this is real keltir fur. Right now, I'm managing this warehouse on guild business, but I'm originally a tailor. The richest traders of Giran were my customers... Ahem.
+Hmm? What? The girl doll for Rockswell? Oh, right! I almost forgot. Now that you brought me the yarn, I can make her some hair. Just a moment, here...
+There! It's finished. Now she has orange-colored hair, and doesn't have to be a bald dolly. By the way, did Rockswell have a granddaughter? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30055-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30055-02.html new file mode 100644 index 0000000000..0661b84af2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30055-02.html @@ -0,0 +1,3 @@ +Warehouse Keeper Rolfe:
+Please deliver the girl doll that I gave you to Lighthouse Keeper Rockswell. I don't know what it'll be used for, but make sure it gets to him, because it was a special-request item. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30055-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30055-03.html new file mode 100644 index 0000000000..88c09dcd5a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30055-03.html @@ -0,0 +1,3 @@ +Warehouse Keeper Rolfe:
+Rockswell asked me to make this girl doll some time ago. I think he's giving it to his granddaughter as a present. But I don't have yarn to make its hair. I think Rockswell was going to find me yarn made from keltir fur... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-01.htm new file mode 100644 index 0000000000..4dadaaf112 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-01.htm @@ -0,0 +1,6 @@ +Lighthouse Keeper Rockswell:
+The goddess of the seas must be really angry this year. The recent storms were fierce, unlike anything ever seen before. They say that trade ships sailing to Giran have been shipwrecked in these parts ... the waves don't seem normal this year.
+You know, this is all because they haven't made offerings to Shilen, goddess of the sea. From long, long ago our ancestors who lived on this island made a sacrifice to Shilen, goddess of the deep seas, every year for the safety of all ships that sail into these harbors. But now most of the residents have forgotten this tradition. I'm sure that is what has made the goddess so angry.
+Firon, the Wharf Manager, and I still continue this ceremony every year. We have not been able to hold the ritual this year yet, as the newly appointed Priest to the island doesn't like it. But see what happens? I think it would be best to hold the ceremony, even if it means doing it in secret. That is the only way to calm the raging waves and violent waters. Do you think you can help? I need the help of someone else in order to prepare for the ceremony.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-02.htm new file mode 100644 index 0000000000..39cab14c75 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-02.htm @@ -0,0 +1,5 @@ +Lighthouse Keeper Rockswell:
+The goddess of the seas must be angry this year. The waves are particularly fierce, and that recent storm didn't look normal. Plus, they say that trade ships going to Giran have been shipwrecked in these parts. Tsk tsk ...
+This is all because people have started to believe in that Einhasad religion or whatever, and stopped making offerings to the goddess who rules the seas.
+(Quest for characters level 2 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-03.htm new file mode 100644 index 0000000000..dab52dbeef --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-03.htm @@ -0,0 +1,5 @@ +Lighthouse Keeper Rockswell:
+They say that virgins were sacrificed to the sea a long time ago, but waterfolk like me have changed our ways. Instead, we make a doll in the shape of a girl, place it in a boat, and send it out to sea. The doll is our sacrifice to the sea.
+We asked Warehouse Keeper Rolfe to make the doll because he is good with his hands, but we must also make the doll's hair. So we need some good quality yarn.
+Hunt the keltirs on the island, collect their fur, and bring them to Cristel in the village. You can meet her at the well in front of the village warehouse. If you give Cristel the keltir fur, she will make yarn for you. Take the yarn to Warehouse Keeper Rolfe, so he can use it for the doll's hair. When the doll is finished, bring it to me. I will compensate you well for your work. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-04.html new file mode 100644 index 0000000000..c25d6b1254 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-04.html @@ -0,0 +1,3 @@ +Lighthouse Keeper Rockswell:
+You still don't have enough keltir fur. If you collect ten pelts of keltir fur and go see Cristel, she will make them into yarn for you. You can meet Cristel at the well in front of the village warehouse. Then, take the yarn she gives you and go find Rolfe. You can meet Rolfe at the warehouse. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-05.html new file mode 100644 index 0000000000..387f99a554 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-05.html @@ -0,0 +1,3 @@ +Lighthouse Keeper Rockswell:
+I see that Cristel has made the yarn. I'm always thankful to her. Give this yarn to Rolfe. You can meet Rolfe at the warehouse. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-06.html new file mode 100644 index 0000000000..c5e479b07b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-06.html @@ -0,0 +1,4 @@ +Lighthouse Keeper Rockswell:
+So this is the doll that Rolfe made. He really is talented with his hands, as a famous tailor should be. The glass eyes make it seem almost alive. It won't be a problem in using it as a sacrifice to Shilen of the deep sea.
+Well, good work. Here is the reward as promised. May the ocean's blessing be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-07.html new file mode 100644 index 0000000000..d2a15e2fc7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/30312-07.html @@ -0,0 +1,4 @@ +Lighthouse Keeper Rockswell:
+I see that you've collected ten pelts of keltir fur. Bring them to Cristel. You can meet her at the well in front of the village warehouse. She will use the keltir fur to make yarn.
+Take the yarn made from keltir fur and go find Rolfe. You can meet Rolfe at the warehouse. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/Q00154_SacrificeToTheSea.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/Q00154_SacrificeToTheSea.java new file mode 100644 index 0000000000..6d508da600 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00154_SacrificeToTheSea/Q00154_SacrificeToTheSea.java @@ -0,0 +1,187 @@ +/* + * 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.Q00154_SacrificeToTheSea; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; + +/** + * Sacrifice to the Sea (154) + * @author Pandragon + */ +public final class Q00154_SacrificeToTheSea extends Quest +{ + // NPCs + private static final int ROCKSWELL = 30312; + private static final int CRISTEL = 30051; + private static final int ROLLFNAN = 30055; + // Items + private static final int FOX_FUR = 1032; + private static final int FOX_FUR_YAM = 1033; + private static final int MAIDEN_DOLL = 1034; + // Monsters + private static final int ELDER_KELTIR = 20544; + private static final int YOUNG_KELTIR = 20545; + private static final int KELTIR = 20481; + // Reward + private static final int MAGE_EARING = 113; + // Misc + private static final int MIN_LVL = 2; + + public Q00154_SacrificeToTheSea() + { + super(154); + addStartNpc(ROCKSWELL); + addTalkId(ROCKSWELL, CRISTEL, ROLLFNAN); + addKillId(ELDER_KELTIR, YOUNG_KELTIR, KELTIR); + registerQuestItems(FOX_FUR, FOX_FUR_YAM, MAIDEN_DOLL); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if ((qs != null) && event.equals("30312-03.htm")) + { + qs.startQuest(); + return event; + } + return null; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance talker) + { + final QuestState qs = getQuestState(talker, true); + String htmltext = getNoQuestMsg(talker); + switch (npc.getId()) + { + case ROCKSWELL: + { + if (qs.isCreated()) + { + htmltext = ((talker.getLevel() >= MIN_LVL) ? "30312-01.htm" : "30312-02.htm"); + } + else if (qs.isStarted()) + { + switch (qs.getCond()) + { + case 1: + { + htmltext = "30312-04.html"; + break; + } + case 2: + { + htmltext = "30312-07.html"; + break; + } + case 3: + { + htmltext = "30312-05.html"; + break; + } + case 4: + { + takeItems(talker, MAIDEN_DOLL, -1); + rewardItems(talker, MAGE_EARING, 1); + addExpAndSp(talker, 0, 1000); + qs.exitQuest(false, true); + htmltext = "30312-06.html"; + break; + } + } + } + else + { + htmltext = getAlreadyCompletedMsg(talker); + } + break; + } + case CRISTEL: + { + switch (qs.getCond()) + { + case 1: + { + htmltext = "30051-02.html"; + break; + } + case 2: + { + takeItems(talker, FOX_FUR, -1); + giveItems(talker, FOX_FUR_YAM, 1); + qs.setCond(3, true); + htmltext = "30051-01.html"; + break; + } + case 3: + { + htmltext = "30051-03.html"; + break; + } + case 4: + { + htmltext = "30051-04.html"; + break; + } + } + break; + } + case ROLLFNAN: + { + switch (qs.getCond()) + { + case 1: + case 2: + { + htmltext = "30055-03.html"; + break; + } + case 3: + { + takeItems(talker, FOX_FUR_YAM, -1); + giveItems(talker, MAIDEN_DOLL, 1); + qs.setCond(4, true); + htmltext = "30055-01.html"; + break; + } + case 4: + { + htmltext = "30055-02.html"; + break; + } + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getRandomPartyMemberState(killer, 1, 3, npc); + if ((qs != null) && giveItemRandomly(qs.getPlayer(), npc, FOX_FUR, 1, 10, 0.3, true)) + { + qs.setCond(2); + } + return super.onKill(npc, killer, isSummon); + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/30042-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/30042-01.htm new file mode 100644 index 0000000000..a709db5aea --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/30042-01.htm @@ -0,0 +1,6 @@ +Guard Abellos:
+You might know this already, but Talking Island is part of Gludio's lands. Currently, the person officially in charge of administration and order on the island is Sir Collin Windawood. The lord himself appointed Sir Windawood governor of this island.
+Well, I shouldn't be saying this... Sir Windawood is popular among the island folk and is a skilled leader, but he's not interested in public duties at all. Sometimes, he'll take a walk into the forest and it may be days before he returns. Last time, he spent a week at the Marius farm, on the northern shores of the island. Quite an odd person, really.
+But, seeing how he always appears in desperate or critical moments to quietly and skillfully manage things, I can't help but think that he's really an able the leader. I mean, isn't that why the lord entrusted him with this duty in the first place?
+(Characters of Level 3 and above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/30042-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/30042-02.htm new file mode 100644 index 0000000000..5136b88465 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/30042-02.htm @@ -0,0 +1,6 @@ +Guard Abellos:
+You may have already heard about it, but this Talking Island is a part of Gludio territory. And Sir Collin Windawood is officially in charge of administration and public security on the lord's behalf. The lord personally appointed him Consul of this island. But now, it seems that the lord has called a public meeting. Of course, it has nothing to do with people like us. Only those of noble birth may attend.
+The problem is that an official order for Sir Windawood's attendance has arrived, but it hasn't been delivered yet because he hasn't been around for a few days. He's a great man, but I worry sometimes about his lack of interest in public affairs. One time, he left to take a walk in the woods and didn't come back for several days. And another time, he stayed at Marius' farm on the island's northern seashore for a whole week. He can be silly sometimes.
+In any case, the message must be delivered to him soon if he is to go to the mainland and attend the meeting in time. But where could he have gone this time ... ? So I have to ask, if you're not too busy, do you think you could help me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/30042-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/30042-03.htm new file mode 100644 index 0000000000..4ede285665 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/30042-03.htm @@ -0,0 +1,3 @@ +Guard Abellos:
+If you find Sir Windawood, please deliver this letter to him. I myself don't know exactly where he could be... According to the guard captain, he left the village two days ago, muttering something about wanting to visit the Ruins and the Obelisk of Victory... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/30042-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/30042-04.html new file mode 100644 index 0000000000..aee33c36eb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/30042-04.html @@ -0,0 +1,3 @@ +Guard Abellos:
+Have you still not found Sir Windawood yet? I have a feeling that he might be near the Obelisk of Victory. You should try looking for him in that area first. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/30311-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/30311-01.html new file mode 100644 index 0000000000..e82bceef6a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/30311-01.html @@ -0,0 +1,8 @@ +Collin Windawood:
+Hmm... something urgent?
+Ah, a message from our lord. Another meeting? If he wants to hold a meeting every ten days, what are people living in remote island such as myself supposed to do... it takes a few days just to travel back and forth by ship... plus I'm not interested in sitting in a meeting with the empty-headed nobles.
+Well, my apologies to our lord, but I am just going to skip this meeting. I'm sure he will understand if I send a reply explaining the reason. Anyway, thanks for the letter. I guess the guards are busy, asking someone like you to do such a task and all. Oh here, take this. It's not much, but it's in appreciation for coming all the way here to seek me out.
+Take a look around, while you're here. I don't know if you are interested in history, but there are many historic relics of ancient Talking Island in this area. This memorial tower right here was built a thousand years ago. Also, the remains of the ancient Elven magic school lie just to the west.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/Q00155_FindSirWindawood.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/Q00155_FindSirWindawood.java new file mode 100644 index 0000000000..613cc18528 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00155_FindSirWindawood/Q00155_FindSirWindawood.java @@ -0,0 +1,98 @@ +/* + * 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.Q00155_FindSirWindawood; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Find Sir Windawood (155) + * @author malyelfik + */ +public class Q00155_FindSirWindawood extends Quest +{ + // NPCs + private static final int ABELLOS = 30042; + private static final int SIR_COLLIN_WINDAWOOD = 30311; + // Items + private static final int OFFICIAL_LETTER = 1019; + private static final int HASTE_POTION = 734; + // Misc + private static final int MIN_LEVEL = 3; + + public Q00155_FindSirWindawood() + { + super(155); + addStartNpc(ABELLOS); + addTalkId(ABELLOS, SIR_COLLIN_WINDAWOOD); + registerQuestItems(OFFICIAL_LETTER); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equalsIgnoreCase("30042-03.htm")) + { + st.startQuest(); + giveItems(player, OFFICIAL_LETTER, 1); + return event; + } + return null; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st == null) + { + return htmltext; + } + + switch (npc.getId()) + { + case ABELLOS: + switch (st.getState()) + { + case State.CREATED: + htmltext = (player.getLevel() >= MIN_LEVEL) ? "30042-02.htm" : "30042-01.htm"; + break; + case State.STARTED: + htmltext = "30042-04.html"; + break; + case State.COMPLETED: + htmltext = getAlreadyCompletedMsg(player); + break; + } + break; + case SIR_COLLIN_WINDAWOOD: + if (st.isStarted() && hasQuestItems(player, OFFICIAL_LETTER)) + { + giveItems(player, HASTE_POTION, 1); + st.exitQuest(false, true); + htmltext = "30311-01.html"; + } + break; + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-01.htm new file mode 100644 index 0000000000..869f9e8c1f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-01.htm @@ -0,0 +1,5 @@ +Lilith:
+It has been over a hundred years since I came to this island. That is not a long time for us Elves, who live nearly eternal lives, but it is a long time for Humans. And it's been enough time for me to become fond of this island. This place is now home to me, but I sometimes think of the memories of my days in the Elven Forest.
+Perhaps it is because my health is not good lately, but sometimes old memories come back to sadden me. The memories of a parted lover, of a love forged a thousand years ago...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-02.html new file mode 100644 index 0000000000..2f0f4eb012 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-02.html @@ -0,0 +1,6 @@ +Lilith:
+Long ago I was a high level Spellsinger, and my lover Theon was the best of the Temple Knights. One year in late fall, we began our love for each other, and while the buds on the trees grew and withered, then fell, and while this was repeated time and time again, our love grew even stronger. During these happy times, we were sent as envoys to the Human kingdom of Elmoreden to relay the will of the tetrarch.
+At that time, the devil Beleth continued to widen his territory with his evil powers in pursuit of world domination, and because of this, many people fell into distress and the world nearly came to an end. Eventually the Mystics of the Ivory Tower waged war against Beleth in order to stop him, and Theon and I aided the Human army in fighting against Beleth. But in the final battle, when the Ivory Tower Mystics used forbidden magic to trap Beleth, I was severely wounded. And when I woke up many months later, I learned that I had lost the lover whom I had loved more than my life.
+My friends told me that Theon had met a noble death, fighting against the undead armies to the very end in order to buy time for our allies to retreat. But the body was never found, and I could not accept the fact that he was dead. I would like to believe that he is alive somewhere under this sky. From then on, I have stayed on this island for a thousand years to honor the promise that Theon and I made long ago. I await the day when I can meet him again and return to our homeland together...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-03.html new file mode 100644 index 0000000000..1d528c13d9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-03.html @@ -0,0 +1,6 @@ +Lilith:
+Before the beginning of the war against the devil Beleth, Theon and I made a promise to stay on Talking Island and teach the Humans the use of magic for harmony and preservation, so that there would never be another Beleth. If Theon is still alive, I am sure he will come to this island to honor our promise. It has been a thousand years since we parted, but I still hold on to the belief that someday he will come to this island, and I continue to wait to this day. Seasons change, and change again, and as the years pass by, my heart is filled with despair, but I have not abandoned hope yet.
+But a few days ago, I heard some glad news while dining with Sir Windawood. He says that he saw an Elven warrior in the village of Gludin fitting the description of Theon... My heart was racing when I heard that...
+If you are planning to travel to the mainland, could you go to the village of Gludin for me and check for news regarding Theon?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-04.htm new file mode 100644 index 0000000000..d3eb514a28 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-04.htm @@ -0,0 +1,5 @@ +Lilith:
+Thank you. But I must tell you something in advance. Please don't feel insulted, I only say it out of concern for you. It may be a little dangerous for you to travel to the Gludio mainland. It is a land made barren during the war against the devil Beleth, and a dangerous place, where all kinds of monsters threaten the lives of innocent people. It may be even more dangerous now than a thousand years ago when Beleth existed. Of course, the lord of Gludio is conducting reconstruction projects, but the southern regions of Gludio are still barren plains.
+I have waited for more than a thousand years now, and it makes no difference to me to wait a few more years. There is no need to hurry. Whenever you are ready to leave for the Gludio mainland, come and seek me.
+(Quest for characters level 15 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-05.htm new file mode 100644 index 0000000000..6a20da8b25 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-05.htm @@ -0,0 +1,4 @@ +Lilith:
+The Gludio mainland is a very dangerous place, and it worries me a little even as I am asking you this favor. It is a land made barren during the war against the devil Beleth, and a dangerous place, where all kinds of monsters threaten the lives of innocent people. Of course, the lord of Gludio is conducting reconstruction projects, but the southern regions of Gludio are still barren plains.
+I have waited for more than a thousand years now, and it makes no difference to me to wait a few more years. There is no need to hurry. When you decide to leave this island and go to the Gludio mainland by ship, please go to the harbor village called Gludin and ask about an Elven warrior named Theon. And if ... this may be a small hope ... but if you meet Theon, please give him this letter. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-06.html new file mode 100644 index 0000000000..9debb683ec --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-06.html @@ -0,0 +1,4 @@ +Lilith:
+I see that you have not left the island yet. But there is no need to hurry. For us Elves, "waiting" may mean tens, even hundreds of years.
+When you go to Gludio, please stop by the harbor village called Gludin and ask the whereabouts of an Elven warrior named Theon. Please! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-07.html new file mode 100644 index 0000000000..084c38216e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30368-07.html @@ -0,0 +1,5 @@ +Lilith:
+I see ... Theon ... has gone back already to the arms of Eva. It's not that I did not think of such a thing ... but it is all right. There is no need to comfort me.
+I had hoped to see his face just once ... I just wanted to go near him and quietly call out his name ... Fate is such a cruel thing ... Making us meet and fall in love ... And to spend such a long time yearning for each other ... and finally separate us with death ...
+This ... This is Theon's Diary? Thank you. I would like to be alone today and spend some time in quiet, reading this diary. I will never forget your good intentions. This is a small token of my gratitude. Please accept. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30369-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30369-01.html new file mode 100644 index 0000000000..24eb2f5a4d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30369-01.html @@ -0,0 +1,7 @@ +Master Baenedes:
+Theon ... Yes, I knew him well. He is the man who taught me how to use the sword and bow. A silent and stern person, but he was also a sensitive man who longed for his long lost lover. The woman he so missed ... is still alive ... the web of fate that the arachnes weave is sometimes cruelly twisted, I think. That two lovers longed for each other for all those years, with only a small distance between them ...
+Unfortunately, Theon returned to the arms of Eva a few years ago. I personally transported his body to the Elven Forest and buried him under the Mother Tree's roots. Ah, if only Lilith had written this letter just a little sooner ...
+While living in this small Human town, Theon wrote many beautiful poems and songs to pass the time while longing for his lover of a thousand years. I urged him to write down the poems and songs in a diary. Before he passed away, he entrusted me with his diary. Please ... deliver this diary to Lilith.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30369-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30369-02.html new file mode 100644 index 0000000000..1b900729d4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30369-02.html @@ -0,0 +1,3 @@ +Master Baenedes:
+Please deliver this diary to Lilith. I think that is the right thing for us to do, for the sake of Theon, who has returned to the arms of Eva. If only they had learned of each other's news sooner ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30369-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30369-03.html new file mode 100644 index 0000000000..e3ede844c6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30369-03.html @@ -0,0 +1,4 @@ +Master Baenedes:
+I understand. I can't thank you enough for granting the wishes of Lilith and coming here. May you find your destiny here ...
+I will ask another person to deliver the diary. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30369-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30369-04.html new file mode 100644 index 0000000000..4bc5699181 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/30369-04.html @@ -0,0 +1,3 @@ +Master Baenedes:
+You have not been able to find a ship returning to Talking Island yet? Please deliver Theon's Diary to Lilith, whom I'm sure is anxiously awaiting any news. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/Q00156_MillenniumLove.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/Q00156_MillenniumLove.java new file mode 100644 index 0000000000..ccd9266112 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00156_MillenniumLove/Q00156_MillenniumLove.java @@ -0,0 +1,172 @@ +/* + * 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.Q00156_MillenniumLove; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Millennium Love (156) + * @author xban1x + */ +public class Q00156_MillenniumLove extends Quest +{ + // NPCs + private static final int LILITH = 30368; + private static final int BAENEDES = 30369; + // Items + private static final int LILITHS_LETTER = 1022; + private static final int THEONS_DIARY = 1023; + private static final int GREATER_COMP_SOULSHOUT_PACKAGE_NO_GRADE = 5250; + // Misc + private static final int MIN_LVL = 15; + + public Q00156_MillenniumLove() + { + super(156); + addStartNpc(LILITH); + addTalkId(LILITH, BAENEDES); + registerQuestItems(LILITHS_LETTER, THEONS_DIARY); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st != null) + { + switch (event) + { + case "30368-02.html": + case "30368-03.html": + { + htmltext = event; + break; + } + case "30368-05.htm": + { + if (player.getLevel() >= MIN_LVL) + { + st.startQuest(); + giveItems(player, LILITHS_LETTER, 1); + htmltext = event; + } + else + { + htmltext = "30368-04.htm"; + } + break; + } + case "30369-02.html": + { + if (st.isCond(1) && hasQuestItems(player, LILITHS_LETTER)) + { + takeItems(player, LILITHS_LETTER, 1); + giveItems(player, THEONS_DIARY, 1); + st.setCond(2, true); + htmltext = event; + } + break; + } + case "30369-03.html": + { + if (st.isCond(1) && hasQuestItems(player, LILITHS_LETTER)) + { + addExpAndSp(player, 3000, 0); + st.exitQuest(false, true); + htmltext = event; + } + break; + } + } + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (npc.getId()) + { + case LILITH: + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = "30368-01.htm"; + break; + } + case State.STARTED: + { + if (st.isCond(1) && hasQuestItems(player, LILITHS_LETTER)) + { + htmltext = "30368-06.html"; + } + else if (st.isCond(2) && hasQuestItems(player, THEONS_DIARY)) + { + giveItems(player, GREATER_COMP_SOULSHOUT_PACKAGE_NO_GRADE, 1); + addExpAndSp(player, 3000, 0); + st.exitQuest(false, true); + htmltext = "30368-07.html"; + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + break; + } + case BAENEDES: + { + switch (st.getCond()) + { + case 1: + { + if (hasQuestItems(player, LILITHS_LETTER)) + { + htmltext = "30369-01.html"; + } + break; + } + case 2: + { + if (hasQuestItems(player, THEONS_DIARY)) + { + htmltext = "30369-04.html"; + } + break; + } + } + break; + } + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-01.htm new file mode 100644 index 0000000000..a66b344de4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-01.htm @@ -0,0 +1,4 @@ +Warehouse Keeper Wilford:
+I'm sure you know this, but our Aden Kingdom was at war with Gracia until recently. As a result of the wars, trade with Gracia is still banned to this day. That is such a shame for businesses like me... particularly since there is a large profit to be made from importing metals in high demand, like adamantite... eh? You don't know what adamantite is? Hmmm... I can't tell you right now, but if you are interested, I will explain it to you later.
+(Quest for characters level 5 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-02.htm new file mode 100644 index 0000000000..76e8e9d135 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-02.htm @@ -0,0 +1,5 @@ +Warehouse Keeper Wilford:
+As you know, there was war between Aden and Gracia. But the problem is, official trade with Gracia has since been banned, and Gracian trade ships no longer come to Talking Island. Tsk, I can't believe they would ban free trade for political reasons, it's a significant loss to businessmen like me. My business was quite profitable from my importing and selling of metals like adamantite... plus, from a military standpoint, can't they realize that not being able to produce fine quality adamantite weapons will lead to the weakening of military powers? Such a difficult situation...
+Now this is our little secret, but actually, I am still trading with Gracia through secret routes. We may be political enemies, but that doesn't always make a difference in real life. There is always a high demand for goods from Gracia. So, what do you think? As long as you promise not to talk about this in front of anyone else, I can tell you some more...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-03.htm new file mode 100644 index 0000000000..52299df7f0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-03.htm @@ -0,0 +1,5 @@ +Warehouse Keeper Wilford:
+Good, then let me first tell you what adamantite is.
Adamantite is a very important metal for making weapons. Weapons and armor crafted from refined Adamantite Ore metal are of high quality. Most other weapons can't even compare. But this adamantite is not found in Aden, and has to be imported from the Kardif regions of Gracia. But since the trade ban was announced, it has been difficult to find adamantite anywhere in the Aden Kingdom. However, because I had established a partnership with a few Gracian traders long ago, I have been able to bring Adamantite Ore into this island away from the eyes of the governor. Well, strictly speaking, you can call it smuggling.
+Usually, we land the smuggling ship on the remote southern shores of Talking Island, then load the materials onto a small boat and travel upstream to unload them on the shores of the lake near Einhovant's School of Magic. But an unforeseen accident a few days ago have put me in a bit of a dilemma. So I'd like to seek your help with that problem... What about it, will you help?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-04.htm new file mode 100644 index 0000000000..2a3b0850bd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-04.htm @@ -0,0 +1,5 @@ +Warehouse Keeper Wilford:
+Good, so we see eye to eye. Now listen carefully to what I tell you. Do you remember the day that the recent storms hit? That particular day was the day that my 'business partners' and I were to bring some goods in. Thankfully, the smuggler's ship landed safely on the southern shores of the island.
+Because I had to unload before sunrise, I attempted to move the goods to the unloading place, even if it meant overexerting myself. But while going upstream with the Adamantite Ore loaded on my lifeboat, the boat was upturned by the waters of the river that was swollen from the storm, and the ore was scattered all around the lake. My business partners and I spent all night walking around the lakeshore gathering the ore. But after we gathered together all the ore that we had collected, we were missing quite a large amount. As I found out later, giant toads that live near the lake had swallowed the ore.
+So what I would like to ask you to do is walk around the shores of the lake adjacent to Einhovant's School of Wizardry, hunt the toads, and recover the Adamantite Ore that they have swallowed. I have to send the goods to Giran, and I must send twenty at a time. When you have gathered twenty of them, bring them to me. I will give you a generous reward for them. Now, go if you are ready. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-05.html new file mode 100644 index 0000000000..47aa341543 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-05.html @@ -0,0 +1,3 @@ +Warehouse Keeper Wilford:
+I see you haven't gathered all the items yet. You have to send the items to Giran first. You need exactly 20 ores, so keep at it. We have to send them to Giran in a matter of days. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-06.html new file mode 100644 index 0000000000..45473d9de8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/30005-06.html @@ -0,0 +1,3 @@ +Warehouse Keeper Wilford:
+Oh, you have recovered them. Good job! I must send them off immediately today, on the next trade boat to Giran. This is all thanks to you. Here, the reward that I have promised. I hope you won't talk to anyone else about this. It won't be good if this reaches the ears of the guards. I trust that you will take care of things even if I stop right here. Well, may the blessings of the land be with you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/Q00157_RecoverSmuggledGoods.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/Q00157_RecoverSmuggledGoods.java new file mode 100644 index 0000000000..4218413cff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00157_RecoverSmuggledGoods/Q00157_RecoverSmuggledGoods.java @@ -0,0 +1,132 @@ +/* + * 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.Q00157_RecoverSmuggledGoods; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Recover Smuggled Goods (157) + * @author xban1x + */ +public class Q00157_RecoverSmuggledGoods extends Quest +{ + // NPC + private static final int WILFORD = 30005; + // Monster + private static final int GIANT_TOAD = 20121; + // Items + private static final int BUCKLER = 20; + private static final int ADAMANTITE_ORE = 1024; + // Misc + private static final int MIN_LVL = 5; + + public Q00157_RecoverSmuggledGoods() + { + super(157); + addStartNpc(WILFORD); + addTalkId(WILFORD); + addKillId(GIANT_TOAD); + registerQuestItems(ADAMANTITE_ORE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st != null) + { + switch (event) + { + case "30005-03.htm": + { + htmltext = event; + break; + } + case "30005-04.htm": + { + st.startQuest(); + htmltext = event; + break; + } + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(1) && (getRandom(10) < 4) && (getQuestItemsCount(killer, ADAMANTITE_ORE) < 20)) + { + giveItems(killer, ADAMANTITE_ORE, 1); + if (getQuestItemsCount(killer, ADAMANTITE_ORE) >= 20) + { + st.setCond(2, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = player.getLevel() >= MIN_LVL ? "30005-02.htm" : "30005-01.htm"; + break; + } + case State.STARTED: + { + if (st.isCond(2) && (getQuestItemsCount(player, ADAMANTITE_ORE) >= 20)) + { + giveItems(player, BUCKLER, 1); + st.exitQuest(false, true); + htmltext = "30005-06.html"; + } + else + { + htmltext = "30005-05.html"; + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/30031-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/30031-01.html new file mode 100644 index 0000000000..47242c25af --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/30031-01.html @@ -0,0 +1,5 @@ +High Priest Biotin:
+Actually, I have been plagued by an unexplainable fear lately. I think it is the reoccurring nightmare that I have been having recently. I have had superior intuition since I was young, and have often received divine signs in my dreams. I think that my nightmares are a warning from the gods. I do not know its exact identity yet, but I feel that an evil power is spreading its hands over the island.
+I only hope that this uneasy fear is a figment of my imagination ... I am not sure yet ... But perhaps even you may have to fight this evil.
+(Quest for characters level 21 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/30031-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/30031-02.htm new file mode 100644 index 0000000000..92dd5e27aa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/30031-02.htm @@ -0,0 +1,6 @@ +High Priest Biotin:
+I have had great intuition since my youth and have received warnings about disasters or dangers in my sleep. Eventually that has caused me to walk the path of faith. After becoming a priest, I have received the message of the gods more clearly in my dreams. Lately those occurrences have been rare, but all of a sudden, I have begun to consecutively dream very unsettling nightmares. The dream was unclear at first, but finally became clear last night.
+I finally realized that the dream was a warning against the foreboding evil that approaches our Talking Island. Oh, it is frightening indeed. A great evil power is targeting Talking Island. But as of now, I do not know the identity of that great evil ... all I know is that a devil presumed to be a worshipper of this evil is plotting something in the basements of the Elven Ruins.
+That is why all I know at the moment is that the evil worshipper must be found and eliminated. We must get rid of the seed of evil or it may draw a great evil into our island. I would like you to perform that task.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/30031-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/30031-03.htm new file mode 100644 index 0000000000..36e9bd8bd6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/30031-03.htm @@ -0,0 +1,5 @@ +High Priest Biotin:
+Brave warrior, to seek out and eradicate the seed of evil, you must travel to the abandoned Elven Ruins. For directions to the abandoned Elven Ruins, ask Guard Kenyos who stands at the northern entrance of the village.
+In my dreams the seed of evil that will lead a great evil into the world is lying dormant in the deepest depths of the cellars, gathering power. The seed of evil took the form of a devil with large, grotesque red wings, reminiscent of a bat. They came in a group, but one of them radiated an evil force greater than the rest. I am sure that he is the leader of this group.
+I pray to Einhasad that our small power of good may be sufficient to defeat the darkness. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/30031-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/30031-04.html new file mode 100644 index 0000000000..6636524887 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/30031-04.html @@ -0,0 +1,3 @@ +High Priest Biotin:
+You have not yet been able to eradicate that seed of evil, I see. Bear this in mind. It is in the deepest depths of the Elven Ruins, and takes the form of a great red devil with the wings of a bat. I bid you take caution. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/30031-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/30031-05.html new file mode 100644 index 0000000000..4fe77b470e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/30031-05.html @@ -0,0 +1,6 @@ +High Priest Biotin:
+Well done. You've done well in a very dangerous task.
+What's that ...? He cried out Beleth's name as he died...? Beleth was a Dark Mage who was called a demon a long time ago and whose powers were sealed by the magicians of the Ivory Tower. But whether he lived or died has never been confirmed. A demon who follows Beleth has appeared on this island... That's just not right. I get the feeling that this event is just the beginning of a greater calamity...
+But then... What is this Ancient Tablet? Was this obtained from the demon? That looks like the sort used by mages in the Elmoreden age. What does this have to do with Beleth? ... I suppose I must ask Gallint of the Einhovant's School, who can read the ancient language, to translate this for me...
+Oh! I was so wrapped up in thinking about this that I almost forgot something important. Please accept this. It is a small token of appreciation for completing such a difficult task. Please don't refuse me, and take it. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/Q00158_SeedOfEvil.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/Q00158_SeedOfEvil.java new file mode 100644 index 0000000000..52b3711e4c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00158_SeedOfEvil/Q00158_SeedOfEvil.java @@ -0,0 +1,125 @@ +/* + * 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.Q00158_SeedOfEvil; + +import com.l2jmobius.gameserver.enums.ChatType; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.network.NpcStringId; +import com.l2jmobius.gameserver.network.serverpackets.NpcSay; + +/** + * Seed of Evil (158) + * @author malyelfik + */ +public class Q00158_SeedOfEvil extends Quest +{ + // NPC + private static final int BIOTIN = 30031; + // Monster + private static final int NERKAS = 27016; + // Items + private static final int ENCHANT_ARMOR_D = 956; + private static final int CLAY_TABLET = 1025; + // Misc + private static final int MIN_LEVEL = 21; + + public Q00158_SeedOfEvil() + { + super(158); + addStartNpc(BIOTIN); + addTalkId(BIOTIN); + addAttackId(NERKAS); + addKillId(NERKAS); + registerQuestItems(CLAY_TABLET); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equalsIgnoreCase("30031-03.htm")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onAttack(L2Npc npc, L2PcInstance attacker, int damage, boolean isSummon) + { + if (npc.isScriptValue(0)) + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.HOW_DARE_YOU_CHALLENGE_ME)); + npc.setScriptValue(1); + } + return super.onAttack(npc, attacker, damage, isSummon); + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && !hasQuestItems(killer, CLAY_TABLET)) + { + giveItems(killer, CLAY_TABLET, 1); + st.setCond(2, true); + } + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.THE_POWER_OF_LORD_BELETH_RULES_THE_WHOLE_WORLD)); + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + htmltext = (player.getLevel() >= MIN_LEVEL) ? "30031-02.htm" : "30031-01.html"; + break; + case State.STARTED: + if (st.isCond(1)) + { + htmltext = "30031-04.html"; + } + else if (st.isCond(2) && hasQuestItems(player, CLAY_TABLET)) + { + giveItems(player, ENCHANT_ARMOR_D, 1); + addExpAndSp(player, 17818, 927); + giveAdena(player, 1495, true); + st.exitQuest(false, true); + htmltext = "30031-05.html"; + } + break; + case State.COMPLETED: + htmltext = getAlreadyCompletedMsg(player); + break; + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-01.htm new file mode 100644 index 0000000000..f08bb10fe2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-01.htm @@ -0,0 +1,4 @@ +Hierarch Asterios:
+Young traveler of a foreign race, there is nothing you can do for me. Listen to the beautiful music of the woods and enjoy life under the shade of the Mother Tree, and rest your weary body.
+(Quest for Elves only.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-02.htm new file mode 100644 index 0000000000..d1ad1f6186 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-02.htm @@ -0,0 +1,4 @@ +Hierarch Asterios:
+Have you felt anything strange lately while walking around the village? I recently saw yellow, withered leaves on the surface of the pond in the middle of the village, under the Mother Tree. I don't know why a tree that has grown for thousands of years should suddenly drop discolored, withered leaves. I am very worried. I will delve deeper into this, but if further investigation is necessary, I may have to ask you to aid me in investigating this matter.
+(Quest for Elven characters level 12 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-03.htm new file mode 100644 index 0000000000..aa804154ce --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-03.htm @@ -0,0 +1,6 @@ +Hierarch Asterios:
+I don't know if you've noticed, but the Mother Tree in the middle of the village has been slowly withering. The progress of the blight is so slow that it is hard to notice unless one possesses high magic powers. We do not wish to worry our brothers, and only a few of us know this secret. None of our ancestors' records show any incident of the Mother Tree withering. I cannot shake the dread that something is terribly wrong.
+As a result of my research, I discovered that the Mother Tree is withering because the water is full of contaminants that dry up the tree's roots. It is my guess that someone is polluting the water source of the river that flows into the village.
+But I cannot guess who that someone is. That someone would dare to pollute our life source, our water, in this chaotic time of war against the Misty Mountain orcs ... This cannot be left alone, it must be dealt with. The sentinels cannot be spared, as they must defend the village, and all of our Rangers have been sent to the woods in preparation for our battle with the orcs. You must go to the water source and find out the reason behind the pollution.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-04.htm new file mode 100644 index 0000000000..929f2c7cba --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-04.htm @@ -0,0 +1,4 @@ +Hierarch Asterios:
+You can reach the water source by following the river that flows into the village and travelling north. If you find anything that is even slightly suspicious, please investigate it. And bring back proof so that I can examine it.
+Take this charm. It will protect you from the contaminants that have fouled our water. Please hurry. May the blessings of Eva be with you ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-05.html new file mode 100644 index 0000000000..06d7319830 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-05.html @@ -0,0 +1,4 @@ +Hierarch Asterios:
+What are you doing still here? Go north and follow the river to find the water's source, and find out who is contaminating our water.
+The Mother Tree is dying! Any more delays, and our very lives may be threatened. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-06.html new file mode 100644 index 0000000000..0d2431720d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-06.html @@ -0,0 +1,5 @@ +Hierarch Asterios:
+This ...! The undead you came across at the water source are called Plague Zombies, and are those creatures who were killed by plagues and that have been resurrected with black magic. The fine powder that falls from their decomposing bodies is this Plague Dust ... This is the substance that has been polluting our water. You would have been infected by the plague if you had not taken the Hyacinth Charm ...
+Hmm ... This is definitely the doing of the Dark Elves! They cannot be forgiven! But first, we must revive the dying Mother Tree. To do that, we must purify the polluted waters ...
+I will need more Plague Dust to research a purification spell. Please go back to the water source and obtain this cursed powder for me. I need at least five handfuls. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-07.html new file mode 100644 index 0000000000..f898c2ae7c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-07.html @@ -0,0 +1,3 @@ +Hierarch Asterios:
+Go and bring me five handfuls of Plague Dust from those zombies that are polluting our water source. Go north and follow the river that flows into the village. The Mother Tree is dying! Hurry! May the blessings of Eva be with you ...! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-08.html new file mode 100644 index 0000000000..47f6f5b7a0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/30154-08.html @@ -0,0 +1,5 @@ +Hierarch Asterios:
+Well done. This will be enough to research the purification magic. As soon as the magic is complete, I will travel under the protection of the sentinels to the water source and perform the purification spell, and eradicate any Plague Zombies that may yet remain.
+My young kinsman, you have performed a great deed for our sacred Mother Tree Glade and for the Elven race. I will give you this as a tribute to your brave deed. It may not seem like much, but it will come in handy one day, so keep it well.
+May the splendor of Mithril forever shine on the forest and lake! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/Q00159_ProtectTheWaterSource.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/Q00159_ProtectTheWaterSource.java new file mode 100644 index 0000000000..8ae166962c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00159_ProtectTheWaterSource/Q00159_ProtectTheWaterSource.java @@ -0,0 +1,173 @@ +/* + * 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.Q00159_ProtectTheWaterSource; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Protect the Water Source (159) + * @author xban1x + */ +public class Q00159_ProtectTheWaterSource extends Quest +{ + // NPC + private static final int ASTERIOS = 30154; + // Monster + private static final int PLAGUE_ZOMBIE = 27017; + // Items + private static final int PLAGUE_DUST = 1035; + private static final int HYACINTH_CHARM = 1071; + private static final int HYACINTH_CHARM2 = 1072; + // Misc + private static final int MIN_LVL = 12; + + public Q00159_ProtectTheWaterSource() + { + super(159); + addStartNpc(ASTERIOS); + addTalkId(ASTERIOS); + addKillId(PLAGUE_ZOMBIE); + registerQuestItems(PLAGUE_DUST, HYACINTH_CHARM, HYACINTH_CHARM2); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equals("30154-04.htm")) + { + st.startQuest(); + giveItems(player, HYACINTH_CHARM, 1); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null)) + { + switch (st.getCond()) + { + case 1: + { + if ((getRandom(100) < 40) && hasQuestItems(killer, HYACINTH_CHARM) && !hasQuestItems(killer, PLAGUE_DUST)) + { + giveItems(killer, PLAGUE_DUST, 1); + st.setCond(2, true); + } + break; + } + case 3: + { + long dust = getQuestItemsCount(killer, PLAGUE_DUST); + if ((getRandom(100) < 40) && (dust < 5) && hasQuestItems(killer, HYACINTH_CHARM2)) + { + giveItems(killer, PLAGUE_DUST, 1); + if ((++dust) >= 5) + { + st.setCond(4, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.ELF) ? (player.getLevel() >= MIN_LVL ? "30154-03.htm" : "30154-02.htm") : "30154-01.htm"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + if (hasQuestItems(player, HYACINTH_CHARM) && !hasQuestItems(player, PLAGUE_DUST)) + { + htmltext = "30154-05.html"; + } + break; + } + case 2: + { + if (hasQuestItems(player, HYACINTH_CHARM, PLAGUE_DUST)) + { + takeItems(player, HYACINTH_CHARM, -1); + takeItems(player, PLAGUE_DUST, -1); + giveItems(player, HYACINTH_CHARM2, 1); + st.setCond(3, true); + htmltext = "30154-06.html"; + } + break; + } + case 3: + { + if (hasQuestItems(player, HYACINTH_CHARM2)) + { + htmltext = "30154-07.html"; + } + break; + } + case 4: + { + if (hasQuestItems(player, HYACINTH_CHARM2) && (getQuestItemsCount(player, PLAGUE_DUST) >= 5)) + { + giveAdena(player, 18250, true); + st.exitQuest(false, true); + htmltext = "30154-08.html"; + } + break; + } + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30147-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30147-01.html new file mode 100644 index 0000000000..b7a711b437 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30147-01.html @@ -0,0 +1,5 @@ +Trader Unoren:
+Ah, the Spider Silk that I asked Nerupa to obtain for me. Thank you. This Silvery Spidersilk that the silver spiders spin...very strong and flexible, yet light, which makes it a good material for strongbows.
+Oh, did Nerupa tell you to get something from me? Hah, Nerupa still insists on trading the old-fashioned way -- bartering. She was absolutely livid when I told her that I'd pay money for the spidersilks. So, she asked me to find the Nightshade Leaf for her instead. It's very hard to get, but thankfully Creamees of the magic shop recently managed to obtain a few nightshade leaves, and I have ordered one from him.
+Here, take this receipt and go to Creamees, he'll give you the Nightshade Leaf, which you'll give to Nerupa. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30147-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30147-02.html new file mode 100644 index 0000000000..ef644d634f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30147-02.html @@ -0,0 +1,3 @@ +Trader Unoren:
+Are you still in the village? Please get the "Nightshade Leaf" from Creamees at the magic grocery shop, and deliver it to Nerufa. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30147-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30147-03.html new file mode 100644 index 0000000000..5fa9f3d78b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30147-03.html @@ -0,0 +1,3 @@ +Trader Unoren:
+So, you have come for the Nightshade Leaf. I know it's a burden to you, but would you please deliver it to Nerupa? I don't know the exact reason why, but Nerupa says that she will not come into the village. According to rumors, they say it's because of the magic barriers that the hierarch has set up around the village... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30149-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30149-01.html new file mode 100644 index 0000000000..b0bc42422b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30149-01.html @@ -0,0 +1,4 @@ +Trader Creamees:
+The item that Unoren ordered? Oh, you mean the Nightshade Leaf. I went through a bit of trouble to get this... I stored it in the warehouse because it's such a rare item...
+If you take this ticket and go see Julia at the warehouse, she'll give you the Nightshade Leaf. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30149-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30149-02.html new file mode 100644 index 0000000000..1dad595b72 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30149-02.html @@ -0,0 +1,3 @@ +Trader Creamees:
+Did you get the Nightshade Leaf from Julia? Not yet? Go to the warehouse and show Julia the ticket I gave you. Then she will give you the Nightshade Leaf that I stored there. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30149-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30149-03.html new file mode 100644 index 0000000000..e6d67862fd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30149-03.html @@ -0,0 +1,3 @@ +Trader Creamees:
+I see you've gotten the Nightshade Leaf. Please deliver it the Unoren at the weapon shop. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30152-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30152-01.html new file mode 100644 index 0000000000..d96e716f28 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30152-01.html @@ -0,0 +1,3 @@ +Warehouse Keeper Julia:
+You must be after the herbs that Creamees stored here. I put them in an enclosed glass bottle... here you are. Be careful taking it back. Oh, and please send Creamees my regards. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30152-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30152-02.html new file mode 100644 index 0000000000..0413fe1b3c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30152-02.html @@ -0,0 +1,3 @@ +Warehouse Keeper Julia:
+Did you deliver the Nightshade Leaf to Creamees? Not yet? Creamees will be waiting... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-01.htm new file mode 100644 index 0000000000..7ae237bd41 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-01.htm @@ -0,0 +1,4 @@ +Nerupa:
+If not for the order given by the Elven elders, I would not just stand by and watch a foreigner such as yourself set foot into our sacred woods! The guardians of the forest are watching your every move, so beware! Dare to disobey just one law of the forest and I will kill you without hesitation!
+(Quest for Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-02.htm new file mode 100644 index 0000000000..9c90ca5073 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-02.htm @@ -0,0 +1,4 @@ +Nerupa:
+Recently, one of your kind who lives in the village visited me and asked me to get some silvery Spider Silks for him. My arachne sisters are wandering the forests and gathering the spider webs that the silver spiders have spun. When the collecting is finished, I'd like you to take them to the village. I hate going into the village.
+(Quest for Elven characters level 3 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-03.htm new file mode 100644 index 0000000000..16dae5a750 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-03.htm @@ -0,0 +1,4 @@ +Nerupa:
+Recently, one of your kind who lives in the village visited me and asked me to get some silvery Spider Silks for him. My sisters have combed the forest and collected spider webs spun by silver spiders. But I detest going into the village. I would like it if you could deliver them for me instead. Would you do that for me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-04.htm new file mode 100644 index 0000000000..e864ba8cf1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-04.htm @@ -0,0 +1,5 @@ +Nerupa:
+Go to Unoren, who works in the weapons and armor store, and give him this silvery Spider Silk. And in return, I have asked him to get the Nightshade Leaf for me. Unoren said that the Nightshade Leaf is hard to find and offered "Adena" instead. But I refused.
+A young Elf such as yourself may not know this, but we children of the forest have always lived a life where we obtain what we need from nature, trading what we have obtained for other objects, and giving back to nature as much as we have received. But some time ago the Elves learned a strange habit from the Dwarves. The strange practice of giving metal or slips of paper instead of bartering. But I can't understand "money" or "Adena" at all.
+Eventually, Unoren agreed to find the Nightshade Leaf for me. Get it from him and bring it back to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-05.html new file mode 100644 index 0000000000..0271960cef --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-05.html @@ -0,0 +1,3 @@ +Nerupa:
+You couldn't manage to get the Nightshade Leaf from Unoren? Did he say he didn't have it? Don't tell me that that little Elf creature lied to me? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-06.html new file mode 100644 index 0000000000..9cef6fc618 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/30370-06.html @@ -0,0 +1,3 @@ +Nerupa:
+Child of the forest, have you brought me what Unoren promised? Is this it? Yes, by the color and smell of it, it is nightshade for sure. That little Elf was surely lucky to obtain such a rare item. Here, take this. This is your reward for traveling to the village and back. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/Q00160_NerupasRequest.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/Q00160_NerupasRequest.java new file mode 100644 index 0000000000..a1738c65af --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00160_NerupasRequest/Q00160_NerupasRequest.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.Q00160_NerupasRequest; + +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Nerupa's Request (160) + * @author ivantotov + */ +public final class Q00160_NerupasRequest extends Quest +{ + // NPCs + private static final int NERUPA = 30370; + private static final int UNOREN = 30147; + private static final int CREAMEES = 30149; + private static final int JULIA = 30152; + // Items + private static final int SILVERY_SPIDERSILK = 1026; + private static final int UNOS_RECEIPT = 1027; + private static final int CELS_TICKET = 1028; + private static final int NIGHTSHADE_LEAF = 1029; + // Reward + private static final int LESSER_HEALING_POTION = 1060; + // Misc + private static final int MIN_LEVEL = 3; + + public Q00160_NerupasRequest() + { + super(160); + addStartNpc(NERUPA); + addTalkId(NERUPA, UNOREN, CREAMEES, JULIA); + registerQuestItems(SILVERY_SPIDERSILK, UNOS_RECEIPT, CELS_TICKET, NIGHTSHADE_LEAF); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if ((qs != null) && event.equals("30370-04.htm")) + { + qs.startQuest(); + if (!hasQuestItems(player, SILVERY_SPIDERSILK)) + { + giveItems(player, SILVERY_SPIDERSILK, 1); + } + return event; + } + return null; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + switch (qs.getState()) + { + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + case State.CREATED: + { + if (npc.getId() == NERUPA) + { + if (player.getRace() != Race.ELF) + { + htmltext = "30370-01.htm"; + } + else if (player.getLevel() < MIN_LEVEL) + { + htmltext = "30370-02.htm"; + } + else + { + htmltext = "30370-03.htm"; + } + } + break; + } + case State.STARTED: + { + switch (npc.getId()) + { + case NERUPA: + { + if (hasAtLeastOneQuestItem(player, SILVERY_SPIDERSILK, UNOS_RECEIPT, CELS_TICKET)) + { + htmltext = "30370-05.html"; + } + else if (hasQuestItems(player, NIGHTSHADE_LEAF)) + { + rewardItems(player, LESSER_HEALING_POTION, 5); + addExpAndSp(player, 1000, 0); + qs.exitQuest(false, true); + htmltext = "30370-06.html"; + } + break; + } + case UNOREN: + { + if (hasQuestItems(player, SILVERY_SPIDERSILK)) + { + takeItems(player, SILVERY_SPIDERSILK, -1); + if (!hasQuestItems(player, UNOS_RECEIPT)) + { + giveItems(player, UNOS_RECEIPT, 1); + } + qs.setCond(2, true); + htmltext = "30147-01.html"; + } + else if (hasQuestItems(player, UNOS_RECEIPT)) + { + htmltext = "30147-02.html"; + } + else if (hasQuestItems(player, NIGHTSHADE_LEAF)) + { + htmltext = "30147-03.html"; + } + break; + } + case CREAMEES: + { + if (hasQuestItems(player, UNOS_RECEIPT)) + { + takeItems(player, UNOS_RECEIPT, -1); + if (!hasQuestItems(player, CELS_TICKET)) + { + giveItems(player, CELS_TICKET, 1); + } + qs.setCond(3, true); + htmltext = "30149-01.html"; + } + else if (hasQuestItems(player, CELS_TICKET)) + { + htmltext = "30149-02.html"; + } + else if (hasQuestItems(player, NIGHTSHADE_LEAF)) + { + htmltext = "30149-03.html"; + } + break; + } + case JULIA: + { + if (hasQuestItems(player, CELS_TICKET)) + { + takeItems(player, CELS_TICKET, -1); + if (!hasQuestItems(player, NIGHTSHADE_LEAF)) + { + giveItems(player, NIGHTSHADE_LEAF, 1); + } + qs.setCond(4, true); + htmltext = "30152-01.html"; + + } + else if (hasQuestItems(player, NIGHTSHADE_LEAF)) + { + htmltext = "30152-02.html"; + } + break; + } + } + break; + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-01.htm new file mode 100644 index 0000000000..95da2799bb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-01.htm @@ -0,0 +1,4 @@ +Andellia:
+Stranger from foreign lands, you are welcome as a guest to our town. It is not polite to ask favors of our guests. Please make yourself comfortable and find rest under the shade of the Mother Tree.
+(This quest may only be undertaken by Elf characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-02.htm new file mode 100644 index 0000000000..7f445cbd05 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-02.htm @@ -0,0 +1,6 @@ +Andellia:
+My sisters and I are in charge of taking care of the young Mother Trees in the forest. This task lets us see the changes to the Mother Trees and the Elven woods in all four seasons, and we find it a delightful task. The nectar that gives we children of the forest our nearly eternal lives is made from the Fruit of The Mother Tree.
+Fruit harvests have been gradually decreasing lately, and I think it is because of the spores that spread to our woods from the Sea of Spores on the other side of the mountain. At this rate, we may not be able to make nectar anymore.
+My sister Thalia is the protector of the Mother Tree near Lake Iris, and has said that the Mother Tree there may soon bear fruit. Do you think you could go and get the fruit from her when it is ready?
+(Elf characters with Level 3 and higher may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-03.htm new file mode 100644 index 0000000000..bb07d8846d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-03.htm @@ -0,0 +1,7 @@ +Andellia:
+My sisters and I are in charge of taking care of the young Mother Trees in the forest. It is our joy in life to take care of the Mother Trees in all four seasons while keeping company with the creatures of the beautiful Elven Forest. The nectar that gives us children of the forest our nearly eternal lives is made from the Fruit of The Mother Tree.
+Fruit harvests have been gradually decreasing lately, and I think it is because of the spores that spread to our woods from the Sea of Spores on the other side of the mountain.
+A few days ago, I received a letter from my younger sister, Thalia, that the Mother Tree near Lake Iris had borne fruit. We sisters cannot travel far from our Mother Trees, as we must stay close and maintain our tie to it. My sister has probably finished her harvest by now. Would you be able to travel there and bring back the fruit from her?
+No one but us sisters may harvest the Mother Tree's fruits, and it is a rare opportunity to be able to see a real Mother Tree fruit in person.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-04.htm new file mode 100644 index 0000000000..506b177a88 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-04.htm @@ -0,0 +1,5 @@ +Andellia:
+Thank you so much. First, take this letter. Show it to Thalia and she will know that I sent you. Get the Mother Tree fruit from her and bring it back to me. Please hurry, as the fruit may spoil. We cannot make nectar from spoiled fruit.
+Just follow the southern path from the village to reach Lake Iris. My sister Thalia lives in the small observatory on the eastern lake shore.
+Thank you in advance and please send her my regards. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-05.html new file mode 100644 index 0000000000..2a96a4e669 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-05.html @@ -0,0 +1,4 @@ +Andellia:
+Oh, you haven't left yet. Take my letter to my sister Thalia and bring back the Mother Tree fruit. Follow the southern path from the village to reach Lake Iris. My sister Thalia lives in the small observatory around the lake on the eastern shore.
+Please hurry, as the fruit may spoil. Thank you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-06.html new file mode 100644 index 0000000000..09554133a4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30362-06.html @@ -0,0 +1,4 @@ +Andellia:
+Thank you. You have performed an important deed, not only for my sisters and I, but for all of the children of the forest. I will give you this as a token of our thanks. It will be useful someday.
+Kind traveler, may Eva's smile light your path. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30371-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30371-01.html new file mode 100644 index 0000000000..941f38d403 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30371-01.html @@ -0,0 +1,4 @@ +Thalia:
+My sister Andellia has sent you, I see. This is the Mother Tree fruit I harvested this year. It is a very precious fruit, the only one that has been harvested this year. Please deliver it safely to my sister Andellia in the village.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30371-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30371-02.html new file mode 100644 index 0000000000..0b78429c90 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30371-02.html @@ -0,0 +1,4 @@ +Thalia:
+Haven't you left yet? Please deliver this Mother Tree fruit to Andellia. You need to get there before the fruit spoils ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30371-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30371-03.html new file mode 100644 index 0000000000..183297690b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/30371-03.html @@ -0,0 +1,3 @@ +Thalia:
+Lake Iris has an irregular shape. North of the lake is the Elven Village, while the falls are located to the northwest. To the west is the Underground Elven Fortress. Beyond the Misty Mountains north of the village, there is a place which was formerly a battlefield ... But now, everything there has become deformed due to magical influences, only the poisonous Sea of Spores remains. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/Q00161_FruitOfTheMotherTree.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/Q00161_FruitOfTheMotherTree.java new file mode 100644 index 0000000000..a5ac73cb25 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00161_FruitOfTheMotherTree/Q00161_FruitOfTheMotherTree.java @@ -0,0 +1,130 @@ +/* + * 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.Q00161_FruitOfTheMotherTree; + +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Fruit of the Mother Tree (161) + * @author malyelfik + */ +public class Q00161_FruitOfTheMotherTree extends Quest +{ + // NPCs + private static final int ANDELLIA = 30362; + private static final int THALIA = 30371; + // Items + private static final int ANDELLRIAS_LETTER = 1036; + private static final int MOTHERTREE_FRUIT = 1037; + // Misc + private static final int MIN_LEVEL = 3; + + public Q00161_FruitOfTheMotherTree() + { + super(161); + addStartNpc(ANDELLIA); + addTalkId(ANDELLIA, THALIA); + registerQuestItems(ANDELLRIAS_LETTER, MOTHERTREE_FRUIT); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + + String htmltext = event; + switch (event) + { + case "30362-04.htm": + st.startQuest(); + giveItems(player, ANDELLRIAS_LETTER, 1); + break; + case "30371-03.html": + break; + default: + htmltext = null; + break; + + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st == null) + { + return htmltext; + } + + switch (npc.getId()) + { + case ANDELLIA: + switch (st.getState()) + { + case State.CREATED: + htmltext = (player.getRace() == Race.ELF) ? (player.getLevel() >= MIN_LEVEL) ? "30362-03.htm" : "30362-02.htm" : "30362-01.htm"; + break; + case State.STARTED: + if (st.isCond(1)) + { + htmltext = "30362-05.html"; + } + else if (st.isCond(2) && hasQuestItems(player, MOTHERTREE_FRUIT)) + { + giveAdena(player, 1000, true); + addExpAndSp(player, 1000, 0); + st.exitQuest(false, true); + htmltext = "30362-06.html"; + } + break; + case State.COMPLETED: + htmltext = getAlreadyCompletedMsg(player); + break; + } + break; + case THALIA: + if (st.isStarted()) + { + if (st.isCond(1) && hasQuestItems(player, ANDELLRIAS_LETTER)) + { + takeItems(player, ANDELLRIAS_LETTER, -1); + giveItems(player, MOTHERTREE_FRUIT, 1); + st.setCond(2, true); + htmltext = "30371-01.html"; + } + else if (st.isCond(2) && hasQuestItems(player, MOTHERTREE_FRUIT)) + { + htmltext = "30371-02.html"; + } + } + break; + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-00.htm new file mode 100644 index 0000000000..6f0e6bb32c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-00.htm @@ -0,0 +1,4 @@ +Trader Unoren:
+You should be careful while walking the streets of this town, young Dark Elf. Though no harm will reach you thanks to the truce agreement, remember that my comrades will not look kindly upon you. We have not forgiven the race of dark for the cruel acts committed a thousand years ago to our race.
+(Not available for Dark Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-01.htm new file mode 100644 index 0000000000..ab17e3f5fa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-01.htm @@ -0,0 +1,6 @@ +Trader Unoren:
+Did you know? The most intense battle against the evil Dark Elves took place in the Underground Fortress, which is now full of monsters. I was there when the last battle took place and still remember it vividly. I was so frightened that I thought only of my own safety, and left behind my screaming fellow soldiers as I ran away from the battle.
+The deep sorrow and tears of those who died then acted as a powerful curse, and the corpses resurrected as undead. I should have chosen death like my fellow soldiers ... I am so ashamed that I am still alive ... I am so ashamed that I cannot even look up at the heavens ...
+I wish to break the curse so that my friends may rest in peace in the afterlife. I will still not be forgiven for my sins against them, but I don't think I could ever live without doing something. Along with Magister Esrandell, my long time friend, we are researching methods to counter the curse of the Underground Fortress, but we have yet to find an answer. When we find a method in the future, I would like to ask your help.
+(Quest for all characters, except Dark Elves, level 12 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-02.htm new file mode 100644 index 0000000000..67b6712ef0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-02.htm @@ -0,0 +1,6 @@ +Trader Unoren:
+Did you know? The most intense battle against the evil Dark Elves took place in the Underground Fortress, which is now full of monsters. I was there when the last battle took place and still remember it vividly. I was so frightened that I thought only of my own safety, and left behind my screaming fellow soldiers as I ran away from the battle.
+The deep sorrow and tears of those who died then acted as a powerful curse, and the corpses resurrected as undead. I should have chosen death like my fellow soldiers ... I am so ashamed that I am still alive ... I am so ashamed that I cannot even look up at the heavens ...
+I wished to break the curse so that my friends could peacefully rest in the afterlife, and I have spent a long time with my old friend Magister Esrandell, researching ways to counter the curse of the Underground Fortress. We have only recently discovered a method.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-03.htm new file mode 100644 index 0000000000..430fa4fe61 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-03.htm @@ -0,0 +1,5 @@ +Trader Unoren:
+According to my friend Magister Esrandell, the curse originated from the despair of the dead soldiers. But the curse continued because of the power of black magic that surrounds the Underground Fortress. They say that the residual black magic of those dirty Dark Elves, and the power of the dark spirits that they summoned, seeped into the foundations of the fortress. There are even preposterous rumors that our proud Elven Mystics of light also used forbidden black magic in order to achieve victory over the Dark Elves ...
+Anyhow, strong black magic powers still surround that place. After a long period of research, we have found an answer. If this force is neutralized, we should be able to counter the curse. First, my long time friend Magister Esrandell says that he needs a Complete Skeleton of an undead monster in order to identify the black energy that abounds in the fortress. I would like you to travel to the abandoned Underground Fortress and bring me Bone Fragments and skulls of the undead. If you would help me lessen my burden, I will reward you handsomely.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-04.htm new file mode 100644 index 0000000000..c0bf302720 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-04.htm @@ -0,0 +1,4 @@ +Trader Unoren:
+I give you my deepest gratitude. Go immediately to the Underground Fortress and bring me ten undead Bone Fragments and three Elf Skulls. The skulls must be whole and intact, with no flaws. According to Magister Esrandell, flawless and unscarred Elf Skulls may only be obtained from the monsters called the dark terrors. Dark terror, mist terror and shade horror ... they are all related.
+I wish to present my fellow soldiers, who have suffered long enough, with eternal peace as soon as possible. Please. Hurry. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-05.html new file mode 100644 index 0000000000..21ddea9afa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-05.html @@ -0,0 +1,3 @@ +Trader Unoren:
+I wish to present my fellow soldiers, who have suffered long enough, with eternal peace as soon as possible. Go to the Elven Underground Fortress to hunt the undead monsters, and bring me ten Bone Fragments and three Elf Skulls. Please. Hurry. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-06.html new file mode 100644 index 0000000000..c90b40dcf6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/30147-06.html @@ -0,0 +1,4 @@ +Trader Unoren:
+Thank you. Now all that is left is to figure out the origin of the black magic energy from the fortress. My old friend Magister Esrandell will also thank you, I'm sure. Please pray that we may send the souls of my fallen fellows into the arms of Eva.
+Please, take this. This is in gratitude for your work to bring eternal peace to our brothers who died for the future of our race. May honor and the spirits of the forest guide you on your path. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/Q00162_CurseOfTheUndergroundFortress.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/Q00162_CurseOfTheUndergroundFortress.java new file mode 100644 index 0000000000..a45b30ef86 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00162_CurseOfTheUndergroundFortress/Q00162_CurseOfTheUndergroundFortress.java @@ -0,0 +1,180 @@ +/* + * 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.Q00162_CurseOfTheUndergroundFortress; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Curse of the Underground Fortress (162) + * @author xban1x + */ +public class Q00162_CurseOfTheUndergroundFortress extends Quest +{ + // NPC + private static final int UNOREN = 30147; + // Monsters + private static final Map MONSTERS_SKULLS = new HashMap<>(); + private static final Map MONSTERS_BONES = new HashMap<>(); + static + { + MONSTERS_SKULLS.put(20033, 25); // Shade Horror + MONSTERS_SKULLS.put(20345, 26); // Dark Terror + MONSTERS_SKULLS.put(20371, 23); // Mist Terror + MONSTERS_BONES.put(20463, 25); // Dungeon Skeleton Archer + MONSTERS_BONES.put(20464, 23); // Dungeon Skeleton + MONSTERS_BONES.put(20504, 26); // Dread Soldier + } + // Items + private static final int BONE_SHIELD = 625; + private static final int BONE_FRAGMENT = 1158; + private static final int ELF_SKULL = 1159; + // Misc + private static final int MIN_LVL = 12; + private static final int REQUIRED_COUNT = 13; + + public Q00162_CurseOfTheUndergroundFortress() + { + super(162); + addStartNpc(UNOREN); + addTalkId(UNOREN); + addKillId(MONSTERS_SKULLS.keySet()); + addKillId(MONSTERS_BONES.keySet()); + registerQuestItems(BONE_FRAGMENT, ELF_SKULL); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st != null) + { + switch (event) + { + case "30147-03.htm": + { + htmltext = event; + break; + } + case "30147-04.htm": + { + st.startQuest(); + htmltext = event; + break; + } + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(1)) + { + if (MONSTERS_SKULLS.containsKey(npc.getId())) + { + if (getRandom(100) < MONSTERS_SKULLS.get(npc.getId())) + { + long skulls = getQuestItemsCount(killer, ELF_SKULL); + if (skulls < 3) + { + giveItems(killer, ELF_SKULL, 1); + if (((++skulls) >= 3) && (getQuestItemsCount(killer, BONE_FRAGMENT) >= 10)) + { + st.setCond(2, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + } + else if (MONSTERS_BONES.containsKey(npc.getId())) + { + if (getRandom(100) < MONSTERS_BONES.get(npc.getId())) + { + long bones = getQuestItemsCount(killer, BONE_FRAGMENT); + if (bones < 10) + { + giveItems(killer, BONE_FRAGMENT, 1); + if (((++bones) >= 10) && (getQuestItemsCount(killer, ELF_SKULL) >= 3)) + { + st.setCond(2, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() != Race.DARK_ELF) ? (player.getLevel() >= MIN_LVL) ? "30147-02.htm" : "30147-01.htm" : "30147-00.htm"; + break; + } + case State.STARTED: + { + if ((getQuestItemsCount(player, BONE_FRAGMENT) + getQuestItemsCount(player, ELF_SKULL)) >= REQUIRED_COUNT) + { + giveItems(player, BONE_SHIELD, 1); + addExpAndSp(player, 22652, 1004); + giveAdena(player, 24000, true); + st.exitQuest(false, true); + htmltext = "30147-06.html"; + } + else + { + htmltext = "30147-05.html"; + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-00.htm new file mode 100644 index 0000000000..f1811474b6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-00.htm @@ -0,0 +1,4 @@ +Sentinel Starden:
+If not for the peace talks, I would slay Dark Elves like yourself with a single blow! Child of darkness, beware! We Sentinels will be watching your every move!
+(Not available for Dark Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-01.htm new file mode 100644 index 0000000000..9da7a9273a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-01.htm @@ -0,0 +1,5 @@ +Sentinel Starden:
+I am one of the warriors who fought in the underground dungeon battle during the war with the Dark Elves. My long time friend and companion, Rumiel, was killed in that battle. Not only was he an excellent warrior, but he was also a marvelous poet. Sadly, the beautiful poetry he wrote on the battlefield was lost during the last battle in the underground dungeons.
+One day I plan to go to the abandoned dungeon and recover my friend's legacy. It would be nice if you could help.
+(This quest may be undertaken by any character (other than Dark Elf characters) of level 11 or higher.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-02.htm new file mode 100644 index 0000000000..b27a803148 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-02.htm @@ -0,0 +1,5 @@ +Sentinel Starden:
+According to legend, the Eldarin of the beginning of the world -- or the 'Gods,' as the Humans call them, created various races and gave each race different knowledge. The Orcs received the art of war from Pa'agrio, the Dwarves trade and craftsmanship from Maphr, and we received poetry and songs from Eva. The other races hold our Elven magic and archery in high regard, but I think that the greatest achievement of the brothers of the forest is the culture and music that we have developed over thousands of years.
+I have been trained as a Sentinel, protector of the forest, but I spend my spare time composing and writing poetry. Though my poems are not good enough to recite to others. But it was a different case for my old time friend and colleague, Rumiel Moonshine. He was a warrior with the heart of a poet. The short poems that he recorded in the life and death situations of the battlefield were a great comfort to our sentinel brothers who were weary of fighting. His voice, which sang of the beauty of the forest, the wind and the springs, made us remember what we were fighting for.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-03.html new file mode 100644 index 0000000000..d26ccddb78 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-03.html @@ -0,0 +1,5 @@ +Sentinel Starden:
+During the fiercest battle with the Dark Elves, Rumiel and I, along with a few dozen sentinel brothers, faced the Dark Elves that had surrounded our fortress. The Dark Elves did not engage in direct battle but used hit and run tactics, slowly tiring us out. Rumiel was in the most pain during that time. The battle had deeply scarred his sensitive soul.
+During the siege in the Underground Fortress, Rumiel composed five poems. It was the most beautiful poetry I had ever heard -- poems that turned the fear and despair of that time into verses.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-04.html new file mode 100644 index 0000000000..4841728614 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-04.html @@ -0,0 +1,6 @@ +Sentinel Starden:
+Unfortunately all of those five poems were lost. We were defeated in the siege of the Underground Fortress, and three Sentinels, including myself, barely managed to escape with our lives. But Rumiel was killed in that battle. The sheepskin scrolls where his poems were written were lost, along with him.
+Some time ago I went to the abandoned dungeons to recover my friend's work. But I only managed to find one of Rumiel's five scrolls. I want to go to the dungeons again to look for the rest of the scrolls, but I cannot leave my post due to the recent battles with the Orcs of the Misty Mountains. I desperately want to recover my friend's legacy, and am frustrated because I cannot.
+Do you think you could go to the Underground Fortress and find the scrolls where Rumiel wrote his poems?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-05.htm new file mode 100644 index 0000000000..50a3cd0051 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-05.htm @@ -0,0 +1,4 @@ +Sentinel Starden:
+Thank you. Go to the Elven Underground Fortress and find the remaining four scrolls. I have discovered his second poem already. What you must find are the scrolls containing his first, third, fourth and fifth poems. I think that the foolish baraq orcs that live in the ruins may have mistaken Rumiel's scrolls for magic scrolls and hidden them.
+I implore you! I am certain that the cultural wealth of our race will become richer with the recovery of Rumiel's poems. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-06.html new file mode 100644 index 0000000000..1632fafbdd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-06.html @@ -0,0 +1,3 @@ +Sentinel Starden:
+I see, so you haven't recovered all of Rumiel's poems yet. Travel along the southwestern path of the village and you will reach the Underground Fortress. Please recover Rumiel's four scrolls from the lowly race that lives there. I implore you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-07.html new file mode 100644 index 0000000000..f3a80ea522 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/30220-07.html @@ -0,0 +1,5 @@ +Sentinel Starden:
+So you have recovered all of Rumiel's poems. Now I can read my friend's poetry once again.
+I plan to put these together with the other poems that Rumiel wrote and publish a Poetry Book. Now my Elven brothers may also enjoy Rumiel's fine poetry. This is the only thing I can do for Rumiel, whom I could not save in battle.
+Please accept this. This is for your work in recovering the scrolls. May the blessings of the starlight fall upon you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/Q00163_LegacyOfThePoet.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/Q00163_LegacyOfThePoet.java new file mode 100644 index 0000000000..ec806c2748 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00163_LegacyOfThePoet/Q00163_LegacyOfThePoet.java @@ -0,0 +1,180 @@ +/* + * 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.Q00163_LegacyOfThePoet; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Legacy of the Poet (163) + * @author xban1x + */ +public class Q00163_LegacyOfThePoet extends Quest +{ + // NPC + private static final int STARDEN = 30220; + // Monsters + private static final int[] MONSTERS = + { + 20372, // Baraq Orc Fighter + 20373, // Baraq Orc Warrior Leader + }; + // Items + private static final int RUMIELS_1ST_POEM = 1038; + private static final int RUMIELS_2ND_POEM = 1039; + private static final int RUMIELS_3RD_POEM = 1040; + private static final int RUMIELS_4TH_POEM = 1041; + // Misc + private static final int MIN_LVL = 11; + + public Q00163_LegacyOfThePoet() + { + super(163); + addStartNpc(STARDEN); + addTalkId(STARDEN); + addKillId(MONSTERS); + registerQuestItems(RUMIELS_1ST_POEM, RUMIELS_2ND_POEM, RUMIELS_3RD_POEM, RUMIELS_4TH_POEM); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st != null) + { + switch (event) + { + case "30220-03.html": + case "30220-04.html": + { + htmltext = event; + break; + } + case "30220-05.htm": + { + st.startQuest(); + htmltext = event; + break; + } + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(1)) + { + if ((getRandom(10) == 0) && !hasQuestItems(killer, RUMIELS_1ST_POEM)) + { + giveItems(killer, RUMIELS_1ST_POEM, 1); + if (hasQuestItems(killer, RUMIELS_2ND_POEM, RUMIELS_3RD_POEM, RUMIELS_4TH_POEM)) + { + st.setCond(2, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + if ((getRandom(10) > 7) && !hasQuestItems(killer, RUMIELS_2ND_POEM)) + { + giveItems(killer, RUMIELS_2ND_POEM, 1); + if (hasQuestItems(killer, RUMIELS_1ST_POEM, RUMIELS_3RD_POEM, RUMIELS_4TH_POEM)) + { + st.setCond(2, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + if ((getRandom(10) > 7) && !hasQuestItems(killer, RUMIELS_3RD_POEM)) + { + giveItems(killer, RUMIELS_3RD_POEM, 1); + if (hasQuestItems(killer, RUMIELS_1ST_POEM, RUMIELS_2ND_POEM, RUMIELS_4TH_POEM)) + { + st.setCond(2, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + if ((getRandom(10) > 5) && !hasQuestItems(killer, RUMIELS_4TH_POEM)) + { + giveItems(killer, RUMIELS_4TH_POEM, 1); + if (hasQuestItems(killer, RUMIELS_1ST_POEM, RUMIELS_2ND_POEM, RUMIELS_3RD_POEM)) + { + st.setCond(2, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() != Race.DARK_ELF) ? (player.getLevel() >= MIN_LVL) ? "30220-02.htm" : "30220-01.htm" : "30220-00.htm"; + break; + } + case State.STARTED: + { + if (hasQuestItems(player, RUMIELS_1ST_POEM, RUMIELS_2ND_POEM, RUMIELS_3RD_POEM, RUMIELS_4TH_POEM)) + { + addExpAndSp(player, 21643, 943); + giveAdena(player, 13890, true); + st.exitQuest(false, true); + htmltext = "30220-07.html"; + } + else + { + htmltext = "30220-06.html"; + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-00.htm new file mode 100644 index 0000000000..6d2ab7ea8b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-00.htm @@ -0,0 +1,4 @@ +Trader Creamees:
+Personally, I don't want to work with Dark Elves like you. If I think of what I lost to the race of darkness, I want to draw my sword and cut off your head this very moment. You may think me rude to say so, but that is my honest feeling.
+(Not available for Dark Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-02.htm new file mode 100644 index 0000000000..cdf0149dd0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-02.htm @@ -0,0 +1,5 @@ +Trader Creamees:
+Among the many battles with the Dark Elves, the fiercest battle took place in the Underground Fortress. The last battle between the two races happened there. The blood of the injured from both sides ran red on the floor of the fortress, and crows covered the skies. Suddenly, the gates of hell opened and the Drevanuls, devils from hell, spilled forth. The Dark Elven magicians, driven into a corner, had called upon these bloodthirsty devils.
+Hundreds of Elves and Dark Elves alike were cruelly slain in the Underground Fortress in a bloody, evil feast of insanity. Luckily I survived, but I still suffer from nightmares. One day, I will avenge the death of my comrades who died at the hands of the devils.
+(Quest for all characters level 21 and above, except Dark Elves.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-03.htm new file mode 100644 index 0000000000..fbd79c86a7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-03.htm @@ -0,0 +1,6 @@ +Trader Creamees:
+Among the many battles with the Dark Elves, the fiercest battle took place in the Underground Fortress. The last battle between the two races happened there. The blood of the injured from both sides ran red on the floor of the fortress, and crows covered the skies. Suddenly, the gates of hell opened and the Drevanuls, devils from hell, spilled forth. The Dark Elven Mystics, driven into a corner, had called upon these bloodthirsty devils.
+Hundreds of Elves and Dark Elves alike were cruelly slain in the Underground Fortress in a bloody, evil feast of insanity. Luckily I survived, but I still suffer from nightmares.
+Can't you see that we must avenge the deaths of our brothers who fought to protect our home from the dark race, and died at the cruel hands of those devils? I have already retired and cannot go forth with a sword or staff ... But shouldn't a young, brave youth like yourself honor the sacrifice of yr ancestors and avenge their deaths?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-04.htm new file mode 100644 index 0000000000..cdcafa6cc2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-04.htm @@ -0,0 +1,4 @@ +Trader Creamees:
+The Drevanul devils that came through the gates of hell during the last battle still live in the ruins of the Underground Fortress. Their leader is the Drevanul Kirunak, also called the 'Blood Fiend'. Slay Kirunak and bring back his skull as proof of his death. Our revenge will then be complete.
+May the brilliance of Einhasad's will protect you. Do not hesitate to raise high the sword of revenge! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-05.html new file mode 100644 index 0000000000..127c87820f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-05.html @@ -0,0 +1,3 @@ +Trader Creamees:
+In order to make our revenge complete, you must slay Kirunak, the leader of the Drevanuls. Please hurry and kill this monster. May the brilliance of Einhasad's will protect you. Do not hesitate to raise high the sword of revenge! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-06.html new file mode 100644 index 0000000000..44b2b9710b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/30149-06.html @@ -0,0 +1,5 @@ +Trader Creamees:
+The skull of the Blood Fiend Kirunak... if only this would wash away the sins of the past...
+Thank you. I'll compensate you as promised. And... I must make a confession. It was not the Dark Elven Mystics, but I that called forth Kirunak from hell during the last siege of the fortress. Originally I was an Elemental Summoner commanding the elements of nature, but I was swept up by the madness of battle and used forbidden sorcery to summon the devils. But I could not control the violence of the Drevanuls. They started to slay not only the Dark Elves, but also those of my race. I was seized with fear, and fled without ever looking back.
+You do not need to speak, I know. The sin of murdering hundreds of my kin will never be washed clean ... but with your help I sent the devils that I summoned back to the place they came from, and that is a great consolation to me. What can I say? I cannot expect to avoid your blame. But at least know this, that I have lived for more than three hundred years in painful regret. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/Q00164_BloodFiend.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/Q00164_BloodFiend.java new file mode 100644 index 0000000000..a147a6b09e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00164_BloodFiend/Q00164_BloodFiend.java @@ -0,0 +1,116 @@ +/* + * 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.Q00164_BloodFiend; + +import com.l2jmobius.gameserver.enums.ChatType; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.network.NpcStringId; +import com.l2jmobius.gameserver.network.serverpackets.NpcSay; + +/** + * Blood Fiend (164) + * @author xban1x + */ +public class Q00164_BloodFiend extends Quest +{ + // NPC + private static final int CREAMEES = 30149; + // Monster + private static final int KIRUNAK = 27021; + // Item + private static final int KIRUNAK_SKULL = 1044; + // Misc + private static final int MIN_LVL = 21; + + public Q00164_BloodFiend() + { + super(164); + addStartNpc(CREAMEES); + addTalkId(CREAMEES); + addKillId(KIRUNAK); + registerQuestItems(KIRUNAK_SKULL); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equals("30149-04.htm")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(1)) + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.I_HAVE_FULFILLED_MY_CONTRACT_WITH_TRADER_CREAMEES)); + giveItems(killer, KIRUNAK_SKULL, 1); + st.setCond(2, true); + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() != Race.DARK_ELF) ? player.getLevel() >= MIN_LVL ? "30149-03.htm" : "30149-02.htm" : "30149-00.htm"; + break; + } + case State.STARTED: + { + if (st.isCond(2) && hasQuestItems(player, KIRUNAK_SKULL)) + { + giveAdena(player, 42130, true); + addExpAndSp(player, 35637, 1854); + st.exitQuest(false, true); + htmltext = "30149-06.html"; + } + else + { + htmltext = "30149-05.html"; + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-00.htm new file mode 100644 index 0000000000..34204674b4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-00.htm @@ -0,0 +1,4 @@ +Sentry Nelsya:
+In a few weeks, the mass of darkness dedicated to Shilen and Gran Kain will be held. Shilen's Hunt will be held for ten days before the mass. Unfortunately, those of other races, like yourself, cannot participate in the hunt. But you may come and watch if you'd like.
+(Quest for Dark Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-01.htm new file mode 100644 index 0000000000..8a7a1578cb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-01.htm @@ -0,0 +1,5 @@ +Sentry Nelsya:
+In a few weeks, the mass of darkness dedicated to Shilen and Gran Kain will be held. Shilen's Hunt will be held for ten days before the mass. The purpose of the ceremony is to hunt wild animals in the name of the goddess and offer them at the temple. Of course, the act of offering a sacrifice is only symbolic -- in the past, the hunt's purpose was also to acquire supplies for the winter during our long period of hiding in the darkness.
+During the hunt, all the youth in the village, armed with swords and bows, go out into the woods to hunt. The fervor is impressive -- the Humans who witnessed it called it a "wild hunt". I think you should definitely participate when the hunt begins.
+(Quest for characters level 3 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-02.htm new file mode 100644 index 0000000000..2b887e0618 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-02.htm @@ -0,0 +1,5 @@ +Sentry Nelsya:
+In a few days the mass of darkness dedicated to Shilen and Gran Kain will be held. Shilen's Hunt will be held for ten days before the mass. The purpose of this ceremony is to hunt wild animals in the name of the goddess and offer them as a sacrifice at the sanctuary. Of course, the act of offering a sacrifice is only symbolic -- in the past, the hunt's purpose was also to acquire supplies for the winter during our long period of hiding in the darkness.
+The hunt has already begun! The youth of the village are in the woods and on the hunt, armed with swords and bows. The fervor is impressive -- the Humans who witnessed it called it the "wild hunt." I think you should also hurry and participate in the hunt to honor the mother of the abyss!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-03.htm new file mode 100644 index 0000000000..e3491317b9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-03.htm @@ -0,0 +1,4 @@ +Sentry Nelsya:
+Among the brown keltirs and gray wolves in the forest, there are rare animals that bear a bezoar on their bellies, as a sign of being chosen by Shilen. This bezoar is black and sparkles like a jewel. Known as the Dark Bezoar, this stone is not only beautiful, but possesses strong magical powers.
+The hunter who brings back thirteen Dark Bezoars is given the honorary title of "Great Hunter," and also presented with the reward that the abyssal celebrants have put up. Everyone is given the chance to compete for the prize. Of course, that includes you, too. In the name of Shilen, who takes in all that is living, may your hunt bring good results. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-04.html new file mode 100644 index 0000000000..ff5ee3928d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-04.html @@ -0,0 +1,4 @@ +Sentry Nelsya:
+Have you found all thirteen Dark Bezoars? It won't be easy. Even if it is the hunt season, only one out of five animals will have the bezoar.
+Now! Go out into the forest again and hunt brown keltirs and gray wolves. Shilen's hunt continues even as we speak. Glory to the mother of the abyss. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-05.html new file mode 100644 index 0000000000..7d74fcc3ba --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/30348-05.html @@ -0,0 +1,4 @@ +Sentry Nelsya:
+You've done it! Thirteen Dark Bezoars! Surely Shilen will grant our race prosperity this year. Now take this prize. It is only right that you, the victor of the hunt, should be given this reward.
+May the blessing of Shilen, who takes in all living things, be with you ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/Q00165_ShilensHunt.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/Q00165_ShilensHunt.java new file mode 100644 index 0000000000..3bba998987 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00165_ShilensHunt/Q00165_ShilensHunt.java @@ -0,0 +1,132 @@ +/* + * 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.Q00165_ShilensHunt; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Shilen's Hunt (165) + * @author xban1x + */ +public class Q00165_ShilensHunt extends Quest +{ + // NPC + private static final int NELSYA = 30348; + // Monsters + private static final Map MONSTERS = new HashMap<>(); + static + { + MONSTERS.put(20456, 3); // Ashen Wolf + MONSTERS.put(20529, 1); // Young Brown Keltir + MONSTERS.put(20532, 1); // Brown Keltir + MONSTERS.put(20536, 2); // Elder Brown Keltir + } + // Items + private static final int LESSER_HEALING_POTION = 1060; + private static final int DARK_BEZOAR = 1160; + // Misc + private static final int MIN_LVL = 3; + private static final int REQUIRED_COUNT = 13; + + public Q00165_ShilensHunt() + { + super(165); + addStartNpc(NELSYA); + addTalkId(NELSYA); + addKillId(MONSTERS.keySet()); + registerQuestItems(DARK_BEZOAR); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equalsIgnoreCase("30348-03.htm")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(1) && (getRandom(3) < MONSTERS.get(npc.getId()))) + { + giveItems(killer, DARK_BEZOAR, 1); + if (getQuestItemsCount(killer, DARK_BEZOAR) < REQUIRED_COUNT) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + else + { + st.setCond(2, true); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.DARK_ELF) ? (player.getLevel() >= MIN_LVL) ? "30348-02.htm" : "30348-01.htm" : "30348-00.htm"; + break; + } + case State.STARTED: + { + if (st.isCond(2) && (getQuestItemsCount(player, DARK_BEZOAR) >= REQUIRED_COUNT)) + { + giveItems(player, LESSER_HEALING_POTION, 5); + addExpAndSp(player, 1000, 0); + st.exitQuest(false, true); + htmltext = "30348-05.html"; + } + else + { + htmltext = "30348-04.html"; + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-00.htm new file mode 100644 index 0000000000..7de375ac12 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-00.htm @@ -0,0 +1,4 @@ +Abyssal Celebrant Undrias:
+Soon we will hold the Ceremony of Darkness, our most sacred ritual, in honor of Gran Kain and Shilen. But there is still much to prepare, and several of our under-clerics were recently eaten by Giant Spiders. Still, I cannot ask a guest such as yourself to help...
+(Only Dark Elves may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-01.htm new file mode 100644 index 0000000000..8002fef173 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-01.htm @@ -0,0 +1,4 @@ +Abyssal Celebrant Undrias:
+Soon we will hold the Ceremony of Darkness, our most sacred ritual, in honor of Gran Kain and Shilen. The Human Mystics of the Ivory Tower who witnessed it last year were awed at its magnificence, so we must make it even grander this year. But there is still much to prepare! Come see me again, and perhaps then we will be able to use your help.
+(Only Dark Elves who are at least level 2 may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-02.htm new file mode 100644 index 0000000000..69c6177a0e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-02.htm @@ -0,0 +1,5 @@ +Abyssal Celebrant Undrias:
+Soon we will hold the Ceremony of Darkness, our most sacred ritual, in honor of Gran Kain and Shilen. The Human Mystics of the Ivory Tower who witnessed it last year were awed at its magnificence, so we must make it even grander this year! But there is still much to prepare, and several of our under-clerics were recently eaten by Giant Spiders.
+We require certain items from the village, and I cannot spare anyone to retrieve them. Will you serve your goddess by assisting me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-03.htm new file mode 100644 index 0000000000..80b49c3b22 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-03.htm @@ -0,0 +1,4 @@ +Abyssal Celebrant Undrias:
+Excellent! First, retrieve the Ceremonial Dagger from Trader Iria at the Weapons Shop. Then acquire the Ritual Wine from Warehouse Keeper Dorankus at the Warehouse. Finally, collect Garmiel's Scripture from Master Trudy at the House of Elders.
+Take this letter as proof you are carrying out the Temple's mission. Be quick about it and you will be rewarded for your efforts. But know now that neither I nor Shilen will tolerate mistakes or excuses... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-04.html new file mode 100644 index 0000000000..d55d78f081 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-04.html @@ -0,0 +1,4 @@ +Abyssal Celebrant Undrias:
+Where are the items you were to bring me? Fool! I will tell you again -- for the last time. Bring back the Ceremonial Dagger from Trader Iria at the Weapons Shop, the Ritual Wine from Warehouse Keeper Dorankus at the Warehouse, and Garmiel's Scripture from Master Trudy at the House of Elders.
+Be quick about it or there will be a heavy price to pay, I assure you... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-05.html new file mode 100644 index 0000000000..cac915c6c8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30130-05.html @@ -0,0 +1,3 @@ +Abyssal Celebrant Undrias:
+Ah, you have brought the items we require for the Ceremony of Darkness. Excellent! Truly, the goddess will be pleased with our efforts. Take your reward and continue to serve Shilen faithfully. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30135-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30135-01.html new file mode 100644 index 0000000000..18922491f0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30135-01.html @@ -0,0 +1,3 @@ +Trader Iria:
+Abyssal Celebrant Undrias has sent you, I see. Here is the special dagger crafted by Karrod for use in this year's Ceremony of Darkness. Beautiful, isn't it? Ah, be careful! It may be ceremonial, but its blade is still razor-sharp! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30135-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30135-02.html new file mode 100644 index 0000000000..46d91e4a7a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30135-02.html @@ -0,0 +1,3 @@ +Trader Iria:
+Take this Ceremonial Dagger to Abyssal Celebrant Undrias. It is needed for the Ceremony of Darkness, so guard it with your life. If something were to happen to it, I shudder to think of what Undrias would do to you... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30139-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30139-01.html new file mode 100644 index 0000000000..2e3d1addf8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30139-01.html @@ -0,0 +1,3 @@ +Warehouse Keeper Dorankus:
+Ah! You're here for the item Undrias entrusted to me last year? Here it is! Dreviant Wine, made from the poison of spiders. A rare vintage that even I have never tasted... Be sure to tell Undrias how faithfully I fulfilled my service to him! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30139-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30139-02.html new file mode 100644 index 0000000000..c1425bec4e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30139-02.html @@ -0,0 +1,3 @@ +Warehouse Keeper Dorankus:
+You haven't left for the Temple of Shilen yet? Hurry and deliver the Dreviant Wine I gave you to Abyssal Celebrant Undrias! It is very precious, so take care not to break the bottle! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30143-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30143-01.html new file mode 100644 index 0000000000..8ea02590f2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30143-01.html @@ -0,0 +1,4 @@ +Master Trudy:
+Undrias sent you? Very well; take this scripture to him. It was discovered in an abandoned mine in the Misty Mountains during a battle with those vile Orcs. Surprising, isn't it, to see something written by ancient Humans who also served Gran Kain?
+Undrias plans to recite a portion of this scripture during this year's Ceremony of Darkness, so give it to him as soon as possible. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30143-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30143-02.html new file mode 100644 index 0000000000..ea635e879b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/30143-02.html @@ -0,0 +1,3 @@ +Master Trudy:
+Why haven't you delivered Garmiel's Scripture to Abyssal Celebrant Undrias? Hurry, you fool! If the ceremony is delayed on your account, Undrias will flay the flesh from your bones! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/Q00166_MassOfDarkness.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/Q00166_MassOfDarkness.java new file mode 100644 index 0000000000..0e5dafb9d1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00166_MassOfDarkness/Q00166_MassOfDarkness.java @@ -0,0 +1,147 @@ +/* + * 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.Q00166_MassOfDarkness; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.network.NpcStringId; + +/** + * Mass of Darkness (166) + * @author xban1x + */ +public class Q00166_MassOfDarkness extends Quest +{ + // NPCs + private static final int UNDRIAS = 30130; + private static final int IRIA = 30135; + private static final int DORANKUS = 30139; + private static final int TRUDY = 30143; + // Items + private static final int UNDRIAS_LETTER = 1088; + private static final int CEREMONIAL_DAGGER = 1089; + private static final int DREVIANT_WINE = 1090; + private static final int GARMIELS_SCRIPTURE = 1091; + // Misc + private static final int MIN_LVL = 2; + private static final Map NPCs = new HashMap<>(); + static + { + NPCs.put(IRIA, CEREMONIAL_DAGGER); + NPCs.put(DORANKUS, DREVIANT_WINE); + NPCs.put(TRUDY, GARMIELS_SCRIPTURE); + } + + public Q00166_MassOfDarkness() + { + super(166); + addStartNpc(UNDRIAS); + addTalkId(UNDRIAS, IRIA, DORANKUS, TRUDY); + registerQuestItems(UNDRIAS_LETTER, CEREMONIAL_DAGGER, DREVIANT_WINE, GARMIELS_SCRIPTURE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equals("30130-03.htm")) + { + st.startQuest(); + giveItems(player, UNDRIAS_LETTER, 1); + return event; + } + return null; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (npc.getId()) + { + case UNDRIAS: + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.DARK_ELF) ? (player.getLevel() >= MIN_LVL) ? "30130-02.htm" : "30130-01.htm" : "30130-00.htm"; + break; + } + case State.STARTED: + { + if (st.isCond(2) && hasQuestItems(player, UNDRIAS_LETTER, CEREMONIAL_DAGGER, DREVIANT_WINE, GARMIELS_SCRIPTURE)) + { + showOnScreenMsg(player, NpcStringId.DELIVERY_DUTY_COMPLETE_N_GO_FIND_THE_NEWBIE_HELPER, 2, 5000); // TODO: Newbie Guide + addExpAndSp(player, 5672, 466); + giveAdena(player, 2966, true); + st.exitQuest(false, true); + htmltext = "30130-05.html"; + } + else + { + htmltext = "30130-04.html"; + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + break; + } + case IRIA: + case DORANKUS: + case TRUDY: + { + if (st.isStarted()) + { + final int npcId = npc.getId(); + final int itemId = NPCs.get(npcId); + if (st.isCond(1) && !hasQuestItems(player, itemId)) + { + giveItems(player, itemId, 1); + if (hasQuestItems(player, CEREMONIAL_DAGGER, DREVIANT_WINE, GARMIELS_SCRIPTURE)) + { + st.setCond(2, true); + } + htmltext = npcId + "-01.html"; + } + else + { + htmltext = npcId + "-02.html"; + } + break; + } + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30210-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30210-01.html new file mode 100644 index 0000000000..0d40622e0c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30210-01.html @@ -0,0 +1,5 @@ +Warehouse Keeper Norman:
+Hmm, a letter from my wife? What? But I'm not married ... Ah!
+Yes! A letter from my dear wife ...! Oh, how I've waited for this ...! Thank you!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30210-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30210-02.html new file mode 100644 index 0000000000..34581c89a9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30210-02.html @@ -0,0 +1,5 @@ +Warehouse Keeper Norman:
+Tsk tsk. Did you know already ...? My, how embarrassing ... We did not mean any harm, so please don't be offended. Actually, it's such an urgent letter ... I'm sure Haprock had no choice but to ask you. Usually, he would have delivered it through the guild carriage that travels regularly between the villages ... Please forgive us.
+Now! Please take this. It is a long standing tradition for us Dwarves to always pay when receiving aid from others. So don't refuse, just accept it!
+May the grace of Maphr be with you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30255-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30255-01.html new file mode 100644 index 0000000000..38a7662b8b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30255-01.html @@ -0,0 +1,7 @@ +Warehouse Keeper Haprock:
+Ah, a letter from Carlon. Let me see ...
+Oh ...
+Hmm ...
+The operations profit of the warehouse increased twofold in the first half of the year ... Good ... Very good ... The guild leader will be satisfied ... Carlon is more competent than I expected ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30255-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30255-02.html new file mode 100644 index 0000000000..3ecb82806d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30255-02.html @@ -0,0 +1,6 @@ +Warehouse Keeper Haprock:
+... What the! Are you still here? Dear, dear ...!
+Thank you for bringing Carlon's Letter. By the way, if you plan to travel along the western shores, can I ask you a favor? It is not a difficult task; just delivering a letter to my kinsman in the village of Gludin ...
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30255-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30255-03.html new file mode 100644 index 0000000000..15b03346e9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30255-03.html @@ -0,0 +1,6 @@ +Warehouse Keeper Haprock:
+First, take this! It may not be much, but please accept it as a token of thanks for your work. It is more than enough money to cover your travel expenses from the Dark Elf Village to here.
+And what I want you to do is ... deliver a letter to Warehouse Keeper Norman of the village of Gludin. The letter came in a bundle of mail delivered from the Dwarven Kingdom a few days ago, and normally it would be sent on to Gludin on one of the carriages that will leave for Gludin in a few weeks. But I know how Norman is hungry for news from home, so I am asking you to deliver it now.
+Actually, Warehouse Keeper Norman has a wife at home who waits for her husband's return ... But Norman cannot return, as he has obligations to the guild ... They express their longing for each other by sending the occasional letter. A lonely man who longs for his wife in a faraway land ... doesn't that make your heart ache?
+So please, make sure to deliver this letter to Norman. He will be very thankful. Of course, he will compensate you for your efforts. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30255-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30255-04.html new file mode 100644 index 0000000000..a94582628b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30255-04.html @@ -0,0 +1,5 @@ +Warehouse Keeper Haprock:
+I guess it can't be helped. I must ask someone else, I suppose ...
+Oh, please take this before you go! It's not much, but think of it as a token of thanks for delivering Carlon's Letter. It is more than enough money to cover your travel expenses from the Dark Elf Village to here.
+Goodbye, then. May the protection of the Earth be with you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30255-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30255-05.html new file mode 100644 index 0000000000..d4281f00be --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30255-05.html @@ -0,0 +1,3 @@ +Warehouse Keeper Haprock:
+Hey! You haven't left yet? Hurry to the village of Gludin, for the sake of my friend Norman, who is anxiously awaiting his wife's letter. Go to the warehouse in the village of Gludin and ask for Norman. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30350-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30350-01.htm new file mode 100644 index 0000000000..997140785f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30350-01.htm @@ -0,0 +1,6 @@ +Warehouse Freightman Carlon:
+... It's been almost ten years since I was kidnapped and brought to this village ... Long ago, my entire family was nearly trapped by slave hunters, but they were able to escape when I allowed myself to be caught to buy them time. And so I was brought here. Fortunately, I am good at calculations, so the elders have entrusted me with the management of the warehouse. I have gotten rather used to this situation, I think ...
+But I miss my family, from time to time. However, I can't even dream of running away, because the sentry guards always keep a close watch over me. I write to my family whenever I think of them and ask kind guests to deliver the letters for me.
+And you ... you seem to be a kind and trustworthy type of person. Do you think I could ask you ... to deliver this letter to my family in my home far to the north ...?
+(Quest for characters level 15 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30350-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30350-02.htm new file mode 100644 index 0000000000..5402827769 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30350-02.htm @@ -0,0 +1,6 @@ +Warehouse Freightman Carlon:
+... It's been almost ten years since I was kidnapped and brought to this village ... Long ago, my entire family was chased by slave hunters. I bought some time for my family to escape but was caught, and brought to this place. Fortunately, I am good at calculations, so the elders have entrusted me with the management of the warehouse. I have gotten used to this situation, I think ...
+But I miss my family from time to time. However, I can't even dream of running away, because the sentry guards always keep a close watch over me. I write to my family whenever I think of them and ask kind guests to deliver the letters for me.
+And you ... you seem to be very kind and trustworthy. Maybe you could do me a favor. This letter that I wrote to my family in my homeland far to the north ... could I ask you to deliver it?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30350-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30350-03.htm new file mode 100644 index 0000000000..6cdbd60109 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30350-03.htm @@ -0,0 +1,3 @@ +Warehouse Freightman Carlon:
+Ahh ... As I thought. You are a kindhearted person. This is a letter I wrote to my family. Take it. There is no need for you to travel all the way to the northern lands of the Dwarven Kingdom. Just deliver this to Haprock, a Dwarf in the town of Gludio. He will send my letter along on the coach that goes to my hometown. He will pay you as well. He is a generous person, and will reward you handsomely. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30350-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30350-04.html new file mode 100644 index 0000000000..ba7e28625d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/30350-04.html @@ -0,0 +1,3 @@ +Warehouse Freightman Carlon:
+... Ah, Hello! You haven't left for Gludio yet I see ... Ah! I didn't mean to rush you ... I'm sorry! When you have a chance to travel to the town of Gludio, be sure to stop by the warehouse and give Haprock my letter. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/Q00167_DwarvenKinship.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/Q00167_DwarvenKinship.java new file mode 100644 index 0000000000..429590b673 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00167_DwarvenKinship/Q00167_DwarvenKinship.java @@ -0,0 +1,165 @@ +/* + * 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.Q00167_DwarvenKinship; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Dwarven Kinship (167) + * @author xban1x + */ +public class Q00167_DwarvenKinship extends Quest +{ + // NPCs + private static final int NORMAN = 30210; + private static final int HAPROCK = 30255; + private static final int CARLON = 30350; + // Items + private static final int CARLONS_LETTER = 1076; + private static final int NORMANS_LETTER = 1106; + // Misc + private static final int MIN_LVL = 15; + + public Q00167_DwarvenKinship() + { + super(167); + addStartNpc(CARLON); + addTalkId(CARLON, NORMAN, HAPROCK); + registerQuestItems(CARLONS_LETTER, NORMANS_LETTER); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st != null) + { + switch (event) + { + case "30210-02.html": + { + if (st.isCond(2) && hasQuestItems(player, NORMANS_LETTER)) + { + giveAdena(player, 20000, true); + st.exitQuest(false, true); + htmltext = event; + } + break; + } + case "30255-02.html": + { + htmltext = event; + break; + } + case "30255-03.html": + { + if (st.isCond(1) && hasQuestItems(player, CARLONS_LETTER)) + { + takeItems(player, CARLONS_LETTER, -1); + giveItems(player, NORMANS_LETTER, 1); + giveAdena(player, 2000, true); + st.setCond(2); + htmltext = event; + } + break; + } + case "30255-04.html": + { + if (st.isCond(1) && hasQuestItems(player, CARLONS_LETTER)) + { + giveAdena(player, 15000, true); + st.exitQuest(false, true); + htmltext = event; + } + break; + } + case "30350-03.htm": + { + st.startQuest(); + giveItems(player, CARLONS_LETTER, 1); + htmltext = event; + break; + } + } + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (npc.getId()) + { + case CARLON: + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getLevel() >= MIN_LVL) ? "30350-02.htm" : "30350-01.htm"; + break; + } + case State.STARTED: + { + if (st.isCond(1) && hasQuestItems(player, CARLONS_LETTER)) + { + htmltext = "30350-04.html"; + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + break; + } + case HAPROCK: + { + if (st.isCond(1) && hasQuestItems(player, CARLONS_LETTER)) + { + htmltext = "30255-01.html"; + } + else if (st.isCond(2) && hasQuestItems(player, NORMANS_LETTER)) + { + htmltext = "30255-05.html"; + } + break; + } + case NORMAN: + { + if (st.isCond(2) && hasQuestItems(player, NORMANS_LETTER)) + { + htmltext = "30210-01.html"; + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-00.htm new file mode 100644 index 0000000000..ee44fd79ca --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-00.htm @@ -0,0 +1,4 @@ +Sentry Jenna:
+I am quite busy with the delivery of military goods, but I have no thought of seeking the help of a foreign race such as yourself. Go away. You're bothering my work.
+(Quest for Dark Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-01.htm new file mode 100644 index 0000000000..200c3d0a8b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-01.htm @@ -0,0 +1,6 @@ +Sentry Jenna:
+Have you ever met Tetrarch Kaitar? They say that he has been blessed by the goddess with the power to predict future perils. His prophecy is sometimes ambiguous and hard to understand, but it has never been false. So, everyone listens to the predictions of Kaitar. Sometimes I get chills up my spine as I see him cast his predictions. I can feel the forces reaching out even to me.
+Just a few days ago, he said the Dark Forest may be attacked by a foreign power. Who the invader is and how powerful the enemy may be are still unclear, but we sentry sisters are thoroughly preparing ourselves, as the village may fall under attack.
+As a preventive measure I've ordered new adamantium weapons from Magister Harne, but haven't gotten them yet. I am currently on duty and cannot leave my post, but could I ask you later to fetch the goods for me?
+(Quest for characters level 3 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-02.htm new file mode 100644 index 0000000000..8d8501ccfe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-02.htm @@ -0,0 +1,6 @@ +Sentry Jenna:
+Have you ever met Tetrarch Kaitar? They say that he has been blessed by the goddess with the power to predict future perils. His prophecy is sometimes ambiguous and hard to understand, but it has never been false. So everyone listens to the predictions of Kaitar. Sometimes I get chills up my spine as I see him cast his predictions. I can feel the forces reaching out even to me.
+Just a few days ago, he said the Dark Forest may be attacked by a foreign invader. Who the invader is and how powerful the enemy may be are still unclear, but we sentry sisters are thoroughly preparing ourselves, as the village may fall under attack.
+As a preventive measure I've ordered new adamantite weapons from Master Harant, but haven't gotten them yet. I cannot leave my post because I am on duty, but could you go and see Harant for me and bring back the goods that I have ordered?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-03.htm new file mode 100644 index 0000000000..0bba125dc5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-03.htm @@ -0,0 +1,4 @@ +Sentry Jenna:
+Go to Master Harant and give him this letter. And if he is finished with our weapon orders, please bring them here. I will give you compensation for performing this deed for us.
+To meet Master Harant, go into the village and head to the Sanctum of Shilen, the building where the four Tetrarchs reside. Follow the cave behind me and go to the center of the village square. Then take the stairs on the right. The great building at the top of the stairs is the Sanctum of Shilen. It is a holy place, so purify your mind before you enter. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-04.html new file mode 100644 index 0000000000..269daddd3c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-04.html @@ -0,0 +1,3 @@ +Sentry Jenna:
+Haven't you been able to meet Master Harant yet? He is in the Sanctum of Shilen in the village. It is the building where the four Tetrarchs and many Masters reside. Follow the cave behind me and go to the center of the village square. Then take the stairs on the right. The great building at the top of the stairs is the Sanctum of Shilen. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-05.html new file mode 100644 index 0000000000..0f40a4a808 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-05.html @@ -0,0 +1,5 @@ +Sentry Jenna:
+So Master Harant has not finished his task yet. We need to get that equipment soon ...
+Well, we must first deliver these weapons to my sisters. Give me one sword, to begin with. And deliver the rest to Sentry Roselyn and Sentry Kristin. Bring back the Old Bronze Swords they have been using while you're at it.
+Roselyn is standing guard at the entrance of the village. You can reach her by going through the cave behind me. And Kristin is on duty at the village entrance opposite Roselyn. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-06.html new file mode 100644 index 0000000000..0f919af6f2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-06.html @@ -0,0 +1,5 @@ +Sentry Jenna:
+Well done. I must gather our Old Bronze Swords and send them to Blacksmith Karrod. They will be used to make useful items, such as armor or shields.
+Our motto is to reward even the most minuscule of tasks. Please accept this as payment for your work on behalf of my sisters and me.
+May the blessings of Shilen be with you until we meet again. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-07.html new file mode 100644 index 0000000000..0e1de8d8be --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30349-07.html @@ -0,0 +1,4 @@ +Sentry Jenna:
+I see that you have not delivered the swords to my sisters yet. Please deliver the weapons to Sentries Roselyn and Kristin and bring back the Old Bronze Swords they have been using.
+Roselyn is standing guard at the entrance of the village. You can reach her by going through the cave behind me. And Kristin is on duty at the village entrance opposite Roselyn. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30355-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30355-01.html new file mode 100644 index 0000000000..98c23b0ed7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30355-01.html @@ -0,0 +1,3 @@ +Sentry Roselyn:
+Is this the new sword? Master Harant's skills are the best, as always. This is an excellent weapon for the Sentries, who are responsible for the safety of the village, to use. Compared to this, the Old Bronze Sword seems primitive. Here, take it. It is of no use to me anymore. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30355-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30355-02.html new file mode 100644 index 0000000000..dd5a5f49fc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30355-02.html @@ -0,0 +1,3 @@ +Sentry Roselyn:
+Please give my Old Bronze Sword to Sentry Jenna. And please tell her that I am very satisfied with the new Sentry Blade. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30357-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30357-01.html new file mode 100644 index 0000000000..a55ef9658c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30357-01.html @@ -0,0 +1,3 @@ +Sentry Kristin:
+So this is the new Sentry Blade. A fine sword it is. Compared to this, the Old Bronze Sword is clunky and clumsy. Still, it is a bit sad -- though it may be old, I have grown attached to this sword, but I am sure it will be put to good use by someone else. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30357-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30357-02.html new file mode 100644 index 0000000000..72b443e92b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30357-02.html @@ -0,0 +1,3 @@ +Sentry Kristin:
+Please give my Old Bronze Sword to Sentry Jenna. Outdated weapons are to be sent to Blacksmith Karrod. I guess that my old sword will be melted down and used to make new weapons or armor. It's regrettable, but we cannot waste our resources at a time like this. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30360-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30360-01.html new file mode 100644 index 0000000000..b0bb6cb6d9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30360-01.html @@ -0,0 +1,4 @@ +Master Harant:
+Ah, so Jenna sent you. The new weapons for the sentries have been finished. This is all thanks to Blacksmith Karrod, who has worked day and night to finish them. These are prime swords crafted of adamantite. But I have not finished the task of casting magic on these weapons. Well, it's not anything elaborate, just magic that makes the sword a little bit lighter and the blade a little bit sharper.
+I need more time to finish my task ... But since Jenna seems so anxious, go and deliver these three swords that are finished. And give her regards from Master Harant. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30360-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30360-02.html new file mode 100644 index 0000000000..add0a76176 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/30360-02.html @@ -0,0 +1,3 @@ +Master Harant:
+Weren't you supposed to deliver those adamantite swords to Sentry Jenna? Please hurry, I'm sure the sentries are eagerly waiting to receive them. It would be a disaster if the village were invaded in the time that you are lazing around, right? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/Q00168_DeliverSupplies.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/Q00168_DeliverSupplies.java new file mode 100644 index 0000000000..71f9caa0fd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00168_DeliverSupplies/Q00168_DeliverSupplies.java @@ -0,0 +1,185 @@ +/* + * 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.Q00168_DeliverSupplies; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Deliver Supplies (168) + * @author xban1x + */ +public class Q00168_DeliverSupplies extends Quest +{ + // NPCs + private static final int JENNA = 30349; + private static final int ROSELYN = 30355; + private static final int KRISTIN = 30357; + private static final int HARANT = 30360; + // Items + private static final int JENNAS_LETTER = 1153; + private static final int SENTRY_BLADE1 = 1154; + private static final int SENTRY_BLADE2 = 1155; + private static final int SENTRY_BLADE3 = 1156; + private static final int OLD_BRONZE_SWORD = 1157; + // Misc + private static final int MIN_LVL = 3; + private static final Map SENTRIES = new HashMap<>(); + static + { + SENTRIES.put(KRISTIN, SENTRY_BLADE3); + SENTRIES.put(ROSELYN, SENTRY_BLADE2); + } + + public Q00168_DeliverSupplies() + { + super(168); + addStartNpc(JENNA); + addTalkId(JENNA, ROSELYN, KRISTIN, HARANT); + registerQuestItems(JENNAS_LETTER, SENTRY_BLADE1, SENTRY_BLADE2, SENTRY_BLADE3, OLD_BRONZE_SWORD); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equals("30349-03.htm")) + { + st.startQuest(); + giveItems(player, JENNAS_LETTER, 1); + return event; + } + return null; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (npc.getId()) + { + case JENNA: + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.DARK_ELF) ? (player.getLevel() >= MIN_LVL) ? "30349-02.htm" : "30349-01.htm" : "30349-00.htm"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + if (hasQuestItems(player, JENNAS_LETTER)) + { + htmltext = "30349-04.html"; + } + break; + } + case 2: + { + if (hasQuestItems(player, SENTRY_BLADE1, SENTRY_BLADE2, SENTRY_BLADE3)) + { + takeItems(player, SENTRY_BLADE1, -1); + st.setCond(3, true); + htmltext = "30349-05.html"; + } + break; + } + case 3: + { + if (hasAtLeastOneQuestItem(player, SENTRY_BLADE2, SENTRY_BLADE3)) + { + htmltext = "30349-07.html"; + } + break; + } + case 4: + { + if (getQuestItemsCount(player, OLD_BRONZE_SWORD) >= 2) + { + giveAdena(player, 820, true); + st.exitQuest(false, true); + htmltext = "30349-07.html"; + } + break; + } + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + break; + } + case HARANT: + { + if (st.isCond(1) && hasQuestItems(player, JENNAS_LETTER)) + { + takeItems(player, JENNAS_LETTER, -1); + giveItems(player, SENTRY_BLADE1, 1); + giveItems(player, SENTRY_BLADE2, 1); + giveItems(player, SENTRY_BLADE3, 1); + st.setCond(2, true); + htmltext = "30360-01.html"; + } + else if (st.isCond(2)) + { + htmltext = "30360-02.html"; + } + break; + } + case ROSELYN: + case KRISTIN: + { + if (st.isCond(3) && hasQuestItems(player, SENTRIES.get(npc.getId()))) + { + takeItems(player, SENTRIES.get(npc.getId()), -1); + giveItems(player, OLD_BRONZE_SWORD, 1); + if (getQuestItemsCount(player, OLD_BRONZE_SWORD) >= 2) + { + st.setCond(4, true); + } + htmltext = npc.getId() + "-01.html"; + } + else if (!hasQuestItems(player, SENTRIES.get(npc.getId())) && hasQuestItems(player, OLD_BRONZE_SWORD)) + { + htmltext = npc.getId() + "-02.html"; + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-00.htm new file mode 100644 index 0000000000..f61aaf75d7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-00.htm @@ -0,0 +1,4 @@ +Magister Vlasty:
+I am currently conducting research on the undead, and need someone to fetch some materials for me. But I'm not sure how much a foreign race like yourself would understand about the ingredients used in black magic ... Yes, I think it would be best to ask someone from our race.
+(Quest for Dark Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-01.htm new file mode 100644 index 0000000000..624163b654 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-01.htm @@ -0,0 +1,4 @@ +Magister Vlasty:
+These days, I am most interested in the spirit called the Dark Horror, and I am currently researching this strange undead. But since I don't have any samples from the Dark Horror, my research is mostly on hold. Sometime soon, I may ask you to obtain some Dark Horror bones for me.
+(Only Dark Elf characters above level 15 can take on this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-02.htm new file mode 100644 index 0000000000..22daa74fbb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-02.htm @@ -0,0 +1,5 @@ +Magister Vlasty:
+I am currently studying dark horrors. These dark horrors are different in many ways from normal undead creatures. I think that perhaps dark horrors are monsters created by Shilen from the nightmares of the ancient ones, and are the personification of the most basic horrors ever known. The scythe that a dark horror holds represents death, and the sharp fangs like those found on evil creatures may have been objects of fear for the ancient ones ...
+I plan to conduct more actual tests, to prove my scientific theory. For this, I'm going to need a model. How about it, do you think you can get me a skull of a dark horror? You seem more than capable of handling this request with no difficulties ...?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-03.htm new file mode 100644 index 0000000000..026bfcb299 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-03.htm @@ -0,0 +1,5 @@ +Magister Vlasty:
+To find these dark horrors, you should go to the swamp area southwest of the village.
+But it may be hard to find a perfect, whole skull. In most cases, when a dark horror dies, the power of the black magic that supports its life is scattered, and the bones are shattered. So, it may be difficult to find a Perfect Skull.
+But even broken skulls are helpful to my research, and if you bring me broken skulls along with a Perfect Skull, I will reward you handsomely for your efforts, do not worry. However, I cannot base my studies on Cracked Skulls alone, and so I will not reward you until you bring me a Perfect Skull. If you are ready, you should be on your way now. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-04.html new file mode 100644 index 0000000000..92ec63a74c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-04.html @@ -0,0 +1,4 @@ +Magister Vlasty:
+Haven't you been able to obtain the skulls yet? Well, there's no need to rush.
+I repeat, to find the dark horrors, go to the swamp area that is southwest of the village. Slay the dark horrors and bring the skulls back to me. It doesn't matter if they are cracked. But you must bring me at least one Perfect Skull. If not, I cannot give you any reward. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-05.html new file mode 100644 index 0000000000..fd8e583b22 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-05.html @@ -0,0 +1,3 @@ +Magister Vlasty:
+Hmm ... This is without a doubt the skull of a dark horror. But I cannot perform my spell with Cracked Skulls alone. Bring me an uncracked, whole skull. Then I will pay you for the Perfect Skull, along with any Cracked Skulls you may bring me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-06.html new file mode 100644 index 0000000000..ccf0583f82 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-06.html @@ -0,0 +1,6 @@ +Magister Vlasty:
+Ho, this is the whole, Perfect Skull of a dark horror ... Somehow, it looks similar to Elven skulls ... Hmmm ... interesting ...?
+Wait ...! It can't be ...
+Here, take the payment I have promised you. Now go away. Never speak of this again. You must promise me. Do you understand?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-07.html new file mode 100644 index 0000000000..f6d91b344d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/30145-07.html @@ -0,0 +1,5 @@ +Magister Vlasty:
+You are still young and probably do not know, but actually, fifty years ago a group of Dark Elves rose up in opposition to Tetrarch Thifiell. But one day, they all just disappeared.
+After a long investigation, it was concluded that they had been slain by the Elves of light at that time ... But a few of my comrades and I questioned the results of that investigation ...
+Do not ask any more! You might also be put into danger. I plan to not get myself involved deeply in this matter either. Here, take your reward and forget about this incident. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/Q00169_OffspringOfNightmares.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/Q00169_OffspringOfNightmares.java new file mode 100644 index 0000000000..53a0c99fcb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00169_OffspringOfNightmares/Q00169_OffspringOfNightmares.java @@ -0,0 +1,147 @@ +/* + * 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.Q00169_OffspringOfNightmares; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.network.NpcStringId; + +/** + * Offspring of Nightmares (169) + * @author xban1x + */ +public class Q00169_OffspringOfNightmares extends Quest +{ + // NPC + private static final int VLASTY = 30145; + // Monsters + private static final int LESSER_DARK_HORROR = 20025; + private static final int DARK_HORROR = 20105; + // Items + private static final int BONE_GAITERS = 31; + private static final int CRACKED_SKULL = 1030; + private static final int PERFECT_SKULL = 1031; + // Misc + private static final int MIN_LVL = 15; + + public Q00169_OffspringOfNightmares() + { + super(169); + addStartNpc(VLASTY); + addTalkId(VLASTY); + addKillId(LESSER_DARK_HORROR, DARK_HORROR); + registerQuestItems(CRACKED_SKULL, PERFECT_SKULL); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st != null) + { + switch (event) + { + case "30145-03.htm": + { + st.startQuest(); + htmltext = event; + break; + } + case "30145-07.html": + { + if (st.isCond(2) && hasQuestItems(player, PERFECT_SKULL)) + { + giveItems(player, BONE_GAITERS, 1); + addExpAndSp(player, 17475, 818); + giveAdena(player, 17030 + (10 * getQuestItemsCount(player, CRACKED_SKULL)), true); + st.exitQuest(false, true); + showOnScreenMsg(player, NpcStringId.LAST_DUTY_COMPLETE_N_GO_FIND_THE_NEWBIE_HELPER, 2, 5000); // TODO: Newbie Guide + htmltext = event; + } + break; + } + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isStarted()) + { + if ((getRandom(10) > 7) && !hasQuestItems(killer, PERFECT_SKULL)) + { + giveItems(killer, PERFECT_SKULL, 1); + st.setCond(2, true); + } + else if (getRandom(10) > 4) + { + giveItems(killer, CRACKED_SKULL, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.DARK_ELF) ? (player.getLevel() >= MIN_LVL) ? "30145-02.htm" : "30145-01.htm" : "30145-00.htm"; + break; + } + case State.STARTED: + { + if (hasQuestItems(player, CRACKED_SKULL) && !hasQuestItems(player, PERFECT_SKULL)) + { + htmltext = "30145-05.html"; + } + else if (st.isCond(2) && hasQuestItems(player, PERFECT_SKULL)) + { + htmltext = "30145-06.html"; + } + else if (!hasQuestItems(player, CRACKED_SKULL, PERFECT_SKULL)) + { + htmltext = "30145-04.html"; + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-01.htm new file mode 100644 index 0000000000..b7e8523eba --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-01.htm @@ -0,0 +1,5 @@ +Tetrarch Vellior:
+Have you ever suffered the pain of not being able to sleep? I have lately been plagued every night by bad dreams. Every night a beautiful woman with fair skin white as snow and hair black as ebony comes to my side and places her blood-red lips near my ear, speaking horrendous and unspeakable things with a hissing voice like a snake that makes my insides burn ...
+The strangest thing is, when I wake up, I cannot remember any of her terrifying, chilling stories. I have called upon all of my magic knowledge, but I have yet to find out the identity of the culprit responsible for sending a devil into my dreams. But I have been able to find out the identity of the monster that appears in my nightmare. It is the succubus named Merkenis, who makes her home inside of the abandoned School of Dark Arts. I do not know what her purpose is, but I want to escape from this cursed nightmare as soon as I can. Won't you put an end to this spiteful monster for me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-02.htm new file mode 100644 index 0000000000..c20d13f95a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-02.htm @@ -0,0 +1,5 @@ +Tetrarch Vellior:
+Have you ever suffered the pain of not being able to sleep? I have bad dreams every night these days. Every night a beautiful woman with fair skin white as snow and hair black as ebony comes to my side and places her blood-red lips near my ear, speaking horrendous and unspeakable things with a hissing voice like a snake that makes my insides burn ...
+The strangest thing is, when I wake up, I cannot remember any of the terrifying, chilling stories. This is the work of someone who wishes to send me nightmares and take over my mind, I am sure of it. I am going to use all the power that the great Gran Kain has granted me to find the culprit. As soon as that person's identity is exposed, my punishment will be swift and sure. I hope you can help me then ...
+(Quest for Dark Elven characters level 21 or above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-03.htm new file mode 100644 index 0000000000..f63f857565 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-03.htm @@ -0,0 +1,4 @@ +Tetrarch Vellior:
+Young stranger, do not try to delve too deeply into the affairs of our race. The darkness of the abyss hides terrifying secrets that cannot be handled by those who are not Dark Elves.
+(Quest for Dark Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-04.htm new file mode 100644 index 0000000000..f14b460a25 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-04.htm @@ -0,0 +1,4 @@ +Tetrarch Vellior:
+The deepest place within the ruins of the abandoned School of Dark Arts is where Merkenis, queen of the succubi, resides. Slay her and bring me proof, and I will reward you generously for your work.
+If you do not know the way to the School of Dark Arts, ask Sentry Kayleen. May the power of the great Gran Kain be with you always. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-05.html new file mode 100644 index 0000000000..0b5d1df87f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-05.html @@ -0,0 +1,4 @@ +Tetrarch Vellior:
+Please. Release me from this horrible nightmare which haunts me every night. Find Merkenis as soon as possible and get rid of her. She is hiding in the deepest place within the ruins of the School of Dark Arts.
+If you do not know the way to the School of Dark Arts, ask Sentry Kayleen. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-06.html new file mode 100644 index 0000000000..268ac20f86 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/30305-06.html @@ -0,0 +1,5 @@ +Tetrarch Vellior:
+So you have discovered that Merkenis has cast a nightmare spell on me using this Nightmare Crystal. Well done. Now I can rest peacefully without being haunted by nightmares ... This is all thanks to you! As promised, I will give you your reward.
+While you were gone fighting Merkenis, I found out that the culprit was Icarus, of the house of Hardin. So he dares to challenge me, under the protection of Hardin ...
+Long ago, I won a bet against Icarus and obtained a magic scroll dear to him. But he does not acknowledge defeat and troubles me with such petty nightmare spells in order to get his magic scroll back ... Now that I know the culprit, I will not stay silent ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/Q00170_DangerousSeduction.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/Q00170_DangerousSeduction.java new file mode 100644 index 0000000000..9307ca1eb0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00170_DangerousSeduction/Q00170_DangerousSeduction.java @@ -0,0 +1,121 @@ +/* + * 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.Q00170_DangerousSeduction; + +import com.l2jmobius.gameserver.enums.ChatType; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.network.NpcStringId; +import com.l2jmobius.gameserver.network.serverpackets.NpcSay; + +/** + * Dangerous Seduction (170) + * @author malyelfik + */ +public class Q00170_DangerousSeduction extends Quest +{ + // NPC + private static final int VELLIOR = 30305; + + // Monster + private static final int MERKENIS = 27022; + + // Item + private static final int NIGHTMARE_CRYSTAL = 1046; + + // Misc + private static final int MIN_LEVEL = 21; + + public Q00170_DangerousSeduction() + { + super(170); + addStartNpc(VELLIOR); + addTalkId(VELLIOR); + addKillId(MERKENIS); + + registerQuestItems(NIGHTMARE_CRYSTAL); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + + if (event.equalsIgnoreCase("30305-04.htm")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && st.isCond(1)) + { + st.setCond(2, true); + giveItems(player, NIGHTMARE_CRYSTAL, 1); + npc.broadcastPacket(new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getId(), NpcStringId.SEND_MY_SOUL_TO_LICH_KING_ICARUS)); + } + return super.onKill(npc, player, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + htmltext = (player.getRace() == Race.DARK_ELF) ? (player.getLevel() >= MIN_LEVEL) ? "30305-01.htm" : "30305-02.htm" : "30305-03.htm"; + break; + case State.STARTED: + if (st.isCond(1)) + { + htmltext = "30305-05.html"; + } + else + { + giveAdena(player, 102680, true); + addExpAndSp(player, 38607, 4018); + st.exitQuest(false, true); + htmltext = "30305-06.html"; + } + break; + case State.COMPLETED: + htmltext = getAlreadyCompletedMsg(player); + break; + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30535-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30535-01.html new file mode 100644 index 0000000000..82f6342a53 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30535-01.html @@ -0,0 +1,5 @@ +Elder Filaur:
+Ah, it was you!
+I have recently received reports that dark energies have been felt emanating from the Abandoned Coal Mine. It's because you weakened the force field's power, isn't it?
+The investigators I dispatched found the Succubus Queen there. This monster must be the leader of group which tried to break the force field. You must stop them. Hurry! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30535-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30535-02.html new file mode 100644 index 0000000000..63f02b5504 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30535-02.html @@ -0,0 +1,4 @@ +Elder Filaur:
+Fool! Why are you still here? Are you saying you cannot accomplish even such a simple thing without my help? How will you ever prove your bravery to Champion Raldo?
+Go to the Abandoned Coal Mine and there defeat the monsters trying to break the force field. Hurry! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30535-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30535-03.html new file mode 100644 index 0000000000..78f2b79ee9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30535-03.html @@ -0,0 +1,3 @@ +Elder Filaur:
+I thought anyone Raldo sent would have excellent skills. You, however, are clearly incompetent. If you go there again, you will only die a useless death.Come back only after devoting yourself to improving your abilities! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30535-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30535-04.html new file mode 100644 index 0000000000..95d2c56943 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30535-04.html @@ -0,0 +1,4 @@ +Elder Filaur:
+You there! Champion Raldo is looking for you. He said he wants to give you some sort of "Mark of the Challenger" or somesuch.
+He went to the Abandoned Mine in case the Succubus Queen appears again. You should go there. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-01.html new file mode 100644 index 0000000000..7adb130e3c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-01.html @@ -0,0 +1,4 @@ +Kash:
+You wish to earn the Mark of the Challenger? You are certainly aware of the difficulty of this task... It is not to be taken lightly, especially by an unskilled person like yourself... You must realistically assess your abilities!
+(This quest may only be performed by Warriors, Elven Knights, Palus Knights, Orc Raiders, or Monks of level 35 or higher.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-02.html new file mode 100644 index 0000000000..802192ce2f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-02.html @@ -0,0 +1,4 @@ +Kash:
+You seek the Mark of the Challenger? You must be mistaken. That mark is out of your league.
+(This quest may only be performed by Warriors, Elven Knights, Palus Knights, Orc Raiders, or Monks of level 35 or higher.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-03.htm new file mode 100644 index 0000000000..dd0d359146 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-03.htm @@ -0,0 +1,4 @@ +Kash:
+You wish to earn the Mark of the Challenger? You are certainly aware of the difficulty of this task... I don't have the mark, but I can tell you where it is... if you will you do something for me...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-04.htm new file mode 100644 index 0000000000..28d37a94f1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-04.htm @@ -0,0 +1,4 @@ +Kash:
+Are you familiar with the Neutral Zone between the lands of the Elves and the Dark Elves? Shyslyssys, an ancient medusa, makes her home there. Of course, these stories always include an extraordinary amount of treasure. You must go to her cave and kill everyone there. You may keep all the treasure you find, all I ask is that you bring back any old parchment that is there. Will you accept?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-05.htm new file mode 100644 index 0000000000..b3ba4f2147 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-05.htm @@ -0,0 +1,3 @@ +Kash:
+Your bravery is impressive, my young friend, but you must not go alone. Not that I don't trust your abilities... But this is a medusa that has lived for hundreds of years! She must be guarding something important... It would be best to gather some friends to go with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-06.htm new file mode 100644 index 0000000000..0ef1a635d5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-06.htm @@ -0,0 +1,4 @@ +Kash:
+Ha! You get points for courage, if nothing else! But I wouldn't advise that you hunt there all by yourself. Courage alone won't get you very far against a centuries-old Medusa, youngster! That thing must have learned a few tricks over the years, eh? I think you'd best round up a group of your friends before trying your luck against the stone-looker.
+Here, take this Dimension Diamond and hold on to it. You can trade it to the village gatekeeper for something special that may help you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-07.html new file mode 100644 index 0000000000..92c6201476 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-07.html @@ -0,0 +1,3 @@ +Kash:
+The medusa has feasted on many warriors in its hundreds of years of existence. Not to dismiss your skills lightly, but better warriors than you have ended up as this creature's lunch. By the way, I have learned that it lives in the cave near the waterfalls. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-08.html new file mode 100644 index 0000000000..43d8dc718c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-08.html @@ -0,0 +1,4 @@ +Kash:
+You are true to your word. Ha, only one more to go... Oh, don't pay any attention to me. I am just talking to myself.
+Yes, the Mark of the Challenger. I have entrusted it to Martien, a friend living in the Town of Giran. Take him this Letter of Introduction and he will give you the mark. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-09.html new file mode 100644 index 0000000000..5b8f5f3a88 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-09.html @@ -0,0 +1,3 @@ +Kash:
+Martien is a very influential person in the Town of Giran. It is hard to meet him without a Letter of Introduction! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-10.html new file mode 100644 index 0000000000..206e164c60 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30644-10.html @@ -0,0 +1,3 @@ +Kash:
+What a nice surprise to see that you are still alive! You haven't yet performed the task Martien asked of you? Don't blame me, Martien is the villain here. Ha, I have never told a lie in my entire life! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-01.html new file mode 100644 index 0000000000..13df1dcf83 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-01.html @@ -0,0 +1,4 @@ +Martien:
+Yes, I have the mark, but it is not for sale. I could not risk giving it to someone who is not qualified... Would you mind taking a challenge?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-02.html new file mode 100644 index 0000000000..d54ebdf050 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-02.html @@ -0,0 +1,4 @@ +Martien:
+Let's see then, what would be appropriate...? Ah, yes! There is an evil creature attacking the villagers of Floran in recent days. He has been called 'Gorr'. He lives in a cave near Floran and attacks innocent villagers at random.
+Go and kill this evil creature. "The hero who saved a village"... Doesn't this sound like someone who might carry such a mark? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-03.html new file mode 100644 index 0000000000..0326cfcd7f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-03.html @@ -0,0 +1,4 @@ +Martien:
+Hmmm, it must be more of a challenge for you than I thought it would be. Oh, well, while you're sitting here resting the monster is devouring a mother and her baby...
+If you have any integrity at all you will get off your ass and go kill 'Gorr' now! Remember, he lives in a cave near Floran. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-04.html new file mode 100644 index 0000000000..bf52cfa388 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-04.html @@ -0,0 +1,4 @@ +Martien:
+So, you have killed Gorr? Congratulations! Unfortunately, just now the villagers of Floran were attacked again by another evil creature.
+This time the creature is called 'Baraham'. Perhaps he came to avenge the death of Gorr... Anyway, you should search the other caves near Gorr's shelter... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-05.html new file mode 100644 index 0000000000..00fbf09100 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-05.html @@ -0,0 +1,4 @@ +Martien:
+Please find the evil creature 'Baraham' and kill it! I suggest that you search the other caves nearby where Gorr was found.
+I'll understand if you are not up to this task... After all, you weren't qualified to receive the Mark of Challenger... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-06.html new file mode 100644 index 0000000000..b2a7905be4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-06.html @@ -0,0 +1,5 @@ +Martien:
+This man, Kash... I don't trust him... Who was it that said he was an idiot and that I'd easily be able to push him around? He is smarter than I thought!
+All right, I admit it. I took advantage of you. I don't have the mark of the challenger... So what? You can't do anything.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-07.html new file mode 100644 index 0000000000..ef5171d9bb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-07.html @@ -0,0 +1,4 @@ +Martien:
+Hiccup!...! Duh,duh,...did you meet Raldo? In case huh, huh, he asks about muh, me, tuh, tuh...tell him that you have nuh, nuh, never seen me...! Puh, puh, please...!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-08.html new file mode 100644 index 0000000000..39337a927f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-08.html @@ -0,0 +1,3 @@ +Martien:
+I duh, duh, don't know...! He is always wandering around eh, eh, everywhere...! He is the watcher of the magic field... I think you can find huh, huh, him near the Cave of 'Baraham'... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-09.html new file mode 100644 index 0000000000..019835fb3e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30645-09.html @@ -0,0 +1,4 @@ +Martien:
+Did you kill Baraham? Magnificent! You have fulfilled your task well. About that Mark of the Challenger...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-01.html new file mode 100644 index 0000000000..a7b994398d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-01.html @@ -0,0 +1,4 @@ +Raldo:
+You rascal! Why would you harm the guardians?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-02.html new file mode 100644 index 0000000000..bf0e2b15dd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-02.html @@ -0,0 +1,4 @@ +Raldo:
+What the hell do you mean? I know everything that goes on in the town of Floran! Now confess! Who sent you here?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-03.html new file mode 100644 index 0000000000..13f7bb52ab --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-03.html @@ -0,0 +1,6 @@ +Raldo:
+You fool! You were completely bamboozled by those two devils! They have no right to the Mark of Challenger! I, Raldo, alone possess that right!
+You bear the responsibility for weakening the magic field.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-04.html new file mode 100644 index 0000000000..1237543c5b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-04.html @@ -0,0 +1,4 @@ +Raldo:
+Good! I must examine the other magic fields, meanwhile you should to the Dwarven Village. That is where the two devils most likely have gone.
+Ask Filaur of the Gray Pillar of the Dwarven Village for the location of the magic field. They have probably sent a flock of succubus to drain it. Guard the field and when the evil creatures show up, kill them all! This is probably the last chance! If the magic field is destroyed 'the thing' will revive! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-05.html new file mode 100644 index 0000000000..3e2aa03b62 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-05.html @@ -0,0 +1,3 @@ +Raldo:
+So you would abandon the Mark of the Challenger... Damn you! Your true nature emerges! Naturally you have no intention of going to the Dwarven Village to meet Filaur of the Gray Pillar, or to protect the last seal? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-06.html new file mode 100644 index 0000000000..e3027f11eb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-06.html @@ -0,0 +1,3 @@ +Raldo:
+Why are you still here? You must leave for the Dwarven Village right away! Find the location of the magic field with the help of Elder Philar and then kill all the succubus so that they cannot destroy it! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-07.html new file mode 100644 index 0000000000..4beb4bc559 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30646-07.html @@ -0,0 +1,4 @@ +Champion Raldo:
+That chick is the leader, I think. Don't bother with the small fry, that's my motto! Oh, don't worry about my friends. They're off guarding other places, and honestly they'd dust the floor with you, anyway. But hey, no hard feelings, right? You were a big help in protecting this place, and no one can say that Champion Raldo doesn't know how to repay bravery when he sees it.
+Here, take this! It's a gift for your efforts. In fact, it's the Mark of Challenger, the one you were looking for. Well, enough talk -- I'd best get out there and slay them all before they get away. Excelsior! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30647-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30647-01.html new file mode 100644 index 0000000000..3510f1ee76 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30647-01.html @@ -0,0 +1,4 @@ +Chest of Shyslassys:
+There is a keyhole in the middle of the chest.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30647-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30647-02.html new file mode 100644 index 0000000000..87b6ca696b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30647-02.html @@ -0,0 +1,3 @@ +Chest of Shyslassys:
+The gold is inside the chest. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30647-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30647-03.html new file mode 100644 index 0000000000..07a07f1efa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30647-03.html @@ -0,0 +1,3 @@ +Chest of Shyslassys:
+There are glittering materials inside the box. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30647-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30647-04.html new file mode 100644 index 0000000000..7b9224fdae --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/30647-04.html @@ -0,0 +1,3 @@ +Chest of Shyslassys:
+You cannot open the chest if you do not have the correct key! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/Q00211_TrialOfTheChallenger.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/Q00211_TrialOfTheChallenger.java new file mode 100644 index 0000000000..a0ff141aff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00211_TrialOfTheChallenger/Q00211_TrialOfTheChallenger.java @@ -0,0 +1,444 @@ +/* + * 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.Q00211_TrialOfTheChallenger; + +import com.l2jmobius.gameserver.datatables.SpawnTable; +import com.l2jmobius.gameserver.enums.CategoryType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.variables.PlayerVariables; +import com.l2jmobius.gameserver.network.serverpackets.RadarControl; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Trial of the Challenger (211) + * @author Pandragon + */ +public final class Q00211_TrialOfTheChallenger extends Quest +{ + // NPCs + private static final int FILAUR = 30535; + private static final int KASH = 30644; + private static final int MARTIAN = 30645; + private static final int RALDO = 30646; + private static final int CHEST_OF_SHYSLASSYS = 30647; + private static final int MARKETEER_OF_MAMMON = 31092; + // Items + private static final int LETTER_OF_KASH = 2628; + private static final int WATCHERS_EYE1 = 2629; + private static final int WATCHERS_EYE2 = 2630; + private static final int SCROLL_OF_SHYSLASSYS = 2631; + private static final int BROKEN_KEY = 2632; + // Monsters + private static final int SHYSLASSYS = 27110; + private static final int GORR = 27112; + private static final int BARAHAM = 27113; + private static final int QUEEN_OF_SUCCUBUS = 27114; + // Rewards + private static final int ELVEN_NECKLACE_BEADS = 1904; + private static final int WHITE_TUNIC_PATTERN = 1936; + private static final int IRON_BOOTS_DESIGN = 1940; + private static final int MANTICOR_SKIN_GAITERS_PATTERN = 1943; + private static final int GAUNTLET_OF_REPOSE_PATTERN = 1946; + private static final int MITHRIL_SCALE_GAITERS_MATERIAL = 2918; + private static final int BRIGAMDINE_GAUNTLET_PATTERN = 2927; + private static final int TOME_OF_BLOOD_PAGE = 2030; + private static final int MARK_OF_CHALLENGER = 2627; + private static final ItemHolder DIMENSIONAL_DIAMONDS = new ItemHolder(7562, 61); + // Misc + private static final int MIN_LVL = 35; + + public Q00211_TrialOfTheChallenger() + { + super(211); + addStartNpc(KASH); + addTalkId(FILAUR, KASH, MARTIAN, RALDO, CHEST_OF_SHYSLASSYS, MARKETEER_OF_MAMMON); + addKillId(SHYSLASSYS, GORR, BARAHAM, QUEEN_OF_SUCCUBUS); + registerQuestItems(LETTER_OF_KASH, WATCHERS_EYE1, WATCHERS_EYE2, SCROLL_OF_SHYSLASSYS, BROKEN_KEY); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + String htmltext = null; + if (qs == null) + { + return null; + } + + switch (event) + { + case "30644-04.htm": + { + htmltext = event; + break; + } + case "30645-07.html": + case "30645-08.html": + case "30646-02.html": + case "30646-03.html": + { + if (qs.isStarted()) + { + htmltext = event; + } + break; + } + case "30644-06.htm": + { + if (qs.isCreated()) + { + final PlayerVariables vars = player.getVariables(); + if (vars.getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMONDS); + vars.set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = event; + } + else + { + htmltext = "30644-05.htm"; + } + qs.startQuest(); + } + break; + } + case "30647-02.html": + { + if (qs.isCond(2) && hasQuestItems(player, BROKEN_KEY)) + { + takeItems(player, BROKEN_KEY, -1); + if (getRandom(10) < 2) + { + playSound(player, QuestSound.ITEMSOUND_QUEST_JACKPOT); + final int random = getRandom(100); + if (random > 90) + { + rewardItems(player, MITHRIL_SCALE_GAITERS_MATERIAL, 1); + rewardItems(player, BRIGAMDINE_GAUNTLET_PATTERN, 1); + rewardItems(player, MANTICOR_SKIN_GAITERS_PATTERN, 1); + rewardItems(player, GAUNTLET_OF_REPOSE_PATTERN, 1); + rewardItems(player, IRON_BOOTS_DESIGN, 1); + } + else if (random > 70) + { + rewardItems(player, TOME_OF_BLOOD_PAGE, 1); + rewardItems(player, ELVEN_NECKLACE_BEADS, 1); + } + else if (random > 40) + { + rewardItems(player, WHITE_TUNIC_PATTERN, 1); + } + else + { + rewardItems(player, IRON_BOOTS_DESIGN, 1); + } + htmltext = "30647-03.html"; + } + else + { + giveAdena(player, getRandom(1000) + 1, true); + htmltext = event; + } + } + else + { + htmltext = "30647-04.html"; + } + break; + } + case "30645-02.html": + { + if (qs.isCond(3) && hasQuestItems(player, LETTER_OF_KASH)) + { + qs.setCond(4, true); + htmltext = event; + } + break; + } + case "30646-04.html": + case "30646-05.html": + { + if (qs.isCond(7) && hasQuestItems(player, WATCHERS_EYE2)) + { + takeItems(player, WATCHERS_EYE2, -1); + qs.setCond(8, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance talker) + { + final QuestState qs = getQuestState(talker, true); + String htmltext = getNoQuestMsg(talker); + switch (npc.getId()) + { + case KASH: + { + if (qs.isCreated()) + { + if (!talker.isInCategory(CategoryType.WARRIOR_GROUP)) + { + htmltext = "30644-02.html"; + } + else if (talker.getLevel() < MIN_LVL) + { + htmltext = "30644-01.html"; + } + else + { + htmltext = "30644-03.htm"; + } + } + else if (qs.isStarted()) + { + switch (qs.getCond()) + { + case 1: + { + htmltext = "30644-07.html"; + break; + } + case 2: + { + if (hasQuestItems(talker, SCROLL_OF_SHYSLASSYS)) + { + takeItems(talker, SCROLL_OF_SHYSLASSYS, -1); + giveItems(talker, LETTER_OF_KASH, 1); + qs.setCond(3, true); + htmltext = "30644-08.html"; + } + break; + } + case 3: + { + if (hasQuestItems(talker, LETTER_OF_KASH)) + { + htmltext = "30644-09.html"; + } + break; + } + case 8: + case 9: + case 10: + { + htmltext = "30644-10.html"; + break; + } + } + } + else if (qs.isCompleted()) + { + htmltext = getAlreadyCompletedMsg(talker); + } + break; + } + case MARTIAN: + { + switch (qs.getCond()) + { + case 3: + { + if (hasQuestItems(talker, LETTER_OF_KASH)) + { + htmltext = "30645-01.html"; + } + break; + } + case 4: + { + htmltext = "30645-03.html"; + break; + } + case 5: + { + if (hasQuestItems(talker, WATCHERS_EYE1)) + { + takeItems(talker, WATCHERS_EYE1, -1); + qs.setCond(6, true); + htmltext = "30645-04.html"; + } + break; + } + case 6: + { + htmltext = "30645-05.html"; + break; + } + case 7: + { + htmltext = "30645-06.html"; + break; + } + case 8: + case 9: + { + htmltext = "30645-09.html"; + break; + } + } + break; + } + case CHEST_OF_SHYSLASSYS: + { + if (qs.isStarted()) + { + htmltext = "30647-01.html"; + } + break; + } + case RALDO: + { + switch (qs.getCond()) + { + case 7: + { + if (hasQuestItems(talker, WATCHERS_EYE2)) + { + htmltext = "30646-01.html"; + } + break; + } + case 8: + { + htmltext = "30646-06.html"; + break; + } + case 10: + { + addExpAndSp(talker, 1067606, 69242); + giveAdena(talker, 194556, true); + giveItems(talker, MARK_OF_CHALLENGER, 1); + + // redundant retail check - already rewarded at beginning of quest + final PlayerVariables vars = talker.getVariables(); + if (vars.getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(talker, DIMENSIONAL_DIAMONDS); + vars.set("2ND_CLASS_DIAMOND_REWARD", 1); + } + + talker.sendPacket(new SocialAction(talker.getObjectId(), 3)); + qs.exitQuest(false, true); + htmltext = "30646-07.html"; + break; + } + } + break; + } + case FILAUR: + { + switch (qs.getCond()) + { + case 8: + { + htmltext = "30535-01.html"; + qs.setCond(9, true); + break; + } + case 9: + { + talker.sendPacket(new RadarControl(0, 2, 151589, -174823, -1776)); + htmltext = "30535-02.html"; + break; + } + case 10: + { + htmltext = "30535-03.html"; + break; + } + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs == null) || !Util.checkIfInRange(1500, npc, killer, true)) + { + return super.onKill(npc, killer, isSummon); + } + + switch (npc.getId()) + { + case SHYSLASSYS: + { + if (qs.isCond(1)) + { + if (SpawnTable.getInstance().getSpawns(npc.getId()).size() < 10) + { + addSpawn(CHEST_OF_SHYSLASSYS, npc, false, 200000); + } + giveItems(killer, SCROLL_OF_SHYSLASSYS, 1); + giveItems(killer, BROKEN_KEY, 1); + qs.setCond(2, true); + } + break; + } + case GORR: + { + if (qs.isCond(4)) + { + giveItems(killer, WATCHERS_EYE1, 1); + qs.setCond(5, true); + } + break; + } + case BARAHAM: + { + if (qs.isCond(6)) + { + if (SpawnTable.getInstance().getSpawns(npc.getId()).size() < 10) + { + addSpawn(RALDO, npc, false, 100000); + } + giveItems(killer, WATCHERS_EYE2, 1); + qs.setCond(7, true); + } + break; + } + case QUEEN_OF_SUCCUBUS: + { + if (qs.isCond(9)) + { + if (SpawnTable.getInstance().getSpawns(npc.getId()).size() < 10) + { + addSpawn(RALDO, npc, false, 100000); + } + qs.setCond(10, true); + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-01.html new file mode 100644 index 0000000000..e68258dbd9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-01.html @@ -0,0 +1,4 @@ +Grand Master Hannavalt:
+You fool! You are hardly worthy of the title you bear! Before you think of advancement, you must first improve your skills!
+(This quest may only be undertaken by Knights, Elven Knights, or Palus Knights of level 35 or higher.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-02.html new file mode 100644 index 0000000000..80bb50b25e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-02.html @@ -0,0 +1,4 @@ +Grand Master Hannavalt:
+The calling I refer to may only be answered by a Knight. You should seek another guide.
+(This quest may only be undertaken by Knights, Elven Knights, or Palus Knights of level 35 or higher.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-03.htm new file mode 100644 index 0000000000..dde1fa911e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-03.htm @@ -0,0 +1,4 @@ +Grand Master Hannavalt:
+Do you hold higher ambitions than being a mere Knight? You must examine your motivation for fighting. It may be to protect loved ones, for the glory of the kingdom, for power... But true knights fight for the 'calling' that is given them. The Trial of Duty is the way for you to determine what your calling is.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-04.htm new file mode 100644 index 0000000000..bc62880bcc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-04.htm @@ -0,0 +1,3 @@ +Grand Master Hannavalt:
+First you must find Sir Aaron Tanford. He resides in the Southern Wastelands of Gludio. He shall give you your first test. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-04a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-04a.htm new file mode 100644 index 0000000000..446139c526 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-04a.htm @@ -0,0 +1,4 @@ +Grand Master Hannavalt:
+First, meet with Sir Aron Tanford. You will find him south of the Wasteland. He will assign you your first task.
+Take this Dimension Diamond. You can trade it to the village gatekeeper for something special that may help you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-05.html new file mode 100644 index 0000000000..1825d8269a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30109-05.html @@ -0,0 +1,4 @@ +Grand Master Hannavalt:
+Be welcome. So, now you know your calling? No need to tell me. The actions you saw, heard and felt, those are the very call of the knight and the virtue of chivalry. Learn those lessons well; engrave them on your heart.
+Now I will give you the Mark of Duty. May Einhasad protect you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-01.html new file mode 100644 index 0000000000..1ee93a193f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-01.html @@ -0,0 +1,5 @@ +Priest Dustin:
+Welcome, noble Knight. May the blessings of Einhasad be with you.
+I am troubled by recent violence of the foreign races. We have lost many of our young in fights with them... Just six months ago, a fine, strapping young lad named Leon Athebaldt was killed in battle with the Breka Orcs.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-02.html new file mode 100644 index 0000000000..69e84c789d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-02.html @@ -0,0 +1,4 @@ +Priest Dustin:
+He was a dashing young knight, sworn to serve Einhasad's holy will and protect the innocent. He took his vow in this very temple. He was an honorable and devout young man, nephew of the famous Sir Collin. He was even considered for canonization by the High Priest! We all had high hopes for him, for what he might acheive for the kingdom and for the Goddess of Light... ...but alas, he has been taken from us. Oh well, it was the will of Eisenhad.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-03.html new file mode 100644 index 0000000000..276ae4171f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-03.html @@ -0,0 +1,6 @@ +Priest Dustin:
+Last winter a giant horde of blood-thirsty Breka Orcs swept in from the north and invaded Giran. Those violent thugs looted homes and businesses, and even threatened the castle. They gave the Royal Guards quite a challenge.
+Leon Athebaldt led his men in an attack on the Breka Orc encampment. With remarkable courage, they killed the Breka Orc Overlords one by one. Thanks to this effort the Breka Orcs were driven back into the north part of Giran.
+The final battle to drive them entirely out of Giran was the fiercest yet. The lone survivor of that battle was Leon's servant. He barely escaped with a shield and weapons inscribed with his master's crest. According to him, Athebaldt fought valiantly to the death, slaying Orcs to his left and right. Eventually he was no match for the hundreds of Orcs that continued to attack in waves against him. His remains have not been found. I'm sure the Breka Orcs have taken them for some nefarious purpose. It saddens me deeply that he cannot be given a proper burial.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-04.html new file mode 100644 index 0000000000..aec6fcb1d5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-04.html @@ -0,0 +1,4 @@ +Priest Dustin:
+The Orcs have an appalling custom of carrying around the remains of their enemies as a sort of charm or amulet. They say that the more courageous the enemy, the greater the power... It is said that Athebaldt's remains were cut up into pieces and fashioned into amulets for the Breka Orc Overlords. These creatures are fierce and violent! But I must give Leon a proper burial. Can you retrieve his remains for me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-05.html new file mode 100644 index 0000000000..aa2abd6211 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-05.html @@ -0,0 +1,3 @@ +Priest Dustin:
+Our religious traditions dictate that we can hold a funeral if we have the skull, ribs, and shinbone. Slay the Breka Orc Overlords and bring back Sir Athebaldt's Skull, ribs, and shinbone. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-06.html new file mode 100644 index 0000000000..6f5e634738 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-06.html @@ -0,0 +1,3 @@ +Priest Dustin:
+Please gather Sir Leon Athebaldt's remains. You must recover 3 portions: the skull, ribs, and shinbone. It sickens me to think of precious Leon's body decorating the necks of Orcs! This must not stand! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-07.html new file mode 100644 index 0000000000..1a149d2c79 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-07.html @@ -0,0 +1,3 @@ +Priest Dustin:
+Thank you so very much. Now we may finally hold a proper funeral for Leon Athebaldt. I have cremated part of his remains and put them into this urn. Please deliver it to Leon's uncle, Sir Collin Windawood. He is the Governor of Talking Island. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-08.html new file mode 100644 index 0000000000..c88c688b09 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-08.html @@ -0,0 +1,5 @@ +Priest Dustin:
+Well done! I thank you in the name of the church of Einhasad.
+Sir Athebaldt will at last be at peace in the arms of Einhasad. The peace that we now enjoy would not have been possible without sacrifices such as this. Great things are achieved only at great cost... Sometimes a painful sacrifice must be made for the greater good.
+I have written a letter commending your efforts. Take this to Grand Master Hannavalt. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-09.html new file mode 100644 index 0000000000..3361e5df46 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-09.html @@ -0,0 +1,3 @@ +Priest Dustin:
+Have you delivered Sir Leon Athebaldt's remains to his family? Sir Collin Windawood of Talking Island is expecting you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-10.html new file mode 100644 index 0000000000..1895a04e92 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30116-10.html @@ -0,0 +1,3 @@ +Priest Dustin:
+You have done all that I asked. Do you still have the letter of commendation I gave you? Deliver it to Grand Master Hannavalt in Giran. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30311-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30311-01.html new file mode 100644 index 0000000000..746d676ed7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30311-01.html @@ -0,0 +1,5 @@ +Sir Collin Windawood:
+Could these actually be the bones of Leon? I heard of his glorious death during the battle against Orcs... What a loss... Never did I expect that I would see you like this, my beloved nephew! I regret I wasn't with you at the moment of your death!
+Young Warrior, My family is in your debt. I know it wasn't easy to recover his bones. Thank you so much. Take this letter to Priest Dustin.
+Now I shall prepare for my nephew's funeral... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30311-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30311-02.html new file mode 100644 index 0000000000..991e385612 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30311-02.html @@ -0,0 +1,3 @@ +Sir Collin Windawood:
+Young Warrior, thank you for recovering my nephew's remains and bringing them back to us. My family is in your debt. Now please take the letter that I gave you to Priest Dustin of the Town of Giran. Thank you. May the light of Einhasad guide your path. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30653-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30653-01.html new file mode 100644 index 0000000000..3ae296ba31 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30653-01.html @@ -0,0 +1,6 @@ +Sir Aaron Tanford:
+Dignity is one of the virtues that define a Knight's worth. Dignity takes various forms in different people...
+As we speak there are vicious gangs, who know nothing of dignity, prowling the Wastelands disturbing the residents. These gangs are led by Herod. He was once a prestigious Knight of Gludio.
+During the war against Gracia, Herod was tempted to treason by the enemy's leader. He became an agent of the invaders! Sir Klaus Vasper chased him doggedly and eventually put a spear through his heart. Karol said that 'A Knight who abandons his dignity is as good as dead.' Not wanting to give the traitor the dignity of a funeral, his corpse was left to rot in the Wastelands.
+This made his soul become a cursed devil, and the only way to get rid of him is to free him from the curse with this rusty sword. The skeleton raiders wandering around the Wastelands are his minions. As you destroy the filthy skeleton raiders one by one, you will confront the Spirit of Herod. Kill him with the rusty sword I gave you, and remind him of the noble dignity of a Gludio Knight. If possible, please bring proof of his end. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30653-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30653-02.html new file mode 100644 index 0000000000..4bf04fff19 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30653-02.html @@ -0,0 +1,3 @@ +Sir Aaron Tanford:
+I realize that it is not an easy task. But it is necessary for you to do it in order to acquire brilliance. You must kill the Spirit of Herod with the rusty sword I gave you, and free him from his disgraceful curse. While killing the skeleton raiders wandering around the Wastelands you will confront Herod. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30653-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30653-03.html new file mode 100644 index 0000000000..9c08a045bd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30653-03.html @@ -0,0 +1,4 @@ +Sir Aaron Tanford:
+So the unfortunate knight was not able to recover his honor. Was this tear of return the only thing that remained? What a dreadful curse! So it is his fate to wander the Wastelands forever... He has no one to blame but himself.
+Well done! You have completed the task successfully. But the task does not end with this. Go to the Dark Elf Guild in the Town of Dion and meet Sir Kiel Nighthawk. He will be waiting for you with your second task. I pray to Einhasad that you finish all your tasks successfully and get your "wish". + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30653-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30653-04.html new file mode 100644 index 0000000000..3f5d9bca5f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30653-04.html @@ -0,0 +1,3 @@ +Sir Aaron Tanford:
+You will learn the second part of the trial when you visit Sir Kiel Nighthawk. He is in the Dark Elf Guild of the Town of Dion. I shall pray to Einhasad for the successful completion of your tasks. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-01.html new file mode 100644 index 0000000000..3dc0e22f83 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-01.html @@ -0,0 +1,8 @@ +Sir Kiel Nighthawk:
+Greetings, young Warrior. I am Kiel Nighthawk of the Griffon Knight union. Hannavalt sent word that you were coming.
+One of the virtues that define a Knight's character is a sense of justice. The history of this land of Dion is rife with gross injustice. One of the most heinous was the case of Sir Talianus.
+He was commissioned by the King to write a report about the causes and effects of the peasant's uprising. He was captured by rebels and accused of being a spy. He suffered days of unspeakable torture before death mercifully came. His report was torn up and scattered to the wind.
+His troops tried to collect the pieces of the report and they suffered the same fate as their leader.
+Until this day people claim that they hear the agonized wails of Sir Talianus and his troops, wafting across the execution grounds. I fear that their spirits are wandering the earth, unable to join with Shilen... Would you please seek justice for Sir Talianus?
+Kill the strains and the ghouls to collect the torn pieces of the report. When you gather all the pieces and complete Talianus' Report bring it back to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-02.html new file mode 100644 index 0000000000..1d3b1c3316 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-02.html @@ -0,0 +1,3 @@ +Sir Kiel Nighthawk:
+As I said, you must kill the strains and the ghouls to collect the torn pieces of the report. When you gather all the pieces of Sir Talianus' report, bring it back to me. Got it? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-03.html new file mode 100644 index 0000000000..fb3bef7700 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-03.html @@ -0,0 +1,4 @@ +Sir Kiel Nighthawk:
+Ah, the report that was to be presented to the King... Perhaps now we can release the spirits of Sir Talianus and his comrades from their torment...
+Take this Mirror of Orpic with you and go to the Execution Grounds. There is power dwelling in this mirror which enables you to see the spirits of the dead. You must find and confront the doomed hangman tree. Free the spirits of Sir Talianus and his troops from their prison. Tell the spirit of Sir Talianus that the report for which he and his men gave their lives will be delivered to the King. This should give them peace at last. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-04.html new file mode 100644 index 0000000000..78ff8e18ff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-04.html @@ -0,0 +1,3 @@ +Sir Kiel Nighthawk:
+You have not yet freed Spirit of Sir Talianus. The spirits of these brave soldiers must be put to rest. Go now to the Execution Grounds and destroy the hangman tree to free Sir Talianus from his torment. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-05.html new file mode 100644 index 0000000000..e4315025cf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-05.html @@ -0,0 +1,4 @@ +Sir Kiel Nighthawk:
+Very interesting... It occurs to me that there must be some other reason why the spirits of Talianus and his men cannot rest in peace... I must do more research on this.
+You should now go and find Sir Isael Silvershadow in Hunter's Village to take the next part of the test. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-06.html new file mode 100644 index 0000000000..ff36dd27f9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30654-06.html @@ -0,0 +1,3 @@ +Sir Kiel Nighthawk:
+You have given peace to the tortured souls of Sir Talianus and his men. You have passed this part of the trial admirably. For the next stage, you must seek out Sir Isael Silvershadow in the Hunter's Village. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30655-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30655-01.html new file mode 100644 index 0000000000..f11ed532a9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30655-01.html @@ -0,0 +1,4 @@ +Isael Silvershadow:
+Hello, young knight. May you be blessed by starlight. Welcome to the Hunters Village.
+True to Hannavalt's words, you have the talent to become a great Knight, but you are not quite ready this task. Please continue your training. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30655-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30655-02.html new file mode 100644 index 0000000000..63311e3afb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30655-02.html @@ -0,0 +1,6 @@ +Isael Silvershadow:
+May the blessings of the starlight shine upon you. Hello, young warrior. Welcome to the Hunters Village. True to Hannavalt's words, you seem to have the potential to become a great Knight someday.
+Let's briefly discuss the last virtue of a Knight, loyalty. Loyalty may be towards a lord, towards the teachings of the divine powers, or to a town and its residents whom you've sworn to protect... A good example would be the guards that risked their lives to battle the Leto Lizardmen and protect this village. The loyalty they displayed in sacrificing their lives to protect their homes and loved ones is surely honorable indeed.
+My task for you is to recover the milita's article from the Leto Lizardmen. The families of the fallen guards wish to hold a memorial for them. Considering their sacrifice, should we not at least do this much for them? In order to hold the memorial, we need 20 pieces of the articles. Well then, good luck on your journey.
+Leto Lizardmen can be found on the Plains of the Lizardmen. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30655-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30655-03.html new file mode 100644 index 0000000000..42970e53c0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30655-03.html @@ -0,0 +1,4 @@ +Isael Silvershadow:
+The hour of the memorial service draws near. We must have the personal articles of the guards from the Leto Lizardmen for the ceremony. We need about 20 pieces of the articles. Thank you for your assistance in this matter.
+Leto Lizardmen can be found on the Plains of the Lizardmen. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30655-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30655-04.html new file mode 100644 index 0000000000..a597ca16ae --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30655-04.html @@ -0,0 +1,4 @@ +Isael Silvershadow:
+Well done! The guards' families will be eternally grateful for your services. The representative of the families has asked me to present you with this jewel. It is called the Tear of Loyalty.
+Grand Master Hannavalt has requested that you go to Father Dustin in the Town of Giran. He shall give you your final task. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30655-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30655-05.html new file mode 100644 index 0000000000..7c55baa1c0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30655-05.html @@ -0,0 +1,3 @@ +Isael Silvershadow:
+You must proceed with haste to Father Dustin in the Town of Giran. He is preparing the last trial that you must face. With your admirable skills you should pass this test easily. I wish you luck. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30656-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30656-01.html new file mode 100644 index 0000000000..c69d6d8c21 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/30656-01.html @@ -0,0 +1,4 @@ +Spirit of Sir Talianus:
+The report... Must get to the King! Please... please, could you deliver it to the King of Aden...
+Young Warrior... hear my confession... The depth of my sin is deeper than you can imagine... Until my wrongs are righted, and justice prevails in this land of Dion, I shall not rest in peace... I do not dare to... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/Q00212_TrialOfDuty.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/Q00212_TrialOfDuty.java new file mode 100644 index 0000000000..23d201265a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00212_TrialOfDuty/Q00212_TrialOfDuty.java @@ -0,0 +1,587 @@ +/* + * 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.Q00212_TrialOfDuty; + +import com.l2jmobius.gameserver.enums.CategoryType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.items.L2Weapon; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.variables.PlayerVariables; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Trial of Duty (212) + * @author jurchiks + */ +public final class Q00212_TrialOfDuty extends Quest +{ + // NPCs + private static final int HANNAVALT = 30109; + private static final int DUSTIN = 30116; + private static final int SIR_COLLIN_WINDAWOOD = 30311; + private static final int SIR_ARON_TANFORD = 30653; + private static final int SIR_KIEL_NIGHTHAWK = 30654; + private static final int ISAEL_SILVERSHADOW = 30655; + private static final int SPIRIT_OF_SIR_TALIANUS = 30656; + // Items + private static final int LETTER_OF_DUSTIN = 2634; + private static final int KNIGHTS_TEAR = 2635; + private static final int MIRROR_OF_ORPIC = 2636; + private static final int TEAR_OF_CONFESSION = 2637; + private static final ItemHolder REPORT_PIECE = new ItemHolder(2638, 10); + private static final int TALIANUSS_REPORT = 2639; + private static final int TEAR_OF_LOYALTY = 2640; + private static final ItemHolder MILITAS_ARTICLE = new ItemHolder(2641, 20); + private static final int SAINTS_ASHES_URN = 2641; + private static final int ATHEBALDTS_SKULL = 2643; + private static final int ATHEBALDTS_RIBS = 2644; + private static final int ATHEBALDTS_SHIN = 2645; + private static final int LETTER_OF_WINDAWOOD = 2646; + private static final int OLD_KNIGHTS_SWORD = 3027; + // Monsters + private static final int HANGMAN_TREE = 20144; + private static final int SKELETON_MARAUDER = 20190; + private static final int SKELETON_RAIDER = 20191; + private static final int STRAIN = 20200; + private static final int GHOUL = 20201; + private static final int BREKA_ORC_OVERLORD = 20270; + private static final int LETO_LIZARDMAN = 20577; + private static final int LETO_LIZARDMAN_ARCHER = 20578; + private static final int LETO_LIZARDMAN_SOLDIER = 20579; + private static final int LETO_LIZARDMAN_WARRIOR = 20580; + private static final int LETO_LIZARDMAN_SHAMAN = 20581; + private static final int LETO_LIZARDMAN_OVERLORD = 20582; + private static final int SPIRIT_OF_SIR_HEROD = 27119; + // Rewards + private static final int MARK_OF_DUTY = 2633; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Misc + private static final int MIN_LEVEL = 35; + + public Q00212_TrialOfDuty() + { + super(212); + addStartNpc(HANNAVALT); + addTalkId(HANNAVALT, DUSTIN, SIR_COLLIN_WINDAWOOD, SIR_ARON_TANFORD, SIR_KIEL_NIGHTHAWK, ISAEL_SILVERSHADOW, SPIRIT_OF_SIR_TALIANUS); + addKillId(HANGMAN_TREE, SKELETON_MARAUDER, SKELETON_RAIDER, STRAIN, GHOUL, BREKA_ORC_OVERLORD, LETO_LIZARDMAN, LETO_LIZARDMAN_ARCHER, LETO_LIZARDMAN_SOLDIER, LETO_LIZARDMAN_WARRIOR, LETO_LIZARDMAN_SHAMAN, LETO_LIZARDMAN_OVERLORD, SPIRIT_OF_SIR_HEROD); + registerQuestItems(LETTER_OF_DUSTIN, KNIGHTS_TEAR, MIRROR_OF_ORPIC, TEAR_OF_CONFESSION, REPORT_PIECE.getId(), TALIANUSS_REPORT, TEAR_OF_LOYALTY, MILITAS_ARTICLE.getId(), SAINTS_ASHES_URN, ATHEBALDTS_SKULL, ATHEBALDTS_RIBS, ATHEBALDTS_SHIN, LETTER_OF_WINDAWOOD, OLD_KNIGHTS_SWORD); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + String html = null; + + if (qs == null) + { + return html; + } + + switch (event) + { + case "quest_accept": + { + if (qs.isCreated() && (player.getLevel() >= MIN_LEVEL) && player.isInCategory(CategoryType.KNIGHT_GROUP)) + { + qs.startQuest(); + qs.setMemoState(1); + qs.set("flag", 0); + + if (rewardDimensionalDiamonds(player)) + { + html = "30109-04a.htm"; + } + else + { + html = "30109-04.htm"; + } + } + break; + } + case "30116-02.html": + case "30116-03.html": + case "30116-04.html": + { + if (qs.isMemoState(10) && hasQuestItems(player, TEAR_OF_LOYALTY)) + { + html = event; + } + break; + } + case "30116-05.html": + { + if (qs.isMemoState(10) && hasQuestItems(player, TEAR_OF_LOYALTY)) + { + html = event; + takeItems(player, TEAR_OF_LOYALTY, -1); + qs.setMemoState(11); + qs.setCond(14, true); + } + break; + } + } + return html; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + + if ((qs == null) || !Util.checkIfInRange(1500, killer, npc, true)) + { + return super.onKill(npc, killer, isSummon); + } + + switch (npc.getId()) + { + case SKELETON_MARAUDER: + case SKELETON_RAIDER: + { + if (qs.isMemoState(2)) + { + final int flag = qs.getInt("flag"); + + if (getRandom(100) < (flag * 10)) + { + addSpawn(SPIRIT_OF_SIR_HEROD, npc); + qs.set("flag", 0); + } + else + { + qs.set("flag", flag + 1); + } + } + break; + } + case SPIRIT_OF_SIR_HEROD: + { + if (qs.isMemoState(2)) + { + final L2Weapon weapon = killer.getActiveWeaponItem(); + + if ((weapon != null) && (weapon.getId() == OLD_KNIGHTS_SWORD)) + { + giveItems(killer, KNIGHTS_TEAR, 1); + qs.setMemoState(3); + qs.setCond(3, true); + } + } + break; + } + case STRAIN: + case GHOUL: + { + if (qs.isMemoState(5) && !hasQuestItems(killer, TALIANUSS_REPORT)) + { + if (giveItemRandomly(killer, npc, REPORT_PIECE.getId(), 1, REPORT_PIECE.getCount(), 1, true)) + { + takeItem(killer, REPORT_PIECE); + giveItems(killer, TALIANUSS_REPORT, 1); + qs.setCond(6); + } + } + break; + } + case HANGMAN_TREE: + { + if (qs.isMemoState(6)) + { + final int flag = qs.getInt("flag"); + + if (getRandom(100) < ((flag - 3) * 33)) + { + addSpawn(SPIRIT_OF_SIR_TALIANUS, npc); + qs.set("flag", 0); + qs.setCond(8, true); + } + else + { + qs.set("flag", flag + 1); + } + } + break; + } + case LETO_LIZARDMAN: + case LETO_LIZARDMAN_ARCHER: + case LETO_LIZARDMAN_SOLDIER: + case LETO_LIZARDMAN_WARRIOR: + case LETO_LIZARDMAN_SHAMAN: + case LETO_LIZARDMAN_OVERLORD: + { + if (qs.isMemoState(9) && giveItemRandomly(killer, npc, MILITAS_ARTICLE.getId(), 1, MILITAS_ARTICLE.getCount(), 1, true)) + { + qs.setCond(12); + } + break; + } + case BREKA_ORC_OVERLORD: + { + if (qs.isMemoState(11)) + { + if (!hasQuestItems(killer, ATHEBALDTS_SKULL)) + { + giveItems(killer, ATHEBALDTS_SKULL, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + else if (!hasQuestItems(killer, ATHEBALDTS_RIBS)) + { + giveItems(killer, ATHEBALDTS_RIBS, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + else if (!hasQuestItems(killer, ATHEBALDTS_SHIN)) + { + giveItems(killer, ATHEBALDTS_SHIN, 1); + qs.setCond(15, true); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance talker) + { + final QuestState qs = getQuestState(talker, true); + String html = getNoQuestMsg(talker); + + switch (npc.getId()) + { + case HANNAVALT: + { + if (qs.isCreated()) + { + if (!talker.isInCategory(CategoryType.KNIGHT_GROUP)) + { + html = "30109-02.html"; + } + else if (talker.getLevel() < MIN_LEVEL) + { + html = "30109-01.html"; + } + else + { + html = "30109-03.htm"; + } + } + else if (qs.isStarted()) + { + switch (qs.getMemoState()) + { + case 1: + { + html = "30109-04.html"; + break; + } + case 14: + { + if (hasQuestItems(talker, LETTER_OF_DUSTIN)) + { + html = "30109-05.html"; + takeItems(talker, LETTER_OF_DUSTIN, -1); + addExpAndSp(talker, 762576, 49458); + giveAdena(talker, 138968, true); + giveItems(talker, MARK_OF_DUTY, 1); + qs.exitQuest(false, true); + talker.sendPacket(new SocialAction(talker.getObjectId(), 3)); + rewardDimensionalDiamonds(talker); + } + break; + } + } + } + else + { + html = getAlreadyCompletedMsg(talker); + } + break; + } + case SIR_ARON_TANFORD: + { + switch (qs.getMemoState()) + { + case 1: + { + html = "30653-01.html"; + + if (!hasQuestItems(talker, OLD_KNIGHTS_SWORD)) + { + giveItems(talker, OLD_KNIGHTS_SWORD, 1); + } + + qs.setMemoState(2); + qs.setCond(2, true); + break; + } + case 2: + { + if (hasQuestItems(talker, OLD_KNIGHTS_SWORD)) + { + html = "30653-02.html"; + } + break; + } + case 3: + { + if (hasQuestItems(talker, KNIGHTS_TEAR)) + { + html = "30653-03.html"; + takeItems(talker, -1, KNIGHTS_TEAR, OLD_KNIGHTS_SWORD); + qs.setMemoState(4); + qs.setCond(4, true); + } + break; + } + case 4: + { + html = "30653-04.html"; + break; + } + } + break; + } + case SIR_KIEL_NIGHTHAWK: + { + switch (qs.getMemoState()) + { + case 4: + { + html = "30654-01.html"; + qs.setMemoState(5); + qs.setCond(5, true); + break; + } + case 5: + { + if (!hasQuestItems(talker, TALIANUSS_REPORT)) + { + html = "30654-02.html"; + } + else + { + html = "30654-03.html"; + qs.setMemoState(6); + qs.setCond(7, true); + giveItems(talker, MIRROR_OF_ORPIC, 1); + } + break; + } + case 6: + { + if (hasQuestItems(talker, MIRROR_OF_ORPIC)) + { + html = "30654-04.html"; + } + break; + } + case 7: + { + if (hasQuestItems(talker, TEAR_OF_CONFESSION)) + { + html = "30654-05.html"; + takeItems(talker, TEAR_OF_CONFESSION, -1); + qs.setMemoState(8); + qs.setCond(10, true); + } + break; + } + case 8: + { + html = "30654-06.html"; + break; + } + } + break; + } + case SPIRIT_OF_SIR_TALIANUS: + { + if (qs.isMemoState(6) && hasQuestItems(talker, MIRROR_OF_ORPIC, TALIANUSS_REPORT)) + { + html = "30656-01.html"; + takeItems(talker, -1, MIRROR_OF_ORPIC, TALIANUSS_REPORT); + giveItems(talker, TEAR_OF_CONFESSION, 1); + qs.setMemoState(7); + qs.setCond(9, true); + npc.deleteMe(); + } + break; + } + case ISAEL_SILVERSHADOW: + { + switch (qs.getMemoState()) + { + case 8: + { + if (talker.getLevel() < MIN_LEVEL) + { + html = "30655-01.html"; + } + else + { + html = "30655-02.html"; + qs.setMemoState(9); + qs.setCond(11, true); + } + break; + } + case 9: + { + if (!hasItem(talker, MILITAS_ARTICLE)) + { + html = "30655-03.html"; + } + else + { + html = "30655-04.html"; + giveItems(talker, TEAR_OF_LOYALTY, 1); + takeItem(talker, MILITAS_ARTICLE); + qs.setMemoState(10); + qs.setCond(13, true); + } + break; + } + case 10: + { + if (hasQuestItems(talker, TEAR_OF_LOYALTY)) + { + html = "30655-05.html"; + } + break; + } + } + break; + } + case DUSTIN: + { + switch (qs.getMemoState()) + { + case 10: + { + if (hasQuestItems(talker, TEAR_OF_LOYALTY)) + { + html = "30116-01.html"; + } + break; + } + case 11: + { + if (!hasQuestItems(talker, ATHEBALDTS_SKULL, ATHEBALDTS_RIBS, ATHEBALDTS_SHIN)) + { + html = "30116-06.html"; + } + else + { + html = "30116-07.html"; + takeItems(talker, -1, ATHEBALDTS_SKULL, ATHEBALDTS_RIBS, ATHEBALDTS_SHIN); + giveItems(talker, SAINTS_ASHES_URN, 1); + qs.setMemoState(12); + qs.setCond(16, true); + } + break; + } + case 12: + { + if (hasQuestItems(talker, SAINTS_ASHES_URN)) + { + html = "30116-09.html"; + } + break; + } + case 13: + { + if (hasQuestItems(talker, LETTER_OF_WINDAWOOD)) + { + html = "30116-08.html"; + takeItems(talker, LETTER_OF_WINDAWOOD, -1); + giveItems(talker, LETTER_OF_DUSTIN, 1); + qs.setMemoState(14); + qs.setCond(18, true); + } + break; + } + case 14: + { + if (hasQuestItems(talker, LETTER_OF_DUSTIN)) + { + html = "30116-10.html"; + } + break; + } + } + break; + } + case SIR_COLLIN_WINDAWOOD: + { + switch (qs.getMemoState()) + { + case 12: + { + if (hasQuestItems(talker, SAINTS_ASHES_URN)) + { + html = "30311-01.html"; + takeItems(talker, SAINTS_ASHES_URN, -1); + giveItems(talker, LETTER_OF_WINDAWOOD, 1); + qs.setMemoState(13); + qs.setCond(17, true); + } + break; + } + case 13: + { + if (hasQuestItems(talker, LETTER_OF_WINDAWOOD)) + { + html = "30311-02.html"; + } + break; + } + } + break; + } + } + return html; + } + + private static boolean rewardDimensionalDiamonds(L2PcInstance player) + { + final PlayerVariables vars = player.getVariables(); + + if (vars.getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + if (player.getClassId() == ClassId.KNIGHT) + { + rewardItems(player, DIMENSIONAL_DIAMOND, 45); + } + else + { + rewardItems(player, DIMENSIONAL_DIAMOND, 61); + } + + vars.set("2ND_CLASS_DIAMOND_REWARD", 1); + return true; + } + return false; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-01.html new file mode 100644 index 0000000000..9cf2d360fd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-01.html @@ -0,0 +1,4 @@ +Master Terry:
+Ah, a letter from Master Dufner... Yes, I am he who was once called the 'Hawkeye'. But Hawkeye is no more... You can't possibly expect me to revive Hawkeye now... That is too much. ...Only Master Dufner would ask such a favor... It was he who helped me abandon Hawkeye and settle down in this town...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-02.html new file mode 100644 index 0000000000..4419c25d2e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-02.html @@ -0,0 +1,5 @@ +Master Terry:
+Well... I guess I have no choice. I have been curious about the increase in those mutations... But first you must do me a favor. I will need some time to revive Hawkeye. In the meantime, I need you to do some planning and scout the area.
+We need a rough Map of the monsters' mutations. You must capture one and bring it to me. We will make our next move according to what we find.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-03.html new file mode 100644 index 0000000000..d860db0f11 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-03.html @@ -0,0 +1,3 @@ +Master Terry:
+We'll begin with the one living closest to this town. That would be Neer Ghoul Berserker. At the east Execution Grounds you will find many neer crawlers. Among them you will find Neer Ghoul Berserker. Catch him, take anything you find on him and come back to me right away. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-04.html new file mode 100644 index 0000000000..004e76eba1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-04.html @@ -0,0 +1,4 @@ +Master Terry:
+Why are you still here? You must go to the eastern Execution Grounds and catch the Neer Ghoul Berserker among the flock of Neer Crawlers.
+Search him and bring back to me anything that you find. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-05.html new file mode 100644 index 0000000000..62e3e55e05 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-05.html @@ -0,0 +1,5 @@ +Master Terry:
+Any good news? Oh, what is this? A bezoar?! Hmm, no wonder Dufner asked me to investigate. Hmm...
+Wait a moment... If this is how it turns out, I'll just have to push ahead with the plan... However, this plan might be a bit tough for you. Will that be okay?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-06.html new file mode 100644 index 0000000000..a0c65fe1a0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-06.html @@ -0,0 +1,7 @@ +Master Terry:
+You must heed my every word. We each have our own tasks to do. While I am away you must investigate the mutations one at a time.
+They are Ol Mahum Captain, Turek Orc Warlord, Ant Captain, and Turak Bugbear Warrior... That's it. I expect that they each have a bezoar planted in their bodies.
+The problem is that these creatures are all very aggressive, even more so than normal.
+But I think you can handle it... Do you need any more information?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-07.html new file mode 100644 index 0000000000..9df889614d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-07.html @@ -0,0 +1,9 @@ +Master Terry:
+Since time is of the essence we must attack them systematically. Now listen carefully!
+The Ol Mahum Captain can be found near the Fortress of Resistance in the northeast.
+Next you must go to Gludio, which is quite a distance away. I guess it is becoming obvious that these mutations happened simultaneously in several places around the world.
+You can find the Turek Orc Warlord at the Orc Barracks in the northern part of Gludio.
+You can find the Ant Captain in the Wastelands of Gludio. Try the underground Ant's Nest. You should not attempt this one alone...
+And last, the most dangerous of them all... Have you ever seen the so-called Turak bugbears wandering about Gorgon Flower Garden in Giran? Turak bugbear Warriors are their leaders.
+Now then, let's get busy. You start your task and I shall follow you soon thereafter. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-08.html new file mode 100644 index 0000000000..df4262737e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-08.html @@ -0,0 +1,5 @@ +Master Terry:
+I hope your investigation is going well? Time is short so you must hurry. Do you remember your task? You must hunt Ol Mahum Captains, Turek Orc Warlords, Ant Captain, and Turak Bugbear Warriors... Catch them and collect the bezoars from their bodies.
+I am not sure if it is due to the bezoars, but they are behaving very aggressively. Please, be careful.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-09.html new file mode 100644 index 0000000000..35d513f913 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-09.html @@ -0,0 +1,5 @@ +Master Terry:
+All right, I see that you were successful! Now we can start to work on the investigation. I have been to Giran Castle where I acquired the secret documents necessary for solving this case...
+Now, I must do more research on these documents. Can I ask you one more favor?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-10.html new file mode 100644 index 0000000000..e4561dd202 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-10.html @@ -0,0 +1,6 @@ +Master Terry:
+Take this letter and the box containing the bezoars to Viktor of the Hunter's Village.
+He is an expert in such matters. Back when I was called Hawkeye, he was known as the clairvoyant. He is quite well known for being an excellent source of information, even to this day. I am sure he'll be able to find something out from the bezoars. He owns a shop at the moment... A very unlikely occupation for him...
+Anyway, take this letter to him. Tell him that Hawkeye sent you, he will talk to you. If he feigns a lack of understanding, say 'Altebar Karryos' loudly. That is my real name. By the way, he never does anything for free... He will probably ask you for something. In that case, use your own judgement.
+I am sure you shall do your best! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-11.html new file mode 100644 index 0000000000..af2ffdb9e1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-11.html @@ -0,0 +1,3 @@ +Master Terry:
+Take the letter and box to Viktor in the Hunter's Village. I already told you my real name, right? Do you remember it? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-12.html new file mode 100644 index 0000000000..be56935211 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-12.html @@ -0,0 +1,5 @@ +Master Terry:
+What did you say to Viktor? He thinks you are a liar!
+Did you forget my real name, by any chance? I shall repeat it once more! My true name is Altebar Karryos. I took my current moniker 'Terry' from the second letters in my real name.
+Anyway, I shall write you another letter. Go and meet Viktor again. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-13.html new file mode 100644 index 0000000000..aa9d7155e9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-13.html @@ -0,0 +1,3 @@ +Master Terry:
+Hurry! You must go to Viktor from the Hunter's Village! Don't forget to take special care of the box containing the bezoars. Viktor is very skilled and knowledgeable and will be of great help in the investigation of the bezoars. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-14.html new file mode 100644 index 0000000000..64b5d3e181 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-14.html @@ -0,0 +1,3 @@ +Master Terry:
+We must hurry and discover the meaning of the bezoars! Now that we have Viktor's trust we should get to the bottom of this! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-15.html new file mode 100644 index 0000000000..dc04408c43 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-15.html @@ -0,0 +1,5 @@ +Master Terry:
+So, this is the report on the findings about the bezoar! Good job. I mean it! It must not have been easy to get information from that hard-to-please Viktor. How is he doing? Dufner, me and Viktor used to hang around together way back when. That brings back memories... Are his explanations still so hard to understand? Anyway, I shall have to look into the results.
+Let me see... My bad premonitions are always right in these cases. I had hoped that this time I was wrong... Damn it! This can't be!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-16.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-16.html new file mode 100644 index 0000000000..1457fa4bac --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-16.html @@ -0,0 +1,7 @@ +Master Terry:
+I am sure you are aware that creatures who have an Abyss Spirit Ore inside them have exceptional intelligence... The matter would not be so dangerous if that's all there was to it, but these creatures are extremely hostile towards Elves, Dark Elves, Orcs, Dwarves and Humans. Do you understand why those creatures have become so aggressive?... They are very clever so they will surely influence their fellow creatures... Imagine the carnage if they incite the others!
+I am convinced that this has something to do with the Goddess Shilen. The dark powers of Shilen are the origin of the Dark Bezoars... It is said the Goddess of Darkness and the original Goddess of Water traveled east, where she created many different magical creatures. It is quite alarming how many years have passed and only now are Shilen's powers are being detected in the monsters.
+The most frightening part we have learned from this experiment is that the Dark Bezoar is contagious. Moreover, according to Marina's experiment, these Bezoars are not natural, but manufactured.
+The road ahead will be rough. We will both be tested to our limits. Certainly you wouldn't abandon the investigation at this point?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-17.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-17.html new file mode 100644 index 0000000000..542642275d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-17.html @@ -0,0 +1,3 @@ +Master Terry:
+The next part of the task holds more danger than you have ever seen. Regardless of the urgency I cannot pressure you to make such a momentous decision. I don't think you will survive... Why don't you go and get more training? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-18.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-18.html new file mode 100644 index 0000000000..4f35f9228d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-18.html @@ -0,0 +1,6 @@ +Master Terry:
+I think you are ready for the next task. Being contaminated by a Dark Bezoar is somewhat worrisome, but according to Marina's research, the contamination is limited to only a few creatures. You must destroy those hosts.
+Marsh Stakato Drones, Breka Orc Overlords, Ant Warrior Captains, and Leto Lizardman Warriors are the monsters you must hunt. Of course, these creatures all have aggressive tendencies. Extract the Dark Bezoars from their bodies.
+Do you know where they are??
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-19.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-19.html new file mode 100644 index 0000000000..706c0443c5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-19.html @@ -0,0 +1,8 @@ +Trainer Terry:
+Marsh Stakato Drones can be found in the Cruma Marshlands north of Dion. It is a dangerous monster, so take care. You must try to avoid attacking them from a close distance when they are in groups. You must lure them away before fighting.
+You have already seen many Breka Orc Overlords, yes? They are located in Breka's Stronghold. The same goes for them. When they are in a group, do not attack them.
+The Ant Warrior Captains can be found below the Wastelands in the Ant's Nest. I presume you have already seen them when you were hunting the Ant Captain? He is very fierce.
+The Leto Lizardmen Warrior is the one you must be most wary of. He is the most dangerous of all, and may be too strong for you even now.
+We don't have much time. I must ask you to take the risk, and do your best, though it is a tough task. If you have friends that you can trust, it would be good to take them with you. Leto Lizardmen Warriors can be found on the Plains of the Lizardmen.
+Good luck to you, then! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-20.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-20.html new file mode 100644 index 0000000000..d3b4cca126 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-20.html @@ -0,0 +1,3 @@ +Master Terry:
+I appreciate your enthusiasm, but you are not ready yet. Come back when you have completed more training. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-21.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-21.html new file mode 100644 index 0000000000..0203a1efc8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-21.html @@ -0,0 +1,6 @@ +Trainer Terry:
+I think you are sufficiently prepared now. I will tell you about the next task. Being contaminated by a Dark Bezoar is something to worry about; however, according to Marina's research, the contamination seems to be limited to only a few creatures. I want you to be in charge of getting rid of those hosts.
+Marsh stakato drones, Breka Orc overlords, noble ant leaders, and Leto Lizardmen warriors are on the list. Of course, these creatures all have tendencies to be aggressive. Extract the Dark Bezoars from their bodies.
+Do you know where you can find them?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-22.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-22.html new file mode 100644 index 0000000000..0dbd108294 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-22.html @@ -0,0 +1,6 @@ +Master Terry:
+How is the hunting going? Being contaminated by a Dark Bezoar is something to worry about; however, according to Marina's research, the contamination seems to be limited to only a few creatures. I want you to be in charge of getting rid of those hosts.
+Marsh Stakato Drones, Breka Orc Overlords, Ant Warrior Captains, and Leto Lizardman Warriors are on the list. Of course, these creatures all have tendencies to be aggressive. Extract the Dark Bezoars from their bodies.
+Do you know where you can find them?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-23.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-23.html new file mode 100644 index 0000000000..ec84f96702 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-23.html @@ -0,0 +1,5 @@ +Master Terry:
+So, there are 4 Dark Bezoars altogether! I am so glad to see you alive. Master Dufner, he still has the sense for recognizing talented people. Thanks to you, I could solve the problem in a short hour.
+Oh, I guess you must also be curious about the results? I secretly found out that there was a group of people called the 'children of Shilen' behind this case. Did you ever hear of the name? They are the followers of Shilen who are looking forward to the resurrection of their Goddess. They are working secretly so few people know about them. The Royal palace is busy enough dealing with the war, and they have no time to take measures against them.
+This is becoming a serious matter now that it turned out to be their organization that is related to this case. This is not something that we can just overlook. I shall have to report this. This is a report which contains the details on this case. Take it to Master Dufner. He will take care of the rest. You have done a good job, thank you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-24.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-24.html new file mode 100644 index 0000000000..0a90af65ad --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30064-24.html @@ -0,0 +1,3 @@ +Master Terry:
+I thought that you had returned to Giran! Master Dufner must be wondering where you are. Go there now. We will meet again... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-01.html new file mode 100644 index 0000000000..78baeef241 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-01.html @@ -0,0 +1,6 @@ +Master Dufner:
I +'m not sure if you are aware of it, but the magical creatures have been acting very strange lately. They seem to be organizing for something. I am sure this is a bad sign.
+We must find out what those mutants are up to! While it is important to have young volunteers like yourself in service to the kingdom, this particular task requires someone that is skilled in concealment and scouting. I don't think you are up to the task...
+If you know anyone that possesses these skills, please tell me.
+(This quest may only be performed by Rogues, Elven Scouts, or Assassins of level 35 or higher.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-02.html new file mode 100644 index 0000000000..4f884f02d5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-02.html @@ -0,0 +1,5 @@ +Master Dufner:
+Our kingdom is being threatened by mutants! I am in need of guild members skilled in concealment and scouting. I think you will be very useful once you gain a bit more experience.
+If you successfully complete this task the guild will acknowledge your skills and you will find it easier to change to a higher level occupation. Please come back to me when you have more experience. I will be waiting for you.
+(This quest may only be performed by Rogues, Elven Scouts, or Assassins of level 35 or higher.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-03.htm new file mode 100644 index 0000000000..49f99134f9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-03.htm @@ -0,0 +1,5 @@ +Master Dufner:
+I am not sure if you are aware of this, but the mutants have been behaving strange lately. They have been forming gangs and looting local regions, and their recent movements have become more organized and accurate. I am sure this a very bad sign.
+Overwhelming force would probably be the best way to deal with this threat, but our forces are away at war...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-04.htm new file mode 100644 index 0000000000..459f16ea2f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-04.htm @@ -0,0 +1,5 @@ +Master Dufner:
+For now, the guild has decided to keep our investigation of this matter secret. For that we must have the aid of guild members skilled in concealment and scouting, like yourself. Of course, you must also be able to defend yourself in dangerous situations. Conflict with the mutants will be unavoidable... I must warn you, your life will be at great risk.
+But such is the life of a Scout. This is a great opportunity to prove your skills... Will you lend us your aid?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-05.htm new file mode 100644 index 0000000000..839163ad1e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-05.htm @@ -0,0 +1,5 @@ +Master Dufner:
+Good! I think it'd be easier to investigate if you slayed a few of the mutant magical creatures first. But... once the investigation reaches a certain point, you'll run into problems that you can't handle by yourself.
+I'll introduce you to someone that may be of help to you. His name is Hawkeye, he acts the part of a common master, but he was once a great Assassin. He was nicknamed 'Hawkeye' for never failing to achieve his mission or eliminate his target. Take this letter to him and request his aid.
+I have written the identity of this person in the letter, so keep that in mind. Don't tell anyone about this, your utmost discretion is needed, and be careful. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-05a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-05a.htm new file mode 100644 index 0000000000..8a331173d9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-05a.htm @@ -0,0 +1,6 @@ +Master Dufner:
+Very well! This is just my opinion, but I suspect that it will be easier for you to first find and kill some of those evil mutants and then investigate. Once your investigation reaches a certain point, howver, I'm reasonably certain that you will encounter a situation you cannot handle by yourself.
+Let me introduce you to someone who might be able to assist you. He is currently in hiding, masquerading like any other master, but in his day he was a feared assassin known as "Hawkeye." His targets could never escape his ruthless aim. Take this letter to him and ask him for help.
+I have included some additional information about him for your enlightenment. Please be careful that it doesn't fall into the wrong hands.
+Also, take this Dimension Diamond. You can trade this Dimension Diamond for something special from the village gatekeeper, and it will help you a lot on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-06.html new file mode 100644 index 0000000000..a26374bed1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-06.html @@ -0,0 +1,3 @@ +Master Dufner:
+You will find the name of the person you seek in this letter. You must leave at once! Don't forget, you must not be seen by anyone! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-07.html new file mode 100644 index 0000000000..ab489074d4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-07.html @@ -0,0 +1,3 @@ +Master Dufner:
+I expect great things from you. Should this task go well, I shall acknowledge your talents and lend you my aid should you want to change to a higher level occupation. May the divine light of Einhasad shine on you always. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-08.html new file mode 100644 index 0000000000..e671536968 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30106-08.html @@ -0,0 +1,5 @@ +Master Dufner:
+This is the report of Terry, the Hawkeye! Pardon me a moment while I peruse this . . . Hmmm . . . the children of Shilen! Oh my -- it seems as though they have finally begun to act on a large scale . . .
+Well, enough of that for now. My thanks for a job well done. We'll handle it from here. Terry was impressed with your skills, and I see no reason to doubt him. As a token of our thanks, please accept this Mark of Seeker from our guild.
+Your efforts may have made the difference in our ability to weather the coming storm. Thank you! I wish you every good fortune as you depart. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30526-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30526-01.html new file mode 100644 index 0000000000..c00c6b46ea --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30526-01.html @@ -0,0 +1,4 @@ +Blacksmith Brunon:
+Oh, a letter from Marina! She must be too busy to come herself. I've done a lot of business with her, but I still can't figure her out! I understand she's had a great past...
+Anyways, here's what she asked for. Be careful! It's fragile. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30526-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30526-02.html new file mode 100644 index 0000000000..5c5231ba46 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30526-02.html @@ -0,0 +1,3 @@ +Blacksmith Brunon:
+Take this to Marina at once! Be careful, it's very fragile. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-01.html new file mode 100644 index 0000000000..b2b937db4d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-01.html @@ -0,0 +1,4 @@ +Trader Viktor:
+A clairvoyant? Me? What do you mean? I never had such a nickname. You must be thinking about someone else. If you want to buy anything, I will treat you with respect. Otherwise, buzz off!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-02.html new file mode 100644 index 0000000000..4a3a092bcd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-02.html @@ -0,0 +1,5 @@ +Trader Viktor:
+Terry? Who the hell is this? What idiot sent me this letter! What a pain in the ass. OK, well then, I'll give it a try.
+Wait...! This sign... Hawkeye?! Could this be true that Hawkeye is still alive? His name is now 'Master Terry'? Ha! Good joke! He had so many enemies that I thought surely that one of them would have killed him by now...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-03.html new file mode 100644 index 0000000000..94cea01899 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-03.html @@ -0,0 +1,7 @@ +Trader Viktor:
+That is wonderful news! Ha, what a surprise. By the way, if you are truly sent by Hawkeye, you should know what his real name is... What is it?
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-04.html new file mode 100644 index 0000000000..d52a62f90d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-04.html @@ -0,0 +1,7 @@ +Trader Viktor:
+Well, we'll just chalk that one up to a fuzzy memory. Tell me again! What is his real name?
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-05.html new file mode 100644 index 0000000000..fe3f3897fe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-05.html @@ -0,0 +1,4 @@ +Trader Viktor:
+You... Who are you? Bug off!
+If it is true that you have simply forgotten the name, then go back and find out what it is! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-06.html new file mode 100644 index 0000000000..b2e91a6bf6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-06.html @@ -0,0 +1,5 @@ +Trader Viktor:
+Yes I see that you are indeed sent by Hawkeye. I thought I recognized his handwriting...
+You are right, I am the clairvoyant Viktor. By the way, I see from the letter that it is regarding a very serious matter.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-07.html new file mode 100644 index 0000000000..721a227758 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-07.html @@ -0,0 +1,6 @@ +Trader Viktor:
+Hmm, what is this? So these are the bezoars...Ok, I see. You want me to check out these bezoars?
+You must realize that there is no such thing as pro bono in my occupation. I am sure you are aware of that already? Even though you were probably sent by the Hawkeye, my services won't be absolutely free. So, what do you have?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-08.html new file mode 100644 index 0000000000..2645a3220a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-08.html @@ -0,0 +1,4 @@ +Trader Viktor:
+Don't lie to me, mister. I can tell by your shabby clothes that you have nothing of value. That equipment? Worthless!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-09.html new file mode 100644 index 0000000000..7e68cfde60 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-09.html @@ -0,0 +1,4 @@ +Trader Viktor:
+Hey, young fellow. Are you an idiot?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-10.html new file mode 100644 index 0000000000..22c297acdd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-10.html @@ -0,0 +1,4 @@ +Trader Viktor:
+Hmm, let me think... Yes! I am involved in a secret project these days. I don't have the time to do everything alone. Would you please help me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-11.html new file mode 100644 index 0000000000..60f8ef5dc1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-11.html @@ -0,0 +1,5 @@ +Trader Viktor:
+Ah, good, so we understand each other. Now that we have come to an understanding I feel closer to you. You seem to understand me.
+Anyway, let me fill you in on my project. In Giran there is a monster called the Medusa. Have you seen her already? This Medusa is, in fact...oops, no, this is a secret. I am sorry but this cannot be heard by anyone.
+Anyway, my point is that I want you to kill the Medusa and bring 10 of its scales. Then I shall give you the information you seek. Welcome to my project, I will be counting on you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-12.html new file mode 100644 index 0000000000..126728c307 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-12.html @@ -0,0 +1,5 @@ +Trader Viktor:
+Yes I see that you are indeed sent by Hawkeye. I was already fairly certain...
+You are right, I am the clairvoyant Viktor. I see from the letter that this is a very serious matter.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-13.html new file mode 100644 index 0000000000..a7523063ae --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-13.html @@ -0,0 +1,3 @@ +Trader Viktor:
+Did you forget my request already? I asked you to find 10 scales of Medusa for me. I shall begin my research on the bezoars, trusting you to do your part. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-14.html new file mode 100644 index 0000000000..4fda9702e7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-14.html @@ -0,0 +1,8 @@ +Trader Viktor:
+1, 2, 3... 10! Yes you have brought all 10 of them. Ha ha...This takes me one step further in my plan... Ha ha ha!
+Did I say that out loud? Never mind, I was just daydreaming...
+You have proven yourself and I shall give you the information you seek. While you were hunting I was studying the bezoar.
+It is also known as 'Abyss Spirit Ore'. It is often associated with Shilen, the Goddess of Abyss. How do I know this? When you flash a particular wavelength of light, the emanation of the refraction-dispersion creates a typical distribution of Ruper's curve. If you magnify the pattern, apply the Magnus' constant, compare it by Bernu's analysis, you will find a shape similar to Shilen's pattern between the 8th and the 9th diagram... What does this mean? It means that this bezoar is related to Shilen. I could tell you more but you wouldn't understand.
+However, there is one problem.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-15.html new file mode 100644 index 0000000000..40536c9e7e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-15.html @@ -0,0 +1,4 @@ +Trader Viktor:
+The appearance of the pattern is very irregular. The probabilities are random and its condition is still a mystery. Moreover, I don't understand why the bezoar is only found in the body of an aggressive monster. We must send it to Marina to find out more specifics...
+She is a Magister in the Ivory Tower of Oren. She is an acquaintance of mine. Take this letter detailing the results of my research and requesting assistance to Magister Marina of the Ivory Tower. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-16.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-16.html new file mode 100644 index 0000000000..fb4a8acbdd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-16.html @@ -0,0 +1,3 @@ +Trader Viktor:
+Find Magister Marina in the Ivory Tower of Oren. Don't forget to show her the letter that I gave you. She is an expert in this area. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-17.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-17.html new file mode 100644 index 0000000000..ee67dd063c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30684-17.html @@ -0,0 +1,3 @@ +Trader Viktor:
+I am sure Marina will be able to discover the secrets of the bezoar. Report her findings to Master Terry. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-01.html new file mode 100644 index 0000000000..4e7c0af175 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-01.html @@ -0,0 +1,5 @@ +Magister Marina:
+Ah, a letter is from Viktor... I thought he was focused on his business these days but I guess not... Hawkeye?! Is it still around? What joy the sound of that name brings me! There was a time when...
+Oh my, I mustn't go on in front of a guest... Shall we get down to business? My analysis may take some time. These things can get quite complicated. Perhaps you could do me a favor while I work? It will help my analysis as well...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-02.html new file mode 100644 index 0000000000..e9b39f3cbf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-02.html @@ -0,0 +1,3 @@ +Magister Marina:
+Thank you. It shouldn't be too difficult. I ordered an item a few days ago from Mr. Brunon the Blacksmith of the Dwarven Village. I have been too busy to pick it up. Could you please go and pick it up for me? Thank you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-03.html new file mode 100644 index 0000000000..a02db216b9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-03.html @@ -0,0 +1,3 @@ +Magister Marina:
+Go to Blacksmith Brunon of the Dwarven Village and bring back to me what I ordered from him. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-04.html new file mode 100644 index 0000000000..a76345824f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-04.html @@ -0,0 +1,4 @@ +Magister Marina:
+Ah, thank you. This will make the work go much faster. Now, let's do the final check. This will conclude my analysis and most likely prove my theory...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-05.html new file mode 100644 index 0000000000..b4657ca0ca --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-05.html @@ -0,0 +1,5 @@ +Magister Marina:
+Hmm...Let's see, 2 drops of Medusa's Blood, 3 spoons of the bugbear's molar tooth powder, 1 drop of inpichio's poison ... ...Good!
+It's done. Just as I expected! But this doesn't make me happy... In fact it confirms my worst nightmares... Too bad, really.
+Take the results of my analysis to Hawk..., no, to Master Terry. I will send one to Viktor. He will explain it fully to you. Now hurry! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-06.html new file mode 100644 index 0000000000..b0c0a7a451 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/30715-06.html @@ -0,0 +1,3 @@ +Magister Marina:
+Please take the results of my analysis to Master Terry. And hurry! This information is troubling. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/Q00213_TrialOfTheSeeker.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/Q00213_TrialOfTheSeeker.java new file mode 100644 index 0000000000..d0cb4d8ac5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00213_TrialOfTheSeeker/Q00213_TrialOfTheSeeker.java @@ -0,0 +1,613 @@ +/* + * 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.Q00213_TrialOfTheSeeker; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Trial Of The Seeker (213) + * @author ivantotov + */ +public final class Q00213_TrialOfTheSeeker extends Quest +{ + // NPCs + private static final int MASTER_TERRY = 30064; + private static final int MASTER_DUFNER = 30106; + private static final int BLACKSMITH_BRUNON = 30526; + private static final int TRADER_VIKTOR = 30684; + private static final int MAGISTER_MARINA = 30715; + // Items + private static final int DUFNERS_LETTER = 2647; + private static final int TERRYS_1ST_ORDER = 2648; + private static final int TERRYS_2ND_ORDER = 2649; + private static final int TERRYS_LETTER = 2650; + private static final int VIKTORS_LETTER = 2651; + private static final int HAWKEYES_LETTER = 2652; + private static final int MYSTERIOUS_SPIRIT_ORE = 2653; + private static final int OL_MAHUM_SPIRIT_ORE = 2654; + private static final int TUREK_SPIRIT_ORE = 2655; + private static final int ANT_SPIRIT_ORE = 2656; + private static final int TURAK_BUGBEAR_SPIRIT_ORE = 2657; + private static final int TERRY_BOX = 2658; + private static final int VIKTORS_REQUEST = 2659; + private static final int MEDUSA_SCALES = 2660; + private static final int SHILENS_SPIRIT_ORE = 2661; + private static final int ANALYSIS_REQUEST = 2662; + private static final int MARINAS_LETTER = 2663; + private static final int EXPERIMENT_TOOLS = 2664; + private static final int ANALYSIS_RESULT = 2665; + private static final int TERRYS_3RD_ORDER = 2666; + private static final int LIST_OF_HOST = 2667; + private static final int ABYSS_SPIRIT_ORE1 = 2668; + private static final int ABYSS_SPIRIT_ORE2 = 2669; + private static final int ABYSS_SPIRIT_ORE3 = 2670; + private static final int ABYSS_SPIRIT_ORE4 = 2671; + private static final int TERRYS_REPORT = 2672; + // Reward + private static final int MARK_OF_SEEKER = 2673; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monsters + private static final int ANT_CAPTAIN = 20080; + private static final int ANT_WARRIOR_CAPTAIN = 20088; + private static final int MEDUSA = 20158; + private static final int NEER_GHOUL_BERSERKER = 20198; + private static final int OL_MAHUM_CAPTAIN = 20211; + private static final int MARSH_STAKATO_DRONE = 20234; + private static final int TURAK_BUGBEAR_WARRIOR = 20249; + private static final int BREKA_ORC_OVERLORD = 20270; + private static final int TUREK_ORC_WARLORD = 20495; + private static final int LETO_LIZARDMAN_WARRIOR = 20580; + // Misc + private static final int MIN_LVL = 35; + private static final int LEVEL = 36; + + public Q00213_TrialOfTheSeeker() + { + super(213); + addStartNpc(MASTER_DUFNER); + addTalkId(MASTER_DUFNER, MASTER_TERRY, BLACKSMITH_BRUNON, TRADER_VIKTOR, MAGISTER_MARINA); + addKillId(ANT_CAPTAIN, ANT_WARRIOR_CAPTAIN, MEDUSA, NEER_GHOUL_BERSERKER, OL_MAHUM_CAPTAIN, MARSH_STAKATO_DRONE, TURAK_BUGBEAR_WARRIOR, BREKA_ORC_OVERLORD, TUREK_ORC_WARLORD, LETO_LIZARDMAN_WARRIOR); + registerQuestItems(DUFNERS_LETTER, TERRYS_1ST_ORDER, TERRYS_2ND_ORDER, TERRYS_LETTER, VIKTORS_LETTER, HAWKEYES_LETTER, MYSTERIOUS_SPIRIT_ORE, OL_MAHUM_SPIRIT_ORE, TUREK_SPIRIT_ORE, ANT_SPIRIT_ORE, TURAK_BUGBEAR_SPIRIT_ORE, TERRY_BOX, VIKTORS_REQUEST, MEDUSA_SCALES, SHILENS_SPIRIT_ORE, ANALYSIS_REQUEST, MARINAS_LETTER, EXPERIMENT_TOOLS, ANALYSIS_RESULT, TERRYS_3RD_ORDER, LIST_OF_HOST, ABYSS_SPIRIT_ORE1, ABYSS_SPIRIT_ORE2, ABYSS_SPIRIT_ORE3, ABYSS_SPIRIT_ORE4, TERRYS_REPORT); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + if (!hasQuestItems(player, DUFNERS_LETTER)) + { + giveItems(player, DUFNERS_LETTER, 1); + } + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 128); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30106-05a.htm"; + } + else + { + htmltext = "30106-05.htm"; + } + } + break; + } + case "30106-04.htm": + case "30064-02.html": + case "30064-07.html": + case "30064-16.html": + case "30064-17.html": + case "30064-19.html": + case "30684-02.html": + case "30684-03.html": + case "30684-04.html": + case "30684-06.html": + case "30684-07.html": + case "30684-08.html": + case "30684-09.html": + case "30684-10.html": + { + htmltext = event; + break; + } + case "30064-03.html": + { + if (hasQuestItems(player, DUFNERS_LETTER)) + { + takeItems(player, DUFNERS_LETTER, 1); + giveItems(player, TERRYS_1ST_ORDER, 1); + qs.setCond(2, true); + htmltext = event; + } + break; + } + case "30064-06.html": + { + if (hasQuestItems(player, TERRYS_1ST_ORDER)) + { + takeItems(player, TERRYS_1ST_ORDER, 1); + giveItems(player, TERRYS_2ND_ORDER, 1); + takeItems(player, MYSTERIOUS_SPIRIT_ORE, 1); + qs.setCond(4, true); + htmltext = event; + } + break; + } + case "30064-10.html": + { + giveItems(player, TERRYS_LETTER, 1); + takeItems(player, OL_MAHUM_SPIRIT_ORE, 1); + takeItems(player, TUREK_SPIRIT_ORE, 1); + takeItems(player, ANT_SPIRIT_ORE, 1); + takeItems(player, TURAK_BUGBEAR_SPIRIT_ORE, 1); + takeItems(player, TERRYS_2ND_ORDER, 1); + giveItems(player, TERRY_BOX, 1); + qs.setCond(6, true); + htmltext = event; + break; + } + case "30064-18.html": + { + if (hasQuestItems(player, ANALYSIS_RESULT)) + { + takeItems(player, ANALYSIS_RESULT, 1); + giveItems(player, LIST_OF_HOST, 1); + qs.setCond(15, true); + htmltext = event; + } + break; + } + case "30684-05.html": + { + if (hasQuestItems(player, TERRYS_LETTER)) + { + takeItems(player, TERRYS_LETTER, 1); + giveItems(player, VIKTORS_LETTER, 1); + qs.setCond(7, true); + htmltext = event; + } + break; + } + case "30684-11.html": + { + takeItems(player, TERRYS_LETTER, 1); + takeItems(player, TERRY_BOX, 1); + takeItems(player, HAWKEYES_LETTER, 1); + takeItems(player, VIKTORS_LETTER, 1); + giveItems(player, VIKTORS_REQUEST, 1); + qs.setCond(9, true); + htmltext = event; + break; + } + case "30684-15.html": + { + takeItems(player, VIKTORS_REQUEST, 1); + takeItems(player, MEDUSA_SCALES, -1); + giveItems(player, SHILENS_SPIRIT_ORE, 1); + giveItems(player, ANALYSIS_REQUEST, 1); + qs.setCond(11, true); + htmltext = event; + break; + } + case "30715-02.html": + { + takeItems(player, SHILENS_SPIRIT_ORE, 1); + takeItems(player, ANALYSIS_REQUEST, 1); + giveItems(player, MARINAS_LETTER, 1); + qs.setCond(12, true); + htmltext = event; + break; + } + case "30715-05.html": + { + takeItems(player, EXPERIMENT_TOOLS, 1); + giveItems(player, ANALYSIS_RESULT, 1); + qs.setCond(14, true); + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case ANT_CAPTAIN: + { + if (hasQuestItems(killer, TERRYS_2ND_ORDER) && !hasQuestItems(killer, ANT_SPIRIT_ORE)) + { + giveItems(killer, ANT_SPIRIT_ORE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, OL_MAHUM_SPIRIT_ORE, TUREK_SPIRIT_ORE, TURAK_BUGBEAR_SPIRIT_ORE)) + { + qs.setCond(5); + } + } + break; + } + case ANT_WARRIOR_CAPTAIN: + { + if (hasQuestItems(killer, LIST_OF_HOST) && !hasQuestItems(killer, ABYSS_SPIRIT_ORE3)) + { + giveItems(killer, ABYSS_SPIRIT_ORE3, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, ABYSS_SPIRIT_ORE1, ABYSS_SPIRIT_ORE2, ABYSS_SPIRIT_ORE4)) + { + qs.setCond(16); + } + } + break; + } + case MEDUSA: + { + if (hasQuestItems(killer, VIKTORS_REQUEST) && (getQuestItemsCount(killer, MEDUSA_SCALES) < 10)) + { + giveItems(killer, MEDUSA_SCALES, 1); + if (getQuestItemsCount(killer, MEDUSA_SCALES) == 10) + { + qs.setCond(10, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case NEER_GHOUL_BERSERKER: + { + if (hasQuestItems(killer, TERRYS_1ST_ORDER) && !hasQuestItems(killer, MYSTERIOUS_SPIRIT_ORE)) + { + if (getRandom(100) < 50) + { + giveItems(killer, MYSTERIOUS_SPIRIT_ORE, 1); + qs.setCond(3, true); + } + } + break; + } + case OL_MAHUM_CAPTAIN: + { + if (hasQuestItems(killer, TERRYS_2ND_ORDER) && !hasQuestItems(killer, OL_MAHUM_SPIRIT_ORE)) + { + giveItems(killer, OL_MAHUM_SPIRIT_ORE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, TUREK_SPIRIT_ORE, ANT_SPIRIT_ORE, TURAK_BUGBEAR_SPIRIT_ORE)) + { + qs.setCond(5); + } + } + break; + } + case MARSH_STAKATO_DRONE: + { + if (hasQuestItems(killer, LIST_OF_HOST) && !hasQuestItems(killer, ABYSS_SPIRIT_ORE1)) + { + giveItems(killer, ABYSS_SPIRIT_ORE1, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, ABYSS_SPIRIT_ORE2, ABYSS_SPIRIT_ORE3, ABYSS_SPIRIT_ORE4)) + { + qs.setCond(16); + } + } + break; + } + case TURAK_BUGBEAR_WARRIOR: + { + if (hasQuestItems(killer, TERRYS_2ND_ORDER) && !hasQuestItems(killer, TURAK_BUGBEAR_SPIRIT_ORE)) + { + giveItems(killer, TURAK_BUGBEAR_SPIRIT_ORE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, OL_MAHUM_SPIRIT_ORE, TUREK_SPIRIT_ORE, ANT_SPIRIT_ORE)) + { + qs.setCond(5); + } + } + break; + } + case BREKA_ORC_OVERLORD: + { + if (hasQuestItems(killer, LIST_OF_HOST) && !hasQuestItems(killer, ABYSS_SPIRIT_ORE2)) + { + giveItems(killer, ABYSS_SPIRIT_ORE2, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, ABYSS_SPIRIT_ORE1, ABYSS_SPIRIT_ORE3, ABYSS_SPIRIT_ORE4)) + { + qs.setCond(16); + } + } + break; + } + case TUREK_ORC_WARLORD: + { + if (hasQuestItems(killer, TERRYS_2ND_ORDER) && !hasQuestItems(killer, TUREK_SPIRIT_ORE)) + { + giveItems(killer, TUREK_SPIRIT_ORE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, OL_MAHUM_SPIRIT_ORE, ANT_SPIRIT_ORE, TURAK_BUGBEAR_SPIRIT_ORE)) + { + qs.setCond(5); + } + } + break; + } + case LETO_LIZARDMAN_WARRIOR: + { + if (hasQuestItems(killer, LIST_OF_HOST) && !hasQuestItems(killer, ABYSS_SPIRIT_ORE4)) + { + giveItems(killer, ABYSS_SPIRIT_ORE4, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, ABYSS_SPIRIT_ORE1, ABYSS_SPIRIT_ORE2, ABYSS_SPIRIT_ORE3)) + { + qs.setCond(16); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == MASTER_DUFNER) + { + if ((player.getClassId() == ClassId.ROGUE) || (player.getClassId() == ClassId.ELVEN_SCOUT) || ((player.getClassId() == ClassId.ASSASSIN))) + { + if (player.getLevel() < MIN_LVL) + { + htmltext = "30106-02.html"; + } + else + { + htmltext = "30106-03.htm"; + } + } + else + { + htmltext = "30106-01.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case MASTER_DUFNER: + { + if (hasQuestItems(player, DUFNERS_LETTER) && !hasQuestItems(player, TERRYS_REPORT)) + { + htmltext = "30106-06.html"; + } + else if (!hasAtLeastOneQuestItem(player, DUFNERS_LETTER, TERRYS_REPORT)) + { + htmltext = "30106-07.html"; + } + else if (hasQuestItems(player, TERRYS_REPORT) && !hasQuestItems(player, DUFNERS_LETTER)) + { + giveAdena(player, 187606, true); + giveItems(player, MARK_OF_SEEKER, 1); + addExpAndSp(player, 1029478, 66768); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30106-08.html"; + } + break; + } + case MASTER_TERRY: + { + if (hasQuestItems(player, DUFNERS_LETTER)) + { + htmltext = "30064-01.html"; + } + else if (hasQuestItems(player, TERRYS_1ST_ORDER)) + { + if (!hasQuestItems(player, MYSTERIOUS_SPIRIT_ORE)) + { + htmltext = "30064-04.html"; + } + else + { + htmltext = "30064-05.html"; + } + } + else if (hasQuestItems(player, TERRYS_2ND_ORDER)) + { + if ((getQuestItemsCount(player, OL_MAHUM_SPIRIT_ORE) + getQuestItemsCount(player, TUREK_SPIRIT_ORE) + getQuestItemsCount(player, ANT_SPIRIT_ORE) + getQuestItemsCount(player, TURAK_BUGBEAR_SPIRIT_ORE)) < 4) + { + htmltext = "30064-08.html"; + } + else + { + htmltext = "30064-09.html"; + } + } + else if (hasQuestItems(player, TERRYS_LETTER)) + { + htmltext = "30064-11.html"; + } + else if (hasQuestItems(player, VIKTORS_LETTER)) + { + takeItems(player, VIKTORS_LETTER, 1); + giveItems(player, HAWKEYES_LETTER, 1); + qs.setCond(8, true); + htmltext = "30064-12.html"; + } + else if (hasQuestItems(player, HAWKEYES_LETTER)) + { + htmltext = "30064-13.html"; + } + else if (hasAtLeastOneQuestItem(player, VIKTORS_REQUEST, ANALYSIS_REQUEST, MARINAS_LETTER, EXPERIMENT_TOOLS)) + { + htmltext = "30064-14.html"; + } + else if (hasQuestItems(player, ANALYSIS_RESULT)) + { + htmltext = "30064-15.html"; + } + else if (hasQuestItems(player, TERRYS_3RD_ORDER)) + { + if (player.getLevel() < LEVEL) + { + htmltext = "30064-20.html"; + } + else + { + takeItems(player, TERRYS_3RD_ORDER, 1); + giveItems(player, LIST_OF_HOST, 1); + qs.setCond(15, true); + htmltext = "30064-21.html"; + } + } + else if (hasQuestItems(player, LIST_OF_HOST)) + { + if ((getQuestItemsCount(player, ABYSS_SPIRIT_ORE1) + getQuestItemsCount(player, ABYSS_SPIRIT_ORE2) + getQuestItemsCount(player, ABYSS_SPIRIT_ORE3) + getQuestItemsCount(player, ABYSS_SPIRIT_ORE4)) < 4) + { + htmltext = "30064-22.html"; + } + else + { + takeItems(player, LIST_OF_HOST, 1); + takeItems(player, ABYSS_SPIRIT_ORE1, 1); + takeItems(player, ABYSS_SPIRIT_ORE2, 1); + takeItems(player, ABYSS_SPIRIT_ORE3, 1); + takeItems(player, ABYSS_SPIRIT_ORE4, 1); + giveItems(player, TERRYS_REPORT, 1); + qs.setCond(17, true); + htmltext = "30064-23.html"; + } + } + else if (hasQuestItems(player, TERRYS_REPORT)) + { + htmltext = "30064-24.html"; + } + break; + } + case BLACKSMITH_BRUNON: + { + if (hasQuestItems(player, MARINAS_LETTER)) + { + takeItems(player, MARINAS_LETTER, 1); + giveItems(player, EXPERIMENT_TOOLS, 1); + qs.setCond(13, true); + htmltext = "30526-01.html"; + } + else if (hasQuestItems(player, EXPERIMENT_TOOLS)) + { + htmltext = "30526-02.html"; + } + break; + } + case TRADER_VIKTOR: + { + if (hasQuestItems(player, TERRYS_LETTER)) + { + htmltext = "30684-01.html"; + } + else if (hasQuestItems(player, HAWKEYES_LETTER)) + { + htmltext = "30684-12.html"; + } + else if (hasQuestItems(player, VIKTORS_REQUEST)) + { + if (getQuestItemsCount(player, MEDUSA_SCALES) < 10) + { + htmltext = "30684-13.html"; + } + else + { + htmltext = "30684-14.html"; + } + } + else if (hasQuestItems(player, SHILENS_SPIRIT_ORE, ANALYSIS_REQUEST)) + { + htmltext = "30684-16.html"; + } + else if (hasQuestItems(player, MARINAS_LETTER, EXPERIMENT_TOOLS, ANALYSIS_REQUEST, TERRYS_REPORT)) + { + htmltext = "30684-17.html"; + } + else if (hasQuestItems(player, VIKTORS_LETTER)) + { + htmltext = "30684-05.html"; + } + break; + } + case MAGISTER_MARINA: + { + if (hasQuestItems(player, SHILENS_SPIRIT_ORE, ANALYSIS_REQUEST)) + { + htmltext = "30715-01.html"; + } + else if (hasQuestItems(player, MARINAS_LETTER)) + { + htmltext = "30715-03.html"; + } + else if (hasQuestItems(player, EXPERIMENT_TOOLS)) + { + htmltext = "30715-04.html"; + } + else if (hasQuestItems(player, ANALYSIS_RESULT)) + { + htmltext = "30715-06.html"; + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == MASTER_DUFNER) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-01.html new file mode 100644 index 0000000000..07d5e4484d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-01.html @@ -0,0 +1,6 @@ +High Priest Sylvain:
+You must learn about the purification of light.
+As you probably know, my duty is to purify the land of unclean energy. In the eastern part of this village is an Execution Grounds where many of the people involved in the peasant's uprising were killed. This place casts a dark shadow over all of Dion. This evil history has made the area a fertile ground for strange creatures.
+You must sooth the angry spirits of the Execution Grounds and assist in the purification of this land. This won't be easy or quick. It requires patience and persistence. Will you assist me in purifying the Execution Grounds?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-02.html new file mode 100644 index 0000000000..f8a921d355 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-02.html @@ -0,0 +1,4 @@ +High Priest Sylvain:
+Carry this mark while you perform the task I have assigned you. Let us begin the purification of the Execution Grounds. To do so, we must acquire the Crystal of Purity. It is a purely formed crystal.
+This pure gem is not obtained easily. The only person capable of creating it is Maria in this village. Take this letter to her. She will tell you more about the Crystal of Purity. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-03.html new file mode 100644 index 0000000000..45ff5095e7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-03.html @@ -0,0 +1,3 @@ +High Priest Sylvain:
+Please visit Maria and obtain the Crystal of Purity. That is the only way that we can cleanse this spiritually bereft land. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-04.html new file mode 100644 index 0000000000..bc3bf30d2e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-04.html @@ -0,0 +1,6 @@ +High Priest Sylvain:
+Ah, the Crystal of Purity! Behold the beauty of the most pure formation!
+To tell you the truth, I knew that Maria wasn't quite ready to make the crystal and I thought that you might help her find the way.
+Thanks to you, the method of creating this crystal has been restored to us, and we have the object we need to purify the Execution Grounds. Good work.
+You shall have the mark as promised. Take it to Magister Mirien over there. Good luck in the Trial of the Scholar. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-05.html new file mode 100644 index 0000000000..a64c65901f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-05.html @@ -0,0 +1,3 @@ +High Priest Sylvain:
+You have successfully completed the task that I assigned you. You should go and meet Magister Mirien now, she has another task for you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-06.html new file mode 100644 index 0000000000..f17943f4d7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30070-06.html @@ -0,0 +1,3 @@ +High Priest Sylvain:
+I wish you good luck on your tasks and hope that you become a mature Magician soon. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-01.html new file mode 100644 index 0000000000..11a3a21b4a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-01.html @@ -0,0 +1,5 @@ +Captain Lucas:
+Maria's scroll... Ah yes, I have heard of its importance. We have looked everywhere and are still unable to find it. The thief must be very cunning.
+It is very unusual to have no clues in a whole month! Maybe we should consult a fortune-teller...
+Anyway, please tell Maria that I am terribly sorry. I'll do my best to apprehend this thief as soon as possible. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-02.html new file mode 100644 index 0000000000..e26ff781e6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-02.html @@ -0,0 +1,3 @@ +Captain Lucas:
+Please give my message to Maria. Be patient, I will catch the thief as soon as I can. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-03.html new file mode 100644 index 0000000000..4ada018935 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-03.html @@ -0,0 +1,5 @@ +Captain Lucas:
+You saw the fortune-teller? Fortune-teller, astrologer, what's the difference? I was only kidding the other day when I suggested it. Who thought you would have taken me seriously? I guess I just ran out of ideas...
+What is that picture, anyway? Why are you holding such a thing? Ah! Hold on, what the hell is that strange reflection?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-04.html new file mode 100644 index 0000000000..6faad6506d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-04.html @@ -0,0 +1,6 @@ +Captain Lucas:
+Do you mean this is the reflection of the thief?
+I can't help noticing that it looks exactly like a Leto Lizardman. He appears to be a perfect Warrior... I heard that the Leto Lizardmen have been seen in the southeastern part of Oren.
+If this fortune-teller's mirror is correct, we have a huge problem. There must be a deeper reason for their behavior...
+Let's get started. The fortune-teller might be correct. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-05.html new file mode 100644 index 0000000000..3f8e934236 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-05.html @@ -0,0 +1,3 @@ +Captain Lucas:
+If this mirror is correct, the person who stole the scroll will be among the Leto Lizardmen. We might find the scroll if we find them. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-06.html new file mode 100644 index 0000000000..bd73cd507e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-06.html @@ -0,0 +1,3 @@ +Captain Lucas:
+We have recovered all the scrolls from the leto Lizardman! Thank God. Take them to Maria immediately. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-07.html new file mode 100644 index 0000000000..88f20a1942 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30071-07.html @@ -0,0 +1,3 @@ +Captain Lucas:
+I'm afraid I didn't express my gratitude adequately before. Thanks to you we recovered the scrolls from the leto Lizardman. I am in your debt... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-01.html new file mode 100644 index 0000000000..c1a2a48e05 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-01.html @@ -0,0 +1,4 @@ +Warehouse Keeper Valkon:
+The Scriptures of Knowledge? Ah, what a strange book! I got it from that Drunkard Triff as payment for his debt... Is it as valuable as he said? Well the money that he owes me wasn't that much, anyway... 1,000 Adena, I believe...?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-02.html new file mode 100644 index 0000000000..ac84e41310 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-02.html @@ -0,0 +1,4 @@ +Warehouse Keeper Valkon:
+Hey, youngster! You expect me to give it to you for free? What about the debt? Would you care to pay for that instead?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-03.html new file mode 100644 index 0000000000..7eee55c70d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-03.html @@ -0,0 +1,5 @@ +Warehouse Keeper Valkon:
+So, you will pay the debt? Hey since I loaned that man 1,000 Adena... How long has it been? Let me see... Yes, that was 10 years ago, 10 years! Do you know how much interest is drawn from that? If you compute the compound interest, that would be... Let's say, 100,000 Adena! You will pay all that money for him?
+Forget it... I gave up collecting that debt a long time ago. Instead, I have a proposal. If you do me a favor, I shall give you that Scriptures of Knowledge.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-04.html new file mode 100644 index 0000000000..5aea3391c0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-04.html @@ -0,0 +1,4 @@ +Warehouse Keeper Valkon:
+Good! You are a good fellow. Now listen to me carefully. I have heard of a very precious crystal, what was its name, yes, that's right, it is called the Purifying Crystal. I have heard that only one person can make it.
+If you will bring me one of those, I shall gladly give you that Scriptures of Knowledge. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-05.html new file mode 100644 index 0000000000..4f8db64f99 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-05.html @@ -0,0 +1,3 @@ +Warehouse Keeper Valkon:
+Have you forgotten the terms already? First you must bring me the Crystal of Purity! Then we will talk about that scripture thing. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-06.html new file mode 100644 index 0000000000..389c46482f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-06.html @@ -0,0 +1,3 @@ +Warehouse Keeper Valkon:
+Wow, this is indeed the Crystal of Purity! How did you find such a precious thing so quickly? You are more skillful than I had expected. Oh, well, a man should keep his word. Here is the Scripture: Volume II. Take good care of it! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-07.html new file mode 100644 index 0000000000..fd1e5caf67 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30103-07.html @@ -0,0 +1,3 @@ +Warehouse Keeper Valkon:
+I understand that you are trying to acquire the whole collection of scriptures? Well, I doubt that you can find them so easily? Keep trying, young one! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-01.html new file mode 100644 index 0000000000..2b777e6792 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-01.html @@ -0,0 +1,6 @@ +Magister Dieter:
+Yes, I used to work for Master Cronos. Ha, he told you that, did he?
+I took that job because I wanted to learn magic. He mainly wanted an errand boy, but I was able to learn much from him eventually. Master Cronos was a nice man.
+He asked you to find the Book of Intelligence? I shudder when I remember the last time I heard of that book. He flew into such a rage I thought he would kill me.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-02.html new file mode 100644 index 0000000000..0905d3697c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-02.html @@ -0,0 +1,8 @@ +Magister Dieter:
+These memories bring me such pain...
+Well, you'll find out soon enough so I might as well tell you.
+I stole the books. Master crossed the line that day. I was enraged when he told me I should consider being a farmer... I stole the books that night to spite him.
+I hid the books in a very safe place.
+I wanted to get Master into trouble... But it got complicated. Master flew into such a rage that, fearing for my life, I went to retrieve the books but they were gone!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-03.html new file mode 100644 index 0000000000..67d35d90ba --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-03.html @@ -0,0 +1,5 @@ +Magister Dieter:
+Since then I have been searching without success for any sign of the books. If this gets out I would be strung up for sure.
+So, I forgot it until today. I have no idea where the scripture may be... Do you have any ideas? I would be very grateful if we could find that book...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-04.html new file mode 100644 index 0000000000..0894a03573 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-04.html @@ -0,0 +1,4 @@ +Magister Dieter:
+Isn't an astrologer the same thing as a fortune-teller? If word got around to the other Magisters that I consulted a fortune-teller I would never hear the end of it. No way!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-05.html new file mode 100644 index 0000000000..94612f336a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-05.html @@ -0,0 +1,5 @@ +Magister Dieter:
+Really? Thank you! However, is this Astrologer Creta trustworthy?
+Solved that robbery case, huh? That's impressive. I am not familiar with such things but I get the sense there may be some truth to it. I will take your word for it.
+If you are looking for clues, you may find this interesting. Here is the key to the chest that the stolen books were in. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-06.html new file mode 100644 index 0000000000..dcc596be91 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-06.html @@ -0,0 +1,3 @@ +Magister Dieter:
+I thought you might show my key to the astrologer... I see that you haven't yet. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-07.html new file mode 100644 index 0000000000..962814da0e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-07.html @@ -0,0 +1,6 @@ +Magister Dieter:
+What did the astrologer say? Is this letter from him? Let me see...
+Hmm... the guy seems to have real powers...
+Creta... Is that a real name? I didn't realize he would be so helpful! Let me read it to you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-08.html new file mode 100644 index 0000000000..78046a7993 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-08.html @@ -0,0 +1,8 @@ +Magister Dieter:
+This vision came to me from the key you gave me.
+"You were being watched by the thieves before you even stole the scripture. Because it was so long ago I was not able to distinguish much about them.
+There were 4 shadows. One of them was definitely a Dwarf, obvious from the short shadow. The other 3 were more difficult to distinguish. It was a moonless night.
+I saw them open the box and steal the scripture shortly after you left it there. They left hurriedly, in a northerly direction."
+I don't remember anything after this. I think there may be more secrets locked in my memory.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-09.html new file mode 100644 index 0000000000..6fdae1c39a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-09.html @@ -0,0 +1,7 @@ +Magister Dieter:
+The loss of the scriptures diminished my reasoning for a time...
+There were many outsiders around in those days... Mostly ill-trained hunters, watching for a chance for one shot at the village. They were laughable. However there were some outsiders who did not hunt and were always gone in the evenings...
+Yes! I remember them! There were 4 in the party, 2 humans, a Dwarf and a Dark Elf! I remember speaking with the Dark Elf once. He asked me something about my master, I can't really remember.
+The inn where they stayed is gone and the innkeeper died 2 years ago...
+I was good friends with the innkeeper's son, his name was Edroc. The last I heard he was running a shop in the Hunters Village. He might have some useful information. Go and see him, I will write a Letter of Introduction for you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-10.html new file mode 100644 index 0000000000..2fb91369e5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-10.html @@ -0,0 +1,3 @@ +Magister Dieter:
+Meet my friend Edroc at the weapon shop in the Hunters Village. He might have some useful information for you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-11.html new file mode 100644 index 0000000000..4823adce68 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-11.html @@ -0,0 +1,3 @@ +Magister Dieter:
+Hmm... Is that so? Gludin Township, and Warehouse Keeper Route... Isn't this letter from theWarehouse Keeper Route of Gludin Township...,? It must be investigated. I have to ask you one more time. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-12.html new file mode 100644 index 0000000000..0fe1cf2e42 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-12.html @@ -0,0 +1,3 @@ +Magister Dieter:
+Have you made any progress locating the Book of Intelligence? Please, you must find it! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-13.html new file mode 100644 index 0000000000..9809381f5c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-13.html @@ -0,0 +1,4 @@ +Magister Dieter:
+Ah, the Scriptures are safely returned and my master's anger shall be appeased. This certainly takes a weight off of my mind. I cannot thank you enough!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-14.html new file mode 100644 index 0000000000..e1a894f07b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-14.html @@ -0,0 +1,4 @@ +Magister Dieter:
+What?! That's not possible...! There were only 4 that I know of. He must have been misunderstood.
+Don't worry. Now carry all the books of intelligence to my master. I'm sure he will be happy to see them. This will be such a relief for me. Thank you very much. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-15.html new file mode 100644 index 0000000000..f2bd0a97f3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30111-15.html @@ -0,0 +1,3 @@ +Magister Dieter:
+Thank you so much for returning the Scriptures to their rightful owner. I feel like a new man now that that has been resolved! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-01.html new file mode 100644 index 0000000000..86e1b22d66 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-01.html @@ -0,0 +1,4 @@ +Grand Magister Jurek:
+Mirien has sent word that you have taken the path of the seeker. Are you prepared to test your magical abilities?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-02.html new file mode 100644 index 0000000000..14a9a3eb23 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-02.html @@ -0,0 +1,7 @@ +Grand Magister Jurek:
+Not long after I arrived in Giran frightening monsters began to gather in the corridor to the north. During this time I learned that the creatures using magic were not originally magic users.
+I can't be sure, but I sense the complicity of Dark Magician Hardin. As you know, his school is nearby.
+I can't imagine why, but I am quite sure that it is he who gave these monsters the ability to use magic. I have no evidence of this crime, and the suspicions seem to be mine alone.
+I intend to investigate, starting with the monsters that use magic. What do you say? Will you assist with my investigation?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-03.html new file mode 100644 index 0000000000..46fd5b69c2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-03.html @@ -0,0 +1,5 @@ +Grand Magister Jurek:
+Good. Take this mark for now. I will tell you about the monsters that you must investigate. First, we have the Monster Eye Destroyers. There are many of them in the Wasteland and the Plains of Dion. Please bring back 5 of their hides.
+Second, we have the Breka Orc Shamans. You will find them easily in Giran. Defeat them and bring back 5 Shaman Necklaces.
+Finally, you must confront the monsters called Shackle. We need 2 scalps from them. They appear at the Watcher's Tomb, but one word of caution: Recently, they have also appeared at the Ivory Tower Crater. Either way, if you aren't careful, you will lose your life. So remain vigilant. All this may be difficult to remember, so I will make a list for you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-04.html new file mode 100644 index 0000000000..5126c450cd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-04.html @@ -0,0 +1,3 @@ +Grand Magister Jurek:
+It seems that you have not yet completed the investigation that I tasked you with. As I said before, please investigate the Monster Eye Destroyer, Breka Orc Shaman, and Shackle. The Monster Eye Destroyer appears at the Wasteland and the Plains of Dion, the Breka Orc Shaman appears at Breka's Stronghold, and Shackle appears at the Watcher's Tomb and the Ivory Tower Crater. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-05.html new file mode 100644 index 0000000000..1d0407f97c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-05.html @@ -0,0 +1,4 @@ +Grand Magister Jurek:
+Let's see, Monster Eye Destroyer Skins, Shaman Necklaces, and Shackle Scalps. You have brought me all that I have asked of you. I thank you on behalf of the Mystics Guild of Giran! With this evidence, I should be able to prove my suspicions and find Hardin's true purpose.
+As a token of my appreciation, I will give you my mark. You are more than qualified to receive this. Now return to Mirien. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-06.html new file mode 100644 index 0000000000..3439c4298e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-06.html @@ -0,0 +1,3 @@ +Grand Magister Jurek:
+Return to Mirien and she will instruct you regarding the next stage of the trial. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-07.html new file mode 100644 index 0000000000..773527cbb2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30115-07.html @@ -0,0 +1,3 @@ +Grand Magister Jurek:
+The Trial of the Scholar is the first step toward reaching a higher understanding. I wish you luck. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30230-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30230-01.html new file mode 100644 index 0000000000..b2543ff6e3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30230-01.html @@ -0,0 +1,5 @@ +Trader Edroc:
+Ah, a letter from Dieter! Dieter the crybaby! Of course I remember him! Did you say that he became a teacher at the School of Wizardry? Oh, my! He did better than I expected he would... He used to cry like a baby after being scolded by Cronos the wise, and I always had to cheer him up.
+Oh, well, what did you say you came here for?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30230-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30230-02.html new file mode 100644 index 0000000000..9f476e0a7b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30230-02.html @@ -0,0 +1,7 @@ +Trader Edroc:
+The letter! Oh, yes, yes... It was probably 20 years ago but I do remember. There was a big fuss about a stolen book, and the burglar...
+Yes, he sure seemed strange to me as well. Back then, the atmosphere was very tense between the Dwarves, Dark Elves and Humans.
+What? The far west...? Uh? What fortune-teller?...
+Ah, yes, I remember now. I was sitting inside an apple barrel that night. Right beside me, they were talking about going to Gludin Harbor. Perhaps they stole the expensive book and hid it there? They were so rushed that they didn't notice that something extra was included with the bill.
+Wait a moment please! Where... did I put it...? Yes, it was an empty envelope. I kept it just in case... It says here Raut the Warehouse Keeper. Do you want it? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30230-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30230-03.html new file mode 100644 index 0000000000..de30fdb5da --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30230-03.html @@ -0,0 +1,3 @@ +Trader Edroc:
+What did you do with the envelope? I hope Dieter finds the book soon so that he will stop crying. Oh, yes, I remember... You said he is a good teacher now. Ha ha! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30230-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30230-04.html new file mode 100644 index 0000000000..9158317d2f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30230-04.html @@ -0,0 +1,3 @@ +Trader Edroc:
+Did you find the book? Please help Dieter! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30316-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30316-01.html new file mode 100644 index 0000000000..97822a4844 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30316-01.html @@ -0,0 +1,5 @@ +Warehouse Keeper Raut:
+What, this envelope? It can't be... After so long, and now...?
+Oh, my... Please forgive me. It was a thoughtless mistake by my brother when he was young. I apologize for him. Please forgive us this one time.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30316-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30316-02.html new file mode 100644 index 0000000000..58beaf082b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30316-02.html @@ -0,0 +1,6 @@ +Warehouse Keeper Raut:
+What? Weren't you here looking for the Scriptures of Knowledge? I have been suffering from bad dreams for the last couple of nights. Every night an old man appears and demands that I give the scripture to the person who brings this envelope. First I thought it was just a silly dream, but then it keeps recurring night after night!
+Anyway, I truly apologize. Take this Scriptures of Knowledge: Volume I. Regarding the remaining 3 volumes, I do not know. My brother said that he gave them to his friends. It was said that some strange man asked them to steal the scriptures... However my brother and his young comrades kept it for themselves. They ran all the way to this village where I now live. Afterwards they split up and took one book each, and have not been heard from since.
+What do you say, would you like to meet my brother? He might remember something. By the way, he won't even speak to you if you don't bring him any alcohol. Here, take this wine with you. I hope you can sort it out so that I can sleep in peace.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30316-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30316-03.html new file mode 100644 index 0000000000..4be62ad55c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30316-03.html @@ -0,0 +1,3 @@ +Warehouse Keeper Raut:
+You will find my brother near the harbor. He drinks there everyday. If you go and mention my name he will talk to you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30316-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30316-04.html new file mode 100644 index 0000000000..b18540a2b2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30316-04.html @@ -0,0 +1,3 @@ +Warehouse Keeper Raut:
+Have you met my brother? He can be found near the harbor. If you give him the wine that I gave you, he will answer your questions. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30316-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30316-05.html new file mode 100644 index 0000000000..03b051c9c8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30316-05.html @@ -0,0 +1,3 @@ +Warehouse Keeper Raut:
+I didn't realize that my brother had stolen such an important thing... By all means, I shall pray for you to find the rest of the Scriptures of Knowledge. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30458-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30458-01.html new file mode 100644 index 0000000000..aeb2f0a7b0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30458-01.html @@ -0,0 +1,6 @@ +Blacksmith Poitan:
+The Book of Knowledge? Ha! That was sold long ago.
+Triff left it to cover his bar tab, but I didn't think he would pay it back so I sold it.
+It was a Sage who bought it. He was a very eager buyer and paid handsomely for it. If you want the book, talk to him. I have his name here, I wrote it in the account book...
+Ah! Here it is!. It was a month ago. Casian is his name. Elder Casian... Address...The Wastelands. I wonder what he is doing in a place like the Wastelands. Anyway, if you want to try to talk him out of his precious book, he is there. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30458-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30458-02.html new file mode 100644 index 0000000000..42c7a97cd2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30458-02.html @@ -0,0 +1,3 @@ +Blacksmith Poitan:
+I told you the book has already been sold to Elder Casian from the Wastelands! Go to the Wastelands if you want the book! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30458-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30458-03.html new file mode 100644 index 0000000000..a4c3ded435 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30458-03.html @@ -0,0 +1,3 @@ +Blacksmith Poitan:
+I guess Elder Casian gave you work to do. Well, nothing is free, my friend. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30458-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30458-04.html new file mode 100644 index 0000000000..8de4d5cb56 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30458-04.html @@ -0,0 +1,3 @@ +Blacksmith Poitan:
+You have found all 4 of the books! Very impressive! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-01.html new file mode 100644 index 0000000000..b9d28ccbb4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-01.html @@ -0,0 +1,5 @@ +Magister Mirien:
+The Test of the Scholar is one that all Wizards must pass. Only those who possess a passion for research and humility in learning will advance to the level of high magic and knowledge.
+I can tell that research is not your strong suit. Each person has their own way. Some will be Warriors, and others will search for enlightenment through spirituality. I pray that you find your own road and overcome all the obstacles that you confront along the way.
+(Quest available only for Wizards or Elven Wizards above Level 35 ) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-02.html new file mode 100644 index 0000000000..992a74a097 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-02.html @@ -0,0 +1,6 @@ +Magister Mirien:
+'Scholar' is a term used to describe all high level Magicians of the Ivory Tower. They are the ones we count on to research magic and make sense of the chaotic world we live in. They are also charged with educating our young...
+The Scholar is qualified to teach the highest-level magic.
+The Scholar's Trial determines if one is qualified for this responsibility. If you choose to advance your learning, you must pass this trial. However, at this time I don't think that you are ready. As the great Magician Akenias said, "There is a right time for all learning."
+(Quest available only for Wizards or Elven Wizards above Level 35 ) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-03.htm new file mode 100644 index 0000000000..5040a88368 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-03.htm @@ -0,0 +1,5 @@ +Magister Mirien:
+'Scholar' is a term used to describe all high level Magicians of the Ivory Tower. They are the ones we count on to research magic and make sense of the chaotic world we live in. They are also charged with educating our young...
+The Scholar is qualified to teach the highest-level magic.
The Scholar's Trial determines if one is qualified for this responsibility. If you choose to advance your learning, you must pass this trial. However, you still look a little green to me. As the great Magician Akenias said, "Knowledge must be won." If you think that you are ready, do not hesitate to accept the challenge.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-04.htm new file mode 100644 index 0000000000..1f326c49f1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-04.htm @@ -0,0 +1,5 @@ +Magister Mirien:
+Now you must seek the highly respected Scholar Magicians and complete the tasks that they give you. Once you complete all the tasks, you will qualify for the trial.
+First you should see High Priest Sylvain. He knows more than anyone about light's purifying power. He is also in charge of the spiritual purification of Dion territory. Previously he participated in the Elves' plan to purify the Sea of Spores.
+Take this mark to the High Priest and then come back to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-04a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-04a.htm new file mode 100644 index 0000000000..b3ba2341f6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-04a.htm @@ -0,0 +1,6 @@ +Magister Mirien:
+Very well. You must meet with well-respected scholar mystics and complete the tasks they give you in order to qualify.
+First, visit High Priest Sylvain. He has studied the cleansing power of light more deeply than anyone else and oversees the spiritual cleansing of Dion territory. Rumor has it that he even assisted the Elves in their previous attempts to cleanse the Sea of Spores.
+Bear this mark to him and he will give you an appropriate task. When he have accomplished it, return to me.
+Finally, accept this Dimension Diamond. You can trade it to the village gatekeeper for something special that may help you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-05.html new file mode 100644 index 0000000000..b6ec4f636b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-05.html @@ -0,0 +1,4 @@ +Magister Mirien:
+Did you meet the High Priest Sylvain? He is here in this temple.
+The High Priest Sylvain will give you a task concerning the 'Scholar's Trial'. When you have completed it, come back to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-06.html new file mode 100644 index 0000000000..e37287b02a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-06.html @@ -0,0 +1,5 @@ +Magister Mirien:
+Good job. I understand that High Priest Sylvain asked you to bring back the Crystal of Purity? I am glad to see that my concerns were unjustified. Congratulations!
+Now you should see Grand Magister Jurek. He can be found at the Wizard Guild of the Town of Giran. He once was Chief Wizard of the Ivory Tower, but grew weary of the factional infighting within the Ivory Tower and quit.
+Now, take this mark and go see Jurek in the Town of Giran. I wish you a safe journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-07.html new file mode 100644 index 0000000000..64d4715514 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-07.html @@ -0,0 +1,4 @@ +Magister Mirien:
+Have you met Grand Magister Jurek? He is in the Wizard's Guild of the Town of Giran.
+You must complete the task he gives you in order to advance. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-08.html new file mode 100644 index 0000000000..ff162310bc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-08.html @@ -0,0 +1,5 @@ +Magister Mirien:
+You have brought the mark of Grand Magister Jurek! Good job. Your integrity gladdens my heart.
+There is only one challenge remaining, expand your abilities and do your best.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-09.html new file mode 100644 index 0000000000..bcefaee1ed --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-09.html @@ -0,0 +1,4 @@ +Magister Mirien:
+You are in danger of getting hurt! You have done well up to now, but are headed for disaster.
+May I suggest that you return after some more education. When you are ready I'll let you go on to the next trial. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-10.html new file mode 100644 index 0000000000..07bc90b2b3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-10.html @@ -0,0 +1,6 @@ +Magister Mirien:
+For your last task you must see Elder Cronos. He is the wisest prophet and the greatest scholar of all time. He is so old that he is mentioned in our history books, although no one actually knows how old he is or even his true name... It is said that he has been alive since the age of Elmoreden!
+He does have his detractors, however, with some going so far as to call him a swindler! However, I met him during my days of discipline and, in my opinion, he is the true prophet.
+He currently lives in seclusion in Hunters Village. Occasionally he will venture out to join us in a trial in the hope of meeting some young scholars.
+Go and see Elder Cronos and take this mark with you. Accomplishing the task that he will give you is the final step of this trial. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-11.html new file mode 100644 index 0000000000..09787ad385 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-11.html @@ -0,0 +1,3 @@ +Magister Mirien:
+Are you hard of hearing? Your time has not come. Come back when you have completed more training. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-12.html new file mode 100644 index 0000000000..d55a15f83d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-12.html @@ -0,0 +1,6 @@ +Magister Mirien:
+For your last task you must see Elder Cronos. He is the wisest prophet and the greatest scholar of all time. He is so old that he is mentioned in our history books, although no one actually knows how old he is or even what his true name is... It is said that he has been alive since the age of Elmoreden.
+He does have his detractors, however, with some going so far as to call him a swindler! However, I met him during my days of discipline and, in my opinion, he is the true prophet.
+He currently lives in seclusion in Hunters Village. Occasionally he will venture out to join us in a trial in the hope of meeting some young scholars.
+Go and see Elder Cronos and take this mark with you. Accomplishing the task that he will give you is the final step of this trial. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-13.html new file mode 100644 index 0000000000..a3adb4dffe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-13.html @@ -0,0 +1,4 @@ +Magister Mirien:
+Did you meet Elder Cronos? He is in seclusion in Hunters Village.
+To complete the Test of the Scholar, you must accomplish the task that he gives you. Good luck. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-14.html new file mode 100644 index 0000000000..a5a816d734 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30461-14.html @@ -0,0 +1,4 @@ +Magister Mirien:
+You've brought the Symbol of Cronos! Did you have any trouble? I have to admit, I wondered if you could do it. Please don't take any offense at that -- it's no reflection on your ability, simply the difficulty of the task.
+But with all sincerity, please accept my congratulations. You have passed the Trial of the Scholar and are now one step closer to achieving a higher level of wisdom and knowledge. Take this Mark of Scholar. You will need it when you transfer to a higher class. May the Goddess protect and keep you. Farewell! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-01.html new file mode 100644 index 0000000000..f73d119e48 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-01.html @@ -0,0 +1,5 @@ +Maria:
+So, you seek the Crystal of Purity?
+Traditionally the first born daughter of our family inherits the recipe for the crystal. My aunt, who passed the recipe to me, died in a peasants' uprising. Since then I have given up making Crystals of Purity.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-02.html new file mode 100644 index 0000000000..edbb45f573 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-02.html @@ -0,0 +1,5 @@ +Maria:
+The execution grounds...? Oh yes... Many lives were lost unjustly there. Most of my family was among them...
+I will help you in order to put their souls at rest.
+A month ago the recipe for the crystal was stolen from me. I reported this incident to the guards but have not heard anything from them. Take this letter to Captain Lucas and ask about the progress of the investigation. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-03.html new file mode 100644 index 0000000000..377c3fe099 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-03.html @@ -0,0 +1,3 @@ +Maria:
+If you expect me to make the Crystal of Purity, you should go and ask Captain Lucas how the investigation is going. Without his help, it will be impossible to find the lost scrolls, and without the scrolls, the crystal cannot be made. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-04.html new file mode 100644 index 0000000000..45e0737f59 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-04.html @@ -0,0 +1,6 @@ +Maria:
+I must have the scrolls in order to help you...
+Lucas's mention of the fortune-teller reminds me of something... I know an astrologer who is an old friend of my family. I haven't seen her since the peasant's uprising...
+Her name is Creta the Astrologer. You should be able to find her in Floran Village.
+Take her this letter. I think she may be able to help us... Please. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-05.html new file mode 100644 index 0000000000..72d7ee8f73 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-05.html @@ -0,0 +1,3 @@ +Maria:
+Go and meet the Astrologer Creta of Floran Village. He will help us to find the lost scrolls. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-06.html new file mode 100644 index 0000000000..21fc6fd9fb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-06.html @@ -0,0 +1,6 @@ +Maria:
+How is Creta? I remember her as a kind woman, although she tends to mumble...
+Did she give you any clue as to the location of the scrolls?

+You mean Creta said so? Let me see... Ah, yes, I remember the day...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-07.html new file mode 100644 index 0000000000..59ac317c8f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-07.html @@ -0,0 +1,5 @@ +Maria:
+It wasn't very much different from any other day. I was alone, daydreaming as usual. As always, my thoughts eventually returned to that horrible day...
+Then my childhood friend Lucilla came to visit. We went out together and I had more fun than I have in years. We stayed the night in Gludin. The next morning we parted, going to our respective homes. When I got there my house had been ransacked and the scroll stolen from its locker. The only thing undisturbed was Lucilla's Handbag that she left behind.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-08.html new file mode 100644 index 0000000000..6b29fede14 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-08.html @@ -0,0 +1,3 @@ +Maria:
+Do you really think that this could possibly be the clue that Creta had asked for? Hmm... Maybe...! Then go ahead and take the handbag, but don't let Lucilla know, she would most likely be upset. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-09.html new file mode 100644 index 0000000000..ac2fd8b7c0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-09.html @@ -0,0 +1,3 @@ +Maria:
+You think Lucilla's Handbag could be a clue? Then by all means, take it to Astrologer Creta! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-10.html new file mode 100644 index 0000000000..18fc7628c1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-10.html @@ -0,0 +1,4 @@ +Maria:
+So Creta drew this? Hmm... Look here! What is that strange shadow? Could it be the figure of the thief? It is very hard to make out. It appears to not be human...
+We should show this to Captain Lucas... He is an expert in this field and should be able to help us. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-11.html new file mode 100644 index 0000000000..7d8b4b0650 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-11.html @@ -0,0 +1,3 @@ +Maria:
+Show Creta's painting to Captain Lucas. I'll wager Lucas can tell us who's shadow it is. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-12.html new file mode 100644 index 0000000000..106c60fd0c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-12.html @@ -0,0 +1,4 @@ +Maria:
+The Leto Lizardman Warrior? Lucas says this? Well, he should know...
+I beg you... Please track down the lizardmen and recover the scrolls. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-13.html new file mode 100644 index 0000000000..ac237c6498 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-13.html @@ -0,0 +1,8 @@ +Maria:
+You've torn the scroll! How could you have been so careless?!
+Well, perhaps we can piece it together and make out what it says.
+How ironic that it should fall to me to create the crystal that will purify this land.
+I will reopen Maria's Crystal Workshop!
+And you shall have my first product... Please wait, it won't take long.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-14.html new file mode 100644 index 0000000000..58fa35e9c0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-14.html @@ -0,0 +1,4 @@ +Maria:
+The Crystal of Purity is complete... May this crystal pacify the souls of my family.
+Take it now. I shall continue making more. I wish you a future that shines as brightly as this crystal. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-15.html new file mode 100644 index 0000000000..cbe0b157ca --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-15.html @@ -0,0 +1,3 @@ +Maria:
+You said that you would use this crystal to purge the dark energy from the Execution Grounds? You must hurry and give it to High Priest Sylvain. I hope that the purification of that place will soon be achieved. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-16.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-16.html new file mode 100644 index 0000000000..9da24b09bb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-16.html @@ -0,0 +1,3 @@ +Maria:
+I am happy to see you again. How is your task coming along? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-17.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-17.html new file mode 100644 index 0000000000..0c41a8a44a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-17.html @@ -0,0 +1,3 @@ +Maria:
+I pray that the crystals I make will always be used for good. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-18.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-18.html new file mode 100644 index 0000000000..0a7784c440 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30608-18.html @@ -0,0 +1,4 @@ +Maria:
+Ah, you seek the Crystal of Purity? Well, you helped me, so I can't say no. I will give you a Crystal of Purity.
+I want to be perfectly clear, you must not use this for any dark purpose! Take this Crystal of Purity. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-01.html new file mode 100644 index 0000000000..cd802941ea --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-01.html @@ -0,0 +1,5 @@ +Astrologer Creta:
+Greetings. I have been waiting for you. Maria sent you, correct? By your expression, it must be. The stars are never wrong.
+We have no time to waste, please give me Maria's Letter.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-02.html new file mode 100644 index 0000000000..fe8bfc49f3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-02.html @@ -0,0 +1,7 @@ +Astrologer Creta:
+How is my old friend Maria? She seems to have nothing to live for since she stopped making the Crystal of Purity.
+This skill requires extensive knowledge of the coldness of the moon, and the waxing and waning of a star. I would like to help her in any way I can.
+You came to me seeking information, didn't you?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-03.html new file mode 100644 index 0000000000..686ab25d81 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-03.html @@ -0,0 +1,4 @@ +Astrologer Creta:
+I need more clues before I can determine the identity of the thief of the scroll. I only have a vague idea of who may have the scroll now. A clue that can be evidence is essential, do you understand?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-04.html new file mode 100644 index 0000000000..9d863b4ac4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-04.html @@ -0,0 +1,6 @@ +Astrologer Creta:
+My divination skills seem to be failing me lately, dark clouds cover the future of all I see. There are surely dark days ahead for the Kingdom. We must keep the faith.
+I sense that you are in the midst of an important test, perhaps one that will benefit Maria?
+I also sense that you have a question for me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-05.html new file mode 100644 index 0000000000..997854f6c8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-05.html @@ -0,0 +1,4 @@ +Astrologer Creta:
+The clue I need is an item from the place where the incident happened. It could be anything, I only know that it is related to the incident.
+Bring one clue for me. Speak with Maria, she can answer questions about any object associated with the incident. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-06.html new file mode 100644 index 0000000000..22199d81ff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-06.html @@ -0,0 +1,3 @@ +Astrologer Creta:
+I am not getting anywhere without any clues. Go to Maria and ask her for any object that is related to the incident. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-07.html new file mode 100644 index 0000000000..489c85c4d7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-07.html @@ -0,0 +1,5 @@ +Astrologer Creta:
+Ah, a handbag left by Maria's friend! Very interesting... Handbags are very important to most women. Only a very careless woman would leave such an object behind.
+This is certainly a sign of a future incident.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-08.html new file mode 100644 index 0000000000..ae0a3e71df --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-08.html @@ -0,0 +1,10 @@ +Astrologer Creta:
+Please be still, I am feeling something....
+...
+I see a shadow...
+A long, dark shadow that hugs the ground...
+Now the shadow stands on it's two legs...
+The arms and head are not human, and there is a tail!
+Hard to explain in words... This is my feeling...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-09.html new file mode 100644 index 0000000000..77f41aa00f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-09.html @@ -0,0 +1,4 @@ +

Astrologer Creta:
+A very good idea, I shall do my best....

Let's see, the arms were unusually long, and the head much larger than a human's. And the tail... It seemed as though the shadow was cast by one far away..


+Oh yes, one more thing before you go. . Soon you shall meet an ancient one. This meeting will be a part of the test you are taking. . You will return to this place soon.. Until then... Farewell....

+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-10.html new file mode 100644 index 0000000000..a35a4dc285 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-10.html @@ -0,0 +1,3 @@ +Astrologer Creta:
+This drawing will be a great help to you. You will surely be able to find the thief and retrieve Maria's scroll. Believe in yourself. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-11.html new file mode 100644 index 0000000000..40ede2f38e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-11.html @@ -0,0 +1,3 @@ +Astrologer Creta:
+I am very happy to help people find precious items that have been misplaced. Have you found that which you seek? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-12.html new file mode 100644 index 0000000000..1f32a8d2bd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-12.html @@ -0,0 +1,5 @@ +Astrologer Creta:
+As I foretold you have come to me again. I see from your face that you are somewhat uncomfortable with your situation.
+What can I do for you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-13.html new file mode 100644 index 0000000000..7bb6517050 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-13.html @@ -0,0 +1,5 @@ +Astrologer Creta:
+Another robbery, eh? 20 years ago? There was a recent robbery that I could see quite clearly, but one so far in the past, I cannot be sure.
+Let me attempt to see...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-14.html new file mode 100644 index 0000000000..5584a5e60e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-14.html @@ -0,0 +1,5 @@ +Astrologer Creta:
+I can see that you are still in a hurry. I have told you all that I have seen. There were many shadows, this means many culprits. I definitely recognize the shadow of a human.
+There are differences between shadows, but I see no more shadows of monsters.
+Take this letter explaining the situation back to the owner of the key.
There will come a day when we will meet again. I hope our next meeting is of a more pleasant nature. Until then. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-15.html new file mode 100644 index 0000000000..a776639837 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30609-15.html @@ -0,0 +1,3 @@ +Astrologer Creta:
+These days I am very happy to help people who have misplaced precious items. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-01.html new file mode 100644 index 0000000000..4928b2b14a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-01.html @@ -0,0 +1,9 @@ +Elder Cronos:
+Running errands for Mirien, are you? How are those greenhorns? Aren't they annoying when they ask you to do this and that? They call themselves High Priest or Grand Magister or whatever, but only their words are courageous.
+They probably don't even know any great magic... All of their 'knowledge' has come from books, they have no practical experience. 'That's the way of a Sorcerer' doesn't ring so true anymore, does it?
+OK, I'll ask you just one more time... Why do you want to learn magic?
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-02.html new file mode 100644 index 0000000000..e4f50ae340 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-02.html @@ -0,0 +1,5 @@ +Elder Cronos:
+Success? What do you mean, that you wish to succeed as a Mystic? Have you ever heard of a Mystic who became King? Well, there was Baium, the Emperor of Elmoreden, but he didn't become King as a Mystic! Do you get it? The highest calling you can achieve is the pursuit of wealth!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-03.html new file mode 100644 index 0000000000..1cda68d3e2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-03.html @@ -0,0 +1,5 @@ +Elder Cronos:
+You think you can build wealth with magic? How naive! Do you think that all the other Dwarves are wrong? They gave up magic long ago and used their limited intelligence for earning money! If you wish to learn to accumulate wealth, you should go to a Dwarf and learn from him.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-04.html new file mode 100644 index 0000000000..b8064e9500 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-04.html @@ -0,0 +1,5 @@ +Elder Cronos:
+You're so vain! Do you think people will respect you because you're a Magician? Ha! Showing off your magic like a trained monkey... Is that what you want? If you wish to earn the respect of others, the best way is to be generous. Yes, that's the best way!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-05.html new file mode 100644 index 0000000000..c2260eab89 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-05.html @@ -0,0 +1,5 @@ +Elder Cronos:
+No reason in particular, huh? Could it possibly be that the stupidest person in the world is in my presence? What are you thinking? Or are you thinking at all?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-06.html new file mode 100644 index 0000000000..ed762f14a7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-06.html @@ -0,0 +1,4 @@ +Elder Cronos:
+Ha! Cheeky, aren't you? Well, if you are sure that you are ready... Don't hang around here bawling if you fail...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-07.html new file mode 100644 index 0000000000..43843ca647 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-07.html @@ -0,0 +1,4 @@ +Elder Cronos:
+Ah ha, a flash of boldness! Good, that characteristic will serve you well. OK, you shall have the test. If you fail, don't think you can stand around here crying about it though...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-08.html new file mode 100644 index 0000000000..efbccad4b6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-08.html @@ -0,0 +1,4 @@ +Elder Cronos:
+What a cheeky youngster! Very well, you shall have the test. Now listen carefully, as I hate to repeat things! I also have no patience for laggards, so keep up! Are you ready?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-09.html new file mode 100644 index 0000000000..4858c7a3c1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-09.html @@ -0,0 +1,4 @@ +Elder Cronos:
+Over 100 years ago I wrote a book that some fool got ahold of and named 'The Scriptures of Knowledge'. 20 years ago the book disappeared, I'm not sure if it was stolen or if I lost it. Please find it for me.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-10.html new file mode 100644 index 0000000000..c702a5c140 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-10.html @@ -0,0 +1,3 @@ +Elder Cronos:
+Such a helpless child, must I do everything for you? If you are totally flummoxed I shall give you a clue. You must find Dieter from the Magister's Guild in Giran. He used to work for me... You should be able to get some advice from him. Don't waste time! Dieter will probably not want to talk to a greenhorn like you, take this mark and letter to introduce yourself! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-11.html new file mode 100644 index 0000000000..0f16997ae3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-11.html @@ -0,0 +1,3 @@ +Elder Cronos:
+Did you see Dieter? Did you meet my helpless pupil in the Magister's Guild of Giran? You must go and meet him. He will tell you about the Scriptures of Knowledge. Stop lolling about and leave right now! And don't come back until you have the book! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-12.html new file mode 100644 index 0000000000..5019ab30f3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-12.html @@ -0,0 +1,5 @@ +Sage Cronos:
+Impressive! You collected all 4 of them. Good work!
+Now a promise is a promise, and I believe I now owe you a mark?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-13.html new file mode 100644 index 0000000000..9635d40580 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-13.html @@ -0,0 +1,6 @@ +Elder Cronos:
+Well, yes, of course. There are 6. To tell you the truth, I know who has the other 2, and I am not inclined to get them back.
+As Dieter told you, the books are meaningless unless you have all 6. This knowledge could be very dangerous if it became widespread in the world.
+My book is a mere copy of the key of knowledge which the Gods used to teach the Giants the secrets of absolute geometry. I just transcribed this knowledge and have no intention of allowing this awkward copy loose upon the world. It must be kept from the grasp of greedy Humans and Dwarves at all costs.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-14.html new file mode 100644 index 0000000000..fe1a0a8b0a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-14.html @@ -0,0 +1,5 @@ +Elder Cronos:
+Absolute geometry evolved from the beginning of time. It contains all truth in the universe. Mathematics, dynamics, architecture, astronomy, and navigation were all derived from the absolute geometry. He who truly understands absolute geometry can control the world.
+The secrets of absolute geometry are contained on Maphr's Tablet Fragment, written in the ancient language of the Giants. Word has come that the Dwarves have been trying to obtain the tablet... I shudder to think of the consequences if this knowledge should fall into the hands of those greedy creatures!
+The Scriptures of Knowledge contains the secrets of absolute geometry written down in understandable language. Do you have any idea how dangerous this knowledge is? You must bring it back. Even though it was only a part that I transcribed... And with only 4 books the knowledge should be safe... We cannot be too careful... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-15.html new file mode 100644 index 0000000000..b516c01e07 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30610-15.html @@ -0,0 +1,3 @@ +Elder Cronos:
+Why have you returned? Stop bothering me and go see Mirien! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-01.html new file mode 100644 index 0000000000..823083e7a6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-01.html @@ -0,0 +1,7 @@ +Drunkard Triff:
+Who are you~hiccup
+Raut? Who is that, hiccup~
+Leave me alone! I don't want any!
+Again...one shot for sea, one shot for me. Two shots for me, one shot for sea...hiccup!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-02.html new file mode 100644 index 0000000000..af19c3380c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-02.html @@ -0,0 +1,8 @@ +Drunkard Triff:
+Uh, is this wine? For me?
+Woohoo! What a pal! hiccup~
+Yeah, Raut is my great big brother, hiccup.
+Is that the first book you have there? Put it away! Hiccup~!
+When I think of my friends, sob, hiccup, sob~
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-03.html new file mode 100644 index 0000000000..a8ceae8cf3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-03.html @@ -0,0 +1,8 @@ +Drunkard Triff:
+Sob...hiccup~! My poor friends...?
+Hiccup~ yes, it was the time that Despe.., he told us to steal the books from that difficult man. He offered us a tidy sum of money for them, too. Burp~!
+But you see, we discovered that these were extraordinary books! Hiccup~!
+So we decided to keep them for ourselves. Hiccup~ First we went to my brother's house and split up the books and then went our separate ways.
+We promised to reunite when things calmed down. Hiccup~ Now my friends will never return...sob...sob~
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-04.html new file mode 100644 index 0000000000..edf866ac3b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-04.html @@ -0,0 +1,7 @@ +Drunkard Triff:
+Hiccup~ Everyone but I was confronted by Des... something?! He is an unusually cruel and deceitful Magician. Damn! Burp~!
+Ever the hero, I gathered the scriptures and hid them away before he could find them. But the third one was lost to the forces of evil, the dastardly Grandis, a huge monster living in Giran. Hiccup~!
+But, now all is lost, hiccup~ all my friends are dead and I'm alone... sob...
+The second book and the fourth book are entrusted to the Warehouse Keeper Valkon at Giran and the Blacksmith Poitan at Dion. Hiccup~ Take my ring and meet them.
+Burp~I don't feel so good. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-05.html new file mode 100644 index 0000000000..b8b87272d9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-05.html @@ -0,0 +1,6 @@ +Drunkard Triff:
+Hiccup~! Wow great~!
+One shot for sea, one shot for me~
+Two shots for me, One shot for sea~
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-06.html new file mode 100644 index 0000000000..e11fb32f02 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30611-06.html @@ -0,0 +1,5 @@ +Drunkard Triff:
+Hey, you! Hiccup~! I've already told you all I know...Hiccup~!
+The 3rd book was stolen by the two-headed Grandis~! Hiccup~!
The 2nd book was given to Warehouse Keeper Valkon~! Burp~!
+Hiccup~! The 4th book was given to Blacksmith Poitan~! Burp~I feel dizzy! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-01.html new file mode 100644 index 0000000000..fa4d35304c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-01.html @@ -0,0 +1,4 @@ +Elder Casian:
+So, you have come for the 4th volume of the Scriptures of Knowledge? I understand your situation but it is not something that I can give freely. Do you have any idea of the power of these volumes? .
+They contain the knowledge of the Giants' technology that was thought lost for millennia! The absolute geometry... It's a pity that we can't decipher the texts since we are missing volumes 1, 2, and 3... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-02.html new file mode 100644 index 0000000000..40476bff06 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-02.html @@ -0,0 +1,5 @@ +Elder Casian:
+You are looking for Chapter 4 of the sacred scripture? That is not something that I can hand over easily. Do you know what the scripture contains? Nothing less than all the knowledge of the world!
+This book may yet reveal the lost knowledge and science of the Giants, who have long since vanished from this world. Oh, the ultimate secrets of geometry... I lack the rest of chapters 1, 2 and 3, so many details are still unknown to me.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-03.html new file mode 100644 index 0000000000..f4762a2603 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-03.html @@ -0,0 +1,5 @@ +Elder Casian:
+What is that? You have the rest of the scripture? Could it be true?
+This sounds acceptable, but let me make a copy for myself. It won't take too long if we use magic instead transcribing it by hand. We will need some special materials for it, though. Would you help me gather the ingredients?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-04.html new file mode 100644 index 0000000000..07626c71ff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-04.html @@ -0,0 +1,8 @@ +Elder Casian:
+Excellent. Here is what we'll need.
+10 pieces of Ghoul's Skin, 12 bottles of Medusa's Blood, 5 bottles of Fettered Soul's Ichor, and 5 Enhanced Gargoyle Nails.
+You must get the Ghoul's Skin from the Ghoul himself. He can be found in the execution place of Dion.
+You must collect the Medusa's Blood from the medusas that you can find in the northern part of Giran.
+The Fettered Soul has been seen frequently in the Corridors of Death.
+Last, the Enhanced Gargoyle Nail... Among all the materials that you must find, this will be the most difficult. The Enhanced Gargoyles are much stronger than any of the other creatures. They may be found near the Ivory Tower of Oren. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-05.html new file mode 100644 index 0000000000..c0ff39294f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-05.html @@ -0,0 +1,3 @@ +Elder Casian:
+When you bring all the materials that I have requested, I will make a copy of the texts. I will then give you the 4th volume. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-06.html new file mode 100644 index 0000000000..842c51d156 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-06.html @@ -0,0 +1,6 @@ +Elder Casian:
+I see that you have obtained all the materials! Good job! An old Sage like me is no good at chasing down magical creatures... Thank you very much. The copying will be finished soon. Please wait a minute...
+Here we go... All done. This is truly a momentous occasion. Here, I'll give you back volumes 1, 2 and 3, and here's my 4th volume...
+Hold on! What is this?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-07.html new file mode 100644 index 0000000000..b4df4b5f57 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-07.html @@ -0,0 +1,3 @@ +Elder Casian:
+What in blazes? I understood that there were only 4 volumes of the Scriptures of Knowledge... But now this! It says that there is one before the 1st and one after the 4th...! How could it be...? Without those two, we won't be able to understand the Scripture! What a blow! To find 4 volumes and then discover that it is not enough... Now I will never be able to decipher the texts... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-08.html new file mode 100644 index 0000000000..5743314b93 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/30612-08.html @@ -0,0 +1,3 @@ +Elder Casian:
+So you have acquired the 4 original copies of the existing Scriptures. An admirable feat, but as I said, without the introduction and the 5th volume it will be impossible to fully understand its meaning. What a shame. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/Q00214_TrialOfTheScholar.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/Q00214_TrialOfTheScholar.java new file mode 100644 index 0000000000..afe0c4ca4c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00214_TrialOfTheScholar/Q00214_TrialOfTheScholar.java @@ -0,0 +1,1078 @@ +/* + * 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.Q00214_TrialOfTheScholar; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Trial Of The Scholar (214) + * @author ivantotov + */ +public final class Q00214_TrialOfTheScholar extends Quest +{ + // NPCs + private static final int HIGH_PRIEST_SYLVAIN = 30070; + private static final int CAPTAIN_LUCAS = 30071; + private static final int WAREHOUSE_KEEPER_VALKON = 30103; + private static final int MAGISTER_DIETER = 30111; + private static final int GRAND_MAGISTER_JUREK = 30115; + private static final int TRADER_EDROC = 30230; + private static final int WAREHOUSE_KEEPER_RAUT = 30316; + private static final int BLACKSMITH_POITAN = 30458; + private static final int MAGISTER_MIRIEN = 30461; + private static final int MARIA = 30608; + private static final int ASTROLOGER_CRETA = 30609; + private static final int ELDER_CRONOS = 30610; + private static final int DRUNKARD_TRIFF = 30611; + private static final int ELDER_CASIAN = 30612; + // Items + private static final int MIRIENS_1ST_SIGIL = 2675; + private static final int MIRIENS_2ND_SIGIL = 2676; + private static final int MIRIENS_3RD_SIGIL = 2677; + private static final int MIRIENS_INSTRUCTION = 2678; + private static final int MARIAS_1ST_LETTER = 2679; + private static final int MARIAS_2ND_LETTER = 2680; + private static final int LUCASS_LETTER = 2681; + private static final int LUCILLAS_HANDBAG = 2682; + private static final int CRETAS_1ST_LETTER = 2683; + private static final int CRERAS_PAINTING1 = 2684; + private static final int CRERAS_PAINTING2 = 2685; + private static final int CRERAS_PAINTING3 = 2686; + private static final int BROWN_SCROLL_SCRAP = 2687; + private static final int CRYSTAL_OF_PURITY1 = 2688; + private static final int HIGH_PRIESTS_SIGIL = 2689; + private static final int GRAND_MAGISTER_SIGIL = 2690; + private static final int CRONOS_SIGIL = 2691; + private static final int SYLVAINS_LETTER = 2692; + private static final int SYMBOL_OF_SYLVAIN = 2693; + private static final int JUREKS_LIST = 2694; + private static final int MONSTER_EYE_DESTROYER_SKIN = 2695; + private static final int SHAMANS_NECKLACE = 2696; + private static final int SHACKLES_SCALP = 2697; + private static final int SYMBOL_OF_JUREK = 2698; + private static final int CRONOS_LETTER = 2699; + private static final int DIETERS_KEY = 2700; + private static final int CRETAS_2ND_LETTER = 2701; + private static final int DIETERS_LETTER = 2702; + private static final int DIETERS_DIARY = 2703; + private static final int RAUTS_LETTER_ENVELOPE = 2704; + private static final int TRIFFS_RING = 2705; + private static final int SCRIPTURE_CHAPTER_1 = 2706; + private static final int SCRIPTURE_CHAPTER_2 = 2707; + private static final int SCRIPTURE_CHAPTER_3 = 2708; + private static final int SCRIPTURE_CHAPTER_4 = 2709; + private static final int VALKONS_REQUEST = 2710; + private static final int POITANS_NOTES = 2711; + private static final int STRONG_LIGUOR = 2713; + private static final int CRYSTAL_OF_PURITY2 = 2714; + private static final int CASIANS_LIST = 2715; + private static final int GHOULS_SKIN = 2716; + private static final int MEDUSAS_BLOOD = 2717; + private static final int FETTERED_SOULS_ICHOR = 2718; + private static final int ENCHANTED_GARGOYLES_NAIL = 2719; + private static final int SYMBOL_OF_CRONOS = 2720; + // Reward + private static final int MARK_OF_SCHOLAR = 2674; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monsters + private static final int MONSTER_EYE_DESTREOYER = 20068; + private static final int MEDUSA = 20158; + private static final int GHOUL = 20201; + private static final int SHACKLE1 = 20235; + private static final int BREKA_ORC_SHAMAN = 20269; + private static final int SHACKLE2 = 20279; + private static final int FETTERED_SOUL = 20552; + private static final int GRANDIS = 20554; + private static final int ENCHANTED_GARGOYLE = 20567; + private static final int LETO_LIZARDMAN_WARRIOR = 20580; + // Misc + private static final int MIN_LVL = 35; + private static final int LEVEL = 36; + + public Q00214_TrialOfTheScholar() + { + super(214); + addStartNpc(MAGISTER_MIRIEN); + addTalkId(MAGISTER_MIRIEN, HIGH_PRIEST_SYLVAIN, CAPTAIN_LUCAS, WAREHOUSE_KEEPER_VALKON, MAGISTER_DIETER, GRAND_MAGISTER_JUREK, TRADER_EDROC, WAREHOUSE_KEEPER_RAUT, BLACKSMITH_POITAN, MARIA, ASTROLOGER_CRETA, ELDER_CRONOS, DRUNKARD_TRIFF, ELDER_CASIAN); + addKillId(MONSTER_EYE_DESTREOYER, MEDUSA, GHOUL, SHACKLE1, BREKA_ORC_SHAMAN, SHACKLE2, FETTERED_SOUL, GRANDIS, ENCHANTED_GARGOYLE, LETO_LIZARDMAN_WARRIOR); + registerQuestItems(MIRIENS_1ST_SIGIL, MIRIENS_2ND_SIGIL, MIRIENS_3RD_SIGIL, MIRIENS_INSTRUCTION, MARIAS_1ST_LETTER, MARIAS_2ND_LETTER, LUCASS_LETTER, LUCILLAS_HANDBAG, CRETAS_1ST_LETTER, CRERAS_PAINTING1, CRERAS_PAINTING1, CRERAS_PAINTING3, BROWN_SCROLL_SCRAP, CRYSTAL_OF_PURITY1, HIGH_PRIESTS_SIGIL, GRAND_MAGISTER_SIGIL, CRONOS_SIGIL, SYLVAINS_LETTER, SYMBOL_OF_SYLVAIN, JUREKS_LIST, MONSTER_EYE_DESTROYER_SKIN, SHAMANS_NECKLACE, SHACKLES_SCALP, SYMBOL_OF_JUREK, CRONOS_LETTER, DIETERS_KEY, CRETAS_2ND_LETTER, DIETERS_LETTER, DIETERS_DIARY, RAUTS_LETTER_ENVELOPE, TRIFFS_RING, SCRIPTURE_CHAPTER_1, SCRIPTURE_CHAPTER_2, SCRIPTURE_CHAPTER_3, SCRIPTURE_CHAPTER_4, VALKONS_REQUEST, POITANS_NOTES, STRONG_LIGUOR, CRYSTAL_OF_PURITY2, CASIANS_LIST, GHOULS_SKIN, MEDUSAS_BLOOD, FETTERED_SOULS_ICHOR, ENCHANTED_GARGOYLES_NAIL, SYMBOL_OF_CRONOS); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + if (!hasQuestItems(player, MIRIENS_1ST_SIGIL)) + { + giveItems(player, MIRIENS_1ST_SIGIL, 1); + } + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 168); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30461-04a.htm"; + } + else + { + htmltext = "30461-04.htm"; + } + } + break; + } + case "30103-02.html": + case "30103-03.html": + case "30111-02.html": + case "30111-03.html": + case "30111-04.html": + case "30111-08.html": + case "30111-14.html": + case "30115-02.html": + case "30316-03.html": + case "30461-09.html": + case "30608-07.html": + case "30609-02.html": + case "30609-03.html": + case "30609-04.html": + case "30609-08.html": + case "30609-13.html": + case "30610-02.html": + case "30610-03.html": + case "30610-04.html": + case "30610-05.html": + case "30610-06.html": + case "30610-07.html": + case "30610-08.html": + case "30610-09.html": + case "30610-13.html": + case "30611-02.html": + case "30611-03.html": + case "30611-06.html": + case "30612-03.html": + { + htmltext = event; + break; + } + case "30461-10.html": + { + if (hasQuestItems(player, MIRIENS_2ND_SIGIL, SYMBOL_OF_JUREK)) + { + takeItems(player, MIRIENS_2ND_SIGIL, 1); + giveItems(player, MIRIENS_3RD_SIGIL, 1); + takeItems(player, SYMBOL_OF_JUREK, 1); + qs.setCond(19, true); + htmltext = event; + } + break; + } + case "30070-02.html": + { + giveItems(player, HIGH_PRIESTS_SIGIL, 1); + giveItems(player, SYLVAINS_LETTER, 1); + qs.setCond(2, true); + htmltext = event; + break; + } + case "30071-04.html": + { + if (hasQuestItems(player, CRERAS_PAINTING2)) + { + takeItems(player, CRERAS_PAINTING2, 1); + giveItems(player, CRERAS_PAINTING3, 1); + qs.setCond(10, true); + htmltext = event; + } + break; + } + case "30103-04.html": + { + giveItems(player, VALKONS_REQUEST, 1); + htmltext = event; + break; + } + case "30111-05.html": + { + if (hasQuestItems(player, CRONOS_LETTER)) + { + takeItems(player, CRONOS_LETTER, 1); + giveItems(player, DIETERS_KEY, 1); + qs.setCond(21, true); + htmltext = event; + } + break; + } + case "30111-09.html": + { + if (hasQuestItems(player, CRETAS_2ND_LETTER)) + { + takeItems(player, CRETAS_2ND_LETTER, 1); + giveItems(player, DIETERS_LETTER, 1); + giveItems(player, DIETERS_DIARY, 1); + qs.setCond(23, true); + htmltext = event; + } + break; + } + case "30115-03.html": + { + giveItems(player, JUREKS_LIST, 1); + giveItems(player, GRAND_MAGISTER_SIGIL, 1); + qs.setCond(16, true); + htmltext = event; + break; + } + case "30230-02.html": + { + if (hasQuestItems(player, DIETERS_LETTER)) + { + takeItems(player, DIETERS_LETTER, 1); + giveItems(player, RAUTS_LETTER_ENVELOPE, 1); + qs.setCond(24, true); + htmltext = event; + } + break; + } + case "30316-02.html": + { + if (hasQuestItems(player, RAUTS_LETTER_ENVELOPE)) + { + takeItems(player, RAUTS_LETTER_ENVELOPE, 1); + giveItems(player, SCRIPTURE_CHAPTER_1, 1); + giveItems(player, STRONG_LIGUOR, 1); + qs.setCond(25, true); + htmltext = event; + } + break; + } + case "30608-02.html": + { + if (hasQuestItems(player, SYLVAINS_LETTER)) + { + giveItems(player, MARIAS_1ST_LETTER, 1); + takeItems(player, SYLVAINS_LETTER, 1); + qs.setCond(3, true); + htmltext = event; + } + break; + } + case "30608-08.html": + { + if (hasQuestItems(player, CRETAS_1ST_LETTER)) + { + giveItems(player, LUCILLAS_HANDBAG, 1); + takeItems(player, CRETAS_1ST_LETTER, 1); + qs.setCond(7, true); + htmltext = event; + } + break; + } + case "30608-14.html": + { + if (hasQuestItems(player, CRERAS_PAINTING3)) + { + takeItems(player, CRERAS_PAINTING3, 1); + takeItems(player, BROWN_SCROLL_SCRAP, -1); + giveItems(player, CRYSTAL_OF_PURITY1, 1); + qs.setCond(13, true); + htmltext = event; + } + break; + } + case "30609-05.html": + { + if (hasQuestItems(player, MARIAS_2ND_LETTER)) + { + takeItems(player, MARIAS_2ND_LETTER, 1); + giveItems(player, CRETAS_1ST_LETTER, 1); + qs.setCond(6, true); + htmltext = event; + } + break; + } + case "30609-09.html": + { + if (hasQuestItems(player, LUCILLAS_HANDBAG)) + { + takeItems(player, LUCILLAS_HANDBAG, 1); + giveItems(player, CRERAS_PAINTING1, 1); + qs.setCond(8, true); + htmltext = event; + } + break; + } + case "30609-14.html": + { + if (hasQuestItems(player, DIETERS_KEY)) + { + takeItems(player, DIETERS_KEY, 1); + giveItems(player, CRETAS_2ND_LETTER, 1); + qs.setCond(22, true); + htmltext = event; + } + break; + } + case "30610-10.html": + { + giveItems(player, CRONOS_SIGIL, 1); + giveItems(player, CRONOS_LETTER, 1); + qs.setCond(20, true); + htmltext = event; + break; + } + case "30610-14.html": + { + if (hasQuestItems(player, SCRIPTURE_CHAPTER_1, SCRIPTURE_CHAPTER_2, SCRIPTURE_CHAPTER_3, SCRIPTURE_CHAPTER_4)) + { + takeItems(player, CRONOS_SIGIL, 1); + takeItems(player, DIETERS_DIARY, 1); + takeItems(player, TRIFFS_RING, 1); + takeItems(player, SCRIPTURE_CHAPTER_1, 1); + takeItems(player, SCRIPTURE_CHAPTER_2, 1); + takeItems(player, SCRIPTURE_CHAPTER_3, 1); + takeItems(player, SCRIPTURE_CHAPTER_4, 1); + giveItems(player, SYMBOL_OF_CRONOS, 1); + qs.setCond(31, true); + htmltext = event; + } + break; + } + case "30611-04.html": + { + if (hasQuestItems(player, STRONG_LIGUOR)) + { + giveItems(player, TRIFFS_RING, 1); + takeItems(player, STRONG_LIGUOR, 1); + qs.setCond(26, true); + htmltext = event; + } + break; + } + case "30612-04.html": + { + giveItems(player, CASIANS_LIST, 1); + qs.setCond(28, true); + htmltext = event; + break; + } + case "30612-07.html": + { + giveItems(player, SCRIPTURE_CHAPTER_4, 1); + takeItems(player, POITANS_NOTES, 1); + takeItems(player, CASIANS_LIST, 1); + takeItems(player, GHOULS_SKIN, -1); + takeItems(player, MEDUSAS_BLOOD, -1); + takeItems(player, FETTERED_SOULS_ICHOR, -1); + takeItems(player, ENCHANTED_GARGOYLES_NAIL, -1); + qs.setCond(30, true); + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case MONSTER_EYE_DESTREOYER: + { + if (hasQuestItems(killer, MIRIENS_2ND_SIGIL, GRAND_MAGISTER_SIGIL, JUREKS_LIST) && (getQuestItemsCount(killer, MONSTER_EYE_DESTROYER_SKIN) < 5)) + { + giveItems(killer, MONSTER_EYE_DESTROYER_SKIN, 1); + if ((getQuestItemsCount(killer, MONSTER_EYE_DESTROYER_SKIN) == 5) && (getQuestItemsCount(killer, SHAMANS_NECKLACE) >= 5) && (getQuestItemsCount(killer, SHACKLES_SCALP) >= 2)) + { + qs.setCond(17, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MEDUSA: + { + if (hasQuestItems(killer, TRIFFS_RING, POITANS_NOTES, CASIANS_LIST) && (getQuestItemsCount(killer, MEDUSAS_BLOOD) < 12)) + { + giveItems(killer, MEDUSAS_BLOOD, 1); + if (getQuestItemsCount(killer, MEDUSAS_BLOOD) == 12) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case GHOUL: + { + if (hasQuestItems(killer, TRIFFS_RING, POITANS_NOTES, CASIANS_LIST) && (getQuestItemsCount(killer, GHOULS_SKIN) < 10)) + { + giveItems(killer, GHOULS_SKIN, 1); + if (getQuestItemsCount(killer, GHOULS_SKIN) == 10) + { + qs.setCond(29, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case SHACKLE1: + case SHACKLE2: + { + if (hasQuestItems(killer, MIRIENS_2ND_SIGIL, GRAND_MAGISTER_SIGIL, JUREKS_LIST) && (getQuestItemsCount(killer, SHACKLES_SCALP) < 2)) + { + giveItems(killer, SHACKLES_SCALP, 1); + if ((getQuestItemsCount(killer, MONSTER_EYE_DESTROYER_SKIN) >= 5) && (getQuestItemsCount(killer, SHAMANS_NECKLACE) >= 5) && (getQuestItemsCount(killer, SHACKLES_SCALP) == 2)) + { + qs.setCond(17, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case BREKA_ORC_SHAMAN: + { + if (hasQuestItems(killer, MIRIENS_2ND_SIGIL, GRAND_MAGISTER_SIGIL, JUREKS_LIST) && (getQuestItemsCount(killer, SHAMANS_NECKLACE) < 5)) + { + giveItems(killer, SHAMANS_NECKLACE, 1); + if ((getQuestItemsCount(killer, MONSTER_EYE_DESTROYER_SKIN) >= 5) && (getQuestItemsCount(killer, SHAMANS_NECKLACE) == 5) && (getQuestItemsCount(killer, SHACKLES_SCALP) >= 2)) + { + qs.setCond(17, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case FETTERED_SOUL: + { + if (hasQuestItems(killer, TRIFFS_RING, POITANS_NOTES, CASIANS_LIST) && (getQuestItemsCount(killer, FETTERED_SOULS_ICHOR) < 5)) + { + giveItems(killer, FETTERED_SOULS_ICHOR, 1); + if (getQuestItemsCount(killer, FETTERED_SOULS_ICHOR) >= 5) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case GRANDIS: + { + if (hasQuestItems(killer, MIRIENS_3RD_SIGIL, CRONOS_SIGIL, TRIFFS_RING) && !hasQuestItems(killer, SCRIPTURE_CHAPTER_3)) + { + giveItems(killer, SCRIPTURE_CHAPTER_3, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + break; + } + case ENCHANTED_GARGOYLE: + { + if (hasQuestItems(killer, TRIFFS_RING, POITANS_NOTES, CASIANS_LIST) && (getQuestItemsCount(killer, ENCHANTED_GARGOYLES_NAIL) < 5)) + { + giveItems(killer, ENCHANTED_GARGOYLES_NAIL, 1); + if (getQuestItemsCount(killer, ENCHANTED_GARGOYLES_NAIL) >= 5) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case LETO_LIZARDMAN_WARRIOR: + { + if (hasQuestItems(killer, MIRIENS_1ST_SIGIL, HIGH_PRIESTS_SIGIL, CRERAS_PAINTING3) && (getQuestItemsCount(killer, BROWN_SCROLL_SCRAP) < 5)) + { + giveItems(killer, BROWN_SCROLL_SCRAP, 1); + if (getQuestItemsCount(killer, BROWN_SCROLL_SCRAP) == 5) + { + qs.setCond(12, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == MAGISTER_MIRIEN) + { + if ((player.getClassId() == ClassId.WIZARD) || (player.getClassId() == ClassId.ELVEN_WIZARD) || ((player.getClassId() == ClassId.DARK_WIZARD))) + { + if (player.getLevel() < MIN_LVL) + { + htmltext = "30461-02.html"; + } + else + { + htmltext = "30461-03.htm"; + } + } + else + { + htmltext = "30461-01.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case MAGISTER_MIRIEN: + { + if (hasQuestItems(player, MIRIENS_1ST_SIGIL)) + { + if (!hasQuestItems(player, SYMBOL_OF_SYLVAIN)) + { + htmltext = "30461-05.html"; + } + else + { + takeItems(player, MIRIENS_1ST_SIGIL, 1); + giveItems(player, MIRIENS_2ND_SIGIL, 1); + takeItems(player, SYMBOL_OF_SYLVAIN, 1); + qs.setCond(15, true); + htmltext = "30461-06.html"; + } + } + else if (hasQuestItems(player, MIRIENS_2ND_SIGIL)) + { + if (!hasQuestItems(player, SYMBOL_OF_JUREK)) + { + htmltext = "30461-07.html"; + } + else + { + htmltext = "30461-08.html"; + } + } + else if (hasQuestItems(player, MIRIENS_INSTRUCTION)) + { + if (player.getLevel() < LEVEL) + { + htmltext = "30461-11.html"; + } + else + { + takeItems(player, MIRIENS_INSTRUCTION, 1); + giveItems(player, MIRIENS_3RD_SIGIL, 1); + qs.setCond(19, true); + htmltext = "30461-12.html"; + } + } + else if (hasQuestItems(player, MIRIENS_3RD_SIGIL)) + { + if (!hasQuestItems(player, SYMBOL_OF_CRONOS)) + { + htmltext = "30461-13.html"; + } + else + { + giveAdena(player, 319628, true); + giveItems(player, MARK_OF_SCHOLAR, 1); + addExpAndSp(player, 1753926, 113754); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30461-14.html"; + } + } + break; + } + case HIGH_PRIEST_SYLVAIN: + { + if (hasQuestItems(player, MIRIENS_1ST_SIGIL) && !hasAtLeastOneQuestItem(player, HIGH_PRIESTS_SIGIL, SYMBOL_OF_SYLVAIN)) + { + htmltext = "30070-01.html"; + } + else if (!hasQuestItems(player, CRYSTAL_OF_PURITY1) && hasQuestItems(player, HIGH_PRIESTS_SIGIL, MIRIENS_1ST_SIGIL)) + { + htmltext = "30070-03.html"; + } + else if (hasQuestItems(player, HIGH_PRIESTS_SIGIL, MIRIENS_1ST_SIGIL, CRYSTAL_OF_PURITY1)) + { + takeItems(player, CRYSTAL_OF_PURITY1, 1); + takeItems(player, HIGH_PRIESTS_SIGIL, 1); + giveItems(player, SYMBOL_OF_SYLVAIN, 1); + qs.setCond(14, true); + htmltext = "30070-04.html"; + } + else if (hasQuestItems(player, MIRIENS_1ST_SIGIL, SYMBOL_OF_SYLVAIN) && !hasQuestItems(player, HIGH_PRIESTS_SIGIL)) + { + htmltext = "30070-05.html"; + } + else if (hasAtLeastOneQuestItem(player, MIRIENS_2ND_SIGIL, MIRIENS_3RD_SIGIL)) + { + htmltext = "30070-06.html"; + } + break; + } + case CAPTAIN_LUCAS: + { + if (hasQuestItems(player, MIRIENS_1ST_SIGIL, HIGH_PRIESTS_SIGIL)) + { + if (hasQuestItems(player, MARIAS_1ST_LETTER)) + { + takeItems(player, MARIAS_1ST_LETTER, 1); + giveItems(player, LUCASS_LETTER, 1); + qs.setCond(4, true); + htmltext = "30071-01.html"; + } + else if (hasAtLeastOneQuestItem(player, MARIAS_2ND_LETTER, CRETAS_1ST_LETTER, LUCILLAS_HANDBAG, CRERAS_PAINTING1, LUCASS_LETTER)) + { + htmltext = "30071-02.html"; + } + else if (hasQuestItems(player, CRERAS_PAINTING2)) + { + htmltext = "30071-03.html"; + } + else if (hasQuestItems(player, CRERAS_PAINTING3)) + { + if (getQuestItemsCount(player, BROWN_SCROLL_SCRAP) < 5) + { + htmltext = "30071-05.html"; + } + else + { + htmltext = "30071-06.html"; + } + } + } + else if (hasAtLeastOneQuestItem(player, SYMBOL_OF_SYLVAIN, MIRIENS_2ND_SIGIL, MIRIENS_3RD_SIGIL, CRYSTAL_OF_PURITY1)) + { + htmltext = "30071-07.html"; + } + break; + } + case WAREHOUSE_KEEPER_VALKON: + { + if (hasQuestItems(player, TRIFFS_RING)) + { + if (!hasAtLeastOneQuestItem(player, VALKONS_REQUEST, CRYSTAL_OF_PURITY2, SCRIPTURE_CHAPTER_2)) + { + htmltext = "30103-01.html"; + } + else if (hasQuestItems(player, VALKONS_REQUEST) && !hasAtLeastOneQuestItem(player, CRYSTAL_OF_PURITY2, SCRIPTURE_CHAPTER_2)) + { + htmltext = "30103-05.html"; + } + else if (hasQuestItems(player, CRYSTAL_OF_PURITY2) && !hasAtLeastOneQuestItem(player, VALKONS_REQUEST, SCRIPTURE_CHAPTER_2)) + { + giveItems(player, SCRIPTURE_CHAPTER_2, 1); + takeItems(player, CRYSTAL_OF_PURITY2, 1); + htmltext = "30103-06.html"; + } + else if (hasQuestItems(player, SCRIPTURE_CHAPTER_2) && !hasAtLeastOneQuestItem(player, VALKONS_REQUEST, CRYSTAL_OF_PURITY2)) + { + htmltext = "30103-07.html"; + } + } + break; + } + case MAGISTER_DIETER: + { + if (hasQuestItems(player, MIRIENS_3RD_SIGIL, CRONOS_SIGIL)) + { + if (hasQuestItems(player, CRONOS_LETTER)) + { + htmltext = "30111-01.html"; + } + else if (hasQuestItems(player, DIETERS_KEY)) + { + htmltext = "30111-06.html"; + } + else if (hasQuestItems(player, CRETAS_2ND_LETTER)) + { + htmltext = "30111-07.html"; + } + else if (hasQuestItems(player, DIETERS_DIARY, DIETERS_LETTER)) + { + htmltext = "30111-10.html"; + } + else if (hasQuestItems(player, DIETERS_DIARY, RAUTS_LETTER_ENVELOPE)) + { + htmltext = "30111-11.html"; + } + else if (hasQuestItems(player, DIETERS_DIARY) && !hasAtLeastOneQuestItem(player, DIETERS_LETTER, RAUTS_LETTER_ENVELOPE)) + { + if (hasQuestItems(player, SCRIPTURE_CHAPTER_1, SCRIPTURE_CHAPTER_2, SCRIPTURE_CHAPTER_3, SCRIPTURE_CHAPTER_4)) + { + htmltext = "30111-13.html"; + } + else + { + htmltext = "30111-12.html"; + } + } + } + else if (hasQuestItems(player, SYMBOL_OF_CRONOS)) + { + htmltext = "30111-15.html"; + } + break; + } + case GRAND_MAGISTER_JUREK: + { + if (hasQuestItems(player, MIRIENS_2ND_SIGIL)) + { + if (!hasAtLeastOneQuestItem(player, GRAND_MAGISTER_SIGIL, SYMBOL_OF_JUREK)) + { + htmltext = "30115-01.html"; + } + else if (hasQuestItems(player, JUREKS_LIST)) + { + if ((getQuestItemsCount(player, MONSTER_EYE_DESTROYER_SKIN) + getQuestItemsCount(player, SHAMANS_NECKLACE) + getQuestItemsCount(player, SHACKLES_SCALP)) < 12) + { + htmltext = "30115-04.html"; + } + else + { + takeItems(player, GRAND_MAGISTER_SIGIL, 1); + takeItems(player, JUREKS_LIST, 1); + takeItems(player, MONSTER_EYE_DESTROYER_SKIN, -1); + takeItems(player, SHAMANS_NECKLACE, -1); + takeItems(player, SHACKLES_SCALP, -1); + giveItems(player, SYMBOL_OF_JUREK, 1); + qs.setCond(18, true); + htmltext = "30115-05.html"; + } + } + else if (hasQuestItems(player, SYMBOL_OF_JUREK) && !hasQuestItems(player, GRAND_MAGISTER_SIGIL)) + { + htmltext = "30115-06.html"; + } + } + else if (hasAtLeastOneQuestItem(player, MIRIENS_1ST_SIGIL, MIRIENS_3RD_SIGIL)) + { + htmltext = "30115-07.html"; + } + break; + } + case TRADER_EDROC: + { + if (hasQuestItems(player, DIETERS_DIARY)) + { + if (hasQuestItems(player, DIETERS_LETTER)) + { + htmltext = "30230-01.html"; + } + else if (hasQuestItems(player, RAUTS_LETTER_ENVELOPE)) + { + htmltext = "30230-03.html"; + } + else if (hasAtLeastOneQuestItem(player, STRONG_LIGUOR, TRIFFS_RING)) + { + htmltext = "30230-04.html"; + } + } + break; + } + case WAREHOUSE_KEEPER_RAUT: + { + if (hasQuestItems(player, DIETERS_DIARY)) + { + if (hasQuestItems(player, RAUTS_LETTER_ENVELOPE)) + { + htmltext = "30316-01.html"; + } + else if (hasQuestItems(player, SCRIPTURE_CHAPTER_1, STRONG_LIGUOR)) + { + htmltext = "30316-04.html"; + } + else if (hasQuestItems(player, SCRIPTURE_CHAPTER_1, TRIFFS_RING)) + { + htmltext = "30316-05.html"; + } + } + break; + } + case BLACKSMITH_POITAN: + { + if (hasQuestItems(player, TRIFFS_RING)) + { + if (!hasAtLeastOneQuestItem(player, POITANS_NOTES, CASIANS_LIST, SCRIPTURE_CHAPTER_4)) + { + giveItems(player, POITANS_NOTES, 1); + htmltext = "30458-01.html"; + } + else if (hasQuestItems(player, POITANS_NOTES) && !hasAtLeastOneQuestItem(player, CASIANS_LIST, SCRIPTURE_CHAPTER_4)) + { + htmltext = "30458-02.html"; + } + else if (hasQuestItems(player, POITANS_NOTES, CASIANS_LIST) && !hasQuestItems(player, SCRIPTURE_CHAPTER_4)) + { + htmltext = "30458-03.html"; + } + else if (hasQuestItems(player, SCRIPTURE_CHAPTER_4) && !hasAtLeastOneQuestItem(player, POITANS_NOTES, CASIANS_LIST)) + { + htmltext = "30458-04.html"; + } + } + break; + } + case MARIA: + { + if (hasQuestItems(player, MIRIENS_1ST_SIGIL, HIGH_PRIESTS_SIGIL)) + { + if (hasQuestItems(player, SYLVAINS_LETTER)) + { + htmltext = "30608-01.html"; + } + else if (hasQuestItems(player, MARIAS_1ST_LETTER)) + { + htmltext = "30608-03.html"; + } + else if (hasQuestItems(player, LUCASS_LETTER)) + { + giveItems(player, MARIAS_2ND_LETTER, 1); + takeItems(player, LUCASS_LETTER, 1); + qs.setCond(5, true); + htmltext = "30608-04.html"; + } + else if (hasQuestItems(player, MARIAS_2ND_LETTER)) + { + htmltext = "30608-05.html"; + } + else if (hasQuestItems(player, CRETAS_1ST_LETTER)) + { + htmltext = "30608-06.html"; + } + else if (hasQuestItems(player, LUCILLAS_HANDBAG)) + { + htmltext = "30608-09.html"; + } + else if (hasQuestItems(player, CRERAS_PAINTING1)) + { + takeItems(player, CRERAS_PAINTING1, 1); + giveItems(player, CRERAS_PAINTING2, 1); + qs.setCond(9, true); + htmltext = "30608-10.html"; + } + else if (hasQuestItems(player, CRERAS_PAINTING2)) + { + htmltext = "30608-11.html"; + } + else if (hasQuestItems(player, CRERAS_PAINTING3)) + { + if (getQuestItemsCount(player, BROWN_SCROLL_SCRAP) < 5) + { + qs.setCond(11, true); + htmltext = "30608-12.html"; + } + else + { + htmltext = "30608-13.html"; + } + } + else if (hasQuestItems(player, CRYSTAL_OF_PURITY1)) + { + htmltext = "30608-15.html"; + } + } + else if (hasAtLeastOneQuestItem(player, SYMBOL_OF_SYLVAIN, MIRIENS_2ND_SIGIL)) + { + htmltext = "30608-16.html"; + } + else if (hasQuestItems(player, MIRIENS_3RD_SIGIL)) + { + if (!hasQuestItems(player, VALKONS_REQUEST)) + { + htmltext = "30608-17.html"; + } + else + { + takeItems(player, VALKONS_REQUEST, 1); + giveItems(player, CRYSTAL_OF_PURITY2, 1); + htmltext = "30608-18.html"; + } + } + break; + } + case ASTROLOGER_CRETA: + { + if (hasQuestItems(player, MIRIENS_1ST_SIGIL, HIGH_PRIESTS_SIGIL)) + { + if (hasQuestItems(player, MARIAS_2ND_LETTER)) + { + htmltext = "30609-01.html"; + } + else if (hasQuestItems(player, CRETAS_1ST_LETTER)) + { + htmltext = "30609-06.html"; + } + else if (hasQuestItems(player, LUCILLAS_HANDBAG)) + { + htmltext = "30609-07.html"; + } + else if (hasAtLeastOneQuestItem(player, CRERAS_PAINTING1, CRERAS_PAINTING2, CRERAS_PAINTING3)) + { + htmltext = "30609-10.html"; + } + } + else if (hasAtLeastOneQuestItem(player, CRYSTAL_OF_PURITY1, SYMBOL_OF_SYLVAIN, MIRIENS_2ND_SIGIL)) + { + htmltext = "30609-11.html"; + } + else if (hasQuestItems(player, MIRIENS_3RD_SIGIL)) + { + if (hasQuestItems(player, DIETERS_KEY)) + { + htmltext = "30609-12.html"; + } + else + { + htmltext = "30609-15.html"; + } + } + break; + } + case ELDER_CRONOS: + { + if (hasQuestItems(player, MIRIENS_3RD_SIGIL)) + { + if (!hasAtLeastOneQuestItem(player, CRONOS_SIGIL, SYMBOL_OF_CRONOS)) + { + htmltext = "30610-01.html"; + } + else if (hasQuestItems(player, CRONOS_SIGIL)) + { + if (hasQuestItems(player, SCRIPTURE_CHAPTER_1, SCRIPTURE_CHAPTER_2, SCRIPTURE_CHAPTER_3, SCRIPTURE_CHAPTER_4)) + { + htmltext = "30610-12.html"; + } + else + { + htmltext = "30610-11.html"; + } + } + else if (hasQuestItems(player, SYMBOL_OF_CRONOS) && !hasQuestItems(player, CRONOS_SIGIL)) + { + htmltext = "30610-15.html"; + } + } + break; + } + case DRUNKARD_TRIFF: + { + if (hasQuestItems(player, DIETERS_DIARY, SCRIPTURE_CHAPTER_1, STRONG_LIGUOR)) + { + htmltext = "30611-01.html"; + } + else if (hasAtLeastOneQuestItem(player, TRIFFS_RING, SYMBOL_OF_CRONOS)) + { + htmltext = "30611-05.html"; + } + break; + } + case ELDER_CASIAN: + { + if (hasQuestItems(player, TRIFFS_RING, POITANS_NOTES)) + { + if (!hasQuestItems(player, CASIANS_LIST)) + { + if (hasQuestItems(player, SCRIPTURE_CHAPTER_1, SCRIPTURE_CHAPTER_2, SCRIPTURE_CHAPTER_3)) + { + htmltext = "30612-02.html"; + } + else + { + htmltext = "30612-01.html"; + } + } + else + { + if ((getQuestItemsCount(player, GHOULS_SKIN) + getQuestItemsCount(player, MEDUSAS_BLOOD) + getQuestItemsCount(player, FETTERED_SOULS_ICHOR) + getQuestItemsCount(player, ENCHANTED_GARGOYLES_NAIL)) < 32) + { + htmltext = "30612-05.html"; + } + else + { + htmltext = "30612-06.html"; + } + } + } + else if (hasQuestItems(player, TRIFFS_RING, SCRIPTURE_CHAPTER_1, SCRIPTURE_CHAPTER_2, SCRIPTURE_CHAPTER_3, SCRIPTURE_CHAPTER_4) && !hasAtLeastOneQuestItem(player, POITANS_NOTES, CASIANS_LIST)) + { + htmltext = "30612-08.html"; + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == MAGISTER_MIRIEN) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30036-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30036-01.html new file mode 100644 index 0000000000..6f81730f34 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30036-01.html @@ -0,0 +1,5 @@ +Priest Petron:
+So you came to such a remote island to find the true religion of Einhasad...
+I came here many years ago after I incurred the hatred of the High Priests. Apparently I was trying to clarify the truth too specifically. Anyway, I much prefer the liberal atmosphere here over the corrupt inner circle.
+...I have so much to tell you. But first I have a favor I must ask... Please get rid of the malignant spirit Nahir coiling in the Elven Ruins. This will enhance your learning. Please, will you deal with Nahir? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30036-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30036-02.html new file mode 100644 index 0000000000..7cd0490f48 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30036-02.html @@ -0,0 +1,3 @@ +Priest Petron:
+I beg you! Please get rid of the malignant spirit Nahir coiling in the Elven Ruins. This will enhance your learning. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30036-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30036-03.html new file mode 100644 index 0000000000..90a5f5308b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30036-03.html @@ -0,0 +1,5 @@ +Priest Petron:
+Nahir... May his poor spirit rest in peace...
+Thank you. Now I will tell you Nahir's story. He was once a faithful follower of Einhasad. But while he was helping his friend who was a follower of Shilen, he incurred Einhasad's wrath and was turned into a monster. Until this day he roamed the dark underground. Are you surprised to learn that Einhasad, who is known as the Goddess of sacrifice and life, has in fact the opposite traits of jealousy and destruction? Of course the High Priests only care to mention the side of sacrifice and life...
+Such is the nature of the truth you seek. It's a bitter truth, isn't it? But that is not the end of the story. I am sure you seek the truth about Eva as well? In that case you should go and see Andellia of the Elven Village. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30036-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30036-04.html new file mode 100644 index 0000000000..764ed1ca69 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30036-04.html @@ -0,0 +1,3 @@ +Priest Petron:
+Your journey toward the truth has only just begun. You must visit Andellia of the Elven Village and hear what she knows about Eva. May Einhasad protect you on your way... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30117-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30117-01.html new file mode 100644 index 0000000000..c4711c74f0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30117-01.html @@ -0,0 +1,4 @@ +Priest Primos:
+So you seek the knowledge of Einhasad? I'm afraid I can't help you. I am embarrassed by the faithful. There are many truths concealed in the shrine's interest... There is nothing I can do about it...
+If you want to know about Einhasad you should go to see Priest Petron of Talking Island. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30117-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30117-02.html new file mode 100644 index 0000000000..234455e557 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30117-02.html @@ -0,0 +1,3 @@ +Priest Primos:
+I am not worthy to teach the truth of Einhasad. If you wish to learn the truth about the tenets of light, go and meet Priest Petron of Talking Island. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-01.html new file mode 100644 index 0000000000..11787f2cd3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-01.html @@ -0,0 +1,5 @@ +Andellia:
+Did you bring a message from Santiago? In search of the truth, are you? Your timing could not be better.
+I have a favor to ask. There is a Priestess named Uruha in the Neutral Zone. She invaded this forest with her spirits known as Black Willows. You must destroy these spirits.
+The Black Willows are located near the Waterfalls in the northern part of the Neutral Zone. After destroying them, go to Uruha and warn her not to come to the Elven Forest ever again. After you do this we can discuss what you seek. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-01a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-01a.html new file mode 100644 index 0000000000..95156532fa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-01a.html @@ -0,0 +1,3 @@ +Andellia:
+Dear pilgrim, seeker of divine truth... Were you sent by the hermit Santiago? There is a task with which I could use your assistance, but I fear that you aren't yet experienced enough to complete it. Please come back to me when you have gained more experience. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-02.html new file mode 100644 index 0000000000..84ec4846de --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-02.html @@ -0,0 +1,4 @@ +Andellia:
+You must destroy the Black Willow that Uruha has brought. They are located near the waterfall in the northern part of the Neutral Zone.
+After destroying them, go to Uruha and warn her not to come to the Elven Forest again.We will discuss God after you accomplish this. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-02a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-02a.html new file mode 100644 index 0000000000..8b060bd2af --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-02a.html @@ -0,0 +1,3 @@ +Andellia:
+The person responsible for this is a Dark Elf called Uruha. Find her and warn her not to come to the Elven Forest again. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-03.html new file mode 100644 index 0000000000..6815f11835 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-03.html @@ -0,0 +1,5 @@ +Andellia:
+How dare you bring that blasphemous book here...! Burn it now!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-04.html new file mode 100644 index 0000000000..61853a8093 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-04.html @@ -0,0 +1,3 @@ +Andellia:
+You will soon regret your decision! You befoul this Holy Land with your presence! Go and play with that old nag Elder Casian in the Wastelands! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-05.html new file mode 100644 index 0000000000..6e25ae2706 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-05.html @@ -0,0 +1,4 @@ +Andellia:
+Good work. Your soul has remained pure throughout your ordeal. We owe you a debt of gratitude for expelling those foul spirits from this holy forest.
+About the truth of God you're looking for... It will be better to talk to Elder Casian of the Wastelands. He can be abrupt, but knows many stories of God that others do not know. He is even familiar with the knowledge known as 'vice.' + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-06.html new file mode 100644 index 0000000000..483e6e1545 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-06.html @@ -0,0 +1,3 @@ +Andellia:
+Go to the Wastelands and meet Elder Casian. You must take what he says with a grain of salt. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-07.html new file mode 100644 index 0000000000..ed6704fa73 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30362-07.html @@ -0,0 +1,3 @@ +Andellia:
+There are still malignant spirits about! Please expel them for us! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30550-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30550-01.html new file mode 100644 index 0000000000..7800aa5bab --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30550-01.html @@ -0,0 +1,5 @@ +Gauri Twinklerock:
+Ah, you wish to learn the ways of Maphr? Priest of the Earth Gerald is regarded as one of the best theologians around...
+The vagabond named Dorf has been overheard saying that he knows the secret of Maphr.
+You should speak with both of them... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30550-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30550-02.html new file mode 100644 index 0000000000..55b5c05ed6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30550-02.html @@ -0,0 +1,3 @@ +Gauri Twinklerock:
+At this time of day you will probably find Priest of the Earth Gerald near the entrance of the village counting his money. He is somewhat irritable when he is busy so don't bother him too much. Wanderer Dorf can probably be found at the opposite end of the village. You can bother him as much as you like. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30571-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30571-01.html new file mode 100644 index 0000000000..0623b4c398 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30571-01.html @@ -0,0 +1,4 @@ +Seer Tanapi:
+Santiago... I am very weary of being sent these amateurs! Why would a person of my stature be required to deal with such greenhorns! Oh, well! I guess I have no choice...
+If you truly wish to understand the God of Flame then you must visit the ancestors' altar in the Cave of Trials and ask Ancestor Martankus. If you are sincere, he will respond to you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30571-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30571-02.html new file mode 100644 index 0000000000..9839949fb7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30571-02.html @@ -0,0 +1,4 @@ +Seer Tanapi:
+Shouldn't you be on you way to the ancestors' altar in the Cave of Trials? You must go there and pray to Ancestor Martankus.
+What, are you afraid now? If that's the case I wouldn't blame you. Just go back and tell Santiago that you are too scared to complete the task... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30571-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30571-03.html new file mode 100644 index 0000000000..bef23ae923 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30571-03.html @@ -0,0 +1,5 @@ +Seer Tanapi:
+That is quite a surprise! You say that you felt the flames of Pa'agrio? Amazing!
+To tell you the truth, I wasn't very hopeful when I sent you to the Cave of Trials. These days, success seems rare from one so young as you... I shall remember this.
+So you want to learn about Maphr? You should go and see Gauri Twinklerock of the Dwarven Village! I hope that you will find the light of truth at the end of your journey! Tejakar Pa'agrio! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30612-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30612-01.html new file mode 100644 index 0000000000..69f0db2640 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30612-01.html @@ -0,0 +1,6 @@ +Elder Casian:
+Hello, my inquisitive friend. My name is Casian, known to some as 'the Sage of the Wastelands'.
+The Elves and the Dark Elves that you have met have told you things that could be true or not. The nature of the gods is not known to mankind, and even they are only one small part of a very big universe... The gods each have a role to play. We cannot understand their intentions...
+We shouldn't make things more difficult than they are. We must each just do the best we can and go about our daily lives...
+I hope my lecture hasn't bored you. Take this book and return to Hermit Santiago. After all, this whole thing was his idea to begin with. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30612-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30612-02.html new file mode 100644 index 0000000000..4e6d385b03 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30612-02.html @@ -0,0 +1,5 @@ +Elder Casian:
+I will never understand the Human propensity to assign a value of right or wrong to everything, even the behavior of the gods! The worst offenders are the Priests...
+There is no crime as long as we act according to our feelings, am I right? After all, we are just the gods creations... So even if there is a crime, it is the gods' fault, not ours!
+Well, I've said enough. Please go back to Hermit Santiago. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-01.html new file mode 100644 index 0000000000..346940704d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-01.html @@ -0,0 +1,4 @@ +Hermit Santiago:
+To properly use the power of the gods, you must first understand their nature. That learning process can be most intense... Many of a higher level than yours have tried and failed. I think it would be too hard for you to endure at this moment. Come back after you have advanced your skills.
+(This quest may only be performed by Clerics, Oracles, Shilen Oracles, and Orc Shamans of level 35 or higher) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-02.html new file mode 100644 index 0000000000..60805eae5b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-02.html @@ -0,0 +1,4 @@ +Hermit Santiago:
+I only teach those who live their lives in service to the gods!
+(This quest may only be undertaken by Clerics, Oracles, Shilen Oracles, and Orc Shamans of level 35 or higher) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-03.htm new file mode 100644 index 0000000000..68c3cedac5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-03.htm @@ -0,0 +1,4 @@ +Hermit Santiago:
+To properly use the powers of the gods, you must first understand their nature. That learning process can be quite intense. Many have tried and failed... What is your decision? Will you accept my teachings?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-04.htm new file mode 100644 index 0000000000..932d8fa8b2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-04.htm @@ -0,0 +1,5 @@ +Hermit Santiago:
+I will now impart to you a great truth. The people of this land have distorted and twisted the myths of their gods to suit their own financial and political ends. This is probably also true about the myths that you were taught...
+I teach a method of purging your mind of all the indoctrination that has come before, and learning the secrets of the gods afresh. Would you care to learn from me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-04a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-04a.htm new file mode 100644 index 0000000000..e915445ce5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-04a.htm @@ -0,0 +1,6 @@ +Hermit Santiago:
+All right, I'll tell you. People only care about their own interests and are all too ready to spread false myths to further their own ends. I'm sure that the myths you know are no different . . . My advice is to forget everything you've learned so far and re-learn the story of the gods all over again, from the begining. Do you think you can do it?
+Wait, before you answer, take this Dimension Diamond first. You can trade it to the village gatekeeper for something special that may help you on your journey.
+Now, will you answer me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-05.html new file mode 100644 index 0000000000..c346e76cc6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-05.html @@ -0,0 +1,4 @@ +Hermit Santiago:
+Now listen carefully. First, venture north to the land of the Orcs and meet with Seer Tanapi. He will tell you about their god, Pa'agrio.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-06.html new file mode 100644 index 0000000000..e6e996b50b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-06.html @@ -0,0 +1,4 @@ +Hermit Santiago:
+Next, go to the land of the Dwarves and meet with Gauri Twinklerock. Ask her how you may learn the teachings of Maphr.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-07.html new file mode 100644 index 0000000000..55eb76fa21 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-07.html @@ -0,0 +1,4 @@ +Hermit Santiago:
+After you have completed your studies of Maphr, you must return to the land of the Humans and go to the Town of Giran. Seek out Priest Primos, and he will lead you to a greater understanding of Einhasad.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-08.html new file mode 100644 index 0000000000..68df7d183f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-08.html @@ -0,0 +1,4 @@ +Hermit Santiago:
+Last of all, you must go to the land of the Elves. Inside the Elven Village is the Mother Tree, one of the purest forms of energy on earth. You will meet under this large and beautiful tree with Andellia, one of the protectors of the Mother Tree. She can teach you about Eva and Shilen.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-09.html new file mode 100644 index 0000000000..0dbab8acbe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-09.html @@ -0,0 +1,3 @@ +Hermit Santiago:
+Do you understand? You must meet with Seer Tanapi of the Orc Village, Gauri Twinklerock of the Dwarven Village, Father Primoz of the Town of Giran, and Andellia of the Elven Village! In that order! Discern from them their ideas on the nature of the gods... You may find this trial unsettling and shocking, but as a seeker of the truth you must endure. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-10.html new file mode 100644 index 0000000000..36906f9e5d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30648-10.html @@ -0,0 +1,4 @@ +Hermit Santiago:
+Ah, there's the glimmer in your eyes! You still have far to go and much to learn about the nature of truth, but this is a start.
+Accept this Mark of Pilgrim. Remember, though, this is not the end of your studies. It is not even the beginning of the end. But it is, I perceive, the end of the beginning. Fare you well! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30649-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30649-01.html new file mode 100644 index 0000000000..175f046747 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30649-01.html @@ -0,0 +1,5 @@ +Ancestor Martankus:
+I am Martankus of the Hestui tribe! Although my body perished in battle thousands of years ago, my spirit watches over my descendants.
+This place is a sacred tomb housing the remains of the greatest heroes of the seven tribes. Young Orcs still come here to test their courage, strength and skill!
+You come seeking the true essence of Pa'agrio? Words alone fall far short. For true enlightenment, you must seek and return with the Essence of Flame. Obtain it from the Lava Salamanders of the Forgotten Temple, located in lands far, far to the west. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30649-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30649-02.html new file mode 100644 index 0000000000..a6c78de038 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30649-02.html @@ -0,0 +1,3 @@ +Ancestor Martankus:
+The true essence of Pa'agrio cannot be explained by words alone! To properly understand it, you must obtain the Flame of Essence! If you dare, seek out the Lava Salamanders of the Forgotten Temple, located in lands far, far to the west. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30649-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30649-03.html new file mode 100644 index 0000000000..b12129c455 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30649-03.html @@ -0,0 +1,5 @@ +Ancestor Martankus:
+I see that you have brought the Essence of Flame!
+Now, to understand Pa'agrio's Flame you must swallow the Essence of Flame!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30649-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30649-04.html new file mode 100644 index 0000000000..b23dcaba7b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30649-04.html @@ -0,0 +1,8 @@ +Ancestor Martankus:
+So hot! So hot! My body feels as if it will burst into flame. Aieee!
+Wait... what's this? The Flame of Combative Spirit? Truly, this is the mind possessed by the warriors of old. ..
+What is that, there in the distance? What do my old eyes perceive? Oh! Oh! Stay away! The heat, the heat! Ah! Ah, I see... Is this the Flame of Destruction, which engulfs everything in its path and leaves only black ashes?
+Is this the end? ...
+No, there is something more! I see a small flame burning bright in the ash. It is the one — the most sacred flame of all! It is the Flame of Life, the vital energy that moves the whole world...
+(O insignificant creature, would you venture to see and hear more of my mind's thoughts? You cannot! Your frail mortal frame cannot bear more of this inferno! Farewell!) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30650-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30650-01.html new file mode 100644 index 0000000000..f845aee4eb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30650-01.html @@ -0,0 +1,5 @@ +Priest of the Earth Gerald:
+You have come to the right place! Maphr is my specialty! 6 years in the seminary, and 10 years of self-guided research after that... I feel that I have learned practically all there is to know about Maphr. I could use additional funds to further my research... Would you consider making a small donation? I will teach you everything I know about Maphr for a mere 100,000 Adena. What a deal, er, I mean, blessing it is!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30650-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30650-02.html new file mode 100644 index 0000000000..8f82ef0b7c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30650-02.html @@ -0,0 +1,4 @@ +Priest of the Earth Gerald:
+What a generous donation! Maphr will surely be pleased, and the world will be a better place thanks to you. What a wonderful investment, er, I mean, offering!
+Here is a book I wrote regarding the will of Maphr. Study it diligently! May the grace of Maphr be with you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30650-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30650-03.html new file mode 100644 index 0000000000..efb50a382e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30650-03.html @@ -0,0 +1,3 @@ +Priest of the Earth Gerald:
+I suppose I was wrong about you... I had no idea you were a beggar... Now, on your way! Shoo! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30650-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30650-04.html new file mode 100644 index 0000000000..052fc7ca43 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30650-04.html @@ -0,0 +1,3 @@ +Priest of the Earth Gerald:
+Oh my, I didn't notice your badge! I, I just... That is... Eh, just a joke... I, I mean, I was going to keep it safe for you and return it with interest. Well I must be going! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30651-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30651-01.html new file mode 100644 index 0000000000..c759225824 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30651-01.html @@ -0,0 +1,5 @@ +Wanderer Dorf:
+Maphr, the goddess of abundance and prosperity?! Foolish cattle, they don't know anything! Just look at the silly Dwarves in this town. They are mentally unbalanced, always dashing here and there to collect some more money. They are simply ridiculous! Miserable creatures who would even rip out their goddess' heart if it were worth money! And they don't hesitate to unearth things that should not be part of this world!
+Maphr is indeed the goddess of abundance and prosperity, but that also means that she is responsible for all poverty and downfalls! Why can't you see this simple fact? They have already experienced bankruptcy once before... Tsk tsk...
+Take this badge and take heed. Prosperity and poverty are just like the two sides of one coin! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30651-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30651-02.html new file mode 100644 index 0000000000..60c6e2a183 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30651-02.html @@ -0,0 +1,5 @@ +Wanderer Dorf:
+Maphr, the goddess of abundance and prosperity?! Foolish cattle, they don't know anything! Just look at the silly Dwarves in this town. They are mentally unbalanced, always dashing here and there to collect some more money. They are simply ridiculous! Miserable creatures who would even rip out their goddess' heart if it were worth money! And they don't hesitate to unearth things that should not be part of this world!
+Maphr is indeed the goddess of abundance and prosperity, but that also means that she is responsible for all poverty and downfalls! Why can't you see this simple fact! They have already experienced bankruptcy once before... Tsk tsk...
+By the way, what is that book you are holding? You bought it from Gerald? You fool! You have been deceived by him! Show him this badge. You might be able to get your money back. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30651-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30651-03.html new file mode 100644 index 0000000000..3dc2124bad --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30651-03.html @@ -0,0 +1,3 @@ +Wanderer Dorf:
+I have said everything that I intend to say. Now leave here and go learn of your precious Einhasad. You will probably have to go and see the Priest Primos of the Town of Giran! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30652-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30652-01.html new file mode 100644 index 0000000000..6c617d5030 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30652-01.html @@ -0,0 +1,4 @@ +Uruha:
+Why are you wasting your time on them? They are just some miserable fellows who are confused by the ramblings of that hypocrite Einhasad. With help from Shilen and Gran Kain, they could live once more... You are not one of those silly followers of Eva, are you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30652-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30652-02.html new file mode 100644 index 0000000000..ab7e67243b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30652-02.html @@ -0,0 +1,4 @@ +Uruha:
+Ah ha! That arrogant and reckless follower of Eva! Are you blind? Isn't the indecisiveness of Eva obvious? She who is under the authority of our Goddess Shilen? Her followers are no different!
+Take this book. I hope it will lead you to the truth, and protect you from contamination by the reckless stupidity of Eva's followers. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30652-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30652-03.html new file mode 100644 index 0000000000..cbd463c7e8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/30652-03.html @@ -0,0 +1,3 @@ +Uruha:
+The malignant spirit of Shilen? The devourer of innocents? Please, leave these miserable creatures alone. They have suffered enough. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/Q00215_TrialOfThePilgrim.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/Q00215_TrialOfThePilgrim.java new file mode 100644 index 0000000000..38d7f34453 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00215_TrialOfThePilgrim/Q00215_TrialOfThePilgrim.java @@ -0,0 +1,541 @@ +/* + * 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.Q00215_TrialOfThePilgrim; + +import com.l2jmobius.gameserver.enums.CategoryType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Trial Of The Pilgrim (215) + * @author ivantotov + */ +public final class Q00215_TrialOfThePilgrim extends Quest +{ + // NPCs + private static final int PRIEST_PETRON = 30036; + private static final int PRIEST_PRIMOS = 30117; + private static final int ANDELLIA = 30362; + private static final int GAURI_TWINKLEROCK = 30550; + private static final int SEER_TANAPI = 30571; + private static final int ELDER_CASIAN = 30612; + private static final int HERMIT_SANTIAGO = 30648; + private static final int ANCESTOR_MARTANKUS = 30649; + private static final int PRIEST_OF_THE_EARTH_GERALD = 30650; + private static final int WANDERER_DORF = 30651; + private static final int URUHA = 30652; + // Items + private static final int ADENA = 57; + private static final int BOOK_OF_SAGE = 2722; + private static final int VOUCHER_OF_TRIAL = 2723; + private static final int SPIRIT_OF_FLAME = 2724; + private static final int ESSENSE_OF_FLAME = 2725; + private static final int BOOK_OF_GERALD = 2726; + private static final int GREY_BADGE = 2727; + private static final int PICTURE_OF_NAHIR = 2728; + private static final int HAIR_OF_NAHIR = 2729; + private static final int STATUE_OF_EINHASAD = 2730; + private static final int BOOK_OF_DARKNESS = 2731; + private static final int DEBRIS_OF_WILLOW = 2732; + private static final int TAG_OF_RUMOR = 2733; + // Reward + private static final int MARK_OF_PILGRIM = 2721; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Quest Monster + private static final int LAVA_SALAMANDER = 27116; + private static final int NAHIR = 27117; + private static final int BLACK_WILLOW = 27118; + // Misc + private static final int MIN_LVL = 35; + + public Q00215_TrialOfThePilgrim() + { + super(215); + addStartNpc(HERMIT_SANTIAGO); + addTalkId(HERMIT_SANTIAGO, PRIEST_PETRON, PRIEST_PRIMOS, ANDELLIA, GAURI_TWINKLEROCK, SEER_TANAPI, ELDER_CASIAN, ANCESTOR_MARTANKUS, PRIEST_OF_THE_EARTH_GERALD, WANDERER_DORF, URUHA); + addKillId(LAVA_SALAMANDER, NAHIR, BLACK_WILLOW); + registerQuestItems(BOOK_OF_SAGE, VOUCHER_OF_TRIAL, SPIRIT_OF_FLAME, ESSENSE_OF_FLAME, BOOK_OF_GERALD, GREY_BADGE, PICTURE_OF_NAHIR, HAIR_OF_NAHIR, STATUE_OF_EINHASAD, BOOK_OF_DARKNESS, DEBRIS_OF_WILLOW, TAG_OF_RUMOR); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + qs.setMemoState(1); + giveItems(player, VOUCHER_OF_TRIAL, 1); + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 49); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30648-04a.htm"; + } + else + { + htmltext = "30648-04.htm"; + } + } + break; + } + case "30648-05.html": + case "30648-06.html": + case "30648-07.html": + case "30648-08.html": + { + htmltext = event; + break; + } + case "30362-05.html": + { + if (qs.isMemoState(15) && hasQuestItems(player, BOOK_OF_DARKNESS)) + { + takeItems(player, BOOK_OF_DARKNESS, 1); + qs.setMemoState(16); + qs.setCond(16, true); + htmltext = event; + } + break; + } + case "30362-04.html": + { + if (qs.isMemoState(15) && hasQuestItems(player, BOOK_OF_DARKNESS)) + { + qs.setMemoState(16); + qs.setCond(16, true); + htmltext = event; + } + break; + } + case "30649-04.html": + { + if (qs.isMemoState(4) && hasQuestItems(player, ESSENSE_OF_FLAME)) + { + giveItems(player, SPIRIT_OF_FLAME, 1); + takeItems(player, ESSENSE_OF_FLAME, 1); + qs.setMemoState(5); + qs.setCond(5, true); + htmltext = event; + } + break; + } + case "30650-02.html": + { + if (qs.isMemoState(6) && hasQuestItems(player, TAG_OF_RUMOR)) + { + if (getQuestItemsCount(player, ADENA) >= 100000) + { + giveItems(player, BOOK_OF_GERALD, 1); + takeItems(player, ADENA, 100000); + qs.setMemoState(7); + htmltext = event; + } + else + { + htmltext = "30650-03.html"; + } + } + break; + } + case "30650-03.html": + { + if (qs.isMemoState(6) && hasQuestItems(player, TAG_OF_RUMOR)) + { + htmltext = event; + } + break; + } + case "30652-02.html": + { + if (qs.isMemoState(14) && hasQuestItems(player, DEBRIS_OF_WILLOW)) + { + giveItems(player, BOOK_OF_DARKNESS, 1); + takeItems(player, DEBRIS_OF_WILLOW, 1); + qs.setMemoState(15); + qs.setCond(15, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case LAVA_SALAMANDER: + { + if (qs.isMemoState(3) && !hasQuestItems(killer, ESSENSE_OF_FLAME)) + { + qs.setMemoState(4); + qs.setCond(4, true); + giveItems(killer, ESSENSE_OF_FLAME, 1); + } + break; + } + case NAHIR: + { + if (qs.isMemoState(10) && !hasQuestItems(killer, HAIR_OF_NAHIR)) + { + qs.setMemoState(11); + qs.setCond(11, true); + giveItems(killer, HAIR_OF_NAHIR, 1); + } + break; + } + case BLACK_WILLOW: + { + if (qs.isMemoState(13) && !hasQuestItems(killer, DEBRIS_OF_WILLOW)) + { + qs.setMemoState(14); + qs.setCond(14, true); + giveItems(killer, DEBRIS_OF_WILLOW, 1); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + final int memoState = qs.getMemoState(); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == HERMIT_SANTIAGO) + { + if (!player.isInCategory(CategoryType.HEAL_GROUP)) + { + htmltext = "30648-02.html"; + } + else if (player.getLevel() < MIN_LVL) + { + htmltext = "30648-01.html"; + } + else + { + htmltext = "30648-03.htm"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case HERMIT_SANTIAGO: + { + if (memoState >= 1) + { + if (!hasQuestItems(player, BOOK_OF_SAGE)) + { + htmltext = "30648-09.html"; + } + else + { + giveAdena(player, 229298, true); + giveItems(player, MARK_OF_PILGRIM, 1); + addExpAndSp(player, 1258250, 81606); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30648-10.html"; + } + } + break; + } + case PRIEST_PETRON: + { + if (memoState == 9) + { + giveItems(player, PICTURE_OF_NAHIR, 1); + qs.setMemoState(10); + qs.setCond(10, true); + htmltext = "30036-01.html"; + } + else if (memoState == 10) + { + htmltext = "30036-02.html"; + } + else if (memoState == 11) + { + takeItems(player, PICTURE_OF_NAHIR, 1); + takeItems(player, HAIR_OF_NAHIR, 1); + giveItems(player, STATUE_OF_EINHASAD, 1); + qs.setMemoState(12); + qs.setCond(12, true); + htmltext = "30036-03.html"; + } + else if (memoState == 12) + { + if (hasQuestItems(player, STATUE_OF_EINHASAD)) + { + htmltext = "30036-04.html"; + } + } + break; + } + case PRIEST_PRIMOS: + { + if (memoState == 8) + { + qs.setMemoState(9); + qs.setCond(9, true); + htmltext = "30117-01.html"; + } + else if (memoState == 9) + { + qs.setMemoState(9); + qs.setCond(9, true); + htmltext = "30117-02.html"; + } + break; + } + case ANDELLIA: + { + if (memoState == 12) + { + if (player.getLevel() >= 0) + { + qs.setMemoState(13); + qs.setCond(13, true); + htmltext = "30362-01.html"; + } + else + { + htmltext = "30362-01a.html"; + } + } + else if (memoState == 13) + { + htmltext = "30362-02.html"; + } + else if (memoState == 14) + { + htmltext = "30362-02a.html"; + } + else if (memoState == 15) + { + if (hasQuestItems(player, BOOK_OF_DARKNESS)) + { + htmltext = "30362-03.html"; + } + else + { + htmltext = "30362-07.html"; + } + } + else if (memoState == 16) + { + htmltext = "30362-06.html"; + } + break; + } + case GAURI_TWINKLEROCK: + { + if (memoState == 5) + { + if (hasQuestItems(player, SPIRIT_OF_FLAME)) + { + takeItems(player, SPIRIT_OF_FLAME, 1); + giveItems(player, TAG_OF_RUMOR, 1); + qs.setMemoState(6); + qs.setCond(7, true); + htmltext = "30550-01.html"; + } + } + else if (memoState == 6) + { + htmltext = "30550-02.html"; + } + break; + } + case SEER_TANAPI: + { + if (memoState == 1) + { + if (hasQuestItems(player, VOUCHER_OF_TRIAL)) + { + takeItems(player, VOUCHER_OF_TRIAL, 1); + qs.setMemoState(2); + qs.setCond(2, true); + htmltext = "30571-01.html"; + } + } + else if (memoState == 2) + { + htmltext = "30571-02.html"; + } + else if (memoState == 5) + { + if (hasQuestItems(player, SPIRIT_OF_FLAME)) + { + qs.setCond(6, true); + htmltext = "30571-03.html"; + } + } + break; + } + case ELDER_CASIAN: + { + if (memoState == 16) + { + qs.setMemoState(17); + if (!hasQuestItems(player, BOOK_OF_SAGE)) + { + giveItems(player, BOOK_OF_SAGE, 1); + } + takeItems(player, GREY_BADGE, 1); + takeItems(player, SPIRIT_OF_FLAME, 1); + takeItems(player, STATUE_OF_EINHASAD, 1); + if (hasQuestItems(player, BOOK_OF_DARKNESS)) + { + addExpAndSp(player, 5000, 500); + takeItems(player, BOOK_OF_DARKNESS, 1); + } + htmltext = "30612-01.html"; + + } + else if (memoState == 17) + { + qs.setCond(17, true); + htmltext = "30612-02.html"; + } + break; + } + case ANCESTOR_MARTANKUS: + { + if (memoState == 2) + { + qs.setMemoState(3); + qs.setCond(3, true); + htmltext = "30649-01.html"; + } + else if (memoState == 3) + { + htmltext = "30649-02.html"; + } + else if (memoState == 4) + { + if (hasQuestItems(player, ESSENSE_OF_FLAME)) + { + htmltext = "30649-03.html"; + } + } + break; + } + case PRIEST_OF_THE_EARTH_GERALD: + { + if (memoState == 6) + { + if (hasQuestItems(player, TAG_OF_RUMOR)) + { + htmltext = "30650-01.html"; + } + } + else if (hasQuestItems(player, GREY_BADGE, BOOK_OF_GERALD)) + { + giveAdena(player, 100000, true); + takeItems(player, BOOK_OF_GERALD, 1); + htmltext = "30650-04.html"; + } + break; + } + case WANDERER_DORF: + { + if (memoState == 6) + { + if (hasQuestItems(player, TAG_OF_RUMOR)) + { + giveItems(player, GREY_BADGE, 1); + takeItems(player, TAG_OF_RUMOR, 1); + qs.setMemoState(8); + htmltext = "30651-01.html"; + } + } + else if (memoState == 7) + { + if (hasQuestItems(player, TAG_OF_RUMOR)) + { + giveItems(player, GREY_BADGE, 1); + takeItems(player, TAG_OF_RUMOR, 1); + qs.setMemoState(8); + htmltext = "30651-02.html"; + } + } + else if (memoState == 8) + { + qs.setCond(8, true); + htmltext = "30651-03.html"; + } + break; + } + case URUHA: + { + if (memoState == 14) + { + if (hasQuestItems(player, DEBRIS_OF_WILLOW)) + { + htmltext = "30652-01.html"; + } + } + else if (memoState == 15) + { + if (hasQuestItems(player, BOOK_OF_DARKNESS)) + { + htmltext = "30652-03.html"; + } + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == HERMIT_SANTIAGO) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-01.html new file mode 100644 index 0000000000..d67e87d792 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-01.html @@ -0,0 +1,4 @@ +Warehouse Keeper Valkon:
+I have been in charge of the promotion test of the Dwarf union members for the last 10 years. Among all Dwarf apprentices, only those who pass this test are accepted as full members of Dwarven society. This may not be clear to you since you are not a Dwarf, but within our society there is a complex hierarchy and ranking system.
+(Quest for Scavengers or Artisans, level 35 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-02.html new file mode 100644 index 0000000000..55e4c6710d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-02.html @@ -0,0 +1,4 @@ +Warehouse Keeper Valkon:
+How long will you be an apprentice? Don't you have any ambition? I hope you are not under the impression that you have reached a comfortable level. Shouldn't you work harder and challenge the Trial of the Guildsman? You won't be a true member of Dwarven society until you pass that test. If you are really satisfied being a nobody for the rest of your life, I won't mention it again.
+(Quest for Scavengers or Artisans, level 35 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-03.htm new file mode 100644 index 0000000000..e4713736eb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-03.htm @@ -0,0 +1,4 @@ +Warehouse Keeper Valkon:
+How long will you be an apprentice? Don't you have any ambition? I hope you are not under the impression that you have reached a comfortable level. Now listen to me carefully. I shall tell you about Dwarven education.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-04.htm new file mode 100644 index 0000000000..62efc17106 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-04.htm @@ -0,0 +1,6 @@ +Warehouse Keeper Valkon:
+Dwarven apprentices will work in the Strip Mine to strengthen their bodies and spirits, as well as learning to protect their own bodies. When they complete basic training they return to the Dwarven Village and accumulate experience while assisting the Elders of the guilds with chores.
+After they pass the exam given by the guild, and are awarded the title of Scavenger or Artisan, they are no longer considered apprentices. But even that is not enough to become an official guild member. Only when they pass the Trial of the Guildsman will they be accepted as a true guild member.
+This test is essential if you intend to learn the techniques of a high-level guild member and aspire to the profession of Bounty Hunter or Warsmith.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-05.htm new file mode 100644 index 0000000000..89a4b165fb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-05.htm @@ -0,0 +1,4 @@ +Warehouse Keeper Valkon:
+First you must pay the registration fee. The amount will be 2,000 Adena. All fees received are used to support the technical development of the guild and sponsoring Artisans.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-05a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-05a.html new file mode 100644 index 0000000000..06311e9190 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-05a.html @@ -0,0 +1,4 @@ +Warehouse Keeper Valkon:
+First you must pay the registration fee. The amount will be 2,000 adena. All fees received are used to support the technical development of the guild and sponsoring Artisans.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-05b.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-05b.htm new file mode 100644 index 0000000000..ac83bf28a1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-05b.htm @@ -0,0 +1,3 @@ +Warehouse Keeper Valkon:
+How embarassing for you! You should have known to bring some money with you... Come back when you get 2,000 Adena. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-06.htm new file mode 100644 index 0000000000..709e53d0cc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-06.htm @@ -0,0 +1,7 @@ +Warehouse Keeper Valkon:
+Good! You must first take this badge. It is a mark that lets others know that you are in the midst of taking the Trial of the Guildsman. Many Blacksmiths and Warehouse Chiefs will help you when they see your badge.
+The content of the test is quite simple. It consists of making seven Journeyman Rings. It may sound simple but the process of making the ring itself will challenge your ability and wit.
+Why seven rings? Actually... You shall offer one to the yet-to-come King of the Dwarves, and the rest to the six Elders of the guilds. It is a long held tradition that has been kept since the founding of the kingdom and the forming of the guilds.
+If you wish to learn to make the rings, go and see Blacksmith Altran of Talking Island. Take him this letter. Don't worry, I expect nothing in return. When you complete the seven rings come and see me again. Good luck!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-06a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-06a.html new file mode 100644 index 0000000000..eb8e094b1f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-06a.html @@ -0,0 +1,4 @@ +Warehouse Keeper Valkon:
+Hints? You want to learn the short way through even before trying to solve it out by patiently working hard... Tsk tsk... A young Dwarf shouldn't be like that!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-06b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-06b.html new file mode 100644 index 0000000000..ca2ac0bcb5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-06b.html @@ -0,0 +1,6 @@ +Warehouse Keeper Valkon:
+Hmm... What nerves you've got. Hints... Well, yes I just came across one.
+I heard that Altran used to be a kind man, but perhaps because of his aging, he seems to be a bit fastidious these days. Some say that it is because of the arthritis... Whatever the reason may be, he grumbles a great deal these days...
+Perhaps he may be pleased to receive a Mandragora Berry which they say it is helpful to arthritis.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-06c.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-06c.html new file mode 100644 index 0000000000..26acc66a55 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-06c.html @@ -0,0 +1,3 @@ +Warehouse Keeper Valkon:
+Must everything be spelled out for you? Some things you must discover on your own! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-06d.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-06d.htm new file mode 100644 index 0000000000..1b3e429579 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-06d.htm @@ -0,0 +1,8 @@ +Warehouse Keeper Valkon:
+Very well! First, take this insignia, which signifies that you are performing the Trial of the Guildsman. Many blacksmiths and senior warehouse keepers will assist you when they see it.
+The trial itself is very straightforward. You must make 7 Journeyman Rings. Don't be fooled by the apparent simplicity, however. The process of making the rings themselves is a critical test of a Dwarf's skill and wit.
+Why 7 rings, you ask? Well, it's a tradition reaching back to the beginning of the Kingdom and the formation of the guilds themselves. Six of the rings go to the elders of the 6 guilds, while the last is reserved for the King who will return.
+To obtain the ring design blueprint, visit Blacksmith Altran on Talking Island. I will write a letter of introduction for you, free of charge. When you finish creating all 7 rings, return here.
+Take this Dimension Diamond. You can trade it for something special from the village gatekeeper. I hope it will help you on your journey. What are youn waiting for?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-07.html new file mode 100644 index 0000000000..a9c9a2cb5e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-07.html @@ -0,0 +1,4 @@ +Warehouse Keeper Valkon:
+It is said that Altran was once a kind man, but perhaps due to his age he has become much more irritable these days. They say that his arthritis is making him a crooked old man...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-07a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-07a.html new file mode 100644 index 0000000000..ad27d2858d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-07a.html @@ -0,0 +1,4 @@ +Warehouse Keeper Valkon:
+Some say that the Mandragora Berry is helpful for the pain of arthritis... Yes, this would be an excellent gift to give him.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-07b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-07b.html new file mode 100644 index 0000000000..837e2b53af --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-07b.html @@ -0,0 +1,4 @@ +Warehouse Keeper Valkon:
+Hey, you! Do I have to tell you everything?! You can do such things for yourself!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-07c.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-07c.html new file mode 100644 index 0000000000..fba3bc1152 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-07c.html @@ -0,0 +1,3 @@ +Warehouse Keeper Valkon:
+Now let's see... Think about it! Where would be the best place to find a mandragora in the whole continent? There is a place in Dion called the Mandragora Farm. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-08.html new file mode 100644 index 0000000000..265c49bc0c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-08.html @@ -0,0 +1,3 @@ +Warehouse Keeper Valkon:
+How is your work proceeding, young fellow? How is the making of the 7 Journeyman Gem going? You should complete it soon so you can advance beyond an apprentice. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-09.html new file mode 100644 index 0000000000..f0f071af18 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-09.html @@ -0,0 +1,5 @@ +Warehouse Keeper Valkon:
+You have made all the rings. Thank you for your trouble. So, did you learn anything from the test?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-09a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-09a.html new file mode 100644 index 0000000000..ae67bddca2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-09a.html @@ -0,0 +1,4 @@ +Warehouse Keeper Valkon:
+Yes, yes, yes! Superb! You will make an excellent addition to our guild, and I perceive a bright future in store for you.
+Congratulations! You have successfully passed the Trial of the Guildsman, and I now award you the Mark of Guildsman. It will aid you when transfering to a higher class. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-09b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-09b.html new file mode 100644 index 0000000000..4ddc2ec744 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30103-09b.html @@ -0,0 +1,4 @@ +Warehouse Keeper Valkon:
+Hmmph. With talk like that, you won't last very long or rise very high here, my friend. My advice is to learn to fake sincerity, and everything else will be easy. Understood?
+In any case, congratulations are in order. You have successfully passed the Trial of the Guildsman, and I now award you the Mark of Guildsman. It will aid you when transfering to a higher class. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-01.html new file mode 100644 index 0000000000..110e8b0d72 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-01.html @@ -0,0 +1,4 @@ +Warehouse Keeper Norman:
+I have no idea what Altran told you, but I am too busy these days to keep you company.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-02.html new file mode 100644 index 0000000000..35c3f754bc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-02.html @@ -0,0 +1,4 @@ +Warehouse Keeper Norman:
+Ah, I am sorry... I told you, I am too busy!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-03.html new file mode 100644 index 0000000000..b51b1f7907 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-03.html @@ -0,0 +1,4 @@ +Warehouse Keeper Norman:
+Hmm? So you are willing to assist with my work? I would really appreciate that... But it could be quite difficult... is that all right with you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-04.html new file mode 100644 index 0000000000..267c63bfc6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-04.html @@ -0,0 +1,5 @@ +Warehouse Keeper Norman:
+Well, if you say so... At the moment I have something you can help me with.
+I am having many difficulties these days because of the gangs nearby town. Especially the Ol Mahum theives, called Cat's Eye... I wonder why the guards won't protect us from them... Anyway, I am thinking of changing all the locks of the warehouse... The locks which I have ordered have already arrived, but the keys aren't here yet.
+I ordered them from Duning of Hunters Village. Will you go and fetch the keys for me? Here, this is the receipt. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-05.html new file mode 100644 index 0000000000..ff9b8fe4b8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-05.html @@ -0,0 +1,3 @@ +Warehouse Keeper Norman:
+Please visit Blacksmith Duning of Hunters Village and fetch the keys that I have ordered. Please hurry. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-06.html new file mode 100644 index 0000000000..e958a39809 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-06.html @@ -0,0 +1,3 @@ +Warehouse Keeper Norman:
+What? He lost the keys? How does that idiot expect me to use the locks without keys? I intend to report this to the Guild Association right away! Go back to Duning of Hunters Village and find out more about the lost keys. Let's see what his excuse is! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-07.html new file mode 100644 index 0000000000..687b468ead --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-07.html @@ -0,0 +1,4 @@ +Warehouse Keeper Norman:
+Thank you for your trouble. Now we will have to start changing the locks. I guess it will take quite a while to take care of 30 lockers each... Today will be another busy day. Now! Shall we get started!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-08.html new file mode 100644 index 0000000000..89ddaffa42 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-08.html @@ -0,0 +1,4 @@ +Warehouse Keeper Norman:
+Hmm? What, you haven't gone yet? Is there anything I can help you with...?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-09.html new file mode 100644 index 0000000000..afe13ab035 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-09.html @@ -0,0 +1,7 @@ +Warehouse Keeper Norman:
+Oh yes! That's right. You said that you were in the middle of taking a test to be a union member?
+A Journeyman Gem is not something you can get from somewhere, you have to make it yourself. But the skills of making it is not something that can be taught in a short time...
+I shall make one for you instead of teaching you the skills.
+First you must find me the materials needed to make the jewel. Any objection to going and finding the materials for yourself? You didn't expect such and old man like me to run around and collect the materials, did you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-10.html new file mode 100644 index 0000000000..e1c8c04785 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-10.html @@ -0,0 +1,7 @@ +Warehouse Keeper Norman:
+Yes, that's a good boy. Now I shall give you the list of materials that you must find.
+First, we need some Gray Bone Powder to use as an abrasive. You can get it from undead monsters such as ghouls or strains. You will find plenty in the Execution Grounds of Dion.
+I also need a Granite Whetstone, which is for polishing the surface of the jewel... You must find pieces of the granite golems that can be found in the Execution Grounds or in the Wasteland!
+Other things that we need are the Red Pigment, which you can get from the dead seeker bat on the Execution Grounds. Last, we need some Braided Yarn, which you can get by hunting the silenos in the Plains of Dion...
+Can you remember everything? I will need 70 each of all the above things. You need 7 Journeyman Gems, right? It will take 10 materials each per 1 jewel. Good luck then! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-11.html new file mode 100644 index 0000000000..4856d96bb0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-11.html @@ -0,0 +1,4 @@ +Warehouse Keeper Norman:
+Hey, you! These are not enough materials! It can't be... You didn't forget what materials I requested, did you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-11a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-11a.html new file mode 100644 index 0000000000..7e959c7e09 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-11a.html @@ -0,0 +1,7 @@ +Warehouse Keeper Norman:
+First, we need some Gray Bone Powder to use as an abrasive. You can get it from undead monsters such as ghouls or strains. You will find plenty in the Execution Grounds of Dion.
+I also need a Granite Whetstone, which is for polishing the surface of the jewel... You must find pieces of the granite golems that can be found in the Execution Grounds or in the Wasteland!!
+Other things that we need are the Red Pigment, which you can get from the dead seeker bat on the Execution Grounds. Last, we need some Braided Yarn, which you can get by hunting the silenos in the Plains of Dion...
+Can you remember everything? I will need 70 each of all the above things. You need 7 Journeyman Gems, right? It will take 10 materials each per 1 jewel...
+Did you memorize everything? Don't forget it this time. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-12.html new file mode 100644 index 0000000000..38266496e6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-12.html @@ -0,0 +1,4 @@ +Warehouse Keeper Norman:
+Good job! The hardest part is gathering the materials, the rest of it is simple! Believe it or not, when I was young...
+Oh! The jewels have already formed while we were talking! Here, look! It is a Journeyman Gem! 7 of them altogether, right? Use them well. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-13.html new file mode 100644 index 0000000000..6a581b0e2d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30210-13.html @@ -0,0 +1,3 @@ +Warehouse Keeper Norman:
+Hey, you shouldn't be lazing around like that. You should hurry and make the rings in order to pass the exam! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-01.html new file mode 100644 index 0000000000..fa84537c7d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-01.html @@ -0,0 +1,4 @@ +Blacksmith Altran:
+Oh my aching bones, the rains must be coming. It is so hard to work in such pain!
+Leave me alone now, punk! I wish Valkon would stop sending such worthless children to me! Get lost! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-02.html new file mode 100644 index 0000000000..2e9441922e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-02.html @@ -0,0 +1,5 @@ +Blacksmith Altran:
+Sniff, sniff...! Smells good?! Hey, aren't those mandragora berries! Thank you! Thank you very much!!!. I feel light just by smelling them!
+Ah, yes! Valkon sent you? You're taking the Trial of the Guildsman, right?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-03.html new file mode 100644 index 0000000000..d70780e729 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-03.html @@ -0,0 +1,10 @@ +Blacksmith Altran:
+Back in the old days I had to memorize hundreds of formulas. Now they all have recipes! What will they think of next?
+OK, here is the recipe for making a Journeyman Ring. Let me see...
+[Production of Journeyman Ring]
+[Materials] 1 Journeyman Gem, 1 Journeyman Deco Bead, 10 Grade D Crystals
+[Result] 1 Journeyman Ring
+Journeyman Gems and Journeyman Deco Beads are hard to find.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-03a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-03a.html new file mode 100644 index 0000000000..6c5edb9a63 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-03a.html @@ -0,0 +1,4 @@ +Blacksmith Altran:
+I don't have time to explain all of this to you.Go to Warehouse Keeper Norman of Gludin. He will explain it all.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-03b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-03b.html new file mode 100644 index 0000000000..4a4b85c32b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-03b.html @@ -0,0 +1,4 @@ +Blacksmith Altran:
+Journeyman Deco Beads... Don't bother me with such trivial matters. It is better to ask Blacksmith Pinter of the Town of Gludio. He will tell you more.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-04.html new file mode 100644 index 0000000000..af8e521a3b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-04.html @@ -0,0 +1,5 @@ +Blacksmith Altran:
+What do you want now? Spit it out!!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-05.html new file mode 100644 index 0000000000..971b27eb62 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30283-05.html @@ -0,0 +1,3 @@ +Blacksmith Altran:
+Congratulations! You have created your ring! Now go back to Warehouse Keeper Valkon. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-02.html new file mode 100644 index 0000000000..897d70d0ae --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-02.html @@ -0,0 +1,4 @@ +Blacksmith Pinter:
+Trial of the Guildsman? Deco beads? Hey, everyone has problems, I've got mine, too! I am swamped with too much work! 30 Mithril Breastplates and 30 Bastard Swords! The dogs of war are howling! How can I possibly finish all of this?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-03.html new file mode 100644 index 0000000000..f148d50caf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-03.html @@ -0,0 +1,4 @@ +Blacksmith Pinter:
+Stop whining! You sound like a spoiled child! You say you need a Journeyman Deco Bead? To make that we need Amber Beads. I don't have any of these. I must cast a spell on Elmore's side... It will take a few weeks..
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-04.html new file mode 100644 index 0000000000..428550b146 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-04.html @@ -0,0 +1,5 @@ +Blacksmith Pinter:
+You think you can get the Amber Beads by yourself...? Oho! Indeed you are a Scavenger! I can tell you where to look.
+There are giant ants living in the Wastelands, in the southern part of Gludio. They mine the Amber Beads, which are plentiful there. To get the beads you must kill the work ants not the ant soldiers, understand? You will be able to collect faster by casting Spoil.
+We will need about 20 beads to make Journeyman Deco Beads. However I can also use them in my work, I would be very grateful if you brought back 70. I will give your order top priority. Quite a deal, huh? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-05.html new file mode 100644 index 0000000000..db69a3e559 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-05.html @@ -0,0 +1,7 @@ +Blacksmith Pinter:
+You think you can get the Amber Beads by yourself? Oho! You are not even a Scavenger! Oh, well, if you want to try I can tell you where to find them..
+There are giant ants living in the Wastelands, in the southern part of Gludio. They mine the Amber Beads which are plentiful in that place. To get the beads you must kill the work ants instead of ant soldiers, got it?
+We need about 20 beads to make Journeyman Decoration Beads. However, I also use them in my work, it would be nice if you brought back 70. I will give your order top priority. So how about it, a good deal, no?
+Oh yes! And take this recipe. It will help you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-05a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-05a.html new file mode 100644 index 0000000000..20c872d8a3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-05a.html @@ -0,0 +1,3 @@ +Blacksmith Pinter:
+You will find Amber Lump after killing the worker ants. If you grind the Amber Lump as in this recipe, you can make 5 Amber Beads. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-06.html new file mode 100644 index 0000000000..975225504f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-06.html @@ -0,0 +1,3 @@ +Blacksmith Pinter:
+How many beads have you collected? That is not enough! Are you sure that you are looking in the Wastelands? Hurry and collect 70 Amber Beads. I will see to the preparations for making the decoration bead. Hurry back with the beads! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-07.html new file mode 100644 index 0000000000..d23e0ac127 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-07.html @@ -0,0 +1,4 @@ +Blacksmith Pinter:
+Good job! Aren't they beautiful! First separate 50 of them...! Now, shall I start? I will drill these and make splendid Journeyman Decoration Beads.
+OK, all done! Here are your beads. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-08.html new file mode 100644 index 0000000000..da53c84d8f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30298-08.html @@ -0,0 +1,3 @@ +Blacksmith Pinter:
+Good luck on the Trial of Guild, my friend! Could I bother you for a drink if you are passing by? I will pay if you can't, ha ha. I have much work to do, and little time to do it. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30688-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30688-01.html new file mode 100644 index 0000000000..d8df8b8e87 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30688-01.html @@ -0,0 +1,5 @@ +Blacksmith Duning:
+Oh, yes, I made those keys. Would you like to know the secrets to making a key?
+Spirit, patience, nature, and passion. Harmony between the key and the lock is important, too. Inner and outer harmony are equally important.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30688-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30688-02.html new file mode 100644 index 0000000000..e9fc4081b2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30688-02.html @@ -0,0 +1,4 @@ +Blacksmith Duning:
+We're both Dwarves, we should stick together, right? You mustn't repeat what I am about to tell you. I have lost all of my 30 keys to the Breka Orc beggars. If word got out about this my reputation with the guild would be destroyed!
+Please my young friend, could you help me this once? Please find the keys for me, it doesn't matter what condition they are in! Can I count on you? Breka Orcs can be found at Breka's Stronghold. You can, of course, find Breka orcs in Breka's Stronghold. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30688-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30688-03.html new file mode 100644 index 0000000000..1f5f71ccb8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30688-03.html @@ -0,0 +1,3 @@ +Blacksmith Duning:
+Please get my 30 keys back from the Breka Orcs located in Breka's Stronghold. My reputation with the guild is at stake. I would really appreciate the help. You are currently undergoing the Trial of the Guildsman, right? Then I'm sure you understand my position. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30688-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30688-04.html new file mode 100644 index 0000000000..1e51c1f5a4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30688-04.html @@ -0,0 +1,3 @@ +Blacksmith Duning:
+Oh thank you so much my young friend. My reputation with the guild is secured. I'm afraid they would have kicked me out for that blunder. I owe you one, friend. Please take these keys to Warehouse Keeper Norman. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30688-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30688-05.html new file mode 100644 index 0000000000..3e0a7f1b8f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/30688-05.html @@ -0,0 +1,3 @@ +Blacksmith Duning:
+You are still here? Thank you again for finding my keys, you helped me more than you know. I will pay you back someday. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/Q00216_TrialOfTheGuildsman.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/Q00216_TrialOfTheGuildsman.java new file mode 100644 index 0000000000..ff68c34be8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00216_TrialOfTheGuildsman/Q00216_TrialOfTheGuildsman.java @@ -0,0 +1,645 @@ +/* + * 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.Q00216_TrialOfTheGuildsman; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.itemcontainer.Inventory; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Trial Of The Guildsman (216) + * @author ivantotov + */ +public final class Q00216_TrialOfTheGuildsman extends Quest +{ + private static final int WAREHOUSE_KEEPER_VALKON = 30103; + private static final int WAREHOUSE_KEEPER_NORMAN = 30210; + private static final int BLACKSMITH_ALTRAN = 30283; + private static final int BLACKSMITH_PINTER = 30298; + private static final int BLACKSMITH_DUNING = 30688; + // Items + private static final int RECIPE_JOURNEYMAN_RING = 3024; + private static final int RECIPE_AMBER_BEAD = 3025; + private static final int VALKONS_RECOMMENDATION = 3120; + private static final int MANDRAGORA_BERRY = 3121; + private static final int ALLTRANS_INSTRUCTIONS = 3122; + private static final int ALLTRANS_1ST_RECOMMENDATION = 3123; + private static final int ALLTRANS_2ND_RECOMMENDATION = 3124; + private static final int NORMANS_INSTRUCTIONS = 3125; + private static final int NORMANS_RECEIPT = 3126; + private static final int DUNINGS_INSTRUCTIONS = 3127; + private static final int DUNINGS_KEY = 3128; + private static final int NORMANS_LIST = 3129; + private static final int GRAY_BONE_POWDER = 3130; + private static final int GRANITE_WHETSTONE = 3131; + private static final int RED_PIGMENT = 3132; + private static final int BRAIDED_YARN = 3133; + private static final int JOURNEYMAN_GEM = 3134; + private static final int PINTERS_INSTRUCTIONS = 3135; + private static final int AMBER_BEAD = 3136; + private static final int AMBER_LUMP = 3137; + private static final int JOURNEYMAN_DECO_BEADS = 3138; + private static final int JOURNEYMAN_RING = 3139; + // Reward + private static final int MARK_OF_GUILDSMAN = 3119; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monsters + private static final int ANT = 20079; + private static final int ANT_CAPTAIN = 20080; + private static final int ANT_OVERSEER = 20081; + private static final int GRANITE_GOLEM = 20083; + private static final int MANDRAGORA_SPROUT1 = 20154; + private static final int MANDRAGORA_SAPLONG = 20155; + private static final int MANDRAGORA_BLOSSOM = 20156; + private static final int SILENOS = 20168; + private static final int STRAIN = 20200; + private static final int GHOUL = 20201; + private static final int DEAD_SEEKER = 20202; + private static final int MANDRAGORA_SPROUT2 = 20223; + private static final int BREKA_ORC = 20267; + private static final int BREKA_ORC_ARCHER = 20268; + private static final int BREKA_ORC_SHAMAN = 20269; + private static final int BREKA_ORC_OVERLORD = 20270; + private static final int BREKA_ORC_WARRIOR = 20271; + // Misc + private static final int MIN_LVL = 35; + + public Q00216_TrialOfTheGuildsman() + { + super(216); + addStartNpc(WAREHOUSE_KEEPER_VALKON); + addTalkId(WAREHOUSE_KEEPER_VALKON, WAREHOUSE_KEEPER_NORMAN, BLACKSMITH_ALTRAN, BLACKSMITH_PINTER, BLACKSMITH_DUNING); + addKillId(ANT, ANT_CAPTAIN, ANT_OVERSEER, GRANITE_GOLEM, MANDRAGORA_SPROUT1, MANDRAGORA_SAPLONG, MANDRAGORA_BLOSSOM, SILENOS, STRAIN, GHOUL, DEAD_SEEKER, MANDRAGORA_SPROUT2, BREKA_ORC, BREKA_ORC_ARCHER, BREKA_ORC_SHAMAN, BREKA_ORC_OVERLORD, BREKA_ORC_WARRIOR); + registerQuestItems(RECIPE_JOURNEYMAN_RING, RECIPE_AMBER_BEAD, VALKONS_RECOMMENDATION, MANDRAGORA_BERRY, ALLTRANS_INSTRUCTIONS, ALLTRANS_1ST_RECOMMENDATION, ALLTRANS_2ND_RECOMMENDATION, NORMANS_INSTRUCTIONS, NORMANS_RECEIPT, DUNINGS_INSTRUCTIONS, DUNINGS_KEY, NORMANS_LIST, GRAY_BONE_POWDER, GRANITE_WHETSTONE, RED_PIGMENT, BRAIDED_YARN, JOURNEYMAN_GEM, PINTERS_INSTRUCTIONS, AMBER_BEAD, AMBER_LUMP, JOURNEYMAN_DECO_BEADS, JOURNEYMAN_RING); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (getQuestItemsCount(player, Inventory.ADENA_ID) >= 2000) + { + qs.startQuest(); + takeItems(player, Inventory.ADENA_ID, 2000); + if (!hasQuestItems(player, VALKONS_RECOMMENDATION)) + { + giveItems(player, VALKONS_RECOMMENDATION, 1); + } + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 85); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30103-06d.htm"; + } + else + { + htmltext = "30103-06.htm"; + } + } + else + { + htmltext = "30103-05b.htm"; + } + break; + } + case "30103-04.htm": + case "30103-05.htm": + case "30103-05a.html": + case "30103-06a.html": + case "30103-06b.html": + case "30103-06c.html": + case "30103-07a.html": + case "30103-07b.html": + case "30103-07c.html": + case "30210-02.html": + case "30210-03.html": + case "30210-08.html": + case "30210-09.html": + case "30210-11a.html": + case "30283-03a.html": + case "30283-03b.html": + case "30283-04.html": + case "30298-03.html": + case "30298-05a.html": + { + htmltext = event; + break; + } + case "30103-09a.html": + { + if (hasQuestItems(player, ALLTRANS_INSTRUCTIONS) && (getQuestItemsCount(player, JOURNEYMAN_RING) >= 7)) + { + giveAdena(player, 187606, true); + giveItems(player, MARK_OF_GUILDSMAN, 1); + addExpAndSp(player, 1029478, 66768); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = event; + } + break; + } + case "30103-09b.html": + { + if (hasQuestItems(player, ALLTRANS_INSTRUCTIONS) && (getQuestItemsCount(player, JOURNEYMAN_RING) >= 7)) + { + giveAdena(player, 93803, true); + giveItems(player, MARK_OF_GUILDSMAN, 1); + addExpAndSp(player, 514739, 33384); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = event; + } + break; + } + case "30210-04.html": + { + if (hasQuestItems(player, ALLTRANS_1ST_RECOMMENDATION)) + { + takeItems(player, ALLTRANS_1ST_RECOMMENDATION, 1); + giveItems(player, NORMANS_INSTRUCTIONS, 1); + giveItems(player, NORMANS_RECEIPT, 1); + htmltext = event; + } + break; + } + case "30210-10.html": + { + if (hasQuestItems(player, NORMANS_INSTRUCTIONS)) + { + takeItems(player, NORMANS_INSTRUCTIONS, 1); + takeItems(player, DUNINGS_KEY, -1); + giveItems(player, NORMANS_LIST, 1); + htmltext = event; + } + break; + } + case "30283-03.html": + { + if (hasQuestItems(player, VALKONS_RECOMMENDATION, MANDRAGORA_BERRY)) + { + giveItems(player, RECIPE_JOURNEYMAN_RING, 1); + takeItems(player, VALKONS_RECOMMENDATION, 1); + takeItems(player, MANDRAGORA_BERRY, 1); + giveItems(player, ALLTRANS_INSTRUCTIONS, 1); + giveItems(player, ALLTRANS_1ST_RECOMMENDATION, 1); + giveItems(player, ALLTRANS_2ND_RECOMMENDATION, 1); + qs.setCond(5, true); + htmltext = event; + } + break; + } + case "30298-04.html": + { + if (player.getClassId() == ClassId.SCAVENGER) + { + if (hasQuestItems(player, ALLTRANS_2ND_RECOMMENDATION)) + { + takeItems(player, ALLTRANS_2ND_RECOMMENDATION, 1); + giveItems(player, PINTERS_INSTRUCTIONS, 1); + htmltext = event; + } + } + else if (hasQuestItems(player, ALLTRANS_2ND_RECOMMENDATION)) + { + giveItems(player, RECIPE_AMBER_BEAD, 1); + takeItems(player, ALLTRANS_2ND_RECOMMENDATION, 1); + giveItems(player, PINTERS_INSTRUCTIONS, 1); + htmltext = "30298-05.html"; + } + break; + } + case "30688-02.html": + { + if (hasQuestItems(player, NORMANS_RECEIPT)) + { + takeItems(player, NORMANS_RECEIPT, 1); + giveItems(player, DUNINGS_INSTRUCTIONS, 1); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + switch (npc.getId()) + { + case ANT: + case ANT_CAPTAIN: + case ANT_OVERSEER: + { + final QuestState qs = getRandomPartyMemberState(killer, -1, 2, npc); + if (qs != null) + { + int count = 0; + if ((qs.getPlayer().getClassId() == ClassId.SCAVENGER) && npc.isSweepActive()) + { + count += 5; + } + + if (getRandomBoolean() && (qs.getPlayer().getClassId() == ClassId.ARTISAN)) + { + giveItems(qs.getPlayer(), AMBER_LUMP, 1); + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + + if ((getQuestItemsCount(qs.getPlayer(), AMBER_BEAD) + count) < 70) + { + count += 5; + } + + if (count > 0) + { + giveItemRandomly(qs.getPlayer(), npc, AMBER_BEAD, count, 70, 1.0, true); + } + } + break; + } + case GRANITE_GOLEM: + { + final QuestState qs = getRandomPartyMemberState(killer, -1, 2, npc); + if (qs != null) + { + giveItems(qs.getPlayer(), GRANITE_WHETSTONE, 7); + if (getQuestItemsCount(qs.getPlayer(), GRANITE_WHETSTONE) == 70) + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MANDRAGORA_SPROUT1: + case MANDRAGORA_SAPLONG: + case MANDRAGORA_BLOSSOM: + case MANDRAGORA_SPROUT2: + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + if (hasQuestItems(killer, VALKONS_RECOMMENDATION) && !hasQuestItems(killer, MANDRAGORA_BERRY)) + { + giveItems(killer, MANDRAGORA_BERRY, 1); + qs.setCond(4, true); + } + } + break; + } + case SILENOS: + { + final QuestState qs = getRandomPartyMemberState(killer, -1, 2, npc); + if (qs != null) + { + giveItems(qs.getPlayer(), BRAIDED_YARN, 10); + if (getQuestItemsCount(qs.getPlayer(), BRAIDED_YARN) == 70) + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case STRAIN: + case GHOUL: + { + final QuestState qs = getRandomPartyMemberState(killer, -1, 2, npc); + if (qs != null) + { + giveItems(qs.getPlayer(), GRAY_BONE_POWDER, 5); + if (getQuestItemsCount(qs.getPlayer(), GRAY_BONE_POWDER) == 70) + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case DEAD_SEEKER: + { + final QuestState qs = getRandomPartyMemberState(killer, -1, 2, npc); + if (qs != null) + { + giveItems(qs.getPlayer(), RED_PIGMENT, 7); + if (getQuestItemsCount(qs.getPlayer(), RED_PIGMENT) == 70) + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case BREKA_ORC: + case BREKA_ORC_ARCHER: + case BREKA_ORC_SHAMAN: + case BREKA_ORC_OVERLORD: + case BREKA_ORC_WARRIOR: + { + final QuestState qs = getRandomPartyMemberState(killer, -1, 2, npc); + if (qs != null) + { + if (getQuestItemsCount(qs.getPlayer(), DUNINGS_KEY) >= 29) + { + giveItems(qs.getPlayer(), DUNINGS_KEY, 1); + takeItems(qs.getPlayer(), DUNINGS_INSTRUCTIONS, 1); + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + giveItems(qs.getPlayer(), DUNINGS_KEY, 1); + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == WAREHOUSE_KEEPER_VALKON) + { + if ((player.getClassId() == ClassId.ARTISAN) || (player.getClassId() == ClassId.SCAVENGER)) + { + if (player.getLevel() < MIN_LVL) + { + htmltext = "30103-02.html"; + } + else + { + htmltext = "30103-03.htm"; + } + } + else + { + htmltext = "30103-01.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case WAREHOUSE_KEEPER_VALKON: + { + if (hasQuestItems(player, VALKONS_RECOMMENDATION)) + { + qs.setCond(3, true); + htmltext = "30103-07.html"; + } + else if (hasQuestItems(player, ALLTRANS_INSTRUCTIONS)) + { + if (getQuestItemsCount(player, JOURNEYMAN_RING) < 7) + { + htmltext = "30103-08.html"; + } + else + { + htmltext = "30103-09.html"; + } + } + break; + } + case WAREHOUSE_KEEPER_NORMAN: + { + if (hasQuestItems(player, ALLTRANS_INSTRUCTIONS)) + { + if (hasQuestItems(player, ALLTRANS_1ST_RECOMMENDATION)) + { + htmltext = "30210-01.html"; + } + else if (hasQuestItems(player, NORMANS_INSTRUCTIONS, NORMANS_RECEIPT)) + { + htmltext = "30210-05.html"; + } + else if (hasQuestItems(player, NORMANS_INSTRUCTIONS, DUNINGS_INSTRUCTIONS)) + { + htmltext = "30210-06.html"; + } + else if (hasQuestItems(player, NORMANS_INSTRUCTIONS) && (getQuestItemsCount(player, DUNINGS_KEY) >= 30)) + { + htmltext = "30210-07.html"; + } + else if (hasQuestItems(player, NORMANS_LIST)) + { + if ((getQuestItemsCount(player, GRAY_BONE_POWDER) >= 70) && (getQuestItemsCount(player, GRANITE_WHETSTONE) >= 70) && (getQuestItemsCount(player, RED_PIGMENT) >= 70) && (getQuestItemsCount(player, BRAIDED_YARN) >= 70)) + { + takeItems(player, NORMANS_LIST, 1); + takeItems(player, GRAY_BONE_POWDER, -1); + takeItems(player, GRANITE_WHETSTONE, -1); + takeItems(player, RED_PIGMENT, -1); + takeItems(player, BRAIDED_YARN, -1); + giveItems(player, JOURNEYMAN_GEM, 7); + if (getQuestItemsCount(player, JOURNEYMAN_DECO_BEADS) >= 7) + { + qs.setCond(6, true); + } + htmltext = "30210-12.html"; + } + else + { + htmltext = "30210-11.html"; + } + } + else if (!hasAtLeastOneQuestItem(player, NORMANS_INSTRUCTIONS, NORMANS_LIST) && hasAtLeastOneQuestItem(player, JOURNEYMAN_GEM, JOURNEYMAN_RING)) + { + htmltext = "30210-13.html"; + } + } + break; + } + case BLACKSMITH_ALTRAN: + { + if (hasQuestItems(player, VALKONS_RECOMMENDATION)) + { + if (!hasQuestItems(player, MANDRAGORA_BERRY)) + { + qs.setCond(2, true); + htmltext = "30283-01.html"; + } + else + { + htmltext = "30283-02.html"; + } + } + else if (hasQuestItems(player, ALLTRANS_INSTRUCTIONS)) + { + if (getQuestItemsCount(player, JOURNEYMAN_RING) < 7) + { + htmltext = "30283-04.html"; + } + else + { + htmltext = "30283-05.html"; + } + } + break; + } + case BLACKSMITH_PINTER: + { + if (hasQuestItems(player, ALLTRANS_INSTRUCTIONS)) + { + if (hasQuestItems(player, ALLTRANS_2ND_RECOMMENDATION)) + { + htmltext = "30298-02.html"; + } + else if (hasQuestItems(player, PINTERS_INSTRUCTIONS)) + { + if (getQuestItemsCount(player, AMBER_BEAD) < 70) + { + htmltext = "30298-06.html"; + } + else + { + takeItems(player, RECIPE_AMBER_BEAD, 1); + takeItems(player, PINTERS_INSTRUCTIONS, 1); + takeItems(player, AMBER_BEAD, -1); + takeItems(player, AMBER_LUMP, -1); + giveItems(player, JOURNEYMAN_DECO_BEADS, 7); + if (getQuestItemsCount(player, JOURNEYMAN_GEM) >= 7) + { + qs.setCond(6, true); + } + htmltext = "30298-07.html"; + } + } + else if (!hasQuestItems(player, PINTERS_INSTRUCTIONS) && hasAtLeastOneQuestItem(player, JOURNEYMAN_DECO_BEADS, JOURNEYMAN_RING)) + { + htmltext = "30298-08.html"; + } + } + break; + } + case BLACKSMITH_DUNING: + { + if (hasQuestItems(player, ALLTRANS_INSTRUCTIONS, NORMANS_INSTRUCTIONS)) + { + if (hasQuestItems(player, NORMANS_RECEIPT) && !hasQuestItems(player, DUNINGS_INSTRUCTIONS)) + { + htmltext = "30688-01.html"; + } + if (hasQuestItems(player, DUNINGS_INSTRUCTIONS) && !hasQuestItems(player, NORMANS_RECEIPT) && (getQuestItemsCount(player, DUNINGS_KEY) < 30)) + { + htmltext = "30688-03.html"; + } + else if ((getQuestItemsCount(player, DUNINGS_KEY) >= 30) && !hasQuestItems(player, DUNINGS_INSTRUCTIONS)) + { + htmltext = "30688-04.html"; + } + } + else if (hasQuestItems(player, ALLTRANS_INSTRUCTIONS) && !hasAtLeastOneQuestItem(player, NORMANS_INSTRUCTIONS, DUNINGS_INSTRUCTIONS)) + { + htmltext = "30688-05.html"; + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == WAREHOUSE_KEEPER_VALKON) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } + + @Override + public boolean checkPartyMember(L2PcInstance player, L2Npc npc) + { + boolean check = false; + switch (npc.getId()) + { + case ANT: + case ANT_CAPTAIN: + case ANT_OVERSEER: + { + check = hasQuestItems(player, ALLTRANS_INSTRUCTIONS, PINTERS_INSTRUCTIONS) && (getQuestItemsCount(player, AMBER_BEAD) < 70); + break; + } + case GRANITE_GOLEM: + { + check = hasQuestItems(player, ALLTRANS_INSTRUCTIONS, NORMANS_LIST) && (getQuestItemsCount(player, GRANITE_WHETSTONE) < 70); + break; + } + case SILENOS: + { + check = hasQuestItems(player, ALLTRANS_INSTRUCTIONS, NORMANS_LIST) && (getQuestItemsCount(player, BRAIDED_YARN) < 70); + break; + } + case STRAIN: + case GHOUL: + { + check = hasQuestItems(player, ALLTRANS_INSTRUCTIONS, NORMANS_LIST) && (getQuestItemsCount(player, GRAY_BONE_POWDER) < 70); + break; + } + case DEAD_SEEKER: + { + check = hasQuestItems(player, ALLTRANS_INSTRUCTIONS, NORMANS_LIST) && (getQuestItemsCount(player, RED_PIGMENT) < 70); + break; + } + case BREKA_ORC: + case BREKA_ORC_ARCHER: + case BREKA_ORC_SHAMAN: + case BREKA_ORC_OVERLORD: + case BREKA_ORC_WARRIOR: + { + check = hasQuestItems(player, ALLTRANS_INSTRUCTIONS, NORMANS_INSTRUCTIONS, DUNINGS_INSTRUCTIONS) && (getQuestItemsCount(player, DUNINGS_KEY) < 30); + break; + } + } + return check; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30031-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30031-01.html new file mode 100644 index 0000000000..5e6282948a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30031-01.html @@ -0,0 +1,4 @@ +Priest Biotin:
+Welcome, welcome, my friend! It's been such a long time! Ah, it seems like only yesterday that you finished your studies and left to see the wide world. And here you are, all grown up, strong and straight as a reed. My heart sings to see you well! Thanks be to Einhasad!
+Hollint told me what a great thing you've done. Repairing broken trust is no simple matter, but if we deal with sincerity and purpose, I think it is possible, with Einhasad's help. Here, take this, my friend. You have truly earned this Mark of Trust. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-01.html new file mode 100644 index 0000000000..71a52e7147 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-01.html @@ -0,0 +1,4 @@ +Hierarch Asterios:
+Welcome. I am Asterios, the chosen emmissary of Eva, the mother of all forests and nymphs. Of the 12 chosen hierarchs, I am the last remaining representative in this land of the final sovereign, Valderan. I rule the Elves of light. What brings you to my presence?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-02.html new file mode 100644 index 0000000000..86cf45b31a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-02.html @@ -0,0 +1,6 @@ +Hierarch Asterios:
+Building trust between Elves and Humans is easier said than done...
+You foolish Humans... First you betray your faith and now claim to want it back... Totally untrustworthy! If you are sincere you must prove yourself to me!
+Our forest was devastated during the war with the Humans. Of course, we share some of the blame for the destruction, but your race started the war in the first place, and bear most of the responsibility for it! If you truly wish to build trust between our races, you must endeavor to repair the damage!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-03.html new file mode 100644 index 0000000000..ccccf87de9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-03.html @@ -0,0 +1,6 @@ +Hierarch Asterios:
+In the Elven Forest, the spirits of the wind and the trees are becoming vicious. If we can ameliorate the leaders of these spirits we will probably be able to suppress this disturbance...
+The Chief of the wind spirit lireins is called Luell of Zephyr Winds. You can meet her if you follow the lireins.
+And the Chief of the tree spirits is called Actea of Verdant Wilds. You will find him if you hunt for the dryads...
+I wish you success. May you have the blessing of the starlight. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-04.html new file mode 100644 index 0000000000..eb52cc46b9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-04.html @@ -0,0 +1,3 @@ +Hierarch Asterios:
+Are Humans just helpless creatures who are all mouths and out-stretched hands? Why don't you go to the Elven Forest and exterminate Luell of Zephyr Winds, head of the lireins, and Actea of Verdant Wilds, head of all dryads? We will discuss trust after they are dead. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-05.html new file mode 100644 index 0000000000..3e5ef16a25 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-05.html @@ -0,0 +1,5 @@ +Hierarch Asterios:
+Thank you. The breath of the wind will clear the forest air and seedlings of new life will spring from the earth. As our Elven Forest slowly recovers from its wounds, so will our trust in Humans recover.
+Here is a letter, but you must not expect absolute trust just yet. The future relations between our races depends largely on how Humans behave from now on... We will be watching. Especially young people like you...
+By the way, let me guess where you are off to now. I'll wager you are going to try to meet those poor Dark Elves... You must take care. They are not trustworthy. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-06.html new file mode 100644 index 0000000000..032b309e78 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30154-06.html @@ -0,0 +1,3 @@ +Hierarch Asterios:
+Are you still here... You already have our answer. Take it and be on your way to the village of the Dark Elves... The leader of darkness, High Priest Thifiell is waiting. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-01.html new file mode 100644 index 0000000000..2133911acc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-01.html @@ -0,0 +1,4 @@ + High Priest Hollint:
+You're not ready yet, my child. Even the strongest of beasts must first learn to walk before it can run. Be patient, and your time will come.
+(This quest may only be performed by Human characters of level 37 and higher.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-01a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-01a.html new file mode 100644 index 0000000000..3b21db3c21 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-01a.html @@ -0,0 +1,4 @@ + High Priest Hollint:
+I hear you've not even changed your occupation once! I fear that this test of mine will be too much for you at the moment, but train hard, complete your first occupation change, then come and see me.
+(This quest may only be undertaken by Human characters of level 37 or higher, who have completed their first occupation change.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-01b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-01b.html new file mode 100644 index 0000000000..ae03fcdbcc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-01b.html @@ -0,0 +1,4 @@ + High Priest Hollint:
+You have already completed the Testimony of Trust, my child. Your task now is nothing short of working to create a better future for our world entire. May the light of Einhasad guide your path!
+(You have already completed this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-02.html new file mode 100644 index 0000000000..e1d0aafb33 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-02.html @@ -0,0 +1,5 @@ + High Priest Hollint:
+You'll appreciate this more once you've been made aware of our history, and this trial will give you the briefest of insights everything that gone before your time here.
+I am sure that you will do well when the time comes.
+(This quest may only be undertaken by Human characters of level 37 and higher.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-03.htm new file mode 100644 index 0000000000..fa3b28d2fd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-03.htm @@ -0,0 +1,4 @@ + High Priest Hollint:
+If you wish to achieve your dreams and ambitions, make the most of the sum of your being, then you must acquire the Mark of Trust. This mark is given to those who represent the best of us, a symbol given to the strongest and bravest of our young... those capable of leading humanity towards a better future. If you are able to complete all of the Trials of Trust that I set before you, I'll be happy to recommend you for the award.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-04.htm new file mode 100644 index 0000000000..fdb0116cdd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-04.htm @@ -0,0 +1,6 @@ + High Priest Hollint:
+We shall see, my child! Your hubris may be a pitfall though, I'll warn you of that now.
+Now... listen carefully to my words. A great danger looms in our future; magisters have deciphered ill omens from the stars and the whispered messages of the elementals, while a bubbling tension between extremists from all six races has made war inevitable.
+If we are to survive the upcoming chaotic chronicles, we must earn the trust of other races and combine our forces to stem the disaster. To that end, we have decided to send an envoy to leaders of each race in order to regain their trust. This is the Testimony of Trust that we must now ask you to fulfill. You must represent our race as envoy to the leaders of all the other races and earn their trust so as to ensure that Aden is not pushed towards apocalypse.
+First, take these letters to the leaders of the Elf and Dark Elf races. Your first meeting should be with Elven Hierarch Asterios. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-04a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-04a.htm new file mode 100644 index 0000000000..706e4d1a75 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-04a.htm @@ -0,0 +1,8 @@ + High Priest Hollint:
+We shall see, my child! Your hubris may be a pitfall though, I'll warn you of that now.
+Now... listen carefully to my words. A great danger looms in our future; it has become apparent that some malicious entity is trying to ferment discontent among the tribes, to stir their already rising tempers and thrust them into war with each other. The high priests and grand magisters recently convened on the matter, and all realize that such a war will scar our lands for generations to come. In short, we must act.
+Our only hope at this late stage is to gain the trust of the other races and combine our strengths to survive the Time of Chaos that looms before us. However, the trust between the races is already wearing thin, so we have decided to dispatch a delegate who will take a message from the Humans to the leaders of each race. This task now falls to you, my child: we are entrusting this Testimony of Trust to you.
+As our representative, you must meet with the leader of each race, convey our message, and receive their guarantee of peace.
+Take these two pages and meet the leaders of both the Elves and Dark Elves; start by visiting Elven Magister Asterios.
+Oh, you should also take this Dimension Diamond. You can trade it with the village gatekeeper for something special that will help you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-05.html new file mode 100644 index 0000000000..d105347104 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-05.html @@ -0,0 +1,4 @@ + High Priest Hollint:
+Thank you! It is hard to determine whether we have truly earned their trust, but your work was a vital first step towards establishing better relationships.
+Now it is time for you to attempt to recover the trust of the Orcs and Dwarves. First, meet with Cardinal Seresin of this very town. He is working hard to re-establish trust between the races, and will likely be most helpful to you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-06.html new file mode 100644 index 0000000000..353fd485ca --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-06.html @@ -0,0 +1,5 @@ + High Priest Hollint:
+Greetings!
+It is not easy to restore trust once it has been broken, but now thanks to your hard work, an opportunity has arisen. Based on your results, it seems that the impending chaotic chronicles were instigated by the followers of Shilen - finally we have a name, a perpetrator that we can bring to justice!
+Now, the Mark of Trust is currently in the care of High Priest Biotin of the Talking Island. He wants to meet you, so hand him this letter and he'll have a great deal to say to you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-07.html new file mode 100644 index 0000000000..0ec38652f8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-07.html @@ -0,0 +1,3 @@ + High Priest Hollint:
+The Mark of Trust is currently in the care of High Priest Biotin on Talking Island. I'll write you a Letter of Recommendation. He wants to meet you, so hurry along my child! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-08.html new file mode 100644 index 0000000000..be707a1c5e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-08.html @@ -0,0 +1,4 @@ +High Priest Hollint:
+You must represent the Humans as our envoy to the leaders of each race. Deliver them our message, work to restore trust between our races, and then obtain their word that their intentions are for peace, and not for war.
+Now hurry! Take the letters I have given you and see the rulers of the Elves and Dark Elves. You must first meet with Elven Hierarch Asterios. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-09.html new file mode 100644 index 0000000000..549205eb41 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30191-09.html @@ -0,0 +1,3 @@ +High Priest Hollint:
+First meet with Cardinal Seresin in the Town of Oren. He's working hard to restore trust between the races - I'm sure you'll be of great use to each other. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30358-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30358-01.html new file mode 100644 index 0000000000..a3fd168a4d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30358-01.html @@ -0,0 +1,4 @@ +Tetrarch Thifiell
+May the mercy of Shilen be upon you. I am the chosen one of Gran Kain, the Father of shadow, and Shilen, the Mother of the abyss. I speak on behalf of the Hierarch, who was sealed by those hypocritical followers of the light. I represent the senior council that governs the race of darkness. I am Tetrarch Thifiell, who released his captive brothers from their underground exile and recovered the shadow forest from the Elves. Why have you come to see me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30358-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30358-02.html new file mode 100644 index 0000000000..f0f2b3be73 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30358-02.html @@ -0,0 +1,6 @@ +Tetrarch Thifiell:
+Trust... How dare you ask for such a thing from us... Remember the infamous betrayer Dasparion? He was of your race! And it was Human Wizards who sealed our leader! How could we possibly trust the Humans? Do you think that all the past injustices can be forgotten with a simple letter? You fool! I will never understand Humans!
+...However, we have been expecting the Chaotic Chronicle as have you. When that dark time arrives we may have to cooperate in order to survive... I suppose that, for such reasons, we should try to recover the trust between our races.
+But trust is not something that can be given freely. If you exhibit true sincerity, I'll consider your proposal.
+We have tried for centuries to break the magic spell on our Hierarch Mitraell. He is privy to the secrets of Shilen and the Queen of Destruction, more than anyone else. It is no exaggeration to say that he holds a vital clue to the upcoming Chaotic Chronicle.
You must collect the research materials regarding the release of our leader. I don't feel bad about asking for your help, since it was your ancestors who sealed our Hierarch. Take this letter to Magister Clayton of the Town of Dion. He will give you the list of materials to collect. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30358-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30358-03.html new file mode 100644 index 0000000000..f74d3fa3e7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30358-03.html @@ -0,0 +1,4 @@ +Tetrarch Thifiell:
+Good job. You have been of great help in our efforts to free Mitraell, our tribal leader. Take this letter. It indicates that we have accepted the Humans' request and have agreed upon the need for trust between our races to deal with the upcoming Chaotic Chronicle.
+This is only the beginning of the restoration of our trust. Time will tell if our trust in each other can continue. Now return to your King. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30358-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30358-04.html new file mode 100644 index 0000000000..dcaf0e477b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30358-04.html @@ -0,0 +1,3 @@ +Tetrarch Thifiell
+I will keep a close eye on the Humans' behavior. I pray that our trust will grow. Now return to your King. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30358-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30358-05.html new file mode 100644 index 0000000000..c01cc84aab --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30358-05.html @@ -0,0 +1,3 @@ +Tetrarch Thifiell
+Why are you still here? Have you met Magister Clayton from the Town of Dion? Have you come to improve relations between our races or is there something else on your mind? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30464-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30464-01.html new file mode 100644 index 0000000000..8dba368ed8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30464-01.html @@ -0,0 +1,6 @@ +Magister Clayton:
+I don't understand why the Tetrarch would ask an outsider like you to do a job such as this. But I do not doubt the wisdom of Thifiell, and I have always observed the commandments of our race. So despite my reluctance, I will help you. I will tell you what ingredients you must collect.
+First, go to Death Pass and collect the blood of a Guardian Basilisk. If you have 5 bottles of its blood, it can be refined into Basilisk Plasma. Then go to the Wasteland and kill enough
+Ant Soldiers to collect 5 Aphids. With them you will be able to obtain Honey Dew.
+Lastly, go to the Cruma Marshlands and capture Marsh Stakatos in order to collect 5 bottles of their fluids. They in turn can be rendered into Stakato Ichor. Bring all three substances to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30464-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30464-02.html new file mode 100644 index 0000000000..7bc8349c86 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30464-02.html @@ -0,0 +1,6 @@ +Magister Clayton:
+You must collect all three of the ingredients I described to you. Should I tell you one more time? Your race is so impatient that you forget the details!
+First, go to Death Pass and collect the blood of a Guardian Basilisk. If you have 5 bottles of its blood, it can be refined into Basilisk Plasma. Then go to the Wasteland and kill enough
+Ant Soldiers to collect 5 Aphids. With them you will be able to obtain Honey Dew.
+Lastly, go to the Cruma Marshlands and capture Marsh Stakatos in order to collect 5 bottles of their fluids. They in turn can be rendered into Stakato Ichor. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30464-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30464-03.html new file mode 100644 index 0000000000..12aaa15777 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30464-03.html @@ -0,0 +1,4 @@ +Magister Clayton:
+Basilisk Plasma, honeydew, and Stakato Ichor... You have found all 3 materials. Thank you.
+Now take them and go back to Tetrarch Thifiell. He has something to tell you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30515-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30515-01.html new file mode 100644 index 0000000000..6351746bbf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30515-01.html @@ -0,0 +1,4 @@ +Seer Manakia:
+Why would the Flame Lord ask a Human for assistance with a tribal matter? Since we are short-handed I won't refuse.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30515-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30515-02.html new file mode 100644 index 0000000000..0233ebe97e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30515-02.html @@ -0,0 +1,5 @@ +Seer Manakia:
+Recently a delegation from the Neruga tribe were savagely attacked by a pack of wild boars as they were traveling to Aden Castle! These bestial boars are called the Windsus, and are known to live around Death Pass in Northern Giran.
+Long ago, the Lota tribe, whose totem was a wild boar, was annihilated there. After the slaughter, their totem was buried alive on the spot. It appears that his spirit has possessed the wild boars in the area! Some brave warriors from the Hestui tribe gave their lives to give us this information.
+Can you help us? Kill the Windsus and you'll find a small parasitic insect in their flesh. This is the Parasite of Lota, and is apparently the cause of the boars' behavior. Collect 10 parasites and bring them to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30515-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30515-03.html new file mode 100644 index 0000000000..aee8713619 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30515-03.html @@ -0,0 +1,3 @@ +Seer Manakia:
+Do you comprehend the gravity of the situation? This is the last time I will tell you! You must kill the wild boar Windsus and bring back 10 Parasites of Lota. Is that clear? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30515-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30515-04.html new file mode 100644 index 0000000000..c8b2fdac71 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30515-04.html @@ -0,0 +1,3 @@ +Seer Manakia:
+Ah, you have defeated the wild boars... Thank you. If we examine these Parasites of Lota we will discover the identity of the person who dares to control the totem spirit. I've got a bad feeling about this whole affair... Something smells rotten. This could just be the tip of the iceberg. I hope I am wrong... But all can see the approach of the Chaotic Chronicle. You were of great help in solving this case. Take this letter to the Flame Lord. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30515-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30515-05.html new file mode 100644 index 0000000000..0006f74da1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30515-05.html @@ -0,0 +1,3 @@ +Seer Manakia:
+Lord Kakai does not like to be kept waiting! Go to him now! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30531-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30531-01.html new file mode 100644 index 0000000000..3691038ebf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30531-01.html @@ -0,0 +1,5 @@ +First Elder Lockirin:
+Welcome, young friend, to the House of Elders. My name is Lockirin Stonecutter. I am the Head Elder of the Bronze Door Guild, and the First Elder of the Guild Elder Association. Impressive, eh?
+What I actually do is humor the old goats in the Seniors Association. So, what brings you here?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30531-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30531-02.html new file mode 100644 index 0000000000..89f2f1b90c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30531-02.html @@ -0,0 +1,6 @@ +First Elder Lockirin:
+A promise of trust...? Oh really? First you brutalize us and drive us deep into these mountains...and now you want our cooperation?... Your race deserves the reputation for knavishness that the humans ascribe to ours!
+I'm sure you've heard the rumor that Dwarves only care about money. Well its true.
+If you'll do something for us, we'll give you your promise of trust.
+Some time ago, strange acting golems began to appear near Cruma Tower. Maestro Nikola of the 'Black Anvil' Guild was sent there to investigate but all we have heard from him are complaints about this and that. Why don't you go and lend him a hand. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30531-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30531-03.html new file mode 100644 index 0000000000..3c541b560d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30531-03.html @@ -0,0 +1,3 @@ +First Elder Lockirin:
+We will discuus this further when you have returned from assisting Maestro Nikola and completed your task. He is stationed at Cruma Tower of Dion. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30531-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30531-04.html new file mode 100644 index 0000000000..9da0871041 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30531-04.html @@ -0,0 +1,3 @@ +First Elder Lockirin:
+Nikola says that you were a great help. Hopefully this will lay a foundation for further inroads of commerce and trust between our races. Please take this letter to the Elder of your race. May the blessings of Maphr be upon you and your family. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30531-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30531-05.html new file mode 100644 index 0000000000..c590943242 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30531-05.html @@ -0,0 +1,4 @@ +First Elder Lockirin:
+I hear you are trying to restore trust between all races. Now that is a formidable task... I will pray for your success.
+I trust you have delivered my letter? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30565-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30565-01.html new file mode 100644 index 0000000000..00a0cbfad1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30565-01.html @@ -0,0 +1,4 @@ +Flame Lord Kakai:
+I am Kakai, the Flame Lord and warrior of the heavens! I, with the authority of Pa'agrio, lead the great Orc tribe with the power of the holy flame. Weak Human, why do you appear before me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30565-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30565-02.html new file mode 100644 index 0000000000..ee0bbbe0ba --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30565-02.html @@ -0,0 +1,5 @@ +Flame Lord Kakai:
+Trust? Ha! You Humans always rely on the help of others. Could this be a residual effect of your dark past of slavery? Once a slave, always a slave, right? In that case, if you are begging for help, I will not refuse you. However, there is a price that must be paid.
+Don't be frightened, it is a simple request. I know better than to ask more from a Human.
+Seer Manakia of Giran recently requested that I send soldiers to face the evil spirits that appear in those parts. I dispatched the elite Warriors of the Hestui tribe and have since lost contact with them. Go and find out what has happened to them. Take this letter and go to Seer Manakia of the Town of Giran. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30565-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30565-03.html new file mode 100644 index 0000000000..e5e2f08518 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30565-03.html @@ -0,0 +1,3 @@ +Flame Lord Kakai:
+Kakai has spoken! Go and find Seer Manakia! Leave at once for the Town of Giran! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30565-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30565-04.html new file mode 100644 index 0000000000..46372b1689 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30565-04.html @@ -0,0 +1,4 @@ +Flame Lord Kakai:
+My prediction has proven false, young Human. Take this charm and leave. This is a totem exchanged by Orc tribes to strengthen alliances and relationships! This is merely a symbolic gesture, a chance for you to prove your trustworthiness.
+Now you must try to earn the trust of those crafty Dwarves... The only things they believe in glitter and sparkle... The trust that Lockirin, head of the Dwarves speaks of may not be what you think. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30565-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30565-05.html new file mode 100644 index 0000000000..61b0998285 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30565-05.html @@ -0,0 +1,3 @@ +Flame Lord Kakai:
+Why are you still here? Did you not agree to meet those shifty Dwarves? Be careful! All they believe in are things that glitter and sparkle... The trust that Lockirin, head of the Dwarves speaks of may not be what you think. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30621-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30621-01.html new file mode 100644 index 0000000000..e15d48672b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30621-01.html @@ -0,0 +1,6 @@ +Maestro Nikola:
+Hello! Help from anyone is welcomed.
+Hidden away deep inside Cruma Tower is a mechanical brain known as the Core.
+For thousands of years, this artifact of Giant high-level technology slept. Recently, whether of its own volition or someone else's, it awoke. It began controlling creatures' actions and threatening the lives of nearby residents. It has also had a terrible effect on the 'Black Anvil' Guild, who specialize in Giant technology.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30621-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30621-02.html new file mode 100644 index 0000000000..3d2a89d407 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30621-02.html @@ -0,0 +1,5 @@ +Maestro Nikola:
+I want to find out the principle by which the Core controls the life forms. With your help, I might have a chance.
+Among the range of life forms in Cruma Tower is Porta, which seems to be a kind of Golem. We Dwarves may not know much about Elven magic or spirits, but believe me when I tell you that we're the experts when it comes to "created beings" like Golems. If I can make a close analysis of the internal structure of Porta, I think I can divine its workings. In order to do this, however, I will need a Heartstone sample.
+Will you do me this favor? Go into the Tower and bring me 1 Heartstone of Porta. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30621-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30621-03.html new file mode 100644 index 0000000000..1c8251d973 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30621-03.html @@ -0,0 +1,4 @@ +Maestro Nikola:
+Even as we talk, the people are suffering. And the daily count is...ugh!
+Hurry and get me 1 Heartstone of Porta. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30621-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30621-04.html new file mode 100644 index 0000000000..0d96eb87a0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30621-04.html @@ -0,0 +1,3 @@ +Maestro Nikola:
+Ohh...! The Heartstones of Porta! With this sample, we will be able to discover how the core controls all the creatures in this region. I promise to share the research results with the humans as well -- this represents a danger to all of us. As a representative of the Black Anvil Guild, my thanks to you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30621-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30621-05.html new file mode 100644 index 0000000000..44a26bd067 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30621-05.html @@ -0,0 +1,3 @@ +Maestro Nikola:
+Thank you for your help. The results may take a while. You should go back to Lockirin now, he is expecting you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30657-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30657-01.html new file mode 100644 index 0000000000..0455cea343 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30657-01.html @@ -0,0 +1,4 @@ +Cardinal Seresin:
+Come in! Your reputation precedes you, my friend! I am very familiar with your work to restore trust between the Elves and the Dark Elves. Now you must visit the northern ice land to meet with the leaders of the Orcs and the Dwarves!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30657-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30657-02.html new file mode 100644 index 0000000000..3933656e40 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30657-02.html @@ -0,0 +1,3 @@ +Cardinal Seresin:
+Your spirit is good but you still lack experience. Train some more before you return. Complete preparation and proper timing are essential. I will ask you to visit these leaders when you are ready. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30657-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30657-03.html new file mode 100644 index 0000000000..7a39755d6b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30657-03.html @@ -0,0 +1,3 @@ +Cardinal Seresin:
+Remember, you are Representing your race, make us proud. You must now travel to the northern ice land, meet the Orc's Lord first and then meet the Dwarven Lord. Pass them these letters. Afterwards get their promise of trust and bring back their letter of reply. May the glorious Einhasad watch over you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30657-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30657-04.html new file mode 100644 index 0000000000..2c8e9a57f2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30657-04.html @@ -0,0 +1,3 @@ +Cardinal Seresin:
+The Period of Chaos is nearly upon us! Can't you walk any faster? First, you must meet the Orc Lord and the Dwarven Lord to deliver our will. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30657-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30657-05.html new file mode 100644 index 0000000000..22334cd8ec --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/30657-05.html @@ -0,0 +1,3 @@ +Cardinal Seresin:
+Are those are the bills of trust from the Dwarf and Orc races? You have pacified a long-simmering feud. Good job! Go in and meet Bishop Hollint. He is expecting you...! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/Q00217_TestimonyOfTrust.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/Q00217_TestimonyOfTrust.java new file mode 100644 index 0000000000..b21b3310e1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00217_TestimonyOfTrust/Q00217_TestimonyOfTrust.java @@ -0,0 +1,785 @@ +/* + * 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.Q00217_TestimonyOfTrust; + +import com.l2jmobius.gameserver.enums.CategoryType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Testimony Of Trust (217) + * @author ivantotov + */ +public final class Q00217_TestimonyOfTrust extends Quest +{ + // NPCs + private static final int HIGH_PRIEST_BIOTIN = 30031; + private static final int HIERARCH_ASTERIOS = 30154; + private static final int HIGH_PRIEST_HOLLINT = 30191; + private static final int TETRARCH_THIFIELL = 30358; + private static final int MAGISTER_CLAYTON = 30464; + private static final int SEER_MANAKIA = 30515; + private static final int IRON_GATES_LOCKIRIN = 30531; + private static final int FLAME_LORD_KAKAI = 30565; + private static final int MAESTRO_NIKOLA = 30621; + private static final int CARDINAL_SERESIN = 30657; + // Items + private static final int LETTER_TO_ELF = 2735; + private static final int LETTER_TO_DARKELF = 2736; + private static final int LETTER_TO_DWARF = 2737; + private static final int LETTER_TO_ORC = 2738; + private static final int LETTER_TO_SERESIN = 2739; + private static final int SCROLL_OF_DARKELF_TRUST = 2740; + private static final int SCROLL_OF_ELF_TRUST = 2741; + private static final int SCROLL_OF_DWARF_TRUST = 2742; + private static final int SCROLL_OF_ORC_TRUST = 2743; + private static final int RECOMMENDATION_OF_HOLLIN = 2744; + private static final int ORDER_OF_ASTERIOS = 2745; + private static final int BREATH_OF_WINDS = 2746; + private static final int SEED_OF_VERDURE = 2747; + private static final int LETTER_OF_THIFIELL = 2748; + private static final int BLOOD_OF_GUARDIAN_BASILISK = 2749; + private static final int GIANT_APHID = 2750; + private static final int STAKATOS_FLUIDS = 2751; + private static final int BASILISK_PLASMA = 2752; + private static final int HONEY_DEW = 2753; + private static final int STAKATO_ICHOR = 2754; + private static final int ORDER_OF_CLAYTON = 2755; + private static final int PARASITE_OF_LOTA = 2756; + private static final int LETTER_TO_MANAKIA = 2757; + private static final int LETTER_OF_MANAKIA = 2758; + private static final int LETTER_TO_NICHOLA = 2759; + private static final int ORDER_OF_NICHOLA = 2760; + private static final int HEART_OF_PORTA = 2761; + // Reward + private static final int MARK_OF_TRUST = 2734; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monster + private static final int DRYAD = 20013; + private static final int DRYAD_ELDER = 20019; + private static final int LIREIN = 20036; + private static final int LIREIN_ELDER = 20044; + private static final int ANT_RECRUIT = 20082; + private static final int ANT_PATROL = 20084; + private static final int ANT_GUARD = 20086; + private static final int ANT_SOLDIER = 20087; + private static final int ANT_WARRIOR_CAPTAIN = 20088; + private static final int MARSH_STAKATO = 20157; + private static final int PORTA = 20213; + private static final int MARSH_STAKATO_WORKER = 20230; + private static final int MARSH_STAKATO_SOLDIER = 20232; + private static final int MARSH_STAKATO_DRONE = 20234; + private static final int GUARDIAN_BASILISK = 20550; + private static final int WINDSUS = 20553; + // Quest Monster + private static final int LUELL_OF_ZEPHYR_WINDS = 27120; + private static final int ACTEA_OF_VERDANT_WILDS = 27121; + // Misc + private static final int MIN_LEVEL = 37; + + public Q00217_TestimonyOfTrust() + { + super(217); + addStartNpc(HIGH_PRIEST_HOLLINT); + addTalkId(HIGH_PRIEST_HOLLINT, HIGH_PRIEST_BIOTIN, HIERARCH_ASTERIOS, TETRARCH_THIFIELL, MAGISTER_CLAYTON, SEER_MANAKIA, IRON_GATES_LOCKIRIN, FLAME_LORD_KAKAI, MAESTRO_NIKOLA, CARDINAL_SERESIN); + addKillId(DRYAD, DRYAD_ELDER, LIREIN, LIREIN_ELDER, ANT_RECRUIT, ANT_PATROL, ANT_GUARD, ANT_SOLDIER, ANT_WARRIOR_CAPTAIN, MARSH_STAKATO, PORTA, MARSH_STAKATO_WORKER, MARSH_STAKATO_SOLDIER, MARSH_STAKATO_DRONE, GUARDIAN_BASILISK, WINDSUS, LUELL_OF_ZEPHYR_WINDS, ACTEA_OF_VERDANT_WILDS); + registerQuestItems(LETTER_TO_ELF, LETTER_TO_DARKELF, LETTER_TO_DWARF, LETTER_TO_ORC, LETTER_TO_SERESIN, SCROLL_OF_DARKELF_TRUST, SCROLL_OF_ELF_TRUST, SCROLL_OF_DWARF_TRUST, SCROLL_OF_ORC_TRUST, RECOMMENDATION_OF_HOLLIN, ORDER_OF_ASTERIOS, BREATH_OF_WINDS, SEED_OF_VERDURE, LETTER_OF_THIFIELL, BLOOD_OF_GUARDIAN_BASILISK, GIANT_APHID, STAKATOS_FLUIDS, BASILISK_PLASMA, HONEY_DEW, STAKATO_ICHOR, ORDER_OF_CLAYTON, PARASITE_OF_LOTA, LETTER_TO_MANAKIA, LETTER_OF_MANAKIA, LETTER_TO_NICHOLA, ORDER_OF_NICHOLA, HEART_OF_PORTA); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + qs.setMemoState(1); + giveItems(player, LETTER_TO_ELF, 1); + giveItems(player, LETTER_TO_DARKELF, 1); + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 96); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30191-04a.htm"; + } + else + { + htmltext = "30191-04.htm"; + } + } + break; + } + case "30154-02.html": + case "30657-02.html": + { + htmltext = event; + break; + } + case "30154-03.html": + { + if (hasQuestItems(player, LETTER_TO_ELF)) + { + takeItems(player, LETTER_TO_ELF, 1); + giveItems(player, ORDER_OF_ASTERIOS, 1); + qs.setMemoState(2); + qs.setCond(2, true); + htmltext = event; + } + break; + } + case "30358-02.html": + { + if (hasQuestItems(player, LETTER_TO_DARKELF)) + { + takeItems(player, LETTER_TO_DARKELF, 1); + giveItems(player, LETTER_OF_THIFIELL, 1); + qs.setMemoState(5); + qs.setCond(5, true); + htmltext = event; + } + break; + } + case "30515-02.html": + { + if (hasQuestItems(player, LETTER_TO_MANAKIA)) + { + takeItems(player, LETTER_TO_MANAKIA, 1); + qs.setMemoState(11); + qs.setCond(14, true); + htmltext = event; + } + break; + } + case "30531-02.html": + { + if (hasQuestItems(player, LETTER_TO_DWARF)) + { + takeItems(player, LETTER_TO_DWARF, 1); + giveItems(player, LETTER_TO_NICHOLA, 1); + qs.setMemoState(15); + qs.setCond(18, true); + htmltext = event; + } + break; + } + case "30565-02.html": + { + if (hasQuestItems(player, LETTER_TO_ORC)) + { + takeItems(player, LETTER_TO_ORC, 1); + giveItems(player, LETTER_TO_MANAKIA, 1); + qs.setMemoState(10); + qs.setCond(13, true); + htmltext = event; + } + break; + } + case "30621-02.html": + { + if (hasQuestItems(player, LETTER_TO_NICHOLA)) + { + takeItems(player, LETTER_TO_NICHOLA, 1); + giveItems(player, ORDER_OF_NICHOLA, 1); + qs.setMemoState(16); + qs.setCond(19, true); + htmltext = event; + } + break; + } + case "30657-03.html": + { + if (qs.isMemoState(8) && hasQuestItems(player, LETTER_TO_SERESIN)) + { + giveItems(player, LETTER_TO_DWARF, 1); + giveItems(player, LETTER_TO_ORC, 1); + takeItems(player, LETTER_TO_SERESIN, 1); + qs.setMemoState(9); + qs.setCond(12, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case DRYAD: + case DRYAD_ELDER: + { + if (qs.isMemoState(2)) + { + final int flag = killer.getVariables().getInt("flag", +1); + if (getRandom(100) < (flag * 33)) + { + addSpawn(ACTEA_OF_VERDANT_WILDS, npc, true, 200000); + playSound(killer, QuestSound.ITEMSOUND_QUEST_BEFORE_BATTLE); + } + } + break; + } + case LIREIN: + case LIREIN_ELDER: + { + if (qs.isMemoState(2)) + { + final int flag = killer.getVariables().getInt("flag", +1); + if (getRandom(100) < (flag * 33)) + { + addSpawn(LUELL_OF_ZEPHYR_WINDS, npc, true, 200000); + playSound(killer, QuestSound.ITEMSOUND_QUEST_BEFORE_BATTLE); + } + } + break; + } + case ANT_RECRUIT: + case ANT_GUARD: + { + if (qs.isMemoState(6) && (getQuestItemsCount(killer, GIANT_APHID) < 5) && hasQuestItems(killer, ORDER_OF_CLAYTON) && !hasQuestItems(killer, HONEY_DEW)) + { + if (getQuestItemsCount(killer, GIANT_APHID) >= 4) + { + giveItems(killer, HONEY_DEW, 1); + takeItems(killer, GIANT_APHID, -1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, BASILISK_PLASMA, STAKATO_ICHOR)) + { + qs.setCond(7); + } + } + else + { + giveItems(killer, GIANT_APHID, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case ANT_PATROL: + case ANT_SOLDIER: + case ANT_WARRIOR_CAPTAIN: + { + if (qs.isMemoState(6) && (getQuestItemsCount(killer, GIANT_APHID) < 10) && hasQuestItems(killer, ORDER_OF_CLAYTON) && !hasQuestItems(killer, HONEY_DEW)) + { + if (getQuestItemsCount(killer, GIANT_APHID) >= 4) + { + giveItems(killer, HONEY_DEW, 1); + takeItems(killer, GIANT_APHID, -1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, BASILISK_PLASMA, STAKATO_ICHOR)) + { + qs.setCond(7); + } + } + else + { + giveItems(killer, GIANT_APHID, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MARSH_STAKATO: + case MARSH_STAKATO_WORKER: + { + if (qs.isMemoState(6) && (getQuestItemsCount(killer, STAKATOS_FLUIDS) < 10) && hasQuestItems(killer, ORDER_OF_CLAYTON) && !hasQuestItems(killer, STAKATO_ICHOR)) + { + if (getQuestItemsCount(killer, STAKATOS_FLUIDS) >= 4) + { + giveItems(killer, STAKATO_ICHOR, 1); + takeItems(killer, STAKATOS_FLUIDS, -1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, BASILISK_PLASMA, HONEY_DEW)) + { + qs.setCond(7); + } + } + else + { + giveItems(killer, STAKATOS_FLUIDS, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MARSH_STAKATO_SOLDIER: + case MARSH_STAKATO_DRONE: + { + if (qs.isMemoState(6) && (getQuestItemsCount(killer, STAKATOS_FLUIDS) < 5) && hasQuestItems(killer, ORDER_OF_CLAYTON) && !hasQuestItems(killer, STAKATO_ICHOR)) + { + if (getQuestItemsCount(killer, STAKATOS_FLUIDS) >= 4) + { + giveItems(killer, STAKATO_ICHOR, 1); + takeItems(killer, STAKATOS_FLUIDS, -1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, BASILISK_PLASMA, HONEY_DEW)) + { + qs.setCond(7); + } + } + else + { + giveItems(killer, STAKATOS_FLUIDS, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case PORTA: + { + if (qs.isMemoState(16) && !hasQuestItems(killer, HEART_OF_PORTA)) + { + giveItems(killer, HEART_OF_PORTA, 1); + if (hasQuestItems(killer, HEART_OF_PORTA)) + { + qs.setCond(20, true); + } + } + break; + } + case GUARDIAN_BASILISK: + { + if (qs.isMemoState(6) && (getQuestItemsCount(killer, BLOOD_OF_GUARDIAN_BASILISK) < 10) && hasQuestItems(killer, ORDER_OF_CLAYTON) && !hasQuestItems(killer, BASILISK_PLASMA)) + { + if (getQuestItemsCount(killer, BLOOD_OF_GUARDIAN_BASILISK) >= 4) + { + giveItems(killer, BASILISK_PLASMA, 1); + takeItems(killer, BLOOD_OF_GUARDIAN_BASILISK, -1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, STAKATO_ICHOR, HONEY_DEW)) + { + qs.setCond(7); + } + } + else + { + giveItems(killer, BLOOD_OF_GUARDIAN_BASILISK, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case WINDSUS: + { + if (qs.isMemoState(11) && (getQuestItemsCount(killer, PARASITE_OF_LOTA) < 10)) + { + giveItems(killer, PARASITE_OF_LOTA, 2); + if (getQuestItemsCount(killer, PARASITE_OF_LOTA) == 10) + { + qs.setMemoState(12); + qs.setCond(15, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case LUELL_OF_ZEPHYR_WINDS: + { + if (qs.isMemoState(2) && !hasQuestItems(killer, BREATH_OF_WINDS)) + { + if (hasQuestItems(killer, SEED_OF_VERDURE)) + { + giveItems(killer, BREATH_OF_WINDS, 1); + qs.setMemoState(3); + qs.setCond(3, true); + } + else + { + giveItems(killer, BREATH_OF_WINDS, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case ACTEA_OF_VERDANT_WILDS: + { + if (qs.isMemoState(2) && !hasQuestItems(killer, SEED_OF_VERDURE)) + { + if (hasQuestItems(killer, BREATH_OF_WINDS)) + { + giveItems(killer, SEED_OF_VERDURE, 1); + qs.setMemoState(3); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + giveItems(killer, SEED_OF_VERDURE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + final int memoState = qs.getMemoState(); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == HIGH_PRIEST_HOLLINT) + { + if ((player.getRace() == Race.HUMAN) && (player.getLevel() >= MIN_LEVEL) && player.isInCategory(CategoryType.HUMAN_2ND_GROUP)) + { + htmltext = "30191-03.htm"; + } + else if ((player.getRace() == Race.HUMAN) && (player.getLevel() >= MIN_LEVEL) && player.isInCategory(CategoryType.FIRST_CLASS_GROUP)) + { + htmltext = "30191-01a.html"; + } + else if ((player.getRace() == Race.HUMAN) && (player.getLevel() >= MIN_LEVEL)) + { + htmltext = "30191-01b.html"; + } + else if ((player.getRace() == Race.HUMAN)) + { + htmltext = "30191-01.html"; + } + else + { + htmltext = "30191-02.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case HIGH_PRIEST_HOLLINT: + { + if (memoState == 7) + { + if (hasQuestItems(player, SCROLL_OF_ELF_TRUST, SCROLL_OF_DARKELF_TRUST)) + { + giveItems(player, LETTER_TO_SERESIN, 1); + takeItems(player, SCROLL_OF_DARKELF_TRUST, 1); + takeItems(player, SCROLL_OF_ELF_TRUST, 1); + qs.setMemoState(8); + qs.setCond(10, true); + htmltext = "30191-05.html"; + } + } + else if (memoState == 18) + { + if (hasQuestItems(player, SCROLL_OF_DWARF_TRUST, SCROLL_OF_ORC_TRUST)) + { + takeItems(player, SCROLL_OF_DWARF_TRUST, 1); + takeItems(player, SCROLL_OF_ORC_TRUST, 1); + giveItems(player, RECOMMENDATION_OF_HOLLIN, 1); + qs.setMemoState(19); + qs.setCond(23, true); + htmltext = "30191-06.html"; + } + } + else if (memoState == 19) + { + htmltext = "30191-07.html"; + } + else if (memoState == 1) + { + htmltext = "30191-08.html"; + } + else if (memoState == 8) + { + htmltext = "30191-09.html"; + } + break; + } + case HIGH_PRIEST_BIOTIN: + { + if (memoState == 19) + { + if (hasQuestItems(player, RECOMMENDATION_OF_HOLLIN)) + { + giveAdena(player, 252212, true); + giveItems(player, MARK_OF_TRUST, 1); + addExpAndSp(player, 1390298, 92782); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30031-01.html"; + } + } + break; + } + case HIERARCH_ASTERIOS: + { + if (memoState == 1) + { + if (hasQuestItems(player, LETTER_TO_ELF)) + { + htmltext = "30154-01.html"; + } + } + else if (memoState == 2) + { + if (hasQuestItems(player, ORDER_OF_ASTERIOS)) + { + htmltext = "30154-04.html"; + } + } + else if (memoState == 3) + { + if (hasQuestItems(player, BREATH_OF_WINDS, SEED_OF_VERDURE)) + { + giveItems(player, SCROLL_OF_ELF_TRUST, 1); + takeItems(player, ORDER_OF_ASTERIOS, 1); + takeItems(player, BREATH_OF_WINDS, 1); + takeItems(player, SEED_OF_VERDURE, 1); + qs.setMemoState(4); + qs.setCond(4, true); + htmltext = "30154-05.html"; + } + } + else if (memoState == 4) + { + htmltext = "30154-06.html"; + } + break; + } + case TETRARCH_THIFIELL: + { + if (memoState == 4) + { + if (hasQuestItems(player, LETTER_TO_DARKELF)) + { + htmltext = "30358-01.html"; + } + } + else if (memoState == 6) + { + if (hasQuestItems(player, ORDER_OF_CLAYTON) && ((getQuestItemsCount(player, STAKATO_ICHOR) + getQuestItemsCount(player, HONEY_DEW) + getQuestItemsCount(player, BASILISK_PLASMA)) == 3)) + { + giveItems(player, SCROLL_OF_DARKELF_TRUST, 1); + takeItems(player, BASILISK_PLASMA, -1); + takeItems(player, HONEY_DEW, -1); + takeItems(player, STAKATO_ICHOR, -1); + takeItems(player, ORDER_OF_CLAYTON, 1); + qs.setMemoState(7); + qs.setCond(9, true); + htmltext = "30358-03.html"; + } + } + else if (memoState == 7) + { + htmltext = "30358-04.html"; + } + else if (memoState == 5) + { + htmltext = "30358-05.html"; + } + break; + } + case MAGISTER_CLAYTON: + { + if (memoState == 5) + { + if (hasQuestItems(player, LETTER_OF_THIFIELL)) + { + takeItems(player, LETTER_OF_THIFIELL, 1); + giveItems(player, ORDER_OF_CLAYTON, 1); + qs.setMemoState(6); + qs.setCond(6, true); + htmltext = "30464-01.html"; + } + } + else if (memoState == 6) + { + if (hasQuestItems(player, ORDER_OF_CLAYTON) && ((getQuestItemsCount(player, STAKATO_ICHOR) + getQuestItemsCount(player, HONEY_DEW) + getQuestItemsCount(player, BASILISK_PLASMA)) < 3)) + { + htmltext = "30464-02.html"; + } + else + { + qs.setCond(8, true); + htmltext = "30464-03.html"; + } + } + break; + } + case SEER_MANAKIA: + { + if (hasQuestItems(player, LETTER_TO_MANAKIA)) + { + htmltext = "30515-01.html"; + } + else if (memoState == 11) + { + htmltext = "30515-03.html"; + } + else if (memoState == 12) + { + if (getQuestItemsCount(player, PARASITE_OF_LOTA) == 10) + { + takeItems(player, PARASITE_OF_LOTA, -1); + giveItems(player, LETTER_OF_MANAKIA, 1); + qs.setMemoState(13); + qs.setCond(16, true); + htmltext = "30515-04.html"; + } + } + else if (memoState == 13) + { + htmltext = "30515-05.html"; + } + break; + } + case IRON_GATES_LOCKIRIN: + { + if (memoState == 14) + { + if (hasQuestItems(player, LETTER_TO_DWARF)) + { + htmltext = "30531-01.html"; + } + } + else if (memoState == 15) + { + htmltext = "30531-03.html"; + } + else if (memoState == 17) + { + giveItems(player, SCROLL_OF_DWARF_TRUST, 1); + qs.setMemoState(18); + qs.setCond(22, true); + htmltext = "30531-04.html"; + } + else if (memoState == 18) + { + htmltext = "30531-05.html"; + } + break; + } + case FLAME_LORD_KAKAI: + { + if (memoState == 9) + { + if (hasQuestItems(player, LETTER_TO_ORC)) + { + htmltext = "30565-01.html"; + } + } + else if (memoState == 10) + { + htmltext = "30565-03.html"; + } + else if (memoState == 13) + { + giveItems(player, SCROLL_OF_ORC_TRUST, 1); + takeItems(player, LETTER_OF_MANAKIA, 1); + qs.setMemoState(14); + qs.setCond(17, true); + htmltext = "30565-04.html"; + } + else if (memoState == 14) + { + htmltext = "30565-05.html"; + } + break; + } + case MAESTRO_NIKOLA: + { + if (memoState == 15) + { + if (hasQuestItems(player, LETTER_TO_NICHOLA)) + { + htmltext = "30621-01.html"; + } + } + else if (memoState == 16) + { + if (!hasQuestItems(player, HEART_OF_PORTA)) + { + htmltext = "30621-03.html"; + } + else + { + takeItems(player, ORDER_OF_NICHOLA, 1); + takeItems(player, HEART_OF_PORTA, 1); + qs.setMemoState(17); + qs.setCond(21, true); + htmltext = "30621-04.html"; + } + } + else if (memoState == 17) + { + htmltext = "30621-05.html"; + } + break; + } + case CARDINAL_SERESIN: + { + if (memoState == 8) + { + if (hasQuestItems(player, LETTER_TO_SERESIN)) + { + htmltext = "30657-01.html"; + } + } + else if (memoState == 9) + { + htmltext = "30657-04.html"; + } + else if (memoState == 18) + { + htmltext = "30657-05.html"; + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == HIGH_PRIEST_HOLLINT) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-01.html new file mode 100644 index 0000000000..ae01de33f4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-01.html @@ -0,0 +1,7 @@ +Hierarch Asterios:
+Did Cardien send you here? It seems to me that it was only recently that you ventured from the Mother Tree to take lessons from me, but look at you now... You have matured so much...
+You must be very tired from your journey, I suggest that you drink the clear waters and feel the wind blowing from this beautiful nature and recover your strength.
+So, tell me, what have you seen and felt in the kingdom of men?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-02.html new file mode 100644 index 0000000000..4b6a58eb34 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-02.html @@ -0,0 +1,5 @@ +Hierarch Asterios:
+Ignorance and greed are not unique to Humans. Elves must also resist such faults...
+The reason I have called you together is of utmost importance. Our Mother Tree is ailing, and will die without immediate help. This is of mortal concern to all Elves. Are you ready to devote yourself to saving our Mother Tree?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-03.html new file mode 100644 index 0000000000..dd3f94b0c1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-03.html @@ -0,0 +1,5 @@ +Hierarch Asterios:
+Humans can be quite charming and even brave at times, but their ignorance and greed always seem to triumph in the end. They can always be counted on invent a new future, but we Elves must constantly guard against that future being at our expense...
+The reason I have called you together is of utmost urgency. Our mother, the Mother Tree, is ailing and will surely die without assistance. This is of mortal concern to all Elves. Are you ready to dedicate yourself to saving our Mother Tree?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-04.html new file mode 100644 index 0000000000..6b8026d7af --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-04.html @@ -0,0 +1,6 @@ +Hierarch Asterios:
+The Mother Tree is the origin of life and a shelter for spirits. Rays of heaven shine through her branches and life branches forth from her roots. She is the center of the universe where the sky and earth become as one.
+The Elves and the Mother Tree have been inextricably linked from the very beginning... After death our spirits return to the shelter of the Mother Tree.
+Our mother of souls is dying.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-05.html new file mode 100644 index 0000000000..dd73a93d07 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-05.html @@ -0,0 +1,7 @@ +Hierarch Asterios:
+Ten years ago, I was shocked to discover that the Mother Tree was slowly dying. I worked tirelessly to find the reason...
+Could it be the poisonous wind blowing from the Sea of Spores... Or maybe the disruption of earth energies by forces of nature? Perhaps the Sorcerers of the Dark Elves contaminated the river which feeds the Mother Tree?...
+I looked into every possibility but could not find the reason. Perhaps the Mother Tree is dying from sadness at the injustice in the world...
+We must not lose hope. We must find a way to save our mother Mother Tree...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-06.html new file mode 100644 index 0000000000..efbf75a9a4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-06.html @@ -0,0 +1,8 @@ +Hierarch Asterios:
+Long ago the first guardian sacrificed herself to give life to the Mother Tree. There are so many fewer Elves now that we cannot afford to lose one if we wanted to, and believe me, we don't! I hope that I never see anything so horrible again in my life!
+Fortunately, we have another way to restore health to the Mother Tree. We must obtain the Water of Life mentioned in the Giants' creation story... The sacred water flowed from the fountain of Eva and gave birth to the first living things in the beginning of times...
+The Water of Life has flowed through all rivers and streams since, and given life to the earth. But with the great flood it became diluted and contaminated.
+For thousands of years we thought that the Water of Life was lost to us...
+We didn't dare imagine, but now we know that it can still be found, in the tears of the purest being. You must meditate on what I have told you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-07.html new file mode 100644 index 0000000000..17e8dbc25e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-07.html @@ -0,0 +1,5 @@ +Hierarch Asterios:
+I apologize for putting such a heavy burden on your young shoulders, but it is your fate so you must deal with it.
+You must find the Water of Life and save the Mother Tree! Finding the water will be a painful task that will require patience and sacrifice. I give you this amulet which contains the blessings of the Mother Tree guardians, keep it safe.
+Thalia and her sisters know more than anyone else about the Water of Life. Take this letter and meet Thalia. You can find her in the eastern part of the Iris Lake. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-08.html new file mode 100644 index 0000000000..38d028f092 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-08.html @@ -0,0 +1,3 @@ +Hierarch Asterios:
+Finding the Water of Life will be a painful task that will require patience and sacrifice. I apologize for putting such a heavy burden on your young shoulders. But we each must play our part in the survival of our tribe. May the blessings of the starlight be upon you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-09.html new file mode 100644 index 0000000000..72237efbda --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-09.html @@ -0,0 +1,5 @@ +Hierarch Asterios:
+So, I see that you have returned with the Water of Life. Please forgive me, but I neglected to mention before that we must sacrifice Eva's unicorn. This animal, blessed by the Goddess, our guardian of the forest, must give her life to save our precious Mother Tree.
+This sacrifice, along with this Water of Life will certainly restore health to the Mother Tree at last...
+Now take this amulet and go see Master Cardien of the Town of Dion. May the splendor of Mithril forever shine on the forest and the lake! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-10.html new file mode 100644 index 0000000000..7d9dbc9ec2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30154-10.html @@ -0,0 +1,4 @@ +Hierarch Asterios:
+Young brother, thanks to your help we now have hope for the future... I see in you a spark... the luminance of which will brighten the future of our entire tribe...
+Now return to Master Cardien of the Town of Dion. If you show him the Camomile Charm he will give you the Mark of Life. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-01.html new file mode 100644 index 0000000000..41aa6d1558 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-01.html @@ -0,0 +1,5 @@ +Blacksmith Pushkin:
+It's funny... You Elves used to scorn us Dwarves and think of us as inferior. And now here you are asking for help! You Elves wouldn't even know about the secrets of Mithril and adamantite if you hadn't learned them from us in the ancient days. And now you brag as if those were your skills!
+I do not want to help you, how will you try to persuade me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-02.html new file mode 100644 index 0000000000..2a6c6991fe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-02.html @@ -0,0 +1,5 @@ +Blacksmith Pushkin:
+The price? Do you think Dwarves will do anything for money? How dare you...! You think we don't have any pride? Hey Elf! Have you heard of Dwarf Artisans?
+OK, if you will apologize for your impertinence, and also apologize on behalf of your whole race which has treated dwarves with such contempt, then I will think about it.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-03.html new file mode 100644 index 0000000000..fb482296ee --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-03.html @@ -0,0 +1,5 @@ +Blacksmith Pushkin:
+Ha! This is rich! Such an arrogant young Elf, promising to apologize to me. I wish my buddies could see this!
+OK. Let me see the diagram...Hmm... A container, not a difficult design, but there is a problem with the material.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-04.html new file mode 100644 index 0000000000..b586cc1d14 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-04.html @@ -0,0 +1,5 @@ +Blacksmith Pushkin:
+Pure Mithril! It isn't a material that just anyone is capable of handling. The skill of augmenting and crafting Pure Mithril is something that is handed down to selected Artisans. It is even a rarity in my esteemed Black Anvil Guild. I, Pushkin, of course, just so happens to be one of the few that know it's secrets.
+However it is very difficult to get Pure Mithril nowadays. At one time Pure Mithril could be found in the mine fields that we Dwarves operated long ago, but it is very rare since we stopped that operation once the Earth Wyrm arrived. However there is one place that we may still be able to find it...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-05.html new file mode 100644 index 0000000000..f1b38639d3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-05.html @@ -0,0 +1,6 @@ +Blacksmith Pushkin:
+You can get Pure Mithril from Guardian Basilisk. Basilisks eat sand and pebbles to help their digestion.
+You will find small amounts of Pure Mithril Ore when you cut open their gut. You will find the Guardian Basilisk at the corner that connects the towns of Giran and Oren. This place is known as the 'Death Pass' because of the abundance of monsters there.
+There are more materials needed than Pure Mithril...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-06.html new file mode 100644 index 0000000000..ba6082218e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-06.html @@ -0,0 +1,6 @@ +Blacksmith Pushkin:
+First I will need a very pure, specially-made Varnish to augment Pure Mithril. Using normal Varnish to augment Pure Mithril will destroy it. This special Varnish is derived from the secretions of giant ants.
+You will find these ants in the Wastelands of Gludio. There are hundreds of giant ants in the underground there... Kill only ant soldiers and collect the acid from their body in a bottle. 20 bottles will be enough.
+And last, we will need Wyrm Talons. Carving a Mithril surface requires a strong and sharp knife, normal knives and chisels are not suitable. I need a chisel made from Wyrm Talons. Please get me 20 unbroken talons.
+So, the 3 materials we need are: Pure Mithril Ore, Ant Soldier Acid and Wyrm Talons. You can remember all this, right? Good luck, Elf! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-07.html new file mode 100644 index 0000000000..6e943c9202 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-07.html @@ -0,0 +1,4 @@ +Blacksmith Pushkin:
+I can't make a cup if I don't have all the ingredients. Do you remember the 3 materials that I told you we needed?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-07a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-07a.html new file mode 100644 index 0000000000..2cf844bc83 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-07a.html @@ -0,0 +1,5 @@ +Blacksmith Pushkin:
+What a pity, I thought Elves all had good memories. I will tell you once more. First get 10 units of Pure Mithril Ore. You can find it by hunting the Guardian Basilisks in the Death Pass, north of Giran.
+Next,20 bottles of ant soldier's acid. You can find these ants in the caves of the Wastelands of Gludio.
+Also 20 Wyrm Talons. Wyrms are often seen in Giran. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-08.html new file mode 100644 index 0000000000..d6e9e58f33 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-08.html @@ -0,0 +1,5 @@ +Blacksmith Pushkin:
+You brought all the materials needed! Well done, Elf! Now, let's get to work. I will make you a fine container, more wonderful than in your diagram!
+Don't worry! I know that the design on the cup's surface is important. I will carve it accurately! However it will take time to finish... Do you care to wait?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-09.html new file mode 100644 index 0000000000..a1ac1bc124 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-09.html @@ -0,0 +1,9 @@ +Blacksmith Pushkin:
+Clang! Clang! Smash with Maphr's hammer! Like smashing her window! Clang! Clang!
+Burn it with Pa'agrio's flame! Like sweet nothings to my lover!
+Clang! Clang! Dip it in Eva's water! Like drying her tears! Clang! Clang!
+Call it with Sylph's wind! Her laughter in my ears! Clang! Clang!
+Bright Mithril, you light up the sky! Like love growing in my heart!
+Clang! Clang!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-10.html new file mode 100644 index 0000000000..3871ed434d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-10.html @@ -0,0 +1,4 @@ +Blacksmith Pushkin:
+Finished at last! It was well worth the wait, wasn't it? Not to brag, but this would fetch hundreds of Adena if you were to sell it in a store.
+I will put it in this sturdy box for you, handle it with care! Even though our time together was short, it was enjoyable! I can work with an Elf like you. May the fertility of Maphr be with you and your family! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-11.html new file mode 100644 index 0000000000..c6bd7e4953 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-11.html @@ -0,0 +1,3 @@ +Blacksmith Pushkin:
+I hope you are keeping the Pure Mithril Cup I made for you safe. It is sad to say, but that cup is probably the most valuable work throughout the continent. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-12.html new file mode 100644 index 0000000000..747e4ec675 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30300-12.html @@ -0,0 +1,3 @@ +Blacksmith Pushkin:
+May the grace of Maphr bestow wealth on you and your race! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-01.html new file mode 100644 index 0000000000..88adeb8ff7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-01.html @@ -0,0 +1,7 @@ +Thalia:
+How is the Hierarch? I can only imagine his concern for the future of our race... We must do all we can to lighten his burden.
+My sisters and I have attempted to revive the dying Mother Tree, but all our efforts have failed. Still, there is hope.
+According to the legend, there is a Water of Life that can cure all diseases and poisons. It is said that the purest form of life, used by the Gods to create all living creatures, is contained in that water.
+Eva has entrusted this Water of Life to the 'Guard of Tears'. I don't know his identity, but your task for the 'Test of Life' is to get some of the Water of Life from that person. We must do this in order to survive.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-02.html new file mode 100644 index 0000000000..c32d95f3b1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-02.html @@ -0,0 +1,6 @@ +Thalia:
+We must prepare two things before acquiring the Water of Life. They are the Grail of Purity and Talin's Spear.
+Talin's Spear was at one time kept by the Elves living in Innadril Lake, but we decided to move it here.
+You must find the Grail of Purity that will be the container for the Water of Life. This magic grail will purify anything, and is even said to be able to counteract deadly poisons such as Belladonna. The Water of Life must be contained in this vessel or it will lose potency.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-03.html new file mode 100644 index 0000000000..17fc4b4950 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-03.html @@ -0,0 +1,6 @@ +Thalia:
+In the past, we Elves possessed the knowledge to create the holy grail. During the war with Humans the High Artisan Elves who kept the secrets of Mithril and platinum were killed, and the secrets of the grail were lost with them. Therefore we must have the help of other tribes in order to create the grail.
+First of all we need to carefully craft a cup made of Pure Mithril. 'Pure Mithril' is Mithril which contains no other elements but itself, and there are only a few Artisans throughout the continent who can make it.
+Go to Blacksmith Pushkin of the Town of Giran. Although he is a money-grubbing Dwarf who only thinks of money and jewels, he is an outstanding Artisan who knows the techniques of handling Pure Mithril. Take this illustrated book and show it to him. Ask him to make the grail exactly as it appears in the book. He will surely ask a price for that, since he is a Dwarf. Try as much as you can to satisfy his wishes.
+I shall be waiting for your return. May the blessings of the starlight be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-04.html new file mode 100644 index 0000000000..32d043b283 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-04.html @@ -0,0 +1,3 @@ +Thalia:
+Go to Blacksmith Pushkin of the Town of Giran. He is the only person who can make the Pure Mithril Cup. I shall be awaiting your return. May the blessings of starlight be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-05.html new file mode 100644 index 0000000000..7bc12c4427 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-05.html @@ -0,0 +1,3 @@ +Thalia:
+She wanted something in return, didn't she? Just as I expected... It is so humiliating to be ordered about by a Dwarf! Oh well, we have no choice... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-06.html new file mode 100644 index 0000000000..303518f46c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-06.html @@ -0,0 +1,5 @@ +Thalia:
+Ah, the Pure Mithril Cup... It is indeed a masterpiece. Occasionally the Dwarves show their true worth. In order to transform a Mithril Cup into a Grail of Purity we must have 'Stardust'. It is a silvery powder, said to be sprinkled by the spirits of starlight. Only Dark Elves have the skill to gather it.
+We must enlist their assistance to obtain the Stardust. Dark Elves are our dark shadow... Although we may never forgive them, our survival and that of all the forests in this land depends on their cooperation in this matter.
+Go to the Dark Elves Initiation Altar and meet a Shaman named Arkenia. She knows how to gather Stardust. I shall write you a letter, but I am afraid that the Dark Elves will not cooperate gladly... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-07.html new file mode 100644 index 0000000000..00c75f5093 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-07.html @@ -0,0 +1,3 @@ +Thalia:
+You must go to the Dark Elves' Initiation Altar and meet Shaman Arkenia. She knows the secrets of Stardust. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-08.html new file mode 100644 index 0000000000..5eed1fe2e7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-08.html @@ -0,0 +1,3 @@ +Thalia:
+I doubt that the Dark Elves will easily tell their secrets... But what is the alternative? We must obtain the Stardust at all costs. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-09.html new file mode 100644 index 0000000000..a3fa649139 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-09.html @@ -0,0 +1,4 @@ +Thalia:
+This is Stardust... Now we will be able to perform the ceremony of starlight and create the Grail of Purity. Thank you for your hard work. Now we have one of the 2 materials needed for obtaining Water of Life. Now if we only had Talin's Spear...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-10.html new file mode 100644 index 0000000000..fb91bf304e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-10.html @@ -0,0 +1,4 @@ +Thalia:
+At this moment, Talin's Spear is being transported here from Innadril. We must wait until it arrives.
+You seem to lack the adequate experience to use the power of the spear fully. How about going for a journey of discipline while we have the time? When you feel that you are ready, come back and see me. Perhaps Talin's Spear will have arrived by then. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-11.html new file mode 100644 index 0000000000..127fd67b15 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-11.html @@ -0,0 +1,4 @@ +Thalia:
+There is terrible news! Talin's Spear has been stolen! The lake spirits who were bringing it from Innadril were attacked by lizardmen who massacred them and absconded with the spear.
+You must hurry and meet Isael Silvershadow of the Hunter's Village. He will need assistance finding the spear. We must find Talin's Spear! Our future lies within it! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-12.html new file mode 100644 index 0000000000..be22906e84 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-12.html @@ -0,0 +1,3 @@ +Thalia:
+The spear hasn't arrived yet. A bigger problem is that you lack the power to use the spear properly. Perhaps you should go for a journey of discipline while you have the time? When you feel that you are ready, then come back and see me. Perhaps Talin's Spear will have arrived by then, as well. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-13.html new file mode 100644 index 0000000000..dbff785cbe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-13.html @@ -0,0 +1,4 @@ +Thalia:
+I have terrible news! Talin's Spear has been stolen on its way here! It is said that the lake spirits who were bringing the sword from Innadril were attacked by the lizardmen who massacred them and absconded with the spear.
+You must hurry to Isael Silvershadow of the Hunter's Village. Help him deal with this matter. We must find Talin's Spear! Our future lies within it! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-14.html new file mode 100644 index 0000000000..2f54df5e8e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-14.html @@ -0,0 +1,3 @@ +Thalia:
+Hurry! You must go to Isael Silvershadow of the Hunter's Village. Help him find the stolen Talin's Spear. Our future lies within it! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-15.html new file mode 100644 index 0000000000..139960d7b7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-15.html @@ -0,0 +1,3 @@ +Thalia:
+We must find Talin's Spear! Our future lies within it! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-16.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-16.html new file mode 100644 index 0000000000..eefff94d5c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-16.html @@ -0,0 +1,6 @@ +Thalia:
+May the blessings of the starlight be upon you. You have recovered Talin's Spear! Thank you very much for your trouble.
+Now that we have both the Grail of Purity and Talin's Spear, we can set off in search of the Water of Life. This will bring the utmost sacrifice and the greatest sorrow...
+We must pierce Eva's Unicorn, the guardian of our forest, with Talin's Spear and collect its tears in the Grail of Purity. That is the 'Water of Life' itself. In order to recover the life of the Mother Tree, we must sacrifice the life of Eva's dearest incarnation, the unicorn...
+Do you understand what I have asked of you? May the Goddess forgive us for what we are about to do... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-17.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-17.html new file mode 100644 index 0000000000..bc14740c9c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-17.html @@ -0,0 +1,3 @@ +Thalia:
+May the Goddess forgive us for our deed... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-18.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-18.html new file mode 100644 index 0000000000..c10696725a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-18.html @@ -0,0 +1,4 @@ +Thalia:
+The tears of the unicorn in the Grail of Purity... That is the Water of Life itself. Such a huge sacrifice for so little water...
+Return to Hierarch Asterios with the Water of Life. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-19.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-19.html new file mode 100644 index 0000000000..bfa3b4104c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30371-19.html @@ -0,0 +1,3 @@ +Thalia:
+Return to Hierarch Asterios with the Water of Life. I must stay and grieve over the death of the unicorn... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-01.html new file mode 100644 index 0000000000..0a198bf51b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-01.html @@ -0,0 +1,7 @@ +Priest Adonius:
+Brother, have you come to learn the secrets of Andariel's Book? Have you come to contemplate the goodness of Einhasad related in the sacred texts? May the Goddess accompany you on your journey to the truth...
+Dark forces are gathering, wanting to destroy this precious book, the keeper of the tenet of light. It must be protected at all costs, I cannot allow it to leave this sanctuary. However I regret not being able to fulfill the request of a brother....
+Perhaps something can be done. As we speak, scores of Priests are transcibing these holy scriptures onto lambskin. We hope that by creating many copies of the texts the truth of Einhasad will spread around the world. Copies will be sent to the guardians of the Mother Tree and Einhasad shrines around the world.
+Would you care to help us?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-02.html new file mode 100644 index 0000000000..c4067d2489 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-02.html @@ -0,0 +1,4 @@ +Priest Adonius:
+Thank you so much, brother of the forest. We have run short of the ink and pens which are used for copying the sacred texts.
+To make the ink, we need Spider Ichor. You can extract it from the spiders of the Cruma Marshlands. As for the pens, we create them with Harpy's Down. It would be most helpful if you could bring 20 of each. When you bring me these supplies I shall give you a copy of the book in return. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-03.html new file mode 100644 index 0000000000..0aa985353a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-03.html @@ -0,0 +1,3 @@ +Priest Adonius:
+Thank you, brother. Your assistance with our copying project was a great help. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-04.html new file mode 100644 index 0000000000..f7249bc79e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-04.html @@ -0,0 +1,4 @@ +Priest Adonius:
+Thank you for your help, brother of forest. Here is your copy of Andariel's Book. Although you haven't mentioned it, I know that you seek to save the Mother Tree... This book should be of great help to you...
+Your faith in the Goddess of harmony and light will guide your path. Listen carefully to the blowing of the wind, the trickling of water and the whisper of starlight. The Goddess will always watch over us. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-05.html new file mode 100644 index 0000000000..7b7457fe5d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-05.html @@ -0,0 +1,3 @@ +Priest Adonius:
+This book is vital to the survival of our sacred Mother Tree. You must save her from the grasp of our enemies... You must not tarry in your mission. May the light of the Goddess shine upon you always... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-06.html new file mode 100644 index 0000000000..2c768855f4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30375-06.html @@ -0,0 +1,3 @@ +Priest Adonius:
+May the beneficent light of Einhasad guide your way... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-01.html new file mode 100644 index 0000000000..d3a9ed1563 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-01.html @@ -0,0 +1,4 @@ +Arkenia:
+How dare you come to this sacred place uninvited! Leave at once or I shall call the shadow to pluck out your eyes! Or perhaps the silhouette from the fog to drink your blood? Now get out!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-02.html new file mode 100644 index 0000000000..c23bb4954f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-02.html @@ -0,0 +1,7 @@ +Arkenia:
+So what if the Mother Tree dies, what is that to us?
+You Elves of Light turned your backs on us and treated us as outcasts. We were obliged to sever our relationship with our beloved forest and earth and take refuge in the shadows! Consequently we are not dependent on the Mother Tree as you are, and now we are the ones with true freedom.
+Why not join us in the shadows, and escape the deceptive clutches of the Mother Tree?
+The death of the Mother Tree means nothing to us. Stardust is also useless, so don't bother asking for its secrets!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-03.html new file mode 100644 index 0000000000..b1f4bdd81f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-03.html @@ -0,0 +1,5 @@ +Arkenia:
+Shut up! That is not our problem! The recipe for Stardust is our only secret and you expect me to teach it to you without any payment...?
+You are an enemy of the Dark Elves, are you not?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-04.html new file mode 100644 index 0000000000..3fad6b5a0e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-04.html @@ -0,0 +1,7 @@ +Arkenia:
+Oh, really? so price is no object is it? Hmm...
+...Then how about this? I cannot tell you the recipe, but if you bring me 'Andariel's Book' that you Elves of light think so precious, I will give you some Stardust.
+The book was actually a part of 'Kaysha's Revelation' which contained Shilen's secret, but the followers of Einhasad edited it for their own purposes.
+This book made by the hypocrites of the light is certainly corrupted, but perhaps I could find some clues about Kaysha's Revelation. As far as I know, Andariel's book is in the Temple of Einhasad in Gludin. I care not how you get it, just bring it to me.
+Produce the book and I will give you some Stardust. I swear by the Gaze of Abyss that this promise will be kept. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-05.html new file mode 100644 index 0000000000..4359df9d73 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-05.html @@ -0,0 +1,3 @@ +Arkenia:
+Don't you remember my promise pledged under the Gaze of Abyss? I swore that if you would bring Andariel's Book, I would give you Stardust in return. I have heard that the Elven Priests from Gludin are in possession of the scripture... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-06.html new file mode 100644 index 0000000000..3e3a48ab84 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-06.html @@ -0,0 +1,5 @@ +Arkenia:
+I didn't think you would actually find it... Even though this is a copy it is certainly Andariel's Book. I see that your situation is urgent.
+Giving life to that which is destined to die is against nature and contrary to the will of Shilen. Wouldn't it be more appropriate to let die what should die?
+Oh well, it is obvious nothing will change your mind. I am through talking about it. Here is some Stardust as promised... Take it and go! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-07.html new file mode 100644 index 0000000000..b624b1a2bd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-07.html @@ -0,0 +1,3 @@ +Arkenia:
+Didn't I already give you Stardust? You are trespassing on ground that is holy to the Dark Elves. The uninvited are not allowed! I'll let you go this time, but if you show your face here again you will be killed. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-08.html new file mode 100644 index 0000000000..f8d1249c62 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30419-08.html @@ -0,0 +1,3 @@ +Arkenia:
+What are you doing here? You act like you belong here but you are sorely mistaken. This is holy ground for the Dark Elves. The uninvited are not allowed here! You may leave this time, but if you come back you will be killed. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-01.html new file mode 100644 index 0000000000..b6c270bc39 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-01.html @@ -0,0 +1,6 @@ +Master Cardien:
+The future seems very dark...
+The blood-red sky fades to darker shadows... Blood will soak the earth and run in rivers...
+The time of the 'Chaotic Chronicle' draws nigh...
+(Quest for Elven characters level 37 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-01a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-01a.html new file mode 100644 index 0000000000..011c309ec9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-01a.html @@ -0,0 +1,4 @@ +Master Cardien:
+Soon our tribe will face a mortal challenge. Hierarch Asterios has called for all young Elves to gather in the Elven Forest. You will soon return to your homeland, but first you must change your occupation and advance.
+(Quest only for Elven characters who is above level 37 and have completed their 1st occupation change.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-02.html new file mode 100644 index 0000000000..09b6ee1f7d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-02.html @@ -0,0 +1,5 @@ +Master Cardien:
+Soon our tribe shall face a mortal challenge. The Mother Tree is dying... We must prevent this at all costs! .
+Hierarch Asterios has called for the young Elves to gather in the Elven Forest. Soon you will return to your homeland, but you must gain more experience first.
+(Quest for Elven characters level 37 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-03.htm new file mode 100644 index 0000000000..4273606767 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-03.htm @@ -0,0 +1,8 @@ +Master Cardien:
+The Mother Tree... Mother of all forests and Elves... The heart of the Elven tribe...
+Long ago... Thanks to the sacrifice of the very first guardian, the Mother Tree was reborn in the land filled with dead bodies. She gave the tree life by sacrificing her own, and becoming one with the dying tree.
+Until this day her shape remains in the stem of the Mother Tree. Her noble sacrifice must never be forgotten.
+Now once again the tree is dying...
+Our tribe's very existence is at stake. If we are to survive, it will be thanks to the help and sacrifice of young Elves like you. Will you join our struggle?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-04.htm new file mode 100644 index 0000000000..d2d8324397 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-04.htm @@ -0,0 +1,5 @@ +Master Cardien:
+When you have completed this task and return, I shall present you with the Mark of Life.
+Now more than ever we must take the love of nature into our hearts and meditate upon our place in the family of creatures. As our first guardian sacrificed herself, we must sacrifice to overcome this difficulty.
+Hierarch Asterios has called the young Elves to gather in the Elven Forest. Your trial has begun. Now you must take this letter to the hierarch in your hometown. May the blessings of starlight guide your way. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-04a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-04a.htm new file mode 100644 index 0000000000..c7c44f81f5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-04a.htm @@ -0,0 +1,5 @@ +Master Cardien:
+After you have completed this trial returned a bit more seasoned, I will acknowledge that you are ready to master the higher teachings and will reward you with the Mark of Life.
+More than any other time in history, we must now truly respect nature, love life and care for our people. Just as the first guardian sacrificed everything, so perhaps will we have to sacrifice many things to overcome the evils of this age.
+Even now, Hierarch Asterios is calling young Elves back to the Elven Forest. Behold, your trial has begun! Take this letter and make haste to your hometown to see the Hierarch. May the stars light your path and bless your journey.
+I give you this Dimension Diamond. You can trade it to the village gatekeeper for something special that may help you on your journey. \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-05.html new file mode 100644 index 0000000000..c8b54c38f3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-05.html @@ -0,0 +1,3 @@ +Master Cardien:
+The hierarch awaits your return. As we speak the Mother Tree is dying. You must quickly return to the Elven Forest. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-06.html new file mode 100644 index 0000000000..9d97c1da47 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-06.html @@ -0,0 +1,3 @@ +Master Cardien:
+At this moment the Mother Tree is dying. Please find the Water of Life and give us hope! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-07.html new file mode 100644 index 0000000000..4de1cc52a7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30460-07.html @@ -0,0 +1,5 @@ +Master Cardien:
+You have returned! Your eyes tell the tale -- you have learned much in such a short time. I perceive that you have experienced a deep sorrow, but I see you have also grown in wisdom.
+This is the Camomile Charm that Hierarch gave you to fight for the tribe's survival. But I think you are ready for more advanced teaching now.
+Here is the Mark of Life. Keep it with you -- it will assist you wherever your path leads you in the future. No matter what trials you must face, never forget the sacred time you spent in the shadow of Mother Tree, learning our timeless lessons of balance and beauty. May Eva's peace be with you always! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-01.html new file mode 100644 index 0000000000..2bf31c3f01 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-01.html @@ -0,0 +1,4 @@ +Isael Silvershadow:
+I understand that Thalia has sent you to retrieve Talin's Spear, 1 of the 4 great Elven treasures. This is a serious matter indeed. It must be recovered at once! The scout troop of the hunter's association has discovered the whereabouts of the spear.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-02.html new file mode 100644 index 0000000000..24c4f8d0a2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-02.html @@ -0,0 +1,5 @@ +Isael Silvershadow:
+It was the Leto Lizardmen who wrested the spear from the lake fairies. It is said that the Shamans and Chiefs of their group broke the spear into many pieces and divided them among themselves. The spear was divided into six pieces: the blade, the shaft, and four jewels that adorned the handle... .
+These wretched creatures are taking the pieces to Dragon Valley to destroy the spear there. This hostility is not typical of the lizardmen... I am certain that someone is controlling them.
+But the most important matter is the recovery of the spear. My friend, I beseech you. Find the Shamans and Chiefs of the Leto Lizardmen , and recover all the pieces of the spear that they have taken from us. Time is of the essence. I don't think they have gone very far. I suspect that they might be somewhere on the Plains of the Lizardmen, not far from here. May Sayha of the Winds guide your way... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-03.html new file mode 100644 index 0000000000..a57ab38335 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-03.html @@ -0,0 +1,4 @@ +Isael Silvershadow:
+Please, you must hurry and find the blade, shaft, and four jewels of Talin's Spear that were stolen from us by the Leto Lizardman Shamans and Chiefs.
+Time is of the essence. May Sayha of the winds guide your footsteps... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-04.html new file mode 100644 index 0000000000..f3dadfe090 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-04.html @@ -0,0 +1,4 @@ +Isael Silvershadow:
+You have found all of the pieces of Talin's spear! Reassembling this will be easy for me! I studied the art of weaponry with Hierarch Terestian of the lake fairies.
+Now! Take this spear and return to Thalia. Please find the Water of Life so that the Mother Tree may become green and healthy once more. May Sayha of the Winds guide you safely home... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-05.html new file mode 100644 index 0000000000..1e006c51db --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-05.html @@ -0,0 +1,3 @@ +Isael Silvershadow:
+Hurry and take Talin's Spear to Thalia. Please also find the Water of Life so that the Mother Tree may become green and healthy once more. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-06.html new file mode 100644 index 0000000000..323bbee3f9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/30655-06.html @@ -0,0 +1,3 @@ +Isael Silvershadow:
+Please find the Water of Life so that the Wothertree may become green and healthy once more. May the Goddess guide your path... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/Q00218_TestimonyOfLife.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/Q00218_TestimonyOfLife.java new file mode 100644 index 0000000000..922cfe069f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00218_TestimonyOfLife/Q00218_TestimonyOfLife.java @@ -0,0 +1,738 @@ +/* + * 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.Q00218_TestimonyOfLife; + +import com.l2jmobius.gameserver.enums.CategoryType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Testimony Of Life (218) + * @author ivantotov + */ +public final class Q00218_TestimonyOfLife extends Quest +{ + // NPCs + private static final int HIERARCH_ASTERIOS = 30154; + private static final int BLACKSMITH_PUSHKIN = 30300; + private static final int THALIA = 30371; + private static final int PRIEST_ADONIUS = 30375; + private static final int ARKENIA = 30419; + private static final int MASTER_CARDIEN = 30460; + private static final int ISAEL_SILVERSHADOW = 30655; + // Items + private static final int TALINS_SPEAR = 3026; + private static final int CARDIENS_LETTER = 3141; + private static final int CAMOMILE_CHARM = 3142; + private static final int HIERARCHS_LETTER = 3143; + private static final int MOONFLOWER_CHARM = 3144; + private static final int GRAIL_DIAGRAM = 3145; + private static final int THALIAS_1ST_LETTER = 3146; + private static final int THALIAS_2ND_LETTER = 3147; + private static final int THALIAS_INSTRUCTIONS = 3148; + private static final int PUSHKINS_LIST = 3149; + private static final int PURE_MITHRIL_CUP = 3150; + private static final int ARKENIAS_CONTRACT = 3151; + private static final int ARKENIAS_INSTRUCTIONS = 3152; + private static final int ADONIUS_LIST = 3153; + private static final int ANDARIEL_SCRIPTURE_COPY = 3154; + private static final int STARDUST = 3155; + private static final int ISAELS_INSTRUCTIONS = 3156; + private static final int ISAELS_LETTER = 3157; + private static final int GRAIL_OF_PURITY = 3158; + private static final int TEARS_OF_UNICORN = 3159; + private static final int WATER_OF_LIFE = 3160; + private static final int PURE_MITHRIL_ORE = 3161; + private static final int ANT_SOLDIER_ACID = 3162; + private static final int WYRMS_TALON = 3163; + private static final int SPIDER_ICHOR = 3164; + private static final int HARPYS_DOWN = 3165; + private static final int TALINS_SPEAR_BLADE = 3166; + private static final int TALINS_SPEAR_SHAFT = 3167; + private static final int TALINS_RUBY = 3168; + private static final int TALINS_AQUAMARINE = 3169; + private static final int TALINS_AMETHYST = 3170; + private static final int TALINS_PERIDOT = 3171; + // Reward + private static final int MARK_OF_LIFE = 3140; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monster + private static final int ANT_RECRUIT = 20082; + private static final int ANT_PATROL = 20084; + private static final int ANT_GUARD = 20086; + private static final int ANT_SOLDIER = 20087; + private static final int ANT_WARRIOR_CAPTAIN = 20088; + private static final int HARPY = 20145; + private static final int WYRM = 20176; + private static final int MARSH_SPIDER = 20233; + private static final int GUARDIAN_BASILISK = 20550; + private static final int LETO_LIZARDMAN_SHAMAN = 20581; + private static final int LETO_LIZARDMAN_OVERLORD = 20582; + // Quest Monster + private static final int UNICORN_OF_EVA = 27077; + // Misc + private static final int MIN_LEVEL = 37; + private static final int LEVEL = 38; + + public Q00218_TestimonyOfLife() + { + super(218); + addStartNpc(MASTER_CARDIEN); + addTalkId(MASTER_CARDIEN, HIERARCH_ASTERIOS, BLACKSMITH_PUSHKIN, THALIA, PRIEST_ADONIUS, ARKENIA, ISAEL_SILVERSHADOW); + addKillId(ANT_RECRUIT, ANT_PATROL, ANT_GUARD, ANT_SOLDIER, ANT_WARRIOR_CAPTAIN, HARPY, WYRM, MARSH_SPIDER, GUARDIAN_BASILISK, LETO_LIZARDMAN_SHAMAN, LETO_LIZARDMAN_OVERLORD, UNICORN_OF_EVA); + registerQuestItems(TALINS_SPEAR, CARDIENS_LETTER, CAMOMILE_CHARM, HIERARCHS_LETTER, MOONFLOWER_CHARM, GRAIL_DIAGRAM, THALIAS_1ST_LETTER, THALIAS_2ND_LETTER, THALIAS_INSTRUCTIONS, PUSHKINS_LIST, PURE_MITHRIL_CUP, ARKENIAS_CONTRACT, ARKENIAS_INSTRUCTIONS, ADONIUS_LIST, ANDARIEL_SCRIPTURE_COPY, STARDUST, ISAELS_INSTRUCTIONS, ISAELS_LETTER, GRAIL_OF_PURITY, TEARS_OF_UNICORN, WATER_OF_LIFE, PURE_MITHRIL_ORE, ANT_SOLDIER_ACID, WYRMS_TALON, SPIDER_ICHOR, HARPYS_DOWN, TALINS_SPEAR_BLADE, TALINS_SPEAR_SHAFT, TALINS_RUBY, TALINS_AQUAMARINE, TALINS_AMETHYST, TALINS_PERIDOT); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + if (!hasQuestItems(player, CARDIENS_LETTER)) + { + giveItems(player, CARDIENS_LETTER, 1); + } + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 102); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30460-04a.htm"; + } + else + { + htmltext = "30460-04.htm"; + } + } + break; + } + case "30154-02.html": + case "30154-03.html": + case "30154-04.html": + case "30154-05.html": + case "30154-06.html": + case "30300-02.html": + case "30300-03.html": + case "30300-04.html": + case "30300-05.html": + case "30300-09.html": + case "30300-07a.html": + case "30371-02.html": + case "30371-10.html": + case "30419-02.html": + case "30419-03.html": + { + htmltext = event; + break; + } + case "30154-07.html": + { + if (hasQuestItems(player, CARDIENS_LETTER)) + { + takeItems(player, CARDIENS_LETTER, 1); + giveItems(player, HIERARCHS_LETTER, 1); + giveItems(player, MOONFLOWER_CHARM, 1); + qs.setCond(2, true); + htmltext = event; + } + break; + } + case "30300-06.html": + { + if (hasQuestItems(player, GRAIL_DIAGRAM)) + { + takeItems(player, GRAIL_DIAGRAM, 1); + giveItems(player, PUSHKINS_LIST, 1); + qs.setCond(4, true); + htmltext = event; + } + break; + } + case "30300-10.html": + { + if (hasQuestItems(player, PUSHKINS_LIST)) + { + takeItems(player, PUSHKINS_LIST, 1); + giveItems(player, PURE_MITHRIL_CUP, 1); + takeItems(player, PURE_MITHRIL_ORE, -1); + takeItems(player, ANT_SOLDIER_ACID, -1); + takeItems(player, WYRMS_TALON, -1); + qs.setCond(6, true); + htmltext = event; + } + break; + } + case "30371-03.html": + { + if (hasQuestItems(player, HIERARCHS_LETTER)) + { + takeItems(player, HIERARCHS_LETTER, 1); + giveItems(player, GRAIL_DIAGRAM, 1); + qs.setCond(3, true); + htmltext = event; + } + break; + } + case "30371-11.html": + { + if (hasQuestItems(player, STARDUST)) + { + giveItems(player, THALIAS_2ND_LETTER, 1); + takeItems(player, STARDUST, 1); + qs.setCond(14, true); + htmltext = event; + } + break; + } + case "30419-04.html": + { + if (hasQuestItems(player, THALIAS_1ST_LETTER)) + { + takeItems(player, THALIAS_1ST_LETTER, 1); + giveItems(player, ARKENIAS_CONTRACT, 1); + giveItems(player, ARKENIAS_INSTRUCTIONS, 1); + qs.setCond(8, true); + htmltext = event; + } + break; + } + case "30375-02.html": + { + if (hasQuestItems(player, ARKENIAS_INSTRUCTIONS)) + { + takeItems(player, ARKENIAS_INSTRUCTIONS, 1); + giveItems(player, ADONIUS_LIST, 1); + qs.setCond(9, true); + htmltext = event; + } + break; + } + case "30655-02.html": + { + if (hasQuestItems(player, THALIAS_2ND_LETTER)) + { + takeItems(player, THALIAS_2ND_LETTER, 1); + giveItems(player, ISAELS_INSTRUCTIONS, 1); + qs.setCond(15, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case ANT_RECRUIT: + case ANT_PATROL: + case ANT_GUARD: + case ANT_SOLDIER: + case ANT_WARRIOR_CAPTAIN: + { + if (hasQuestItems(killer, MOONFLOWER_CHARM, PUSHKINS_LIST) && (getQuestItemsCount(killer, ANT_SOLDIER_ACID) < 20)) + { + giveItems(killer, ANT_SOLDIER_ACID, 2); + if (getQuestItemsCount(killer, ANT_SOLDIER_ACID) == 20) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, PURE_MITHRIL_ORE) >= 10) && (getQuestItemsCount(killer, WYRMS_TALON) >= 20)) + { + qs.setCond(5); + } + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case HARPY: + { + if (hasQuestItems(killer, MOONFLOWER_CHARM, ADONIUS_LIST) && (getQuestItemsCount(killer, HARPYS_DOWN) < 20)) + { + giveItems(killer, HARPYS_DOWN, 4); + if (getQuestItemsCount(killer, HARPYS_DOWN) == 20) + { + + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (getQuestItemsCount(killer, SPIDER_ICHOR) >= 20) + { + qs.setCond(10); + } + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case WYRM: + { + if (hasQuestItems(killer, MOONFLOWER_CHARM, PUSHKINS_LIST) && (getQuestItemsCount(killer, WYRMS_TALON) < 20)) + { + giveItems(killer, WYRMS_TALON, 4); + if (getQuestItemsCount(killer, WYRMS_TALON) == 20) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, PURE_MITHRIL_ORE) >= 10) && (getQuestItemsCount(killer, ANT_SOLDIER_ACID) >= 20)) + { + qs.setCond(5); + } + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MARSH_SPIDER: + { + if (hasQuestItems(killer, MOONFLOWER_CHARM, ADONIUS_LIST) && (getQuestItemsCount(killer, SPIDER_ICHOR) < 20)) + { + giveItems(killer, SPIDER_ICHOR, 4); + if (getQuestItemsCount(killer, SPIDER_ICHOR) == 20) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (getQuestItemsCount(killer, HARPYS_DOWN) >= 20) + { + qs.setCond(10); + } + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case GUARDIAN_BASILISK: + { + if (hasQuestItems(killer, MOONFLOWER_CHARM, PUSHKINS_LIST) && (getQuestItemsCount(killer, PURE_MITHRIL_ORE) < 10)) + { + giveItems(killer, PURE_MITHRIL_ORE, 2); + if (getQuestItemsCount(killer, PURE_MITHRIL_ORE) == 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, WYRMS_TALON) >= 20) && (getQuestItemsCount(killer, ANT_SOLDIER_ACID) >= 20)) + { + qs.setCond(5); + } + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case LETO_LIZARDMAN_SHAMAN: + case LETO_LIZARDMAN_OVERLORD: + { + if (hasQuestItems(killer, ISAELS_INSTRUCTIONS)) + { + if (!hasQuestItems(killer, TALINS_SPEAR_BLADE)) + { + giveItems(killer, TALINS_SPEAR_BLADE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, TALINS_SPEAR_SHAFT)) + { + giveItems(killer, TALINS_SPEAR_SHAFT, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, TALINS_RUBY)) + { + giveItems(killer, TALINS_RUBY, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, TALINS_AQUAMARINE)) + { + giveItems(killer, TALINS_AQUAMARINE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, TALINS_AMETHYST)) + { + giveItems(killer, TALINS_AMETHYST, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, TALINS_PERIDOT)) + { + giveItems(killer, TALINS_PERIDOT, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + } + break; + } + case UNICORN_OF_EVA: + { + if (!hasQuestItems(killer, TEARS_OF_UNICORN) && hasQuestItems(killer, MOONFLOWER_CHARM, TALINS_SPEAR, GRAIL_OF_PURITY)) + { + if (npc.getKillingBlowWeapon() == TALINS_SPEAR) + { + takeItems(killer, TALINS_SPEAR, 1); + takeItems(killer, GRAIL_OF_PURITY, 1); + giveItems(killer, TEARS_OF_UNICORN, 1); + qs.setCond(19, true); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == MASTER_CARDIEN) + { + if (player.getRace() == Race.ELF) + { + if ((player.getLevel() >= MIN_LEVEL) && player.isInCategory(CategoryType.ELF_2ND_GROUP)) + { + htmltext = "30460-03.htm"; + } + else if (player.getLevel() >= MIN_LEVEL) + { + htmltext = "30460-01a.html"; + } + else + { + htmltext = "30460-02.html"; + } + } + else + { + htmltext = "30460-01.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case MASTER_CARDIEN: + { + if (hasQuestItems(player, CARDIENS_LETTER)) + { + htmltext = "30460-05.html"; + } + else if (hasQuestItems(player, MOONFLOWER_CHARM)) + { + htmltext = "30460-06.html"; + } + else if (hasQuestItems(player, CAMOMILE_CHARM)) + { + giveAdena(player, 342288, true); + giveItems(player, MARK_OF_LIFE, 1); + addExpAndSp(player, 1886832, 125918); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30460-07.html"; + } + break; + } + case HIERARCH_ASTERIOS: + { + if (hasQuestItems(player, CARDIENS_LETTER)) + { + htmltext = "30154-01.html"; + } + else if (hasQuestItems(player, MOONFLOWER_CHARM)) + { + if (!hasQuestItems(player, WATER_OF_LIFE)) + { + htmltext = "30154-08.html"; + } + else + { + giveItems(player, CAMOMILE_CHARM, 1); + takeItems(player, MOONFLOWER_CHARM, 1); + takeItems(player, WATER_OF_LIFE, 1); + qs.setCond(21, true); + htmltext = "30154-09.html"; + } + } + else if (hasQuestItems(player, CAMOMILE_CHARM)) + { + htmltext = "30154-10.html"; + } + break; + } + case BLACKSMITH_PUSHKIN: + { + if (hasQuestItems(player, MOONFLOWER_CHARM)) + { + if (hasQuestItems(player, GRAIL_DIAGRAM)) + { + htmltext = "30300-01.html"; + } + else if (hasQuestItems(player, PUSHKINS_LIST)) + { + if ((getQuestItemsCount(player, PURE_MITHRIL_ORE) >= 10) && (getQuestItemsCount(player, ANT_SOLDIER_ACID) >= 20) && (getQuestItemsCount(player, WYRMS_TALON) >= 20)) + { + htmltext = "30300-08.html"; + } + else + { + htmltext = "30300-07.html"; + } + } + else if (hasQuestItems(player, PURE_MITHRIL_CUP)) + { + htmltext = "30300-11.html"; + } + else if (!hasAtLeastOneQuestItem(player, GRAIL_DIAGRAM, PUSHKINS_LIST, PURE_MITHRIL_CUP)) + { + htmltext = "30300-12.html"; + } + } + break; + } + case THALIA: + { + if (hasQuestItems(player, MOONFLOWER_CHARM)) + { + if (hasQuestItems(player, HIERARCHS_LETTER)) + { + htmltext = "30371-01.html"; + } + else if (hasQuestItems(player, GRAIL_DIAGRAM)) + { + htmltext = "30371-04.html"; + } + else if (hasQuestItems(player, PUSHKINS_LIST)) + { + htmltext = "30371-05.html"; + } + else if (hasQuestItems(player, PURE_MITHRIL_CUP)) + { + giveItems(player, THALIAS_1ST_LETTER, 1); + takeItems(player, PURE_MITHRIL_CUP, 1); + qs.setCond(7, true); + htmltext = "30371-06.html"; + } + else if (hasQuestItems(player, THALIAS_1ST_LETTER)) + { + htmltext = "30371-07.html"; + } + else if (hasQuestItems(player, ARKENIAS_CONTRACT)) + { + htmltext = "30371-08.html"; + } + else if (hasQuestItems(player, STARDUST)) + { + htmltext = "30371-09.html"; + } + else if (hasQuestItems(player, THALIAS_INSTRUCTIONS)) + { + if (player.getLevel() >= LEVEL) + { + takeItems(player, THALIAS_INSTRUCTIONS, 1); + giveItems(player, THALIAS_2ND_LETTER, 1); + qs.setCond(14, true); + htmltext = "30371-13.html"; + } + else + { + htmltext = "30371-12.html"; + } + } + else if (hasQuestItems(player, THALIAS_2ND_LETTER)) + { + htmltext = "30371-14.html"; + } + else if (hasQuestItems(player, ISAELS_INSTRUCTIONS)) + { + htmltext = "30371-15.html"; + } + else if (hasQuestItems(player, TALINS_SPEAR, ISAELS_LETTER)) + { + takeItems(player, ISAELS_LETTER, 1); + giveItems(player, GRAIL_OF_PURITY, 1); + qs.setCond(18, true); + htmltext = "30371-16.html"; + } + else if (hasQuestItems(player, TALINS_SPEAR, GRAIL_OF_PURITY)) + { + htmltext = "30371-17.html"; + } + else if (hasQuestItems(player, TEARS_OF_UNICORN)) + { + takeItems(player, TEARS_OF_UNICORN, 1); + giveItems(player, WATER_OF_LIFE, 1); + qs.setCond(20, true); + htmltext = "30371-18.html"; + } + else if (hasAtLeastOneQuestItem(player, CAMOMILE_CHARM, WATER_OF_LIFE)) + { + htmltext = "30371-19.html"; + } + } + break; + } + case ARKENIA: + { + if (hasQuestItems(player, MOONFLOWER_CHARM)) + { + if (hasQuestItems(player, THALIAS_1ST_LETTER)) + { + htmltext = "30419-01.html"; + } + else if (hasAtLeastOneQuestItem(player, ARKENIAS_INSTRUCTIONS, ADONIUS_LIST)) + { + htmltext = "30419-05.html"; + } + else if (hasQuestItems(player, ANDARIEL_SCRIPTURE_COPY)) + { + takeItems(player, ARKENIAS_CONTRACT, 1); + takeItems(player, ANDARIEL_SCRIPTURE_COPY, 1); + giveItems(player, STARDUST, 1); + qs.setCond(12, true); + htmltext = "30419-06.html"; + } + else if (hasQuestItems(player, STARDUST)) + { + htmltext = "30419-07.html"; + } + else if (!hasAtLeastOneQuestItem(player, THALIAS_1ST_LETTER, ARKENIAS_CONTRACT, ANDARIEL_SCRIPTURE_COPY, STARDUST)) + { + htmltext = "30419-08.html"; + } + } + break; + } + case PRIEST_ADONIUS: + { + if (hasQuestItems(player, MOONFLOWER_CHARM)) + { + if (hasQuestItems(player, ARKENIAS_INSTRUCTIONS)) + { + htmltext = "30375-01.html"; + } + else if (hasQuestItems(player, ADONIUS_LIST)) + { + if ((getQuestItemsCount(player, SPIDER_ICHOR) >= 20) && (getQuestItemsCount(player, HARPYS_DOWN) >= 20)) + { + takeItems(player, ADONIUS_LIST, 1); + giveItems(player, ANDARIEL_SCRIPTURE_COPY, 1); + takeItems(player, SPIDER_ICHOR, -1); + takeItems(player, HARPYS_DOWN, -1); + qs.setCond(11, true); + htmltext = "30375-04.html"; + } + else + { + htmltext = "30375-03.html"; + } + } + else if (hasQuestItems(player, ANDARIEL_SCRIPTURE_COPY)) + { + htmltext = "30375-05.html"; + } + else if (!hasAtLeastOneQuestItem(player, ARKENIAS_INSTRUCTIONS, ADONIUS_LIST, ANDARIEL_SCRIPTURE_COPY)) + { + htmltext = "30375-06.html"; + } + } + break; + } + case ISAEL_SILVERSHADOW: + { + if (hasQuestItems(player, MOONFLOWER_CHARM)) + { + if (hasQuestItems(player, THALIAS_2ND_LETTER)) + { + htmltext = "30655-01.html"; + } + else if (hasQuestItems(player, ISAELS_INSTRUCTIONS)) + { + if (hasQuestItems(player, TALINS_SPEAR_BLADE, TALINS_SPEAR_SHAFT, TALINS_RUBY, TALINS_AQUAMARINE, TALINS_AMETHYST, TALINS_PERIDOT)) + { + giveItems(player, TALINS_SPEAR, 1); + takeItems(player, ISAELS_INSTRUCTIONS, 1); + giveItems(player, ISAELS_LETTER, 1); + takeItems(player, TALINS_SPEAR_BLADE, 1); + takeItems(player, TALINS_SPEAR_SHAFT, 1); + takeItems(player, TALINS_RUBY, 1); + takeItems(player, TALINS_AQUAMARINE, 1); + takeItems(player, TALINS_AMETHYST, 1); + takeItems(player, TALINS_PERIDOT, 1); + qs.setCond(17, true); + htmltext = "30655-04.html"; + } + else + { + htmltext = "30655-03.html"; + } + } + else if (hasQuestItems(player, TALINS_SPEAR, ISAELS_LETTER)) + { + htmltext = "30655-05.html"; + } + else if (hasAtLeastOneQuestItem(player, GRAIL_OF_PURITY, WATER_OF_LIFE, CAMOMILE_CHARM)) + { + htmltext = "30655-06.html"; + } + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == MASTER_CARDIEN) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-01.html new file mode 100644 index 0000000000..56d2f5f1f3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-01.html @@ -0,0 +1,4 @@ +Magister Roa:
+What business would a Dark Elf have with me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-02.html new file mode 100644 index 0000000000..694246a654 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-02.html @@ -0,0 +1,5 @@ +Magister Roa:
+Brother Alder? My great, great grandfather? But how would a Dark Elf know about my ancestor? What could you possibly want to know about a person who has been dead for many years?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-03.html new file mode 100644 index 0000000000..2a035c54c0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-03.html @@ -0,0 +1,4 @@ +Magister Roa:
+What?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-04.html new file mode 100644 index 0000000000..ab7231ad13 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-04.html @@ -0,0 +1,3 @@ +Magister Roa:
+I heard those words from my grandmother when I was quite small... She beseeched me to remember it until my dying day, and to pass them on to my children. I didn't understand the meaning exactly, but I knew that it was something very important. She said that if someone comes to me and says those words, I must give this to them. I am not sure what it is, it seems to be some kind of a slip. If you look here, it says 'Gludin Warehouse'. It is yours. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-05.html new file mode 100644 index 0000000000..c2c91b7bb8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-05.html @@ -0,0 +1,3 @@ +Magister Roa:
+It appears to be a claim check for a warehouse. Perhaps my ancestor had something precious stored there? The slip says 'Gludin warehouse'. You had better go and have a look there. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-06.html new file mode 100644 index 0000000000..204a51a21c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30114-06.html @@ -0,0 +1,3 @@ +Magister Roa:
+Is it true that my ancestor wrote a book that was banned by the Priests of Einhasad? Why would he be interested in forbidden knowledge? You must be careful. It is said that by merely reading the book your soul can become corrupted. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30210-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30210-01.html new file mode 100644 index 0000000000..effde50e6e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30210-01.html @@ -0,0 +1,5 @@ +Warehouse Keeper Norman:
+I remember... I saw it in an Old Account Book... We Dwarves are very precise record keepers. It is recorded that when my predecessor first came here to the town's warehouse, a pale man in a priest gown left a scroll with him.
+It is the Steel Gate Guild's purpose to protect all deposited things completely, so we have kept the scroll safely secured for the last 200 years. Although your receipt is very old, there is no doubt that it was issued by our warehouse. One moment. I shall bring the deposited goods.
+Here you go! Some of the pages in this book are torn, but that was how it looked when it was deposited! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30210-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30210-02.html new file mode 100644 index 0000000000..23f19d57a7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30210-02.html @@ -0,0 +1,3 @@ +Warehouse Keeper Norman:
+I don't know what that document refers to, but please remember that it has been kept safe by our Steel Gate Guild for over 200 years. To us, credibility is the greatest virtue! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30358-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30358-01.html new file mode 100644 index 0000000000..b16d6f5fbc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30358-01.html @@ -0,0 +1,5 @@ +Tetrarch Thifiell:
+Welcome home, young brother. It seems like only yesterday when you came here after you finished training in the shrine of Shilen. My, haven't you grown!
+This document you have found is known as 'Kaysha's Revelation'. It contains the truth about Shilen! It contains the truth of the goddess, long thought lost! That document is essential to our suvival in the Age of Chaos. It will be the key to the opening of a new era.
+Now it is time for your Initiation Ceremony. You shall share the experience and knowledge that you have acquired in the Human world, as well as absorbing the accumulated knowledge of the ancestors. Take this letter and amulet to Witch Arkenia of the Dark Elves Initiation Altar. She will help you complete the Initiation Ceremony of Shilen. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30358-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30358-02.html new file mode 100644 index 0000000000..035057f6dd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30358-02.html @@ -0,0 +1,3 @@ +Tetrarch Thifiell:
+It is time for you to take the Initiation Ceremony of Shilen. Take the letter and charm that I gave you to Witch Arkenia of the Dark Elves Initiation Altar. She will perform your ceremony. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30358-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30358-03.html new file mode 100644 index 0000000000..6effd5e24c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30358-03.html @@ -0,0 +1,3 @@ +Tetrarch Thifiell:
+The Book of the Abyss is the living history of our past and future. It is where all our tribal knowledge and experience is recorded. To complete the Initiation Ceremony you must write your own phrase in the book. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30358-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30358-04.html new file mode 100644 index 0000000000..fd549020b2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30358-04.html @@ -0,0 +1,4 @@ +Tetrarch Thifiell:
+Brother of darkness, you now know the truth of abyss. My congratulations on your newfound awakening. You have glimpsed the dark fate our tribe must endure during the coming age of chaos. Do not be despondent, however! Your task now, like all of ours, is to concentrate on the mission before us.
+To that end, I now award you thisMark of Fate. You will need it if you ever transfer to a higher class. I'm sure you will be much changed when next we meet; I sense a powerful destiny ahead of you. May Shilen's power shield you always. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-01.html new file mode 100644 index 0000000000..54c16d6b06 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-01.html @@ -0,0 +1,5 @@ +Arkenia:
+The Book of the Abyss is an amazing scripture, a collection of all the knowledge and experiences of our race through the millennia. The time has come for you to contribute your part to our history.
+You must prepare and use a special ink for this process. Thus will begin the Initiation Ceremony of the Shilen Circle.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-02.html new file mode 100644 index 0000000000..8df900dcc1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-02.html @@ -0,0 +1,3 @@ +Arkenia:
+To create the ink that you must use to write within The Book of the Abyss you will need to obtain two ingredients: Red Fairy Dust from a Bloody Pixy and Blight Treant Sap from... a Blight Treant. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-03.html new file mode 100644 index 0000000000..a4ae9a7171 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-03.html @@ -0,0 +1,3 @@ +Arkenia:
+To begin the Initiation Ceremony of the Shilen Circle you must create a very special ink. To create this ink you will need to obtain two ingredients: Red Fairy Dust from the Bloody Pixy and Blight Treant Sap from blight treants. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-04.html new file mode 100644 index 0000000000..382e06125b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-04.html @@ -0,0 +1,4 @@ +Arkenia:
+You have assembled the ingredients needed for making Scarlet Ink. The Initiation Ceremony of the Shilen Circle may begin.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-05.html new file mode 100644 index 0000000000..8d5caa6366 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-05.html @@ -0,0 +1,6 @@ +Arkenia:
+Purge your soul and absorb the knowledge and experience of your ancestors from the Book of the Abyss. Add your contribution to our holy scripture.
+I, Arkenia, Shaman of the Abyss proclaim that you have been given the sacred knowledge of our ancestors. You are privy to the prophecies foretelling our dark, chaotic future and have been shown what our race must do to survive.
+Specific memories will fade from your mind, but the knowledge will be held in your heart for the right moment.
+Congratulations! The Initiation Ceremony of the Shilen Circle is complete. You have achieved a higher level. Now go back to Tetrarch Thifiell. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-06.html new file mode 100644 index 0000000000..0520612981 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30419-06.html @@ -0,0 +1,3 @@ +Arkenia:
+I congratulate you on completing the Initiation Ceremony of Shilen. Now take the letter that I gave you to Tetrarch Thifiell. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-01.html new file mode 100644 index 0000000000..17ca6aed18 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-01.html @@ -0,0 +1,5 @@ +Master Ixia:
+Belladonna? Of course I can make it for you. But first I need a few things.
+I need Medusa's Blood, Marsh Spider Fluids, Dead Seeker Dung, Tyrant's Blood, and Nightshade Root. Please bring 10 of each.
+You will find the Dead Seeker bat at the Execution Grounds in Dion, Tyrant in the Wastelands of Gludio, and the Nightshade Root can be obtained from the stakatos of Cruma Marshlands. Here is a list. Once you have gathered all the materials, bring them back to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-02.html new file mode 100644 index 0000000000..d146649f78 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-02.html @@ -0,0 +1,4 @@ +Master Ixia:
+Hurry and bring me the materials for making Belladonna!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-02a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-02a.html new file mode 100644 index 0000000000..955169d14e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-02a.html @@ -0,0 +1,3 @@ +Master Ixia:
+I need 10 each of Medusa's Blood, Marsh Spider Fluids, Dead Seeker Dung, Tyrant's Blood, and Nightshade Root. Dead Seeker bats can be found on the Execution Grounds of Dion, Tyrant is in the Wastelands of Gludio, and Nightshade Root can be obtained from the stakatos of Cruma Marshlands. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-03.html new file mode 100644 index 0000000000..f81231fca4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-03.html @@ -0,0 +1,3 @@ +Master Ixia:
+You have found all the materials. Please wait as I create the Belladonna for you. You must be very careful! Belladonna is a strong poison. Just one drop will kill even a mighty bull! Here it is. Put it to good use. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-04.html new file mode 100644 index 0000000000..7945ee4627 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-04.html @@ -0,0 +1,3 @@ +Master Ixia:
+I won't ask what the Belladonna is for. Don't underestimate its power, just one single drop will turn his body into a corpse and send his spirit back to Shilen. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-05.html new file mode 100644 index 0000000000..1b8187bdd5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30463-05.html @@ -0,0 +1,3 @@ +Master Ixia:
+Magister Kaira tells me that you are in the midst of a trial to advance to a higher rank... Does the Belladonna that I made for you the other day have anything to do with that? Anyway, I wish you good luck. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-01.html new file mode 100644 index 0000000000..e14740a267 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-01.html @@ -0,0 +1,4 @@ +Magister Kaira:
+We Dark Elves believe that hidden truths and new knowledge will make us stronger. The power of darkness that so frightens your tribe, the ultimate secrets veiled under the abyss of darkness.... We have explored and managed fearlessly. That is our strength.
+(Quest for Dark Elven characters level 37 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-01a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-01a.html new file mode 100644 index 0000000000..ca0b7f70a5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-01a.html @@ -0,0 +1,5 @@ +Magister Kaira:
+Our task is to discover the hidden truths. The Dark Elves have the shortest history and are the fewest in number among the 5 races, but we understand the power of darkness better than anybody else. We fearlessly explore and manage the very thing that other tribes dread: the power of darkness, the ultimate secrets veiled under the black abyss... This is our strength.
+We believe that the more truth and hidden knowledge we uncover, the stronger we will become. If you wish to advance to a higher level, you must learn more knowledge and truth. Most important, you must accomplish your previous task and excel at the introductory level.
+(Quest for Dark Elven characters level 37 or above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-02.html new file mode 100644 index 0000000000..451a669b24 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-02.html @@ -0,0 +1,5 @@ +Magister Kaira:
+Our mission is to discover hidden facts and truths. The Dark Elves have the shortest history and are the fewest in number among the 5 races, but understand the power of darkness better than anybody else. We fearlessly explore and manage the very thing that other tribes dread: the power of darkness, the ultimate secrets veiled under the black abyss... This is our strength.
+We believe that the more truth and hidden knowledge we reveal, the stronger we will become. If you wish to advance to a higher level, you must strive for more knowledge and truth.
+(Quest for Dark Elven characters level 37 or above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-03.htm new file mode 100644 index 0000000000..f66139b921 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-03.htm @@ -0,0 +1,5 @@ +Magister Kaira:
+Our mission is to discover hidden facts and reveal forgotten truths. The Dark Elves have the shortest history and are the fewest in number among the 5 races, but we understand the power of darkness better than anybody else. We fearlessly explore and manage the very thing that other tribes dread: the power of darkness, the ultimate secrets veiled under the black abyss... This is our strength.
+The more we uncover the truth and reveal hidden knowledge, the stronger we will become. This is what we firmly believe. If you can discover the Forbidden Knowledge and thereby enrich our spiritual heritage, you will be acknowledged for your contribution and be given the approval to advance to the higher rank of Warrior or Magician.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-04.htm new file mode 100644 index 0000000000..960bd4fd1b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-04.htm @@ -0,0 +1,6 @@ +Magister Kaira:
+At last there is news of 'Kaysha's Revelation', which was thought lost. While the Human religious reformation distorted many facts about the goddess Shilen, this revelation contains the truth written in the Age of Giants. If only we could recover it we would gain a better understanding of the goddess and the source of her power.
+No doubt the original scroll has been destroyed, but a copy of the revelation has been handed down throughout the ages. Have you heard about Hornius the Human scholar from the Imperial Era? It is said that he was murdered by believers of Einhasad while researching Kaysha's Revelation. It is rumored that one of his students made a copy of the revelation.
+The name of his pupil was Alder. He was once a monk assigned to the shrine. He saved himself from being burned at the stake at the time of the Inquisition by swearing that he would convert to Einhasad. But according to the recently found memoirs of Alder, he was convinced that Kaysha's Revelation was an important historical document. He therefore secretly made a copy and hid it away. We must find it.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-05.htm new file mode 100644 index 0000000000..4cb8e6655e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-05.htm @@ -0,0 +1,4 @@ +Magister Kaira:
+Legend says that the Remains of Alder rest here in this village, in the shrine of Einhasad. If we acquire the remains, we could summon the spirit of Alder and ask him where he hid his copy of the revelation.
+Recently brother Metheus contacted us and offered to hand over the remains. Go and meet Brother Metheus. He is in Einhasad's shrine in this village. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-05a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-05a.htm new file mode 100644 index 0000000000..12aba86ed1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-05a.htm @@ -0,0 +1,5 @@ +Magister Kaira:
+Alder's Ash lies in the Einhasad Temple here in town. If you can obtain it, you can use the exorcism ritual to call the Alder's spirit from Purgatory and ask where the Revelations are kept.
+Not long ago, Brother Metheus contacted us and said that he could give the Alder's Ash to us. Go meet with Brother Metheus. You will find him in the local Einhasad Temple.
+And take this Dimension Diamond. You can trade it to the village gatekeeper for something special that may help you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-06.html new file mode 100644 index 0000000000..53e4133e62 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-06.html @@ -0,0 +1,3 @@ +Magister Kaira:
+Go to Einhasad's Temple and meet Brother Metheus. He has offered to give us the Alder's remains. You must be careful and very discreet. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-07.html new file mode 100644 index 0000000000..b82f3b27de --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-07.html @@ -0,0 +1,3 @@ +Magister Kaira:
+I had a feeling that he expected something in return. Well, we have no choice. Do whatever he asks that is within your power. The most important thing is that we acquire the revelation. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-08.html new file mode 100644 index 0000000000..0afd609c18 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-08.html @@ -0,0 +1,3 @@ +Magister Kaira:
+Belladonna? When it comes to poison, Master Ixia from the Town of Dion is the expert. You should consult her. By the way, this guy Metheus...he is more dangerous than I thought. I had no idea that his heart was so full of hatred and revenge. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-09.html new file mode 100644 index 0000000000..407c419d4a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-09.html @@ -0,0 +1,7 @@ + +Magister Kaira:
+At last you have brought Alder's Skull. With this we can perform the exorcism ritual and summon the spirit of Alder. Let us begin...
+In the name of Shilen, Master of hell, Queen of the dead,
+thou who hast crossed the waters of forgetfulness, spirit of Eldus Bricent...
+Cross the border of life and death and appear to us! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-10.html new file mode 100644 index 0000000000..e9821de9ef --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-10.html @@ -0,0 +1,3 @@ +Magister Kaira:
+You must find the descendant of Alder named 'Roa' immediately! Tell him the secret that Alder's spirit whispered to you and find out where the revelation is hidden. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-11.html new file mode 100644 index 0000000000..391c782c60 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-11.html @@ -0,0 +1,4 @@ +Magister Kaira:
+The complete copy of the revelation which was thought to be lost 200 years ago is in our hands at last! Good job, brother of darkness. Thanks to your efforts our tribe will have an even better understanding of the dark arts. In return for your efforts I will give you the opportunity to advance to a higher rank. I am sure that would be satisfactory to you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-12.html new file mode 100644 index 0000000000..71f1182885 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-12.html @@ -0,0 +1,3 @@ +Magister Kaira:
+I shall write you a Recommendation letter. Take it to Tetrarch Thifiell in the Dark Elves' Village. You will be given 'Shilen's Initiation'. When you successfully complete this test, you will receive the 'Mark of Fate' from the Tetrarch. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-13.html new file mode 100644 index 0000000000..869cfbc41c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-13.html @@ -0,0 +1,3 @@ +Magister Kaira:
+Your ambition is admirable, but you are still unprepared to take 'Shilen's Initiation'. Come back after you have accumulated more experience, then I will write you the letter of Recommendation. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-14.html new file mode 100644 index 0000000000..405c8ab825 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-14.html @@ -0,0 +1,3 @@ +Magister Kaira:
+Your time has not yet come. You must prepare more to realize your ambitions. Come back after you have accumulated more experience, then I will write you the Recommendation letter you must have in order to take 'Shilen's Initiation'. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-15.html new file mode 100644 index 0000000000..174a043791 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-15.html @@ -0,0 +1,3 @@ +Magister Kaira:
+Good. Now you are ready! I will write a Letter of Recommendation for you. Take this letter to Tetrarch Thifiell in the Dark Elf Village. You will be given Shilen's Initiation and receive the Abyssal Mark. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-16.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-16.html new file mode 100644 index 0000000000..dd822ecb09 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-16.html @@ -0,0 +1,3 @@ +Magister Kaira:
+You must go back to the Dark Elven Forest and meet Tetrarch Thifiell. Follow his instructions and take 'Shilen's Initiation'. You will then receive the 'Mark of Fate' which is essential for advancement. Please hurry! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-17.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-17.html new file mode 100644 index 0000000000..ab50e19d30 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30476-17.html @@ -0,0 +1,3 @@ +Magister Kaira:
+I pray you pass 'Shilen's Initiation' and are advanced to a higher rank. May the eye of the abyss lead you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30613-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30613-01.html new file mode 100644 index 0000000000..1384e203cd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30613-01.html @@ -0,0 +1,4 @@ +Alder's Spirit:
+This is a copy of Kaisha's Revelation, ancient religious scriptures that I transcribed at great risk to my life. I will safeguard it for future generations. Although it is dark elves who now seek its secrets, I find it rewarding that such an old truth is again known to the world.
+You may obtain a written copy of the revelation from Gludin's warehouse. First you must obtain a bill from my daughter 'Roa' who lives in this village. Go to her and say 'The moon emits light though you hide it with your hand.' She will then give you the bill. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-01.html new file mode 100644 index 0000000000..49f1ce856d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-01.html @@ -0,0 +1,6 @@ +Brother Metheus:
+Come in, Dark Elf. Do you know why I've asked you here? Once I had a beloved sister. She was the only family I had left. She was executed during the rebellion of farmers because of her relationship with the Bishops. And this after she was excommunicated! The High Priest said that her soul would be damned and her body could not be buried in consecrated ground!
+Einhasad teaches forgiveness and mercy but I cannot suppress the furious sadness in my heart.
+I must have revenge on those who killed my sister!
+If you will help me avenge my sister, I will take the skull of Brother Alders from the crypt in the temple. There are two things with which I need your help. First, locate my sister's remains in the Execution Grounds. Her body hangs from the branches of a tree. This is no normal tree, but a fearsome creature of the undead called Hangman Tree. Once you retrieve my sister's remains, put them in this pot and bring them to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-02.html new file mode 100644 index 0000000000..2235513510 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-02.html @@ -0,0 +1,4 @@ + +Brother Metheus:
+Go and find the remains of my sister in the Execution Grounds. I cannot bear the thought of her body hanging from the branches of the Hangman Tree. Please bring my sister's body back to me! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-03.html new file mode 100644 index 0000000000..9d8248f6d9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-03.html @@ -0,0 +1,6 @@ +Brother Metheus:
+Thank you so much. At last my sister can have a decent burial...
+If you could please help me with one more thing, I need you to bring me some 'Belladonna'. I have read that this poison can kill a bull with just one droplet! I intend to kill Priest Criton, who executed my sister with this same poison.
+Isn't it true that your race has some familiarity with poisons?
+Please fetch the Belladonna as soon as possible and I will give you the skull of Brother Alders. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-04.html new file mode 100644 index 0000000000..821b70ac0c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-04.html @@ -0,0 +1,4 @@ +Brother Metheus:
+Please bring me the 'Belladonna'. I intend to use it to avenge the death of my sister. I know that your race has some familiarity with poisons. From what I hear, there is a Dark Elf called 'Iksia' who is a real poison expert!
+If you will bring me Belladonna, you will receive the skull of Brother Alders you want so badly. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-05.html new file mode 100644 index 0000000000..e8cc50391e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-05.html @@ -0,0 +1,4 @@ +Brother Metheus:
+Thank you so much! At last my sister's death will be avenged! Although I shall surely be damned for it, I intend to personally see the beast get what he gave to my beloved sister.
+Here is the skull of Alders from the crypt of the temple as I promised. Take it. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-06.html new file mode 100644 index 0000000000..d9db48d416 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/30614-06.html @@ -0,0 +1,3 @@ +Brother Metheus:
+After I bury my sister I shall avenge her death. You Dark Elves have been very useful to my preparations for this day, but I will take it from here. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31845-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31845-01.html new file mode 100644 index 0000000000..47e86da5be --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31845-01.html @@ -0,0 +1,6 @@ +Bloody Pixy:
+The Dark Elves created the guardian of darkness to overcome their numerous enemies during the battle of the Humans and Elves of Light.
+The father of Dark Elves, Tetrarch Thifiell, brought a Treant from the Emerald Forest and planted it in the corpses of 66 Tree Elves, creating the first blight Treant.
+His minions kidnapped the queen of red pixy from the Enchanted Valley and subjected her to a very cruel ritual. As a result, the first bloody pixy was born, a crimson spirit with a taste for blood...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31845-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31845-02.html new file mode 100644 index 0000000000..418182c1b3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31845-02.html @@ -0,0 +1,6 @@ +Bloody Pixy:
+So you have also come for the blood-colored Fairy Dust! I can't give it to you for free! Do me a favor, though, and I will give it to you. Listen carefully!
+Our queen's hobby is collecting skulls. She delights in displaying strange-looking skulls from rare species. Personally, I find it a repulsive hobby. But she's our queen, after all -- what can I do?
+She lacks the skulls of a Grandis, Karul Bugbear, Breka Orc Overlord and Leto Lizardman Overlord. Bring me one skull from each of them and I will give you the Red Fairy Dust in return. I swear on this jewel!
+You will find a Grandis in Death Pass.Karul Bugbears will be in Hunters Valley.You will find Breka Orc Overlords in Breka's Stronghold.And the Leto Lizardman Overlord will be on the Plains of the Lizardmen. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31845-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31845-03.html new file mode 100644 index 0000000000..aa92fe775e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31845-03.html @@ -0,0 +1,4 @@ +Bloody Pixy:
+Our queen lacks the skulls of a Grandis, Karul Bugbear, Breka Orc Overlord and Leto Lizardman Overlord. Bring me one skull from each of them and I will give you the Red Fairy Dust in return. I promised on the jewel, didn't I? Pixies always keep their word! Should I tell you where you will find the creatures again?
+You will find a Grandis in Death Pass.Karul Bugbears will be in Hunters Valley.You will find Breka Orc Overlords in Breka's Stronghold.And the Leto Lizardman Overlords will be on the Plains of the Lizardmen. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31845-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31845-04.html new file mode 100644 index 0000000000..a519b6362b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31845-04.html @@ -0,0 +1,3 @@ +Bloody Pixy:
+You have collected all the skulls! I am impressed! The queen will be happy, too! Here is your Red Fairy Dust as promised! And remember this is much more valuable than the normal Silver Fairy Dust. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31845-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31845-05.html new file mode 100644 index 0000000000..876cc609e3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31845-05.html @@ -0,0 +1,3 @@ +Bloody Pixy:
+Do you realize the value of the dust I gave you? Fairy Dust made by bloody pixies is 10 times more valuable than the normal Silver Fairy Dust! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31850-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31850-01.html new file mode 100644 index 0000000000..ad46d77fe1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31850-01.html @@ -0,0 +1,7 @@ +Blight Treant:
+.This. place. is. where. the. great. blight. treants. settled.
+66. corpses. of. Elves. our. ancestors. rooted. over. their. bodies. and. grew. by. drinking. their. blood.
+The. King. of. the. black. willows. in. the. Swampland. cast. his. greedy. eyes. on. our. land.
+The. black. willow. lurker. in the Swampland. shall. never. be. forgiven.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31850-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31850-02.html new file mode 100644 index 0000000000..f990476fe0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31850-02.html @@ -0,0 +1,5 @@ +Blight Treant:
+To. kill. the. black. willow. lurker in. the. Swampland. you. must. break. off. its. branches. dig. out. its. roots. cut. off. its. stems. burn. its. stump.
+.You. must. bring. a. black. willow. lurker. leaf. Bring. it. and. you. shall. have. your. sap. of. blight. Treant..
+.I. give. you. my. word. Take. this. seed. as. my. bond. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31850-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31850-03.html new file mode 100644 index 0000000000..54d8471761 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31850-03.html @@ -0,0 +1,5 @@ +Blight Treant:
+To. kill. the. black. willow. lurker you. must. break. off. its. branches. dig. out. its. roots. cut. off. its. stems. burn. its. stump.
+.You. must. bring. a. black. willow. lurker. leaf. Bring. it. and. you. shall. have. your. sap. of. blight. Treant..
+I. give. you. my. word. Take. this. seed. as. my. bond. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31850-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31850-04.html new file mode 100644 index 0000000000..aaaf5917f7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31850-04.html @@ -0,0 +1,3 @@ +Blight Treant:
+You. have. killed. the. black. willow. lurker!. It. will. never. covet. our. land. again. Thank. you. so. much. Here. is. the. sap. of. blight. Treant. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31850-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31850-05.html new file mode 100644 index 0000000000..fb5ae01d9c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/31850-05.html @@ -0,0 +1,3 @@ +Blight Treant:
+Sap. of. blight. Treant. This. precious. liquid. is. very. powerful. You. must. treat. it. with. care. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/Q00219_TestimonyOfFate.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/Q00219_TestimonyOfFate.java new file mode 100644 index 0000000000..66e25a9952 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00219_TestimonyOfFate/Q00219_TestimonyOfFate.java @@ -0,0 +1,719 @@ +/* + * 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.Q00219_TestimonyOfFate; + +import com.l2jmobius.gameserver.enums.CategoryType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Testimony Of Fate (219) + * @author ivantotov + */ +public final class Q00219_TestimonyOfFate extends Quest +{ + // NPCs + private static final int MAGISTER_ROA = 30114; + private static final int WAREHOUSE_KEEPER_NORMAN = 30210; + private static final int TETRARCH_THIFIELL = 30358; + private static final int ARKENIA = 30419; + private static final int MASTER_IXIA = 30463; + private static final int MAGISTER_KAIRA = 30476; + private static final int ALDERS_SPIRIT = 30613; + private static final int BROTHER_METHEUS = 30614; + private static final int BLOODY_PIXY = 31845; + private static final int BLIGHT_TREANT = 31850; + // Items + private static final int KAIRAS_LETTER = 3173; + private static final int METHEUSS_FUNERAL_JAR = 3174; + private static final int KASANDRAS_REMAINS = 3175; + private static final int HERBALISM_TEXTBOOK = 3176; + private static final int IXIAS_LIST = 3177; + private static final int MEDUSAS_ICHOR = 3178; + private static final int MARSH_SPIDER_FLUIDS = 3179; + private static final int DEAD_SEEKER_DUNG = 3180; + private static final int TYRANTS_BLOOD = 3181; + private static final int NIGHTSHADE_ROOT = 3182; + private static final int BELLADONNA = 3183; + private static final int ALDERS_SKULL1 = 3184; + private static final int ALDERS_SKULL2 = 3185; + private static final int ALDERS_RECEIPT = 3186; + private static final int REVELATIONS_MANUSCRIPT = 3187; + private static final int KAIRAS_RECOMMENDATION = 3189; + private static final int KAIRAS_INSTRUCTIONS = 3188; + private static final int PALUS_CHARM = 3190; + private static final int THIFIELLS_LETTER = 3191; + private static final int ARKENIAS_NOTE = 3192; + private static final int PIXY_GARNET = 3193; + private static final int GRANDISS_SKULL = 3194; + private static final int KARUL_BUGBEAR_SKULL = 3195; + private static final int BREKA_OVERLORD_SKULL = 3196; + private static final int LETO_OVERLORD_SKULL = 3197; + private static final int RED_FAIRY_DUST = 3198; + private static final int TIMIRIRAN_SEED = 3199; + private static final int BLACK_WILLOW_LEAF = 3200; + private static final int BLIGHT_TREANT_SAP = 3201; + private static final int ARKENIAS_LETTER = 3202; + // Reward + private static final int MARK_OF_FATE = 3172; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monster + private static final int HANGMAN_TREE = 20144; + private static final int MARSH_STAKATO = 20157; + private static final int MEDUSA = 20158; + private static final int TYRANT = 20192; + private static final int TYRANT_KINGPIN = 20193; + private static final int DEAD_SEEKER = 20202; + private static final int MARSH_STAKATO_WORKER = 20230; + private static final int MARSH_STAKATO_SOLDIER = 20232; + private static final int MARSH_SPIDER = 20233; + private static final int MARSH_STAKATO_DRONE = 20234; + private static final int BREKA_ORC_OVERLORD = 20270; + private static final int GRANDIS = 20554; + private static final int LETO_LIZARDMAN_OVERLORD = 20582; + private static final int KARUL_BUGBEAR = 20600; + // Quest Monster + private static final int BLACK_WILLOW_LURKER = 27079; + // Misc + private static final int MIN_LEVEL = 37; + + public Q00219_TestimonyOfFate() + { + super(219); + addStartNpc(MAGISTER_KAIRA); + addTalkId(MAGISTER_KAIRA, MAGISTER_ROA, WAREHOUSE_KEEPER_NORMAN, TETRARCH_THIFIELL, ARKENIA, MASTER_IXIA, ALDERS_SPIRIT, BROTHER_METHEUS, BLOODY_PIXY, BLIGHT_TREANT); + addKillId(HANGMAN_TREE, MARSH_STAKATO, MEDUSA, TYRANT, TYRANT_KINGPIN, DEAD_SEEKER, MARSH_STAKATO_WORKER, MARSH_STAKATO_SOLDIER, MARSH_SPIDER, MARSH_STAKATO_DRONE, BREKA_ORC_OVERLORD, GRANDIS, LETO_LIZARDMAN_OVERLORD, KARUL_BUGBEAR, BLACK_WILLOW_LURKER); + registerQuestItems(KAIRAS_LETTER, METHEUSS_FUNERAL_JAR, KASANDRAS_REMAINS, HERBALISM_TEXTBOOK, IXIAS_LIST, MEDUSAS_ICHOR, MARSH_SPIDER_FLUIDS, DEAD_SEEKER_DUNG, TYRANTS_BLOOD, NIGHTSHADE_ROOT, BELLADONNA, ALDERS_SKULL1, ALDERS_SKULL2, ALDERS_RECEIPT, REVELATIONS_MANUSCRIPT, KAIRAS_RECOMMENDATION, KAIRAS_INSTRUCTIONS, PALUS_CHARM, THIFIELLS_LETTER, ARKENIAS_NOTE, PIXY_GARNET, GRANDISS_SKULL, KARUL_BUGBEAR_SKULL, BREKA_OVERLORD_SKULL, LETO_OVERLORD_SKULL, RED_FAIRY_DUST, TIMIRIRAN_SEED, BLACK_WILLOW_LEAF, BLIGHT_TREANT_SAP, ARKENIAS_LETTER); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + giveItems(player, KAIRAS_LETTER, 1); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 98); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30476-05a.htm"; + } + else + { + htmltext = "30476-05.htm"; + } + } + break; + } + case "30476-04.htm": + case "30476-13.html": + case "30476-14.html": + case "30114-02.html": + case "30114-03.html": + case "30463-02a.html": + { + htmltext = event; + break; + } + case "30476-12.html": + { + if (hasQuestItems(player, REVELATIONS_MANUSCRIPT)) + { + takeItems(player, REVELATIONS_MANUSCRIPT, 1); + giveItems(player, KAIRAS_RECOMMENDATION, 1); + qs.setCond(15, true); + htmltext = event; + } + break; + } + case "30114-04.html": + { + if (hasQuestItems(player, ALDERS_SKULL2)) + { + takeItems(player, ALDERS_SKULL2, 1); + giveItems(player, ALDERS_RECEIPT, 1); + qs.setCond(12, true); + htmltext = event; + } + break; + } + case "30419-02.html": + { + if (hasQuestItems(player, THIFIELLS_LETTER)) + { + takeItems(player, THIFIELLS_LETTER, 1); + giveItems(player, ARKENIAS_NOTE, 1); + qs.setCond(17, true); + htmltext = event; + } + break; + } + case "30419-05.html": + { + if (hasQuestItems(player, ARKENIAS_NOTE, RED_FAIRY_DUST, BLIGHT_TREANT_SAP)) + { + takeItems(player, ARKENIAS_NOTE, 1); + takeItems(player, RED_FAIRY_DUST, 1); + takeItems(player, BLIGHT_TREANT_SAP, 1); + giveItems(player, ARKENIAS_LETTER, 1); + qs.setCond(18, true); + htmltext = event; + } + break; + } + case "31845-02.html": + { + giveItems(player, PIXY_GARNET, 1); + htmltext = event; + break; + } + case "31850-02.html": + { + giveItems(player, TIMIRIRAN_SEED, 1); + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case HANGMAN_TREE: + { + if (hasQuestItems(killer, METHEUSS_FUNERAL_JAR) && !hasQuestItems(killer, KASANDRAS_REMAINS)) + { + takeItems(killer, METHEUSS_FUNERAL_JAR, 1); + giveItems(killer, KASANDRAS_REMAINS, 1); + qs.setCond(3, true); + } + } + case MARSH_STAKATO: + case MARSH_STAKATO_WORKER: + case MARSH_STAKATO_SOLDIER: + case MARSH_STAKATO_DRONE: + { + if (hasQuestItems(killer, IXIAS_LIST) && (getQuestItemsCount(killer, NIGHTSHADE_ROOT) < 10)) + { + if (getQuestItemsCount(killer, NIGHTSHADE_ROOT) == 9) + { + giveItems(killer, NIGHTSHADE_ROOT, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, MEDUSAS_ICHOR) >= 10) && (getQuestItemsCount(killer, MARSH_SPIDER_FLUIDS) >= 10) && (getQuestItemsCount(killer, DEAD_SEEKER_DUNG) >= 10) && (getQuestItemsCount(killer, TYRANTS_BLOOD) >= 10)) + { + qs.setCond(7); + } + } + else + { + giveItems(killer, NIGHTSHADE_ROOT, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MEDUSA: + { + if (hasQuestItems(killer, IXIAS_LIST) && (getQuestItemsCount(killer, MEDUSAS_ICHOR) < 10)) + { + if (getQuestItemsCount(killer, MEDUSAS_ICHOR) == 9) + { + giveItems(killer, MEDUSAS_ICHOR, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, MARSH_SPIDER_FLUIDS) >= 10) && (getQuestItemsCount(killer, DEAD_SEEKER_DUNG) >= 10) && (getQuestItemsCount(killer, TYRANTS_BLOOD) >= 10) && (getQuestItemsCount(killer, NIGHTSHADE_ROOT) >= 10)) + { + qs.setCond(7); + } + } + else + { + giveItems(killer, MEDUSAS_ICHOR, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case TYRANT: + case TYRANT_KINGPIN: + { + if (hasQuestItems(killer, IXIAS_LIST) && (getQuestItemsCount(killer, TYRANTS_BLOOD) < 10)) + { + if (getQuestItemsCount(killer, TYRANTS_BLOOD) == 9) + { + giveItems(killer, TYRANTS_BLOOD, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, MEDUSAS_ICHOR) >= 10) && (getQuestItemsCount(killer, MARSH_SPIDER_FLUIDS) >= 10) && (getQuestItemsCount(killer, DEAD_SEEKER_DUNG) >= 10) && (getQuestItemsCount(killer, NIGHTSHADE_ROOT) >= 10)) + { + qs.setCond(7); + } + } + else + { + giveItems(killer, TYRANTS_BLOOD, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case DEAD_SEEKER: + { + if (hasQuestItems(killer, IXIAS_LIST) && (getQuestItemsCount(killer, DEAD_SEEKER_DUNG) < 10)) + { + if (getQuestItemsCount(killer, DEAD_SEEKER_DUNG) == 9) + { + giveItems(killer, DEAD_SEEKER_DUNG, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, MEDUSAS_ICHOR) >= 10) && (getQuestItemsCount(killer, MARSH_SPIDER_FLUIDS) >= 10) && (getQuestItemsCount(killer, TYRANTS_BLOOD) >= 10) && (getQuestItemsCount(killer, NIGHTSHADE_ROOT) >= 10)) + { + qs.setCond(7); + } + } + else + { + giveItems(killer, DEAD_SEEKER_DUNG, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MARSH_SPIDER: + { + if (hasQuestItems(killer, IXIAS_LIST) && (getQuestItemsCount(killer, MARSH_SPIDER_FLUIDS) < 10)) + { + if (getQuestItemsCount(killer, MARSH_SPIDER_FLUIDS) == 9) + { + giveItems(killer, MARSH_SPIDER_FLUIDS, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, MEDUSAS_ICHOR) >= 10) && (getQuestItemsCount(killer, DEAD_SEEKER_DUNG) >= 10) && (getQuestItemsCount(killer, TYRANTS_BLOOD) >= 10) && (getQuestItemsCount(killer, NIGHTSHADE_ROOT) >= 10)) + { + qs.setCond(7); + } + } + else + { + giveItems(killer, MARSH_SPIDER_FLUIDS, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case BREKA_ORC_OVERLORD: + { + if (hasQuestItems(killer, PALUS_CHARM, ARKENIAS_NOTE, PIXY_GARNET) && !hasQuestItems(killer, RED_FAIRY_DUST, BREKA_OVERLORD_SKULL)) + { + if (!hasQuestItems(killer, BREKA_OVERLORD_SKULL)) + { + giveItems(killer, BREKA_OVERLORD_SKULL, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + } + break; + } + case GRANDIS: + { + if (hasQuestItems(killer, PALUS_CHARM, ARKENIAS_NOTE, PIXY_GARNET) && !hasQuestItems(killer, RED_FAIRY_DUST, GRANDISS_SKULL)) + { + if (!hasQuestItems(killer, GRANDISS_SKULL)) + { + giveItems(killer, GRANDISS_SKULL, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + } + break; + } + case LETO_LIZARDMAN_OVERLORD: + { + if (hasQuestItems(killer, PALUS_CHARM, ARKENIAS_NOTE, PIXY_GARNET) && !hasQuestItems(killer, RED_FAIRY_DUST, LETO_OVERLORD_SKULL)) + { + if (!hasQuestItems(killer, LETO_OVERLORD_SKULL)) + { + giveItems(killer, LETO_OVERLORD_SKULL, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + } + break; + } + case KARUL_BUGBEAR: + { + if (hasQuestItems(killer, PALUS_CHARM, ARKENIAS_NOTE, PIXY_GARNET) && !hasQuestItems(killer, RED_FAIRY_DUST, KARUL_BUGBEAR_SKULL)) + { + if (!hasQuestItems(killer, KARUL_BUGBEAR_SKULL)) + { + giveItems(killer, KARUL_BUGBEAR_SKULL, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + } + break; + } + case BLACK_WILLOW_LURKER: + { + if (hasQuestItems(killer, PALUS_CHARM, ARKENIAS_NOTE, TIMIRIRAN_SEED) && !hasQuestItems(killer, BLIGHT_TREANT_SAP, BLACK_WILLOW_LEAF)) + { + giveItems(killer, BLACK_WILLOW_LEAF, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == MAGISTER_KAIRA) + { + if (player.getRace() == Race.DARK_ELF) + { + if ((player.getLevel() >= MIN_LEVEL) && player.isInCategory(CategoryType.DELF_2ND_GROUP)) + { + htmltext = "30476-03.htm"; + } + else if (player.getLevel() >= MIN_LEVEL) + { + htmltext = "30476-01a.html"; + } + else + { + htmltext = "30476-02.html"; + } + } + else + { + htmltext = "30476-01.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case MAGISTER_KAIRA: + { + if (hasQuestItems(player, KAIRAS_LETTER)) + { + htmltext = "30476-06.html"; + } + else if (hasAtLeastOneQuestItem(player, METHEUSS_FUNERAL_JAR, KASANDRAS_REMAINS)) + { + htmltext = "30476-07.html"; + } + else if (hasAtLeastOneQuestItem(player, HERBALISM_TEXTBOOK, IXIAS_LIST)) + { + qs.setCond(5, true); + htmltext = "30476-08.html"; + } + else if (hasQuestItems(player, ALDERS_SKULL1)) + { + takeItems(player, ALDERS_SKULL1, 1); + giveItems(player, ALDERS_SKULL2, 1); + addSpawn(ALDERS_SPIRIT, 78977, 149036, -3597, 0, false, 200000, false); + qs.setCond(10, true); + htmltext = "30476-09.html"; + } + else if (hasAtLeastOneQuestItem(player, ALDERS_SKULL2, ALDERS_RECEIPT)) + { + qs.setCond(11, true); + htmltext = "30476-10.html"; + } + else if (hasQuestItems(player, REVELATIONS_MANUSCRIPT)) + { + htmltext = "30476-11.html"; + } + else if (hasQuestItems(player, KAIRAS_INSTRUCTIONS)) + { + giveItems(player, KAIRAS_RECOMMENDATION, 1); + takeItems(player, KAIRAS_INSTRUCTIONS, 1); + qs.setCond(15, true); + htmltext = "30476-15.html"; + } + else if (hasQuestItems(player, KAIRAS_RECOMMENDATION)) + { + htmltext = "30476-16.html"; + } + else if (hasQuestItems(player, PALUS_CHARM)) + { + htmltext = "30476-17.html"; + } + break; + } + case BROTHER_METHEUS: + { + if (hasQuestItems(player, KAIRAS_LETTER)) + { + takeItems(player, KAIRAS_LETTER, 1); + giveItems(player, METHEUSS_FUNERAL_JAR, 1); + qs.setCond(2, true); + htmltext = "30614-01.html"; + } + else if (hasQuestItems(player, METHEUSS_FUNERAL_JAR) && !hasQuestItems(player, KASANDRAS_REMAINS)) + { + htmltext = "30614-02.html"; + } + else if (hasQuestItems(player, KASANDRAS_REMAINS) && !hasQuestItems(player, METHEUSS_FUNERAL_JAR)) + { + takeItems(player, KASANDRAS_REMAINS, 1); + giveItems(player, HERBALISM_TEXTBOOK, 1); + qs.setCond(4, true); + htmltext = "30614-03.html"; + } + else if (hasAtLeastOneQuestItem(player, HERBALISM_TEXTBOOK, IXIAS_LIST)) + { + qs.setCond(5, true); + htmltext = "30614-04.html"; + } + else if (hasQuestItems(player, BELLADONNA)) + { + takeItems(player, BELLADONNA, 1); + giveItems(player, ALDERS_SKULL1, 1); + qs.setCond(9, true); + htmltext = "30614-05.html"; + } + else if (hasAtLeastOneQuestItem(player, ALDERS_SKULL1, ALDERS_SKULL2, ALDERS_RECEIPT, REVELATIONS_MANUSCRIPT, KAIRAS_INSTRUCTIONS, KAIRAS_RECOMMENDATION)) + { + htmltext = "30614-06.html"; + } + break; + } + case MASTER_IXIA: + { + if (hasQuestItems(player, HERBALISM_TEXTBOOK)) + { + takeItems(player, HERBALISM_TEXTBOOK, 1); + giveItems(player, IXIAS_LIST, 1); + qs.setCond(6, true); + htmltext = "30463-01.html"; + } + else if (hasQuestItems(player, IXIAS_LIST)) + { + if ((getQuestItemsCount(player, MEDUSAS_ICHOR) >= 10) && (getQuestItemsCount(player, MARSH_SPIDER_FLUIDS) >= 10) && (getQuestItemsCount(player, DEAD_SEEKER_DUNG) >= 10) && (getQuestItemsCount(player, TYRANTS_BLOOD) >= 10) && (getQuestItemsCount(player, NIGHTSHADE_ROOT) >= 10)) + { + takeItems(player, IXIAS_LIST, 1); + takeItems(player, MEDUSAS_ICHOR, -1); + takeItems(player, MARSH_SPIDER_FLUIDS, -1); + takeItems(player, DEAD_SEEKER_DUNG, -1); + takeItems(player, TYRANTS_BLOOD, -1); + takeItems(player, NIGHTSHADE_ROOT, -1); + giveItems(player, BELLADONNA, 1); + qs.setCond(8, true); + htmltext = "30463-03.html"; + } + else + { + htmltext = "30463-02.html"; + } + } + else if (hasQuestItems(player, BELLADONNA)) + { + htmltext = "30463-04.html"; + } + else if (hasAtLeastOneQuestItem(player, ALDERS_SKULL1, ALDERS_SKULL2, ALDERS_RECEIPT, REVELATIONS_MANUSCRIPT, KAIRAS_INSTRUCTIONS, KAIRAS_RECOMMENDATION)) + { + htmltext = "30463-05.html"; + } + break; + } + case MAGISTER_ROA: + { + if (hasQuestItems(player, ALDERS_SKULL2)) + { + htmltext = "30114-01.html"; + } + else if (hasQuestItems(player, ALDERS_RECEIPT)) + { + htmltext = "30114-05.html"; + } + else if (hasAtLeastOneQuestItem(player, REVELATIONS_MANUSCRIPT, KAIRAS_INSTRUCTIONS, KAIRAS_RECOMMENDATION)) + { + htmltext = "30114-06.html"; + } + break; + } + case WAREHOUSE_KEEPER_NORMAN: + { + if (hasQuestItems(player, ALDERS_RECEIPT)) + { + takeItems(player, ALDERS_RECEIPT, 1); + giveItems(player, REVELATIONS_MANUSCRIPT, 1); + qs.setCond(13, true); + htmltext = "30210-01.html"; + } + else if (hasQuestItems(player, REVELATIONS_MANUSCRIPT)) + { + htmltext = "30210-02.html"; + } + } + case TETRARCH_THIFIELL: + { + if (hasQuestItems(player, KAIRAS_RECOMMENDATION)) + { + takeItems(player, KAIRAS_RECOMMENDATION, 1); + giveItems(player, PALUS_CHARM, 1); + giveItems(player, THIFIELLS_LETTER, 1); + qs.setCond(16, true); + htmltext = "30358-01.html"; + } + else if (hasQuestItems(player, PALUS_CHARM)) + { + if (hasQuestItems(player, THIFIELLS_LETTER)) + { + htmltext = "30358-02.html"; + } + else if (hasQuestItems(player, ARKENIAS_NOTE)) + { + htmltext = "30358-03.html"; + } + else if (hasQuestItems(player, ARKENIAS_LETTER)) + { + giveAdena(player, 247708, true); + giveItems(player, MARK_OF_FATE, 1); + addExpAndSp(player, 1365470, 91124); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30358-04.html"; + } + } + break; + } + case ARKENIA: + { + if (hasQuestItems(player, PALUS_CHARM)) + { + if (hasQuestItems(player, THIFIELLS_LETTER)) + { + htmltext = "30419-01.html"; + } + else if (hasQuestItems(player, ARKENIAS_NOTE) && !hasQuestItems(player, RED_FAIRY_DUST, BLIGHT_TREANT_SAP)) + { + htmltext = "30419-03.html"; + } + else if (hasQuestItems(player, ARKENIAS_NOTE, RED_FAIRY_DUST, BLIGHT_TREANT_SAP)) + { + htmltext = "30419-04.html"; + } + else if (hasQuestItems(player, ARKENIAS_LETTER)) + { + htmltext = "30419-06.html"; + } + } + break; + } + case ALDERS_SPIRIT: + { + if (hasAtLeastOneQuestItem(player, ALDERS_SKULL1, ALDERS_SKULL2)) + { + htmltext = "30613-01.html"; + } + break; + } + case BLOODY_PIXY: + { + if (hasQuestItems(player, PALUS_CHARM, ARKENIAS_NOTE)) + { + if (!hasAtLeastOneQuestItem(player, RED_FAIRY_DUST, PIXY_GARNET)) + { + htmltext = "31845-01.html"; + } + else if (!hasQuestItems(player, RED_FAIRY_DUST) && hasQuestItems(player, PIXY_GARNET) && !hasAtLeastOneQuestItem(player, GRANDISS_SKULL, KARUL_BUGBEAR_SKULL, BREKA_OVERLORD_SKULL, LETO_OVERLORD_SKULL)) + { + htmltext = "31845-03.html"; + } + else if (!hasQuestItems(player, RED_FAIRY_DUST) && hasQuestItems(player, PIXY_GARNET, GRANDISS_SKULL, KARUL_BUGBEAR_SKULL, BREKA_OVERLORD_SKULL, LETO_OVERLORD_SKULL)) + { + takeItems(player, PIXY_GARNET, 1); + takeItems(player, GRANDISS_SKULL, 1); + takeItems(player, KARUL_BUGBEAR_SKULL, 1); + takeItems(player, BREKA_OVERLORD_SKULL, 1); + takeItems(player, LETO_OVERLORD_SKULL, 1); + giveItems(player, RED_FAIRY_DUST, 1); + htmltext = "31845-04.html"; + } + else if (!hasQuestItems(player, PIXY_GARNET) && hasQuestItems(player, PALUS_CHARM, ARKENIAS_NOTE, RED_FAIRY_DUST)) + { + htmltext = "31845-05.html"; + } + } + break; + } + case BLIGHT_TREANT: + { + if (hasQuestItems(player, PALUS_CHARM, ARKENIAS_NOTE)) + { + if (!hasAtLeastOneQuestItem(player, BLIGHT_TREANT_SAP, TIMIRIRAN_SEED)) + { + htmltext = "31850-01.html"; + } + else if (hasQuestItems(player, TIMIRIRAN_SEED) && !hasAtLeastOneQuestItem(player, BLIGHT_TREANT_SAP, BLACK_WILLOW_LEAF)) + { + htmltext = "31850-03.html"; + } + else if (hasQuestItems(player, TIMIRIRAN_SEED, BLACK_WILLOW_LEAF) && !hasQuestItems(player, BLIGHT_TREANT_SAP)) + { + takeItems(player, TIMIRIRAN_SEED, 1); + takeItems(player, BLACK_WILLOW_LEAF, 1); + giveItems(player, BLIGHT_TREANT_SAP, 1); + htmltext = "31850-04.html"; + } + else if (hasQuestItems(player, BLIGHT_TREANT_SAP) && !hasQuestItems(player, TIMIRIRAN_SEED)) + { + htmltext = "31850-05.html"; + } + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == MAGISTER_KAIRA) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-01.html new file mode 100644 index 0000000000..0543d607f1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-01.html @@ -0,0 +1,6 @@ +Prefect Kasman:
+My friend, this reconstruction of the Orc Kingdom that you have undertaken is truly the Lord's work! I can tell you whatever you need to know about the apostate Orcs around here.
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-02.html new file mode 100644 index 0000000000..f5faacbbbc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-02.html @@ -0,0 +1,3 @@ +Prefect Kasman:
+Tejakar Oroka! You have reclaimed the Scepter of Vuku! The reunification of the 108 tribes grows nearer! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-03.html new file mode 100644 index 0000000000..dd84eb453c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-03.html @@ -0,0 +1,3 @@ +Prefect Kasman:
+Take the letter I gave you to the Chief of the Vuku tribe. You will find him cowering in a forest near the Town of Gludio. Go and reclaim the Scepter of Flame from those lowlifes! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-04.html new file mode 100644 index 0000000000..dd84eb453c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-04.html @@ -0,0 +1,3 @@ +Prefect Kasman:
+Take the letter I gave you to the Chief of the Vuku tribe. You will find him cowering in a forest near the Town of Gludio. Go and reclaim the Scepter of Flame from those lowlifes! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-05.html new file mode 100644 index 0000000000..7cf87cf408 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-05.html @@ -0,0 +1,3 @@ +Prefect Kasman:
+Tejakar Oroka! Have you retrieved the Scepter of Turek? The reunification of the 108 tribes will soon come! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-06.html new file mode 100644 index 0000000000..4a12ca39d1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-06.html @@ -0,0 +1,4 @@ +Prefect Kasman:
+You must take the letter I gave you to the Chief of the Vuku! On the road north from this village you will find the army post of Turek Orcs.
+You must never forget that you are the representative of the greatest Flame Lord, Kakai! Always behave with the pride and dignity that your master commands! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-07.html new file mode 100644 index 0000000000..14281d256f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-07.html @@ -0,0 +1,4 @@ +Prefect Kasman:
+You must take the letter I gave you to the Chief of the Turek! On the road north from this village you will find the Turek Orc Military Post.
+You must never forget that you are the representative of the greatest Flame Lord, Kakai! Always behave with the pride and dignity that your master commands! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-08.html new file mode 100644 index 0000000000..79227d08fc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-08.html @@ -0,0 +1,3 @@ +Prefect Kasman:
+Tejakar Oroka! Have you reclaimed the Scepter of Lennunt? The time of the reunification of the 108 tribes draws nearer!! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-09.html new file mode 100644 index 0000000000..0bf4b63024 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-09.html @@ -0,0 +1,3 @@ +Prefect Kasman:
+A man claiming to be the Chief of the Lennunt tribe is currently on the southern seashore of Gludio. Take this letter to him. Don't forget that you are the representative of the greatest Flame Lord, Kakai and you must always display the pride and dignity befitting your position! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-10.html new file mode 100644 index 0000000000..0bf4b63024 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-10.html @@ -0,0 +1,3 @@ +Prefect Kasman:
+A man claiming to be the Chief of the Lennunt tribe is currently on the southern seashore of Gludio. Take this letter to him. Don't forget that you are the representative of the greatest Flame Lord, Kakai and you must always display the pride and dignity befitting your position! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-11.html new file mode 100644 index 0000000000..0d75418ffa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30501-11.html @@ -0,0 +1,3 @@ +Prefect Kasman:
+The time has come for all of the 108 tribes to reunite under our Flame Lord! The world trembles before the glorious kingdom of Orc! All praise the great Flame Lord Kakai! Tejakar Oroka! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-01.html new file mode 100644 index 0000000000..441d165523 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-01.html @@ -0,0 +1,5 @@ +Prefect Vokian:
+Have you heard? All of the Orc seers agree that an eternal winter is approaching! It won't be long... We Orcs must prepare for dark days; days of chaos and destruction, dreadful days of endless war and disaster!
+People like you are indolent and weak. We are stronger than anyone else! We shall fight the darkness that the Age of Chaos brings. Victory will be ours alone!
+(Quest for Orc characters of level 37 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-01a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-01a.html new file mode 100644 index 0000000000..f74f5a6691 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-01a.html @@ -0,0 +1,5 @@ +Prefect Vokian:
+Have you heard? All of the Orc seers agree that an eternal winter is approaching! It won't be long... We Orcs must prepare for dark days; days of chaos and destruction, dreadful days of endless war and disaster!
+You must prepare yourself as well! First you must complete an occupation change! This is no place for beginners.
+(Quest only for Orc characters who have completed occupation change and are above level 37.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-02.html new file mode 100644 index 0000000000..85dac7bdd4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-02.html @@ -0,0 +1,4 @@ +Prefect Vokian:
+Have you heard? All of the Orc seers agree that an eternal winter is approaching! It won't be long... We Orcs must prepare for dark days; days of chaos and destruction, dreadful days of endless war and disaster! You must prepare yourself as well! This is the only was we can defeat the darkness that the Age of Chaos brings.
+(Quest for Orc characters of level 37 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-03.htm new file mode 100644 index 0000000000..ee6fe0c079 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-03.htm @@ -0,0 +1,5 @@ +Prefect Vokian:
+Have you heard? All of the Orc seers agree that an eternal winter is approaching! It won't be long... We Orcs must prepare for dark days; days of chaos and destruction, dreadful days of endless war and disaster!
+People like you are indolent and weak. We are stronger than anyone else! We shall conquer the apostate tribes and reconstruct the great kingdom of Orcs to fight the darkness of the chaotic days. Victory will be ours alone!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-04.htm new file mode 100644 index 0000000000..1a9cd180f0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-04.htm @@ -0,0 +1,6 @@ +Prefect Vokian:
+To rebuild the kingdom of Orcs we must first crush the dissent within the kingdom! We must make the renegade Orcs return to the kingdom. Hundreds of years ago these apostates denied the Lord of Flame's authority and abandoned the kingdom.
+If you will lead the force to subjugate them once again to the great kingdom of Orc, you shall be rewarded with a Mark of Glory by the Monarch. This will ensure your promotion to a higher level!
+But first you must be tested to see if you are worthy to be the representative of the Monarch! Are you ready for the test?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-05.htm new file mode 100644 index 0000000000..5c5f41ca3f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-05.htm @@ -0,0 +1,7 @@ +Prefect Vokian:
+Excellent! Now listen carefully to what I must ask of you...
+First you must find and kill the 'flying stone statue', known as Manasen. He lurks near the Ivory Tower of Oren. Break him into pieces and bring 10 shards of his body back to me as proof!
+Next, in the Wastelands of Gludio you will find the so-called 'tyrants of the wild', the Tyrants. Kill them and bring their claws back to me! You must bring at least 10!
+And finally, you must hunt and kill the 'guardian of barren earth', the Guardian Basilisk. He can be found in the Corridors of Death! You must knock him down and bring back 10 of his teeth!
+For you who so perfectly embody the power and dignity of the Orc, this test should be almost effortless. Return promptly after completing your mission. I shall be waiting. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-05a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-05a.htm new file mode 100644 index 0000000000..e5e2fba9d2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-05a.htm @@ -0,0 +1,8 @@ +Prefect Vokian:
+Very well! Then I, Prefect Vokian, will give you an order! Defeat these evil creatures and return with proof of your deed.
+There is Manashen, described as "a stone statue that crosses the sky" near the Ivory Tower of Oren. Smash that thing to pieces and bring back 10 shards.
+There are the Tyrants who terrorize the Gludio wasteland. Defeat them and bring back at least 10 claws!
+Finally, defeat Guardian Basilisk, the so-called "guardian of sterility" in Death Pass and bring back at least 10 of its fangs.
+If you are a true heir to the power and pride of the Orcs, you should pass this test easily! Go complete your task and return; I will wait for you here.
+Before you depart, take this Dimension Diamond. You can trade it to the village gatekeeper for something special that may help you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-06.html new file mode 100644 index 0000000000..3df62ee6bc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-06.html @@ -0,0 +1,4 @@ +Prefect Vokian:
+You must kill the monsters and bring back the proof! You must prove your strength and tenacity!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-07.html new file mode 100644 index 0000000000..d84bacf096 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-07.html @@ -0,0 +1,7 @@ +Prefect Vokian:
+Did you forget your mission already? I truly dislike repeating myself so pay attention...
+First you must find and kill the 'flying stone statue', known as Manasen. He lurks near the Ivory Tower of Oren. Break him into pieces and bring 10 shards of his body back to me as proof!
+Next, in the Wastelands of Gludio you will find the so-called 'tyrants of the wild', the Tyrants. Kill them and bring their claws back to me! You must bring at least 10!
+And finally, you must hunt and kill the 'guardian of barren earth', the Guardian Basilisk. He can be found in the Corridors of Death! You must knock him down and bring back 10 of his teeth!
+Return promptly after completing your mission. I shall be waiting. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-08.html new file mode 100644 index 0000000000..91cbf33e8f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-08.html @@ -0,0 +1,3 @@ +Prefect Vokian:
+The stone shards of Manasen, the claws of the Tylant, and the teeth of the basilisk! Good job! You have fulfilled the mission! As a token of my appreciation please take this Necklace of Authority. Now go forth and do the work of the Lord Kakai! You must hurry and meet Chianta, the Chief of the Town of Dion! He will have another task for you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-09.html new file mode 100644 index 0000000000..bd333acd1f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-09.html @@ -0,0 +1,3 @@ +Prefect Vokian:
+The Necklace of Authority officially acknowledges you as an agent of the Monarch! From this time forward you must do everything you can to quell the dissent in the kingdom of Orcs. You must force the apostate Orc tribes to rejoin their brothers in service to the Lord of Flame! Now, hurry and meet Chianta, Chief of the Town of Dion! He has a task for you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-10.html new file mode 100644 index 0000000000..62a722dc77 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30514-10.html @@ -0,0 +1,3 @@ +Prefect Vokian:
+You will restore the glory of the unified Kingdom of Orcs! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-01.html new file mode 100644 index 0000000000..dc38391b5b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-01.html @@ -0,0 +1,5 @@ +Seer Manakia:
+Agent of the Lord! The upcoming Chaotic Chronicle could signal a new beginning for us. From the flames of war and disaster, we the great kingdom of the Orcs will rise from the ashes.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-02.html new file mode 100644 index 0000000000..a49cfd0a5d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-02.html @@ -0,0 +1,3 @@ +Seer Manakia:
+Tejakar Oroka! You have recovered the Scepter of Breka! Our great kingdom of Orcs shall rise again! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-03.html new file mode 100644 index 0000000000..49d5c1a2e4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-03.html @@ -0,0 +1,4 @@ +Seer Manakia:
+Take this letter to the Chief of the Breka Orcs! He can be found on the southern cliff of Dragon Valley.
+Always remember that you represent the great Flame Lord, Kakai! You must display the honor and dignity befitting our Lord! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-04.html new file mode 100644 index 0000000000..4ccb74dda7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-04.html @@ -0,0 +1,4 @@ +Seer Manakia:
+Take this letter to the Chief of the Breka Orc! He is on the southern cliff of dragon valley.
+Always remember that you represent the great Flame Lord, Kakai! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-05.html new file mode 100644 index 0000000000..ff5388ce70 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-05.html @@ -0,0 +1,3 @@ +Seer Manakia:
+Tejakar Oroka! You have found the Scepter of Enku! The great kingdom of Orcs shall soon rise again! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-06.html new file mode 100644 index 0000000000..26f3bc2456 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-06.html @@ -0,0 +1,4 @@ +Seer Manakia:
+Take this letter to the Chief of the Enku Orcs! He is on the northern seashore of Dion territory.
+Remember that you represent the Lord of Flame! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-07.html new file mode 100644 index 0000000000..feb6b4d8d7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-07.html @@ -0,0 +1,4 @@ +Seer Manakia:
+Take the letter that I gave you to the Chief of the Enku Orcs! He is on the southern seashore of Dion territory.
+Remember that you represent the Lord of Flame! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-08.html new file mode 100644 index 0000000000..4bc96ce5ee --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30515-08.html @@ -0,0 +1,3 @@ +Seer Manakia:
+The time has come! The rebirth of the glorious Orc kingdom is at hand! Reunification of the 108 tribes! Tejakar Oroka! Dekara Lamchar Kakai! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30565-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30565-01.html new file mode 100644 index 0000000000..439a4b336f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30565-01.html @@ -0,0 +1,3 @@ +Flame Lord Kakai:
+The seal of the glorious warrior tribe has been stolen from the heart of our kingdom! I have no need for the seals of lesser tribes from the outskirts. Now go away! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30565-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30565-02.html new file mode 100644 index 0000000000..359c64abf2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30565-02.html @@ -0,0 +1,6 @@ +Flame Lord Kakai:
+You have found the Scepter of the Tantos tribe! I hope this appeases the angry souls of the Tantos ancestors, even if it does not entirely wash away all our sins.
+I have heard that the Ragna tribe was behind this whole thing. Is this true? First they betrayed us; now they challenge my authority. Soon the rivers will run red with their traitorous blood!
+You took this from one of the lower tribes, did you not? Did you first extract an oath of loyalty from them -- or punish them for their refusal? Ah, well done, Warrior! I remember how naive you were when we met after the completion of your training at the Temple of Pa'agrio. Now you have grown into a mighty champion!
+Your reward is my personal gratitude and this Mark of Glory, which you can use to transfer to a higher class. Now return to the Human lands and seek out your destiny! I am confident that you will bring great glory to our tribe, and that our paths will cross again. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-01.html new file mode 100644 index 0000000000..b6c8d510f1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-01.html @@ -0,0 +1,4 @@ +Seer Tanapi:
+Oh, my! No other person has ever brought so many scepters at one time. However, the mark from the Lord is still not assured... The Lord has been very angry lately because of a few bad incidents that took place!
+ +
\ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-02.html new file mode 100644 index 0000000000..a6693f2673 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-02.html @@ -0,0 +1,6 @@ +Seer Tanapi:
+Many years ago our ancestors' tomb was desecrated and robbed by goblin grave robbers. They made off with the Scepter of Tantos.
+As you know, the whole Tantos tribe was executed for high treason 100 years ago by order of the Lord Pa'agrio. Later it turned out that the charges were erroneous, caused by some wicked Dwarves' mischief. The Lord of Flame bitterly mourned his mistake. Each year we hold a memorial service to seek forgiveness from our wrongly executed brothers of Tantos and comfort their souls.
+If you recover the Scepter of Tantos, I am sure the Monarch will be very pleased. And the Mark of Glory will be yours for sure!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-03.html new file mode 100644 index 0000000000..f0abdada70 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-03.html @@ -0,0 +1,4 @@ +Seer Tanapi:
+The goblin grave robbers were working at the behest of the Ragna tribe. The spirits of the wind whispered this into my ear. I don't have any information other than that the Chief or the Seer of the Ragna tribe has the scepter.
+They are trying to conjure the spirit of the leader of the Tantos tribe. In fact, at this very moment, they are performing the ceremony somewhere on the Immortal Plateau. You must find them, stop the ceremony, and get back the scepter! Hurry! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-04.html new file mode 100644 index 0000000000..4ea2002e72 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-04.html @@ -0,0 +1,3 @@ +Seer Tanapi:
+We must hurry and find the Scepter of Tantos! It is being held by the Chief or Seer of the Ragna Tribe! They are trying to conjure the spirit of the Tantos tribe leader, somewhere on the Immortal Plateau! Time is of the essence! You must find them quickly, stop the ceremony and recover the scepter! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-05.html new file mode 100644 index 0000000000..8f2386ce3b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-05.html @@ -0,0 +1,4 @@ +Seer Tanapi:
+Ah! At last we have recovered the Scepter of Tantos which was stolen from the ancestors' tombs by those filthy grave robbers! The betrayers of Ragna were trying to summon the spirit of Tantos and harm the Lord! Thanks to you, their wicked plan was foiled!
+I shall put the Scepter of Tantos with the other scepters of flame that you have recovered! Now take this ceremonial box which holds the scepters and go to meet Lord Kakai! He will praise your achievement and contribution and grant you the Mark of Glory! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-06.html new file mode 100644 index 0000000000..53e100ddbe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30571-06.html @@ -0,0 +1,3 @@ +Seer Tanapi:
+I have sent word that you are coming to see the Flame Lord! You must not keep him waiting! Hurry! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-01.html new file mode 100644 index 0000000000..041337b04c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-01.html @@ -0,0 +1,3 @@ +Breka Chief Voltar:
+You impertinent novice! What makes you think you can just barge in here to see me, Voltar, Chief of the Breka? To be in my presence you need at least a signed letter from your tribe's Shaman! Get out of my sight! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-02.html new file mode 100644 index 0000000000..a22f9497be --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-02.html @@ -0,0 +1,4 @@ +Breka Chief Voltar:
+You! North Orc! Saucy brat! Why are you here?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-03.html new file mode 100644 index 0000000000..71c0e30044 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-03.html @@ -0,0 +1,4 @@ +Breka Chief Voltar:
+Ha! We declared our independence 500 years ago! Now you come here and tell me that I should pledge loyalty to the King? The days when we lived as an oppressed race are long over! Go and give your King this message: I would rather be the head of the snake than the tail of the dragon!
+ +
\ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-04.html new file mode 100644 index 0000000000..f480a5e5b6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-04.html @@ -0,0 +1,3 @@ +Breka Chief Voltar:
+Tejakar Oroka! Insolent fool! Voltus! Pashika! Teach this foolish kid a lesson worth remembering!
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-05.html new file mode 100644 index 0000000000..ab3e092a9e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-05.html @@ -0,0 +1,3 @@ +Breka Chief Voltar:
+Voltus! Pasica! Teach this novice a lesson! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-06.html new file mode 100644 index 0000000000..c986ef38ed --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-06.html @@ -0,0 +1,6 @@ +Breka Chief Voltar:
+Tucro Lecha Voltus! Pasica! My sons...!
+What do you want? The Royal Seal?
+All right, take it! Just leave us be!I will give you the Royal Seal!
+I don't want to have to watch my family die again! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-07.html new file mode 100644 index 0000000000..8731f08ea8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-07.html @@ -0,0 +1,3 @@ +Breka Chief Voltar:
+You are the enemy of my family and the oppressor of my people! I have already given you the Royal Seal! Now get out! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-08.html new file mode 100644 index 0000000000..8ad308f2b6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30615-08.html @@ -0,0 +1,3 @@ +Breka Chief Voltar:
+Get out of my sight! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-01.html new file mode 100644 index 0000000000..9b09923c0b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-01.html @@ -0,0 +1,3 @@ +Enku Chief Kepra:
+Orc of the ancient kingdom! What brings you here! Have you come to pay tribute to me, the great King of the Enku tribe? In order to receive an audience with me you must at the least bring a letter handwritten by the Seer of your tribe! Now leave at once! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-02.html new file mode 100644 index 0000000000..5251ef2731 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-02.html @@ -0,0 +1,4 @@ +Enku Chief Kepra:
+Orc of the ancient kingdom! What brings you here? Have you come to pay tribute to me, the great King of the Enku tribe?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-03.html new file mode 100644 index 0000000000..d6d365ac72 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-03.html @@ -0,0 +1,4 @@ +Enku Chief Kepra:
+Why should I do this for the ruler of a ruined kingdom! He has been defeated by the Humans and hides like a coward on the plateau! Your days are over!
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-04.html new file mode 100644 index 0000000000..92f4a0f930 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-04.html @@ -0,0 +1,4 @@ +Enku Chief Kepra:
+Wha...what!? How dare you! I would never give the seal to a child like you! Guard! Beat some sense into this Orc!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-05.html new file mode 100644 index 0000000000..6e9306e703 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-05.html @@ -0,0 +1,3 @@ +Enku Chief Kepra:
+I shall never surrender! My guards will cut you to ribbons! Let's see what you're made of! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-06.html new file mode 100644 index 0000000000..5ce5ff0020 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-06.html @@ -0,0 +1,3 @@ +Enku Chief Kepra:
+Stop! Halt! Are you trying to extinguish our race? Go ahead and take it! This Scepter is nothing more than an ornament! Take it and leave! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-07.html new file mode 100644 index 0000000000..988f755249 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-07.html @@ -0,0 +1,3 @@ +Enku Chief Kepra:
+Violent oppressor! Enemy of our race! I have already suffered the indignity of losing the Tribal Scepter! Do not make me suffer any longer! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-08.html new file mode 100644 index 0000000000..81afd4a7e2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30616-08.html @@ -0,0 +1,3 @@ +Enku Chief Kepra:
+Do not humiliate me further. Leave me alone! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-01.html new file mode 100644 index 0000000000..3d67bb7925 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-01.html @@ -0,0 +1,3 @@ +Turek Chief Burai:
+Flame Lord? The great kingdom of Orc? Nonsense! They are just playing a game, hiding in the forest...Those who call themsleves the aristocrats of Orc! I hate the very sight of them! Leave me now! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-02.html new file mode 100644 index 0000000000..c28c1cc0a7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-02.html @@ -0,0 +1,4 @@ +Turek Chief Burai:
+The Lord of Flames? The great kingdom of Orc? Nonsense! They are just playing a game hiding in the forests...Those who call themsleves the aristocrates of Orc! I hate the very sight of you! Away from my presence!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-03.html new file mode 100644 index 0000000000..f03127e072 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-03.html @@ -0,0 +1,4 @@ +Turek Chief Burai:
+I expected that there would be an agent coming from the noble Orcs. I have reinforced my troops for just such an occasion. Anyone who stands in the way of my creation of the great Turek Orc kingdom must die!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-04.html new file mode 100644 index 0000000000..acf352f337 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-04.html @@ -0,0 +1,3 @@ +Turek Chief Burai:
+Soldiers! Attack! Beat this arrogant dog until he lies dead beneath my feet! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-05.html new file mode 100644 index 0000000000..5892c86a40 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-05.html @@ -0,0 +1,3 @@ +Turek Chief Burai:
+How can this be! Those soldiers cost me a fortune! Please, spare my life! I shall give you the Scepter! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-06.html new file mode 100644 index 0000000000..276dd8bd0a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-06.html @@ -0,0 +1,3 @@ +Turek Chief Burai:
+All right, you have the Scepter! I have no more business with you! Please leave now! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-07.html new file mode 100644 index 0000000000..404d929c89 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30617-07.html @@ -0,0 +1,3 @@ +Turek Chief Burai:
+Agent of the noble Orc! Please leave in peace! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30618-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30618-01.html new file mode 100644 index 0000000000..adade7ac59 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30618-01.html @@ -0,0 +1,5 @@ +Tunath Chief Harak:
+I have been waiting for the messenger of the Flame Lord.
+Kasman, the Chief of Gludin, told me that I shall soon be visited by the messenger of the Monarch!
+Could it be you? I don't believe it. Unless you show me a handwritten letter from the Lord... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30618-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30618-02.html new file mode 100644 index 0000000000..eb6f329c8a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30618-02.html @@ -0,0 +1,5 @@ +Tunath Chief Harak:
+Thank you for coming such a long way, messenger of the Lord of Flame.
+We, the Tunath tribe were sent here 500 years ago to conquer Talking Island when war broke out with the Humans. When the army retreated to the north we were trapped here. We have always maintained our loyalty to the Lord of Flame. The Elven School of Wizardry on this island was ruined and its legacy turned into ashes. Even to this day, we warriors of the Tunath tribe guard against another possible invasion by the Humans.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30618-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30618-03.html new file mode 100644 index 0000000000..99f58073d1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30618-03.html @@ -0,0 +1,4 @@ +Tunath Chief Harak:
+We have been waiting for hundreds of years for the return of our King. We knew that one day the Humans would be vanquished. I have waited all of my life to return the scepter of flame which I inherited from my father. When I heard that the messenger of the Monarch had come to Gludio, I risked my life crossing the sea to meet you. Through all the fierce attacks of the lizard tribe, we have been waiting for you -- the messenger of the Monarch.
+Take this scepter to the king. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30618-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30618-04.html new file mode 100644 index 0000000000..9ebeddad74 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30618-04.html @@ -0,0 +1,3 @@ +Tunath Chief Harak:
+Please give the 500 year old Scepter of Tunath to Flame Lord Kakai! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30618-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30618-05.html new file mode 100644 index 0000000000..cec0197f69 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30618-05.html @@ -0,0 +1,3 @@ +Tunath Chief Harak:
+Please go and deliver the Scepter of Tunath to Lord Pa'agrio! We, the Tunaths, are dedicated to the reconstruction of the great kingdom of oak and will do our part to see it done. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-01.html new file mode 100644 index 0000000000..6d150a291d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-01.html @@ -0,0 +1,5 @@ +Vuku Chief Driko:
+Oh oppressor of flames, why has such a noble person come to this obscure place? Have you come to meet me, Driko, leader of the Vuku tribe?
+Right now, I am facing a problem which could be a matter of life and death for my tribe! I have no interest in the glory of the old kingdom.
+Unless you bring a signed letter from your Prefect expressing the urgency of your situation, I, Driko, the leader of the Vuku Tribe have nothing to discuss with you anymore. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-02.html new file mode 100644 index 0000000000..251e9172b1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-02.html @@ -0,0 +1,5 @@ +Vuku Chief Driko:
+For us, survival is the greatest virtue. I knew that there would come a day when this seal would be traded for the safety of our tribe. We have many difficulties in this area, often coming into conflicts with Humans. We plan to return to our base camp. We are moving to the eastern swamp area. But the reason we came here in the first place was because of the grotesque insect tribe which drove us out.
+If you will remove them from our area, I will give you the Scepter of Flame. Do you accept my offer?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-03.html new file mode 100644 index 0000000000..e0bc55707e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-03.html @@ -0,0 +1,3 @@ +Vuku Chief Driko:
+It appears that the swamp stakatos are unable to breed without the drones. Therefore you must go and exterminate the drones first. Kill them all and gather 30 husks. Bring them back to me and I shall give you the Scepter of Flame. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-04.html new file mode 100644 index 0000000000..ca0c88447a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-04.html @@ -0,0 +1,3 @@ +Vuku Chief Driko:
+I am facing a big problem which could be a matter of life and death for my tribe! I have no interest in the glory of the old kingdom. Per the agreement between us, I shall give you our tribal scepter when you kill the drones among the swamp stakatos and bring me 30 of their husks. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-05.html new file mode 100644 index 0000000000..e1e10fc61e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-05.html @@ -0,0 +1,3 @@ +Vuku Chief Driko:
+Well done! I will return the scepter as promised. I have no interest in the reunification of our ancient kingdom nor in the symbol of its authority. You noble Orcs will burn out and perish after foolishly fighting for the supremacy over the continent, and we shall survive for eternity! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-06.html new file mode 100644 index 0000000000..198d267fb5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-06.html @@ -0,0 +1,3 @@ +Vuku Chief Driko:
+The agreement is settled, and we have already given you the Scepter of Flame! There is no more Contract between us! As I told you before, I have no interest in the reunification of the ancient kingdom! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-07.html new file mode 100644 index 0000000000..2e0f55bb66 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30619-07.html @@ -0,0 +1,4 @@ +Vuku Chief Driko:
+I am not at all interested in the reunification of our ancient kingdom nor in the symbol of its authority.
+You noble Orcs will die in the end after fighting for supremacy over the continent, be we shall survive for eternity! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-01.html new file mode 100644 index 0000000000..19f2323a7f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-01.html @@ -0,0 +1,6 @@ +Gandi Chief Chianta:
+The wind cries and the earth trembles! I see the fires of war reflected in your eyes.
+The time of chaos draws nigh, and brings with it endless war, confusion, massacre and battle! I, Gandi Chief Chianta, decree this day that you must become strong in order to survive! Only the strongest shall inherit the new age!
+Young Orc! I see by your necklace that you have passed Vokian's test and are an envoy of the Lord! Now heed my words carefully!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-02.html new file mode 100644 index 0000000000..d4a4ff1ead --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-02.html @@ -0,0 +1,7 @@ +Gandi Chief Chianta:
+All Orc tribal chiefs possess a 'Scepter of Flame'. The scepter was bequethed to them by the ancient Priests of Pa'agrio and symbolizes their authority.
+As Envoy of the Lord, you must seek out the renegade Orc tribes and demand that they return to servicing the Lord. They must pledge their allegiance and relinquish their Scepter of Flame!
+These renegade Orcs are scarcely more than animals and should jump at the chance to rejoin the mighty Orc Kingdom!
+If they should refuse, you must take their scepter by force and deliver just punishment upon them! A punishment befitting fools that would refuse to accept their true leader!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-03.html new file mode 100644 index 0000000000..a308b36ffe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-03.html @@ -0,0 +1,4 @@ +Gandi Chief Chianta:
+The renegade Orc tribes you must find are the Breka, Enku, Vuku, Turek, and Tunath! Five tribes all together! Ask Seer Manakia of the Town of Giran about the Breka and Enku tribes! The other three tribes, the Vuku, Turek, and Tunath, will be found in the west. Ask Prefect Kasman of Gludin for further information about them.
+Come back to me when you have recovered all of the seals from these lower Orc tribes! Now be on your way! For the honor of the greater Orc kingdom! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-04.html new file mode 100644 index 0000000000..84977542c9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-04.html @@ -0,0 +1,3 @@ +Gandi Chief Chianta:
+I do not expect to see you again until you have recovered the Scepters of the Breka, Enku, Vuku, Turek, and Tunath tribes! This is an important first step towards reuniting the greater Orc kingdom! You must not take your duty lightly! For the whereabouts of these renegade Orcs, ask Manakia of the Town of Giran and Prefect Kasman of Gludin. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-05.html new file mode 100644 index 0000000000..b8a61c25bc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-05.html @@ -0,0 +1,6 @@ +Gandi Chief Chianta:
+Good work, Envoy of the Lord! I see you have recovered the Scepters of the Breka, Enku, Vuku, Turek, and Tunath tribes! It shall not be long before all 108 Orc tribes are reunited under the Lord of Flame!
+Now is the time to face the Timak and Tamlin tribes of the north! The last envoys I sent to them lost their heads! These tribes are savage beasts that have forgotten the most common courtesy! Fools that have forsaken the pride and identity of Orcs!
+A war has been declared to bring these tribes into the fold. You must join us in battle to prove your spirit and loyalty!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-06.html new file mode 100644 index 0000000000..6345407e3e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-06.html @@ -0,0 +1,3 @@ +Gandi Chief Chianta:
+But you still lack experience! The Timak and Tamlin Orcs may be savage and uncivilized, but their strength cannot be taken lightly. Underestimate them and you will be a cold corpse on the battlefield, so train harder! I won't send you onto the battlefield until I feel you are ready. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-07.html new file mode 100644 index 0000000000..588708c7a0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-07.html @@ -0,0 +1,4 @@ +Gandi Chief Chianta:
+Tejakar Oroka! As a Warrior of the great Orc race and an honorable Envoy of the Lord of Flame, go now to the battlefield and punish the renegade tribes! Bring back 20 Timak Orc Heads and 20 Tamlin Orc Heads as trophies of war! That is the least punishment those traitors deserve!
+Come back to me when you have collected these trophies! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-08.html new file mode 100644 index 0000000000..430797b39b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-08.html @@ -0,0 +1,3 @@ +Gandi Chief Chianta:
+You still lack experience! The Timak and Tamlin Orcs may be savage and uncivilized, but their strength cannot be taken lightly. Underestimate them and you will be a cold corpse on the battlefield! Train harder! I will not send you onto the battlefield until I feel you are ready. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-09.html new file mode 100644 index 0000000000..bea773d34f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-09.html @@ -0,0 +1,4 @@ +Gandi Chief Chianta:
+Tejakar Oroka! As a Warrior of the great Orc race and as an envoy of the honorable Lord of Flame, go now onto the battlefield and punish the renegade tribes! Bring back 20 Timak Orc Heads and 20 Tamlin Orc Heads as trophies of war! That is the least punishment these traitors deserve!
+Come back to me when you have collected all of the trophies! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-10.html new file mode 100644 index 0000000000..f6c8f19b87 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-10.html @@ -0,0 +1,3 @@ +Gandi Chief Chianta:
+Tejakar Oroka! As a Warrior of the great Orc race and as an envoy of the honorable Lord of Flame, go now onto the battlefield and punish the renegade tribes! Bring back 20 Timak Orc Heads and 20 Tamlin Orc Heads! That is the least punishment those traitors deserve! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-11.html new file mode 100644 index 0000000000..227858548e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-11.html @@ -0,0 +1,5 @@ +Gandi Chief Chianta:
+Glorious Orc Warrior, you have fought well! You have displayed boundless courage in battle with the enemy!
+Now you must deliver the Seals of Flame you wrenched from the lesser Orcs to our Lord! He also wants the seals from the Tamlin and Timak tribes, but we must be satisfied with what we have at the moment!
+First, return to the Immortal Plateau and see Seer Tanapi. He will teach you the protocols you must use to present the seals to our Flame Lord! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-12.html new file mode 100644 index 0000000000..8f3c3634c1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-12.html @@ -0,0 +1,3 @@ +Gandi Chief Chianta:
+Go now to the eternal homeland of the Orcs, the Immortal Plateau, and present the Lord of Flame with the seals you have recovered! But before you meet with the Lord, go to Seer Tanapi first. He shall teach you the protocols you must know before holding an audience with the Flame Lord! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-13.html new file mode 100644 index 0000000000..3ac903ba5a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/30642-13.html @@ -0,0 +1,3 @@ +Gandi Chief Chianta:
+If you can recover the Scepter of the Tantos tribe the Flame Lord shall be greatly pleased! I wish you luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/Q00220_TestimonyOfGlory.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/Q00220_TestimonyOfGlory.java new file mode 100644 index 0000000000..b8de47e6ea --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00220_TestimonyOfGlory/Q00220_TestimonyOfGlory.java @@ -0,0 +1,1053 @@ +/* + * 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.Q00220_TestimonyOfGlory; + +import com.l2jmobius.gameserver.enums.CategoryType; +import com.l2jmobius.gameserver.enums.ChatType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.NpcStringId; +import com.l2jmobius.gameserver.network.serverpackets.NpcSay; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Testimony Of Glory (220) + * @author ivantotov + */ +public final class Q00220_TestimonyOfGlory extends Quest +{ + // NPCs + private static final int PREFECT_KASMAN = 30501; + private static final int PREFECT_VOKIAN = 30514; + private static final int SEER_MANAKIA = 30515; + private static final int FLAME_LORD_KAKAI = 30565; + private static final int SEER_TANAPI = 30571; + private static final int BREKA_CHIEF_VOLTAR = 30615; + private static final int ENKU_CHIEF_KEPRA = 30616; + private static final int TUREK_CHIEF_BURAI = 30617; + private static final int LEUNT_CHIEF_HARAK = 30618; + private static final int VUKU_CHIEF_DRIKO = 30619; + private static final int GANDI_CHIEF_CHIANTA = 30642; + // Items + private static final int VOKIANS_ORDER = 3204; + private static final int MANASHEN_SHARD = 3205; + private static final int TYRANT_TALON = 3206; + private static final int GUARDIAN_BASILISK_FANG = 3207; + private static final int VOKIANS_ORDER2 = 3208; + private static final int NECKLACE_OF_AUTHORITY = 3209; + private static final int CHIANTA_1ST_ORDER = 3210; + private static final int SCEPTER_OF_BREKA = 3211; + private static final int SCEPTER_OF_ENKU = 3212; + private static final int SCEPTER_OF_VUKU = 3213; + private static final int SCEPTER_OF_TUREK = 3214; + private static final int SCEPTER_OF_TUNATH = 3215; + private static final int CHIANTA_2ND_ORDER = 3216; + private static final int CHIANTA_3RD_ORDER = 3217; + private static final int TAMLIN_ORC_SKULL = 3218; + private static final int TIMAK_ORC_HEAD = 3219; + private static final int SCEPTER_BOX = 3220; + private static final int PASHIKAS_HEAD = 3221; + private static final int VULTUS_HEAD = 3222; + private static final int GLOVE_OF_VOLTAR = 3223; + private static final int ENKU_OVERLORD_HEAD = 3224; + private static final int GLOVE_OF_KEPRA = 3225; + private static final int MAKUM_BUGBEAR_HEAD = 3226; + private static final int GLOVE_OF_BURAI = 3227; + private static final int MANAKIA_1ST_LETTER = 3228; + private static final int MANAKIA_2ND_LETTER = 3229; + private static final int KASMANS_1ST_LETTER = 3230; + private static final int KASMANS_2ND_LETTER = 3231; + private static final int KASMANS_3RD_LETTER = 3232; + private static final int DRIKOS_CONTRACT = 3233; + private static final int STAKATO_DRONE_HUSK = 3234; + private static final int TANAPIS_ORDER = 3235; + private static final int SCEPTER_OF_TANTOS = 3236; + private static final int RITUAL_BOX = 3237; + // Reward + private static final int MARK_OF_GLORY = 3203; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monster + private static final int TYRANT = 20192; + private static final int TYRANT_KINGPIN = 20193; + private static final int MARSH_STAKATO_DRONE = 20234; + private static final int GUARDIAN_BASILISK = 20550; + private static final int MANASHEN_GARGOYLE = 20563; + private static final int TIMAK_ORC = 20583; + private static final int TIMAK_ORC_ARCHER = 20584; + private static final int TIMAK_ORC_SOLDIER = 20585; + private static final int TIMAK_ORC_WARRIOR = 20586; + private static final int TIMAK_ORC_SHAMAN = 20587; + private static final int TIMAK_ORC_OVERLORD = 20588; + private static final int TAMLIN_ORC = 20601; + private static final int TAMLIN_ORC_ARCHER = 20602; + private static final int RAGNA_ORC_OVERLORD = 20778; + private static final int RAGNA_ORC_SEER = 20779; + // Quest Monster + private static final int PASHIKA_SON_OF_VOLTAR = 27080; + private static final int VULTUS_SON_OF_VOLTAR = 27081; + private static final int ENKU_ORC_OVERLORD = 27082; + private static final int MAKUM_BUGBEAR_THUG = 27083; + private static final int REVENANT_OF_TANTOS_CHIEF = 27086; + // Misc + private static final int MIN_LEVEL = 37; + + public Q00220_TestimonyOfGlory() + { + super(220); + addStartNpc(PREFECT_VOKIAN); + addTalkId(PREFECT_VOKIAN, PREFECT_KASMAN, SEER_MANAKIA, FLAME_LORD_KAKAI, SEER_TANAPI, BREKA_CHIEF_VOLTAR, ENKU_CHIEF_KEPRA, TUREK_CHIEF_BURAI, LEUNT_CHIEF_HARAK, VUKU_CHIEF_DRIKO, GANDI_CHIEF_CHIANTA); + addKillId(TYRANT, TYRANT_KINGPIN, MARSH_STAKATO_DRONE, GUARDIAN_BASILISK, MANASHEN_GARGOYLE, TIMAK_ORC, TIMAK_ORC_ARCHER, TIMAK_ORC_SOLDIER, TIMAK_ORC_WARRIOR, TIMAK_ORC_SHAMAN, TIMAK_ORC_OVERLORD, TAMLIN_ORC, TAMLIN_ORC_ARCHER, RAGNA_ORC_OVERLORD, RAGNA_ORC_SEER, PASHIKA_SON_OF_VOLTAR, VULTUS_SON_OF_VOLTAR, ENKU_ORC_OVERLORD, MAKUM_BUGBEAR_THUG, REVENANT_OF_TANTOS_CHIEF); + addAttackId(RAGNA_ORC_OVERLORD, RAGNA_ORC_SEER, REVENANT_OF_TANTOS_CHIEF); + registerQuestItems(VOKIANS_ORDER, MANASHEN_SHARD, TYRANT_TALON, GUARDIAN_BASILISK_FANG, VOKIANS_ORDER2, NECKLACE_OF_AUTHORITY, CHIANTA_1ST_ORDER, SCEPTER_OF_BREKA, SCEPTER_OF_ENKU, SCEPTER_OF_VUKU, SCEPTER_OF_TUREK, SCEPTER_OF_TUNATH, CHIANTA_2ND_ORDER, CHIANTA_3RD_ORDER, TAMLIN_ORC_SKULL, TIMAK_ORC_HEAD, SCEPTER_BOX, PASHIKAS_HEAD, VULTUS_HEAD, GLOVE_OF_VOLTAR, ENKU_OVERLORD_HEAD, GLOVE_OF_KEPRA, MAKUM_BUGBEAR_HEAD, GLOVE_OF_BURAI, MANAKIA_1ST_LETTER, MANAKIA_2ND_LETTER, KASMANS_1ST_LETTER, KASMANS_2ND_LETTER, KASMANS_3RD_LETTER, DRIKOS_CONTRACT, STAKATO_DRONE_HUSK, TANAPIS_ORDER, SCEPTER_OF_TANTOS, RITUAL_BOX); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + giveItems(player, VOKIANS_ORDER, 1); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 109); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30514-05a.htm"; + } + else + { + htmltext = "30514-05.htm"; + } + } + break; + } + case "30514-04.htm": + case "30514-07.html": + case "30571-02.html": + case "30615-03.html": + case "30616-03.html": + case "30642-02.html": + case "30642-06.html": + case "30642-08.html": + { + htmltext = event; + break; + } + case "30501-02.html": + { + if (hasQuestItems(player, SCEPTER_OF_VUKU)) + { + htmltext = event; + } + else if (!hasAtLeastOneQuestItem(player, SCEPTER_OF_VUKU, KASMANS_1ST_LETTER)) + { + giveItems(player, KASMANS_1ST_LETTER, 1); + player.getRadar().addMarker(-2150, 124443, -3724); + htmltext = "30501-03.html"; + } + else if (!hasQuestItems(player, SCEPTER_OF_VUKU) && hasAtLeastOneQuestItem(player, KASMANS_1ST_LETTER, DRIKOS_CONTRACT)) + { + player.getRadar().addMarker(-2150, 124443, -3724); + htmltext = "30501-04.html"; + } + break; + } + case "30501-05.html": + { + if (hasQuestItems(player, SCEPTER_OF_TUREK)) + { + htmltext = event; + } + else if (!hasAtLeastOneQuestItem(player, SCEPTER_OF_TUREK, KASMANS_2ND_LETTER)) + { + giveItems(player, KASMANS_2ND_LETTER, 1); + player.getRadar().addMarker(-94294, 110818, -3563); + htmltext = "30501-06.html"; + } + else if (!hasQuestItems(player, SCEPTER_OF_TUREK) && hasQuestItems(player, KASMANS_2ND_LETTER)) + { + player.getRadar().addMarker(-94294, 110818, -3563); + htmltext = "30501-07.html"; + } + break; + } + case "30501-08.html": + { + if (hasQuestItems(player, SCEPTER_OF_TUNATH)) + { + htmltext = event; + } + else if (!hasAtLeastOneQuestItem(player, SCEPTER_OF_TUNATH, KASMANS_3RD_LETTER)) + { + giveItems(player, KASMANS_3RD_LETTER, 1); + player.getRadar().addMarker(-55217, 200628, -3724); + htmltext = "30501-09.html"; + } + else if (!hasQuestItems(player, SCEPTER_OF_TUNATH) && hasQuestItems(player, KASMANS_3RD_LETTER)) + { + player.getRadar().addMarker(-55217, 200628, -3724); + htmltext = "30501-10.html"; + } + break; + } + case "30515-04.html": + { + if (!hasQuestItems(player, SCEPTER_OF_BREKA) && hasQuestItems(player, MANAKIA_1ST_LETTER)) + { + player.getRadar().addMarker(80100, 119991, -2264); + htmltext = event; + } + else if (hasQuestItems(player, SCEPTER_OF_BREKA)) + { + htmltext = "30515-02.html"; + } + else if (!hasAtLeastOneQuestItem(player, SCEPTER_OF_BREKA, MANAKIA_1ST_LETTER)) + { + giveItems(player, MANAKIA_1ST_LETTER, 1); + player.getRadar().addMarker(80100, 119991, -2264); + htmltext = "30515-03.html"; + } + break; + } + case "30515-05.html": + { + if (hasQuestItems(player, SCEPTER_OF_ENKU)) + { + htmltext = event; + } + else if (!hasAtLeastOneQuestItem(player, SCEPTER_OF_ENKU, MANAKIA_2ND_LETTER)) + { + giveItems(player, MANAKIA_2ND_LETTER, 1); + player.getRadar().addMarker(12805, 189249, -3616); + htmltext = "30515-06.html"; + } + else if (!hasQuestItems(player, SCEPTER_OF_ENKU) && hasQuestItems(player, MANAKIA_2ND_LETTER)) + { + player.getRadar().addMarker(12805, 189249, -3616); + htmltext = "30515-07.html"; + } + break; + } + case "30571-03.html": + { + if (hasQuestItems(player, SCEPTER_BOX)) + { + takeItems(player, SCEPTER_BOX, 1); + giveItems(player, TANAPIS_ORDER, 1); + qs.setCond(9, true); + htmltext = event; + } + break; + } + case "30615-04.html": + { + if (hasQuestItems(player, MANAKIA_1ST_LETTER)) + { + giveItems(player, GLOVE_OF_VOLTAR, 1); + takeItems(player, MANAKIA_1ST_LETTER, 1); + addAttackPlayerDesire(addSpawn(npc, PASHIKA_SON_OF_VOLTAR, npc, true, 200000), player); + addAttackPlayerDesire(addSpawn(npc, VULTUS_SON_OF_VOLTAR, npc, true, 200000), player); + htmltext = event; + } + break; + } + case "30616-04.html": + { + if (hasQuestItems(player, MANAKIA_2ND_LETTER)) + { + giveItems(player, GLOVE_OF_KEPRA, 1); + takeItems(player, MANAKIA_2ND_LETTER, 1); + addAttackPlayerDesire(addSpawn(npc, ENKU_ORC_OVERLORD, npc, true, 200000), player); + addAttackPlayerDesire(addSpawn(npc, ENKU_ORC_OVERLORD, npc, true, 200000), player); + addAttackPlayerDesire(addSpawn(npc, ENKU_ORC_OVERLORD, npc, true, 200000), player); + addAttackPlayerDesire(addSpawn(npc, ENKU_ORC_OVERLORD, npc, true, 200000), player); + htmltext = event; + } + break; + } + case "30617-03.html": + { + if (hasQuestItems(player, KASMANS_2ND_LETTER)) + { + giveItems(player, GLOVE_OF_BURAI, 1); + takeItems(player, KASMANS_2ND_LETTER, 1); + addAttackPlayerDesire(addSpawn(npc, MAKUM_BUGBEAR_THUG, npc, true, 200000), player); + addAttackPlayerDesire(addSpawn(npc, MAKUM_BUGBEAR_THUG, npc, true, 200000), player); + htmltext = event; + } + break; + } + case "30618-03.html": + { + if (hasQuestItems(player, KASMANS_3RD_LETTER)) + { + giveItems(player, SCEPTER_OF_TUNATH, 1); + takeItems(player, KASMANS_3RD_LETTER, 1); + if (hasQuestItems(player, SCEPTER_OF_TUREK, SCEPTER_OF_ENKU, SCEPTER_OF_BREKA, SCEPTER_OF_VUKU)) + { + qs.setCond(5, true); + } + htmltext = event; + } + break; + } + case "30619-03.html": + { + if (hasQuestItems(player, KASMANS_1ST_LETTER)) + { + giveItems(player, DRIKOS_CONTRACT, 1); + takeItems(player, KASMANS_1ST_LETTER, 1); + htmltext = event; + } + break; + } + case "30642-03.html": + { + if (hasQuestItems(player, VOKIANS_ORDER2)) + { + takeItems(player, VOKIANS_ORDER2, 1); + giveItems(player, CHIANTA_1ST_ORDER, 1); + qs.setCond(4, true); + htmltext = event; + } + break; + } + case "30642-07.html": + { + if (hasQuestItems(player, CHIANTA_1ST_ORDER, SCEPTER_OF_BREKA, SCEPTER_OF_VUKU, SCEPTER_OF_TUREK, SCEPTER_OF_TUNATH, SCEPTER_OF_ENKU)) + { + takeItems(player, CHIANTA_1ST_ORDER, 1); + takeItems(player, SCEPTER_OF_BREKA, 1); + takeItems(player, SCEPTER_OF_ENKU, 1); + takeItems(player, SCEPTER_OF_VUKU, 1); + takeItems(player, SCEPTER_OF_TUREK, 1); + takeItems(player, SCEPTER_OF_TUNATH, 1); + takeItems(player, MANAKIA_1ST_LETTER, 1); + takeItems(player, MANAKIA_2ND_LETTER, 1); + takeItems(player, KASMANS_1ST_LETTER, 1); + giveItems(player, CHIANTA_3RD_ORDER, 1); + qs.setCond(6, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onAttack(L2Npc npc, L2PcInstance attacker, int damage, boolean isSummon) + { + final QuestState qs = getQuestState(attacker, false); + if ((qs != null) && qs.isStarted()) + { + switch (npc.getId()) + { + case RAGNA_ORC_OVERLORD: + case RAGNA_ORC_SEER: + { + switch (npc.getScriptValue()) + { + case 0: + { + npc.getVariables().set("lastAttacker", attacker.getObjectId()); + if (!hasQuestItems(attacker, SCEPTER_OF_TANTOS)) + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.IS_IT_A_LACKEY_OF_KAKAI)); + npc.setScriptValue(1); + } + break; + } + case 1: + { + npc.setScriptValue(2); + break; + } + } + break; + } + case REVENANT_OF_TANTOS_CHIEF: + { + switch (npc.getScriptValue()) + { + case 0: + { + npc.getVariables().set("lastAttacker", attacker.getObjectId()); + if (!hasQuestItems(attacker, SCEPTER_OF_TANTOS)) + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.HOW_REGRETFUL_UNJUST_DISHONOR)); + npc.setScriptValue(1); + } + break; + } + case 1: + { + if (!hasQuestItems(attacker, SCEPTER_OF_TANTOS) && (npc.getCurrentHp() < (npc.getMaxHp() / 3))) + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.INDIGNANT_AND_UNFAIR_DEATH)); + npc.setScriptValue(2); + } + break; + } + } + break; + } + } + } + return super.onAttack(npc, attacker, damage, isSummon); + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case TYRANT: + case TYRANT_KINGPIN: + { + if (hasQuestItems(killer, VOKIANS_ORDER) && (getQuestItemsCount(killer, TYRANT_TALON) < 10)) + { + if (getQuestItemsCount(killer, TYRANT_TALON) == 9) + { + giveItems(killer, TYRANT_TALON, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, MANASHEN_SHARD) >= 10) && (getQuestItemsCount(killer, GUARDIAN_BASILISK_FANG) >= 10)) + { + qs.setCond(2); + } + } + else + { + giveItems(killer, TYRANT_TALON, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MARSH_STAKATO_DRONE: + { + if (!hasQuestItems(killer, SCEPTER_OF_VUKU) && hasQuestItems(killer, NECKLACE_OF_AUTHORITY, CHIANTA_1ST_ORDER, DRIKOS_CONTRACT) && (getQuestItemsCount(killer, STAKATO_DRONE_HUSK) < 30)) + { + if (getQuestItemsCount(killer, TYRANT_TALON) == 29) + { + giveItems(killer, STAKATO_DRONE_HUSK, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + giveItems(killer, STAKATO_DRONE_HUSK, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case GUARDIAN_BASILISK: + { + if (hasQuestItems(killer, VOKIANS_ORDER) && (getQuestItemsCount(killer, GUARDIAN_BASILISK_FANG) < 10)) + { + if (getQuestItemsCount(killer, GUARDIAN_BASILISK_FANG) == 9) + { + giveItems(killer, GUARDIAN_BASILISK_FANG, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, MANASHEN_SHARD) >= 10) && (getQuestItemsCount(killer, TYRANT_TALON) >= 10)) + { + qs.setCond(2); + } + } + else + { + giveItems(killer, GUARDIAN_BASILISK_FANG, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MANASHEN_GARGOYLE: + { + if (hasQuestItems(killer, VOKIANS_ORDER) && (getQuestItemsCount(killer, MANASHEN_SHARD) < 10)) + { + if (getQuestItemsCount(killer, MANASHEN_SHARD) == 9) + { + giveItems(killer, MANASHEN_SHARD, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, TYRANT_TALON) >= 10) && (getQuestItemsCount(killer, GUARDIAN_BASILISK_FANG) >= 10)) + { + qs.setCond(2); + } + } + else + { + giveItems(killer, MANASHEN_SHARD, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case TIMAK_ORC: + case TIMAK_ORC_ARCHER: + case TIMAK_ORC_SOLDIER: + case TIMAK_ORC_WARRIOR: + case TIMAK_ORC_SHAMAN: + case TIMAK_ORC_OVERLORD: + { + if (hasQuestItems(killer, NECKLACE_OF_AUTHORITY, CHIANTA_3RD_ORDER) && (getQuestItemsCount(killer, TIMAK_ORC_HEAD) < 20)) + { + if (getQuestItemsCount(killer, MANASHEN_SHARD) == 19) + { + giveItems(killer, TIMAK_ORC_HEAD, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (getQuestItemsCount(killer, TAMLIN_ORC_SKULL) >= 20) + { + qs.setCond(7); + } + } + else + { + giveItems(killer, TIMAK_ORC_HEAD, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case TAMLIN_ORC: + case TAMLIN_ORC_ARCHER: + { + if (hasQuestItems(killer, NECKLACE_OF_AUTHORITY, CHIANTA_3RD_ORDER) && (getQuestItemsCount(killer, TAMLIN_ORC_SKULL) < 20)) + { + if (getQuestItemsCount(killer, TAMLIN_ORC_SKULL) == 19) + { + giveItems(killer, TAMLIN_ORC_SKULL, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (getQuestItemsCount(killer, TIMAK_ORC_HEAD) >= 20) + { + qs.setCond(7); + } + } + else + { + giveItems(killer, TAMLIN_ORC_SKULL, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case RAGNA_ORC_OVERLORD: + case RAGNA_ORC_SEER: + { + if (hasQuestItems(killer, TANAPIS_ORDER) && !hasQuestItems(killer, SCEPTER_OF_TANTOS)) + { + addSpawn(REVENANT_OF_TANTOS_CHIEF, npc, true, 200000); + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.TOO_LATE)); + } + break; + } + case PASHIKA_SON_OF_VOLTAR: + { + if (hasQuestItems(killer, NECKLACE_OF_AUTHORITY, CHIANTA_1ST_ORDER, GLOVE_OF_VOLTAR) && !hasQuestItems(killer, PASHIKAS_HEAD)) + { + if (hasQuestItems(killer, VULTUS_HEAD)) + { + giveItems(killer, PASHIKAS_HEAD, 1); + takeItems(killer, GLOVE_OF_VOLTAR, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + giveItems(killer, PASHIKAS_HEAD, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case VULTUS_SON_OF_VOLTAR: + { + if (hasQuestItems(killer, NECKLACE_OF_AUTHORITY, CHIANTA_1ST_ORDER, GLOVE_OF_VOLTAR) && !hasQuestItems(killer, VULTUS_HEAD)) + { + if (hasQuestItems(killer, PASHIKAS_HEAD)) + { + giveItems(killer, VULTUS_HEAD, 1); + takeItems(killer, GLOVE_OF_VOLTAR, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + giveItems(killer, VULTUS_HEAD, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case ENKU_ORC_OVERLORD: + { + if (hasQuestItems(killer, NECKLACE_OF_AUTHORITY, CHIANTA_1ST_ORDER, GLOVE_OF_KEPRA) && (getQuestItemsCount(killer, ENKU_OVERLORD_HEAD) < 4)) + { + if (getQuestItemsCount(killer, ENKU_OVERLORD_HEAD) == 3) + { + giveItems(killer, ENKU_OVERLORD_HEAD, 1); + takeItems(killer, GLOVE_OF_KEPRA, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + giveItems(killer, ENKU_OVERLORD_HEAD, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MAKUM_BUGBEAR_THUG: + { + if (hasQuestItems(killer, NECKLACE_OF_AUTHORITY, CHIANTA_1ST_ORDER, GLOVE_OF_BURAI) && (getQuestItemsCount(killer, MAKUM_BUGBEAR_HEAD) < 2)) + { + if (getQuestItemsCount(killer, MAKUM_BUGBEAR_HEAD) == 1) + { + giveItems(killer, MAKUM_BUGBEAR_HEAD, 1); + takeItems(killer, GLOVE_OF_BURAI, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + giveItems(killer, MAKUM_BUGBEAR_HEAD, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case REVENANT_OF_TANTOS_CHIEF: + { + if (hasQuestItems(killer, TANAPIS_ORDER) && !hasQuestItems(killer, SCEPTER_OF_TANTOS)) + { + giveItems(killer, SCEPTER_OF_TANTOS, 1); + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.I_LL_GET_REVENGE_SOMEDAY)); + qs.setCond(10, true); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == PREFECT_VOKIAN) + { + if (player.getRace() == Race.ORC) + { + if ((player.getLevel() >= MIN_LEVEL) && player.isInCategory(CategoryType.ORC_2ND_GROUP)) + { + htmltext = "30514-03.htm"; + } + else if (player.getLevel() >= MIN_LEVEL) + { + htmltext = "30514-01a.html"; + } + else + { + htmltext = "30514-02.html"; + } + } + else + { + htmltext = "30514-01.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case PREFECT_VOKIAN: + { + if (hasQuestItems(player, VOKIANS_ORDER)) + { + if ((getQuestItemsCount(player, MANASHEN_SHARD) >= 10) && (getQuestItemsCount(player, TYRANT_TALON) >= 10) && (getQuestItemsCount(player, GUARDIAN_BASILISK_FANG) >= 10)) + { + takeItems(player, VOKIANS_ORDER, 1); + takeItems(player, MANASHEN_SHARD, -1); + takeItems(player, TYRANT_TALON, -1); + takeItems(player, GUARDIAN_BASILISK_FANG, -1); + giveItems(player, VOKIANS_ORDER2, 1); + giveItems(player, NECKLACE_OF_AUTHORITY, 1); + qs.setCond(3, true); + htmltext = "30514-08.html"; + } + else + { + htmltext = "30514-06.html"; + } + } + else if (hasQuestItems(player, VOKIANS_ORDER2, NECKLACE_OF_AUTHORITY)) + { + htmltext = "30514-09.html"; + } + else if (!hasQuestItems(player, NECKLACE_OF_AUTHORITY) && hasAtLeastOneQuestItem(player, VOKIANS_ORDER2, SCEPTER_BOX)) + { + htmltext = "30514-10.html"; + } + break; + } + case PREFECT_KASMAN: + { + if (hasQuestItems(player, NECKLACE_OF_AUTHORITY, CHIANTA_1ST_ORDER)) + { + htmltext = "30501-01.html"; + } + else if (hasAtLeastOneQuestItem(player, CHIANTA_2ND_ORDER, CHIANTA_3RD_ORDER, SCEPTER_BOX)) + { + htmltext = "30501-11.html"; + } + break; + } + case SEER_MANAKIA: + { + if (hasQuestItems(player, NECKLACE_OF_AUTHORITY, CHIANTA_1ST_ORDER)) + { + htmltext = "30515-01.html"; + } + else if (hasAtLeastOneQuestItem(player, CHIANTA_2ND_ORDER, CHIANTA_3RD_ORDER, SCEPTER_BOX)) + { + htmltext = "30515-08.html"; + } + break; + } + case FLAME_LORD_KAKAI: + { + if (!hasQuestItems(player, RITUAL_BOX) && hasAtLeastOneQuestItem(player, SCEPTER_BOX, TANAPIS_ORDER)) + { + htmltext = "30565-01.html"; + } + else if (hasQuestItems(player, RITUAL_BOX)) + { + giveAdena(player, 262720, true); + giveItems(player, MARK_OF_GLORY, 1); + addExpAndSp(player, 1448226, 96648); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30565-02.html"; + } + break; + } + case SEER_TANAPI: + { + if (hasQuestItems(player, SCEPTER_BOX)) + { + htmltext = "30571-01.html"; + } + else if (hasQuestItems(player, TANAPIS_ORDER)) + { + if (!hasQuestItems(player, SCEPTER_OF_TANTOS)) + { + htmltext = "30571-04.html"; + } + else + { + takeItems(player, TANAPIS_ORDER, 1); + takeItems(player, SCEPTER_OF_TANTOS, 1); + giveItems(player, RITUAL_BOX, 1); + qs.setCond(11, true); + htmltext = "30571-05.html"; + } + } + else if (hasQuestItems(player, RITUAL_BOX)) + { + htmltext = "30571-06.html"; + } + break; + } + case BREKA_CHIEF_VOLTAR: + { + if (hasQuestItems(player, NECKLACE_OF_AUTHORITY, CHIANTA_1ST_ORDER)) + { + if (!hasAtLeastOneQuestItem(player, SCEPTER_OF_BREKA, MANAKIA_1ST_LETTER, GLOVE_OF_VOLTAR, PASHIKAS_HEAD, VULTUS_HEAD)) + { + htmltext = "30615-01.html"; + } + else if (hasQuestItems(player, MANAKIA_1ST_LETTER)) + { + htmltext = "30615-02.html"; + player.getRadar().removeMarker(80100, 119991, -2264); + } + else if (!hasQuestItems(player, SCEPTER_OF_BREKA) && hasQuestItems(player, GLOVE_OF_VOLTAR) && ((getQuestItemsCount(player, PASHIKAS_HEAD) + getQuestItemsCount(player, VULTUS_HEAD)) < 2)) + { + if (npc.getSummonedNpcCount() < 2) + { + addAttackPlayerDesire(addSpawn(npc, PASHIKA_SON_OF_VOLTAR, npc, true, 200000), player); + addAttackPlayerDesire(addSpawn(npc, VULTUS_SON_OF_VOLTAR, npc, true, 200000), player); + } + htmltext = "30615-05.html"; + } + else if (hasQuestItems(player, PASHIKAS_HEAD, VULTUS_HEAD)) + { + giveItems(player, SCEPTER_OF_BREKA, 1); + takeItems(player, PASHIKAS_HEAD, 1); + takeItems(player, VULTUS_HEAD, 1); + if (hasQuestItems(player, SCEPTER_OF_ENKU, SCEPTER_OF_VUKU, SCEPTER_OF_TUREK, SCEPTER_OF_TUNATH)) + { + qs.setCond(5, true); + } + htmltext = "30615-06.html"; + } + else if (hasQuestItems(player, SCEPTER_OF_BREKA)) + { + htmltext = "30615-07.html"; + } + } + else if (hasAtLeastOneQuestItem(player, CHIANTA_2ND_ORDER, CHIANTA_3RD_ORDER, SCEPTER_BOX)) + { + htmltext = "30615-08.html"; + } + break; + } + case ENKU_CHIEF_KEPRA: + { + if (hasQuestItems(player, NECKLACE_OF_AUTHORITY, CHIANTA_1ST_ORDER)) + { + if (!hasAtLeastOneQuestItem(player, SCEPTER_OF_ENKU, MANAKIA_2ND_LETTER, GLOVE_OF_KEPRA) && ((getQuestItemsCount(player, ENKU_OVERLORD_HEAD)) < 4)) + { + htmltext = "30616-01.html"; + } + else if (hasQuestItems(player, MANAKIA_2ND_LETTER)) + { + player.getRadar().removeMarker(12805, 189249, -3616); + htmltext = "30616-02.html"; + } + else if (hasQuestItems(player, GLOVE_OF_KEPRA) && ((getQuestItemsCount(player, ENKU_OVERLORD_HEAD)) < 4)) + { + if (npc.getSummonedNpcCount() < 5) + { + addAttackPlayerDesire(addSpawn(npc, ENKU_ORC_OVERLORD, npc, true, 200000), player); + } + htmltext = "30616-05.html"; + } + else if (getQuestItemsCount(player, ENKU_OVERLORD_HEAD) >= 4) + { + giveItems(player, SCEPTER_OF_ENKU, 1); + takeItems(player, ENKU_OVERLORD_HEAD, -1); + if (hasQuestItems(player, SCEPTER_OF_BREKA, SCEPTER_OF_VUKU, SCEPTER_OF_TUREK, SCEPTER_OF_TUNATH)) + { + qs.setCond(5, true); + } + htmltext = "30616-06.html"; + } + else if (hasQuestItems(player, SCEPTER_OF_ENKU)) + { + htmltext = "30616-07.html"; + } + } + else if (hasAtLeastOneQuestItem(player, CHIANTA_2ND_ORDER, CHIANTA_3RD_ORDER, SCEPTER_BOX)) + { + htmltext = "30616-08.html"; + } + break; + } + case TUREK_CHIEF_BURAI: + { + if (hasQuestItems(player, NECKLACE_OF_AUTHORITY, CHIANTA_1ST_ORDER)) + { + if (!hasAtLeastOneQuestItem(player, SCEPTER_OF_TUREK, KASMANS_2ND_LETTER, GLOVE_OF_BURAI, MAKUM_BUGBEAR_HEAD)) + { + htmltext = "30617-01.html"; + } + else if (hasQuestItems(player, KASMANS_2ND_LETTER)) + { + player.getRadar().removeMarker(-94294, 110818, -3563); + htmltext = "30617-02.html"; + } + else if (hasQuestItems(player, GLOVE_OF_BURAI)) + { + if (npc.getSummonedNpcCount() < 3) + { + addAttackPlayerDesire(addSpawn(npc, MAKUM_BUGBEAR_THUG, npc, true, 200000), player); + addAttackPlayerDesire(addSpawn(npc, MAKUM_BUGBEAR_THUG, npc, true, 200000), player); + } + htmltext = "30617-04.html"; + } + else if (getQuestItemsCount(player, MAKUM_BUGBEAR_HEAD) >= 2) + { + giveItems(player, SCEPTER_OF_TUREK, 1); + takeItems(player, MAKUM_BUGBEAR_HEAD, -1); + if (hasQuestItems(player, SCEPTER_OF_ENKU, SCEPTER_OF_BREKA, SCEPTER_OF_VUKU, SCEPTER_OF_TUNATH)) + { + qs.setCond(5, true); + } + htmltext = "30617-05.html"; + } + else if (hasQuestItems(player, SCEPTER_OF_TUREK)) + { + htmltext = "30617-06.html"; + } + } + else if (hasQuestItems(player, NECKLACE_OF_AUTHORITY) && hasAtLeastOneQuestItem(player, CHIANTA_2ND_ORDER, CHIANTA_3RD_ORDER, SCEPTER_BOX)) + { + htmltext = "30617-07.html"; + } + break; + } + case LEUNT_CHIEF_HARAK: + { + if (hasQuestItems(player, NECKLACE_OF_AUTHORITY, CHIANTA_1ST_ORDER)) + { + if (!hasAtLeastOneQuestItem(player, SCEPTER_OF_TUNATH, KASMANS_3RD_LETTER)) + { + htmltext = "30618-01.html"; + } + else if (!hasQuestItems(player, SCEPTER_OF_TUNATH) && hasQuestItems(player, KASMANS_3RD_LETTER)) + { + player.getRadar().removeMarker(-55217, 200628, -3724); + htmltext = "30618-02.html"; + } + else if (hasQuestItems(player, SCEPTER_OF_TUNATH)) + { + htmltext = "30618-04.html"; + } + } + else if (hasAtLeastOneQuestItem(player, CHIANTA_2ND_ORDER, CHIANTA_3RD_ORDER, SCEPTER_BOX)) + { + htmltext = "30618-05.html"; + } + break; + } + case VUKU_CHIEF_DRIKO: + { + if (hasQuestItems(player, NECKLACE_OF_AUTHORITY, CHIANTA_1ST_ORDER)) + { + if (!hasAtLeastOneQuestItem(player, SCEPTER_OF_VUKU, KASMANS_1ST_LETTER, DRIKOS_CONTRACT)) + { + htmltext = "30619-01.html"; + } + else if (!hasQuestItems(player, SCEPTER_OF_VUKU) && hasQuestItems(player, KASMANS_1ST_LETTER)) + { + player.getRadar().removeMarker(-2150, 124443, -3724); + htmltext = "30619-02.html"; + } + else if (!hasQuestItems(player, SCEPTER_OF_VUKU) && hasQuestItems(player, DRIKOS_CONTRACT)) + { + if (getQuestItemsCount(player, STAKATO_DRONE_HUSK) < 30) + { + htmltext = "30619-04.html"; + } + else + { + giveItems(player, SCEPTER_OF_VUKU, 1); + takeItems(player, DRIKOS_CONTRACT, 1); + takeItems(player, STAKATO_DRONE_HUSK, -1); + if (hasQuestItems(player, SCEPTER_OF_TUREK, SCEPTER_OF_ENKU, SCEPTER_OF_BREKA, SCEPTER_OF_TUNATH)) + { + qs.setCond(5, true); + } + htmltext = "30619-05.html"; + } + } + else if (hasQuestItems(player, SCEPTER_OF_VUKU)) + { + htmltext = "30619-06.html"; + } + } + else if (hasQuestItems(player, NECKLACE_OF_AUTHORITY) && hasAtLeastOneQuestItem(player, CHIANTA_2ND_ORDER, CHIANTA_3RD_ORDER, SCEPTER_BOX)) + { + htmltext = "30619-07.html"; + } + break; + } + case GANDI_CHIEF_CHIANTA: + { + if (hasQuestItems(player, NECKLACE_OF_AUTHORITY, VOKIANS_ORDER2)) + { + htmltext = "30642-01.html"; + } + else if (hasQuestItems(player, NECKLACE_OF_AUTHORITY, CHIANTA_1ST_ORDER)) + { + if ((getQuestItemsCount(player, SCEPTER_OF_BREKA) + getQuestItemsCount(player, SCEPTER_OF_VUKU) + getQuestItemsCount(player, SCEPTER_OF_TUREK) + getQuestItemsCount(player, SCEPTER_OF_TUNATH) + getQuestItemsCount(player, SCEPTER_OF_ENKU)) < 5) + { + htmltext = "30642-04.html"; + } + else if (hasQuestItems(player, SCEPTER_OF_BREKA, SCEPTER_OF_VUKU, SCEPTER_OF_TUREK, SCEPTER_OF_TUNATH, SCEPTER_OF_ENKU)) + { + htmltext = "30642-05.html"; + } + } + else if (hasQuestItems(player, NECKLACE_OF_AUTHORITY, CHIANTA_2ND_ORDER)) + { + giveItems(player, CHIANTA_3RD_ORDER, 1); + takeItems(player, CHIANTA_2ND_ORDER, 1); + htmltext = "30642-09.html"; + } + else if (hasQuestItems(player, NECKLACE_OF_AUTHORITY, CHIANTA_3RD_ORDER)) + { + if ((getQuestItemsCount(player, TAMLIN_ORC_SKULL) >= 20) && (getQuestItemsCount(player, TIMAK_ORC_HEAD) >= 20)) + { + takeItems(player, NECKLACE_OF_AUTHORITY, 1); + takeItems(player, CHIANTA_3RD_ORDER, 1); + takeItems(player, TAMLIN_ORC_SKULL, -1); + takeItems(player, TIMAK_ORC_HEAD, -1); + giveItems(player, SCEPTER_BOX, 1); + qs.setCond(8, true); + htmltext = "30642-11.html"; + } + else + { + htmltext = "30642-10.html"; + } + } + else if (hasQuestItems(player, SCEPTER_BOX)) + { + htmltext = "30642-12.html"; + } + else if (hasAtLeastOneQuestItem(player, TANAPIS_ORDER, RITUAL_BOX)) + { + htmltext = "30642-13.html"; + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == PREFECT_VOKIAN) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-01.html new file mode 100644 index 0000000000..588744f08d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-01.html @@ -0,0 +1,7 @@ +Warehouse Keeper Wilford:
+Welcome, young friend! So, you are taking the exam to advance within the guild? I took the same exam long ago. Ha, of course now I've forgotten all about it! So you seek the Mark of Health?
+I remember talking with Parman before about a similar subject... My memories are fading away... What did I tell him...
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-02.html new file mode 100644 index 0000000000..786b9bcb06 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-02.html @@ -0,0 +1,5 @@ +Warehouse Keeper Wilford:
+No I don't think that that was our subject. Cause I've seen only one Dwarf up to this day who lived more than 1,000 years. Besides, he died when I was young. Ever since, I've never heard of a Dwarf who lived more than 1,000 years.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-03.html new file mode 100644 index 0000000000..491a64c8a7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-03.html @@ -0,0 +1,6 @@ +Warehouse Keeper Wilford:
+Yes, I heard something similar to that the other day when I was out drinking with Rant. They said that there was a turtle in the ruins beneath the west sea that was more than 5,000 years old.
+But I don't think it was about the turtle...
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-04.html new file mode 100644 index 0000000000..9dda2a3f24 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-04.html @@ -0,0 +1,5 @@ +Warehouse Keeper Wilford:
+An Elf more than 1,000 years old? Yes, that's it! You mean Lilith! Yes, she didn't just live for more than a thousand years, she has been waiting for her lover for over 1,000 years. So that means that she must be well over 1,000 years old.
+I don't know if Elves just have unusually long life spans, or if she missed her lover so much that she could not die.
+You should go and see Lilith for yourself. You can find her in the temple of this town. She is quite gloomy these days, so why don't you take her this brooch as a present? It might cheer her up, Elves adore pretty ornaments. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-05.html new file mode 100644 index 0000000000..a553a4296f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-05.html @@ -0,0 +1,3 @@ +Warehouse Keeper Wilford:
+You have not found Lilith yet? She can be found in the temple. Don't forget to present her the brooch that I gave you. That way, she'll respond to you better. Elves are helpless when it comes to flashy jewels! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-06.html new file mode 100644 index 0000000000..bb7f2ee3f0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-06.html @@ -0,0 +1,3 @@ +Warehouse Keeper Wilford:
+So you have met Lilith. You got the Lilith Elven Wafer? What a precious thing! Would you consider selling it to me? If that's not possible, please let me have just one bite! Is that impossible too? Oh, well... I guess you need it to pass the test. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-07.html new file mode 100644 index 0000000000..d291c130f4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30005-07.html @@ -0,0 +1,3 @@ +Warehouse Keeper Wilford:
+Maphr's Tablet Fragment? You came all the way to Talking Island to find it? Hmmm... I have not heard of any relics from the Giants on this island... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-01.html new file mode 100644 index 0000000000..1c0433a606 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-01.html @@ -0,0 +1,5 @@ +Warehouse Keeper Parman:
+You must know that all dwarves such as I are union members. Dwarven society is extremely competitive by definition and their unions are even more so.
+You must not think that just because we are always smiling that being a union member is an easy life. In or out of the union, life for a Dwarf is a never-ending struggle for survival.
+(Quest for Dwarves of level 37 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-01a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-01a.html new file mode 100644 index 0000000000..2962e05036 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-01a.html @@ -0,0 +1,5 @@ +Warehouse Keeper Parman:
+You should consider aspiring to be an upper-level member of the union, possibly a Bounty Hunter or a Warsmith. What do you think? Keep it in mind.
+In order to be an upper-level member, you must pass the Test of Prosperity. You are not yet ready to take this test. Return when you advance beyond apprentice and we will discuss your future.
+(Quest only for Dwarves who have changed occupations and are of level 37 or above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-02.html new file mode 100644 index 0000000000..e49c1f6e45 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-02.html @@ -0,0 +1,5 @@ +Warehouse Keeper Parman:
+You joined the union and now you act like your struggle is over! You must start preparing to be an upper-level member of the union! How about a Bounty Hunter or a Warsmith?
+In order to advance in the union you must pass the Test of Prosperity. It is much harder than the test you took to join the union, and you are not ready for it. Return when you have more experience and we'll talk about your future.
+(Quest for Dwarves who have completed an occupation change and are of level 37 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-03.htm new file mode 100644 index 0000000000..00570c5fb0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-03.htm @@ -0,0 +1,5 @@ +Warehouse Keeper Parman:
+You joined the union and now you act like your struggle is over! You must start preparing to be an upper-level member of the union! How about a Bounty Hunter or a Warsmith?
+In order to advance in the union you must pass the Test of Prosperity. It is much harder than the test you took to join the union, but I think you might be ready...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04.htm new file mode 100644 index 0000000000..37cfbacbd0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04.htm @@ -0,0 +1,8 @@ +Warehouse Keeper Parman:
+As you know, all Dwarves serve Maphr, the God of fertility. Fertility and goodness are one! It is the greatest virtue and the standard of right or wrong! The word 'fertility' derives from the ancient words for wealth, profit, rich soil and a healthy body. You must discover for yourself the true meaning of fertility. First you must find the 4 Tokens of Fertility.
+Wear this ring while you are taking the test. This will tell other union members that you are taking the test and they will help you. When you submit all 4 marks to the union, you have passed the first test. I wish you luck and that Maphr's will be done.
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04a.html new file mode 100644 index 0000000000..2a013166e1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04a.html @@ -0,0 +1,4 @@ +Warehouse Keeper Parman:
+First Elder Lockirin has more authoritative knowledge of wealth than anyone else. He is leader of the 6 guilds that control the economy of this continent. Go to the Dwarven Village and meet Lockirin, ask him about the token that symbolizes wealth.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04b.html new file mode 100644 index 0000000000..31d440aabe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04b.html @@ -0,0 +1,4 @@ +Warehouse Keeper Parman:
+In the Wastelands northwest of Gludio there is a farmer who sows crops and cultivates the land in spite of the rampaging Orcs. His name is Piotur. You should ask him about the Token of the Fertile Lands, since he is able to cultivate the Wastelands which everybody else has abandoned.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04c.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04c.html new file mode 100644 index 0000000000..b6a7a97003 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04c.html @@ -0,0 +1,4 @@ +Warehouse Keeper Parman:
+In the Town of Dion there is a woman who bore 12 children and raised them alone. For that reason, she is called the Great Mother. She is the utmost expert of fertility. You should go and see her... I don't know her name, only that she is called the Great Mother. One of her sons is a guard of the village...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04d.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04d.html new file mode 100644 index 0000000000..e0bc519408 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04d.html @@ -0,0 +1,5 @@ +Warehouse Keeper Parman:
+It is said that on Talking Island there is an Elf that has been waiting for his lover's return for 1,000 years! It is very unusual, even for an Elf, to live that long, isn't it? He must have amazing health.
+I heard this story from the Warehouse Keeper Wilford of Talking Island. You should go and ask him to tell you more about the Elf that lived for over a thousand years.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04e.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04e.htm new file mode 100644 index 0000000000..ae8da5be30 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-04e.htm @@ -0,0 +1,10 @@ +Warehouse Keeper Parman:
+As you know, Maphr is the god of the Dwarves, the god of riches. For Dwarves, the acquisition of riches is a means by which we win favor with Maphr. Ah, but you must first learn the true meaning of richness. This is the first part of your test.
+You must find the 4 meanings of richness before you can go on. Traditionally, richness has connotations of wealth, fruitful lands, fertility and health.
+Take this ring with you so other guild members will recognize you and help you with this test. Bring me proof of all 4 meanings and Maphr will be pleased.
+Also take this Dimensional Diamond, which you can exchange with the village Gatekeeper for special items or services. I know it will help you on your journey.
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-05.html new file mode 100644 index 0000000000..65f23ad8fb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-05.html @@ -0,0 +1,7 @@ +Warehouse Keeper Parman:
+You must collect the 4 Tokens of Fertility.
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-06.html new file mode 100644 index 0000000000..a179892e6f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-06.html @@ -0,0 +1,9 @@ +Warehouse Keeper Parman:
+So, you have found all 4 of the tokens? Let's see...
+The account book of the first elder Lockirin. This is indeed a suitable token of wealth!
+The recipe of Emily? Ah, this was given to you by the woman who bore and raised 12 children, the secret recipe passed down through her family that is traditionally eaten after giving birth to a child. It is perfect as the proof of fertility!
+Is the next a seed? Yes, I can smell the scent of a matured seed. I guess it must be a seed which Maphr, the God of earth has blessed. Good!
+Oh! Isn't this an Elven wafer? I guess it is from the Elf on Talking Island that has lived for more than a millennia. At one time wafers were common, but they have been rarely seen in modern times. I'm surprised you were able to get one, as wafers are known for not being sold nor given to other races.
+Well, you have gathered the 4 Tokens of Fertility. Congratulations! You have passed the first portion of test! However... It is not over yet. Now you must take the second test.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-07.html new file mode 100644 index 0000000000..6cf8d8fae0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-07.html @@ -0,0 +1,3 @@ +Warehouse Keeper Parman:
+Now the real test has begun! The trial up to now has just been to test your skill and determination. Next you must participate in the guild association's long-cherished project and do well at it. You are not yet ready for this task. Come back when you have more experience and I will tell you what to do next. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-08.html new file mode 100644 index 0000000000..1e39383c0f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-08.html @@ -0,0 +1,5 @@ +Warehouse Keeper Parman:
+Now the actual trial has begun. . Now you must take part in the Guild Guild's long-cherished project and achieve real results. The project is to excavate Maphr's Tablet and recover the Secrets of Absolute Geometry.
+Recently an ancient relic was unearthed by a team exploring the Cruma Tower. It is thought to be a part of Maphr's Tablet. Take this letter to Maestro Nikola at the Cruma Tower. He will tell you more.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-08a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-08a.html new file mode 100644 index 0000000000..13697c6f12 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-08a.html @@ -0,0 +1,6 @@ +Warehouse Keeper Parman:
+Absolute Geometry is an ancient science passed down to us by Maphr. It is the explanation of everything, the laws of space and motion for all things. He who understands Absolute Geometry can control the world.
+Our ancestors pursued the study of Absolute Geometry, which led to discoveries in mathematics, thermodynamics, measurement, architecture, astronomy, navigation and economics. This knowledge enabled us to build great architecture such as the sky garden of Shootguart and the great palace of Harnark. We were able to replace the barter system with the concept of monetary economy, and to develop warrior golems and such.
+But since the downfall of Giants, most of this technology has been lost. What a pity...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-08b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-08b.html new file mode 100644 index 0000000000..3d02baaa4f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-08b.html @@ -0,0 +1,6 @@ +Warehouse Keeper Parman:
+Maphr's Tablet is written in the language of the Giants, but we Dwarves are the true owners of the tablet. It was the Dwarves who learned directly from Maphr and to this day we retain our traditions of manufacturing, trading, and architecture! Other races, ignorant to our advances in math, dynamics, measurement and architecture won't even be able to follow the basics of Absolute Geometry.
+Obtaining Maphr's Tablet has always been our greatest wish and long-cherished dream. If only we could recover the secrets of Absolute Geometry, we would be able to rebuild our kingdom of Dwarves, and eventually control the entire continent! We could create a world where everything runs smoothly like a well-greased cogwheel...That is our heaven which we will create with our own hands.
+Unfortunately legend says that Maphr's Tablet was damaged when the war between the Gods and the Giants broke out. It is said that fearing the advanced technology of the Giants, the gods stole the tablet, broke it into 12 pieces and scattered it across the continent.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-08c.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-08c.html new file mode 100644 index 0000000000..d1b67b92a3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-08c.html @@ -0,0 +1,4 @@ +Warehouse Keeper Parman:
+Recently news came to us of an ancient relic thought to be a part of Maphr's Tablet. Since the tablet was made during the era of the Giants, it seems very likely that it will be found somewhere among the Giants' Ruins. The investigation team exploring the Cruma Tower has reported that they have discovered a box in which they think the fragments of Maphr's Tablet are contained.
+You must go to the site and collect Maphr's Tablet fragments! This will not be an easy task. First, go and meet Maestro Nikola there. You should find him near the entrance of the Cruma Tower. He will tell you more. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-09.html new file mode 100644 index 0000000000..c96d8a00fb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-09.html @@ -0,0 +1,3 @@ +Warehouse Keeper Parman:
+Your enthusiasm is admirable but you aren't ready for the second test yet. Return when you have more experience. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-10.html new file mode 100644 index 0000000000..fb64612c58 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-10.html @@ -0,0 +1,5 @@ +Warehouse Keeper Parman:
+Finally ready to take the second test, are you? Well, let's begin! You must take part in the Guild Guild's long-cherished project to excavate Maphr's Tablet and recover the Secrets of Absolute Geometry.
+Recently some information came to us about an ancient relic, thought to be a part of Maphr's Tablet. The investigative team exploring Cruma Tower have reported the discovery of a box thought to contain fragments of Maphr's Tablet. Take this letter and meet Maestro Nikola at the Cruma Tower. He will tell you more.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-11.html new file mode 100644 index 0000000000..e0fa36ddae --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-11.html @@ -0,0 +1,4 @@ +Warehouse Keeper Parman:
+Why are you still here? You must take the letter to Maestro Nikola at Cruma Tower. He will tell you the details of Maphr's Tablet.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-12.html new file mode 100644 index 0000000000..596661f887 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-12.html @@ -0,0 +1,5 @@ + +Warehouse Keeper Parman:
+The recovery of the secrets of Absolute Geometry hidden within Maphr's Tablet is the long-cherished wish of our Dwarven Guild. If you can find at least one stone fragment you will pass the second test.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-13.html new file mode 100644 index 0000000000..f9fbf4663d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30104-13.html @@ -0,0 +1,5 @@ +Warehouse Keeper Parman:
+This is a fragment of Maphr's Tablet! Amazing! I certainly chose the right person for this mission. Well done! The elders will be very pleased. I should tell you that it is rumored that another fragment of the tablet was recently found as well. With two of them, our studies can rapidly move forward!
+Now we must send this fragment to the Dwarven Village. Only the elders are able to decipher the Giants' language inscribed on it.
+Now that you've passed the second test, I can give you the Mark of Prosperity as a reward. At this rate, you'll soon be a high-ranking guild member! May Maphr's abundance be yours and your children's children! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30368-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30368-01.html new file mode 100644 index 0000000000..c25b2db524 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30368-01.html @@ -0,0 +1,5 @@ +Lilith:
+What is a Dwarf doing on this remote island? You have come to see me?
+The Mark of Health? News has recently come of the death of my lover, for whom I have waited these thousand years...Do you feel my grief?... How could you bother me with something as trivial as a mark? Are all Dwarves like you? How could speak this way to a person in agony... You selfish, selfish Dwarf!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30368-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30368-02.html new file mode 100644 index 0000000000..3e3bca3591 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30368-02.html @@ -0,0 +1,6 @@ +Lilith:
+A present...? What is this...!
+Did you really think that I would be pleased with such a thing? Could you have possibly thought that I would forget my 1,000 years of pain for the gift of a simple ornament?
+That's the way of the Dwarf, isn't it? You people know of nothing but worldly goods. Go away!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30368-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30368-03.html new file mode 100644 index 0000000000..7ae6d5a840 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30368-03.html @@ -0,0 +1,3 @@ +Lilith:
+What a nerve! You still want the Mark of Health? OK. Whatever. Take it! Are you happy now? Now that you have what you wanted, leave me! And don't ever come back again, you horrid little Dwarf! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30368-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30368-04.html new file mode 100644 index 0000000000..e715e654ce --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30368-04.html @@ -0,0 +1,3 @@ +Lilith:
+I already gave you an Elven Wafer, why are you here again? I have nothing further to discuss with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30368-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30368-05.html new file mode 100644 index 0000000000..c73a893e3f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30368-05.html @@ -0,0 +1,3 @@ +Lilith:
+I have nothing to discuss with you. Leave! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-01.html new file mode 100644 index 0000000000..0650678ba7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-01.html @@ -0,0 +1,6 @@ +Guard Bright:
+Ah, The Great Mother...? Yes, that is how my mother is known. She greatly deserves the title. She raised 12 children on her own. My father died before I was born. I was the last born child, and a posthumous one at that.
+My mother had no time to grieve my father's death and worked hard to raise us well. She had no rest until I was grown. Now that I have grown and settled down I can finally provide for my her.
+Would you like to meet her? She is probably at home right now... She is a bit shy around strangers... Lately she has been depressed and moody. I am sure she misses my father... I try to comfort her, but it is easier said than done...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-02.html new file mode 100644 index 0000000000..ae7800208a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-02.html @@ -0,0 +1,4 @@ +Guard Bright:
+A gift...? We are simple folk and rarely have the luxury of giving or receiving gifts...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-03.html new file mode 100644 index 0000000000..96d01ee4e7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-03.html @@ -0,0 +1,4 @@ +Guard Bright:
+Yes, it is only the thought that counts. There is one thing that my mother loves, now that I think about it. It is a bouquet made from Mandragora Petals. I don't know the story behind it, but she always seems quietly happy whenever I give her that bouquet.
+I will create one for you to give her if you will bring me the materials. I will need 20 mandragora flower petals and 10 bunches of Crimson Moss. You can get the petals from the mandragoras plants that grow on the western part of the execution grounds. The moss can be found near the giant crimson ants of the Cruma marshlands. Good luck on your journey! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-04.html new file mode 100644 index 0000000000..c089012bff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-04.html @@ -0,0 +1,4 @@ +Guard Bright:
+Do you remember all the materials needed for the bouquet?
+20 mandragora flower petals and 10 bunches of Crimson Moss. You may acquire the petals from the mandragoras that grow on the west parts of the execution grounds, and the moss is found near the giant crimson ants of the Cruma marshlands. Good luck, then. I hope to make the bouquet soon and see my mother smile. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-05.html new file mode 100644 index 0000000000..7447f9b315 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-05.html @@ -0,0 +1,4 @@ +Guard Bright:
+I see you have brought all the necessary materials. Good job! Now I will create a Mandragora Bouquet. Let's see, some Crimson Moss here, some petals there...hmm...
+There, all done! Take this bouquet of mandragora flowers to my mother. Her name is Emily. I know this will cheer her up... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-06.html new file mode 100644 index 0000000000..338f044521 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-06.html @@ -0,0 +1,3 @@ +Guard Bright:
+Take this bouquet of mandragora flowers to my mother. Her name is Emily. I am on duty and cannot leave my post. I hope these flowers will cheer her up... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-07.html new file mode 100644 index 0000000000..521d14383f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-07.html @@ -0,0 +1,3 @@ +Guard Bright:
+Have you found the Mark of Fertility that you sought? Mother's recipe...? Well, I'm not sure if there are any side-effects... I hope that this recipe may be of help to you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-08.html new file mode 100644 index 0000000000..190eda8521 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30466-08.html @@ -0,0 +1,3 @@ +Guard Bright:
+So we meet again, Dwarf traveler! How have you been? Mother has been feeling better since she received the bouquet. I really appreciate your help with that. Thank you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30517-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30517-01.html new file mode 100644 index 0000000000..6715acd612 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30517-01.html @@ -0,0 +1,5 @@ +Trader Shari:
+Yes, I know I need to pay my dues. But...well, my sales are way down lately. What can I do? I can't very well pay if I don't have the money, can I?
+I suppose I could borrow the money... In fact, I just took out a loan I was hoping to use to buy some new inventory. Oh, well...take it! Just take it and go!
+Now I don't know how I'm going to keep my store open... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30517-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30517-02.html new file mode 100644 index 0000000000..0b3f2e206f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30517-02.html @@ -0,0 +1,3 @@ +Trader Shari:
+Sob! What shall I do? How will I survive? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30519-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30519-01.html new file mode 100644 index 0000000000..073c83a9bf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30519-01.html @@ -0,0 +1,4 @@ +Trader Mion:
+That bloody old fool never forgets his donation money! I have been too busy to bring it in.
+Here it is! Now take it to Elder Balanki. Who does he think he is? Won't even come to pick up the donation in person! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30519-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30519-02.html new file mode 100644 index 0000000000..6570b0c8de --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30519-02.html @@ -0,0 +1,3 @@ +Trader Mion:
+Urhh! Balanki, that bloody old man! He never forgets the donation money! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-01.html new file mode 100644 index 0000000000..193a488cc5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-01.html @@ -0,0 +1,5 @@ +First Elder Lockirin:
+Many years have passed since you left for the mainland. So, how are you? Have you managed to earn some money?
+Ah, yes, The Test of Prosperity. It is gratifying to see ambition in one so young...I suppose Parman told you that I am the one to see if you want the Mark of Wealth. I, First Elder Lockirin, Leader of the Dwarves, am he who holds the economy of the land in his grasp!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-02.html new file mode 100644 index 0000000000..2e42c68ad4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-02.html @@ -0,0 +1,7 @@ +First Elder Lockirin:
+To a Dwarf, nothing in the world is more important than wealth. We serve the God Maphr because it is he from whom flows all wealth and abundance. Please don't misunderstand me, I mean no disrespect.
+My race possesses unfathomable wealth. Personally I could well afford a human estate. In spite of our embarrassment of riches, my race is still unsatisfied...
+If we could just get our hands on all of the fragments of Maphr's Tablet, we could buy the entire continent...our wealth would finally eclipse that of the humans! Only Maphr knows if I shall live to see this come to pass...
+Oh, pardon the idle musings of an old man. We have business to discuss. Let's talk about that Mark of Wealth that you are looking for. I would be happy to oblige, if only you would run a simple errand for me. Is this acceptable?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-03.html new file mode 100644 index 0000000000..689dae3524 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-03.html @@ -0,0 +1,4 @@ +First Elder Lockirin:
+This won't be very difficult. I only ask that you collect some overdue guild dues on my behalf. All guild members must pay dues periodically, but there are some who have not yet paid, even though their due dates have long passed. The Steel Gate Guild dues have all been collected, but some of the other guilds have some delinquent members. I would like you to visit them and collect their guild dues. I'm sure this will be a swift task for you.
+Here, take this badge and report to the 5 Elders here with me. They will give you the names of the delinquent members. Go and collect the dues and return them to the Elders. Collect 5 receipts from the other Elders and bring them to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-04.html new file mode 100644 index 0000000000..e8176efcfe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-04.html @@ -0,0 +1,3 @@ +First Elder Lockirin:
+Remember to speak with all 5 Elders about overdue guild dues and make collections immediately. The elders will each give you a receipt when you turn in the dues to them. Collect all 5 receipts and bring them to me. Then you shall have your Mark of Wealth. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-05.html new file mode 100644 index 0000000000..6a14cb82a2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-05.html @@ -0,0 +1,4 @@ +First Elder Lockirin:
+Golden Wheel, Silver Balance, Black Anvil, Bronze Key, and Gray Pillar... Yes, that is all 5 receipts. Thank you for your troubles. I find overdue payment collections so tiresome. As the First Elder, I don't have time to chase down every freeloader. Thanks to you, all the accounts are settled. We are in your debt.
+You mentioned a Mark of Wealth? This should do nicely. Here is an accounting book that I have been keeping since I was a very young Dwarf. If you read this, you will discover the secrets of my wealth. Good luck with you future in the guild! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-06.html new file mode 100644 index 0000000000..7b50e9146c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-06.html @@ -0,0 +1,3 @@ +First Elder Lockirin:
+Ah, a searcher for the four marks of abundance... That is not an uncomplicated task. Money alone will not solve all problems. Tenacity is essential to your success. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-07.html new file mode 100644 index 0000000000..f43f87da56 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30531-07.html @@ -0,0 +1,3 @@ +First Elder Lockirin:
+If I could only get my hands on one the fragments of Maphr's Tablet I would be able to buy the entire continent! At last the humans would be subservient to us! Just one fragment! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30532-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30532-01.html new file mode 100644 index 0000000000..80cf4fdd4c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30532-01.html @@ -0,0 +1,6 @@ +Elder Spiron:
+May you be blessed with wealth and the virtue of generosity! I am Spiron, the Chief Elder of the Golden Wheel Guild.
+Ah! I remember you. Did you not rid us of the goblin brigand? Though my memory has faded somewhat... You have grown much since I last saw you.
+So, you have come to collect guild dues on behalf of the First Elder? Let's have a look at the delinquent payments... Oh! I see Trader Shari of the weapons shop has not yet made his payment. I hear business has been bad since travelers have started to trade among themselves... I guess his financial worries are as bad as they say...
+Go to Shari and collect his dues, and then return with his payment. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30532-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30532-02.html new file mode 100644 index 0000000000..dc30596859 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30532-02.html @@ -0,0 +1,3 @@ +Elder Spiron:
+Go see Trader Shari of the weapons shop, collect his guild dues and bring them to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30532-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30532-03.html new file mode 100644 index 0000000000..a9337633b4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30532-03.html @@ -0,0 +1,4 @@ +Elder Spiron:
+Thank you very much. With this payment all of our members have paid their dues. Here is the receipt. Please take this to First Elder Lockirin.
+I hear Shari's business is not doing so well. I wonder how she managed to pay her dues...? What? She went into debt to make this payment? My my! I didn't know her financial status was that bad! I'll help her this time. I cannot ignore the troubles of a fellow guild member. I'll make her payment for her, and return her money. Good job, you can be on your way. I'll take care of the rest. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30532-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30532-04.html new file mode 100644 index 0000000000..497ced5388 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30532-04.html @@ -0,0 +1,3 @@ +Elder Spiron:
+I see you are working hard to collect the guild payment receipts. You will be generously rewarded for your efforts. Have faith! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30533-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30533-01.html new file mode 100644 index 0000000000..4c7259d430 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30533-01.html @@ -0,0 +1,6 @@ +Elder Balanki:
+Pleased to meet you, very pleased indeed. I am Balanki Rollingrock. I am the lead Elder of the renowned Silver Balance Guild. So you are the one that the First Elder has sent to collect overdue guild dues? Let me see... Who has yet not paid...
+Hmm... Trader Mion of the grocery shop has not paid yet. I hear business is good, so why is she not paying her dues?
+And another one! Maryse Redbonnet! I guess revenge is more important to her than guild dues.
+Go at once and collect the guild dues from these two! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30533-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30533-02.html new file mode 100644 index 0000000000..107ec7f05b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30533-02.html @@ -0,0 +1,3 @@ +Elder Balanki:
+Trader Mion of the grocery shop, and Maryse Redbonnet! Those 2 have not yet paid their dues! Go at once and collect the guild dues from them! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30533-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30533-03.html new file mode 100644 index 0000000000..a6f30b8e45 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30533-03.html @@ -0,0 +1,4 @@ +Elder Balanki:
+Ah, Mion... So rich, but always late with guild payments. This is not the first time this has happened. She ignores her obligations on purpose. She must be taught a lesson! I see you have received Maryse Redbonnet's dues. I thought she was so blinded by revenge that she couldn't see anything else. At least she knows how to pay.
+Many thanks for your troubles! Here is the receipt. Take this to the First Elder. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30533-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30533-04.html new file mode 100644 index 0000000000..f78aed3455 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30533-04.html @@ -0,0 +1,3 @@ +Elder Balanki:
+I see you are working hard to fulfill First Elder Lockirin's request. Hmmm... Well, the First Elder cannot go and personally collect the dues himself... Maybe you should work harder... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-01.html new file mode 100644 index 0000000000..3d72213803 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-01.html @@ -0,0 +1,4 @@ +Elder Keef:
+May the abundance of Maphr be with you! Well, look at you! Aren't you the one that hunted blade bats for me? So, how are you doing? I'm sure your situation has improved thanks to the hard work you did back then.. You look good! I wouldn't be surprised to see you get a promotion soon!
+Ah! You are collecting guild dues on behalf of the First Elder? Wait a minute. All right... Let's see who has not paid his dues yet! Oh my! That infamous rascal Carrier Torocco has not yet paid! I knew it. Always the troublemaker, he is! Go and collect the guild dues from Torocco. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-02.html new file mode 100644 index 0000000000..c5e6d8ffad --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-02.html @@ -0,0 +1,3 @@ +Elder Keef:
+Most of our guild members pay their dues in a timely manner. However, Torocco is always late. Please. Go to Carrier Torocco and collect his guild dues. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-03.html new file mode 100644 index 0000000000..8b1ec2a517 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-03.html @@ -0,0 +1,5 @@ +Elder Keef:
+Hmm.... A piece of paper in lieu of payment? Another one of Torocco's tricks? Let me see... 'The bearer of this document hereby agrees to pay the Bronze Key Guild dues in place of Carrier Torocco.' Hmm...
+How generous of you! Offering to pay dues in place of that rascal. Well, I have no complaints as long as the dues are paid. I understand. You may make the payment for him.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-03a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-03a.html new file mode 100644 index 0000000000..91b886a020 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-03a.html @@ -0,0 +1,3 @@ +Elder Keef:
+There is not enough money here! You don't have enough money to pay the guild dues? This is a problem! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-03b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-03b.html new file mode 100644 index 0000000000..6a8279e8ce --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-03b.html @@ -0,0 +1,3 @@ +Elder Keef:
+Guild dues of 5000 Adena, paid. I see Torocco has a good friend. Here, take this receipt. First Elder Lockirin has been very concerned about overdue payments, so take the receipts to him immediately! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-04.html new file mode 100644 index 0000000000..cacc6f9d5a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30534-04.html @@ -0,0 +1,3 @@ +Elder Keef:
+Hello, young friend, we meet again! I see you are working hard to collect the guild payment receipts! Please renew your efforts and think of the First Elder, who must be frustrated that guild dues are not being collected in a timely manner! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30535-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30535-01.html new file mode 100644 index 0000000000..a626807ef2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30535-01.html @@ -0,0 +1,4 @@ +Filaur of the Gray Pillar:
+May the blessings of the rich earth be with you. You have come to collect the dues in place of the First Elder? But... You look strangely familiar... Let me see... Yes! Aren't you the one that helped me find the Map of the hidden vein? It's been too long! I am glad to see you again. So, how is life treating you these days? Have you managed to earn some money?
+Oh yes! Right...I should not waste my time like this! Gossiping while you have so many things to do. Let me see, who has not paid his dues... Oh my! Miner Bolter has not yet paid. Strange that a diligent Dwarf like him has not paid. Go to him and find out why. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30535-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30535-02.html new file mode 100644 index 0000000000..3d686e7ff7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30535-02.html @@ -0,0 +1,3 @@ +Filaur of the Gray Pillar:
+Have you met Miner Bolter yet? No? He has not yet paid his guild dues. Go and collect payment from him. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30535-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30535-03.html new file mode 100644 index 0000000000..a06d3ea927 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30535-03.html @@ -0,0 +1,6 @@ +Filaur of the Gray Pillar:
+What? He already paid 13 days ago? That can't be... Wait a minute. I need to check my books again.
+Hmm... Miner May paid a week ago... Let me see... Bolter....
+Oh! He's right! I must have missed this notation when I transferred the figures into my new book. What a mistake that was! Miner Bolter has a good memory indeed!
+Our guild has collected dues from all of our members. I will create a receipt for you to deliver to the First Elder. He has been worried about all the unpaid dues. I am sure he will be greatly pleased with your success. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30535-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30535-04.html new file mode 100644 index 0000000000..4d93a46aee --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30535-04.html @@ -0,0 +1,3 @@ +Filaur of the Gray Pillar:
+Are you still collecting overdue guild dues? Then why are you here? On your way, finish the task! Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30536-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30536-01.html new file mode 100644 index 0000000000..4afec1e029 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30536-01.html @@ -0,0 +1,5 @@ +Elder Arin:
+I am Arin Curdhammer, a representative of the Black Anvil Guild. But wait! Haven't we met before? You look very familiar. Hmmm. Very strange, I never forget a face... Oh, well, I guess I am getting old.. Let's get on with the business at hand.
+Let's see, who has not paid his dues... Dear, dear! Master Toma is late with his payment! Oh my...this is quite a predicament. He is certainly old enough to know better... He hasn't been here for ages, probably still off roaming about the countryside. He must have forgotten that his guild dues are due.
+Please! Go to Master Toma and bring back his dues payment. He won't be easy to find, as he is always wandering... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30536-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30536-02.html new file mode 100644 index 0000000000..bd11ce76fb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30536-02.html @@ -0,0 +1,3 @@ +Elder Arin:
+Please bring back Master Toma's contribution. No doubt he is traveling and simply forgot about the due date... Ah, he can be so elusive -- I heard some time ago that he was fishing on the northern coast... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30536-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30536-03.html new file mode 100644 index 0000000000..ced8627ccf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30536-03.html @@ -0,0 +1,5 @@ +Elder Arin:
+Phew!. Ah, the guild dues of Master Toma! So, how was he? Enraged? Yes, I thought he might be. He is one strange duck, that for sure. He looked down on me when I was a child, and still treats me like one, even though I am an Elder now...
+Anyway, I am glad it worked out. I'm sure that there would have been a greater fuss if I had personally gone myself. Thank you.
+Please take this receipt and deliver it to First Elder Lockirin. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30536-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30536-04.html new file mode 100644 index 0000000000..13ca17b20c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30536-04.html @@ -0,0 +1,3 @@ +Elder Arin:
+I hate all this paperwork! Don't be in such a rush and do the tasks properly! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30553-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30553-01.html new file mode 100644 index 0000000000..01ca4773f1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30553-01.html @@ -0,0 +1,5 @@ +Maryse Redbonnet:
+Contribution? All I can think about is that wolf! Everything else is secondary right now.
+I suppose if you help me get my revenge, I'll contribute as much as you want. Bring me 10 animal skins!
+(Animal skins are used to produce other items.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30553-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30553-02.html new file mode 100644 index 0000000000..9a2530f7f3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30553-02.html @@ -0,0 +1,4 @@ +Maryse Redbonnet:
+Bring me 10 Animal Skins and I'll contribute as much as you want!
+(An Animal Skin can be used to produce other items.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30553-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30553-03.html new file mode 100644 index 0000000000..9cf584f51a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30553-03.html @@ -0,0 +1,4 @@ +Maryse Redbonnet:
+Excellent! 10 animal skins! Now we're getting somewhere...
+As promised, here's my contribution! You know, that old fellow is really persistent. Sending someone to get the money! He'll get his someday too, mark my words. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30553-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30553-04.html new file mode 100644 index 0000000000..8d7ddf6d20 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30553-04.html @@ -0,0 +1,3 @@ +Maryse Redbonnet:
+That doddering old man really has his nerve! How dare he send a representative to collect money! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30554-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30554-01.html new file mode 100644 index 0000000000..32184dbd79 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30554-01.html @@ -0,0 +1,5 @@ +Miner Bolter:
+Well, look what the cat dragged in! Long time no see! Seems like only yesterday that you were hunting Bearded Keltirs in these parts. Now look at you!
+Surprised that I remembered you, eh? Oh, I never forget a face -- especially that of a fellow guild member. So what brings you all the way out here?
+My dues!? I paid my dues 2 weeks ago! Are you calling me a liar?! Hmmph! I even have a receipt...somewhere around here... In any case, you'd best go straight to Filaur and get all this straightened out. Accusing honest Dwarves of cheating their guild -- hmmph! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30554-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30554-02.html new file mode 100644 index 0000000000..6e1e085f54 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30554-02.html @@ -0,0 +1,3 @@ +Miner Bolter:
+How dare you doubt my word! Take this receipt to Filaur of the Gray Pillar Guild and tell him I expect an apology. Hmmph! And to think I once shared my beer with you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30555-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30555-01.html new file mode 100644 index 0000000000..dd6cf17a65 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30555-01.html @@ -0,0 +1,5 @@ +Carrier Torocco:
+Oh, right, a donation! Uh, well, hmm... I don't seem to have any money with me... Oh, my...
+Excuse me, aren't you the one who found the Star Diamond for me? Could I trouble you to help me again please? Could you possibly pay the donation for me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30555-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30555-02.html new file mode 100644 index 0000000000..6c998b1798 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30555-02.html @@ -0,0 +1,3 @@ +Carrier Torocco:
+Thank you! Thank you so very much. I will not forget this! I will write you a warrant. It explains how you paid for my donation. You can give this warrant to Elder Keef. Again, thank you. Thank you so much! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30555-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30555-03.html new file mode 100644 index 0000000000..3ee54be8b8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30555-03.html @@ -0,0 +1,3 @@ +Carrier Torocco:
+Please pay the donation for me and then take the warrant that I gave you to Elder Keef. Thank you so much. I will never forget this! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30556-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30556-01.html new file mode 100644 index 0000000000..1d3ad19ee9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30556-01.html @@ -0,0 +1,4 @@ +Master Toma:
+A donation? Let me see... Is it already time for another donation? Strange indeed! It seems like just yesterday I gave one. This wouldn't be a trick from that rascal Arin? He is so full of himself since he became an Elder...
+Oh, well, I can't say no to your request... Here is the donation... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30556-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30556-02.html new file mode 100644 index 0000000000..e433c305cc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30556-02.html @@ -0,0 +1,3 @@ +Master Toma:
+Stop bothering me! I gave you the donation, so take it and go! Give it to Arin, see if I'll care! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30597-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30597-01.html new file mode 100644 index 0000000000..a9e10d9f5a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30597-01.html @@ -0,0 +1,5 @@ +Piotur:
+The land around here used to be fertile farmlands before the terrible war with Gracia. It was a peaceful place where simple farmers like myself tilled the land to make a living. When we tilled the land earnestly, mother earth would reward us with a rich harvest.
+But, because of the war, all the farms were burned down and the earth was devastated. Moreover, a group of Orcs has invaded our land and have settled here. Fertile lands... Gludio's best granary... Those are stories from long ago, but a memory now...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30597-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30597-02.html new file mode 100644 index 0000000000..3dd3aa6278 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30597-02.html @@ -0,0 +1,6 @@ +Piotur:
+Hope..., Yes, I suppose there is hope after all...
+These days the hired troops are taking care of the Orcs while my brothers and I work day and night to reclaim the land. Someday this farm will boast the richest land in the kingdom of Aden!
+So you seek the Token of the Fertile Lands? Then you shall have it. I was given this from another Dwarf. He appeared at a time when I had just come to this barren land and was having no luck growing crops. He gave me a seed and said that the blessings of Maphr were within it.
+When I planted this seed it enriched the soil and my harvests have been improving steadily since then. I put back some of the seeds and have saved them until this day. Now I shall share the seeds with you. This gift from one Dwarf I now give to another. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30597-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30597-03.html new file mode 100644 index 0000000000..27d15b108e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30597-03.html @@ -0,0 +1,3 @@ +Piotur:
+The seeds in which the blessings of Maphr dwell... This will be your Token of the Fertile Lands. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30597-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30597-04.html new file mode 100644 index 0000000000..0d78927ab2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30597-04.html @@ -0,0 +1,3 @@ +Piotur:
+May the blessings of Maphr shine upon you and your tribe. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30620-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30620-01.html new file mode 100644 index 0000000000..c053ebf37b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30620-01.html @@ -0,0 +1,5 @@ +Emily:
+Great Mother...? Yes, I have borne and raised 12 children. Surprised? People are always telling me that I do not look my age. People call me the 'Great Mother'. So embarrassing... There's nothing great about it.
+I loved my husband and children so much that I bore and raised as many as I could. It was terribly hard when I lost my husband in battle. Raising the children alone became so hard that I considered sending them away to foster homes. But we carried on through it all, and my children have all grown up and married. Well, all but my youngest. My work will be done when my youngest has married and set up house for himself. I will feel relief and sadness at the same time.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30620-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30620-02.html new file mode 100644 index 0000000000..9517c2f850 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30620-02.html @@ -0,0 +1,6 @@ +Emily:
+This bouquet...? Ah...! This bouquet holds a very special meaning for me... Bright said to give this to me? Oh my...
+When my husband proposed to me, he risked his life hunting the mandragoras to create this bouquet. And he proposed to me with it! I still remember that day so clearly...
+Oh my... I apologize, I still cry at that memory. Is there anything I can do for you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30620-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30620-03.html new file mode 100644 index 0000000000..9e3a0d79d8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30620-03.html @@ -0,0 +1,4 @@ +Emily:
+The Mark of Fertility...that reminds me of something. There's a reason why I am so healthy, even though I have produced 12 children. It is because of the secret dish that has been passed on to me by my mother. Whoever eats this dish experiences less pain with childbirth and an easier time with the next pregnancy.
+This recipe is a closely guarded secret that is passed down only to the daughters of my family... But I will make an exception and give you the recipe. Here is the recipe for the dish. I think this will serve as sufficient proof of the Mark of Fertility. I hope this will help you.. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30620-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30620-04.html new file mode 100644 index 0000000000..1e91cab00f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30620-04.html @@ -0,0 +1,3 @@ +Emily:
+This recipe I have given you... I hope that it signifies the Mark of Fertility that you seek. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30620-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30620-05.html new file mode 100644 index 0000000000..913fde8819 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30620-05.html @@ -0,0 +1,3 @@ +Emily:
+My word! So we meet again. Thank you for delivering the gift from my son. By the way, was the recipe I gave you of any help? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-01.html new file mode 100644 index 0000000000..f8ff637a9a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-01.html @@ -0,0 +1,5 @@ +Maestro Nikola:
+So, you were sent by the guild! We have been looking forward to meeting you! If you're ready I'll get right down to business.
+A week ago, I went into the tower alone to do research. I admit it was a dangerous thing to do, since field investigations are not my specialty. During the search I found a very old, tightly locked box. The box appeared to be constructed of a material not of this earth.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-02.html new file mode 100644 index 0000000000..9ba38a9230 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-02.html @@ -0,0 +1,6 @@ +Maestro Nikola:
+Totally fascinated by the locked box, I devoted all my time to investigating it. The lock was impossible to pick, and the box seemed unbreakable.
+The box remained unopened for a while as I investigated its surroundings. This tower is well known as a former research center in the age of the Late Giants. On the floor I found some rather otherwise-ordinary looking stones that seemed to be engraved with the language of Giants...
+Before I go on, you must swear that you will not tell anyone of these stones...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-03.html new file mode 100644 index 0000000000..24ce427a8c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-03.html @@ -0,0 +1,6 @@ +Maestro Nikola:
+Well, actually, decoding of the Giant's characters is only allowed by the Elders of the guild. They keep all the knowledge from Giant records for themselves. I will probably not be suspected of breaking this rule since I secretly taught myself. It is an unfair rule anyway. I don't know what they are thinking...
+Anyway, as soon as I saw the stone, I knew that Maphr's Tablet Fragments were hidden inside the box. Suddenly I heard roars from the creatures all over the tower. I had to run away immediately. As I said earlier, I am not much of a fighter, so if I was attacked by the creatures I would most likely be killed.
+It has been a week since that day, and still I cannot bring myself to enter the tower. But I have an idea... I know where the box is and have determined that a special key must be used to open it. I have researched the materials and methods of creating such a key, and am quite sure I can do it!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-04.html new file mode 100644 index 0000000000..f819f9c8fa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-04.html @@ -0,0 +1,4 @@ +Maestro Nikola:
+I know the materials needed to create the key, but still lack the shape. I need your help with this. Please go to the tower and copy the pattern of the keyhole! If we have a copy of the keyhole we can write down the recipe for making the key.
+Now take this clay and copy the pattern of the keyhole. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-05.html new file mode 100644 index 0000000000..5384beb3c0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-05.html @@ -0,0 +1,3 @@ +Maestro Nikola:
+Now go into the tower and find the box. Do not try to open the box by yourself. All you have to do is make a copy of the keyhole with the clay I gave you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-06.html new file mode 100644 index 0000000000..3c0fdc5d32 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-06.html @@ -0,0 +1,4 @@ +Maestro Nikola:
+Excellent! You have copied the keyhole! Well done! Now give me a moment while I write down the recipe for the key. Now... shall we get started Mapping the key's structure? Hmmm...I see that it is a very complicated structure in which many triple spirals are layered and connected to double spirals. I have never seen such a fantastic thing. But it won't be a problem for me!
+Done! I guarantee that you will be able to open the box if you follow the recipe. Just collect the needed materials. I will tell you which creatures you must hunt, as well. You will find everything in the Cruma Marshlands, so don't worry. I don't think this will be a problem for you. If everything is clear, let's get started! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-07.html new file mode 100644 index 0000000000..a84ac6f258 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-07.html @@ -0,0 +1,2 @@ +Maestro Nikola:
Simply follow the recipe and you'll be able to make the key to open the box. Here is the list of the creatures that are needed and you will find the recipe materials in the Marshland of Cruma. If this is clear, then be on your way! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-08.html new file mode 100644 index 0000000000..605514801f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-08.html @@ -0,0 +1,3 @@ +Maestro Nikola:
+Once the key is done, take it to the tower and open the box. Wouldn't you like to know what is in the box? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-09.html new file mode 100644 index 0000000000..f2ec0da0db --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30621-09.html @@ -0,0 +1,5 @@ +Maestro Nikola:
+Yes, we have finally obtained Maphr's Tablet Fragment! This is amazing. let me see... Hmm... Could it be?
+Knowing the characters is not enough to decipher this language. It will be impossible for us to interpret the tablet without the help of the Elders...
+Very well, then! Now deliver this to Warehouse Keeper Parman. This is all we can do now. I plan to return to Shootguart after looking around the tower a bit more... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30622-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30622-01.html new file mode 100644 index 0000000000..153809be21 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30622-01.html @@ -0,0 +1,4 @@ +Box of Titan:
+This box was created during the period of Titan.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30622-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30622-02.html new file mode 100644 index 0000000000..8ddd706e07 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30622-02.html @@ -0,0 +1,3 @@ +Box of Titan:
+Make a keyhole pattern out of clay. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30622-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30622-03.html new file mode 100644 index 0000000000..2c9a93ffbd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30622-03.html @@ -0,0 +1,4 @@ +Box of Titan:
+This box was created during the period of Titan.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30622-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30622-04.html new file mode 100644 index 0000000000..b81fced7ec --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30622-04.html @@ -0,0 +1,3 @@ +Box of Titan:
+You have found 'Maphr's Tablet Fragment'. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30622-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30622-05.html new file mode 100644 index 0000000000..6cf18a8a61 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/30622-05.html @@ -0,0 +1,3 @@ +Box of Titan:
+The box is locked. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/Q00221_TestimonyOfProsperity.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/Q00221_TestimonyOfProsperity.java new file mode 100644 index 0000000000..52f8382eb9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00221_TestimonyOfProsperity/Q00221_TestimonyOfProsperity.java @@ -0,0 +1,978 @@ +/* + * 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.Q00221_TestimonyOfProsperity; + +import com.l2jmobius.gameserver.enums.CategoryType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Testimony Of Prosperity (221) + * @author ivantotov + */ +public final class Q00221_TestimonyOfProsperity extends Quest +{ + // NPCs + private static final int WAREHOUSE_KEEPER_WILFORD = 30005; + private static final int WAREHOUSE_KEEPER_PARMAN = 30104; + private static final int LILITH = 30368; + private static final int GUARD_BRIGHT = 30466; + private static final int TRADER_SHARI = 30517; + private static final int TRADER_MION = 30519; + private static final int IRON_GATES_LOCKIRIN = 30531; + private static final int GOLDEN_WHEELS_SPIRON = 30532; + private static final int SILVER_SCALES_BALANKI = 30533; + private static final int BRONZE_KEYS_KEEF = 30534; + private static final int GRAY_PILLAR_MEMBER_FILAUR = 30535; + private static final int BLACK_ANVILS_ARIN = 30536; + private static final int MARYSE_REDBONNET = 30553; + private static final int MINER_BOLTER = 30554; + private static final int CARRIER_TOROCCO = 30555; + private static final int MASTER_TOMA = 30556; + private static final int PIOTUR = 30597; + private static final int EMILY = 30620; + private static final int MAESTRO_NIKOLA = 30621; + private static final int BOX_OF_TITAN = 30622; + // Items + private static final int ADENA = 57; + private static final int ANIMAL_SKIN = 1867; + private static final int RECIPE_TITAN_KEY = 3023; + private static final int KEY_OF_TITAN = 3030; + private static final int RING_OF_TESTIMONY_1ST = 3239; + private static final int RING_OF_TESTIMONY_2ND = 3240; + private static final int OLD_ACCOUNT_BOOK = 3241; + private static final int BLESSED_SEED = 3242; + private static final int EMILYS_RECIPE = 3243; + private static final int LILITHS_ELVEN_WAFER = 3244; + private static final int MAPHR_TABLET_FRAGMENT = 3245; + private static final int COLLECTION_LICENSE = 3246; + private static final int LOCKIRINS_1ST_NOTICE = 3247; + private static final int LOCKIRINS_2ND_NOTICE = 3248; + private static final int LOCKIRINS_3RD_NOTICE = 3249; + private static final int LOCKIRINS_4TH_NOTICE = 3250; + private static final int LOCKIRINS_5TH_NOTICE = 3251; + private static final int CONTRIBUTION_OF_SHARI = 3252; + private static final int CONTRIBUTION_OF_MION = 3253; + private static final int CONTRIBUTION_OF_MARYSE = 3254; + private static final int MARYSES_REQUEST = 3255; + private static final int CONTRIBUTION_OF_TOMA = 3256; + private static final int RECEIPT_OF_BOLTER = 3257; + private static final int RECEIPT_OF_CONTRIBUTION_1ST = 3258; + private static final int RECEIPT_OF_CONTRIBUTION_2ND = 3259; + private static final int RECEIPT_OF_CONTRIBUTION_3RD = 3260; + private static final int RECEIPT_OF_CONTRIBUTION_4TH = 3261; + private static final int RECEIPT_OF_CONTRIBUTION_5TH = 3262; + private static final int PROCURATION_OF_TOROCCO = 3263; + private static final int BRIGHTS_LIST = 3264; + private static final int MANDRAGORA_PETAL = 3265; + private static final int CRIMSON_MOSS = 3266; + private static final int MANDRAGORA_BOUGUET = 3267; + private static final int PARMANS_INSTRUCTIONS = 3268; + private static final int PARMANS_LETTER = 3269; + private static final int CLAY_DOUGH = 3270; + private static final int PATTERN_OF_KEYHOLE = 3271; + private static final int NIKOLAS_LIST = 3272; + private static final int STAKATO_SHELL = 3273; + private static final int TOAD_LORD_SAC = 3274; + private static final int MARSH_SPIDER_THORN = 3275; + private static final int CRYSTAL_BROOCH = 3428; + // Reward + private static final int MARK_OF_PROSPERITY = 3238; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monster + private static final int MANDRAGORA_SPROUT1 = 20154; + private static final int MANDRAGORA_SAPLING = 20155; + private static final int MANDRAGORA_BLOSSOM = 20156; + private static final int MARSH_STAKATO = 20157; + private static final int MANDRAGORA_SPROUT2 = 20223; + private static final int GIANT_CRIMSON_ANT = 20228; + private static final int MARSH_STAKATO_WORKER = 20230; + private static final int TOAD_LORD = 20231; + private static final int MARSH_STAKATO_SOLDIER = 20232; + private static final int MARSH_SPIDER = 20233; + private static final int MARSH_STAKATO_DRONE = 20234; + // Misc + private static final int MIN_LEVEL = 37; + + public Q00221_TestimonyOfProsperity() + { + super(221); + addStartNpc(WAREHOUSE_KEEPER_PARMAN); + addTalkId(WAREHOUSE_KEEPER_PARMAN, WAREHOUSE_KEEPER_WILFORD, LILITH, GUARD_BRIGHT, TRADER_SHARI, TRADER_MION, IRON_GATES_LOCKIRIN, GOLDEN_WHEELS_SPIRON, SILVER_SCALES_BALANKI, BRONZE_KEYS_KEEF, GRAY_PILLAR_MEMBER_FILAUR, BLACK_ANVILS_ARIN, MARYSE_REDBONNET, MINER_BOLTER, CARRIER_TOROCCO, MASTER_TOMA, PIOTUR, EMILY, MAESTRO_NIKOLA, BOX_OF_TITAN); + addKillId(MANDRAGORA_SPROUT1, MANDRAGORA_SAPLING, MANDRAGORA_BLOSSOM, MARSH_STAKATO, MANDRAGORA_SPROUT2, GIANT_CRIMSON_ANT, MARSH_STAKATO_WORKER, TOAD_LORD, MARSH_STAKATO_SOLDIER, MARSH_SPIDER, MARSH_STAKATO_DRONE); + registerQuestItems(RECIPE_TITAN_KEY, KEY_OF_TITAN, RING_OF_TESTIMONY_1ST, RING_OF_TESTIMONY_2ND, OLD_ACCOUNT_BOOK, BLESSED_SEED, EMILYS_RECIPE, LILITHS_ELVEN_WAFER, MAPHR_TABLET_FRAGMENT, COLLECTION_LICENSE, LOCKIRINS_1ST_NOTICE, LOCKIRINS_2ND_NOTICE, LOCKIRINS_3RD_NOTICE, LOCKIRINS_4TH_NOTICE, LOCKIRINS_5TH_NOTICE, CONTRIBUTION_OF_SHARI, CONTRIBUTION_OF_MION, CONTRIBUTION_OF_MARYSE, MARYSES_REQUEST, CONTRIBUTION_OF_TOMA, RECEIPT_OF_BOLTER, RECEIPT_OF_CONTRIBUTION_1ST, RECEIPT_OF_CONTRIBUTION_2ND, RECEIPT_OF_CONTRIBUTION_3RD, RECEIPT_OF_CONTRIBUTION_4TH, RECEIPT_OF_CONTRIBUTION_5TH, PROCURATION_OF_TOROCCO, BRIGHTS_LIST, MANDRAGORA_PETAL, CRIMSON_MOSS, MANDRAGORA_BOUGUET, PARMANS_INSTRUCTIONS, PARMANS_LETTER, CLAY_DOUGH, PATTERN_OF_KEYHOLE, NIKOLAS_LIST, STAKATO_SHELL, TOAD_LORD_SAC, MARSH_SPIDER_THORN, CRYSTAL_BROOCH); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + if (!hasQuestItems(player, RING_OF_TESTIMONY_1ST)) + { + giveItems(player, RING_OF_TESTIMONY_1ST, 1); + } + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 50); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30104-04e.htm"; + } + else + { + htmltext = "30104-04.htm"; + } + } + break; + } + case "30104-08.html": + { + takeItems(player, RING_OF_TESTIMONY_1ST, 1); + giveItems(player, RING_OF_TESTIMONY_2ND, 1); + takeItems(player, OLD_ACCOUNT_BOOK, 1); + takeItems(player, BLESSED_SEED, 1); + takeItems(player, EMILYS_RECIPE, 1); + takeItems(player, LILITHS_ELVEN_WAFER, 1); + giveItems(player, PARMANS_LETTER, 1); + qs.setCond(4, true); + htmltext = event; + break; + } + case "30104-04a.html": + case "30104-04b.html": + case "30104-04c.html": + case "30104-04d.html": + case "30104-05.html": + case "30104-08a.html": + case "30104-08b.html": + case "30104-08c.html": + case "30005-02.html": + case "30005-03.html": + case "30368-02.html": + case "30466-02.html": + case "30531-02.html": + case "30620-02.html": + case "30621-02.html": + case "30621-03.html": + { + htmltext = event; + break; + } + case "30005-04.html": + { + giveItems(player, CRYSTAL_BROOCH, 1); + htmltext = event; + break; + } + case "30368-03.html": + { + if (hasQuestItems(player, CRYSTAL_BROOCH)) + { + giveItems(player, LILITHS_ELVEN_WAFER, 1); + takeItems(player, CRYSTAL_BROOCH, 1); + if (hasQuestItems(player, OLD_ACCOUNT_BOOK, BLESSED_SEED, EMILYS_RECIPE)) + { + qs.setCond(2, true); + } + htmltext = event; + } + break; + } + case "30466-03.html": + { + giveItems(player, BRIGHTS_LIST, 1); + htmltext = event; + break; + } + case "30531-03.html": + { + giveItems(player, COLLECTION_LICENSE, 1); + giveItems(player, LOCKIRINS_1ST_NOTICE, 1); + giveItems(player, LOCKIRINS_2ND_NOTICE, 1); + giveItems(player, LOCKIRINS_3RD_NOTICE, 1); + giveItems(player, LOCKIRINS_4TH_NOTICE, 1); + giveItems(player, LOCKIRINS_5TH_NOTICE, 1); + htmltext = event; + break; + } + case "30534-03a.html": + { + if (getQuestItemsCount(player, ADENA) < 5000) + { + htmltext = event; + } + else if (hasQuestItems(player, PROCURATION_OF_TOROCCO)) + { + takeItems(player, ADENA, 5000); + giveItems(player, RECEIPT_OF_CONTRIBUTION_3RD, 1); + takeItems(player, PROCURATION_OF_TOROCCO, 1); + htmltext = "30534-03b.html"; + } + break; + } + case "30555-02.html": + { + giveItems(player, PROCURATION_OF_TOROCCO, 1); + htmltext = event; + break; + } + case "30597-02.html": + { + giveItems(player, BLESSED_SEED, 1); + if (hasQuestItems(player, OLD_ACCOUNT_BOOK, EMILYS_RECIPE, LILITHS_ELVEN_WAFER)) + { + qs.setCond(2, true); + } + htmltext = event; + break; + } + case "30620-03.html": + { + if (hasQuestItems(player, MANDRAGORA_BOUGUET)) + { + giveItems(player, EMILYS_RECIPE, 1); + takeItems(player, MANDRAGORA_BOUGUET, 1); + if (hasQuestItems(player, OLD_ACCOUNT_BOOK, BLESSED_SEED, LILITHS_ELVEN_WAFER)) + { + qs.setCond(2, true); + } + htmltext = event; + } + break; + } + case "30621-04.html": + { + giveItems(player, CLAY_DOUGH, 1); + qs.setCond(5, true); + htmltext = event; + break; + } + case "30622-02.html": + { + if (hasQuestItems(player, CLAY_DOUGH)) + { + takeItems(player, CLAY_DOUGH, 1); + giveItems(player, PATTERN_OF_KEYHOLE, 1); + qs.setCond(6, true); + htmltext = event; + } + break; + } + case "30622-04.html": + { + if (hasQuestItems(player, KEY_OF_TITAN)) + { + takeItems(player, KEY_OF_TITAN, 1); + giveItems(player, MAPHR_TABLET_FRAGMENT, 1); + takeItems(player, NIKOLAS_LIST, 1); + takeItems(player, RECIPE_TITAN_KEY, 1); + takeItems(player, STAKATO_SHELL, -1); + takeItems(player, TOAD_LORD_SAC, -1); + takeItems(player, MARSH_SPIDER_THORN, -1); + qs.setCond(9, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case MANDRAGORA_SPROUT1: + case MANDRAGORA_SAPLING: + case MANDRAGORA_BLOSSOM: + case MANDRAGORA_SPROUT2: + { + if (hasQuestItems(killer, RING_OF_TESTIMONY_1ST, BRIGHTS_LIST) && !hasQuestItems(killer, EMILYS_RECIPE)) + { + if ((getQuestItemsCount(killer, MANDRAGORA_PETAL) < 20)) + { + giveItems(killer, MANDRAGORA_PETAL, 1); + if (getQuestItemsCount(killer, MANDRAGORA_PETAL) == 20) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case MARSH_STAKATO: + case MARSH_STAKATO_WORKER: + case MARSH_STAKATO_SOLDIER: + case MARSH_STAKATO_DRONE: + { + if (hasQuestItems(killer, RING_OF_TESTIMONY_2ND, NIKOLAS_LIST) && !hasAtLeastOneQuestItem(killer, CLAY_DOUGH, PATTERN_OF_KEYHOLE)) + { + if ((getQuestItemsCount(killer, STAKATO_SHELL) < 20)) + { + giveItems(killer, STAKATO_SHELL, 1); + if (getQuestItemsCount(killer, STAKATO_SHELL) == 20) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, TOAD_LORD_SAC) >= 10) && (getQuestItemsCount(killer, MARSH_SPIDER_THORN) >= 10)) + { + qs.setCond(8); + } + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case GIANT_CRIMSON_ANT: + { + if (hasQuestItems(killer, RING_OF_TESTIMONY_1ST, BRIGHTS_LIST) && !hasQuestItems(killer, EMILYS_RECIPE)) + { + if ((getQuestItemsCount(killer, CRIMSON_MOSS) < 10)) + { + giveItems(killer, CRIMSON_MOSS, 1); + if (getQuestItemsCount(killer, CRIMSON_MOSS) == 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case TOAD_LORD: + { + if (hasQuestItems(killer, RING_OF_TESTIMONY_2ND, NIKOLAS_LIST) && !hasAtLeastOneQuestItem(killer, CLAY_DOUGH, PATTERN_OF_KEYHOLE)) + { + if ((getQuestItemsCount(killer, TOAD_LORD_SAC) < 10)) + { + giveItems(killer, TOAD_LORD_SAC, 1); + if (getQuestItemsCount(killer, TOAD_LORD_SAC) == 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, STAKATO_SHELL) >= 20) && (getQuestItemsCount(killer, MARSH_SPIDER_THORN) >= 10)) + { + qs.setCond(8); + } + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case MARSH_SPIDER: + { + if (hasQuestItems(killer, RING_OF_TESTIMONY_2ND, NIKOLAS_LIST) && !hasAtLeastOneQuestItem(killer, CLAY_DOUGH, PATTERN_OF_KEYHOLE)) + { + if ((getQuestItemsCount(killer, MARSH_SPIDER_THORN) < 10)) + { + giveItems(killer, MARSH_SPIDER_THORN, 1); + if (getQuestItemsCount(killer, MARSH_SPIDER_THORN) == 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, STAKATO_SHELL) >= 20) && (getQuestItemsCount(killer, TOAD_LORD_SAC) >= 10)) + { + qs.setCond(8); + } + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == WAREHOUSE_KEEPER_PARMAN) + { + if ((player.getRace() == Race.DWARF) && (player.getLevel() >= MIN_LEVEL) && player.isInCategory(CategoryType.DWARF_2ND_GROUP)) + { + htmltext = "30104-03.htm"; + } + else if ((player.getRace() == Race.DWARF) && (player.getLevel() >= MIN_LEVEL)) + { + htmltext = "30104-01a.html"; + } + else if ((player.getRace() == Race.DWARF)) + { + htmltext = "30104-02.html"; + } + else + { + htmltext = "30104-01.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case WAREHOUSE_KEEPER_PARMAN: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST)) + { + if (hasQuestItems(player, OLD_ACCOUNT_BOOK, BLESSED_SEED, EMILYS_RECIPE, LILITHS_ELVEN_WAFER)) + { + htmltext = "30104-06.html"; + } + else + { + htmltext = "30104-05.html"; + } + } + else if (hasQuestItems(player, PARMANS_INSTRUCTIONS)) + { + takeItems(player, PARMANS_INSTRUCTIONS, 1); + giveItems(player, RING_OF_TESTIMONY_2ND, 1); + giveItems(player, PARMANS_LETTER, 1); + qs.setCond(4, true); + htmltext = "30104-10.html"; + } + else if (hasQuestItems(player, RING_OF_TESTIMONY_2ND)) + { + if (hasQuestItems(player, PARMANS_LETTER)) + { + htmltext = "30104-11.html"; + } + else if (hasAtLeastOneQuestItem(player, CLAY_DOUGH, PATTERN_OF_KEYHOLE, NIKOLAS_LIST)) + { + htmltext = "30104-12.html"; + } + else if (hasQuestItems(player, MAPHR_TABLET_FRAGMENT)) + { + giveAdena(player, 217682, true); + giveItems(player, MARK_OF_PROSPERITY, 1); + addExpAndSp(player, 1199958, 80080); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30104-13.html"; + } + } + break; + } + case WAREHOUSE_KEEPER_WILFORD: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST)) + { + if (!hasAtLeastOneQuestItem(player, LILITHS_ELVEN_WAFER, CRYSTAL_BROOCH)) + { + htmltext = "30005-01.html"; + } + else if (hasQuestItems(player, CRYSTAL_BROOCH) && !hasQuestItems(player, LILITHS_ELVEN_WAFER)) + { + htmltext = "30005-05.html"; + } + else if (hasQuestItems(player, LILITHS_ELVEN_WAFER)) + { + htmltext = "30005-06.html"; + } + } + else if (hasQuestItems(player, RING_OF_TESTIMONY_2ND)) + { + htmltext = "30005-07.html"; + } + break; + } + case LILITH: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST)) + { + if (hasQuestItems(player, CRYSTAL_BROOCH) && !hasQuestItems(player, LILITHS_ELVEN_WAFER)) + { + htmltext = "30368-01.html"; + } + else + { + htmltext = "30368-04.html"; + } + } + else if (hasQuestItems(player, RING_OF_TESTIMONY_2ND)) + { + htmltext = "30368-05.html"; + } + break; + } + case GUARD_BRIGHT: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST)) + { + if (!hasAtLeastOneQuestItem(player, EMILYS_RECIPE, BRIGHTS_LIST, MANDRAGORA_BOUGUET)) + { + htmltext = "30466-01.html"; + } + else if (hasQuestItems(player, BRIGHTS_LIST) && !hasQuestItems(player, EMILYS_RECIPE)) + { + if ((getQuestItemsCount(player, MANDRAGORA_PETAL) < 20) || (getQuestItemsCount(player, CRIMSON_MOSS) < 10)) + { + htmltext = "30466-04.html"; + } + else + { + takeItems(player, BRIGHTS_LIST, 1); + takeItems(player, MANDRAGORA_PETAL, -1); + takeItems(player, CRIMSON_MOSS, -1); + giveItems(player, MANDRAGORA_BOUGUET, 1); + htmltext = "30466-05.html"; + } + } + else if (hasQuestItems(player, MANDRAGORA_BOUGUET) && !hasAtLeastOneQuestItem(player, EMILYS_RECIPE, BRIGHTS_LIST)) + { + htmltext = "30466-06.html"; + } + else if (hasQuestItems(player, EMILYS_RECIPE)) + { + htmltext = "30466-07.html"; + } + } + else if (hasQuestItems(player, RING_OF_TESTIMONY_2ND)) + { + htmltext = "30466-08.html"; + } + break; + } + case TRADER_SHARI: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST, COLLECTION_LICENSE)) + { + if (!hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_1ST, CONTRIBUTION_OF_SHARI, LOCKIRINS_1ST_NOTICE)) + { + giveItems(player, CONTRIBUTION_OF_SHARI, 1); + htmltext = "30517-01.html"; + } + else if (hasQuestItems(player, CONTRIBUTION_OF_SHARI) && !hasAtLeastOneQuestItem(player, LOCKIRINS_1ST_NOTICE, RECEIPT_OF_CONTRIBUTION_1ST)) + { + htmltext = "30517-02.html"; + } + } + break; + } + case TRADER_MION: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST, COLLECTION_LICENSE)) + { + if (!hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_2ND, CONTRIBUTION_OF_MION, LOCKIRINS_2ND_NOTICE)) + { + giveItems(player, CONTRIBUTION_OF_MION, 1); + htmltext = "30519-01.html"; + } + else if (hasQuestItems(player, CONTRIBUTION_OF_MION) && !hasAtLeastOneQuestItem(player, LOCKIRINS_2ND_NOTICE, RECEIPT_OF_CONTRIBUTION_2ND)) + { + htmltext = "30519-02.html"; + } + } + break; + } + case IRON_GATES_LOCKIRIN: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST)) + { + if (!hasAtLeastOneQuestItem(player, COLLECTION_LICENSE, OLD_ACCOUNT_BOOK)) + { + htmltext = "30531-01.html"; + } + else if (hasQuestItems(player, COLLECTION_LICENSE)) + { + if (hasQuestItems(player, RECEIPT_OF_CONTRIBUTION_1ST, RECEIPT_OF_CONTRIBUTION_2ND, RECEIPT_OF_CONTRIBUTION_3RD, RECEIPT_OF_CONTRIBUTION_4TH, RECEIPT_OF_CONTRIBUTION_5TH)) + { + giveItems(player, OLD_ACCOUNT_BOOK, 1); + takeItems(player, COLLECTION_LICENSE, 1); + takeItems(player, RECEIPT_OF_CONTRIBUTION_1ST, 1); + takeItems(player, RECEIPT_OF_CONTRIBUTION_2ND, 1); + takeItems(player, RECEIPT_OF_CONTRIBUTION_3RD, 1); + takeItems(player, RECEIPT_OF_CONTRIBUTION_4TH, 1); + takeItems(player, RECEIPT_OF_CONTRIBUTION_5TH, 1); + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(player, BLESSED_SEED, EMILYS_RECIPE, LILITHS_ELVEN_WAFER)) + { + qs.setCond(2, true); + } + htmltext = "30531-05.html"; + } + else + { + htmltext = "30531-04.html"; + } + } + else if (hasQuestItems(player, OLD_ACCOUNT_BOOK) && !hasQuestItems(player, COLLECTION_LICENSE)) + { + htmltext = "30531-06.html"; + } + } + else if (hasQuestItems(player, RING_OF_TESTIMONY_2ND)) + { + htmltext = "30531-07.html"; + } + break; + } + case GOLDEN_WHEELS_SPIRON: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST, COLLECTION_LICENSE)) + { + if (hasQuestItems(player, LOCKIRINS_1ST_NOTICE) && !hasAtLeastOneQuestItem(player, CONTRIBUTION_OF_SHARI, RECEIPT_OF_CONTRIBUTION_1ST)) + { + takeItems(player, LOCKIRINS_1ST_NOTICE, 1); + htmltext = "30532-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_1ST, CONTRIBUTION_OF_SHARI, LOCKIRINS_1ST_NOTICE)) + { + htmltext = "30532-02.html"; + } + else if (hasQuestItems(player, CONTRIBUTION_OF_SHARI) && !hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_1ST, LOCKIRINS_1ST_NOTICE)) + { + takeItems(player, CONTRIBUTION_OF_SHARI, 1); + giveItems(player, RECEIPT_OF_CONTRIBUTION_1ST, 1); + htmltext = "30532-03.html"; + } + else if (hasQuestItems(player, RECEIPT_OF_CONTRIBUTION_1ST) && !hasAtLeastOneQuestItem(player, CONTRIBUTION_OF_SHARI, LOCKIRINS_1ST_NOTICE)) + { + htmltext = "30532-04.html"; + } + } + break; + } + case SILVER_SCALES_BALANKI: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST, COLLECTION_LICENSE)) + { + if (hasQuestItems(player, LOCKIRINS_2ND_NOTICE) && !hasQuestItems(player, RECEIPT_OF_CONTRIBUTION_2ND) && ((getQuestItemsCount(player, CONTRIBUTION_OF_MION) + getQuestItemsCount(player, CONTRIBUTION_OF_MARYSE)) < 2)) + { + takeItems(player, LOCKIRINS_2ND_NOTICE, 1); + htmltext = "30533-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, LOCKIRINS_2ND_NOTICE, RECEIPT_OF_CONTRIBUTION_2ND) && ((getQuestItemsCount(player, CONTRIBUTION_OF_MION) + getQuestItemsCount(player, CONTRIBUTION_OF_MARYSE)) < 2)) + { + htmltext = "30533-02.html"; + } + else if (!hasAtLeastOneQuestItem(player, LOCKIRINS_2ND_NOTICE, RECEIPT_OF_CONTRIBUTION_2ND) && hasQuestItems(player, CONTRIBUTION_OF_MION, CONTRIBUTION_OF_MARYSE)) + { + takeItems(player, CONTRIBUTION_OF_MION, 1); + takeItems(player, CONTRIBUTION_OF_MARYSE, 1); + giveItems(player, RECEIPT_OF_CONTRIBUTION_2ND, 1); + htmltext = "30533-03.html"; + } + else if (!hasQuestItems(player, LOCKIRINS_2ND_NOTICE) && hasQuestItems(player, RECEIPT_OF_CONTRIBUTION_2ND) && !hasQuestItems(player, CONTRIBUTION_OF_MION, CONTRIBUTION_OF_MARYSE)) + { + htmltext = "30533-04.html"; + } + } + break; + } + case BRONZE_KEYS_KEEF: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST, COLLECTION_LICENSE)) + { + if (hasQuestItems(player, LOCKIRINS_3RD_NOTICE) && !hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_3RD, PROCURATION_OF_TOROCCO)) + { + takeItems(player, LOCKIRINS_3RD_NOTICE, 1); + htmltext = "30534-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_3RD, PROCURATION_OF_TOROCCO, LOCKIRINS_3RD_NOTICE)) + { + htmltext = "30534-02.html"; + } + else if (hasQuestItems(player, PROCURATION_OF_TOROCCO) && !hasAtLeastOneQuestItem(player, LOCKIRINS_3RD_NOTICE, RECEIPT_OF_CONTRIBUTION_3RD)) + { + htmltext = "30534-03.html"; + } + else if (hasQuestItems(player, RECEIPT_OF_CONTRIBUTION_3RD) && !hasAtLeastOneQuestItem(player, PROCURATION_OF_TOROCCO, LOCKIRINS_3RD_NOTICE)) + { + htmltext = "30534-04.html"; + } + } + break; + } + case GRAY_PILLAR_MEMBER_FILAUR: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST, COLLECTION_LICENSE)) + { + if (hasQuestItems(player, LOCKIRINS_4TH_NOTICE) && !hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_4TH, RECEIPT_OF_BOLTER)) + { + takeItems(player, LOCKIRINS_4TH_NOTICE, 1); + htmltext = "30535-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_4TH, RECEIPT_OF_BOLTER, LOCKIRINS_4TH_NOTICE)) + { + htmltext = "30535-02.html"; + } + else if (hasQuestItems(player, RECEIPT_OF_BOLTER) && !hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_4TH, LOCKIRINS_4TH_NOTICE)) + { + takeItems(player, RECEIPT_OF_BOLTER, 1); + giveItems(player, RECEIPT_OF_CONTRIBUTION_4TH, 1); + htmltext = "30535-03.html"; + } + else if (hasQuestItems(player, RECEIPT_OF_CONTRIBUTION_4TH) && !hasAtLeastOneQuestItem(player, RECEIPT_OF_BOLTER, LOCKIRINS_4TH_NOTICE)) + { + htmltext = "30535-04.html"; + } + } + break; + } + case BLACK_ANVILS_ARIN: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST, COLLECTION_LICENSE)) + { + if (hasQuestItems(player, LOCKIRINS_5TH_NOTICE) && !hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_5TH, CONTRIBUTION_OF_TOMA)) + { + takeItems(player, LOCKIRINS_5TH_NOTICE, 1); + htmltext = "30536-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_5TH, CONTRIBUTION_OF_TOMA, LOCKIRINS_5TH_NOTICE)) + { + htmltext = "30536-02.html"; + } + else if (hasQuestItems(player, CONTRIBUTION_OF_TOMA) && !hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_5TH, LOCKIRINS_5TH_NOTICE)) + { + takeItems(player, CONTRIBUTION_OF_TOMA, 1); + giveItems(player, RECEIPT_OF_CONTRIBUTION_5TH, 1); + htmltext = "30536-03.html"; + } + else if (hasQuestItems(player, RECEIPT_OF_CONTRIBUTION_5TH) && !hasAtLeastOneQuestItem(player, CONTRIBUTION_OF_TOMA, LOCKIRINS_5TH_NOTICE)) + { + htmltext = "30536-04.html"; + } + } + break; + } + case MARYSE_REDBONNET: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST, COLLECTION_LICENSE)) + { + if (!hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_2ND, CONTRIBUTION_OF_MARYSE, LOCKIRINS_2ND_NOTICE, MARYSES_REQUEST)) + { + giveItems(player, MARYSES_REQUEST, 1); + htmltext = "30553-01.html"; + } + else if (hasQuestItems(player, MARYSES_REQUEST) && !hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_2ND, CONTRIBUTION_OF_MARYSE, LOCKIRINS_2ND_NOTICE)) + { + if (getQuestItemsCount(player, ANIMAL_SKIN) < 10) + { + htmltext = "30553-02.html"; + } + else + { + takeItems(player, ANIMAL_SKIN, 10); + giveItems(player, CONTRIBUTION_OF_MARYSE, 1); + takeItems(player, MARYSES_REQUEST, 1); + htmltext = "30553-03.html"; + } + } + else if (hasQuestItems(player, CONTRIBUTION_OF_MARYSE) && !hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_2ND, LOCKIRINS_2ND_NOTICE, MARYSES_REQUEST)) + { + htmltext = "30553-04.html"; + } + } + break; + } + case MINER_BOLTER: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST, COLLECTION_LICENSE)) + { + if (!hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_4TH, RECEIPT_OF_BOLTER, LOCKIRINS_4TH_NOTICE)) + { + giveItems(player, RECEIPT_OF_BOLTER, 1); + htmltext = "30554-01.html"; + } + else if (hasQuestItems(player, RECEIPT_OF_BOLTER) && !hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_4TH, LOCKIRINS_4TH_NOTICE)) + { + htmltext = "30554-02.html"; + } + } + break; + } + case CARRIER_TOROCCO: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST, COLLECTION_LICENSE)) + { + if (!hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_3RD, PROCURATION_OF_TOROCCO, LOCKIRINS_3RD_NOTICE)) + { + htmltext = "30555-01.html"; + } + else if (hasQuestItems(player, PROCURATION_OF_TOROCCO) && !hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_3RD, LOCKIRINS_3RD_NOTICE)) + { + htmltext = "30555-03.html"; + } + } + break; + } + case MASTER_TOMA: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST, COLLECTION_LICENSE)) + { + if (!hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_5TH, CONTRIBUTION_OF_TOMA, LOCKIRINS_5TH_NOTICE)) + { + giveItems(player, CONTRIBUTION_OF_TOMA, 1); + htmltext = "30556-01.html"; + } + else if (hasQuestItems(player, CONTRIBUTION_OF_TOMA) && !hasAtLeastOneQuestItem(player, RECEIPT_OF_CONTRIBUTION_5TH, LOCKIRINS_5TH_NOTICE)) + { + htmltext = "30556-02.html"; + } + } + break; + } + case PIOTUR: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST)) + { + if (!hasQuestItems(player, BLESSED_SEED)) + { + htmltext = "30597-01.html"; + } + else + { + htmltext = "30597-03.html"; + } + } + else if (hasQuestItems(player, RING_OF_TESTIMONY_2ND)) + { + htmltext = "30597-04.html"; + } + break; + } + case EMILY: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_1ST)) + { + if (hasQuestItems(player, MANDRAGORA_BOUGUET) && !hasAtLeastOneQuestItem(player, EMILYS_RECIPE, BRIGHTS_LIST)) + { + htmltext = "30620-01.html"; + } + else if (hasQuestItems(player, EMILYS_RECIPE)) + { + htmltext = "30620-04.html"; + } + } + else if (hasQuestItems(player, RING_OF_TESTIMONY_2ND)) + { + htmltext = "30620-05.html"; + } + break; + } + case MAESTRO_NIKOLA: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_2ND)) + { + if (!hasAtLeastOneQuestItem(player, CLAY_DOUGH, PATTERN_OF_KEYHOLE, NIKOLAS_LIST, MAPHR_TABLET_FRAGMENT)) + { + takeItems(player, PARMANS_LETTER, 1); + htmltext = "30621-01.html"; + } + else if (hasQuestItems(player, CLAY_DOUGH) && !hasAtLeastOneQuestItem(player, PATTERN_OF_KEYHOLE, NIKOLAS_LIST, MAPHR_TABLET_FRAGMENT)) + { + htmltext = "30621-05.html"; + } + else if (hasQuestItems(player, PATTERN_OF_KEYHOLE) && !hasAtLeastOneQuestItem(player, CLAY_DOUGH, NIKOLAS_LIST, MAPHR_TABLET_FRAGMENT)) + { + giveItems(player, RECIPE_TITAN_KEY, 1); + takeItems(player, PATTERN_OF_KEYHOLE, 1); + giveItems(player, NIKOLAS_LIST, 1); + qs.setCond(7, true); + htmltext = "30621-06.html"; + } + else if (hasQuestItems(player, NIKOLAS_LIST) && !hasAtLeastOneQuestItem(player, CLAY_DOUGH, PATTERN_OF_KEYHOLE, MAPHR_TABLET_FRAGMENT, KEY_OF_TITAN)) + { + htmltext = "30621-07.html"; + } + else if (hasQuestItems(player, NIKOLAS_LIST, KEY_OF_TITAN) && !hasAtLeastOneQuestItem(player, CLAY_DOUGH, PATTERN_OF_KEYHOLE, MAPHR_TABLET_FRAGMENT)) + { + htmltext = "30621-08.html"; + } + else if (hasQuestItems(player, MAPHR_TABLET_FRAGMENT) && !hasAtLeastOneQuestItem(player, CLAY_DOUGH, PATTERN_OF_KEYHOLE, NIKOLAS_LIST)) + { + htmltext = "30621-09.html"; + } + } + break; + } + case BOX_OF_TITAN: + { + if (hasQuestItems(player, RING_OF_TESTIMONY_2ND)) + { + if (hasQuestItems(player, CLAY_DOUGH) && !hasQuestItems(player, PATTERN_OF_KEYHOLE)) + { + htmltext = "30622-01.html"; + } + else if (hasQuestItems(player, KEY_OF_TITAN) && !hasQuestItems(player, MAPHR_TABLET_FRAGMENT)) + { + htmltext = "30622-03.html"; + } + else if (!hasAtLeastOneQuestItem(player, KEY_OF_TITAN, CLAY_DOUGH)) + { + htmltext = "30622-05.html"; + } + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == WAREHOUSE_KEEPER_PARMAN) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-01.html new file mode 100644 index 0000000000..9e04188747 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-01.html @@ -0,0 +1,7 @@ +Duelist Kaien:
+Greetings, young traveler. I am Duelist Kaien.
+The original meaning of the word 'Duelist' was 'Challenger.' It was used to describe those who exhibited their dazzling talents in the arena at Schuttgart. They bathed in the blood of their rivals and regarded that as an honor.
+Now this title is given to those whose skills with the weapon have reached their zenith. It is an honor desired by all that wield a weapon, but only a select few may attain this title, and only after many years of training...
+You may also become a Duelist, but that is something to be discussed in the future... To attempt the trials at your skill level would mean certain death... For now, you must suppress your ambition and concentrate on your training.
+(This quest may only be performed by Warriors, Elven Knights, Palus Knights, and Orc Monks with level 39 and higher.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-02.html new file mode 100644 index 0000000000..b006478e0f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-02.html @@ -0,0 +1,7 @@ +Duelist Kaien:
+Greetings, young traveler. I am Duelist Kaien.
+The original meaning of the word 'Duelist' was 'Challenger.' It was used to describe those who exhibited their dazzling talents in the arena at Schuttgart. They bathed in the blood of their rivals and regarded that as an honor.
+Now this title is given to those whose skills with the weapon have reached their zenith. It is an honor desired by all that wield a weapon, but only a select few may attain this title, and only after many years of training...
+I see that you do not walk the path of the sword. I am sure you don't understand the thrill of combat in which 2 swords meet. You will never be a Duelist.
+(This quest may only be performed by Warriors, Elven Knights, Palus Knights, and Orc Monks with level 39 and higher.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-03.htm new file mode 100644 index 0000000000..32ff74506e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-03.htm @@ -0,0 +1,5 @@ +Duelist Kaien:
+Greetings, young warrior. My name is Kaien and I am a 'Duelist' belonging from the arena at Schuttgart. My quest is to travel the continent to discover talented swordsmen and train them as duelists.
+Though the kingdoms of Elmore and Aden are hostile to one another, that does not influence the affairs of a guild... My wish is to train as many duelists as possible and pass on the splendid tradition of swordsmanship of the Warrior Guild on this continent...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-04.htm new file mode 100644 index 0000000000..af5f4b2044 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-04.htm @@ -0,0 +1,5 @@ +Duelist Kaien:
+Originally the term Duelist meant 'challenger.' It was a term used to refer to those who displayed their dazzling talents in the arena at Schuttgart, who bathed themselves in the blood of their rivals and regarded this as their honor. Now it is a title given to those whose skills with their weapon have reached their zenith. It is an title desired by all that wield a weapon, but only a select few may attain it, and only after many years of training...
+If you desire to obtain the Mark of the Duelist, you must pass the trial that I, Duelist Kaien, give you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-05.htm new file mode 100644 index 0000000000..ed4f396b81 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-05.htm @@ -0,0 +1,7 @@ +Duelist Kaien:
+Greetings, young traveler. I am Duelist Kaien.
+The original meaning of the word 'Duelist' was 'Challenger.' It was used to describe those who exhibited their dazzling talents in the arena at Schuttgart. They bathed in the blood of their rivals and regarded that as an honor.
+Now this title is given to those whose weapons skills have reached their zenith. It is an honor desired by all that wield a weapon, but only a select few may attain this title, and only after many years of training...
+If you wish to obtain the Mark of the Duelist you must pass the trial that I, Duelist Kaien, give you.

+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-06.htm new file mode 100644 index 0000000000..ad6bfec6bc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-06.htm @@ -0,0 +1,6 @@ +Duelist Kaien:
+I have already explained to you the meaning of the word 'Duelist.' The Duelist's Trial consists primarily of defeating in battle the strongest opponents from across the continent. You must burn with desire rather than tremble and crouch in fear when meeting a strong opponent... Strength and bravery are essential.
+According to age-old Duelist traditions, you must 'conquer all the territories of the kingdom'. That is, you must seek out the strongest opponents of each territory of the Aden Kingdom and engage in combat with them. Whoever is victorious in battle against them will be awarded the Mark of the Duelist.
+Are you ready to meet this challenge? I cannot stress enough that this is a very arduous task that will often test the limits of your patience.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-07.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-07.htm new file mode 100644 index 0000000000..e80a401bc5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-07.htm @@ -0,0 +1,6 @@ +Duelist Kaien:
+...I see. Now listen carefully. You must travel to the various territories of the Aden kingdom and repeatedly challenge the strongest opponents. Your must defeat each enemy at least 10 or more times.
+In the past, swordsmen of various territories engaged in bloody combat with each other in order to prove their worth. But these days, since the Warrior Guild banned duels, your opponents will be magical monsters or foreign races that are a threat to the population.
+Here is a list of your opponents. Let's see, first, from Gludio...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-07.html new file mode 100644 index 0000000000..e80a401bc5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-07.html @@ -0,0 +1,6 @@ +Duelist Kaien:
+...I see. Now listen carefully. You must travel to the various territories of the Aden kingdom and repeatedly challenge the strongest opponents. Your must defeat each enemy at least 10 or more times.
+In the past, swordsmen of various territories engaged in bloody combat with each other in order to prove their worth. But these days, since the Warrior Guild banned duels, your opponents will be magical monsters or foreign races that are a threat to the population.
+Here is a list of your opponents. Let's see, first, from Gludio...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-07a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-07a.htm new file mode 100644 index 0000000000..61679f395b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-07a.htm @@ -0,0 +1,7 @@ +Duelist Kaien:
+I see. First, take this Dimension Diamond. You can trade it to the village gatekeeper for something special that may help you on your journey.
+Now listen to me carefully. You must visit each territory of Aden and prove your skill against the best opponents you find. Your task is to defeat each adversary more than 10 times.
+In the past, the swordsman from each territory engaged in bloody mortal combat to prove their skills, but the Warrior Guild has since banned unauthorized duels. That means the adversaries you will face are now limited to evil creatures or different races that threaten the common peace.
+Your strongest enemies are specific in a particular sequence. First of all, in Gludio territory . . . wait, would you like me to go on?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-08.html new file mode 100644 index 0000000000..5261cc30a9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-08.html @@ -0,0 +1,5 @@ +Duelist Kaien:
+In Gludio you must face the puncher and noble ant leader. Punchers can be found in the Wastelands of southern Gludio. To find noble ants, you must go inside the Ant Nest of the Wastelands. I'm sure that with your skills you can adequately protect yourself...
+Bring back 10 puncher shards and 10 noble ant feelers!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-09.html new file mode 100644 index 0000000000..2c34fdb7b6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-09.html @@ -0,0 +1,5 @@ +Duelist Kaien:
+The masters of the Warrior guild and I have determined that your first opponent shall be the marsh stakato drone and the dead seeker in the territory of Dion.
+Marsh stakato drones are the nobles of the stakato race that live in the Cruma marshlands. You will find the dead seekers at the execution grounds. As a mark of your victory you must bring back 10 each of the stakato Drone's Chitin and dead seeker's fangs.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-10.html new file mode 100644 index 0000000000..46ee007666 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-10.html @@ -0,0 +1,5 @@ +Duelist Kaien:
+In Giran you must seek the Breka Orc overlords and fettered souls. The Breka Orc tribe wields considerable power in northern Giran, and they are led by the Breka Orc overlords. Fettered souls are undead that appear in the 'Death Pass,' the path connecting Giran and Oren.
+You must bring back 10 Breka Orc Overlord Necklaces and 10 Fettered Soul's Chains as proof.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-11.html new file mode 100644 index 0000000000..4f60098603 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-11.html @@ -0,0 +1,5 @@ +Duelist Kaien:
+I personally selected your opponents for the trial in Oren. First you shall fight the Leto Lizardman overlord that lives in the southern regions of Oren, and your second opponent will be the enchanted monster eye that wanders the area surrounding the Ivory Tower of Oren. Stay alert, as both are formidable enemies!
+Bring back 10 Leto Lizardman Amulets, and 10 pieces of Enchanted Eye Meat.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-12.html new file mode 100644 index 0000000000..fe4c5962e6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-12.html @@ -0,0 +1,6 @@ +Duelist Kaien:
+Last of all you must visit the territory of Aden... This territory is under martial law and many areas are off limits...
+In the southern region of Aden, you will find the Tamlin Orcs. Defeat them and the Tamlin Orc Archers. Bring back 10 Tamlin Orc rings and 10 Tamlin Orc arrows.
+Do you remember your mission in each territory? Always remember this motto: "I shall not surrender, I shall be victorious..." One day the Mark will be yours.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-13.html new file mode 100644 index 0000000000..fd735b696a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-13.html @@ -0,0 +1,5 @@ +Duelist Kaien:
+I am too tired to count. I will trust that you completed the assignment so far. You did well, but I would have been able to complete this task in a single day. The Duelist's Trial is not yet over, so do not get ahead of yourself.
+The hard part begins now. Are you ready to attempt the final trial?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-14.html new file mode 100644 index 0000000000..3bc85bfdff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-14.html @@ -0,0 +1,4 @@ +Duelist Kaien:
+You are quicker than I thought you were! Good, now let's see...
+Hmmm...You're still short. Tired already? If you're worn out, you can quit the trial at any time. Even if you do not become a Duelist, you may still be able to carve your own path... Defeats are forgotten with the passage of time... What, you don't care for the sound of that? Then don't just stand there, go and finish the trial! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-15.html new file mode 100644 index 0000000000..4f9b59e1be --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-15.html @@ -0,0 +1,5 @@ +Duelist Kaien:
+So you do not know the meaning of defeat... Good... then you are halfway there! Already you have conquered each territory. Now you must become the champion of each kingdom, that is to say, 'Conquer the Kingdom'... The previous trial may have been difficult, but this time it will be twice as challenging.
+The opponent in this trial has been chosen by all the grand masters in the kingdom. You must achieve 3 victories from 1 opponent... That in itself is not an easy task. If you find it difficult to accomplish alone you may ask your fellow members to assist you. You will still get the credit for a victory should you succeed. Of course, your opponent will be much more difficult...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-16.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-16.html new file mode 100644 index 0000000000..5a96941f5d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-16.html @@ -0,0 +1,7 @@ +Duelist Kaien:
+First you must slay the Excuro and the Krator from the Cruma Tower. As a proof of your victory, bring back 3 Excuro Skins and 3 Krator Fragments. I trust that I don't need to explain about the dangers of the Cruma Tower?
+After this you must go to the Death Pass in Giran and fight the Grandis. Perhaps you have already heard of the savagery of the Grandis?
+Next find the Timak Orc Overlord from the western region of Oren and challenge him. The Timak Orcs are a strong race, strong enough to hold their own against the guards of the Oren Lord. Furthermore, your opponent is the Warlord, so it will be best to view his skills as equal to that of the strongest warrior.
+Finally, you must slay the Lakin that wanders through all of Aden. It is a giant, violent animal, so make sure you are prepared. It would be good to have a trusted friend watching your back.
+These orders contain a list of the opponents you must defeat, so consult them if needed. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-17.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-17.html new file mode 100644 index 0000000000..5b12609477 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-17.html @@ -0,0 +1,3 @@ +Duelist Kaien:
+Certainly you are not finished with the trial yet! Why do you seek me? Do not come to me again until you have defeated all of the opponents on the list at least 3 times. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-18.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-18.html new file mode 100644 index 0000000000..d7d7949680 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/30623-18.html @@ -0,0 +1,4 @@ +Duelist Kaien:
+You have defeated all of the opponents of the final trial...! Excellent! Now not only have you conquered all of the territories of Aden, but also Aden itself! Magnificent! I, Duelist Kaien, hereby acknowledge your skills and talents and bestow upon you the Mark of the Duelist. Congratulations!
+If you practice swordsmanship regularly, one day you may have the chance to draw against me... I shall wait for that day! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/Q00222_TestOfTheDuelist.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/Q00222_TestOfTheDuelist.java new file mode 100644 index 0000000000..266bb23240 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00222_TestOfTheDuelist/Q00222_TestOfTheDuelist.java @@ -0,0 +1,518 @@ +/* + * 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.Q00222_TestOfTheDuelist; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Test Of The Duelist (222) + * @author ivantotov + */ +public final class Q00222_TestOfTheDuelist extends Quest +{ + // NPC + private static final int DUELIST_KAIEN = 30623; + // Items + private static final int ORDER_GLUDIO = 2763; + private static final int ORDER_DION = 2764; + private static final int ORDER_GIRAN = 2765; + private static final int ORDER_OREN = 2766; + private static final int ORDER_ADEN = 2767; + private static final int PUNCHERS_SHARD = 2768; + private static final int NOBLE_ANTS_FEELER = 2769; + private static final int DRONES_CHITIN = 2770; + private static final int DEAD_SEEKER_FANG = 2771; + private static final int OVERLORD_NECKLACE = 2772; + private static final int FETTERED_SOULS_CHAIN = 2773; + private static final int CHIEDS_AMULET = 2774; + private static final int ENCHANTED_EYE_MEAT = 2775; + private static final int TAMRIN_ORCS_RING = 2776; + private static final int TAMRIN_ORCS_ARROW = 2777; + private static final int FINAL_ORDER = 2778; + private static final int EXCUROS_SKIN = 2779; + private static final int KRATORS_SHARD = 2780; + private static final int GRANDIS_SKIN = 2781; + private static final int TIMAK_ORCS_BELT = 2782; + private static final int LAKINS_MACE = 2783; + // Reward + private static final int MARK_OF_DUELIST = 2762; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monster + private static final int PUNCHER = 20085; + private static final int NOBLE_ANT_LEADER = 20090; + private static final int DEAD_SEEKER = 20202; + private static final int EXCURO = 20214; + private static final int KRATOR = 20217; + private static final int MARSH_STAKATO_DRONE = 20234; + private static final int BREKA_ORC_OVERLORD = 20270; + private static final int FETTERED_SOUL = 20552; + private static final int GRANDIS = 20554; + private static final int ENCHANTED_MONSTEREYE = 20564; + private static final int LETO_LIZARDMAN_OVERLORD = 20582; + private static final int TIMAK_ORC_OVERLORD = 20588; + private static final int TAMLIN_ORC = 20601; + private static final int TAMLIN_ORC_ARCHER = 20602; + private static final int LAKIN = 20604; + // Misc + private static final int MIN_LEVEL = 39; + + public Q00222_TestOfTheDuelist() + { + super(222); + addStartNpc(DUELIST_KAIEN); + addTalkId(DUELIST_KAIEN); + addKillId(PUNCHER, NOBLE_ANT_LEADER, DEAD_SEEKER, EXCURO, KRATOR, MARSH_STAKATO_DRONE, BREKA_ORC_OVERLORD, FETTERED_SOUL, GRANDIS, ENCHANTED_MONSTEREYE, LETO_LIZARDMAN_OVERLORD, TIMAK_ORC_OVERLORD, TAMLIN_ORC, TAMLIN_ORC_ARCHER, LAKIN); + registerQuestItems(ORDER_GLUDIO, ORDER_DION, ORDER_GIRAN, ORDER_OREN, ORDER_ADEN, PUNCHERS_SHARD, NOBLE_ANTS_FEELER, DRONES_CHITIN, DEAD_SEEKER_FANG, OVERLORD_NECKLACE, FETTERED_SOULS_CHAIN, CHIEDS_AMULET, ENCHANTED_EYE_MEAT, TAMRIN_ORCS_RING, TAMRIN_ORCS_ARROW, FINAL_ORDER, EXCUROS_SKIN, KRATORS_SHARD, GRANDIS_SKIN, TIMAK_ORCS_BELT, LAKINS_MACE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + qs.setMemoState(1); + giveItems(player, ORDER_GLUDIO, 1); + giveItems(player, ORDER_DION, 1); + giveItems(player, ORDER_GIRAN, 1); + giveItems(player, ORDER_OREN, 1); + giveItems(player, ORDER_ADEN, 1); + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + if (player.getClassId() == ClassId.PALUS_KNIGHT) + { + giveItems(player, DIMENSIONAL_DIAMOND, 104); + } + else + { + giveItems(player, DIMENSIONAL_DIAMOND, 72); + } + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30623-07a.htm"; + } + else + { + htmltext = "30623-07.htm"; + } + } + break; + } + case "30623-04.htm": + { + if (player.getRace() != Race.ORC) + { + htmltext = event; + } + else + { + htmltext = "30623-05.htm"; + } + break; + } + case "30623-06.htm": + case "30623-07.html": + case "30623-09.html": + case "30623-10.html": + case "30623-11.html": + case "30623-12.html": + case "30623-15.html": + { + htmltext = event; + break; + } + case "30623-08.html": + { + qs.setCond(2, true); + htmltext = event; + break; + } + case "30623-16.html": + { + takeItems(player, PUNCHERS_SHARD, -1); + takeItems(player, NOBLE_ANTS_FEELER, -1); + takeItems(player, DEAD_SEEKER_FANG, -1); + takeItems(player, DRONES_CHITIN, -1); + takeItems(player, OVERLORD_NECKLACE, -1); + takeItems(player, FETTERED_SOULS_CHAIN, -1); + takeItems(player, CHIEDS_AMULET, -1); + takeItems(player, ENCHANTED_EYE_MEAT, -1); + takeItems(player, TAMRIN_ORCS_RING, -1); + takeItems(player, TAMRIN_ORCS_ARROW, -1); + takeItems(player, ORDER_GLUDIO, 1); + takeItems(player, ORDER_DION, 1); + takeItems(player, ORDER_GIRAN, 1); + takeItems(player, ORDER_OREN, 1); + takeItems(player, ORDER_ADEN, 1); + giveItems(player, FINAL_ORDER, 1); + qs.setMemoState(2); + qs.setCond(4, true); + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case PUNCHER: + { + if (qs.isMemoState(1) && hasQuestItems(killer, ORDER_GLUDIO)) + { + final int i0 = qs.getMemoStateEx(1); + qs.setMemoStateEx(1, i0 + 1); + if (giveItemRandomly(killer, npc, PUNCHERS_SHARD, 1, 10, 1.0, true) && (getQuestItemsCount(killer, NOBLE_ANTS_FEELER, DRONES_CHITIN, DEAD_SEEKER_FANG, OVERLORD_NECKLACE, FETTERED_SOULS_CHAIN, CHIEDS_AMULET, ENCHANTED_EYE_MEAT, TAMRIN_ORCS_RING, TAMRIN_ORCS_ARROW) == 90)) + { + if (i0 >= 9) + { + qs.setCond(3); + } + qs.setMemoStateEx(1, 0); + } + } + break; + } + case NOBLE_ANT_LEADER: + { + if (qs.isMemoState(1) && hasQuestItems(killer, ORDER_GLUDIO)) + { + final int i0 = qs.getMemoStateEx(1); + qs.setMemoStateEx(1, i0 + 1); + if (giveItemRandomly(killer, npc, NOBLE_ANTS_FEELER, 1, 10, 1.0, true) && (getQuestItemsCount(killer, PUNCHERS_SHARD, DRONES_CHITIN, DEAD_SEEKER_FANG, OVERLORD_NECKLACE, FETTERED_SOULS_CHAIN, CHIEDS_AMULET, ENCHANTED_EYE_MEAT, TAMRIN_ORCS_RING, TAMRIN_ORCS_ARROW) == 90)) + { + if (i0 >= 9) + { + qs.setCond(3); + } + qs.setMemoStateEx(1, 0); + } + } + break; + } + case DEAD_SEEKER: + { + if (qs.isMemoState(1) && hasQuestItems(killer, ORDER_DION)) + { + final int i0 = qs.getMemoStateEx(1); + qs.setMemoStateEx(1, i0 + 1); + if (giveItemRandomly(killer, npc, DEAD_SEEKER_FANG, 1, 10, 1.0, true) && (getQuestItemsCount(killer, PUNCHERS_SHARD, NOBLE_ANTS_FEELER, DRONES_CHITIN, OVERLORD_NECKLACE, FETTERED_SOULS_CHAIN, CHIEDS_AMULET, ENCHANTED_EYE_MEAT, TAMRIN_ORCS_RING, TAMRIN_ORCS_ARROW) == 90)) + { + if (i0 >= 9) + { + qs.setCond(3); + } + qs.setMemoStateEx(1, 0); + } + } + break; + } + case EXCURO: + { + + if (qs.isMemoState(2) && hasQuestItems(killer, FINAL_ORDER)) + { + final int i0 = qs.getMemoStateEx(1); + qs.setMemoStateEx(1, i0 + 1); + if (giveItemRandomly(killer, npc, EXCUROS_SKIN, 1, 3, 1.0, true) && (getQuestItemsCount(killer, KRATORS_SHARD, LAKINS_MACE, GRANDIS_SKIN, TIMAK_ORCS_BELT) == 12)) + { + if (i0 >= 5) + { + qs.setCond(5); + } + qs.setMemoStateEx(1, 0); + } + } + break; + } + case KRATOR: + { + if (qs.isMemoState(2) && hasQuestItems(killer, FINAL_ORDER)) + { + final int i0 = qs.getMemoStateEx(1); + qs.setMemoStateEx(1, i0 + 1); + if (giveItemRandomly(killer, npc, KRATORS_SHARD, 1, 3, 1.0, true) && (getQuestItemsCount(killer, EXCUROS_SKIN, LAKINS_MACE, GRANDIS_SKIN, TIMAK_ORCS_BELT) == 12)) + { + if (i0 >= 5) + { + qs.setCond(5); + } + qs.setMemoStateEx(1, 0); + } + } + break; + } + case MARSH_STAKATO_DRONE: + { + if (qs.isMemoState(1) && hasQuestItems(killer, ORDER_DION)) + { + final int i0 = qs.getMemoStateEx(1); + qs.setMemoStateEx(1, i0 + 1); + if (giveItemRandomly(killer, npc, DRONES_CHITIN, 1, 10, 1.0, true) && (getQuestItemsCount(killer, PUNCHERS_SHARD, NOBLE_ANTS_FEELER, DEAD_SEEKER_FANG, OVERLORD_NECKLACE, FETTERED_SOULS_CHAIN, CHIEDS_AMULET, ENCHANTED_EYE_MEAT, TAMRIN_ORCS_RING, TAMRIN_ORCS_ARROW) == 90)) + { + if (i0 >= 9) + { + qs.setCond(3); + } + qs.setMemoStateEx(1, 0); + } + } + break; + } + case BREKA_ORC_OVERLORD: + { + if (qs.isMemoState(1) && hasQuestItems(killer, ORDER_GIRAN)) + { + final int i0 = qs.getMemoStateEx(1); + qs.setMemoStateEx(1, i0 + 1); + if (giveItemRandomly(killer, npc, OVERLORD_NECKLACE, 1, 10, 1.0, true) && (getQuestItemsCount(killer, PUNCHERS_SHARD, NOBLE_ANTS_FEELER, DRONES_CHITIN, DEAD_SEEKER_FANG, FETTERED_SOULS_CHAIN, CHIEDS_AMULET, ENCHANTED_EYE_MEAT, TAMRIN_ORCS_RING, TAMRIN_ORCS_ARROW) == 90)) + { + if (i0 >= 9) + { + qs.setCond(3); + } + qs.setMemoStateEx(1, 0); + } + } + break; + } + case FETTERED_SOUL: + { + if (qs.isMemoState(1) && hasQuestItems(killer, ORDER_GIRAN)) + { + final int i0 = qs.getMemoStateEx(1); + qs.setMemoStateEx(1, i0 + 1); + if (giveItemRandomly(killer, npc, FETTERED_SOULS_CHAIN, 1, 10, 1.0, true) && (getQuestItemsCount(killer, PUNCHERS_SHARD, NOBLE_ANTS_FEELER, DRONES_CHITIN, DEAD_SEEKER_FANG, OVERLORD_NECKLACE, CHIEDS_AMULET, ENCHANTED_EYE_MEAT, TAMRIN_ORCS_RING, TAMRIN_ORCS_ARROW) == 90)) + { + if (i0 >= 9) + { + qs.setCond(3); + } + qs.setMemoStateEx(1, 0); + } + } + break; + } + case GRANDIS: + { + if (qs.isMemoState(2) && hasQuestItems(killer, FINAL_ORDER)) + { + final int i0 = qs.getMemoStateEx(1); + qs.setMemoStateEx(1, i0 + 1); + if (giveItemRandomly(killer, npc, GRANDIS_SKIN, 1, 3, 1.0, true) && (getQuestItemsCount(killer, EXCUROS_SKIN, KRATORS_SHARD, LAKINS_MACE, TIMAK_ORCS_BELT) == 12)) + { + if (i0 >= 5) + { + qs.setCond(5); + } + qs.setMemoStateEx(1, 0); + } + } + break; + } + case ENCHANTED_MONSTEREYE: + { + if (qs.isMemoState(1) && hasQuestItems(killer, ORDER_OREN)) + { + final int i0 = qs.getMemoStateEx(1); + qs.setMemoStateEx(1, i0 + 1); + if (giveItemRandomly(killer, npc, ENCHANTED_EYE_MEAT, 1, 10, 1.0, true) && (getQuestItemsCount(killer, PUNCHERS_SHARD, NOBLE_ANTS_FEELER, DRONES_CHITIN, DEAD_SEEKER_FANG, OVERLORD_NECKLACE, FETTERED_SOULS_CHAIN, CHIEDS_AMULET, TAMRIN_ORCS_RING, TAMRIN_ORCS_ARROW) == 90)) + { + if (i0 >= 9) + { + qs.setCond(3); + } + qs.setMemoStateEx(1, 0); + } + } + break; + } + case LETO_LIZARDMAN_OVERLORD: + { + if (qs.isMemoState(1) && hasQuestItems(killer, ORDER_OREN)) + { + final int i0 = qs.getMemoStateEx(1); + qs.setMemoStateEx(1, i0 + 1); + if (giveItemRandomly(killer, npc, CHIEDS_AMULET, 1, 10, 1.0, true) && (getQuestItemsCount(killer, PUNCHERS_SHARD, NOBLE_ANTS_FEELER, DRONES_CHITIN, DEAD_SEEKER_FANG, OVERLORD_NECKLACE, FETTERED_SOULS_CHAIN, ENCHANTED_EYE_MEAT, TAMRIN_ORCS_RING, TAMRIN_ORCS_ARROW) == 90)) + { + if (i0 >= 9) + { + qs.setCond(3); + } + qs.setMemoStateEx(1, 0); + } + } + break; + } + case TIMAK_ORC_OVERLORD: + { + if (qs.isMemoState(2) && hasQuestItems(killer, FINAL_ORDER)) + { + final int i0 = qs.getMemoStateEx(1); + qs.setMemoStateEx(1, i0 + 1); + if (giveItemRandomly(killer, npc, TIMAK_ORCS_BELT, 1, 3, 1.0, true) && (getQuestItemsCount(killer, EXCUROS_SKIN, KRATORS_SHARD, LAKINS_MACE, GRANDIS_SKIN) == 12)) + { + if (i0 >= 5) + { + qs.setCond(5); + } + qs.setMemoStateEx(1, 0); + } + } + break; + } + case TAMLIN_ORC: + { + if (qs.isMemoState(1) && hasQuestItems(killer, ORDER_ADEN)) + { + final int i0 = qs.getMemoStateEx(1); + qs.setMemoStateEx(1, i0 + 1); + if (giveItemRandomly(killer, npc, TAMRIN_ORCS_RING, 1, 10, 1.0, true) && (getQuestItemsCount(killer, PUNCHERS_SHARD, NOBLE_ANTS_FEELER, DRONES_CHITIN, DEAD_SEEKER_FANG, OVERLORD_NECKLACE, FETTERED_SOULS_CHAIN, CHIEDS_AMULET, ENCHANTED_EYE_MEAT, TAMRIN_ORCS_ARROW) == 90)) + { + if (i0 >= 9) + { + qs.setCond(3); + } + qs.setMemoStateEx(1, 0); + } + } + break; + } + case TAMLIN_ORC_ARCHER: + { + if (qs.isMemoState(1) && hasQuestItems(killer, ORDER_ADEN)) + { + final int i0 = qs.getMemoStateEx(1); + qs.setMemoStateEx(1, i0 + 1); + if (giveItemRandomly(killer, npc, TAMRIN_ORCS_ARROW, 1, 10, 1.0, true) && (getQuestItemsCount(killer, PUNCHERS_SHARD, NOBLE_ANTS_FEELER, DRONES_CHITIN, DEAD_SEEKER_FANG, OVERLORD_NECKLACE, FETTERED_SOULS_CHAIN, CHIEDS_AMULET, ENCHANTED_EYE_MEAT, TAMRIN_ORCS_RING) == 90)) + { + if (i0 >= 9) + { + qs.setCond(3); + } + qs.setMemoStateEx(1, 0); + } + } + break; + } + case LAKIN: + { + if (qs.isMemoState(2) && hasQuestItems(killer, FINAL_ORDER)) + { + final int i0 = qs.getMemoStateEx(1); + qs.setMemoStateEx(1, i0 + 1); + if (giveItemRandomly(killer, npc, LAKINS_MACE, 1, 3, 1.0, true) && (getQuestItemsCount(killer, EXCUROS_SKIN, KRATORS_SHARD, GRANDIS_SKIN, TIMAK_ORCS_BELT) == 12)) + { + if (i0 >= 5) + { + qs.setCond(5); + } + qs.setMemoStateEx(1, 0); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if ((player.getClassId() == ClassId.WARRIOR) || (player.getClassId() == ClassId.ELVEN_KNIGHT) || (player.getClassId() == ClassId.PALUS_KNIGHT) || (player.getClassId() == ClassId.ORC_MONK)) + { + if (player.getLevel() >= MIN_LEVEL) + { + htmltext = "30623-03.htm"; + } + else + { + htmltext = "30623-01.html"; + } + } + else + { + htmltext = "30623-02.html"; + } + } + else if (qs.isStarted()) + { + if (hasQuestItems(player, ORDER_GLUDIO, ORDER_DION, ORDER_GIRAN, ORDER_OREN, ORDER_ADEN)) + { + if (getQuestItemsCount(player, PUNCHERS_SHARD, NOBLE_ANTS_FEELER, DRONES_CHITIN, DEAD_SEEKER_FANG, OVERLORD_NECKLACE, FETTERED_SOULS_CHAIN, CHIEDS_AMULET, ENCHANTED_EYE_MEAT, TAMRIN_ORCS_RING, TAMRIN_ORCS_ARROW) == 100) + { + htmltext = "30623-13.html"; + } + else + { + htmltext = "30623-14.html"; + } + } + else if (hasQuestItems(player, FINAL_ORDER)) + { + if (getQuestItemsCount(player, EXCUROS_SKIN, KRATORS_SHARD, LAKINS_MACE, GRANDIS_SKIN, TIMAK_ORCS_BELT) == 15) + { + giveAdena(player, 161806, true); + giveItems(player, MARK_OF_DUELIST, 1); + addExpAndSp(player, 894888, 61408); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30623-18.html"; + } + else + { + htmltext = "30623-17.html"; + } + } + } + else if (qs.isCompleted()) + { + htmltext = getAlreadyCompletedMsg(player); + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-01.html new file mode 100644 index 0000000000..1a7ed698cb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-01.html @@ -0,0 +1,5 @@ +Trader Groot:
+I see that you are a follower of Ascalon. Seeing a strong warrior like you brings back memories. Like Ascalon, I was once a member of the Steel Rose Mercenaries. When I was young, I studied herbology and first aid in the temple and used these skills to become a medic for the troop. Of course, occasionally I also wielded a spear and joined the battle.
+These days I am retired and run a small shop. Ascalon still comes around and asks me to make medicine and Antidotes for the village guards from time to time.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-02.html new file mode 100644 index 0000000000..ad13d11c52 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-02.html @@ -0,0 +1,5 @@ +Trader Groot:
+Ah! Thank you so very much. This is such a blessing, as I was badly needing help. Could you do me one more favor? I must gather Antidote ingredients.
+I am concerned about the increase in the number of soldiers poisoned by Medusa's Venom, but near destruction? That's a serious exaggeration.
+In order to create the Antidote, I will need 3 ingredients. They are the Harpy's Egg, Medusa Venom, and Windsus' Bile. There is no need to search afar for these ingredients, they are all quite common right here in Giran. I know that there are an abundance of Windsus near the Death Pass and many harpies and medusa can be found in the Gorgon Flower Garden. Please gather 30 each of the ingredients. Thank you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-03.html new file mode 100644 index 0000000000..f34b459c34 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-03.html @@ -0,0 +1,3 @@ +Trader Groot:
+As I said, you will need 3 ingredients to treat Medusa's Venom poisoning. You will need 30 each of the Harpy's Eggs, Medusa Venom, and Windsus' bile. I know it is a lot to ask, but I desperately need your help. Please gather all the ingredients for me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-04.html new file mode 100644 index 0000000000..06d6f5cdb9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-04.html @@ -0,0 +1,3 @@ +Trader Groot:
+Thank you so much for gathering these ingredients for me.. Now I will create the Antidote and deliver it to the temple and the guards. I felt as if I was growing too old to be of any use, but thanks to you I am able to contribute to the defense of my beloved Giran! I am indebted to you... Here is a letter explaining my gratitude. Please take it to Ascalon. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-05.html new file mode 100644 index 0000000000..a42a06f893 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-05.html @@ -0,0 +1,3 @@ +Trader Groot:
+Although I am too old for battle I am satisfied in knowing that my talents may be of help in protecting Giran. This is all thanks to you. Please give Ascalon my regards when you see him. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-06.html new file mode 100644 index 0000000000..b97b394229 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30093-06.html @@ -0,0 +1,3 @@ +Trader Groot:
+There is dark news from Ascalon. The entire kingdom is in peril! Warriors like yourself must now join the battle to save our land! I shall do everything I can to help. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-01.html new file mode 100644 index 0000000000..d454b8c4fe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-01.html @@ -0,0 +1,4 @@ +Captain Mouen:
+This letter...? Wow, from Ascalon!?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-02.html new file mode 100644 index 0000000000..eaf187a85c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-02.html @@ -0,0 +1,4 @@ +Captain Mouen:
+Ascalon was my teacher when I was young. At one time he was a good soldier, but now he is very old and his mind wanders. Age has begun to tell on him... But he is like a father to me, and I won't go against what he says. Nowadays he seems to be suffering from the delusion that only he can save the kingdom from destruction. I am very worried about him...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-03.html new file mode 100644 index 0000000000..d40e1b25ef --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-03.html @@ -0,0 +1,4 @@ +Captain Mouen:
+The Road Scavengers may not be the great threat to the kingdom that my superior makes them out to be, but they certainly are troublesome. They prey on merchants traveling between Oren and Giran.
+Your orders are to wipe out those troublesome thieves. Go to Death Pass and slay all you find. But watch out for surprise attacks! If you bring me 10 Road Scavenger heads, I will write a letter commending you for your service to the kingdom. That will surely help advance your career... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-04.html new file mode 100644 index 0000000000..abe743fb03 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-04.html @@ -0,0 +1,3 @@ +Captain Mouen:
+Go to Death Pass and slay all the Road Scavengers you find. But be wary of surprise attacks! If you bring me 10 Road Scavenger heads, I will write a letter saying that you saved the kingdom. Our superior will be pleased to see such a letter... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-05.html new file mode 100644 index 0000000000..fcefb9d817 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-05.html @@ -0,0 +1,4 @@ +Captain Mouen:
+We are in trouble! It turns out to be that the road scavengers that you killed were an instrument of the Leto Lizardmen! Now the lizardmen are planning an attack on Giran Castle! Ascalon must have been right. We must strike the first blow! Many troops are already on their way. Please join them in the fight!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-06.html new file mode 100644 index 0000000000..0b829c901c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-06.html @@ -0,0 +1,3 @@ +Captain Mouen:
+Ahem! Slay the Leto Lizardmen and bring me their fangs as evidence. Bring 10 Leto Lizardman Fangs and no one will be able to dispute your victory. Do this and Ascalon will be very pleased! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-07.html new file mode 100644 index 0000000000..4e4de1b903 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-07.html @@ -0,0 +1,3 @@ +Captain Mouen:
+Destroy the Leto Lizardmen troops! Then collect and bring me 10 fangs from the fallen Lizardmen. No one will be able to dispute your victory if you bring me 10 fangs! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-08.html new file mode 100644 index 0000000000..6b243529ee --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-08.html @@ -0,0 +1,3 @@ +Captain Mouen:
+Congratulations on your success, Warrior. You have been a remarkable help in the defeat of the Leto Lizardmen threatening the town of Giran. Word has already spread throughout the kingdom of your achievement. Now take this letter with you and go back to Ascalon. I'll wager that your teacher will be pleased to read it. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-09.html new file mode 100644 index 0000000000..a63862680e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30196-09.html @@ -0,0 +1,3 @@ +Captain Mouen:
+Ascalon can now retire in peace knowing that the future of the kingdom is in the hands of noble Warriors like you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-01.html new file mode 100644 index 0000000000..be4327d964 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-01.html @@ -0,0 +1,5 @@ +Veteran Ascalon:
+Would you like to hear stories of my splendid past? In my youth I was a soldier of fortune, wandering freely, fighting aliens and making love to women with foreign names. There were some hard times, but my blazing warrior spirit kept me going. The deep brotherhood among comrades, struggles, fierce battles, love, romance, I experienced it all. I was truly a warrior.
+But now I am old. If I could find a talented young person to succeed me, I would retire in peace. Is there a righteous and talented youngster among your friends? If you know of such a person, please recommend him or her to me.
+(Quest for Warriors and Orc Raiders, level 39 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-02.html new file mode 100644 index 0000000000..a776e3ea24 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-02.html @@ -0,0 +1,5 @@ +Veteran Ascalon:
+Would you like to hear stories of my splendid past? In my youth I was a soldier of fortune, wandering freely, fighting aliens and making love to women with foreign names. There were some hard times, but my blazing warrior spirit kept me going. The deep brotherhood among comrades, struggles, fierce battles, love, romance, I experienced it all. I was truly a warrior.
+But now I am old. If I could find a talented young person to succeed me, I would retire in peace. If only you could enhance your skills a bit, you could be the one to succeed me. What do you think? Please come back to me after you have improved your skills.
+(Quest for Warriors and Orc Raiders, level 39 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-03.htm new file mode 100644 index 0000000000..06b715f23d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-03.htm @@ -0,0 +1,5 @@ +Veteran Ascalon:
+Would you like to hear stories of my splendid past? In my youth I was a soldier of fortune, wandering freely, fighting aliens and making love to women with foreign names. There were some hard times, but my blazing Warrior spirit kept me going. The deep brotherhood among comrades, struggles, fierce battles, love, romance, I experienced it all. I was truly a Warrior.
+But now I am old. If I could find a talented young fellow to succeed me, I would retire in peace. I see that you are a strong young Warrior, what do you think? Will you attempt the Test of the Champion?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-04.html new file mode 100644 index 0000000000..29610d3bf5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-04.html @@ -0,0 +1,6 @@ +Veteran Ascalon:
+Oops! Aren't you an Orc? You look strong, for sure. Are you a Warrior by any chance? Or perhaps a hired soldier? You remind me of my younger days when I used to work as a hired soldier...
+Would you like to hear stories of my splendid past? In my youth I was a soldier of fortune, wandering freely, fighting aliens and making love to women with foreign names. There were some hard times, but my blazing Warrior spirit kept me going. The deep brotherhood among comrades, struggles, fierce battles, love, romance, I experienced it all. I was truly a Warrior.
+But now I am old. If I could find a talented young fellow to succeed me, I would retire in peace. I can see that you are quite a well-trained Warrior, what do you say? Will you attempt the Test of the Champion?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-05.htm new file mode 100644 index 0000000000..6d752860da --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-05.htm @@ -0,0 +1,5 @@ +Veteran Ascalon:
+Things are not so different from the time when I was an active soldier. Perhaps a bit more chaotic and violent. The Blue Shark, the Black Lion, the Storm Blade and the Iron Rose which I belonged to... Many soldiers are battling alien armies in many different locations at the moment. There has never been a time in history when the aliens were so bellicose.
The leaders of each tribe, and the Masters, Magisters and Priests from many other guilds are all complaining that the situation now is very unnatural. All the secret agents from every domain are looking behind the scenes, but for now we have no choice but to face the aliens and destroy them in order to protect ourselves.
+I wish to do something useful before I retire. Although I am too weak to participate in the war myself, I shall teach you. While you are taking the test, you must do exactly as you are instructed. Is that clear?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-06.htm new file mode 100644 index 0000000000..5a7628c646 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-06.htm @@ -0,0 +1,4 @@ +Veteran Ascalon:
+Good! First you must go and visit my friend Mason. He is an old comrade of mine. We fought together on the battlefields as part of the Iron Rose. Although he has retired, I am sure he knows more than anyone else about the invaders who are threatening the villagers of Dion. Who knows, he might even get up and head off to the battlefield, inspired by your young spirit...
+I heard that Mason, the master of spears, has settled happily with his family somewhere in southern Dion. If you bring this letter with my seal on it, he will welcome you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-06a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-06a.htm new file mode 100644 index 0000000000..2233c24b01 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-06a.htm @@ -0,0 +1,5 @@ +Veteran Ascalon:
+Before doing anything else, go meet my friend Mason. He is from Iron Rose, just like me, and has fought beside me in many battles. That was long ago, of course, and the most action he probably sees now is chopping wood for his cooking fire. But even if his spear-arm is weaker and his belly broader, he still knows more about the races that threaten the Dion villagers than anyone. And who knows? Perhaps your youthful enthusiasm will even motivate him to take his spear from its place above his hearth and again venture onto the field of battle. He was a master of the spear in his day, you know . . .
+I heard long ago that he settled somewhere in southern Dion with his wife and family. If you show him this letter with my signet, I'm sure he will welcome you.
+Finally, please accept this Dimension Diamond as my gift. You can trade it for something special from the village gatekeeper. I hope it will help you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-07.html new file mode 100644 index 0000000000..bed8ceec88 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-07.html @@ -0,0 +1,3 @@ +Veteran Ascalon:
+Go and meet my old comrade, Mason. He is the master of spears and a good and faithful friend. I heard that he settled down somewhere in southern Dion, I wonder how he is doing? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-08.html new file mode 100644 index 0000000000..8da23791c1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-08.html @@ -0,0 +1,3 @@ +Veteran Ascalon:
+So you have met Mason and have agreed to seek revenge for him? But... What do you mean revenge..., Revenge on whom? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-09.html new file mode 100644 index 0000000000..ceb85973cf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-09.html @@ -0,0 +1,7 @@ +Veteran Ascalon:
+You have returned! How is Mason? Please tell me everything...
+...You say with your mouth that he is living happily, but the expression on your face says something else. You must tell me the truth!
+...What! Never could I have imagined that he would be living a lonely, wretched life after losing all his family during the assault of Gracia... Perhaps his grief would be less severe now, since you have completed his revenge.
+A Warrior must share the pain of his comrade, but still cannot stop fighting. It is time for you to fight once more.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-10.html new file mode 100644 index 0000000000..d91ade052d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-10.html @@ -0,0 +1,4 @@ +Veteran Ascalon:
+Have you heard that recently the guards and soldiers fought against the medusas in order to protect Giran? They fought with all their might and drove them away, but during the battle many soldiers were infected by the deadly poison of the medusas. If this goes untreated they will all die very soon. And what will happen if the medusas mount another attack? .. We must find the cure...
+rather, an Antidote to neutralize the medusa's poison. Even the Priests do not know how to make it. However, my old companion Groot will know how. He was once a medic for the Iron Rose, and we served together on the battlefield for more than 10 years. I heard that he now owns a store in the Town of Giran. Go and help him make an Antidote. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-11.html new file mode 100644 index 0000000000..288fdd5d5b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-11.html @@ -0,0 +1,3 @@ +Veteran Ascalon:
+You must hurry and meet Magic Trader Groot. He was once a medic of the Iron Rose, but now he is making a living from a magic shop in the Town of Giran. Go and help him make the Antidote to neutralize the medusa's poison. At this very moment, many guards and soldiers are dying from this poison. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-12.html new file mode 100644 index 0000000000..42e5dea4fa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-12.html @@ -0,0 +1,3 @@ +Veteran Ascalon:
+Groot, my comrade, brother of fate... You must go and help him make the Antidote to neutralize the medusa's poison. At this very moment many guards and soldiers are dying because of the poison. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-13.html new file mode 100644 index 0000000000..770226b64f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-13.html @@ -0,0 +1,4 @@ +Veteran Ascalon:
+Well done! The soldiers of Giran will soon recover. Thank God for that. However, now we have a new problem. A big problem which only we can solve...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-14.html new file mode 100644 index 0000000000..fc1227d1f5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-14.html @@ -0,0 +1,3 @@ +Veteran Ascalon:
+Word comes from the Town of Oren that it is about to be pillaged by the great army of road scavengers. We must gather as many volunteers as possible to help protect the town! Go and meet Captain Mouen of the Town of Oren and follow his instructions. You must not forget that the future of the kingdom is depending on this battle! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-15.html new file mode 100644 index 0000000000..6624aef9ac --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-15.html @@ -0,0 +1,3 @@ +Veteran Ascalon:
+You must hurry and meet Captain Mouen of the Town of Oren. He will tell you of the road scavengers, a powerful force which is threatening the entire kingdom. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-16.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-16.html new file mode 100644 index 0000000000..be4bba72f2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-16.html @@ -0,0 +1,3 @@ +Veteran Ascalon:
+I taught Mouen swordmanship when he was but a child, and now he has grown into a fine Captain of the town. Go and help him protect the peace of this kingdom! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-17.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-17.html new file mode 100644 index 0000000000..af57e82400 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30624-17.html @@ -0,0 +1,3 @@ +Veteran Ascalon:
+I have been hearing of your exploits! You are indeed a true Warrior! My successor! I shall give you the Mark of the Champion in recognition of your military skill and bravery! The mark is reserved for the few people who have proven to be the best among the continent's Warriors. I, Ascalon assure you, that this mark will guarantee your bright future! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-01.html new file mode 100644 index 0000000000..240b39f7cf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-01.html @@ -0,0 +1,4 @@ +Mason:
+I lost my wife and children during Gracia's attack. Gracia's army deprived me of my family, my most precious possession, and are my lifelong enemies. These scoundrels are the Ol Mahums, also known as the 'Bloody Axe'. I swear to God that I will one day have my revenge!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-02.html new file mode 100644 index 0000000000..ebb3326173 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-02.html @@ -0,0 +1,7 @@ +Mason:
+Ascalon... It has been many years since I heard that name...
+When I left the army I married a beautiful woman named Lillian. We settled down in my hometown of Dion where we lived a happy and peaceful life and raised our family.
+And then, one dark day, Gracia's army attacked and killed my wife and children. Since then alcohol has been my only friend. I often find myself sitting by the river crying... The grief I feel from my loss is sometimes unbearable...
+I swear that I shall have my revenge on them. Will you help me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-03.html new file mode 100644 index 0000000000..835a2fdede --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-03.html @@ -0,0 +1,5 @@ +Mason:
+I want to rip apart the soldiers of Gracia's Foreign Legion still in our kingdom! Ah, but I am too old now to pick up the sword of revenge alone.
+Here, take the ring I once wore as a mercenary. Put it on and obtain vengeance on my behalf. Slay all the Bloody Axe Elites that killed my beloved family. Go north through Death Pass into Giran and you will find their barracks. The Ol Mahums are in the Plains of the Lizardmen.
+Bring me at least 10 Bloody Axe Heads and I'll begin to sleep easier. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-04.html new file mode 100644 index 0000000000..c6a1c83bbc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-04.html @@ -0,0 +1,4 @@ +Mason:
+I am now too old and weak too even lift a spear. But my hatred towards those who killed my family still boils up like lava. I beg you, please obtain vengeance on my behalf. I will be able to die without regret if you bring me 10 Bloody Axe Heads from the Bloody Axe Elite soldiers.
+You will find the Ol Mahums in the Plains of the Lizardmen, in the southern region of Oren . Head north through Death Pass into Giran and you will find their barracks. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-05.html new file mode 100644 index 0000000000..31662865d0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-05.html @@ -0,0 +1,3 @@ +Mason:
+Thank you. Now the souls of my family can rest in peace... The fire of revenge that has driven me mad is finally extinguished... Please give this letter to Ascalon. Tell him that my family and I are finally at peace. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-06.html new file mode 100644 index 0000000000..c7c8f52b9b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-06.html @@ -0,0 +1,4 @@ +Mason:
+Revenge became my life force... Now as I examine my life all I see are hatred and regret... All for nothing... I thought that revenge would let me finally join my dear family in peace...
+But now word comes of Ascalon's continuing fight for his beliefs against the doers of injustice. I have changed my mind! I cannot just sit here and wait to die! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-07.html new file mode 100644 index 0000000000..d4b1828565 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/30625-07.html @@ -0,0 +1,3 @@ +Mason:
+I may look old and withered, but my experience and know-how accumulated in the battlefields cannot be ignored... Recently I have been teaching young recruits how to deal with the flying corps, and the strategy of siege warfare. Keep up the good work for the peace of the Kingdom! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/Q00223_TestOfTheChampion.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/Q00223_TestOfTheChampion.java new file mode 100644 index 0000000000..746b5c3cd2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00223_TestOfTheChampion/Q00223_TestOfTheChampion.java @@ -0,0 +1,637 @@ +/* + * 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.Q00223_TestOfTheChampion; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Test Of The Champion (223) + * @author ivantotov + */ +public final class Q00223_TestOfTheChampion extends Quest +{ + // NPCs + private static final int TRADER_GROOT = 30093; + private static final int CAPTAIN_MOUEN = 30196; + private static final int VETERAN_ASCALON = 30624; + private static final int MASON = 30625; + // Items + private static final int ASCALONS_1ST_LETTER = 3277; + private static final int MASONS_LETTER = 3278; + private static final int IRON_ROSE_RING = 3279; + private static final int ASCALONS_2ND_LETTER = 3280; + private static final int WHITE_ROSE_INSIGNIA = 3281; + private static final int GROOTS_LETTER = 3282; + private static final int ASCALONS_3RD_LETTER = 3283; + private static final int MOUENS_1ST_ORDER = 3284; + private static final int MOUENS_2ND_ORDER = 3285; + private static final int MOUENS_LETTER = 3286; + private static final int HARPYS_EGG = 3287; + private static final int MEDUSA_VENOM = 3288; + private static final int WINDSUS_BILE = 3289; + private static final int BLOODY_AXE_HEAD = 3290; + private static final int ROAD_RATMAN_HEAD = 3291; + private static final int LETO_LIZARDMAN_FANG = 3292; + // Reward + private static final int MARK_OF_CHAMPION = 3276; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monster + private static final int HARPY = 20145; + private static final int MEDUSA = 20158; + private static final int ROAD_SCAVENGER = 20551; + private static final int WINDSUS = 20553; + private static final int LETO_LIZARDMAN = 20577; + private static final int LETO_LIZARDMAN_ARCHER = 20578; + private static final int LETO_LIZARDMAN_SOLDIER = 20579; + private static final int LETO_LIZARDMAN_WARRIOR = 20580; + private static final int LETO_LIZARDMAN_SHAMAN = 20581; + private static final int LETO_LIZARDMAN_OCERLORD = 20582; + private static final int BLOODY_AXE_ELITE = 20780; + // Quest Monster + private static final int HARPY_MATRIARCH = 27088; + private static final int ROAD_COLLECTOR = 27089; + // Misc + private static final int MIN_LEVEL = 39; + + public Q00223_TestOfTheChampion() + { + super(223); + addStartNpc(VETERAN_ASCALON); + addTalkId(VETERAN_ASCALON, TRADER_GROOT, CAPTAIN_MOUEN, MASON); + addKillId(HARPY, MEDUSA, WINDSUS, ROAD_SCAVENGER, LETO_LIZARDMAN, LETO_LIZARDMAN_ARCHER, LETO_LIZARDMAN_SOLDIER, LETO_LIZARDMAN_WARRIOR, LETO_LIZARDMAN_SHAMAN, LETO_LIZARDMAN_OCERLORD, BLOODY_AXE_ELITE, HARPY_MATRIARCH, ROAD_COLLECTOR); + addAttackId(HARPY, ROAD_SCAVENGER, BLOODY_AXE_ELITE); + registerQuestItems(ASCALONS_1ST_LETTER, MASONS_LETTER, IRON_ROSE_RING, ASCALONS_2ND_LETTER, WHITE_ROSE_INSIGNIA, GROOTS_LETTER, ASCALONS_3RD_LETTER, MOUENS_1ST_ORDER, MOUENS_2ND_ORDER, MOUENS_LETTER, HARPYS_EGG, MEDUSA_VENOM, WINDSUS_BILE, BLOODY_AXE_HEAD, ROAD_RATMAN_HEAD, LETO_LIZARDMAN_FANG); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + giveItems(player, ASCALONS_1ST_LETTER, 1); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + if (player.getClassId() == ClassId.WARRIOR) + { + giveItems(player, DIMENSIONAL_DIAMOND, 72); + } + else + { + giveItems(player, DIMENSIONAL_DIAMOND, 64); + } + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30624-06a.htm"; + } + else + { + htmltext = "30624-06.htm"; + } + } + break; + } + case "30624-05.htm": + case "30196-02.html": + case "30625-02.html": + { + htmltext = event; + break; + } + case "30624-10.html": + { + if (hasQuestItems(player, MASONS_LETTER)) + { + takeItems(player, MASONS_LETTER, 1); + giveItems(player, ASCALONS_2ND_LETTER, 1); + qs.setCond(5, true); + htmltext = event; + } + break; + } + case "30624-14.html": + { + if (hasQuestItems(player, GROOTS_LETTER)) + { + takeItems(player, GROOTS_LETTER, 1); + giveItems(player, ASCALONS_3RD_LETTER, 1); + qs.setCond(9, true); + htmltext = event; + } + break; + } + case "30093-02.html": + { + if (hasQuestItems(player, ASCALONS_2ND_LETTER)) + { + takeItems(player, ASCALONS_2ND_LETTER, 1); + giveItems(player, WHITE_ROSE_INSIGNIA, 1); + qs.setCond(6, true); + htmltext = event; + } + break; + } + case "30196-03.html": + { + if (hasQuestItems(player, ASCALONS_3RD_LETTER)) + { + takeItems(player, ASCALONS_3RD_LETTER, 1); + giveItems(player, MOUENS_1ST_ORDER, 1); + qs.setCond(10, true); + htmltext = event; + } + break; + } + case "30196-06.html": + { + if (getQuestItemsCount(player, ROAD_RATMAN_HEAD) >= 10) + { + takeItems(player, MOUENS_1ST_ORDER, 1); + giveItems(player, MOUENS_2ND_ORDER, 1); + takeItems(player, ROAD_RATMAN_HEAD, -1); + qs.setCond(12, true); + htmltext = event; + } + break; + } + case "30625-03.html": + { + if (hasQuestItems(player, ASCALONS_1ST_LETTER)) + { + takeItems(player, ASCALONS_1ST_LETTER, 1); + giveItems(player, IRON_ROSE_RING, 1); + qs.setCond(2, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onAttack(L2Npc npc, L2PcInstance attacker, int damage, boolean isSummon) + { + final QuestState qs = getQuestState(attacker, false); + if ((qs != null) && qs.isStarted()) + { + switch (npc.getId()) + { + case HARPY: + { + switch (npc.getScriptValue()) + { + case 0: + { + npc.getVariables().set("lastAttacker", attacker.getObjectId()); + if (hasQuestItems(attacker, WHITE_ROSE_INSIGNIA) && (getQuestItemsCount(attacker, HARPYS_EGG) < 30)) + { + if (getRandomBoolean()) + { + if (getRandom(10) < 7) + { + addAttackPlayerDesire(addSpawn(HARPY_MATRIARCH, npc, true, 0, false), attacker); + } + else + { + addAttackPlayerDesire(addSpawn(HARPY_MATRIARCH, npc, true, 0, false), attacker); + addAttackPlayerDesire(addSpawn(HARPY_MATRIARCH, npc, true, 0, false), attacker); + } + } + } + npc.setScriptValue(1); + break; + } + case 1: + { + npc.setScriptValue(2); + break; + } + } + break; + } + case ROAD_SCAVENGER: + { + switch (npc.getScriptValue()) + { + case 0: + { + npc.getVariables().set("lastAttacker", attacker.getObjectId()); + if (hasQuestItems(attacker, MOUENS_1ST_ORDER) && (getQuestItemsCount(attacker, ROAD_RATMAN_HEAD) < 10)) + { + if (getRandomBoolean()) + { + if (getRandom(10) < 7) + { + addAttackPlayerDesire(addSpawn(ROAD_COLLECTOR, npc, true, 0, false), attacker); + } + else + { + addAttackPlayerDesire(addSpawn(ROAD_COLLECTOR, npc, true, 0, false), attacker); + addAttackPlayerDesire(addSpawn(ROAD_COLLECTOR, npc, true, 0, false), attacker); + } + } + } + npc.setScriptValue(1); + break; + } + case 1: + { + npc.setScriptValue(2); + break; + } + } + break; + } + case BLOODY_AXE_ELITE: + { + switch (npc.getScriptValue()) + { + case 0: + { + npc.getVariables().set("lastAttacker", attacker.getObjectId()); + if (hasQuestItems(attacker, IRON_ROSE_RING) && (getQuestItemsCount(attacker, BLOODY_AXE_HEAD) < 10)) + { + if (getRandomBoolean()) + { + addAttackPlayerDesire(addSpawn(BLOODY_AXE_ELITE, npc, true, 0, false), attacker); + } + } + npc.setScriptValue(1); + break; + } + case 1: + { + npc.setScriptValue(2); + break; + } + } + break; + } + } + } + return super.onAttack(npc, attacker, damage, isSummon); + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case HARPY: + case HARPY_MATRIARCH: + { + if (hasQuestItems(killer, WHITE_ROSE_INSIGNIA) && (getQuestItemsCount(killer, HARPYS_EGG) < 30)) + { + if (getQuestItemsCount(killer, HARPYS_EGG) >= 28) + { + giveItems(killer, HARPYS_EGG, 2); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, MEDUSA_VENOM) >= 30) && (getQuestItemsCount(killer, WINDSUS_BILE) >= 30)) + { + qs.setCond(7); + } + } + else + { + giveItems(killer, HARPYS_EGG, 2); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MEDUSA: + { + if (hasQuestItems(killer, WHITE_ROSE_INSIGNIA) && (getQuestItemsCount(killer, MEDUSA_VENOM) < 30)) + { + if (getQuestItemsCount(killer, MEDUSA_VENOM) >= 27) + { + giveItems(killer, MEDUSA_VENOM, 3); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, HARPYS_EGG) >= 30) && (getQuestItemsCount(killer, WINDSUS_BILE) >= 30)) + { + qs.setCond(7); + } + } + else + { + giveItems(killer, MEDUSA_VENOM, 3); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case WINDSUS: + { + if (hasQuestItems(killer, WHITE_ROSE_INSIGNIA) && (getQuestItemsCount(killer, WINDSUS_BILE) < 30)) + { + if (getQuestItemsCount(killer, WINDSUS_BILE) >= 27) + { + giveItems(killer, WINDSUS_BILE, 3); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, HARPYS_EGG) >= 30) && (getQuestItemsCount(killer, MEDUSA_VENOM) >= 30)) + { + qs.setCond(7); + } + } + else + { + giveItems(killer, WINDSUS_BILE, 3); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case ROAD_SCAVENGER: + case ROAD_COLLECTOR: + { + if (hasQuestItems(killer, MOUENS_1ST_ORDER) && (getQuestItemsCount(killer, ROAD_RATMAN_HEAD) < 10)) + { + if (getQuestItemsCount(killer, ROAD_RATMAN_HEAD) >= 9) + { + giveItems(killer, ROAD_RATMAN_HEAD, 1); + qs.setCond(11, true); + } + else + { + giveItems(killer, ROAD_RATMAN_HEAD, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case LETO_LIZARDMAN: + case LETO_LIZARDMAN_ARCHER: + case LETO_LIZARDMAN_SOLDIER: + case LETO_LIZARDMAN_WARRIOR: + case LETO_LIZARDMAN_SHAMAN: + case LETO_LIZARDMAN_OCERLORD: + { + if (hasQuestItems(killer, MOUENS_2ND_ORDER) && (getQuestItemsCount(killer, LETO_LIZARDMAN_FANG) < 10)) + { + if (getQuestItemsCount(killer, LETO_LIZARDMAN_FANG) >= 9) + { + giveItems(killer, LETO_LIZARDMAN_FANG, 1); + qs.setCond(13, true); + } + else + { + giveItems(killer, LETO_LIZARDMAN_FANG, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case BLOODY_AXE_ELITE: + { + if (hasQuestItems(killer, IRON_ROSE_RING) && (getQuestItemsCount(killer, BLOODY_AXE_HEAD) < 10)) + { + if (getQuestItemsCount(killer, BLOODY_AXE_HEAD) >= 9) + { + giveItems(killer, BLOODY_AXE_HEAD, 1); + qs.setCond(3, true); + } + else + { + giveItems(killer, BLOODY_AXE_HEAD, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == VETERAN_ASCALON) + { + if ((player.getClassId() == ClassId.WARRIOR) || (player.getClassId() == ClassId.ORC_RAIDER)) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (player.getClassId() == ClassId.WARRIOR) + { + htmltext = "30624-03.htm"; + } + else + { + htmltext = "30624-04.html"; + } + } + else + { + htmltext = "30624-01.html"; + } + } + else + { + htmltext = "30624-02.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case VETERAN_ASCALON: + { + if (hasQuestItems(player, ASCALONS_1ST_LETTER)) + { + htmltext = "30624-07.html"; + } + else if (hasQuestItems(player, IRON_ROSE_RING)) + { + htmltext = "30624-08.html"; + } + else if (hasQuestItems(player, MASONS_LETTER)) + { + htmltext = "30624-09.html"; + } + else if (hasQuestItems(player, ASCALONS_2ND_LETTER)) + { + htmltext = "30624-11.html"; + } + else if (hasQuestItems(player, WHITE_ROSE_INSIGNIA)) + { + htmltext = "30624-12.html"; + } + else if (hasQuestItems(player, GROOTS_LETTER)) + { + htmltext = "30624-13.html"; + } + else if (hasQuestItems(player, ASCALONS_3RD_LETTER)) + { + htmltext = "30624-15.html"; + } + else if (hasAtLeastOneQuestItem(player, MOUENS_1ST_ORDER, MOUENS_2ND_ORDER)) + { + htmltext = "30624-16.html"; + } + else if (hasQuestItems(player, MOUENS_LETTER)) + { + giveAdena(player, 229764, true); + giveItems(player, MARK_OF_CHAMPION, 1); + addExpAndSp(player, 1270742, 87200); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30624-17.html"; + } + break; + } + case TRADER_GROOT: + { + if (hasQuestItems(player, ASCALONS_2ND_LETTER)) + { + htmltext = "30093-01.html"; + } + else if (hasQuestItems(player, WHITE_ROSE_INSIGNIA)) + { + if ((getQuestItemsCount(player, HARPYS_EGG) >= 30) && (getQuestItemsCount(player, MEDUSA_VENOM) >= 30) && (getQuestItemsCount(player, WINDSUS_BILE) >= 30)) + { + takeItems(player, WHITE_ROSE_INSIGNIA, 1); + giveItems(player, GROOTS_LETTER, 1); + takeItems(player, HARPYS_EGG, -1); + takeItems(player, MEDUSA_VENOM, -1); + takeItems(player, WINDSUS_BILE, -1); + qs.setCond(8, true); + htmltext = "30093-04.html"; + } + else + { + htmltext = "30093-03.html"; + } + } + else if (hasQuestItems(player, GROOTS_LETTER)) + { + htmltext = "30093-05.html"; + } + else if (hasAtLeastOneQuestItem(player, ASCALONS_3RD_LETTER, MOUENS_1ST_ORDER, MOUENS_2ND_ORDER, MOUENS_LETTER)) + { + htmltext = "30093-06.html"; + } + break; + } + case CAPTAIN_MOUEN: + { + if (hasQuestItems(player, ASCALONS_3RD_LETTER)) + { + htmltext = "30196-01.html"; + } + else if (hasQuestItems(player, MOUENS_1ST_ORDER)) + { + if (getQuestItemsCount(player, ROAD_RATMAN_HEAD) < 10) + { + htmltext = "30196-04.html"; + } + else + { + htmltext = "30196-05.html"; + } + } + else if (hasQuestItems(player, MOUENS_2ND_ORDER)) + { + if (getQuestItemsCount(player, LETO_LIZARDMAN_FANG) < 10) + { + htmltext = "30196-07.html"; + } + else + { + takeItems(player, MOUENS_2ND_ORDER, 1); + giveItems(player, MOUENS_LETTER, 1); + takeItems(player, LETO_LIZARDMAN_FANG, -1); + qs.setCond(14, true); + htmltext = "30196-08.html"; + } + } + else if (hasQuestItems(player, MOUENS_LETTER)) + { + htmltext = "30196-09.html"; + } + break; + } + case MASON: + { + if (hasQuestItems(player, ASCALONS_1ST_LETTER)) + { + htmltext = "30625-01.html"; + } + else if (hasQuestItems(player, IRON_ROSE_RING)) + { + if (getQuestItemsCount(player, BLOODY_AXE_HEAD) < 10) + { + htmltext = "30625-04.html"; + } + else + { + giveItems(player, MASONS_LETTER, 1); + takeItems(player, IRON_ROSE_RING, 1); + takeItems(player, BLOODY_AXE_HEAD, -1); + qs.setCond(4, true); + htmltext = "30625-05.html"; + } + } + else if (hasQuestItems(player, MASONS_LETTER)) + { + htmltext = "30625-06.html"; + } + else if (hasAtLeastOneQuestItem(player, ASCALONS_2ND_LETTER, WHITE_ROSE_INSIGNIA, GROOTS_LETTER, ASCALONS_3RD_LETTER, MOUENS_1ST_ORDER, MOUENS_2ND_ORDER, MOUENS_LETTER)) + { + htmltext = "30625-07.html"; + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == VETERAN_ASCALON) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30514-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30514-01.html new file mode 100644 index 0000000000..38dad5e508 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30514-01.html @@ -0,0 +1,5 @@ +Prefect Vokian:
+So, you work for Hamil! He saved my life in a battle with the medusas... I can't deny him anything...
+Recently someone who called himself Hunter Brankel came to me and asked for help. He knew quite a bit about the Breka Orcs... When he left he set off for the campsite of the Breka tribe.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30514-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30514-02.html new file mode 100644 index 0000000000..0936f76ff3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30514-02.html @@ -0,0 +1,6 @@ +Prefect Vokian:
+Breka Orcs! Those filthy betrayers degrade the dignity of Orcs! They should all be sent to hell painfully!
+You say that the Breka tribe has been given the serpent's egg from the devil's nest? Yes, that stands to reason as their totem was a coiled serpent...
+Seer Manakia tells me that the Breka Orcs are preparing for a big ceremony right now... Perhaps the serpent's egg has something to do with it!
+Please, you must go there, find out whatever you can and then kill every single Chief and Shaman of the Breka Orcs! If you can find a Serpent-Shaped Charm, bring it back to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30514-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30514-03.html new file mode 100644 index 0000000000..f71016a177 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30514-03.html @@ -0,0 +1,3 @@ +Prefect Vokian:
+Mercy is a luxury that filthy betrayers can ill afford! The Chiefs and Magisters of Breka Orcs are the ringleaders of the corruption! You should be able to extract some information from them! If you should find a snake-shaped amulet please bring it to me! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30514-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30514-04.html new file mode 100644 index 0000000000..5f100c733d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30514-04.html @@ -0,0 +1,5 @@ +Prefect Vokian:
+This amulet will summon the spirits of the totem! Could those filthy Breka Orcs be trying to revive their long-dead totem spirit?
+Those foolish pigs have been deceived by the heathens into believing that hatching the devil serpent will restore the spirit of their totem!
+I know that Brankel would not have gone along with this. Could these runes be a message from him? I can't read this, but Hamil knows it well. Take it to him. I wish you luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30514-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30514-05.html new file mode 100644 index 0000000000..e0bcdda3a0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30514-05.html @@ -0,0 +1,3 @@ +Prefect Vokian:
+Please tell Hamil that I wish to see him again on the battlefield. I cannot repay my debt to him this way. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-01.html new file mode 100644 index 0000000000..5cb39819ee --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-01.html @@ -0,0 +1,6 @@ +Sagittarius Hamil:
+Nice to meet you, young Warrior. Did Bernard send you here? We are in need of help. Your arrival is most timely.
+There is evil afoot in the southern part of the kingdom. The wasteland ants are on the move, and from the east, the Breka Orcs are restive... On top of all this, something weird is happening at the Cruma Tower. The Dwarves are all aflutter about it... Something has awoken beneath the tower...
+I have the feeling that our troubles have just begun... I believe there is more to come, something even bigger.... If only we could find Brankel, we would have more precise information...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-02.html new file mode 100644 index 0000000000..15c4ce4af8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-02.html @@ -0,0 +1,5 @@ +Sagittarius Hamil:
+Brankel was sent here before me and left before I arrived.
+Before leaving he entrusted a letter with Merchant Pano addressed to me. I sensed danger even before Brankel was sent here.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-03.html new file mode 100644 index 0000000000..cc422fa427 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-03.html @@ -0,0 +1,8 @@ +Sagittarius Hamil:
+I will read the letter to you:
+I am leaving now for the Ant's Nest and I'm not sure if I shall return... I will try to leave clues for you to follow me. Please hurry, brother.
+Brankel
... +I wish I could follow him right away, but I am busy defending the village from the Leto Lizardmen... Dammit!
+Please go to the Wastelands and try to find Brankel. If you are unable to find him, look for the traces he said he would leave. The wastelands guardian Aaron Tanford is expecting you at the southern entrance of the Wastelands.
+You must leave now! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-04.html new file mode 100644 index 0000000000..6301433098 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-04.html @@ -0,0 +1,3 @@ +Sagittarius Hamil:
+There is no time to lose! You must go and meet Aaron Tanford immediately! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-05.html new file mode 100644 index 0000000000..fe5abd8211 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-05.html @@ -0,0 +1,4 @@ +Sagittarius Hamil:
+Ah, hunter's runes written on the pebbles...? Yes, this is the secret code used by hunters. We must place the pebbles in order...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-06.html new file mode 100644 index 0000000000..828162b8fb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-06.html @@ -0,0 +1,7 @@ +Sagittarius Hamil:
+Hmm... Let's see...
+Ant's Nest... deep... black serpent... egg..., dark, no, abyss...!? child of abyss...! Hmm, this is...! Yes, here we go! 'In the hands of the children of abyss'... 'to the Breka Orcs'...
+'the black serpent's egg' to the 'children of abyss'...?
+The castle of the evil Beleth once stood in the present-day Wastelands... This is why there are so many malevolent artifacts there. Perhaps the black egg that Brankel mentioned has something to do with Beleth...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-07.html new file mode 100644 index 0000000000..5b84ea60fe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-07.html @@ -0,0 +1,6 @@ +Sagittarius Hamil:
+Those heathen followers of the Goddess of Destruction. Or should I say 'The children of Shilen'... Bah!
+I am sure that race is behind the mischief that has been going on lately!
+You must hurry and go to Giran! If what Brankel says is true, the Breka Orcs are having the black egg delivered to them! Are these the only runes you found? There are likely more of them so keep searching.
+You should go to the Town of Giran and meet Prefect Vokian. He owes me a favor, and will certainly help. Some things only an Orc can do. Ask him about the Breka Orcs. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-08.html new file mode 100644 index 0000000000..d62dc5e056 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-08.html @@ -0,0 +1,3 @@ +Sagittarius Hamil:
+Prefect Vokian is an old friend of mine. He saved my life once and I saved his twice! Out of the death crisis. You must hurry to the Town of Giran and meet him. I hope to hear good news from you soon. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-09.html new file mode 100644 index 0000000000..b9e09ae6ff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-09.html @@ -0,0 +1,6 @@ +Sagittarius Hamil:
+Who would have thought that they could mobilize those savage heathens to join in their plot?
+Lets see what Brankel has to say...
Oh, no, we are too late! The Orc shamans have revived the serpent and awakened the Commander! Ah, yes... Commander Kadesh! I hoped to never hear that name again....
+He is a devil who appears as a serpent. It was he who spread blood and pestilence in this land of south Oren long ago... Devils such as he are not of this earth and are not easily killed. Brankel mentions the Crescent Arrow. But the crescent arrow...
+Never mind, we'll deal with that later. You must go to the Ivory tower of Oren and meet Magister Gauen. I believe that he is the keeper of the Crescent Arrow... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-10.html new file mode 100644 index 0000000000..6cd0e3b758 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-10.html @@ -0,0 +1,3 @@ +Sagittarius Hamil:
+No one has more experience against Commander Kadesh than Magister Gauen of the Ivory Tower. His assistance is essential. Go and meet him now. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-11.html new file mode 100644 index 0000000000..0ce3446298 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-11.html @@ -0,0 +1,6 @@ +Sagittarius Hamil:
+Brankel lives! I met with him shortly before he left for the south of Oren. Commander Kadesh is currently surviving off the flesh of Leto Lizardmen.
+Dammit! I should've gone with Brankel!
+Oh! Look! The crescent arrow! I haven't seen it in 20 years! Take it and follow Brankel! Kill the Leto Lizardmen and Kadesh will appear! Kill him with the crescent arrow!
+You mustn't use any other method or skill, or the power of the arrow will disappear and Kadesh will survive! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-12.html new file mode 100644 index 0000000000..caab58b0eb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-12.html @@ -0,0 +1,4 @@ +Sagittarius Hamil:
+As time passes, Commander Kadesh grows stronger. Kill his food source, the Leto Lizardmen. When Kadesh appears, kill him with the crescent arrow! If you use a skill or another method, the power of the arrow will disappear and Kadesh will survive!
+Don't forget! Never use a skill to kill Kadesh! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-13.html new file mode 100644 index 0000000000..4a3469cec2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30626-13.html @@ -0,0 +1,6 @@ +Sagittarius Hamil:
+So you haven't found Brankel... He is searching for the heathens? He is noble indeed. He was correct, they must be up to something else. Commander Kadesh is not their final goal...
+This amulet holds clues for us... The seven eyes... This is the mark of the children of Shilen. I must report this to the hunter's union immediately. I will also return the crescent arrow to the Ivory Tower of Oren.
+Thank you for your help. You have done more in this matter than Brankel or myself...
+You are a Sagittarius. Take this Mark of Sagittarius. I hope that we shall hunt together sometime in the future. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30653-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30653-01.html new file mode 100644 index 0000000000..fb694c9aab --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30653-01.html @@ -0,0 +1,4 @@ +Sir Aaron Tanford
+Nice to meet you, young Warrior. I am Aaron Tanford, watchdog of the Wastelands. My mission is to stop the brutes that are terrorizing the villagers...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30653-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30653-02.html new file mode 100644 index 0000000000..789e29c24b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30653-02.html @@ -0,0 +1,5 @@ +Sir Aaron Tanford
+About 10 days ago, two travelers entered the Wastelands claiming they had come to excavate artifacts of the empirical era. Although I doubted their story I didn't stop them. When I spoke with Hunter Brankel a few days later, I realized that I had made a grave mistake. They were not archaeologists, but a bunch of ravenous heathens!
+As you know, the castle of the evil Beleth once stood where the Wastelands are now. I am sure these heathens seek the remains of that devil! Brankel went to the Ant's Nest of the Wastelands to try to determine their motives. I haven't heard from him since...
+I am sorry but this is all I know. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30653-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30653-03.html new file mode 100644 index 0000000000..515ee63acb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30653-03.html @@ -0,0 +1,3 @@ +Sir Aaron Tanford
+I fear for Hunter Brankel, but what worries me more is what those heathen may do with the remains of Beleth... I must stay here, so I beseech you, go to the Ant's Nest of the Wastelands and find out what is going on there. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-01.html new file mode 100644 index 0000000000..80c788917f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-01.html @@ -0,0 +1,5 @@ +Guild President Bernard:
+Sagittarians are those who are known as the best bowmen of this kingdom. A hundred years ago, when the dragon Lindvior attacked Castle Aden, a bowman named Atlanta shot an arrow right through the dragon's eye. For this he was given the first title as a Sagittarius. Right now there are just 33 Sagittarians in the world.
+If you want to be recognized as an exemplary bowman, you may take the Test of Sagittarius and prove your ability. Many hunters and bowmen have taken the test this year and failed. You must be well above average to pass this test... I heard that you are skillful but as I see it, from the perpective of a Guild President... You are not good enough. Train some more before you come back.
+(Quest for Rogues, Elven Scouts and Assassins, level 39 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-02.html new file mode 100644 index 0000000000..451a3349e8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-02.html @@ -0,0 +1,4 @@ +Guild President Bernard:
+Do you have any idea of what the Test of the Sagittarius is? Only Humans may take this test. Why are you here with an arrow? You'll only make yourself a laughingstock...
+(Quest for Rogues, Elven Scouts and Assassins, level 39 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-03.htm new file mode 100644 index 0000000000..ee16ca1a63 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-03.htm @@ -0,0 +1,5 @@ +Guild President Bernard:
+Sagittarians are those who are known as the best bowmen in this kingdom. A hundred years ago, when the Gold Dragon Lindvior attacked Castle Aden, a bowman by the name of Atlanta shot an arrow right through the dragon's eye. For this he was given the first title as a Sagittarius. At the moment there are just 33 Sagittarians in the world.
+If you wish to be recognized as an exemplary bowman, you may take the Test of the Sagittarius and prove your ability. Many hunters and bowmen took the test this year, and all failed. I warn you, if your skills are not good enough to shoot down a flying eagle, you might as well not even try.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-04.htm new file mode 100644 index 0000000000..24efdf3b0e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-04.htm @@ -0,0 +1,4 @@ +Guild President Bernard:
+Hmm... All right, you may try. First go and meet Hamil of Floran Village. He is originally from Innadril. He is a genius of archery, who received the title of Sagittarius at the age of 20. He has instructed many archers twice his age!
+Ha! To tell you the truth, it is more important for you to win Hamil's approval rather than mine for the test. Take this Letter of Introduction to him. Hamil will have a task for you. Perform it well, young one. May the joy of the chase and the reward of the hunt be with you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-04a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-04a.htm new file mode 100644 index 0000000000..13f3495a00 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-04a.htm @@ -0,0 +1,5 @@ +Hunters Guild President Bernard:
+Hmmm . . . well, go ahead and try. My advice is to first visitHamil from Floran Village. He is a native of Innadril and an amazing archer -- he earned the nickname Sagittarius before he was even out of his teens. In fact, much more experienced archers even used to come to him for training.
+To pass this test, you must impress Hamil. Take this introduction letter to him and he will tell you what task to perform. Good luck, youngster. May the joy of the hunt be with you!
+Before you set off, accept this Dimension Diamond. You can trade it for something special from the village gatekeeper. I'm sure it prove helpful to you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-05.html new file mode 100644 index 0000000000..c30e5fc991 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30702-05.html @@ -0,0 +1,3 @@ +Guild President Bernard:
+As I said, you must see Hamil of Floran Village if you wish to receive the Mark of the Sagittarius. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30717-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30717-01.html new file mode 100644 index 0000000000..901cc8291f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30717-01.html @@ -0,0 +1,5 @@ +Magister Gauen:
+I am Magister Gauen. Ah, yes, Commander Kadesh and the Crescent Arrow... That is a story that I'll never forget. Commander Kadesh is the most daring among all the sons of Shilen. He eats like a horse, yet he is always hungry! He is constantly growing... This caused anxiety among the Gods, and they gave instructions to the Elves on how to kill him with the Crescent Arrow. This arrow was kept in the Ivory Tower for a long time, and 20 years ago became useless...
+...but if what you are saying is true, we need the arrow...
+I can restore the arrow, but it will not be easy. Most of the materials I will need you can find in the Ivory Tower, but some you'll have to find elsewhere... A horn from a manashen gargoyle, a Reinforced Bowstring made of the swamp spider's web, a Mithril Ring which can be obtained from a road scavenger and a chitin of a swamp stakato which can be obtained from a Marsh Stakato worker, a Marsh Stakato soldier, or a Marsh Stakato drone. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30717-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30717-02.html new file mode 100644 index 0000000000..ee7eadbc7e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30717-02.html @@ -0,0 +1,5 @@ +Magister Gauen:
+Here is the Crescent Bow. This bow is different from other bows, as there is magic in it designed to kill Commander Kadesh. Keep in mind that you can only shoot a Wooden Arrow with this bow.
+You must kill Commander Kadesh with the Crescent Bow. Right now he is still somewhat weak but as time goes by he will grow stronger and cause more damage. First you must go to Hamil and find out where Commander Kadesh is located.
+Go now. The Ivory Tower wishes you victory. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30717-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30717-03.html new file mode 100644 index 0000000000..6d62e2b7f7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30717-03.html @@ -0,0 +1,3 @@ +Magister Gauen:
+To reconstitute the Crescent Arrow we need the materials that I previously requested. The horns of Manasen, a Reinforced Bowstring made of the swamp spider's web, a Mithril Ring which can be taken from a road scavenger and a chitin that can be obtained from a swamp stakato worker, a swamp stakato soldier or a swamp stakato drone. Please hurry and get these items for me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30717-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30717-04.html new file mode 100644 index 0000000000..d69c3efabc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/30717-04.html @@ -0,0 +1,3 @@ +Magister Gauen:
+20 years ago Hamil and my master prevented the rebirth of Commander Kadesh... Take this bow to Hamil immediately! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/Q00224_TestOfSagittarius.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/Q00224_TestOfSagittarius.java new file mode 100644 index 0000000000..5e05f048ff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00224_TestOfSagittarius/Q00224_TestOfSagittarius.java @@ -0,0 +1,560 @@ +/* + * 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.Q00224_TestOfSagittarius; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Test Of Sagittarius (224) + * @author ivantotov + */ +public final class Q00224_TestOfSagittarius extends Quest +{ + // NPCs + private static final int PREFECT_VOKIAN = 30514; + private static final int SAGITTARIUS_HAMIL = 30626; + private static final int SIR_ARON_TANFORD = 30653; + private static final int GUILD_PRESIDENT_BERNARD = 30702; + private static final int MAGISTER_GAUEN = 30717; + // Items + private static final int WOODEN_ARROW = 17; + private static final int CRESCENT_MOON_BOW = 3028; + private static final int BERNARDS_INTRODUCTION = 3294; + private static final int HAMILS_1ST_LETTER = 3295; + private static final int HAMILS_2ND_LETTER = 3296; + private static final int HAMILS_3RD_LETTER = 3297; + private static final int HUNTERS_1ST_RUNE = 3298; + private static final int HUNTERS_2ND_RUNE = 3299; + private static final int TALISMAN_OF_KADESH = 3300; + private static final int TALISMAN_OF_SNAKE = 3301; + private static final int MITHRIL_CLIP = 3302; + private static final int STAKATO_CHITIN = 3303; + private static final int REINFORCED_BOWSTRING = 3304; + private static final int MANASHENS_HORN = 3305; + private static final int BLOOD_OF_LIZARDMAN = 3306; + // Reward + private static final int MARK_OF_SAGITTARIUS = 3293; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monster + private static final int ANT = 20079; + private static final int ANT_CAPTAIN = 20080; + private static final int ANT_OVERSEER = 20081; + private static final int ANT_RECRUIT = 20082; + private static final int ANT_PATROL = 20084; + private static final int ANT_GUARD = 20086; + private static final int NOBLE_ANT = 20089; + private static final int NOBLE_ANT_LEADER = 20090; + private static final int MARSH_STAKATO_WORKER = 20230; + private static final int MARSH_STAKATO_SOLDIER = 20232; + private static final int MARSH_SPIDER = 20233; + private static final int MARSH_STAKATO_DRONE = 20234; + private static final int BREKA_ORC_SHAMAN = 20269; + private static final int BREKA_ORC_OVERLORD = 20270; + private static final int ROAD_SCAVENGER = 20551; + private static final int MANASHEN_GARGOYLE = 20563; + private static final int LETO_LIZARDMAN = 20577; + private static final int LETO_LIZARDMAN_ARCHER = 20578; + private static final int LETO_LIZARDMAN_SOLDIER = 20579; + private static final int LETO_LIZARDMAN_WARRIOR = 20580; + private static final int LETO_LIZARDMAN_SHAMAN = 20581; + private static final int LETO_LIZARDMAN_OVERLORD = 20582; + // Quest Monster + private static final int SERPENT_DEMON_KADESH = 27090; + // Misc + private static final int MIN_LEVEL = 39; + + public Q00224_TestOfSagittarius() + { + super(224); + addStartNpc(GUILD_PRESIDENT_BERNARD); + addTalkId(GUILD_PRESIDENT_BERNARD, PREFECT_VOKIAN, SAGITTARIUS_HAMIL, SIR_ARON_TANFORD, MAGISTER_GAUEN); + addKillId(ANT, ANT_CAPTAIN, ANT_OVERSEER, ANT_RECRUIT, ANT_PATROL, ANT_GUARD, NOBLE_ANT, NOBLE_ANT_LEADER, MARSH_STAKATO_WORKER, MARSH_STAKATO_SOLDIER, MARSH_SPIDER, MARSH_STAKATO_DRONE, BREKA_ORC_SHAMAN, BREKA_ORC_OVERLORD, ROAD_SCAVENGER, MANASHEN_GARGOYLE, LETO_LIZARDMAN, LETO_LIZARDMAN_ARCHER, LETO_LIZARDMAN_SOLDIER, LETO_LIZARDMAN_WARRIOR, LETO_LIZARDMAN_SHAMAN, LETO_LIZARDMAN_OVERLORD, SERPENT_DEMON_KADESH); + registerQuestItems(CRESCENT_MOON_BOW, BERNARDS_INTRODUCTION, HAMILS_1ST_LETTER, HAMILS_2ND_LETTER, HAMILS_3RD_LETTER, HUNTERS_1ST_RUNE, HUNTERS_2ND_RUNE, TALISMAN_OF_KADESH, TALISMAN_OF_SNAKE, MITHRIL_CLIP, STAKATO_CHITIN, REINFORCED_BOWSTRING, MANASHENS_HORN, BLOOD_OF_LIZARDMAN); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + qs.setMemoState(1); + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + giveItems(player, BERNARDS_INTRODUCTION, 1); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 96); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30702-04a.htm"; + } + else + { + htmltext = "30702-04.htm"; + } + } + break; + } + case "30514-02.html": + { + if (hasQuestItems(player, HAMILS_2ND_LETTER)) + { + takeItems(player, HAMILS_2ND_LETTER, 1); + qs.setMemoState(6); + qs.setCond(6, true); + htmltext = event; + } + break; + } + case "30626-02.html": + case "30626-06.html": + { + htmltext = event; + break; + } + case "30626-03.html": + { + if (hasQuestItems(player, BERNARDS_INTRODUCTION)) + { + takeItems(player, BERNARDS_INTRODUCTION, 1); + giveItems(player, HAMILS_1ST_LETTER, 1); + qs.setMemoState(2); + qs.setCond(2, true); + htmltext = event; + } + break; + } + case "30626-07.html": + { + if (getQuestItemsCount(player, HUNTERS_1ST_RUNE) >= 10) + { + giveItems(player, HAMILS_2ND_LETTER, 1); + takeItems(player, HUNTERS_1ST_RUNE, -1); + qs.setMemoState(5); + qs.setCond(5, true); + htmltext = event; + } + break; + } + case "30653-02.html": + { + if (hasQuestItems(player, HAMILS_1ST_LETTER)) + { + takeItems(player, HAMILS_1ST_LETTER, 1); + qs.setMemoState(3); + qs.setCond(3, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case ANT: + case ANT_CAPTAIN: + case ANT_OVERSEER: + case ANT_RECRUIT: + case ANT_PATROL: + case ANT_GUARD: + case NOBLE_ANT: + case NOBLE_ANT_LEADER: + { + if (qs.isMemoState(3) && (getQuestItemsCount(killer, HUNTERS_1ST_RUNE) < 10)) + { + if (getQuestItemsCount(killer, HUNTERS_1ST_RUNE) == 9) + { + giveItems(killer, HUNTERS_1ST_RUNE, 1); + qs.setMemoState(4); + qs.setCond(4, true); + } + else + { + giveItems(killer, HUNTERS_1ST_RUNE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MARSH_STAKATO_WORKER: + case MARSH_STAKATO_SOLDIER: + case MARSH_STAKATO_DRONE: + { + if (qs.isMemoState(10) && !hasQuestItems(killer, STAKATO_CHITIN)) + { + if (hasQuestItems(killer, MITHRIL_CLIP, REINFORCED_BOWSTRING, MANASHENS_HORN)) + { + giveItems(killer, STAKATO_CHITIN, 1); + qs.setMemoState(11); + qs.setCond(11, true); + } + else + { + giveItems(killer, STAKATO_CHITIN, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MARSH_SPIDER: + { + if (qs.isMemoState(10) && !hasQuestItems(killer, REINFORCED_BOWSTRING)) + { + if (hasQuestItems(killer, MITHRIL_CLIP, MANASHENS_HORN, STAKATO_CHITIN)) + { + giveItems(killer, REINFORCED_BOWSTRING, 1); + qs.setMemoState(11); + qs.setCond(11, true); + } + else + { + giveItems(killer, REINFORCED_BOWSTRING, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case BREKA_ORC_SHAMAN: + case BREKA_ORC_OVERLORD: + { + if (qs.isMemoState(6) && (getQuestItemsCount(killer, HUNTERS_2ND_RUNE) < 10)) + { + if (getQuestItemsCount(killer, HUNTERS_2ND_RUNE) == 9) + { + giveItems(killer, HUNTERS_2ND_RUNE, 1); + giveItems(killer, TALISMAN_OF_SNAKE, 1); + qs.setMemoState(7); + qs.setCond(7, true); + } + else + { + giveItems(killer, HUNTERS_2ND_RUNE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case ROAD_SCAVENGER: + { + if (qs.isMemoState(10) && !hasQuestItems(killer, MITHRIL_CLIP)) + { + if (hasQuestItems(killer, REINFORCED_BOWSTRING, MANASHENS_HORN, STAKATO_CHITIN)) + { + giveItems(killer, MITHRIL_CLIP, 1); + qs.setMemoState(11); + qs.setCond(11, true); + } + else + { + giveItems(killer, MITHRIL_CLIP, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MANASHEN_GARGOYLE: + { + if (qs.isMemoState(10) && !hasQuestItems(killer, MANASHENS_HORN)) + { + if (hasQuestItems(killer, MITHRIL_CLIP, REINFORCED_BOWSTRING, STAKATO_CHITIN)) + { + giveItems(killer, MANASHENS_HORN, 1); + qs.setMemoState(11); + qs.setCond(11, true); + } + else + { + giveItems(killer, MANASHENS_HORN, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case LETO_LIZARDMAN: + case LETO_LIZARDMAN_ARCHER: + case LETO_LIZARDMAN_SOLDIER: + case LETO_LIZARDMAN_WARRIOR: + case LETO_LIZARDMAN_SHAMAN: + case LETO_LIZARDMAN_OVERLORD: + { + if (qs.isMemoState(13) && (getQuestItemsCount(killer, BLOOD_OF_LIZARDMAN) < 140)) + { + if (((getQuestItemsCount(killer, BLOOD_OF_LIZARDMAN) - 10) * 5) > getRandom(100)) + { + addSpawn(SERPENT_DEMON_KADESH, npc, true, 300000); + takeItems(killer, BLOOD_OF_LIZARDMAN, -1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_BEFORE_BATTLE); + } + else + { + giveItems(killer, BLOOD_OF_LIZARDMAN, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case SERPENT_DEMON_KADESH: + { + if (qs.isMemoState(13) && !hasQuestItems(killer, TALISMAN_OF_KADESH)) + { + if (npc.getKillingBlowWeapon() == CRESCENT_MOON_BOW) + { + giveItems(killer, TALISMAN_OF_KADESH, 1); + qs.setMemoState(14); + qs.setCond(14, true); + } + else + { + addSpawn(SERPENT_DEMON_KADESH, npc, true, 300000); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + final int memoState = qs.getMemoState(); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == GUILD_PRESIDENT_BERNARD) + { + if ((player.getClassId() == ClassId.ROGUE) || (player.getClassId() == ClassId.ELVEN_SCOUT) || (player.getClassId() == ClassId.ASSASSIN)) + { + if (player.getLevel() >= MIN_LEVEL) + { + htmltext = "30702-03.htm"; + } + else + { + htmltext = "30702-01.html"; + } + } + else + { + htmltext = "30702-02.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case GUILD_PRESIDENT_BERNARD: + { + if (hasQuestItems(player, BERNARDS_INTRODUCTION)) + { + htmltext = "30702-05.html"; + } + break; + } + case PREFECT_VOKIAN: + { + if (memoState == 5) + { + if (hasQuestItems(player, HAMILS_2ND_LETTER)) + { + htmltext = "30514-01.html"; + } + } + else if (memoState == 6) + { + htmltext = "30514-03.html"; + } + else if (memoState == 7) + { + if (hasQuestItems(player, TALISMAN_OF_SNAKE)) + { + takeItems(player, TALISMAN_OF_SNAKE, 1); + qs.setMemoState(8); + qs.setCond(8, true); + htmltext = "30514-04.html"; + } + } + else if (memoState == 8) + { + htmltext = "30514-05.html"; + } + break; + } + case SAGITTARIUS_HAMIL: + { + if (memoState == 1) + { + if (hasQuestItems(player, BERNARDS_INTRODUCTION)) + { + htmltext = "30626-01.html"; + } + } + else if (memoState == 2) + { + if (hasQuestItems(player, HAMILS_1ST_LETTER)) + { + htmltext = "30626-04.html"; + } + } + else if (memoState == 4) + { + if (getQuestItemsCount(player, HUNTERS_1ST_RUNE) == 10) + { + htmltext = "30626-05.html"; + } + } + else if (memoState == 5) + { + if (hasQuestItems(player, HAMILS_2ND_LETTER)) + { + htmltext = "30626-08.html"; + } + } + else if (memoState == 8) + { + giveItems(player, HAMILS_3RD_LETTER, 1); + takeItems(player, HUNTERS_2ND_RUNE, -1); + qs.setMemoState(9); + qs.setCond(9, true); + htmltext = "30626-09.html"; + } + else if (memoState == 9) + { + if (hasQuestItems(player, HAMILS_3RD_LETTER)) + { + htmltext = "30626-10.html"; + } + } + else if (memoState == 12) + { + if (hasQuestItems(player, CRESCENT_MOON_BOW)) + { + qs.setCond(13, true); + qs.setMemoState(13); + htmltext = "30626-11.html"; + } + } + else if (memoState == 13) + { + htmltext = "30626-12.html"; + } + else if (memoState == 14) + { + if (hasQuestItems(player, TALISMAN_OF_KADESH)) + { + giveAdena(player, 161806, true); + giveItems(player, MARK_OF_SAGITTARIUS, 1); + addExpAndSp(player, 894888, 61408); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30626-13.html"; + } + } + break; + } + case SIR_ARON_TANFORD: + { + if (memoState == 2) + { + if (hasQuestItems(player, HAMILS_1ST_LETTER)) + { + htmltext = "30653-01.html"; + } + } + else if (memoState == 3) + { + htmltext = "30653-03.html"; + } + break; + } + case MAGISTER_GAUEN: + { + if (memoState == 9) + { + if (hasQuestItems(player, HAMILS_3RD_LETTER)) + { + takeItems(player, HAMILS_3RD_LETTER, 1); + qs.setMemoState(10); + qs.setCond(10, true); + htmltext = "30717-01.html"; + } + } + else if (memoState == 10) + { + htmltext = "30717-03.html"; + } + else if (memoState == 12) + { + htmltext = "30717-04.html"; + } + else if (memoState == 11) + { + if (hasQuestItems(player, STAKATO_CHITIN, MITHRIL_CLIP, REINFORCED_BOWSTRING, MANASHENS_HORN)) + { + giveItems(player, WOODEN_ARROW, 10); + giveItems(player, CRESCENT_MOON_BOW, 1); + takeItems(player, MITHRIL_CLIP, 1); + takeItems(player, STAKATO_CHITIN, 1); + takeItems(player, REINFORCED_BOWSTRING, 1); + takeItems(player, MANASHENS_HORN, 1); + qs.setMemoState(12); + qs.setCond(12, true); + htmltext = "30717-02.html"; + } + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == GUILD_PRESIDENT_BERNARD) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-01.html new file mode 100644 index 0000000000..a0f221876b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-01.html @@ -0,0 +1,7 @@ +Alex:
+Welcome, my friend. If Master Luther sent you here you must be ready to get to work.
+Floran Village needs more good workers like you. We don't have a guard or even a single skilled person!
+I have been waiting for you since I received the warrant of appointment. Take this and give it to my adjutant Militia Leirynn...
+She is a modest lady. I am afraid that work here may not be as easy as you think... I thank you in advance.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-01t.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-01t.html new file mode 100644 index 0000000000..c9c809962a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-01t.html @@ -0,0 +1,4 @@ +Alex:
+Most of the villagers who are left are the ones lucky enough to have escaped the Lord's tyranny. The troops are not defending the village so the villagers must defend themselves!
+Strangers and thieves overwhelm us as a sick tyrant oppresses us! These dark days may get darker still... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-02.html new file mode 100644 index 0000000000..421a76061c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-02.html @@ -0,0 +1,5 @@ +Alex:
+What are you still doing here? You must take the warrant I gave you to my adjutant Leirynn.
+Do whatever she says!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-03.html new file mode 100644 index 0000000000..a3b8e62ceb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-03.html @@ -0,0 +1,4 @@ +Alex:
+No one understands the situation here better than Leirynn. Follow her instructions explicitly.
+I know you won't disappoint me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-04.html new file mode 100644 index 0000000000..0c27b5cb0a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-04.html @@ -0,0 +1,8 @@ +Alex:
+Thank you for dealing with the delu Lizardman. I heard of your triumph from Leirynn.
+What's this, you found a Strange Map? Let me see it...
+Hmm... Dion territory... I can barely make out this name in the lower corner... 'Lambert'... Where have I heard that...?
+Oh yes... One of the Lord's royal guards had that name!
+I was under the impression that he absconded with Duke Ashton's Gold Bar during the farmer's revolt.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-05.html new file mode 100644 index 0000000000..e4e6b23df7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-05.html @@ -0,0 +1,5 @@ +Alex:
+It is said that the source of this gold was relics collected by Duke Ashton's men from ancient ruins. No one has seen this gold since it vanished en route from Gludio to Dion to support the war.
+It is rumored to be a vast amount, no one really knows. But now we have this Map!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-06.html new file mode 100644 index 0000000000..46712b3d9b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-06.html @@ -0,0 +1,7 @@ +Alex:
+I believe this Map will lead us to the prince's gold! I wonder how that delu Lizardman got this?
+If we can get to the gold before our opponents we will be able to hire soldiers and buy weapons with which to defend the village.
+Think of this as your last test. You must find the other parts of this Map and get the prince's lost Gold Bar.
+Whether you are successful or not, I will write you the letter of Recommendation you need.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-07.html new file mode 100644 index 0000000000..c21b564cc3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-07.html @@ -0,0 +1,3 @@ +Alex:
+I have a friend named Borys who used to be one of the Lord's royal guards. He was an excellent soldier until the death of his wife sent him into an alcoholic haze and he lost his position. He is in the Town of Gludio now, take this letter and find him. He may be able to tell you more. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-08.html new file mode 100644 index 0000000000..4876b9fc27 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-08.html @@ -0,0 +1,4 @@ +Alex:
+So you still have not met Borys? Go to the Town of Gludio, you will find him there.
+Tell him Alex sent you, he will be sure to help you. Don't forget to ask him about the prince's lost gold! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-09.html new file mode 100644 index 0000000000..2ddb20ff4f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-09.html @@ -0,0 +1,5 @@ +Alex:
+Hmmm, it seems the royal guards hid the gold before it reached the prince! Now we can be sure that the gold exists, our only problem remaining is how to find it. First, of course, we must find the other 3 parts of the Map...
+I am afraid that the delu lizardmen are also on the search for the gold, and their numbers are increasing...
+We must find the gold before they do! Please hurry! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-10.html new file mode 100644 index 0000000000..dd1ca1aa6d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-10.html @@ -0,0 +1,5 @@ +Alex:
+You have found the Map! Good job!
+Ahhh, the World Map... Hurry to the place marked here and find the lost gold.
+I have heard from my adjutant Leirynn that the delu lizardmen have sent assassins to retrieve the Map, so be very careful. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-11.html new file mode 100644 index 0000000000..261d7903ca --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-11.html @@ -0,0 +1,4 @@ +Alex:
+Excellent work, my friend! Isn't it ironic that this gold collected at the behest of such a selfish Lord should be used for the good of the ones he oppressed?
+We all have you to thank for this. Please take this letter of Recommendation to Master Luther. I am honored to call you my comrade-in-arms. May God smile on your future ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-12.html new file mode 100644 index 0000000000..c4415b904e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30291-12.html @@ -0,0 +1,4 @@ +Alex:
+You are still here? You are welcome to stay here and fight for Floran's people, however, you must follow your own faith. I pray you find it.
+If you give the letter of Recommendation to Master Luther, he will bestow upon you the Mark of the Searcher. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30420-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30420-01.html new file mode 100644 index 0000000000..8fa2d3f0bf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30420-01.html @@ -0,0 +1,5 @@ +Trader Tyra:
+This Malrukian Wine is of the highest quality. It was made by distilling the spider's poison. The secret recipe is only inherited by the chosen ones, even amongst the Dark Elves. I cannot give it out freely.
+I shall make you a proposition. If you will find 10 pouches of the Red Spore Dust I shall trade the wine for them. What do you say? Is this acceptable?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30420-01a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30420-01a.html new file mode 100644 index 0000000000..21b70c4749 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30420-01a.html @@ -0,0 +1,3 @@ +Trader Tyra:
+You will find the Red Spore Dust within the giant fungus. The giant fungus can be found in the Sea of Spores. If you bring me 10 pouches of the Spore Dust, I shall give you the Malrukian Wine. I wrote this down on the Contract. Here, you sign here... Yes, it's done. May the protection of Shilen be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30420-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30420-02.html new file mode 100644 index 0000000000..16c907f1cb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30420-02.html @@ -0,0 +1,3 @@ +Trader Tyra:
+Have you forgetten our Contract? Shall we take a look at the document? 'A bottle of Malrukian Wine shall be traded for 10 pouches of the Red Spore Dust. There are our signatures, both mine and yours, right there. You will find the Red Spore Dust by killing the giant fungus of the Sea of Spores. I hope you fulfill the Contract soon. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30420-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30420-03.html new file mode 100644 index 0000000000..4d0df14589 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30420-03.html @@ -0,0 +1,3 @@ +Trader Tyra:
+You have brought 10 pouches of the Red Spore Dust. I shall give you the Malrukian Wine as promised. Here you go! Enjoy! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30420-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30420-04.html new file mode 100644 index 0000000000..2f9183bf07 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30420-04.html @@ -0,0 +1,3 @@ +Trader Tyra:
+Did you like the incredible flavor of the Malrukian Wine? Well... Only a Dark Elf can truly appreciate its complex flavor... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30627-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30627-01.html new file mode 100644 index 0000000000..db20a3bf5d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30627-01.html @@ -0,0 +1,4 @@ +Tree:
+An oak tree which can easily be seen in the northern part of Dion.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30627-01a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30627-01a.html new file mode 100644 index 0000000000..0692c61172 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30627-01a.html @@ -0,0 +1,3 @@ +Tree:
+A wooden box and a rusty key was found. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30628-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30628-01.html new file mode 100644 index 0000000000..33bf772d1e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30628-01.html @@ -0,0 +1,4 @@ +Strong Wooden Chest:
+It is a strong wooden chest, locked up tight.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30628-01a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30628-01a.html new file mode 100644 index 0000000000..440d3cb841 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30628-01a.html @@ -0,0 +1,3 @@ +Strong Wooden Chest:
+The box is opened. Twenty Gold Bars are inside. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-01.html new file mode 100644 index 0000000000..16ba00e866 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-01.html @@ -0,0 +1,4 @@ +Master Luther:
+Have you come for the Mark of the Searcher? The Mark is reserved for those with proven detection skills. Every year, many Hunters, Scouts, Excavators and even some Assassins come to me in hope of taking the Test of the Searcher, though you seem different from them... Are you sure that you are in the right place?
+(Quest only available for Human Rogue, Elven Scout, Assassin, or Scavenger above level 39.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-02.html new file mode 100644 index 0000000000..3012c01de4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-02.html @@ -0,0 +1,4 @@ +Master Luther:
+Have you come for the Mark of the Searcher? This mark is reserved for those who's ability for 'finding hidden things' is recognized. Every year, many Hunters, Scouts, Excavators and even some Assassins come to me in hope of taking the 'Test of the Searcher, but you do not have enough experience. Come back after you have improved your abilities.
+(Quest only available for Rogue, Elven Scout, Assassin, or Scavenger above level 39.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-03.htm new file mode 100644 index 0000000000..f6ac659c0d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-03.htm @@ -0,0 +1,4 @@ +Master Luther:
+Have you come for the Mark of the Searcher? This mark is reserved for those with recognized detection skills. Every year, many Hunters, Scouts, Excavators and even some Assassins come to me in hope of taking the Test of the Searcher. Is this what you seek?
+. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-04.htm new file mode 100644 index 0000000000..c76ec7a063 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-04.htm @@ -0,0 +1,4 @@ +Master Luther:
+Have you come for the Mark of the Searcher? This mark is reserved for those with recognized detection skills. Every year, many Hunters, Scouts, Excavators and even some Assassins come to me in hope of taking the Test of the Searcher, but a Dwarf like you? Do you happen to be a Bounty Hunter applicant? They are reputed to be the best Hunters among the Dwarves. But even within the Dwarf Guild, such titles are rare... It is said that only those who have proven their hunting skills and acquired the Mark of the Searcher are qualified to be a Bounty Hunter. If you wish to take the examination, I will gladly arrange it for you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-05.htm new file mode 100644 index 0000000000..a3b65ed8ca --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-05.htm @@ -0,0 +1,5 @@ +Master Luther:
+First you must visit Alex in Floran Village. He was once the kingdom's best Scout, and is famous for his activities as King Cadmus' immediate spy and messenger during the war with Gracia.
+But he grew disillusioned by the royal family and aristocrats at the time of the peasant's uprising and joined the militia corps of Floran. I have heard that they are lacking soldiers and supplies. Go and see him.
+Alex will test you and write a letter of Recommendation for you if you qualify. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-05a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-05a.htm new file mode 100644 index 0000000000..f53c8a7168 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-05a.htm @@ -0,0 +1,6 @@ +Master Luther:
+Visit Alex in Floran Village. Once the best scout in the kingdom, he served as King Cadmus' special messenger and spy during the Grecian War.
+Disenchanted by the nobility by their actions during the peasant revolt, he now fights alongside the Floran militia. I have heard that he is hard pressed for supplies and manpower, though. Go see him.
+If he evaluates you and is satisfied, he will let me know.
+Oh, take this Dimension Diamond. You can trade it to the village gatekeeper for something special that may help you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-06.html new file mode 100644 index 0000000000..18d8393221 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-06.html @@ -0,0 +1,3 @@ +Master Luther:
+Why are you still here? Alex's militia corps are in dire need of help.. Now go to Floran Village! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-07.html new file mode 100644 index 0000000000..b926eb09ff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-07.html @@ -0,0 +1,3 @@ +Master Luther:
+How was your visit with Alex? I assume he hasn't given you the letter yet. I would think that he would be in need of your help right now! He must have given you a task... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-08.html new file mode 100644 index 0000000000..2f20230f78 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30690-08.html @@ -0,0 +1,5 @@ +Master Luther:
+Ha, I guess Alex grew somewhat attached to you... At the end of the Recommendation letter he joked that he would like me to come up with a reason to send you back to him. I heard that you recovered Ashton's gold from the delu lizardmen! That must have been interesting...
+So how about it, would you like to go back to see Alex? Ha, just kidding!
+Here is the Mark of the Searcher. Thank you for the good work you have done! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-01.html new file mode 100644 index 0000000000..387ef321fd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-01.html @@ -0,0 +1,4 @@ +Militiaman Leirynn:
+Welcome. Recently a large group of delu lizardmen have gathered, threatening the village. We are badly outnumbered and may have to resort to guerrilla tactics.
+I realize that this is rather sudden, but could you please find the delu lizardmen's shaman and kill them? There are 10 of them all together. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-02.html new file mode 100644 index 0000000000..ab33bff74d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-02.html @@ -0,0 +1,3 @@ +Militiaman Leirynn:
+There are some shamans left. You must find all of them and kill them! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-03.html new file mode 100644 index 0000000000..25c06f5809 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-03.html @@ -0,0 +1,3 @@ +Militiaman Leirynn:
+Thank you so much for your help! One more thing... Apparently the delu lizardmen do not intend to attack the village... They seem to be looking for something... What could be so precious that the whole tribe would be looking for it? I am sure that Delu Chief Kalkis knows something. Could you please go find out what he knows and then kill him? If you follow the path that heads towards the East, you will run into him. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-04.html new file mode 100644 index 0000000000..701dabbd79 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-04.html @@ -0,0 +1,3 @@ +Militiaman Leirynn:
+Chief Kalkis is the leader of the whole delu tribe. Why would he have brought his whole tribe here to look for something? Find out what they are looking for and kill Chief Kalkis. If you follow the path that heads towards the East, you will run into him. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-05.html new file mode 100644 index 0000000000..2126d3d9fd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-05.html @@ -0,0 +1,3 @@ +Militiaman Leirynn:
+This Map looks somehow familiar but also strange... Seems that it's a nearby area, but its not quite right. I can't make heads or tails of it. Take this Map and report to Captain Alex. You must follow his directions. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-06.html new file mode 100644 index 0000000000..a64cde6065 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-06.html @@ -0,0 +1,3 @@ +Militiaman Leirynn:
+What are you still doing here? You must take this report to Alex before it is too late. He's waiting for the news. You know, something about that Map really bothers me... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-07.html new file mode 100644 index 0000000000..b8aebd4d3f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30728-07.html @@ -0,0 +1,4 @@ +Militiaman Leirynn:
+I understand that Alex gave you a task. It is very noble for you, an outsider, to help us like this. It is said that you saved our militia from starving...
+When the time is right, will you join me for dinner? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30729-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30729-01.html new file mode 100644 index 0000000000..45ff7ee6a5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30729-01.html @@ -0,0 +1,3 @@ +The drunken fool Boris:
+Burp. The royal Guards of the Lord? Yeah. They were royal Guards once. The Lord's gold? Of course the stories are true. I heard it all when I was a sentry at the Lord's camp. But I am too thirsty to talk now. The finest Malrukian Wine will do nicely... This wine is only available from the Dark Elves! I heard that the Dark Elf trader named 'Tyra' has a stock of it... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30729-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30729-02.html new file mode 100644 index 0000000000..10a82de3c7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30729-02.html @@ -0,0 +1,3 @@ +Drunkard Borys:
+My my...look who's here! Weren't you going to bring me a drink? I hope you brought the Malrukian Wine, the kind that the Dark Elven Trader Tyra sells... If I had a glass of that wine I would probably remember plenty about the gold... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30729-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30729-03.html new file mode 100644 index 0000000000..c6081fcbb4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30729-03.html @@ -0,0 +1,5 @@ +The drunken fool Boris:
+Ahh... This is it! Outstanding! My tongue is loosed by the fragrant nectar...
+Obviously the Lord's gold was being transported from Gludin to Dion. The 4 royal Guards carrying the gold schemed to hide it away... The Lord unsuccessfully pursued them. Somehow people got the idea that they perished in an accident..
+Actually, one of them, named Rovelt, is still alive. Now he goes by Bodyguard Jax and guards the Dwarf traders. He is probably somewhere in the southern part of the Wastelands now. He will tell you everything if show him this. Take it and go, my young friend. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30729-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30729-04.html new file mode 100644 index 0000000000..141dfb4c0f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30729-04.html @@ -0,0 +1,3 @@ +The drunken fool Boris:
+Rovelt is now called Bodyguard Jax... He's been hired by the Dwarf traders in the southern part of the Wastelands. Anyway, when you show him the document I gave you he will tell you everything about prince Ashton and the gold. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30729-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30729-05.html new file mode 100644 index 0000000000..ffef200152 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30729-05.html @@ -0,0 +1,3 @@ +The drunken fool Boris:
+Burp...! Haven't you found the gold yet? If you find it you should buy me another drink in gratitude! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-01.html new file mode 100644 index 0000000000..14c1aab9fd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-01.html @@ -0,0 +1,4 @@ +Bodyguard Jax:
+Royal Guards of the Lord? Gold of Prince Ashiton? What are you talking about? Are you drunk?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-01a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-01a.html new file mode 100644 index 0000000000..717c93f958 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-01a.html @@ -0,0 +1,6 @@ +Bodyguard Jax:
+Where did you find this? I never expected to see this Map again... Ok. I will tell you.
+Prince intended to hire Soldiers with that gold, The Shark Troop, famous for its inhumanity...
+Although I didn't owe the villagers anything, I could not allow the innocent people to fall into the shark's mouth. So I instigated my comrades...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-01b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-01b.html new file mode 100644 index 0000000000..f5cdb7d706 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-01b.html @@ -0,0 +1,5 @@ +Bodyguard Jax:
+I buried the gold in Dion's southern forest. We made a map to the place, divided it into 4 pieces, and took 1 piece each. It meant none of us could return there without the others...
+I first knew the gold was cursed when I heard about the unfortunate deaths of my 3 comrades. So I decided to forget it all and live quietly here.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-01c.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-01c.html new file mode 100644 index 0000000000..935da03889 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-01c.html @@ -0,0 +1,7 @@ +Bodyguard Jax:
+Solt and I were very close... He died on his way home to Elmoreden. Murdered by thieves called Road Scavengers...
+Makell was the idealist, he joined the rebel army... In the end, he was caught and executed. His body was hung from a tree as a reminder to others... This tree grew animated, and is now known as the Hangman Tree.
+Rambert was very much like me, working as a high trader's Guard. He lost his life in battle with a Delu Lizardman.
+And now you hold the Map!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-01d.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-01d.html new file mode 100644 index 0000000000..53a2c2ad5c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-01d.html @@ -0,0 +1,3 @@ +Bodyguard Jax:
+My memory is not so good...I will give you my diary instead. If you can find the Maps of Solt and Makell with this, I will give you my portion of the Map. I have quit my job and am trying to come to terms with my past. I have no desire for gold. I just hope that if the gold is found it is used for a good cause... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-02.html new file mode 100644 index 0000000000..cddf025dde --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-02.html @@ -0,0 +1,5 @@ +Bodyguard Jax:
+You have not found the other portions of the Map yet. Was there something else you wanted to know?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-02a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-02a.html new file mode 100644 index 0000000000..5202cf2426 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-02a.html @@ -0,0 +1,4 @@ +Bodyguard Jax:
+Solt was murdered on his way home to the Elmoreden Kingdom. He was murdered by thieves called Road Scavengers near the Death Pass. He was my best friend... Such a needless death...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-02b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-02b.html new file mode 100644 index 0000000000..8dd9259315 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-02b.html @@ -0,0 +1,5 @@ +Bodyguard Jax:
+Makell was incensed by Prince Ashton's tyranny and joined a rebel army of farmers. Eventually he was caught and executed. He was hanged with other rebels.
+Prince Ashton decreed that his body be hung from a tree as a lesson to others...but the tree itself became animated and is now called Hangman Tree, and roams about the scaffold.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-03.html new file mode 100644 index 0000000000..02ba375386 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-03.html @@ -0,0 +1,4 @@ +Bodyguard Jax:
+You have found the Maps of Solt and Makell! Now with my portion all 4 pieces are reunited! Let us put them together and hold it close to the candle...
+These four dots create a cross... Here, the gold is buried in this place! I will mark it on your World Map. No payment is necessary, but I do expect you to use the gold for a good cause as you promised. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-04.html new file mode 100644 index 0000000000..d078f24127 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/30730-04.html @@ -0,0 +1,3 @@ +Bodyguard Jax:
+Go now and find the gold! I have heard that there are evil spirits searching for the gold in that area as well. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/Q00225_TestOfTheSearcher.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/Q00225_TestOfTheSearcher.java new file mode 100644 index 0000000000..5774af8c35 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00225_TestOfTheSearcher/Q00225_TestOfTheSearcher.java @@ -0,0 +1,605 @@ +/* + * 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.Q00225_TestOfTheSearcher; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Test Of The Searcher (225) + * @author ivantotov + */ +public final class Q00225_TestOfTheSearcher extends Quest +{ + // NPCs + private static final int CAPTAIN_ALEX = 30291; + private static final int TYRA = 30420; + private static final int TREE = 30627; + private static final int STRONG_WOODEN_CHEST = 30628; + private static final int MASTER_LUTHER = 30690; + private static final int MILITIAMAN_LEIRYNN = 30728; + private static final int DRUNKARD_BORYS = 30729; + private static final int BODYGUARD_JAX = 30730; + // Items + private static final int LUTHERS_LETTER = 2784; + private static final int ALEXS_WARRANT = 2785; + private static final int LEIRYNNS_1ST_ORDER = 2786; + private static final int DELU_TOTEM = 2787; + private static final int LEIRYNNS_2ND_ORDER = 2788; + private static final int CHIEF_KALKIS_FANG = 2789; + private static final int LEIRYNNS_REPORT = 2790; + private static final int STRINGE_MAP = 2791; + private static final int LAMBERTS_MAP = 2792; + private static final int ALEXS_LETTER = 2793; + private static final int ALEXS_ORDER = 2794; + private static final int WINE_CATALOG = 2795; + private static final int TYRAS_CONTRACT = 2796; + private static final int RED_SPORE_DUST = 2797; + private static final int MALRUKIAN_WINE = 2798; + private static final int OLD_ORDER = 2799; + private static final int JAXS_DIARY = 2800; + private static final int TORN_MAP_PIECE_1ST = 2801; + private static final int TORN_MAP_PIECE_2ND = 2802; + private static final int SOLTS_MAP = 2803; + private static final int MAKELS_MAP = 2804; + private static final int COMBINED_MAP = 2805; + private static final int RUSTED_KEY = 2806; + private static final int GOLD_BAR = 2807; + private static final int ALEXS_RECOMMEND = 2808; + // Reward + private static final int MARK_OF_SEARCHER = 2809; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monster + private static final int HANGMAN_TREE = 20144; + private static final int ROAD_SCAVENGER = 20551; + private static final int GIANT_FUNGUS = 20555; + private static final int DELU_lIZARDMAN_SHAMAN = 20781; + // Quest Monster + private static final int NEER_BODYGUARD = 27092; + private static final int DELU_CHIEF_KALKIS = 27093; + // Misc + private static final int MIN_LEVEL = 39; + + public Q00225_TestOfTheSearcher() + { + super(225); + addStartNpc(MASTER_LUTHER); + addTalkId(MASTER_LUTHER, CAPTAIN_ALEX, TYRA, TREE, STRONG_WOODEN_CHEST, MILITIAMAN_LEIRYNN, DRUNKARD_BORYS, BODYGUARD_JAX); + addKillId(HANGMAN_TREE, ROAD_SCAVENGER, GIANT_FUNGUS, DELU_lIZARDMAN_SHAMAN, NEER_BODYGUARD, DELU_CHIEF_KALKIS); + addAttackId(DELU_lIZARDMAN_SHAMAN); + registerQuestItems(LUTHERS_LETTER, ALEXS_WARRANT, LEIRYNNS_1ST_ORDER, DELU_TOTEM, LEIRYNNS_2ND_ORDER, CHIEF_KALKIS_FANG, LEIRYNNS_REPORT, STRINGE_MAP, LAMBERTS_MAP, ALEXS_LETTER, ALEXS_ORDER, WINE_CATALOG, TYRAS_CONTRACT, RED_SPORE_DUST, MALRUKIAN_WINE, OLD_ORDER, JAXS_DIARY, TORN_MAP_PIECE_1ST, TORN_MAP_PIECE_2ND, SOLTS_MAP, MAKELS_MAP, COMBINED_MAP, RUSTED_KEY, GOLD_BAR, ALEXS_RECOMMEND); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + qs.setMemoState(1); + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + giveItems(player, LUTHERS_LETTER, 1); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + if (player.getClassId() == ClassId.SCAVENGER) + { + giveItems(player, DIMENSIONAL_DIAMOND, 82); + } + else + { + giveItems(player, DIMENSIONAL_DIAMOND, 96); + } + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30690-05a.htm"; + } + else + { + htmltext = "30690-05.htm"; + } + } + break; + } + case "30291-05.html": + case "30291-01t.html": + case "30291-06.html": + case "30730-01a.html": + case "30730-01b.html": + case "30730-01c.html": + case "30730-02.html": + case "30730-02a.html": + case "30730-02b.html": + { + htmltext = event; + break; + } + case "30291-07.html": + { + if (hasQuestItems(player, LEIRYNNS_REPORT, STRINGE_MAP)) + { + takeItems(player, LEIRYNNS_REPORT, 1); + takeItems(player, STRINGE_MAP, 1); + giveItems(player, LAMBERTS_MAP, 1); + giveItems(player, ALEXS_LETTER, 1); + giveItems(player, ALEXS_ORDER, 1); + qs.setCond(8, true); + htmltext = event; + } + break; + } + case "30420-01a.html": + { + if (hasQuestItems(player, WINE_CATALOG)) + { + takeItems(player, WINE_CATALOG, 1); + giveItems(player, TYRAS_CONTRACT, 1); + qs.setCond(10, true); + htmltext = event; + } + break; + } + case "30627-01a.html": + { + if (npc.getSummonedNpcCount() < 5) + { + giveItems(player, RUSTED_KEY, 1); + addSpawn(npc, STRONG_WOODEN_CHEST, npc, true, 0); + qs.setCond(17, true); + htmltext = event; + } + break; + } + case "30628-01a.html": + { + takeItems(player, RUSTED_KEY, 1); + giveItems(player, GOLD_BAR, 20); + qs.setCond(18, true); + npc.deleteMe(); + htmltext = event; + break; + } + case "30730-01d.html": + { + if (hasQuestItems(player, OLD_ORDER)) + { + takeItems(player, OLD_ORDER, 1); + giveItems(player, JAXS_DIARY, 1); + qs.setCond(14, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onAttack(L2Npc npc, L2PcInstance attacker, int damage, boolean isSummon) + { + final QuestState qs = getQuestState(attacker, false); + if ((qs != null) && qs.isStarted()) + { + if (npc.isScriptValue(0) && hasQuestItems(attacker, LEIRYNNS_1ST_ORDER)) + { + npc.setScriptValue(1); + addAttackPlayerDesire(addSpawn(NEER_BODYGUARD, npc, true, 200000), attacker); + } + } + return super.onAttack(npc, attacker, damage, isSummon); + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case HANGMAN_TREE: + { + if (hasQuestItems(killer, JAXS_DIARY) && !hasQuestItems(killer, MAKELS_MAP) && (getQuestItemsCount(killer, TORN_MAP_PIECE_2ND) < 4)) + { + if (getQuestItemsCount(killer, TORN_MAP_PIECE_2ND) < 3) + { + if (getRandom(100) < 50) + { + giveItems(killer, TORN_MAP_PIECE_2ND, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + else if (getRandom(100) < 50) + { + takeItems(killer, TORN_MAP_PIECE_2ND, -1); + giveItems(killer, MAKELS_MAP, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (getQuestItemsCount(killer, SOLTS_MAP) >= 1) + { + qs.setCond(15); + } + } + } + break; + } + case ROAD_SCAVENGER: + { + if (hasQuestItems(killer, JAXS_DIARY) && !hasQuestItems(killer, SOLTS_MAP) && (getQuestItemsCount(killer, TORN_MAP_PIECE_1ST) < 4)) + { + if (getQuestItemsCount(killer, TORN_MAP_PIECE_1ST) < 3) + { + giveItems(killer, TORN_MAP_PIECE_1ST, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + else + { + takeItems(killer, TORN_MAP_PIECE_1ST, -1); + giveItems(killer, SOLTS_MAP, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (getQuestItemsCount(killer, MAKELS_MAP) >= 1) + { + qs.setCond(15); + } + } + } + break; + } + case GIANT_FUNGUS: + { + if (hasQuestItems(killer, TYRAS_CONTRACT) && (getQuestItemsCount(killer, RED_SPORE_DUST) < 10)) + { + giveItems(killer, RED_SPORE_DUST, 1); + if (getQuestItemsCount(killer, RED_SPORE_DUST) >= 10) + { + qs.setCond(11, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case DELU_lIZARDMAN_SHAMAN: + { + if (hasQuestItems(killer, LEIRYNNS_1ST_ORDER) && (getQuestItemsCount(killer, DELU_TOTEM) < 10)) + { + giveItems(killer, DELU_TOTEM, 1); + if (getQuestItemsCount(killer, RED_SPORE_DUST) >= 10) + { + qs.setCond(4, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case DELU_CHIEF_KALKIS: + { + if (hasQuestItems(killer, LEIRYNNS_2ND_ORDER) && !hasAtLeastOneQuestItem(killer, CHIEF_KALKIS_FANG, STRINGE_MAP)) + { + giveItems(killer, CHIEF_KALKIS_FANG, 1); + giveItems(killer, STRINGE_MAP, 1); + qs.setCond(6, true); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == MASTER_LUTHER) + { + if ((player.getClassId() == ClassId.ROGUE) || (player.getClassId() == ClassId.ELVEN_SCOUT) || (player.getClassId() == ClassId.ASSASSIN) || (player.getClassId() == ClassId.SCAVENGER)) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (player.getClassId() == ClassId.SCAVENGER) + { + htmltext = "30690-04.htm"; + } + else + { + htmltext = "30690-03.htm"; + } + } + else + { + htmltext = "30690-02.html"; + } + } + else + { + htmltext = "30690-01.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case MASTER_LUTHER: + { + if (hasQuestItems(player, LUTHERS_LETTER) && !hasQuestItems(player, ALEXS_RECOMMEND)) + { + htmltext = "30690-06.html"; + } + else if (!hasAtLeastOneQuestItem(player, LUTHERS_LETTER, ALEXS_RECOMMEND)) + { + htmltext = "30690-07.html"; + } + else if (!hasQuestItems(player, LUTHERS_LETTER) && hasQuestItems(player, ALEXS_RECOMMEND)) + { + giveAdena(player, 161806, true); + giveItems(player, MARK_OF_SEARCHER, 1); + addExpAndSp(player, 894888, 61408); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30690-08.html"; + } + break; + } + case CAPTAIN_ALEX: + { + if (hasQuestItems(player, LUTHERS_LETTER)) + { + takeItems(player, LUTHERS_LETTER, 1); + giveItems(player, ALEXS_WARRANT, 1); + qs.setCond(2, true); + htmltext = "30291-01.html"; + } + else if (hasQuestItems(player, ALEXS_WARRANT)) + { + htmltext = "30291-02.html"; + } + else if (hasAtLeastOneQuestItem(player, LEIRYNNS_1ST_ORDER, LEIRYNNS_2ND_ORDER)) + { + htmltext = "30291-03.html"; + } + else if (hasQuestItems(player, LEIRYNNS_REPORT)) + { + htmltext = "30291-04.html"; + } + else if (hasQuestItems(player, ALEXS_ORDER)) + { + if (hasQuestItems(player, ALEXS_LETTER)) + { + htmltext = "30291-08.html"; + } + else if (hasAtLeastOneQuestItem(player, OLD_ORDER, JAXS_DIARY)) + { + htmltext = "30291-09.html"; + } + else if (hasQuestItems(player, COMBINED_MAP)) + { + if (getQuestItemsCount(player, GOLD_BAR) == 20) + { + takeItems(player, ALEXS_ORDER, 1); + takeItems(player, COMBINED_MAP, 1); + takeItems(player, GOLD_BAR, -1); + giveItems(player, ALEXS_RECOMMEND, 1); + player.getRadar().removeMarker(10133, 157155, -2383); + qs.setCond(19, true); + htmltext = "30291-11.html"; + } + else + { + htmltext = "30291-10.html"; + } + } + } + else if (hasQuestItems(player, ALEXS_RECOMMEND)) + { + htmltext = "30291-12.html"; + } + break; + } + case TYRA: + { + if (hasQuestItems(player, WINE_CATALOG)) + { + htmltext = "30420-01.html"; + } + else if (hasQuestItems(player, TYRAS_CONTRACT)) + { + if (getQuestItemsCount(player, RED_SPORE_DUST) < 10) + { + htmltext = "30420-02.html"; + } + else + { + takeItems(player, TYRAS_CONTRACT, 1); + takeItems(player, RED_SPORE_DUST, -1); + giveItems(player, MALRUKIAN_WINE, 1); + qs.setCond(12, true); + htmltext = "30420-03.html"; + } + } + else if (hasAtLeastOneQuestItem(player, JAXS_DIARY, OLD_ORDER, COMBINED_MAP, ALEXS_RECOMMEND, MALRUKIAN_WINE)) + { + htmltext = "30420-04.html"; + } + break; + } + case TREE: + { + if (hasQuestItems(player, COMBINED_MAP)) + { + if (!hasAtLeastOneQuestItem(player, RUSTED_KEY, GOLD_BAR)) + { + htmltext = "30627-01.html"; + } + else if (hasQuestItems(player, RUSTED_KEY) && (getQuestItemsCount(player, GOLD_BAR) >= 20)) + { + htmltext = "30627-01.html"; + } + } + break; + } + case STRONG_WOODEN_CHEST: + { + if (hasQuestItems(player, RUSTED_KEY)) + { + htmltext = "30628-01.html"; + } + break; + } + case MILITIAMAN_LEIRYNN: + { + if (hasQuestItems(player, ALEXS_WARRANT)) + { + takeItems(player, ALEXS_WARRANT, 1); + giveItems(player, LEIRYNNS_1ST_ORDER, 1); + qs.setCond(3, true); + htmltext = "30728-01.html"; + } + else if (hasQuestItems(player, LEIRYNNS_1ST_ORDER)) + { + if (getQuestItemsCount(player, DELU_TOTEM) < 10) + { + htmltext = "30728-02.html"; + } + else + { + takeItems(player, LEIRYNNS_1ST_ORDER, 1); + takeItems(player, DELU_TOTEM, -1); + giveItems(player, LEIRYNNS_2ND_ORDER, 1); + qs.setCond(5, true); + htmltext = "30728-03.html"; + } + } + else if (hasQuestItems(player, LEIRYNNS_2ND_ORDER)) + { + if (!hasQuestItems(player, CHIEF_KALKIS_FANG)) + { + htmltext = "30728-04.html"; + } + else + { + takeItems(player, LEIRYNNS_2ND_ORDER, 1); + takeItems(player, CHIEF_KALKIS_FANG, 1); + giveItems(player, LEIRYNNS_REPORT, 1); + qs.setCond(7, true); + htmltext = "30728-05.html"; + } + } + else if (hasQuestItems(player, LEIRYNNS_REPORT)) + { + htmltext = "30728-06.html"; + } + else if (hasAtLeastOneQuestItem(player, ALEXS_RECOMMEND, ALEXS_ORDER)) + { + htmltext = "30728-07.html"; + } + break; + } + case DRUNKARD_BORYS: + { + if (hasQuestItems(player, ALEXS_LETTER)) + { + takeItems(player, ALEXS_LETTER, 1); + giveItems(player, WINE_CATALOG, 1); + qs.setCond(9, true); + htmltext = "30729-01.html"; + } + else if (hasQuestItems(player, WINE_CATALOG) && !hasQuestItems(player, MALRUKIAN_WINE)) + { + htmltext = "30729-02.html"; + } + else if (hasQuestItems(player, MALRUKIAN_WINE) && !hasQuestItems(player, WINE_CATALOG)) + { + takeItems(player, MALRUKIAN_WINE, 1); + giveItems(player, OLD_ORDER, 1); + qs.setCond(13, true); + htmltext = "30729-03.html"; + } + else if (hasQuestItems(player, OLD_ORDER)) + { + htmltext = "30729-04.html"; + } + else if (hasAtLeastOneQuestItem(player, JAXS_DIARY, COMBINED_MAP, ALEXS_RECOMMEND)) + { + htmltext = "30729-05.html"; + } + break; + } + case BODYGUARD_JAX: + { + if (hasQuestItems(player, OLD_ORDER)) + { + htmltext = "30730-01.html"; + } + else if (hasQuestItems(player, JAXS_DIARY)) + { + if (((getQuestItemsCount(player, SOLTS_MAP) + getQuestItemsCount(player, MAKELS_MAP)) < 2)) + { + htmltext = "30730-02.html"; + } + else if (((getQuestItemsCount(player, SOLTS_MAP) + getQuestItemsCount(player, MAKELS_MAP)) == 2)) + { + takeItems(player, LAMBERTS_MAP, 1); + takeItems(player, JAXS_DIARY, 1); + takeItems(player, SOLTS_MAP, 1); + takeItems(player, MAKELS_MAP, -1); + giveItems(player, COMBINED_MAP, 1); + qs.setCond(16, true); + htmltext = "30730-03.html"; + } + } + else if (hasAtLeastOneQuestItem(player, COMBINED_MAP, ALEXS_RECOMMEND)) + { + htmltext = "30730-04.html"; + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == MASTER_LUTHER) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30327-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30327-01.html new file mode 100644 index 0000000000..c7808d200a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30327-01.html @@ -0,0 +1,4 @@ +Master Sorius:
+I have heard from Priest Bandellos. We will help in any way we can in your investigation.
+What we know so far is that it seems that the followers of Shilen kidnapped the girl. Meet the Dwarf called Daurin Hammercrush in the northwest part of Turek Orc Barracks. He is our spy who set off ahead of us. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30327-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30327-02.html new file mode 100644 index 0000000000..7cac37a6d2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30327-02.html @@ -0,0 +1,3 @@ +Master Sorius:
+Hurry up! I cannot guarantee the child's safety! There is one of our spies who set off ahead of us. Meet the Dwarf called Daurin Hammercrush in the northwest part of Turek Orc Barracks. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30327-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30327-03.html new file mode 100644 index 0000000000..1d1673f270 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30327-03.html @@ -0,0 +1,3 @@ +Master Sorius:
+Good job, indeed. I will inform Priest Bandellos of your success... You are taking the Trial of the Healer, are you not? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30327-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30327-04.html new file mode 100644 index 0000000000..4b5a054716 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30327-04.html @@ -0,0 +1,3 @@ +Master Sorius:
+Please go see Priest Bandellos right away! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30424-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30424-01.html new file mode 100644 index 0000000000..65ed7b3d66 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30424-01.html @@ -0,0 +1,3 @@ +Allana:
+How could I have possibly incited Perrin? I remember mentioning in conversation a girl with strange powers who grew up with me in the orphanage. Soon afterward, Perrin asked me about her. I told him everything I knew... We were in an orphanage near Gludio Castle... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30424-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30424-02.html new file mode 100644 index 0000000000..2d307b2ea6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30424-02.html @@ -0,0 +1,3 @@ +Allana :
+We grew up together in an orphanage near Gludio Castle that was operated by a Dwarven Father. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30428-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30428-01.html new file mode 100644 index 0000000000..3274a0b66f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30428-01.html @@ -0,0 +1,5 @@ +Perrin:
+Ah, the saint! Oh, yes, you have the right person for any question you may have about the saint... You must be a representative of the shrine. I've been expecting you. If you like, I could let you take her with you. Better than just having a meeting with her, huh?
+But, one condition... We have had quite a few expenses in our search for and protection of the saint... I was hoping that the shrine would compensate us... It comes to about 100,000 Adena...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30428-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30428-02.html new file mode 100644 index 0000000000..84b02a9dde --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30428-02.html @@ -0,0 +1,5 @@ +Perrin:
+Hey, that is not fair! You can't talk to me like that even if you are a representative of the shrine! If that's your attitude, I have someone that wants to meet you...
+Hey, Tatoma! Come over here and teach this child a lesson!
+My young friend, I would like to introduce you Tatoma, the elder brother of the famous Tamil. He is much stronger than his brother! This would not have been necessary if you had only given us the money... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30428-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30428-03.html new file mode 100644 index 0000000000..1a337324ee --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30428-03.html @@ -0,0 +1,6 @@ +Perrin:
+Hey, hey! Easy there...! OK, if 100,000 is too much how about 90,000... 80,000... OK, let's make it half, 50,000!
+Don't look at me like that... Please, at least 1,000 Adena...
+Stop it! OK, OK! The truth!
+I have only heard of the saint! At one time I was seeing a girl named Allana... She told me that she knew a way that we could make a lot of money! I was just... Oh, rats! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30428-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30428-04.html new file mode 100644 index 0000000000..b619db3dd6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30428-04.html @@ -0,0 +1,3 @@ +Perrin:
+Please, that is all I know! You should ask Allana for the details! She lives near the harbor! I am very busy, so please excuse me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-01.html new file mode 100644 index 0000000000..93ff145905 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-01.html @@ -0,0 +1,4 @@ +Priest Bandellos:
+The Mark of the Healer is reserved for those who understand the healing and purifying power of light. These properties of light transcend all tribal distinctions. One day you will be tested to determine if you are worthy to receive this mark. You are not ready for this test yet. Don't be discouraged, your time will come. Come back to see me when you have more experience, and we will discuss the Mark of the Healer...
+(Quest available only for Cleric, Oracle, or Elven Knights above level 39.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-02.html new file mode 100644 index 0000000000..9766963b09 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-02.html @@ -0,0 +1,5 @@ +Priest Bandellos:
+It is not the will of Einhasad that you take the Test of the Healer right now. A more suitable test awaits you elsewhere...
+May the grace of moonlight shine upon your path...
+(Quest available only for Cleric, Elven Oracle, Human Knight, Paladin, or Elven Knights above level 39.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-03.htm new file mode 100644 index 0000000000..54cc55c22f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-03.htm @@ -0,0 +1,5 @@ +Priest Bandellos:
+The Mark of the Healer is reserved for those who understand the healing and purifying power of light. These properties of light transcend all tribal distinctions.
+If you wish to take the challenge, I have but one favor I must ask...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-04.htm new file mode 100644 index 0000000000..ba32201486 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-04.htm @@ -0,0 +1,6 @@ +Priest Bandellos:
+There is a very old prophecy that says a day will come when all the people of this world will suffer under an overwhelming dark energy. In those days a girl will be born, a perfect representative of Einhasad, sent to purify this wicked world.
+And now a child is born, a girl who claims to be the One. Whether she is authentic or not, the church cannot ignore this.
+You must examine this matter carefully. This shall be your test.
+You must go and see Perrin at the Gludin Harbor. He is said to be protecting the holy child. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-04a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-04a.htm new file mode 100644 index 0000000000..1438afd816 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-04a.htm @@ -0,0 +1,7 @@ +Priest Bandellos:
+An ancient prophecy says that one day, when darkness fills the world as water does a bowl, and the groaning of the people can be heard in the rocks of the land itself, there will be born a girl-child, sent by Einhasad, who will cleanse the world.
+Now comes word that the long-awaited one may have finally arrived, a girl who claims that she is the very one mentioned in the prophecy. We must determine the truth of that claim.
+Your task is to investigate this matter in detail.
+First, visit Perrin in Gludin Village, who is currently protecting this supposed "saint."
+Before you go, take this Dimension Diamond. You can trade it to the village gatekeeper for something special that may help you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-05.html new file mode 100644 index 0000000000..8f211e5722 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-05.html @@ -0,0 +1,4 @@ +Priest Bandellos:
+Have you any news of the child? I wish I could tell you to take your time, but this is of the utmost urgency.
+If you don't have the time, you may give up, someone else will take up the cause... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-06.html new file mode 100644 index 0000000000..ddeff35e36 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-06.html @@ -0,0 +1,5 @@ +Priest Bandellos:
+I don't like the way this is looking. I must send a guard to protect the child immediately. And I must report this to the High Priest at once!
+Master Sorius has told me of your great contribution to this effort. He was very complimentary of your skills.
+You have certainly earned this Mark of the Healer. Thank you again, I hope this helps you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-07.html new file mode 100644 index 0000000000..38d61043ad --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-07.html @@ -0,0 +1,7 @@ +Priest Bandellos:
+I don't like the way this is looking. I must send a guard to protect the child immediately. And I must report this to the High Priest at once!
+Master Sorius has told me of your great contribution to this effort. He was very complimentary of your skills.
+There may come a day when I shall need your help again... I hope you keep your skills sharp for that day.
+Hmmmm, what is that you're holding in your hands...It looks familiar... It reminds me of something that was lost from the church recently. Do you mind if I have a look at it?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-08.html new file mode 100644 index 0000000000..a95d60b51f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-08.html @@ -0,0 +1,4 @@ +Priest Bandellos:
+Oh my, this is it! This is the holy statue that was stolen from us by bandits when we were on our way to the Gludio shrine! I hate to ask, but could you possibly return this relic to our shrine? We have been lost without it.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-09.html new file mode 100644 index 0000000000..1a24b3207e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30473-09.html @@ -0,0 +1,3 @@ +Priest Bandellos:
+Thank you. Now take this Mark of the Healer. May the blessings of Einhasad be upon you... We will never forget the help that you have given to us and to our shrine. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-01.html new file mode 100644 index 0000000000..faec2577cf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-01.html @@ -0,0 +1,7 @@ +Father Gupu:
+Ah, It seems you are talking about Kristina... But you're too late! She was recently kidnapped by some strange men that broke into the orphanage!
+Curse the fiends! What is this world coming to! And what have they done with Windy? No no, Ari, father is not mad!
+After Kristina's kidnapping, the Elf masters of the Town of Gludio came to help search for her, and now you. And all of them ignoring the fact that the orphanage is in ruins and the children are starving! If only I had 100,000 Adena, I would be able to buy beds for these children...
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-02.html new file mode 100644 index 0000000000..dd344832d4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-02.html @@ -0,0 +1,5 @@ +Father Gupu:
+Really? Are you really going to make a donation?
+Sob...! Thank you! I gladly accept! Children, say thank you... Wait, Windy is missing!
+I'm sorry, but could you please look for a little girl? She often goes to play in the Wastelands... She looks like... There should be a picture somewhere... Yes, she looks like this. The Wastelands is too dangerous of a place for a little girl... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-03.html new file mode 100644 index 0000000000..2fe210fca9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-03.html @@ -0,0 +1,3 @@ +Father Gupu:
+No no, its all right. I wasn't expecting anything from you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-04.html new file mode 100644 index 0000000000..d8e5024105 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-04.html @@ -0,0 +1,3 @@ +Father Gupu:
+That little girl causes such mischief! Oh Windy! Where are you! I hope she's not lost in the Wastelands all alone! Please, go and find her for me! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-05.html new file mode 100644 index 0000000000..d020444bb3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-05.html @@ -0,0 +1,3 @@ +Father Gupu:
+No no, I can tell by your clothes that you can't afford to give a donation. Forget about it...! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-06.html new file mode 100644 index 0000000000..ed6e7f1f70 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-06.html @@ -0,0 +1,7 @@ +Father Gupu:
+Thank you so much. Windy has just returned! She must be inside washing up!
+Windy! You little rascal! Do you know how worried I was?! Pull one more stunt like that, and you'll get a spanking you will never forget!
+Thank you for finding this child. Making a donation and finding a lost child... We are truly in your debt.
+Oh yes, by the way, Windy asked me to give this to you. It looks like a trinket that she picked up while playing in the Wastelands...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-07.html new file mode 100644 index 0000000000..1f8d17a29c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30658-07.html @@ -0,0 +1,3 @@ +Father Gupu:
+I don't know... I have no idea what's going on. Why don't you ask the Elves from Gludio Castle? I think they said they were from the Town of Gludio... And one of them was named Sorius. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30659-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30659-01.html new file mode 100644 index 0000000000..71bb1cbfa8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30659-01.html @@ -0,0 +1,3 @@ +Orphan Girl:
+Kristina? What a wonderfully strange person she is! Just the other day I sprained my ankle while trying to catch a frog. It hurt so bad that I started to cry, and then Kristina came and touched my ankle and it stopped hurting! It was a miracle! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30659-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30659-02.html new file mode 100644 index 0000000000..930651d5c7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30659-02.html @@ -0,0 +1,3 @@ +Orphan Girl:
+Father told us that he hated boys! He said that he had the most beautiful girls in the whole world! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30659-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30659-03.html new file mode 100644 index 0000000000..3498516c0a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30659-03.html @@ -0,0 +1,3 @@ +Orphan Girl:
+The saint? The prophecy? I've never heard of them...I am so hungry.. ...and cold... I just want some nice hot potatoes. Sob... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30659-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30659-04.html new file mode 100644 index 0000000000..a73fc30fa5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30659-04.html @@ -0,0 +1,3 @@ +Orphan Girl:
+Please help me, Warrior! Oh, Kristina... Poor Kristina... Strange people came and took her away... I was so frightened... I watched from behind a tree, trembling in fear. Sob... Poor Kristina... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30659-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30659-05.html new file mode 100644 index 0000000000..41bfc246f0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30659-05.html @@ -0,0 +1,3 @@ +Orphan Girl:
+Please help me, Warrior! Kristina was kidnapped by the lizardmen! They were being bossed around by some Dark Elves...! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30660-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30660-01.html new file mode 100644 index 0000000000..8b06fba57b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30660-01.html @@ -0,0 +1,4 @@ +Windy Shaoring:
+Don't scare my friends! This place is safe. I prefer to hang around with basilisks and my monster-eyed friends rather than my grumpy father!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30660-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30660-02.html new file mode 100644 index 0000000000..9d09769706 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30660-02.html @@ -0,0 +1,4 @@ +Windy Shaoring:
+...What are you talking about? Those monsters say hello to me, and I say hello back to them. That's how you make friends, you know. Can't you hear what the monsters are saying, Mystic?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30660-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30660-03.html new file mode 100644 index 0000000000..f7688a0f33 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30660-03.html @@ -0,0 +1,3 @@ +Windy Shaoring:
+The principal always gets mad at me and never lets me play with my monster friends. But now I am hungry and miss my orphan friends. I shall go back. Here, take this present from me. My monster friend gave it to me. Isn't it pretty? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30660-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30660-04.html new file mode 100644 index 0000000000..efa643ea2d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30660-04.html @@ -0,0 +1,3 @@ +Windy Shaoring:
+I want to say good-bye to my friends. A good child must be polite. You can go on ahead. My friends will take me to the orphanage. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30661-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30661-01.html new file mode 100644 index 0000000000..3b9bcaa51c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30661-01.html @@ -0,0 +1,6 @@ +Mysterious Dark Elf:
+I carry out the will of Shilen. Those who dare to stand in my way will be brought down with no mercy!
+I knew that you were tracking me... I suppose you are in the middle of the examination. So, does your future depend on capturing me? Ha! Who do I have to thank for this honor?
+Sorry to say, but this is a matter of life and death for me as well. I won't make things too easy for you.
+Soldiers, kill this man! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30661-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30661-02.html new file mode 100644 index 0000000000..0f1089738d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30661-02.html @@ -0,0 +1,4 @@ +Mysterious Dark Elf:
+Too bad! It doesn't make any difference in performing Shilen's will!
+Soldiers, kill that man! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30661-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30661-03.html new file mode 100644 index 0000000000..6fac725689 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30661-03.html @@ -0,0 +1,3 @@ +Mysterious Dark Elf:
+Oh... It's rather surprising that you have actually managed to follow me up until now. I'm sorry to say but I can't let you live any longer. If you are still alive in five minutes, I shall give you the title of Shillien Elder. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30661-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30661-04.html new file mode 100644 index 0000000000..a97940cc0c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30661-04.html @@ -0,0 +1,3 @@ +Mysterious Dark Elf:
+Urrgh... The magic that held the saint contained is undone! How dare you disrupt the holy ceremony of Shilen...! I will never forgive you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30662-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30662-01.html new file mode 100644 index 0000000000..2752317c51 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30662-01.html @@ -0,0 +1,4 @@ +Piper Longbow:
+My name is Piper. I was sent by Daurin to help you.
+I have been following a mysterious Dark Elf, he is nearby. Did you hear that? Let's investigate... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30662-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30662-02.html new file mode 100644 index 0000000000..68ee6de88c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30662-02.html @@ -0,0 +1,3 @@ +Piper Longbow:
+I think he saw us coming and ran away... Why was he at the altar? It seemed important, he may come back. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30662-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30662-03.html new file mode 100644 index 0000000000..7a4222dd31 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30662-03.html @@ -0,0 +1,3 @@ +Piper Longbow:
+I have found the saint that you were looking for! She is in a tent near the Altar of Rites! Go and see her now! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30663-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30663-01.html new file mode 100644 index 0000000000..e1808fd55a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30663-01.html @@ -0,0 +1,3 @@ +Slein Shining Blade:
+I am Slein, envoy of Daurin! I have been following a Dark Elf stranger around here. Come and help me catch him! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30663-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30663-02.html new file mode 100644 index 0000000000..0d97905b45 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30663-02.html @@ -0,0 +1,3 @@ +Slein Shining Blade:
+Damn, those Dark Elves are slippery! He is returning to his comrades! We must prepare for an onslaught! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30663-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30663-03.html new file mode 100644 index 0000000000..89a8b8eaf1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30663-03.html @@ -0,0 +1,3 @@ +Slein Shining Blade:
+My colleagues have located the Saintess that you were looking for! She is currently in a tent near the Initiation Altar of the Dark Elves! She will surely have an explanation for all of this... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30664-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30664-01.html new file mode 100644 index 0000000000..244c2708e1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30664-01.html @@ -0,0 +1,3 @@ +Cain Flying Knife:
+I am Cain. Daurin has asked me to assist you. The target is in that direction. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30664-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30664-02.html new file mode 100644 index 0000000000..a42ab52165 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30664-02.html @@ -0,0 +1,3 @@ +Cain Flying Knife:
+Escape is unlikely, he could not have gotten far! Search the area nearby. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30664-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30664-03.html new file mode 100644 index 0000000000..f5a873b9ec --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30664-03.html @@ -0,0 +1,3 @@ +Cain Flying Knife:
+First, meet with the saint. My colleagues tell me that she is in a tent near the Altar of Rites. She will know the truth about the incident. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30665-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30665-01.html new file mode 100644 index 0000000000..298217ada2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30665-01.html @@ -0,0 +1,4 @@ +Saint Kristina:
+Thank you! Finally! I can move around!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30665-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30665-02.html new file mode 100644 index 0000000000..7b8ca09195 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30665-02.html @@ -0,0 +1,6 @@ +Saint Kristina:
+I overheard the Dark Elf who kidnapped me say that the goddess is waking up, although I do not know what that means.
+But I know one thing for sure, it was my destiny to be kidnapped and brought here...
+I will stay here. The time has not yet come for my return to the shrine. It is now my duty to spread the word of light in this forest of darkness. The Dark Elves deserve to know the truth of Einhasad. To survive the Chaotic Chronicle we must all join together.
+Please take this letter to Master Sorius. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30665-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30665-03.html new file mode 100644 index 0000000000..a39ec60a7a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30665-03.html @@ -0,0 +1,3 @@ +Saint Kristina:
+Please, you must help me! You were sent by Priest Bandellos, weren't you? The Dark Elf who kidnapped me cast an evil spell and I can't move at all! I beg you. Please set me free! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30665-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30665-04.html new file mode 100644 index 0000000000..79f3ffa040 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30665-04.html @@ -0,0 +1,3 @@ +Saint Kristina:
+Did you give my letter to Master Sorius? Please take it to him right away! I implore you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30674-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30674-01.html new file mode 100644 index 0000000000..80f1669cdd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30674-01.html @@ -0,0 +1,4 @@ +Daurin Hammercrush:
+Hey, are you the one I am supposed to meet here? Have you heard?Leto Lizardmen are hiding in that house over there! Being alone, I couldn't take any action, I had to just follow them here.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30674-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30674-02.html new file mode 100644 index 0000000000..bbfe32267a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30674-02.html @@ -0,0 +1,3 @@ +Daurin Hammercrush:
+Those damn Leto Lizardmen! They must've been expecting us! Attack! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30674-02a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30674-02a.html new file mode 100644 index 0000000000..64bc7afbf4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30674-02a.html @@ -0,0 +1,3 @@ +Daurin Hammercrush:
+What are you waiting for?! Catch them before they get away. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30674-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30674-03.html new file mode 100644 index 0000000000..f692ac9364 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30674-03.html @@ -0,0 +1,4 @@ +Daurin Hammercrush:
+Hmm...what does this say? 'Perform the ritual at the Obelisk of Shilen'.. I think they took the girl to the obelisk in the Dark Forest. Then the Dark Elves are involved in this case? Curse them! There are many obelisks in the Dark Forest... We can't figure out which obelisk they are at with only this?!
+In any case, we have to track them as soon as possible. We must save the holy maiden before she becomes sacrificed. I am a Dwarf and slow on my feet, so you should leave first. I will send swift supporters to aid you, so hurry! They must be going to a place with an altar...! I will inform Sorius about the situation.
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30674-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30674-04.html new file mode 100644 index 0000000000..8ee904c20a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/30674-04.html @@ -0,0 +1,3 @@ +Daurin Hammercrush:
+Hey, what are you waiting for? The victim is a young girl! What if the Dark Elves do something unspeakable to her? You must find her quickly! They must have taken her to a place like an altar... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/Q00226_TestOfTheHealer.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/Q00226_TestOfTheHealer.java new file mode 100644 index 0000000000..f8339b6b60 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00226_TestOfTheHealer/Q00226_TestOfTheHealer.java @@ -0,0 +1,674 @@ +/* + * 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.Q00226_TestOfTheHealer; + +import com.l2jmobius.gameserver.enums.CategoryType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Test Of The Healer(226) + * @author ivantotov + */ +public final class Q00226_TestOfTheHealer extends Quest +{ + // NPCs + private static final int MASTER_SORIUS = 30327; + private static final int ALLANA = 30424; + private static final int PERRIN = 30428; + private static final int PRIEST_BANDELLOS = 30473; + private static final int FATHER_GUPU = 30658; + private static final int ORPHAN_GIRL = 30659; + private static final int WINDY_SHAORING = 30660; + private static final int MYSTERIOUS_DARK_ELF = 30661; + private static final int PIPER_LONGBOW = 30662; + private static final int SLEIN_SHINING_BLADE = 30663; + private static final int CAIN_FLYING_KNIFE = 30664; + private static final int SAINT_KRISTINA = 30665; + private static final int DAURIN_HAMMERCRUSH = 30674; + // Items + private static final int ADENA = 57; + private static final int REPORT_OF_PERRIN = 2810; + private static final int CRISTINAS_LETTER = 2811; + private static final int PICTURE_OF_WINDY = 2812; + private static final int GOLDEN_STATUE = 2813; + private static final int WINDYS_PEBBLES = 2814; + private static final int ORDER_OF_SORIUS = 2815; + private static final int SECRET_LETTER1 = 2816; + private static final int SECRET_LETTER2 = 2817; + private static final int SECRET_LETTER3 = 2818; + private static final int SECRET_LETTER4 = 2819; + // Reward + private static final int MARK_OF_HEALER = 2820; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Quest Monster + private static final int LERO_LIZARDMAN_AGENT = 27122; + private static final int LERO_LIZARDMAN_LEADER = 27123; + private static final int LERO_LIZARDMAN_ASSASSIN = 27124; + private static final int LERO_LIZARDMAN_SNIPER = 27125; + private static final int LERO_LIZARDMAN_WIZARD = 27126; + private static final int LERO_LIZARDMAN_LORD = 27127; + private static final int TATOMA = 27134; + // Misc + private static final int MIN_LEVEL = 39; + + public Q00226_TestOfTheHealer() + { + super(226); + addStartNpc(PRIEST_BANDELLOS); + addTalkId(PRIEST_BANDELLOS, MASTER_SORIUS, ALLANA, PERRIN, FATHER_GUPU, ORPHAN_GIRL, WINDY_SHAORING, MYSTERIOUS_DARK_ELF, PIPER_LONGBOW, SLEIN_SHINING_BLADE, CAIN_FLYING_KNIFE, SAINT_KRISTINA, DAURIN_HAMMERCRUSH); + addKillId(LERO_LIZARDMAN_AGENT, LERO_LIZARDMAN_LEADER, LERO_LIZARDMAN_ASSASSIN, LERO_LIZARDMAN_SNIPER, LERO_LIZARDMAN_WIZARD, LERO_LIZARDMAN_LORD, TATOMA); + registerQuestItems(REPORT_OF_PERRIN, CRISTINAS_LETTER, PICTURE_OF_WINDY, GOLDEN_STATUE, WINDYS_PEBBLES, ORDER_OF_SORIUS, SECRET_LETTER1, SECRET_LETTER2, SECRET_LETTER3, SECRET_LETTER4); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + qs.setMemoState(1); + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + giveItems(player, REPORT_OF_PERRIN, 1); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + if (player.getClassId() == ClassId.CLERIC) + { + giveItems(player, DIMENSIONAL_DIAMOND, 60); + } + else if (player.getClassId() == ClassId.KNIGHT) + { + giveItems(player, DIMENSIONAL_DIAMOND, 104); + } + else if (player.getClassId() == ClassId.ORACLE) + { + giveItems(player, DIMENSIONAL_DIAMOND, 45); + } + else + { + giveItems(player, DIMENSIONAL_DIAMOND, 72); + } + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30473-04a.htm"; + } + else + { + htmltext = "30473-04.htm"; + } + } + break; + } + case "30473-08.html": + { + if (qs.isMemoState(10) && hasQuestItems(player, GOLDEN_STATUE)) + { + htmltext = event; + } + break; + } + case "30473-09.html": + { + if (qs.isMemoState(10) && hasQuestItems(player, GOLDEN_STATUE)) + { + giveAdena(player, 233490, true); + giveItems(player, MARK_OF_HEALER, 1); + addExpAndSp(player, 738283, 50662); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = event; + } + break; + } + case "30428-02.html": + { + if (qs.isMemoState(1) && hasQuestItems(player, REPORT_OF_PERRIN)) + { + qs.setCond(2, true); + if (npc.getSummonedNpcCount() < 1) + { + addAttackPlayerDesire(addSpawn(npc, TATOMA, npc, true, 200000), player); + } + } + htmltext = event; + break; + } + case "30658-02.html": + { + if (qs.isMemoState(4) && !hasAtLeastOneQuestItem(player, PICTURE_OF_WINDY, WINDYS_PEBBLES, GOLDEN_STATUE)) + { + if (getQuestItemsCount(player, ADENA) >= 100000) + { + takeItems(player, ADENA, 100000); + giveItems(player, PICTURE_OF_WINDY, 1); + qs.setCond(7, true); + htmltext = event; + } + else + { + htmltext = "30658-05.html"; + } + } + break; + } + case "30658-03.html": + { + if (qs.isMemoState(4) && !hasAtLeastOneQuestItem(player, PICTURE_OF_WINDY, WINDYS_PEBBLES, GOLDEN_STATUE)) + { + qs.setMemoState(5); + htmltext = event; + } + break; + } + case "30658-07.html": + { + htmltext = event; + break; + } + case "30660-02.html": + { + if (hasQuestItems(player, PICTURE_OF_WINDY)) + { + htmltext = event; + } + break; + } + case "30660-03.html": + { + if (hasQuestItems(player, PICTURE_OF_WINDY)) + { + takeItems(player, PICTURE_OF_WINDY, 1); + giveItems(player, WINDYS_PEBBLES, 1); + qs.setCond(8, true); + npc.deleteMe(); + htmltext = event; + } + break; + } + case "30665-02.html": + { + if ((getQuestItemsCount(player, SECRET_LETTER1) + getQuestItemsCount(player, SECRET_LETTER2) + getQuestItemsCount(player, SECRET_LETTER3) + getQuestItemsCount(player, SECRET_LETTER4)) == 4) + { + giveItems(player, CRISTINAS_LETTER, 1); + takeItems(player, SECRET_LETTER1, 1); + takeItems(player, SECRET_LETTER2, 1); + takeItems(player, SECRET_LETTER3, 1); + takeItems(player, SECRET_LETTER4, 1); + qs.setMemoState(9); + qs.setCond(22, true); + htmltext = event; + } + break; + } + case "30674-02.html": + { + if (qs.isMemoState(6)) + { + qs.setCond(11); + takeItems(player, ORDER_OF_SORIUS, 1); + addSpawn(npc, LERO_LIZARDMAN_AGENT, npc, true, 200000); + addSpawn(npc, LERO_LIZARDMAN_AGENT, npc, true, 200000); + addSpawn(npc, LERO_LIZARDMAN_LEADER, npc, true, 200000); + playSound(player, QuestSound.ITEMSOUND_QUEST_BEFORE_BATTLE); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case LERO_LIZARDMAN_LEADER: + { + if (qs.isMemoState(6) && !hasQuestItems(killer, SECRET_LETTER1)) + { + giveItems(killer, SECRET_LETTER1, 1); + qs.setCond(12, true); + } + break; + } + case LERO_LIZARDMAN_ASSASSIN: + { + if (qs.isMemoState(8) && hasQuestItems(killer, SECRET_LETTER1) && !hasQuestItems(killer, SECRET_LETTER2)) + { + giveItems(killer, SECRET_LETTER2, 1); + qs.setCond(15, true); + } + break; + } + case LERO_LIZARDMAN_SNIPER: + { + if (qs.isMemoState(8) && hasQuestItems(killer, SECRET_LETTER1) && !hasQuestItems(killer, SECRET_LETTER3)) + { + giveItems(killer, SECRET_LETTER3, 1); + qs.setCond(17, true); + } + break; + } + case LERO_LIZARDMAN_LORD: + { + if (qs.isMemoState(8) && hasQuestItems(killer, SECRET_LETTER1) && !hasQuestItems(killer, SECRET_LETTER4)) + { + giveItems(killer, SECRET_LETTER4, 1); + qs.setCond(19, true); + } + break; + } + case TATOMA: + { + if (qs.isMemoState(1)) + { + qs.setMemoState(2); + qs.setCond(3, true); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + final int memoState = qs.getMemoState(); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == PRIEST_BANDELLOS) + { + if (player.isInCategory(CategoryType.WHITE_MAGIC_GROUP)) + { + if (player.getLevel() >= MIN_LEVEL) + { + htmltext = "30473-03.htm"; + } + else + { + htmltext = "30473-01.html"; + } + } + else + { + htmltext = "30473-02.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case PRIEST_BANDELLOS: + { + if ((memoState >= 1) && (memoState < 10)) + { + htmltext = "30473-05.html"; + } + else if (memoState == 10) + { + if (hasQuestItems(player, GOLDEN_STATUE)) + { + htmltext = "30473-07.html"; + } + else + { + giveAdena(player, 266980, true); + giveItems(player, MARK_OF_HEALER, 1); + addExpAndSp(player, 1476566, 101324); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30473-06.html"; + } + } + break; + } + case MASTER_SORIUS: + { + if (memoState == 5) + { + giveItems(player, ORDER_OF_SORIUS, 1); + qs.setMemoState(6); + qs.setCond(10, true); + htmltext = "30327-01.html"; + } + else if ((memoState >= 6) && (memoState < 9)) + { + htmltext = "30327-02.html"; + } + else if (memoState == 9) + { + if (hasQuestItems(player, CRISTINAS_LETTER)) + { + takeItems(player, CRISTINAS_LETTER, 1); + qs.setMemoState(10); + qs.setCond(23, true); + htmltext = "30327-03.html"; + } + } + else if (memoState >= 10) + { + htmltext = "30327-04.html"; + } + break; + } + case ALLANA: + { + if (memoState == 3) + { + qs.setMemoState(4); + qs.setCond(5, true); + htmltext = "30424-01.html"; + } + else if (memoState == 4) + { + qs.setMemoState(4); + htmltext = "30424-02.html"; + } + break; + } + case PERRIN: + { + if (memoState == 1) + { + if (hasQuestItems(player, REPORT_OF_PERRIN)) + { + htmltext = "30428-01.html"; + } + } + else if (memoState == 2) + { + takeItems(player, REPORT_OF_PERRIN, 1); + qs.setMemoState(3); + qs.setCond(4, true); + htmltext = "30428-03.html"; + } + else if (memoState == 3) + { + htmltext = "30428-04.html"; + } + break; + } + case FATHER_GUPU: + { + if (memoState == 4) + { + if (!hasAtLeastOneQuestItem(player, PICTURE_OF_WINDY, WINDYS_PEBBLES, GOLDEN_STATUE)) + { + qs.setCond(6, true); + htmltext = "30658-01.html"; + } + else if (hasQuestItems(player, PICTURE_OF_WINDY)) + { + htmltext = "30658-04.html"; + } + else if (hasQuestItems(player, WINDYS_PEBBLES)) + { + giveItems(player, GOLDEN_STATUE, 1); + takeItems(player, WINDYS_PEBBLES, 1); + qs.setMemoState(5); + htmltext = "30658-06.html"; + } + } + else if (memoState == 5) + { + qs.setCond(9, true); + htmltext = "30658-07.html"; + } + break; + } + case ORPHAN_GIRL: + { + switch (getRandom(5)) + { + case 0: + { + htmltext = "30659-01.html"; + break; + } + case 1: + { + htmltext = "30659-02.html"; + break; + } + case 2: + { + htmltext = "30659-03.html"; + break; + } + case 3: + { + htmltext = "30659-04.html"; + break; + } + case 4: + { + htmltext = "30659-05.html"; + break; + } + } + break; + } + case WINDY_SHAORING: + { + if (hasQuestItems(player, PICTURE_OF_WINDY)) + { + htmltext = "30660-01.html"; + } + else if (hasQuestItems(player, WINDYS_PEBBLES)) + { + htmltext = "30660-04.html"; + } + break; + } + case MYSTERIOUS_DARK_ELF: + { + if (memoState == 8) + { + if (hasQuestItems(player, SECRET_LETTER1) && !hasQuestItems(player, SECRET_LETTER2)) + { + if (npc.getSummonedNpcCount() < 36) + { + addSpawn(npc, LERO_LIZARDMAN_ASSASSIN, npc, true, 200000); + addSpawn(npc, LERO_LIZARDMAN_ASSASSIN, npc, true, 200000); + addSpawn(npc, LERO_LIZARDMAN_ASSASSIN, npc, true, 200000); + playSound(player, QuestSound.ITEMSOUND_QUEST_BEFORE_BATTLE); + } + qs.setCond(14); + npc.deleteMe(); + htmltext = "30661-01.html"; + } + else if (hasQuestItems(player, SECRET_LETTER1, SECRET_LETTER2) && !hasQuestItems(player, SECRET_LETTER3)) + { + if (npc.getSummonedNpcCount() < 36) + { + addSpawn(npc, LERO_LIZARDMAN_SNIPER, npc, true, 200000); + addSpawn(npc, LERO_LIZARDMAN_SNIPER, npc, true, 200000); + addSpawn(npc, LERO_LIZARDMAN_SNIPER, npc, true, 200000); + playSound(player, QuestSound.ITEMSOUND_QUEST_BEFORE_BATTLE); + } + qs.setCond(16); + npc.deleteMe(); + htmltext = "30661-02.html"; + } + else if (hasQuestItems(player, SECRET_LETTER1, SECRET_LETTER2, SECRET_LETTER3) && !hasQuestItems(player, SECRET_LETTER4)) + { + if (npc.getSummonedNpcCount() < 36) + { + addSpawn(npc, LERO_LIZARDMAN_WIZARD, npc, true, 200000); + addSpawn(npc, LERO_LIZARDMAN_WIZARD, npc, true, 200000); + addSpawn(npc, LERO_LIZARDMAN_LORD, npc, true, 200000); + playSound(player, QuestSound.ITEMSOUND_QUEST_BEFORE_BATTLE); + } + qs.setCond(18); + npc.deleteMe(); + htmltext = "30661-03.html"; + } + else if ((getQuestItemsCount(player, SECRET_LETTER1) + getQuestItemsCount(player, SECRET_LETTER2) + getQuestItemsCount(player, SECRET_LETTER3) + getQuestItemsCount(player, SECRET_LETTER4)) == 4) + { + qs.setCond(20, true); + htmltext = "30661-04.html"; + } + } + break; + } + case PIPER_LONGBOW: + { + if (memoState == 8) + { + if (hasQuestItems(player, SECRET_LETTER1) && !hasQuestItems(player, SECRET_LETTER2)) + { + htmltext = "30662-01.html"; + } + else if (hasQuestItems(player, SECRET_LETTER2) && !hasQuestItems(player, SECRET_LETTER3, SECRET_LETTER4)) + { + htmltext = "30662-02.html"; + } + else if (hasQuestItems(player, SECRET_LETTER2, SECRET_LETTER3, SECRET_LETTER4)) + { + qs.setCond(21, true); + htmltext = "30662-03.html"; + } + } + break; + } + case SLEIN_SHINING_BLADE: + { + if (memoState == 8) + { + if (hasQuestItems(player, SECRET_LETTER1) && !hasQuestItems(player, SECRET_LETTER2)) + { + htmltext = "30663-01.html"; + } + else if (hasQuestItems(player, SECRET_LETTER2) && !hasQuestItems(player, SECRET_LETTER3, SECRET_LETTER4)) + { + htmltext = "30663-02.html"; + } + else if (hasQuestItems(player, SECRET_LETTER2, SECRET_LETTER3, SECRET_LETTER4)) + { + qs.setCond(21, true); + htmltext = "30663-03.html"; + } + } + break; + } + case CAIN_FLYING_KNIFE: + { + if (memoState == 8) + { + if (hasQuestItems(player, SECRET_LETTER1) && !hasQuestItems(player, SECRET_LETTER4)) + { + htmltext = "30664-01.html"; + } + else if (hasQuestItems(player, SECRET_LETTER2) && !hasQuestItems(player, SECRET_LETTER3, SECRET_LETTER4)) + { + htmltext = "30664-02.html"; + } + else if (hasQuestItems(player, SECRET_LETTER2, SECRET_LETTER3, SECRET_LETTER4)) + { + qs.setCond(21, true); + htmltext = "30664-03.html"; + } + } + break; + } + case SAINT_KRISTINA: + { + if ((getQuestItemsCount(player, SECRET_LETTER1) + getQuestItemsCount(player, SECRET_LETTER2) + getQuestItemsCount(player, SECRET_LETTER3) + getQuestItemsCount(player, SECRET_LETTER4)) == 4) + { + htmltext = "30665-01.html"; + } + else if (memoState < 9) + { + if ((getQuestItemsCount(player, SECRET_LETTER1) + getQuestItemsCount(player, SECRET_LETTER2) + getQuestItemsCount(player, SECRET_LETTER3) + getQuestItemsCount(player, SECRET_LETTER4)) < 4) + { + htmltext = "30665-03.html"; + } + } + else if (memoState >= 9) + { + htmltext = "30665-04.html"; + } + break; + } + case DAURIN_HAMMERCRUSH: + { + if (memoState == 6) + { + if (hasQuestItems(player, ORDER_OF_SORIUS)) + { + htmltext = "30674-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, SECRET_LETTER1, ORDER_OF_SORIUS)) + { + if (npc.getSummonedNpcCount() < 4) + { + addSpawn(npc, LERO_LIZARDMAN_AGENT, npc, true, 200000); + addSpawn(npc, LERO_LIZARDMAN_LEADER, npc, true, 200000); + } + htmltext = "30674-02a.html"; + } + else if (hasQuestItems(player, SECRET_LETTER1)) + { + qs.setMemoState(8); + qs.setCond(13, true); + htmltext = "30674-03.html"; + } + } + else if (memoState >= 8) + { + htmltext = "30674-04.html"; + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == PRIEST_BANDELLOS) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-01.html new file mode 100644 index 0000000000..fcdeb639e6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-01.html @@ -0,0 +1,5 @@ +Priestess Pupina:
+Why have you come here? I see that you follow the path of service to the Lord as do I... Are you all right? Could it be that you are concerned about a higher level of faith, by any chance?
+You seem too young to have such worries... You must continue to seek the truth elsewhere. When you find your way obstructed, come back to see me.
+(Quest available only for Clerics or Shillien Oracles of level 39 and higher.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-02.html new file mode 100644 index 0000000000..b7f8e48d1a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-02.html @@ -0,0 +1,4 @@ +Priestess Pupina:
+I am a Priestess of the God of light. My calling is to give counsel to brothers and sisters who are struggling with their faith. Do you wish to convert to the path of Einhasad? If so, go and visit with those other priests over there.
+(Quest available only for Clerics or Shillien Oracles of level 39 and higher.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-03.htm new file mode 100644 index 0000000000..9e05c24692 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-03.htm @@ -0,0 +1,6 @@ +Priestess Pupina:
+Our faith teaches nonviolence, peace and sacrifice. I must confess that I question this when I see the current state of affairs. The world is overrun by evildoers and yet here we sit doing nothing but praying, training, giving remedies and alms...
+Sometimes I wish that I could make it a better world, where good people live in peace...
+Oh my... I've said too much. Please pay no mind to my mutterings... It is far too easy to be mistaken for a heretic around here...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-04.htm new file mode 100644 index 0000000000..875bb81bdd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-04.htm @@ -0,0 +1,4 @@ +Priestess Pupina:
+It is an honor to meet a fellow traveler... I suppose that such is the curse of the enlightened... You must keep these opinions close to your vest; they are quite taboo and can get you into trouble with the High Priests.
+Take this book, you should read it when you have the time. There is also a task that will help answer some of your questions. In the Execution Grounds of Dion there are Nameless Revenants wandering about. They must be laid to rest. Remember to strike the last blow with the magic of Disrupt Undead. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-04a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-04a.html new file mode 100644 index 0000000000..90c68dcc1c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-04a.html @@ -0,0 +1,3 @@ +Priestess Pupina:
+Have you changed your mind? If you are in search of the true faith, you must confront it rather than avoid it. Use your Disrupt Undead skill to destroy the Nameless Revenants that haunt the Execution Grounds. You will find that the temple has turned its back on them. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-04b.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-04b.htm new file mode 100644 index 0000000000..8a43496744 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-04b.htm @@ -0,0 +1,5 @@ +Priest Pupina:
+I have finally met someone who sees the world as I do! Oh, but speak softly and take great care not to be overheard. The order, after all, bans even talking about matters of this kind.
+Here, take this book. Read it in secret and perhaps it will help enlighten you. But first, travel to the Dion Execution Ground. There, perhaps, your questions will be answered if you can defeat the Nameless Ghosts that wander that cursed place. You cannot permanently defeat them with physical means, so be sure to finish them off with Disrupt Undead magic.
+Finally, take this Dimension Diamond. You can trade it to the village gatekeeper for something special that may help you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-05.html new file mode 100644 index 0000000000..a1bc4ef76e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-05.html @@ -0,0 +1,5 @@ +Priestess Pupina:
+A nail was driven into the head of the untamable Mandragora Aruraune to brainwash it. This is, basically, no different from what the Priests do every day, brainwashing ignorant people with their platitudes about light...Or perhaps we are the ones brainwashed...
+Now... I want you to meet someone. She is a former Priestess of this shrine who was defrocked after being accused of paganism. When she got into trouble I denied knowing anything about her beliefs. I could not afford to risk my position. If you have the courage of your convictions, you should go and talk to her.

+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-06.html new file mode 100644 index 0000000000..e798b5b830 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-06.html @@ -0,0 +1,3 @@ +Priestess Pupina:
+Excellent! It is good to see someone with integrity around here. You will find her teaching her beliefs to whoever will listen. In the Wastelands she is known as the 'wild plain shouter', her name is Preacher Sla. Take this letter to her in the Wastelands. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-07.html new file mode 100644 index 0000000000..0c380a69ff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30118-07.html @@ -0,0 +1,4 @@ +Priestess Pupina:
+If only I had the courage that you have right now...
+No, nothing, never mind! Now you better go and meet Preacher Sla. She is in the Wasteland. Give her my best regards... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-01.html new file mode 100644 index 0000000000..cf6837b06c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-01.html @@ -0,0 +1,6 @@ +Preacher Sla:
+Ah, an introduction letter from Pupina... Oh that is just so Pupina... as proper as always. The way she frets over details is going to be the death of her...
+By the way, do you believe that the gods' will is responsible for our behavior?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-02.html new file mode 100644 index 0000000000..f79b36a94c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-02.html @@ -0,0 +1,4 @@ +Preacher Sla:
+Then what is our involvement as devotees? Can you answer this? I think you should go back and be a good little Priest who obeys what the other little Priests say. Perhaps at least you have learned something here that will keep you from turning rotten like they are...
+If you change your mind, come back and talk to me again. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-03.html new file mode 100644 index 0000000000..4097343496 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-03.html @@ -0,0 +1,5 @@ +Preacher Sla:
+Do you believe that we should venerate the sons of Gran Kain as we do the sons of Einhasad?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-04.html new file mode 100644 index 0000000000..375b2c6200 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-04.html @@ -0,0 +1,5 @@ +Preacher Sla:
+That is easier said than done, isn't it? Do you hear the heresy coming from your mouth? If the High Priests from the shrine heard your words you would already be smelling your burning flesh...
+I believe that Einhasad's will has brought you here. There is something that I need your help with.
+Currently my disciples are performing missionary work for the warriors of Gracia. They are being harassed by the Ol Mahums. Please go and help them. The person you must speak with is named Katari. You can find her near the waterfalls of the Neutral Zone. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-05.html new file mode 100644 index 0000000000..741bdab6e2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-05.html @@ -0,0 +1,3 @@ +Preacher Sla:
+Please go and help my disciple Katari. She is a Dark Elf who follows the justice of Shilen, but in matters of faith she is no different from you and I. She is waiting for you near the waterfalls of the Neutral Zone. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-06.html new file mode 100644 index 0000000000..93548b11e8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-06.html @@ -0,0 +1,8 @@ +Preacher Sla:
+I am so very glad that I sent you. I was concerned about Katari having to deal with the Ol Mahums all alone...
+By the way, is that Ol Mahum money? It's useless. Just throw it away... .
+As you know, I have one more thing that requires your help... Recently, after giving a lecture on the tenet of light, I was approached by a group of Ol Mahums. They had been touched by my sermon and wanted to become my disciples.
+I agreed, but I seriously underestimated the firestorm that would erupt from the hierarchy of the church. For their safety we split them into 3 groups, and sent one group to Talking Island, one to the Orc Town of the northern region, and the other to the Dwarven Village.
+I haven't heard anything from them in days and I am very concerned... Especially with the recent Ol Mahum campsite incident and all... Could you go and check on them for me?
+Take these 3 letters to my Ol Mahum disciples.. First you must go and meet Kakan. She has settled down southeast of Orc Town... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-06a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-06a.html new file mode 100644 index 0000000000..93548b11e8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-06a.html @@ -0,0 +1,8 @@ +Preacher Sla:
+I am so very glad that I sent you. I was concerned about Katari having to deal with the Ol Mahums all alone...
+By the way, is that Ol Mahum money? It's useless. Just throw it away... .
+As you know, I have one more thing that requires your help... Recently, after giving a lecture on the tenet of light, I was approached by a group of Ol Mahums. They had been touched by my sermon and wanted to become my disciples.
+I agreed, but I seriously underestimated the firestorm that would erupt from the hierarchy of the church. For their safety we split them into 3 groups, and sent one group to Talking Island, one to the Orc Town of the northern region, and the other to the Dwarven Village.
+I haven't heard anything from them in days and I am very concerned... Especially with the recent Ol Mahum campsite incident and all... Could you go and check on them for me?
+Take these 3 letters to my Ol Mahum disciples.. First you must go and meet Kakan. She has settled down southeast of Orc Town... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-06b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-06b.html new file mode 100644 index 0000000000..11b3ec75e1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-06b.html @@ -0,0 +1,3 @@ +Preacher Sla:
+You must meet my disciples before you can meet with me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-07.html new file mode 100644 index 0000000000..5656f0dd84 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30666-07.html @@ -0,0 +1,3 @@ +Preacher Sla:
+Well done! Thanks to your efforts our lives of quiet contemplation have been restored...We are so very grateful! I can tell from my disciples' letters that they took quite a liking to you as well... Please take this Mark of the Reformer as a symbol of our affection and esteem. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30667-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30667-01.html new file mode 100644 index 0000000000..22039972fb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30667-01.html @@ -0,0 +1,6 @@ +Ramus:
+Glory to Einhasad! You have traveled so far... for this? Thank you so much.
+How is my master? Things here are going very smoothly..., too smoothly, in fact. Sometimes I worry. The people here are much more open-minded than elsewhere. We are planning a big assembly in the Elven relics of Talking Island.
+First, in preparation, we must hold a memorial service to calm the magical creatures.Could you help us prepare for the service? A piece of bone must be gathered from every undead in the relics. Look at this diagram...
+Could you help us, please? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30667-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30667-02.html new file mode 100644 index 0000000000..1c17689932 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30667-02.html @@ -0,0 +1,3 @@ +Ramus:
+To the north of Talking Island there are ancient Elven ruins. This is the only place suitable for such a big assembly. You will find the bone pieces and remains of the undead there. Be careful not to lose your Map... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30667-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30667-03.html new file mode 100644 index 0000000000..90082ae6d9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30667-03.html @@ -0,0 +1,3 @@ +Ramus:
+Thank you so much. Now we can hold the ceremony today. Could you please take this letter to my master? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30668-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30668-01.html new file mode 100644 index 0000000000..7a4e3bdecf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30668-01.html @@ -0,0 +1,3 @@ +Katari:
+The master sent you? Your timing could not have been better, my friend. Look here... This was the secret meeting place of the converted Ol Mahums until they were discovered by mercenary scouts this evening. We need an unknown stranger such as yourself to chase them off! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30668-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30668-02.html new file mode 100644 index 0000000000..6acf148cb6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30668-02.html @@ -0,0 +1,5 @@ +Katari:
+Thank you! Now we can finally get some peace and quiet...
+I understand that there was a traitor among the Ol Mahums...who is it?
+I am concerned about the other Ol Mahums. I must see to their safety. Please capture that betrayer! Please! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30668-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30668-03.html new file mode 100644 index 0000000000..f45425b816 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30668-03.html @@ -0,0 +1,5 @@ +Katari:
+A traitor among us! How could I have been so blind? How do I know that our other meeting places weren't compromised?
+While I don't yet know the identity of the betrayer, I can guess what he is thinking...
+Please take this letter to my master. He will have a task for you. Goodbye... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30668-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30668-04.html new file mode 100644 index 0000000000..f9bf628914 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30668-04.html @@ -0,0 +1,3 @@ +Katari:
+Take this letter to the master and await his orders. Goodbye for now... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30669-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30669-01.html new file mode 100644 index 0000000000..5222daddcc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30669-01.html @@ -0,0 +1,5 @@ +Kakan:
+After being sent here by my master, we had barely managed to escape the prying eyes of the Orcs and to build a home for ourselves before we were viciously attacked by werewolves trying to drive us out. Bear in mind, I don't blame the church of Einhasad in any way for this...
+But... after a few skirmishes, we reached an agreement to send representatives and settle this through combat. However...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30669-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30669-02.html new file mode 100644 index 0000000000..22cefa14ff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30669-02.html @@ -0,0 +1,5 @@ +Kakan:
+Our representative is not himself lately. Hey, you look like a magic user... Would you help us? Perhaps you could just rough him up ‍a bit, you know, scare him a little... You must decide quickly though, he draws nigh...
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30669-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30669-03.html new file mode 100644 index 0000000000..4df338dbb2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30669-03.html @@ -0,0 +1,3 @@ +Kakan:
+Don't you get it? Either use your magic to help us secretly or deal with him directly and knock him out with one blow. ‍We must show him our strength! Otherwise, the entire pack will be upon us! It would be a bloodbath! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30669-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30669-04.html new file mode 100644 index 0000000000..1a83c59afb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30669-04.html @@ -0,0 +1,5 @@ +Kakan:
+Do you think we are lying? We who have lost so many friends to deceit and broken promises? You must agree that this is the best way to cut our losses...
+Please take this letter to my master as soon as possible.
+You want to meet with all of Sla's disciples? Try going to the nearby village of the Dwarves. One of my fellow disciples, Nyakuri, has a place outside the village, to the west. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30669-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30669-05.html new file mode 100644 index 0000000000..ed878df3b8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30669-05.html @@ -0,0 +1,3 @@ +Kakan:
+Please reconsider. Even if we are defeated, we shall all die together. Our representative has been weakened by those very werewolves. There was no evidence, but... They are savage, but clever. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30670-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30670-01.html new file mode 100644 index 0000000000..e6642a24fc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30670-01.html @@ -0,0 +1,7 @@ +Nyakuri:
+Oh... Did you say that Mother Sla sent you? She must be worried. I'm fine, just working too much... Oh, well, here we are!
+You look like you could take care of yourself in a fight.. Hmmm... I put money on a fight and now one of the fighters claims to have a stomachache... Would you be interested in standing in for him? Your opponent would be that Lizardman over there... I've got to tell you, it won't be an easy fight...
+What do you say?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30670-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30670-02.html new file mode 100644 index 0000000000..16f0fc13b2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30670-02.html @@ -0,0 +1,3 @@ +Nyakuri:
+Everyone seems to come down with a stomachache when they see that Lizardman. Either something is going around or I am surrounded by cowards! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30670-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30670-03.html new file mode 100644 index 0000000000..53b3aec9e5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30670-03.html @@ -0,0 +1,3 @@ +Nyakuri:
+Excellent! Please win! I can't afford to lose this bet! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30670-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30670-04.html new file mode 100644 index 0000000000..441a61fbd9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30670-04.html @@ -0,0 +1,4 @@ +Nyakuri:
+Wow! You actually beat the Lizardman! He is said to be one of the strongest lizards in his tribe! I guess they will leave us alone for a while now. Here is the letter for Sla's mother. Say hello to her for me--
+You should go to Talking Island next! A man called Ramus was among the pupils of Mother Sla, and I once saw him writing a letter mentioning the waterfall on Talking Island... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30732-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30732-01.html new file mode 100644 index 0000000000..7d0a5b10f6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/30732-01.html @@ -0,0 +1,3 @@ +Ol Mahum Pilgrim:
+Thank you for your help. I will always remember your kindness. Please take this small token of my appreciation. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/Q00227_TestOfTheReformer.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/Q00227_TestOfTheReformer.java new file mode 100644 index 0000000000..4f0a1824cb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00227_TestOfTheReformer/Q00227_TestOfTheReformer.java @@ -0,0 +1,694 @@ +/* + * 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.Q00227_TestOfTheReformer; + +import java.util.Arrays; +import java.util.List; + +import com.l2jmobius.gameserver.ai.CtrlIntention; +import com.l2jmobius.gameserver.enums.ChatType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.Location; +import com.l2jmobius.gameserver.model.actor.L2Attackable; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.skills.Skill; +import com.l2jmobius.gameserver.network.NpcStringId; +import com.l2jmobius.gameserver.network.serverpackets.NpcSay; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Test Of The Reformer (227) + * @author ivantotov + */ +public final class Q00227_TestOfTheReformer extends Quest +{ + // NPCs + private static final int PRIESTESS_PUPINA = 30118; + private static final int PREACHER_SLA = 30666; + private static final int RAMUS = 30667; + private static final int KATARI = 30668; + private static final int KAKAN = 30669; + private static final int NYAKURI = 30670; + private static final int OL_MAHUM_PILGRIM = 30732; + // Items + private static final int BOOK_OF_REFORM = 2822; + private static final int LETTER_OF_INTRODUCTION = 2823; + private static final int SLAS_LETTER = 2824; + private static final int GREETINGS = 2825; + private static final int Ol_MAHUM_MONEY = 2826; + private static final int KATARIS_LETTER = 2827; + private static final int NYAKURIS_LETTER = 2828; + private static final int UNDEAD_LIST = 2829; + private static final int RAMUSS_LETTER = 2830; + private static final int RIPPED_DIARY = 2831; + private static final int HUGE_NAIL = 2832; + private static final int LETTER_OF_BETRAYER = 2833; + private static final int BONE_FRAGMENT4 = 2834; + private static final int BONE_FRAGMENT5 = 2835; + private static final int BONE_FRAGMENT6 = 2836; + private static final int BONE_FRAGMENT7 = 2837; + private static final int BONE_FRAGMENT8 = 2838; + private static final int KAKANS_LETTER = 3037; + private static final int LETTER_GREETINGS1 = 5567; + private static final int LETTER_GREETINGS2 = 5568; + // Rewards + private static final int MARK_OF_REFORMER = 2821; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monsters + private static final int MISERY_SKELETON = 20022; + private static final int SKELETON_ARCHER = 20100; + private static final int SKELETON_MARKSMAN = 20102; + private static final int SKELETON_LORD = 20104; + private static final int SILENT_HORROR = 20404; + // Quest Monsters + private static final int NAMELESS_REVENANT = 27099; + private static final int ARURAUNE = 27128; + private static final int OL_MAHUM_INSPECTOR = 27129; + private static final int OL_MAHUM_BETRAYER = 27130; + private static final int CRIMSON_WEREWOLF = 27131; + private static final int KRUDEL_LIZARDMAN = 27132; + // Skills + private static final int DISRUPT_UNDEAD = 1031; + private static final int SLEEP = 1069; + private static final int VAMPIRIC_TOUCH = 1147; + private static final int CURSE_WEAKNESS = 1164; + private static final int CURSE_POISON = 1168; + private static final int WIND_STRIKE = 1177; + private static final int ICE_BOLD = 1184; + private static final int DRYAD_ROOT = 1201; + private static final int WIND_SHACKLE = 1206; + private static final List SKILLS = Arrays.asList(DISRUPT_UNDEAD, SLEEP, VAMPIRIC_TOUCH, CURSE_WEAKNESS, CURSE_POISON, WIND_STRIKE, ICE_BOLD, DRYAD_ROOT, WIND_SHACKLE); + // Location + private static final Location MOVE_TO = new Location(36787, -3709, 10000); + // Misc + private static final int MIN_LEVEL = 39; + + public Q00227_TestOfTheReformer() + { + super(227); + addStartNpc(PRIESTESS_PUPINA); + addTalkId(PRIESTESS_PUPINA, PREACHER_SLA, RAMUS, KATARI, KAKAN, NYAKURI, OL_MAHUM_PILGRIM); + addAttackId(NAMELESS_REVENANT, CRIMSON_WEREWOLF); + addKillId(MISERY_SKELETON, SKELETON_ARCHER, SKELETON_MARKSMAN, SKELETON_LORD, SILENT_HORROR, NAMELESS_REVENANT, ARURAUNE, OL_MAHUM_INSPECTOR, OL_MAHUM_BETRAYER, OL_MAHUM_BETRAYER, CRIMSON_WEREWOLF, KRUDEL_LIZARDMAN); + addSpawnId(OL_MAHUM_PILGRIM, OL_MAHUM_INSPECTOR, OL_MAHUM_BETRAYER, CRIMSON_WEREWOLF, KRUDEL_LIZARDMAN); + registerQuestItems(BOOK_OF_REFORM, LETTER_OF_INTRODUCTION, SLAS_LETTER, GREETINGS, Ol_MAHUM_MONEY, KATARIS_LETTER, NYAKURIS_LETTER, UNDEAD_LIST, RAMUSS_LETTER, RAMUSS_LETTER, RIPPED_DIARY, HUGE_NAIL, LETTER_OF_BETRAYER, BONE_FRAGMENT4, BONE_FRAGMENT5, BONE_FRAGMENT6, BONE_FRAGMENT7, BONE_FRAGMENT8, KAKANS_LETTER, LETTER_GREETINGS1, LETTER_GREETINGS2); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + if ("DESPAWN".equals(event)) + { + final int SPAWNED = npc.getVariables().getInt("SPAWNED", 0); + if (SPAWNED < 60) + { + npc.getVariables().set("SPAWNED", SPAWNED + 1); + } + else + { + npc.deleteMe(); + } + return super.onAdvEvent(event, npc, player); + } + + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + qs.setMemoState(1); + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + giveItems(player, BOOK_OF_REFORM, 1); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 60); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30118-04b.htm"; + } + else + { + htmltext = "30118-04.htm"; + } + } + break; + } + case "30118-06.html": + { + if (hasQuestItems(player, BOOK_OF_REFORM)) + { + takeItems(player, BOOK_OF_REFORM, 1); + giveItems(player, LETTER_OF_INTRODUCTION, 1); + takeItems(player, HUGE_NAIL, 1); + qs.setMemoState(4); + qs.setCond(4, true); + htmltext = event; + } + break; + } + case "30666-02.html": + case "30666-03.html": + case "30669-02.html": + case "30669-05.html": + case "30670-02.html": + { + htmltext = event; + break; + } + case "30666-04.html": + { + takeItems(player, LETTER_OF_INTRODUCTION, 1); + giveItems(player, SLAS_LETTER, 1); + qs.setMemoState(5); + qs.setCond(5, true); + htmltext = event; + break; + } + case "30669-03.html": + { + qs.setCond(12, true); + if (npc.getSummonedNpcCount() < 1) + { + L2Npc pilgrim = addSpawn(OL_MAHUM_PILGRIM, -9282, -89975, -2331, 0, false, 0); + L2Npc wolf = addSpawn(CRIMSON_WEREWOLF, -9382, -89852, -2333, 0, false, 0); + ((L2Attackable) wolf).addDamageHate(pilgrim, 99999, 99999); + wolf.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, pilgrim); + } + htmltext = event; + break; + } + case "30670-03.html": + { + qs.setCond(15, true); + if (npc.getSummonedNpcCount() < 1) + { + L2Npc pilgrim = addSpawn(OL_MAHUM_PILGRIM, 125947, -180049, -1778, 0, false, 0); + L2Npc lizard = addSpawn(KRUDEL_LIZARDMAN, 126019, -179983, -1781, 0, false, 0); + ((L2Attackable) lizard).addDamageHate(pilgrim, 99999, 99999); + lizard.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, pilgrim); + } + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onAttack(L2Npc npc, L2PcInstance attacker, int damage, boolean isSummon, Skill skill) + { + final QuestState qs = getQuestState(attacker, false); + if ((qs != null) && qs.isStarted()) + { + switch (npc.getId()) + { + case NAMELESS_REVENANT: + { + if (skill != null) + { + if (skill.getId() == DISRUPT_UNDEAD) + { + npc.setScriptValue(1); + } + else + { + npc.setScriptValue(2); + } + } + break; + } + case CRIMSON_WEREWOLF: + { + if ((skill == null) || !SKILLS.contains(skill.getId())) + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.COWARDLY_GUY)); + npc.deleteMe(); + } + if (attacker.isPlayer()) + { + npc.setScriptValue(attacker.getObjectId()); + } + break; + } + } + } + return super.onAttack(npc, attacker, damage, isSummon); + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case MISERY_SKELETON: + { + if (qs.isMemoState(16) && !hasQuestItems(killer, BONE_FRAGMENT7)) + { + giveItems(killer, BONE_FRAGMENT7, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + if (hasQuestItems(killer, BONE_FRAGMENT4, BONE_FRAGMENT5, BONE_FRAGMENT6, BONE_FRAGMENT8)) + { + qs.setMemoState(17); + qs.setCond(19); + } + } + break; + } + case SKELETON_ARCHER: + { + if (qs.isMemoState(16) && !hasQuestItems(killer, BONE_FRAGMENT8)) + { + giveItems(killer, BONE_FRAGMENT8, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + if (hasQuestItems(killer, BONE_FRAGMENT4, BONE_FRAGMENT5, BONE_FRAGMENT6, BONE_FRAGMENT7)) + { + qs.setMemoState(17); + qs.setCond(19); + } + } + break; + } + case SKELETON_MARKSMAN: + { + if (qs.isMemoState(16) && !hasQuestItems(killer, BONE_FRAGMENT6)) + { + giveItems(killer, BONE_FRAGMENT6, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + if (hasQuestItems(killer, BONE_FRAGMENT4, BONE_FRAGMENT5, BONE_FRAGMENT7, BONE_FRAGMENT8)) + { + qs.setMemoState(17); + qs.setCond(19); + } + } + break; + } + case SKELETON_LORD: + { + if (qs.isMemoState(16) && !hasQuestItems(killer, BONE_FRAGMENT5)) + { + giveItems(killer, BONE_FRAGMENT5, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + if (hasQuestItems(killer, BONE_FRAGMENT4, BONE_FRAGMENT6, BONE_FRAGMENT7, BONE_FRAGMENT8)) + { + qs.setMemoState(17); + qs.setCond(19); + } + } + break; + } + case SILENT_HORROR: + { + if (qs.isMemoState(16) && !hasQuestItems(killer, BONE_FRAGMENT4)) + { + giveItems(killer, BONE_FRAGMENT4, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + if (hasQuestItems(killer, BONE_FRAGMENT5, BONE_FRAGMENT6, BONE_FRAGMENT7, BONE_FRAGMENT8)) + { + qs.setMemoState(17); + qs.setCond(19); + } + } + break; + } + case NAMELESS_REVENANT: + { + if (qs.isMemoState(1) && npc.isScriptValue(1) && !hasQuestItems(killer, HUGE_NAIL) && hasQuestItems(killer, BOOK_OF_REFORM) && (getQuestItemsCount(killer, RIPPED_DIARY) < 7)) + { + if (getQuestItemsCount(killer, RIPPED_DIARY) == 6) + { + addSpawn(ARURAUNE, npc, true, 0, false); + takeItems(killer, RIPPED_DIARY, -1); + qs.setCond(2); + } + else + { + giveItems(killer, RIPPED_DIARY, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case ARURAUNE: + { + if (!hasQuestItems(killer, HUGE_NAIL)) + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.THE_CONCEALED_TRUTH_WILL_ALWAYS_BE_REVEALED)); + giveItems(killer, HUGE_NAIL, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + qs.setMemoState(3); + qs.setCond(3); + } + break; + } + case OL_MAHUM_INSPECTOR: + { + if (qs.isMemoState(6)) + { + qs.setMemoState(7); + qs.setCond(7, true); + } + break; + } + case OL_MAHUM_BETRAYER: + { + if (qs.isMemoState(8)) + { + qs.setMemoState(9); + qs.setCond(9); + giveItems(killer, LETTER_OF_BETRAYER, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + break; + } + case CRIMSON_WEREWOLF: + { + if (npc.isScriptValue(killer.getObjectId()) && qs.isMemoState(11)) + { + qs.setMemoState(12); + qs.setCond(13, true); + } + break; + } + case KRUDEL_LIZARDMAN: + { + if (qs.isMemoState(13)) + { + qs.setMemoState(14); + qs.setCond(16, true); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + final int memoState = qs.getMemoState(); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == PRIESTESS_PUPINA) + { + if ((player.getClassId() == ClassId.CLERIC) || (player.getClassId() == ClassId.SHILLIEN_ORACLE)) + { + if (player.getLevel() >= MIN_LEVEL) + { + htmltext = "30118-03.htm"; + } + else + { + htmltext = "30118-01.html"; + } + } + else + { + htmltext = "30118-02.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case PRIESTESS_PUPINA: + { + if (memoState == 3) + { + if (hasQuestItems(player, HUGE_NAIL)) + { + htmltext = "30118-05.html"; + } + } + else if ((memoState >= 1) && (memoState < 3)) + { + htmltext = "30118-04a.html"; + } + else if (memoState >= 4) + { + htmltext = "30118-07.html"; + } + break; + } + case PREACHER_SLA: + { + if (memoState == 4) + { + if (hasQuestItems(player, LETTER_OF_INTRODUCTION)) + { + htmltext = "30666-01.html"; + } + } + else if ((memoState >= 11) && (memoState < 18)) + { + htmltext = "30666-06b.html"; + } + else if (memoState == 5) + { + if (hasQuestItems(player, SLAS_LETTER)) + { + htmltext = "30666-05.html"; + } + } + else if (memoState == 10) + { + if (hasQuestItems(player, Ol_MAHUM_MONEY)) + { + takeItems(player, Ol_MAHUM_MONEY, 1); + giveItems(player, GREETINGS, 1); + giveItems(player, LETTER_GREETINGS1, 1); + giveItems(player, LETTER_GREETINGS2, 1); + qs.setMemoState(11); + qs.setCond(11, true); + htmltext = "30666-06.html"; + } + else + { + giveItems(player, GREETINGS, 1); + giveItems(player, LETTER_GREETINGS1, 1); + giveItems(player, LETTER_GREETINGS2, 1); + qs.setMemoState(11); + qs.setCond(11, true); + htmltext = "30666-06a.html"; + } + } + else if (memoState == 18) + { + if (hasQuestItems(player, KATARIS_LETTER, KAKANS_LETTER, NYAKURIS_LETTER, RAMUSS_LETTER)) + { + giveAdena(player, 226528, true); + giveItems(player, MARK_OF_REFORMER, 1); + addExpAndSp(player, 1252844, 85972); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30666-07.html"; + } + } + break; + } + case RAMUS: + { + if (memoState == 15) + { + if (hasQuestItems(player, LETTER_GREETINGS2) && !hasQuestItems(player, UNDEAD_LIST)) + { + giveItems(player, UNDEAD_LIST, 1); + takeItems(player, LETTER_GREETINGS2, 1); + qs.setMemoState(16); + qs.setCond(18, true); + htmltext = "30667-01.html"; + } + } + else if (memoState == 16) + { + htmltext = "30667-02.html"; + } + else if (memoState == 17) + { + if (hasQuestItems(player, UNDEAD_LIST)) + { + takeItems(player, UNDEAD_LIST, 1); + giveItems(player, RAMUSS_LETTER, 1); + takeItems(player, BONE_FRAGMENT4, 1); + takeItems(player, BONE_FRAGMENT5, 1); + takeItems(player, BONE_FRAGMENT6, 1); + takeItems(player, BONE_FRAGMENT7, 1); + takeItems(player, BONE_FRAGMENT8, 1); + qs.setMemoState(18); + qs.setCond(20, true); + htmltext = "30667-03.html"; + } + } + break; + } + case KATARI: + { + if ((memoState == 5) || (memoState == 6)) + { + takeItems(player, SLAS_LETTER, 1); + qs.setMemoState(6); + qs.setCond(6, true); + if (npc.getSummonedNpcCount() < 1) + { + L2Npc pilgrim = addSpawn(OL_MAHUM_PILGRIM, -4015, 40141, -3664, 0, false, 0); + L2Npc inspector = addSpawn(OL_MAHUM_INSPECTOR, -4034, 40201, -3665, 0, false, 0); + ((L2Attackable) inspector).addDamageHate(pilgrim, 99999, 99999); + inspector.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, pilgrim); + } + htmltext = "30668-01.html"; + } + else if ((memoState == 7) || (memoState == 8)) + { + if (memoState == 7) + { + qs.setMemoState(8); + } + qs.setCond(8, true); + if (npc.getSummonedNpcCount() < 3) + { + addSpawn(OL_MAHUM_BETRAYER, -4106, 40174, -3660, 0, false, 0); + } + htmltext = "30668-02.html"; + } + else if (memoState == 9) + { + if (hasQuestItems(player, LETTER_OF_BETRAYER)) + { + giveItems(player, KATARIS_LETTER, 1); + takeItems(player, LETTER_OF_BETRAYER, 1); + qs.setMemoState(10); + qs.setCond(10, true); + htmltext = "30668-03.html"; + } + } + else if (memoState >= 10) + { + htmltext = "30668-04.html"; + } + break; + } + case KAKAN: + { + if (memoState == 11) + { + if (hasQuestItems(player, GREETINGS)) + { + htmltext = "30669-01.html"; + } + } + else if (memoState == 12) + { + if (hasQuestItems(player, GREETINGS) && !hasQuestItems(player, KAKANS_LETTER)) + { + takeItems(player, GREETINGS, 1); + giveItems(player, KAKANS_LETTER, 1); + qs.setMemoState(13); + qs.setCond(14, true); + htmltext = "30669-04.html"; + } + } + break; + } + case NYAKURI: + { + if (memoState == 13) + { + if (hasQuestItems(player, LETTER_GREETINGS1)) + { + htmltext = "30670-01.html"; + } + } + else if (memoState == 14) + { + if (hasQuestItems(player, LETTER_GREETINGS1) && !hasQuestItems(player, NYAKURIS_LETTER)) + { + giveItems(player, NYAKURIS_LETTER, 1); + takeItems(player, LETTER_GREETINGS1, 1); + qs.setMemoState(15); + qs.setCond(17, true); + htmltext = "30670-04.html"; + } + } + break; + } + case OL_MAHUM_PILGRIM: + { + if (memoState == 7) + { + giveItems(player, Ol_MAHUM_MONEY, 1); + qs.setMemoState(8); + htmltext = "30732-01.html"; + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == PRIESTESS_PUPINA) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } + + @Override + public String onSpawn(L2Npc npc) + { + switch (npc.getId()) + { + case OL_MAHUM_INSPECTOR: + case CRIMSON_WEREWOLF: + case KRUDEL_LIZARDMAN: + case OL_MAHUM_PILGRIM: + { + startQuestTimer("DESPAWN", 5000, npc, null, true); + npc.getVariables().set("SPAWNED", 0); + break; + } + case OL_MAHUM_BETRAYER: + { + startQuestTimer("DESPAWN", 5000, npc, null, true); + npc.setIsRunning(true); + npc.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, MOVE_TO); + npc.getVariables().set("SPAWNED", 0); + break; + } + } + return super.onSpawn(npc); + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30391-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30391-01.html new file mode 100644 index 0000000000..def64a45d0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30391-01.html @@ -0,0 +1,5 @@ +Parina:
+So you heard that song as well. Yes, I've been hearing that melody every night recently. I've heard many types of music, and am quite sure this is not a Human voice.
+It seemed to emanate from all directions. Near and far away at the same time... Perhaps it was the voice of the 'singing flower'...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30391-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30391-02.html new file mode 100644 index 0000000000..6426687174 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30391-02.html @@ -0,0 +1,5 @@ +Parina:
+The singing flower is an infamous evil spirit which sings when in bloom. It looks like a beautiful woman but is actually quite a dreadful creature. They sprout from a pod called 'the Golden Seed'.
+The singing flower is said to seduce people with its beautiful voice, only to later feed on their blood...
+I have consulted Elder Casian about this matter, why don't you take this letter and go and meet him. He is in the Wastelands. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30391-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30391-03.html new file mode 100644 index 0000000000..5ef588694d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30391-03.html @@ -0,0 +1,3 @@ +Parina:
+You are still here? You must go and meet Elder Casian immediately. He knows more than anyone else about the singing flower. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30391-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30391-04.html new file mode 100644 index 0000000000..cc33a61555 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30391-04.html @@ -0,0 +1,3 @@ +Parina:
+You must not be swayed by the voice of the singing flower. They are vile creatures that should be exterminated from the earth. Find them and kill them all. Then you must locate the Golden Seed which bears the blood of the innocent. When you find 3 of them take them to Bard Rukal. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30391-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30391-05.html new file mode 100644 index 0000000000..2f1ab567cc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30391-05.html @@ -0,0 +1,3 @@ +Parina:
+So, I understand that you seek the notes of the 4 elements for Rukal? I wish you luck in gathering all the notes and completing the absolute tone. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-01.html new file mode 100644 index 0000000000..17f3be8b7b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-01.html @@ -0,0 +1,6 @@ +Earth Snake:
+I am an element of this earth. The truths of the universe within the earth are within me.
+So, you seek the Note of the Earth? What do you expect to do with it...? Do you plan to create absolute music?
+Is that it...? And what then...?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-02.html new file mode 100644 index 0000000000..231db0142a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-02.html @@ -0,0 +1,6 @@ +Earth Snake:
+Ahhh, the thousand year flower! I see... So you seek the golden seed and the 4 elemental notes, then?
+Well, I guess it doesn't matter... Yes, I will give you the Note of the Earth. But you must find out something for me first.
+In that place that the Humans call Oren, near the Ivory Tower, I have seen monsters. They seem similar to those from the place called Gludio, but much stronger than any that I have ever seen... Why is this happening? I must know!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-03.html new file mode 100644 index 0000000000..98492d00bc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-03.html @@ -0,0 +1,5 @@ +Earth Snake:
+Enchanted Monster Eye, Enchanted Stone Golem, Enchanted Iron Golem... These are the monsters you must slay. You must kill them and bring me what they carry... and plenty of it!
+Ten! Yes! Ten from each will do!
+Take this totem with you as a reminder of your promise... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-04.html new file mode 100644 index 0000000000..a9f6dbc7a8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-04.html @@ -0,0 +1,3 @@ +Earth Snake:
+There are not 10 items here...Did you think I would not notice? I will not give you the Note of the Earth until you bring me proof that you have slain 10 each of the Enchanted Monster Eye, Enchanted Stone Golem and Enchanted Iron Golem. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-05.html new file mode 100644 index 0000000000..b4ab7faa0f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-05.html @@ -0,0 +1,3 @@ +Earth Snake:
+1, 2, 3... Yes... I think you have brought all that I asked for. I shall bestow upon you the Note of the Earth. May you create beautiful music with this and make the thousand year flower bloom... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-06.html new file mode 100644 index 0000000000..cd43390a2c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30409-06.html @@ -0,0 +1,3 @@ +Earth Snake:
+Have you acquired the notes of water, wind, and flame? The Note of the Earth is a deeper and more solemn tone than the other notes... Only when the 4 different notes combine together can the most beautiful music be played... The absolute music... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30411-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30411-01.html new file mode 100644 index 0000000000..8656f9821e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30411-01.html @@ -0,0 +1,6 @@ +Flame Salamander:
+What is it, my child? Have you no fear of fire?
+...Ah, you seek the Note of Fire... I see...
+Of course I have it, silly! Nothing comes for free, however...
+If you will journey north, near the Ivory Tower, and retrieve 5 Flame Crystals from the Ghost Fires, I shall take them in exchange for the Note of Fire! But not one less than 5! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30411-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30411-02.html new file mode 100644 index 0000000000..3d5c016396 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30411-02.html @@ -0,0 +1,3 @@ +Flame Salamander:
+Bring me 5 Flame Crystals from the Ghost Fires. They are in the north... Near the Ivory Tower... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30411-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30411-03.html new file mode 100644 index 0000000000..4393454a79 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30411-03.html @@ -0,0 +1,3 @@ +Flame Salamander:
+Five Flame Crystals... Oh how lovely. Here is the Note of Fire. Take it! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30411-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30411-04.html new file mode 100644 index 0000000000..789e2af93f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30411-04.html @@ -0,0 +1,3 @@ +Flame Salamander:
+I trust you are taking good care of the Note of Fire that I have given you... I hope you realize that that note is the strongest, and has the deepest tone of all 4 of the elemental notes... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30412-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30412-01.html new file mode 100644 index 0000000000..03105183a4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30412-01.html @@ -0,0 +1,5 @@ +Wind Sylph:
+Nice to meet you, Elder of the magical world, manager of the elements. I am the Wind Sylph, messenger of Zephyr, guide of the storms. Have you come to me seeking the Tone of Wind, by any chance?
+The wind is an elusive figure, hard to grasp... Do you believe that you can get a note consisting of this wind? Only I can give the Tone of Wind. You must make a deal with me.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30412-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30412-02.html new file mode 100644 index 0000000000..014a295dad --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30412-02.html @@ -0,0 +1,4 @@ +Wind Sylph:
+Ah yes, a wise choice... Bring me 20 Harpy Feathers, 10 Wyrm wingbones, and 10 Windsus Manes... You will find your prey in the Gorgon Flower Garden in Giran and Death Pass.
+Do you understand? The harpy flies by gliding on the wind, the Wyrm's feathers blast the wind mightily and the mane of the Windsus blows in the wind. As you see, these creatures all have the wind in common, which I must control... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30412-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30412-03.html new file mode 100644 index 0000000000..a2b97beb93 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30412-03.html @@ -0,0 +1,3 @@ +Wind Sylph:
+Is the wind blowing in your mind as well? Are all your memories blown away? 20 Harpy Feathers, 10 Wyrm Wingbone, and 10 Windsus Manes... If you do not bring these 3 materials, I will not give you the Tone of Wind. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30412-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30412-04.html new file mode 100644 index 0000000000..ce6ccbac2f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30412-04.html @@ -0,0 +1,3 @@ +Wind Sylph:
+...You have gathered all of them! You are faithful indeed... Even the wind keeps its promises. Take this Tone of Wind... Be careful, because it might blow away... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30412-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30412-05.html new file mode 100644 index 0000000000..300ae4ab03 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30412-05.html @@ -0,0 +1,3 @@ +Wind Sylph:
+Are you taking good care of the Tone of Wind? That thing can be easily swept away, so hold on to it firmly. Once you lose it, you will never hear its beautiful melody again. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30413-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30413-01.html new file mode 100644 index 0000000000..978d8dd915 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30413-01.html @@ -0,0 +1,5 @@ +Water Undine:
+I am Undine, guardian of the deep lake, spirit of the precious water... Have you come for the Tone of Water?
+It is the rhythm which expresses the nature of water among the four basic elements which compose the earth... To create this, you need 20 Dazzling Drops from the monsters of the marshlands.
+Toad lords which live in the Cruma Marshlands... And the swamp stakatos have the Dazzling Drops. If you bring 20 of them, I shall make you the tone. This amulet is a symbol of my promise... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30413-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30413-02.html new file mode 100644 index 0000000000..3a79f6ae66 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30413-02.html @@ -0,0 +1,3 @@ +Water Undine:
+We need 20 Dazzling Drops to make the Tone of Water. Hunt toad lords and swamp stakatos in the Cruma Marshlands and take it from them. Now, hurry! You promised, didn't you? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30413-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30413-03.html new file mode 100644 index 0000000000..a1617df843 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30413-03.html @@ -0,0 +1,3 @@ +Water Undine:
+...18, 19, 20... Good... You have brought 20. I shall give you the Tone of Water. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30413-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30413-04.html new file mode 100644 index 0000000000..79f1491222 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30413-04.html @@ -0,0 +1,3 @@ +Water Undine:
+I assume that you seek the Tones of Fire, Wind, Earth as well? They are all my brothers and sisters... Please give them my regards... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30612-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30612-01.html new file mode 100644 index 0000000000..12dae38dd2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30612-01.html @@ -0,0 +1,5 @@ +Elder Casian:
+I have heard of Parina's suffering because of that monstrous flower ... I have thought of nothing else for days... The only solution I can come up with is to hunt down the vicious flower and kill it.
+I have heard that there are actually 3 flowers: The nightmare singing flower, the phantom singing flower and the darkness singing flower. We must find all 3 of them.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30612-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30612-02.html new file mode 100644 index 0000000000..f053b515a8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30612-02.html @@ -0,0 +1,5 @@ +Elder Casian:
+The singing flowers are said to bloom near waterfalls or lakes, and seduce passersby with their beautiful voice. Different kinds of singing flowers will never bloom close to each other.
+Parina, Rukal and I searched for them and managed to agree on a few places. We are sure the flowers may be found near the Fellmere Lake in Gludio, the waterfalls near the Ivory Tower of Oren, and somewhere in the southern part of the Town of Giran.
+Got that? The flowers bloom near water. You must look in the 3 places I mentioned, especially near water. You must be very careful because the singing flowers all possess small amounts of poison... Take this amulet with you, it will help. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30612-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30612-03.html new file mode 100644 index 0000000000..ad584f555e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30612-03.html @@ -0,0 +1,4 @@ +Elder Casian:
+You still haven't found all the seeds... What are you doing? Hurry, go and find all 3! If this mission is too much for you, then give up!
+If you intend to complete the task, you must go to the Fellmere Lake in Gludio, the waterfalls near the Ivory Tower of Oren, and the southern part of the Town of Giran, kill the flowers and bring back the seeds! You got it? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30612-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30612-04.html new file mode 100644 index 0000000000..5d20596e0d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30612-04.html @@ -0,0 +1,3 @@ +Elder Casian:
+Ah, all the seeds! Good, good...! You may go now. Take this to Bard Rukal. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30612-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30612-05.html new file mode 100644 index 0000000000..aa87ce6103 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30612-05.html @@ -0,0 +1,3 @@ +Elder Casian:
+The note of the element? Even I, an esteemed Sage, have never heard such a thing... Well, I must admit that I have heard of their stunning beauty... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-01.html new file mode 100644 index 0000000000..19fa3eebd1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-01.html @@ -0,0 +1,5 @@ +Bard Rukal:
+To see a Mystic command the ultimate elemental magic is somewhat like hearing a song from heaven. Unlike other magic, Elemental Magic consists of combining the songs of the spirits.
+Your ears are not sophisticated enough to hear the elemental tones? I suppose a cacophony of swords and shields or a hymn of prayer and blessings would be easier for you to hear.
+(Quest for Wizards, Elven Wizards and Dark Wizards, level 39 or above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-02.html new file mode 100644 index 0000000000..92c94c5892 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-02.html @@ -0,0 +1,5 @@ +Bard Rukal:
+To see a Mystic combining the songs of the spirits while commanding elemental magic is like hearing a song straight from heaven.
+A Mystic must have a thorough understanding of the elements of tone. Come back when you have more experience.
+(Quest for Wizard, Elven Wizard, or Dark Wizard. Level 39 or above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-03.htm new file mode 100644 index 0000000000..0ab3dc90f9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-03.htm @@ -0,0 +1,6 @@ +Bard Rukal:
+Elemental magic is like a song from heaven. Combining the songs of the spirits is fundamental in the use of elemental magic.
+Mystics must have a complete understanding of the elements of tone.
+The Test of the Magus will assess your understanding of the tones of the 4 elements. Those who pass this test will have a chance to advance to the higher level of Elemental Magic..
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-04.htm new file mode 100644 index 0000000000..62c9ad1f2b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-04.htm @@ -0,0 +1,7 @@ +Bard Rukal:
+Good. First let me tell you something about myself.
+My nights are sleepless, haunted by the songs of the spirits. This is a condition common to the practitioners of Elemental Magic.
+This inhuman song is not of this earth, and can make the hair stand up on the back of your neck, and a cold shiver run down your spine.
+You must find the source of this music. I know someone who can help you. I will introduce you to Parina, who is in the temple of Gludin. She has a profound knowledge of Elemental Magic.
+She will help you find the source of this unworldly music if you show her this letter. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-04a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-04a.htm new file mode 100644 index 0000000000..6517094c65 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-04a.htm @@ -0,0 +1,8 @@ +Bard Rukal:
+Very well. Listen to my story, youngster.
+Blissful slumber escapes me night after night. In the quiet darkness, I am haunted by a strange melody that reaches my ears, a music that can only be heard by those who have mastered elemental magic.
+Low-pitched and subtle, it nevertheless grates upon my sensitive nerves. Humans cannot make this kind of otherworldy melody, I am convinced, and it is certainly not a magician's aria.
+Your task is to find the source of this ominous sound. To begin your investigation, visit Parina from the temple in Gludin Town.
+A master of elemental magic, perhaps he knows something about this eerie nighttime melody. I must be able to sleep! Show him this letter and I am sure that he will help you.
+Oh, and take this Dimension Diamond. You can trade it to the village gatekeeper for something special that may help you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-05.html new file mode 100644 index 0000000000..818b8c4020 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-05.html @@ -0,0 +1,3 @@ +Bard Rukal:
+The strange songs of the spirits will still not let me sleep. Please go meet Parina and investigate the origin of this music. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-06.html new file mode 100644 index 0000000000..23ad06e2f4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-06.html @@ -0,0 +1,3 @@ +Bard Rukal:
+This is very disturbing. That song was from the legendary evil spirit Singing Flower. As Parina advised you, you should go and meet Elder Casian. He will tell you more about Singing Flower. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-07.html new file mode 100644 index 0000000000..321d735767 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-07.html @@ -0,0 +1,3 @@ +Bard Rukal:
+The Singing Flowers must be stopped from ever singing that song again. You must find them all and destroy them. You can obtain golden seeds when you destroy them. You must get 3 types of seeds from 3 different types of Singing Flowers. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-08.html new file mode 100644 index 0000000000..47d229f574 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-08.html @@ -0,0 +1,6 @@ +Bard Rukal:
+Excellent! The Golden Seeds of the Singing Flower!
+I have experience raising flowers from these seeds. One must be very careful in their cultivation, they can grow into brutal flowers if the seeds taste living human blood. Under normal circumstances they grow into a beautiful flower called 'Millennium Flower.' To grow these you must be able to produce the exquisite 'Absolute Tone'.
+The problem is that I cannot produce absolute tone with my skills... Would you be willing to help me once you start your job?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-09.html new file mode 100644 index 0000000000..ce5c7acb5d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-09.html @@ -0,0 +1,7 @@ +Bard Rukal:
+To make an Absolute Tone we need 4 tones that correspond to 4 elements. As you know, our world is composed of these 4 elements and the 4 tones Raffortysent the essence of each element.
+That is, we can only make the Absolute Tone which controls all other tones by +collecting 4 notes that correspond to the 4 elements.
+Remember, collecting these 4 tones is a difficult, time-consuming task..
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-10.html new file mode 100644 index 0000000000..8c7740ed31 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-10.html @@ -0,0 +1,8 @@ +Bard Rukal:
+You must collect the 4 tones that correspond to the 4 elements in order to create an Absolute Tone.
+To obtain the Note of Water You must visit the Water Undine, a water spirit who lives in Fellmere Lake... It is located northwest of Gludin, north of the Abandoned Camp.
+To obtain the Note of Fire you must seek the Flame Salamander. Lizard spirits such as this salamander are formed with the power of flame. They can be found in the Ruins of Despair, south of the Town of Gludio.
+To locate the Note of Wind you must meet the Wind Sylph. She is on the northwest side of the 3 entrances to the Wastelands of Gludio.
+Last, the Note of Earth can be obtained from the Earth Snake. He is in the Ruins of Agony, on the north side of the Town of Gludio.
+I will give you a musical book in which to put the 4 notes. When you have found them all return the book to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-11.html new file mode 100644 index 0000000000..08182d2651 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-11.html @@ -0,0 +1,3 @@ +Bard Rukal:
+The Test of the Magus will not be complete until all 4 tones essential for Absolute Tone are collected. Please do your best to get these tones for me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-12.html new file mode 100644 index 0000000000..4bd5565508 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/30629-12.html @@ -0,0 +1,4 @@ +Bard Rukal:
+Congratulations! You have passed the Test of the Magus! Now I can start the time-consuming process of creating Absolute Tone. This would not have been possible without your efforts. I will let you know when the Millennium Flowers bloom. Come to see me then.
+Congratulations again on passing the test! I shall grant you the Mark of the Magus. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/Q00228_TestOfMagus.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/Q00228_TestOfMagus.java new file mode 100644 index 0000000000..d5697c9b7f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00228_TestOfMagus/Q00228_TestOfMagus.java @@ -0,0 +1,645 @@ +/* + * 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.Q00228_TestOfMagus; + +import com.l2jmobius.gameserver.enums.ChatType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.NpcStringId; +import com.l2jmobius.gameserver.network.serverpackets.NpcSay; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Test Of Magus (228) + * @author ivantotov + */ +public final class Q00228_TestOfMagus extends Quest +{ + // NPCs + private static final int PARINA = 30391; + private static final int EARTH_SNAKE = 30409; + private static final int FLAME_SALAMANDER = 30411; + private static final int WIND_SYLPH = 30412; + private static final int WATER_UNDINE = 30413; + private static final int ELDER_CASIAN = 30612; + private static final int BARD_RUKAL = 30629; + // Items + private static final int RUKALS_LETTER = 2841; + private static final int PARINAS_LETTER = 2842; + private static final int LILAC_CHARM = 2843; + private static final int GOLDEN_SEED_1ST = 2844; + private static final int GOLDEN_SEED_2ND = 2845; + private static final int GOLDEN_SEED_3RD = 2846; + private static final int SCORE_OF_ELEMENTS = 2847; + private static final int DAZZLING_DROP = 2848; + private static final int FLAME_CRYSTAL = 2849; + private static final int HARPYS_FEATHER = 2850; + private static final int WYRMS_WINGBONE = 2851; + private static final int WINDSUS_MANE = 2852; + private static final int ENCHANTED_MONSTER_EYE_SHELL = 2853; + private static final int ENCHANTED_GOLEM_POWDER = 2854; + private static final int ENCHANTED_IRON_GOLEM_SCRAP = 2855; + private static final int TONE_OF_WATER = 2856; + private static final int TONE_OF_FIRE = 2857; + private static final int TONE_OF_WIND = 2858; + private static final int TONE_OF_EARTH = 2859; + private static final int SALAMANDER_CHARM = 2860; + private static final int SYLPH_CHARM = 2861; + private static final int UNDINE_CHARM = 2862; + private static final int SERPENT_CHARM = 2863; + // Reward + private static final int MARK_OF_MAGUS = 2840; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monster + private static final int HARPY = 20145; + private static final int MARSH_STAKATO = 20157; + private static final int WYRM = 20176; + private static final int MARSH_STAKATO_WORKER = 20230; + private static final int TOAD_LORD = 20231; + private static final int MARSH_STAKATO_SOLDIER = 20232; + private static final int MARSH_STAKATO_DRONE = 20234; + private static final int WINDSUS = 20553; + private static final int ENCHANTED_MONSTEREYE = 20564; + private static final int ENCHANTED_STOLEN_GOLEM = 20565; + private static final int ENCHANTED_IRON_GOLEM = 20566; + // Quest Monster + private static final int SINGING_FLOWER_PHANTASM = 27095; + private static final int SINGING_FLOWER_NIGTMATE = 27096; + private static final int SINGING_FLOWER_DARKLING = 27097; + private static final int GHOST_FIRE = 27098; + // Misc + private static final int MIN_LVL = 39; + + public Q00228_TestOfMagus() + { + super(228); + addStartNpc(BARD_RUKAL); + addTalkId(BARD_RUKAL, PARINA, EARTH_SNAKE, FLAME_SALAMANDER, WIND_SYLPH, WATER_UNDINE, ELDER_CASIAN); + addKillId(HARPY, MARSH_STAKATO, WYRM, MARSH_STAKATO_WORKER, TOAD_LORD, MARSH_STAKATO_SOLDIER, MARSH_STAKATO_DRONE, WINDSUS, ENCHANTED_MONSTEREYE, ENCHANTED_STOLEN_GOLEM, ENCHANTED_IRON_GOLEM, SINGING_FLOWER_PHANTASM, SINGING_FLOWER_NIGTMATE, SINGING_FLOWER_DARKLING, GHOST_FIRE); + registerQuestItems(RUKALS_LETTER, PARINAS_LETTER, LILAC_CHARM, GOLDEN_SEED_1ST, GOLDEN_SEED_2ND, GOLDEN_SEED_3RD, SCORE_OF_ELEMENTS, DAZZLING_DROP, FLAME_CRYSTAL, HARPYS_FEATHER, WYRMS_WINGBONE, WINDSUS_MANE, ENCHANTED_MONSTER_EYE_SHELL, ENCHANTED_GOLEM_POWDER, ENCHANTED_IRON_GOLEM_SCRAP, TONE_OF_WATER, TONE_OF_FIRE, TONE_OF_WIND, TONE_OF_EARTH, SALAMANDER_CHARM, SYLPH_CHARM, UNDINE_CHARM, SERPENT_CHARM); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + giveItems(player, RUKALS_LETTER, 1); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 122); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30629-04a.htm"; + } + else + { + htmltext = "30629-04.htm"; + } + } + break; + } + case "30629-09.html": + case "30409-02.html": + { + htmltext = event; + break; + } + case "30629-10.html": + { + if (hasQuestItems(player, GOLDEN_SEED_3RD)) + { + takeItems(player, LILAC_CHARM, 1); + takeItems(player, GOLDEN_SEED_1ST, 1); + takeItems(player, GOLDEN_SEED_2ND, 1); + takeItems(player, GOLDEN_SEED_3RD, 1); + giveItems(player, SCORE_OF_ELEMENTS, 1); + qs.setCond(5, true); + htmltext = event; + } + break; + } + case "30391-02.html": + { + if (hasQuestItems(player, RUKALS_LETTER)) + { + takeItems(player, RUKALS_LETTER, 1); + giveItems(player, PARINAS_LETTER, 1); + qs.setCond(2, true); + htmltext = event; + } + break; + } + case "30409-03.html": + { + giveItems(player, SERPENT_CHARM, 1); + htmltext = event; + break; + } + case "30412-02.html": + { + giveItems(player, SYLPH_CHARM, 1); + htmltext = event; + break; + } + case "30612-02.html": + { + takeItems(player, PARINAS_LETTER, 1); + giveItems(player, LILAC_CHARM, 1); + qs.setCond(3, true); + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case HARPY: + { + if (hasQuestItems(killer, SCORE_OF_ELEMENTS, SYLPH_CHARM) && (getQuestItemsCount(killer, HARPYS_FEATHER) < 20)) + { + giveItems(killer, HARPYS_FEATHER, 1); + if (getQuestItemsCount(killer, HARPYS_FEATHER) >= 20) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MARSH_STAKATO: + case MARSH_STAKATO_WORKER: + case TOAD_LORD: + case MARSH_STAKATO_SOLDIER: + case MARSH_STAKATO_DRONE: + { + if (hasQuestItems(killer, SCORE_OF_ELEMENTS, UNDINE_CHARM) && (getQuestItemsCount(killer, DAZZLING_DROP) < 20)) + { + giveItems(killer, DAZZLING_DROP, 1); + if (getQuestItemsCount(killer, DAZZLING_DROP) >= 20) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case WYRM: + { + if (hasQuestItems(killer, SCORE_OF_ELEMENTS, SYLPH_CHARM) && (getQuestItemsCount(killer, WYRMS_WINGBONE) < 10)) + { + if (getRandom(100) < 50) + { + giveItems(killer, WYRMS_WINGBONE, 1); + if (getQuestItemsCount(killer, WYRMS_WINGBONE) >= 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case WINDSUS: + { + if (hasQuestItems(killer, SCORE_OF_ELEMENTS, SYLPH_CHARM) && (getQuestItemsCount(killer, WINDSUS_MANE) < 10)) + { + if (getRandom(100) < 50) + { + giveItems(killer, WINDSUS_MANE, 1); + if (getQuestItemsCount(killer, WINDSUS_MANE) >= 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case ENCHANTED_MONSTEREYE: + { + if (hasQuestItems(killer, SCORE_OF_ELEMENTS, SERPENT_CHARM) && (getQuestItemsCount(killer, ENCHANTED_MONSTER_EYE_SHELL) < 10)) + { + giveItems(killer, ENCHANTED_MONSTER_EYE_SHELL, 1); + if (getQuestItemsCount(killer, ENCHANTED_MONSTER_EYE_SHELL) >= 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case ENCHANTED_STOLEN_GOLEM: + { + if (hasQuestItems(killer, SCORE_OF_ELEMENTS, SERPENT_CHARM) && (getQuestItemsCount(killer, ENCHANTED_GOLEM_POWDER) < 10)) + { + giveItems(killer, ENCHANTED_GOLEM_POWDER, 1); + if (getQuestItemsCount(killer, ENCHANTED_GOLEM_POWDER) >= 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case ENCHANTED_IRON_GOLEM: + { + if (hasQuestItems(killer, SCORE_OF_ELEMENTS, SERPENT_CHARM) && (getQuestItemsCount(killer, ENCHANTED_IRON_GOLEM_SCRAP) < 10)) + { + giveItems(killer, ENCHANTED_IRON_GOLEM_SCRAP, 1); + if (getQuestItemsCount(killer, ENCHANTED_IRON_GOLEM_SCRAP) >= 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case SINGING_FLOWER_PHANTASM: + { + if (hasQuestItems(killer, LILAC_CHARM) && !hasQuestItems(killer, GOLDEN_SEED_1ST)) + { + giveItems(killer, GOLDEN_SEED_1ST, 1); + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.I_AM_A_TREE_OF_NOTHING_A_TREE_THAT_KNOWS_WHERE_TO_RETURN)); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, GOLDEN_SEED_2ND, GOLDEN_SEED_3RD)) + { + qs.setCond(4); + } + } + break; + } + case SINGING_FLOWER_NIGTMATE: + { + if (hasQuestItems(killer, LILAC_CHARM) && !hasQuestItems(killer, GOLDEN_SEED_2ND)) + { + giveItems(killer, GOLDEN_SEED_2ND, 1); + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.I_AM_A_CREATURE_THAT_SHOWS_THE_TRUTH_OF_THE_PLACE_DEEP_IN_MY_HEART)); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, GOLDEN_SEED_1ST, GOLDEN_SEED_3RD)) + { + qs.setCond(4); + } + } + break; + } + case SINGING_FLOWER_DARKLING: + { + if (hasQuestItems(killer, LILAC_CHARM) && !hasQuestItems(killer, GOLDEN_SEED_3RD)) + { + giveItems(killer, GOLDEN_SEED_3RD, 1); + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.I_AM_A_MIRROR_OF_DARKNESS_AN_ILLUSION_OF_DARKNESS)); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (hasQuestItems(killer, GOLDEN_SEED_1ST, GOLDEN_SEED_2ND)) + { + qs.setCond(4); + } + } + break; + } + case GHOST_FIRE: + { + if (hasQuestItems(killer, SCORE_OF_ELEMENTS, SALAMANDER_CHARM) && (getQuestItemsCount(killer, FLAME_CRYSTAL) < 5)) + { + if (getRandom(100) < 50) + { + giveItems(killer, FLAME_CRYSTAL, 1); + if (getQuestItemsCount(killer, FLAME_CRYSTAL) >= 5) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == BARD_RUKAL) + { + if ((player.getClassId() == ClassId.WIZARD) || (player.getClassId() == ClassId.ELVEN_WIZARD) || ((player.getClassId() == ClassId.DARK_WIZARD))) + { + if (player.getLevel() < MIN_LVL) + { + htmltext = "30629-02.html"; + } + else + { + htmltext = "30629-03.htm"; + } + } + else + { + htmltext = "30629-01.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case BARD_RUKAL: + { + if (hasQuestItems(player, RUKALS_LETTER)) + { + htmltext = "30629-05.html"; + } + else if (hasQuestItems(player, PARINAS_LETTER)) + { + htmltext = "30629-06.html"; + } + else if (hasQuestItems(player, LILAC_CHARM)) + { + if (hasQuestItems(player, GOLDEN_SEED_1ST, GOLDEN_SEED_2ND, GOLDEN_SEED_3RD)) + { + htmltext = "30629-08.html"; + } + else + { + htmltext = "30629-07.html"; + } + } + else if (hasQuestItems(player, SCORE_OF_ELEMENTS)) + { + if (hasQuestItems(player, TONE_OF_WATER, TONE_OF_FIRE, TONE_OF_WIND, TONE_OF_EARTH)) + { + giveAdena(player, 372154, true); + giveItems(player, MARK_OF_MAGUS, 1); + addExpAndSp(player, 2058244, 141240); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30629-12.html"; + } + else + { + htmltext = "30629-11.html"; + } + } + break; + } + case PARINA: + { + if (hasQuestItems(player, RUKALS_LETTER)) + { + htmltext = "30391-01.html"; + } + else if (hasQuestItems(player, PARINAS_LETTER)) + { + htmltext = "30391-03.html"; + } + else if (hasQuestItems(player, LILAC_CHARM)) + { + htmltext = "30391-04.html"; + } + else if (hasQuestItems(player, SCORE_OF_ELEMENTS)) + { + htmltext = "30391-05.html"; + } + break; + } + case EARTH_SNAKE: + { + if (hasQuestItems(player, SCORE_OF_ELEMENTS)) + { + if (!hasAtLeastOneQuestItem(player, TONE_OF_EARTH, SERPENT_CHARM)) + { + htmltext = "30409-01.html"; + } + else if (hasQuestItems(player, SERPENT_CHARM)) + { + if ((getQuestItemsCount(player, ENCHANTED_MONSTER_EYE_SHELL) >= 10) && (getQuestItemsCount(player, ENCHANTED_GOLEM_POWDER) >= 10) && (getQuestItemsCount(player, ENCHANTED_IRON_GOLEM_SCRAP) >= 10)) + { + takeItems(player, ENCHANTED_MONSTER_EYE_SHELL, -1); + takeItems(player, ENCHANTED_GOLEM_POWDER, -1); + takeItems(player, ENCHANTED_IRON_GOLEM_SCRAP, -1); + giveItems(player, TONE_OF_EARTH, 1); + takeItems(player, SERPENT_CHARM, 1); + if (hasQuestItems(player, TONE_OF_FIRE, TONE_OF_WATER, TONE_OF_WIND)) + { + qs.setCond(6, true); + } + htmltext = "30409-05.html"; + } + else + { + htmltext = "30409-04.html"; + } + } + else if (hasQuestItems(player, TONE_OF_EARTH) && !hasQuestItems(player, SERPENT_CHARM)) + { + htmltext = "30409-06.html"; + } + } + break; + } + case FLAME_SALAMANDER: + { + if (hasQuestItems(player, SCORE_OF_ELEMENTS)) + { + if (!hasAtLeastOneQuestItem(player, TONE_OF_FIRE, SALAMANDER_CHARM)) + { + htmltext = "30411-01.html"; + giveItems(player, SALAMANDER_CHARM, 1); + } + else if (hasQuestItems(player, SALAMANDER_CHARM)) + { + if (getQuestItemsCount(player, FLAME_CRYSTAL) < 5) + { + htmltext = "30411-02.html"; + } + else + { + takeItems(player, FLAME_CRYSTAL, -1); + giveItems(player, TONE_OF_FIRE, 1); + takeItems(player, SALAMANDER_CHARM, 1); + if (hasQuestItems(player, TONE_OF_WATER, TONE_OF_WIND, TONE_OF_EARTH)) + { + qs.setCond(6, true); + } + htmltext = "30411-03.html"; + } + } + else if (hasQuestItems(player, TONE_OF_FIRE) && !hasQuestItems(player, SALAMANDER_CHARM)) + { + htmltext = "30411-04.html"; + } + } + break; + } + case WIND_SYLPH: + { + if (hasQuestItems(player, SCORE_OF_ELEMENTS)) + { + if (!hasAtLeastOneQuestItem(player, TONE_OF_WIND, SYLPH_CHARM)) + { + htmltext = "30412-01.html"; + } + else if (hasQuestItems(player, SYLPH_CHARM)) + { + if ((getQuestItemsCount(player, HARPYS_FEATHER) >= 20) && (getQuestItemsCount(player, WYRMS_WINGBONE) >= 10) && (getQuestItemsCount(player, WINDSUS_MANE) >= 10)) + { + takeItems(player, HARPYS_FEATHER, -1); + takeItems(player, WYRMS_WINGBONE, -1); + takeItems(player, WINDSUS_MANE, -1); + giveItems(player, TONE_OF_WIND, 1); + takeItems(player, SYLPH_CHARM, 1); + if (hasQuestItems(player, TONE_OF_WATER, TONE_OF_FIRE, TONE_OF_EARTH)) + { + qs.setCond(6, true); + } + htmltext = "30412-04.html"; + } + else + { + htmltext = "30412-03.html"; + } + } + else if (hasQuestItems(player, TONE_OF_WIND) && !hasQuestItems(player, SYLPH_CHARM)) + { + htmltext = "30412-05.html"; + } + } + break; + } + case WATER_UNDINE: + { + if (hasQuestItems(player, SCORE_OF_ELEMENTS)) + { + if (!hasAtLeastOneQuestItem(player, TONE_OF_WATER, UNDINE_CHARM)) + { + htmltext = "30413-01.html"; + giveItems(player, UNDINE_CHARM, 1); + } + else if (hasQuestItems(player, UNDINE_CHARM)) + { + if (getQuestItemsCount(player, DAZZLING_DROP) < 20) + { + htmltext = "30413-02.html"; + } + else + { + takeItems(player, DAZZLING_DROP, -1); + giveItems(player, TONE_OF_WATER, 1); + takeItems(player, UNDINE_CHARM, 1); + if (hasQuestItems(player, TONE_OF_FIRE, TONE_OF_WIND, TONE_OF_EARTH)) + { + qs.setCond(6, true); + } + htmltext = "30413-03.html"; + } + } + else if (hasQuestItems(player, TONE_OF_WATER) && !hasQuestItems(player, UNDINE_CHARM)) + { + htmltext = "30413-04.html"; + } + } + break; + } + case ELDER_CASIAN: + { + if (hasQuestItems(player, PARINAS_LETTER)) + { + htmltext = "30612-01.html"; + } + else if (hasQuestItems(player, LILAC_CHARM)) + { + if (hasQuestItems(player, GOLDEN_SEED_1ST, GOLDEN_SEED_2ND, GOLDEN_SEED_3RD)) + { + htmltext = "30612-04.html"; + } + else + { + htmltext = "30612-03.html"; + } + } + else if (hasQuestItems(player, SCORE_OF_ELEMENTS)) + { + htmltext = "30612-05.html"; + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == BARD_RUKAL) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30063-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30063-01.htm new file mode 100644 index 0000000000..5c18177485 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30063-01.htm @@ -0,0 +1,4 @@ +Trader Lara:
+Jewels? Ah! You mean the one that I bought in Giran's gallery recently. It was for one of my patrons who is really into collecting empire antiques. The jewels are already in his hands...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30063-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30063-02.htm new file mode 100644 index 0000000000..459ff2dc28 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30063-02.htm @@ -0,0 +1,4 @@ +Trader Lara:
+Let's see... The records say it was sold by the village leather craftsman Ismell. He has been behaving strangely since he bought jewelry from our shop. He has been seen wandering around the village in the middle of the night, murmuring to himself in a strange voice.
+Then suddenly he disappeared. Out of the blue! A few days ago he was spotted by execution Guard Roderick, running onto the Execution Grounds with a very pale face... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30063-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30063-03.htm new file mode 100644 index 0000000000..0decd62296 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30063-03.htm @@ -0,0 +1,3 @@ +Trader Lara:
+I hope that Ismel is all right... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30063-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30063-04.htm new file mode 100644 index 0000000000..65d336f95a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30063-04.htm @@ -0,0 +1,3 @@ +Trader Lara:
+Poor Ismel... He didn't even get a proper burial... Such an upstanding person... how could he have turned into an undead? So strange! Do you suppose that it has something to do with the jewelry? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30063-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30063-05.htm new file mode 100644 index 0000000000..61a92d0ba4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30063-05.htm @@ -0,0 +1,3 @@ +Trader Lara:
+I am quite sure that the jewel you seek is an omen. If I were you, I would give it to the Highest Priest of Einhasad's shrine! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30098-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30098-01.htm new file mode 100644 index 0000000000..42b78a2338 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30098-01.htm @@ -0,0 +1,4 @@ +Trader Alexandria:
+What have you come here for?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30098-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30098-02.htm new file mode 100644 index 0000000000..cddbe07aa6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30098-02.htm @@ -0,0 +1,5 @@ +Trader Alexandria:
+Ah! The jewels from last week's auction! They are truly exquisite, crafted with impeccable detail in the late empire fashion. They belonged to Trader Nestle of Gludin who requested that they be put in this auction as a relic from the ancient empire.
+They were all sold at the last auction. I must check the account book to see who bought them...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30098-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30098-03.htm new file mode 100644 index 0000000000..00e2ca0edc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30098-03.htm @@ -0,0 +1,6 @@ +Trader Alexandria:
+My records are very detailed. Three jewels were put up on auction.
+There were originally six pieces in the set, but the others were not in this set and were sold separately.
+The first jewel was sold to Magister Iker. He is one of the members of the Mystics Guild of this village. The second jewel was sold to Trader Lara in the Town of Dion. And the last jewel was sold to a Dark Elf named Kaira. She is one of the few Dark Elves who live in this village.
+I'm not sure, but you seem to be in something of a hurry. If need be, I will lend you my account book. You should meet the owners first, and ask Trader Nestle of Gludin about the origin of the jewels. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30098-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30098-04.htm new file mode 100644 index 0000000000..97d18f525f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30098-04.htm @@ -0,0 +1,4 @@ +Trader Alexandria:
+Jewels received by Mr. Nestle... I didn't realize they were so valuable!
+As I told you, the 3 jewels that I put on the auction were sold toMagister Iker, Trader Lara and Dark Elven Magister Kaira... You should meet them first and then ask Trader Nestle in Gludin about the source of the jewels. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30098-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30098-05.htm new file mode 100644 index 0000000000..3432bd9814 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30098-05.htm @@ -0,0 +1,4 @@ + +Trader Alexandria:
+Did you find the jewels? I have done some research and found that these jewels were used by the ancients to control evil. Had I known this earlier I could have sold them for a much higher price... Oh well, this has been very enlightening! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-01.htm new file mode 100644 index 0000000000..3fd9507503 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-01.htm @@ -0,0 +1,6 @@ +Magister Iker:
+The jewel bought at auction? Yes. So you noticed? That jewel is not an ordinary gem. I also felt a strong magical power emanating from the jewel, which is why I purchased it in the first place. But did you also perceive that the powers emitted from this jewel have a strong sense of... darkness.
+If you absolutely must have this jewel for your research, I'll trade it for something else. But you must first promise me that you will use the dark powers of this jewel responsibly.
+If you are like Hardin and his disciples, who were seduced by the powers of darkness and set their hands on forbidden dark magic, I shall never surrender this jewel. So promise me that you'll not use this jewel for evil purposes.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-02.htm new file mode 100644 index 0000000000..8d68ed4e69 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-02.htm @@ -0,0 +1,4 @@ +Magister Iker:
+All right. You can have the jewel. But I paid a hefty sum for it and require compensation. What about that? Bring me the materials I need for my research and I will give you the jewel in exchange.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-03.htm new file mode 100644 index 0000000000..891dd478f8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-03.htm @@ -0,0 +1,7 @@ +Magister Iker:
+All right, this is what I need.
+First, the teeth of the Wyrm that lives in the Sea of Spores. 20 of them should be enough.
+You must also bring me the Leto Lizardman's amulet. You can find the Leto Lizardmen in the southern parts of Oren. You must bring me 20 of these..
+And last, I need the stoneheart of the enchanted stone golems that may be found near the Ivory Tower. I will need 20 of these...
+These are quite a few items so I've written them down for you. Bring them to me and you shall have your jewel... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-04.htm new file mode 100644 index 0000000000..4aea5997a1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-04.htm @@ -0,0 +1,3 @@ +Magister Iker:
+Not yet? Bring the ingredients on this list and I will give you the jewel you seek. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-05.htm new file mode 100644 index 0000000000..1d7de49332 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-05.htm @@ -0,0 +1,4 @@ +Magister Iker:
+Ah, all the items that I asked for! Many thanks for your troubles... They will be of great help in my research. Here is the jewel.
+I must warn you that you must be careful of this jewel. In the few days that it was in my possession, I got the distinct impression that it was draining my life energy. In any case, it is a dangerous item. Beware. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-06.htm new file mode 100644 index 0000000000..f2af05bdeb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-06.htm @@ -0,0 +1,3 @@ +Magister Iker:
+That jewel does not seem ordinary. I feel evil emanating from it. Be careful. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-07.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-07.htm new file mode 100644 index 0000000000..b0df9dffa8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-07.htm @@ -0,0 +1,5 @@ +Magister Iker:
+You again? You have betrayed me! You gave that jewel to Orim of the Shadows after you promised that you wouldn't consort with Hardin and his minions!
+Leave now! You have sold your soul for dark power! I will not speak with you any longer.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-08.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-08.htm new file mode 100644 index 0000000000..dddef1cd7b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-08.htm @@ -0,0 +1,4 @@ +Magister Iker:
+Once again the short-sightedness of you dark sorcerers has brought disaster! Your careless use of dark magic has loosed a devil upon us!
+In any case, the monster Zeruel cannot be allowed to roam free. I shall lend you the Soul-trap Crystal. Seal the devil behind the doors of purgatory once again and return the crystal to me. This necklace has the power to deflect evil, it will also be of help to you. Now go! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-09.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-09.htm new file mode 100644 index 0000000000..59d7bf931b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-09.htm @@ -0,0 +1,3 @@ +Magister Iker:
+Due to your carelessness, a monster from the netherworld has been released from its bonds! You must bear responsibility for the beast that you have loosed upon us! You must destroy Zeruel's body and then use the Soul-trap Crystal to trap his soul. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-10.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-10.htm new file mode 100644 index 0000000000..4a7e3fe0e2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30110-10.htm @@ -0,0 +1,3 @@ +Magister Iker:
+You have trapped the soul of the devil Zeruel within the Crystal of Binding... The malevolence of his soul makes me shudder! You must return and seal this devil within the original box! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30188-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30188-01.htm new file mode 100644 index 0000000000..af71154158 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30188-01.htm @@ -0,0 +1,4 @@ +Priest Vadin:
+Why do you seek to use the Sword of Binding? The Drevanul, Zeruel? I never heard of that monster. I see from your desperate look that you are not lying. I shall give you a test. If you complete this, I will approve that your resolve and faith are strong, and give you the sanction of the church.
+Listen carefully. The number of pilgrims to the great shrine of Aden is growing day by day. There are also wicked Orcs who are preying upon the pilgrims. The Tamlin Orcs of southern Aden are among them. Kill them and bring 20 Tamlin Orc Amulets as proof. This is the trial that the shrine asks of you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30188-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30188-02.htm new file mode 100644 index 0000000000..17626ffb18 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30188-02.htm @@ -0,0 +1,3 @@ +Priest Vadin:
+Have you completed the trial that I gave you? Let me remind you, you must kill the Tamlin Orcs and bring 20 amulets as proof. If you complete the trial, I shall acknowledge that your resolve and faith are strong, and give you permission to use the Sword of Binding. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30188-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30188-03.htm new file mode 100644 index 0000000000..e76c2525a3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30188-03.htm @@ -0,0 +1,3 @@ +Priest Vadin:
+Good job! You have proven your faith and resolve. I hereby give you permission to use the Sword of Binding. Take this to Sir Klaus Vasper. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30188-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30188-04.htm new file mode 100644 index 0000000000..4eab0bc504 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30188-04.htm @@ -0,0 +1,3 @@ +Priest Vadin:
+Haven't I already given you permission to use the Sword of Binding? Go and find Sir Klaus Vasper to receive the sword. Punish the creatures of hell in the name of the shrine. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30188-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30188-05.htm new file mode 100644 index 0000000000..16b121de3e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30188-05.htm @@ -0,0 +1,3 @@ +Priest Vadin:
+Punish the children of darkness with the power of light! This is the will of the shrine, as well as a duty of the followers of Einhasad! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30314-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30314-01.htm new file mode 100644 index 0000000000..111a31d21c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30314-01.htm @@ -0,0 +1,4 @@ +Trader Nestle:
+Ah, the Jewel of Aklantoth. I commissioned Trader Alexandria of Giran to sell it at auction. There were originally 6 jewels in the set, but unfortunately we have only acquired 3 of them so far. If I had the whole set I could get a much higher price...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30314-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30314-02.htm new file mode 100644 index 0000000000..0baf0a9057 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30314-02.htm @@ -0,0 +1,4 @@ +Trader Nestle:
+The soldiers brought them to me. They told me that they took the jewels during a fight with Turek Orcs. The northwest coast of Gludio is where the relics of the Elmoreden empire are often found...
+It is also written here in the account book! Three jewels of empirical style, sold by Leopold of the Black Lion Troop. You should ask him for the details. I think he lives near the rebuilding site of Gludin. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30314-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30314-03.htm new file mode 100644 index 0000000000..e49d4b101b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30314-03.htm @@ -0,0 +1,3 @@ +Trader Nestle:
+As I told you before, the jewels that you are looking for were brought by Leopold of the Black Lion Troop. Ask him for the details. I think he lives near the rebuilding site of Gludin. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30314-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30314-04.htm new file mode 100644 index 0000000000..5f6109891e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30314-04.htm @@ -0,0 +1,3 @@ +Trader Nestle:
+Such a shame... To take a life for mere jewelry...! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-01.htm new file mode 100644 index 0000000000..e1afd66b56 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-01.htm @@ -0,0 +1,4 @@ +Sir Klaus Vasper:
+Hello! I am Klaus Vasper, a member of the glorious continental Knight league, knighted by King Cadmus as the Guardian Knight of the west. Also known as 'guardian of the 3 swords'.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-02.htm new file mode 100644 index 0000000000..e970f3a895 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-02.htm @@ -0,0 +1,4 @@ +Sir Klaus Vasper:
+I am entrusted with 3 swords. The first is the 'Sword of Ritual' which is used in every knighting ceremony. The second is the 'Sword of Chastity' which our ancestors received from Ordana, the lady of the forest. The last is the Sword of Binding which Artreus, the hero of Elmoreden, used to seal the magical creatures of Shilen.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-03.htm new file mode 100644 index 0000000000..427deea29e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-03.htm @@ -0,0 +1,4 @@ +Sir Klaus Vasper:
+No need to explain, I can see that you are in desperate need of the Sword of Binding. Unfortunately I cannot lend you the Sword of Binding without the permission of the Einhasad shrine. We must take every precaution to guarantee that the sword does not fall into the hands of the betrayers of Shilen. Legend says that this sword has the power to seal magical creatures, and also the power to free them.
+Go and find Priest Vadin in the town of Oren. If he gives his permission for you to use the Sword of Binding, I shall gladly lend it to you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-04.htm new file mode 100644 index 0000000000..7761dcd782 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-04.htm @@ -0,0 +1,3 @@ +Sir Klaus Vasper:
+If you wish to use the Sword of Binding you must have the permission of the shrine. Go to Priest Vadin in Town of Oren and get his permission. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-05.htm new file mode 100644 index 0000000000..df79538b14 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-05.htm @@ -0,0 +1,3 @@ +Sir Klaus Vasper:
+A sanction from the shrine! I shall lend you the Sword of Binding. I pray that you find and punish the creature that you seek. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-06.htm new file mode 100644 index 0000000000..95977e20d4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30417-06.htm @@ -0,0 +1,3 @@ +Sir Klaus Vasper:
+I see that you are still hunting the creature. I pray for your success in the name of the Goddess of Light! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30435-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30435-01.htm new file mode 100644 index 0000000000..0e6fb22c02 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30435-01.htm @@ -0,0 +1,6 @@ +Leopold:
+Nice to meet you, traveler. I am Leopold, Commander of the third platoon of the Black Lion mercenaries.
+Our troops are as dignified and brave as any Knights on this continent. Last summer when the drakes swarmed out of Dragon Valley, we defended Castle Giran. A few months ago when the pirates of Avella attacked the floating city of Heine, it was the Black Lions who defeated them.
+These days we are battling the Turek oak people of the northwestern part of Gludio at the request of farmer Piotur.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30435-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30435-02.htm new file mode 100644 index 0000000000..8a9f8ce2f1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30435-02.htm @@ -0,0 +1,5 @@ +Leopold:
+They filled their pockets with the treasures of the ancient kingdom they found on the battlefield. They sold most of them at the shop, but there arose a dispute over a few very valuable jewels. I grew weary of their bickering and confiscated 3 out of 6 jewels and sent them to Trader Lara for safekeeping.
+Meanwhile, tempers flared and three of them attacked and decapitated their colleagues in order to make their escape with 3 of the jewels! This senseless murder caused me such despair that I asked Lara to dispose the rest of the jewels.
+I sent troops to punish the murderers, who witnessed the rogues kill each other over the jewels and then rise as undead! You will find them among the skull troops near the Wastelands. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30435-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30435-03.htm new file mode 100644 index 0000000000..8dddb55220 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30435-03.htm @@ -0,0 +1,3 @@ +Leopold:
+The murdering thieves killed each other over the jewels, and have now become undead. Search among the skull troops near the wastelands. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30435-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30435-04.htm new file mode 100644 index 0000000000..17c2999799 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30435-04.htm @@ -0,0 +1,3 @@ +Leopold:
+Oh, why would they kill each other over mere jewels? Even mercenaries should have more dignity than that! Those jewels must be cursed! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30435-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30435-05.htm new file mode 100644 index 0000000000..5f92920534 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30435-05.htm @@ -0,0 +1,3 @@ +Leopold:
+Have you disposed of the cursed jewels? Say the word and I will do it for you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30476-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30476-01.htm new file mode 100644 index 0000000000..a39fca834d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30476-01.htm @@ -0,0 +1,5 @@ +Magister Kaira:
+I heard that Orim of the Shadows is looking for this jewel.... Are you sent by him? No doubt, it is obvious. Do you know what kind of jewel this is? What did he tempt you with? Do you think that you can learn all the secrets of Black magic just from this jewel?
+If you are stupid enough to believe anything that Orim says, you can have the jewel. Just remember, all knowledge has its price. The first rule of Black magic is 'You lose as much as you get'.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30476-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30476-02.htm new file mode 100644 index 0000000000..154674dc88 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30476-02.htm @@ -0,0 +1,3 @@ +Magister Kaira:
+Good. You may have it. Money will not purchase this, however. Instead you'll have to pay for it in another way. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30476-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30476-03.htm new file mode 100644 index 0000000000..8224ad08bd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30476-03.htm @@ -0,0 +1,3 @@ +Magister Kaira:
+Do you have any idea what the jewel you have taken is capable of? A wise Wizard would never give or take such an object so carelessly. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30476-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30476-04.htm new file mode 100644 index 0000000000..1ccbb621f2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30476-04.htm @@ -0,0 +1,3 @@ +Magister Kaira:
+Well, now you know of the evil that dwells in the jewel... You wouldn't have listened even if I had warned you. You people never trust Dark Elves! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-01.htm new file mode 100644 index 0000000000..e858df86fd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-01.htm @@ -0,0 +1,5 @@ +Orim of the Shadow:
+The Wizards of the Ivory Tower and the Priests of Einhasad warn us against any use of Black Magic. They seem to think that it is filthy and immoral.
+Those like you who hate what you do not understand are ignorant bigots. You don't even try to understand! Now get out of here!
+(Quest available only for Wizards, Knights and Palus Knights above level 39.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-02.htm new file mode 100644 index 0000000000..e9905af2c7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-02.htm @@ -0,0 +1,4 @@ +Orim of the Shadow:
+The power of darkness is neither good nor bad. No one judges whether a sharp blade is good or bad... The magic depends entirely on the user. It can be used for justice as easily as it can be used for evil. There is no denying the fact that it is a very powerful tool. Learning Black Magic requires a certain degree of spiritual sophistication. I see in your eyes a lust for forbidden power... Just as no parent would give a sword to an untrained child, I will not give you the secrets of Black Magic.
+(Quest available only for Wizards, Knights, Palus Knights above level 39.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-03.htm new file mode 100644 index 0000000000..b3d0d052de --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-03.htm @@ -0,0 +1,5 @@ +Orim of the Shadow:
+The power of darkness is neither good nor bad. No one judges whether a sharp blade is good or bad... The magic depends entirely on the user. It can be used for justice as easily as it can be used for evil. There is no denying on the fact that it is a powerful tool. Learning Black Magic requires a certain degree of spiritual sophistication.
+If you are ready to learn Black magic despite the bullying and scorn of people around you, I will gladly accept you as my pupil.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-04.htm new file mode 100644 index 0000000000..3bad1f4641 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-04.htm @@ -0,0 +1,5 @@ +Orim of the Shadow:
+It is very true that actions speak louder than words, and practice is more important than theory. I have no doubt that your resolutions are truthful but I can't totally believe you until you prove yourself.
+I will give you the opportunity to prove your faith and resolution. Will you help me with my research for a while? I will see during that period how serious you are, how intense your faith is, and above all, how passionate you are about the hidden truth. What do you say? Will you help me? Will you assist me in unveiling the secrets of black magic?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-05.htm new file mode 100644 index 0000000000..616b0452f3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-05.htm @@ -0,0 +1,6 @@ +Orim of the Shadow:
+From time to time people like you come to me wanting to learn black magic. They're usually people disillusioned such as Knights, who have trampled innocent serfs, or Priests, who burned innocent people at the stake... They all have their reasons, but they share one thing in common... Anger at the hypocrisy of practicing cruelty in the name of justice. These people share a common desire to show that justice can also be achieved through black magic.
+The power of darkness itself is neither good nor bad. Just as nobody judges a sharp blade as good or bad... It depends wholly on the user. It could be used for justice as easily as for slaughter and destruction.
+However, if you are to arrive at justice through darkness, and grasp hold of raw dark power, you must turn your back on the light and embrace darkness, enduring the contempt and bullying of people around you. You must firmly hold true to your will, and your faith... Dear Knight, is your will strong enough?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-06.htm new file mode 100644 index 0000000000..8a05c0eff6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-06.htm @@ -0,0 +1,5 @@ +Orim of the Shadow:
+It is very true that actions speak louder than words, and practice is more important than theory. I have no doubt that your resolutions are truthful but I can't totally believe you until you prove yourself.
+I will give you the opportunity to prove your faith and resolution. Will you help me with my research for a while? I will see during that period how serious you are, how intense your faith is, and above all, how passionate you are about the hidden truth. What do you say? Will you help me? Will you assist me in unveiling the secrets of black magic?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-07.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-07.htm new file mode 100644 index 0000000000..254e68ec7a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-07.htm @@ -0,0 +1,5 @@ +Orim of the Shadow:
+Then take a look at this. It is something that I found in the Cruma Tower one day. A cube made out of a mysterious substance. They say that the Wizards of the ancient kingdom called it a 'spirit container' because it could hold a dead person's spirit in it. That is how they tried to keep all the great scholars and philosophers' knowledge and experience.
+This box right here contains the spirit of Magus Aklantoth in the days of Elmoreden. Recently, he woke up from his 1,000-year sleep. It is faint, but clear enough... I hear his voice, calling me... He has promised to teach me all he knows in magic if I free his spirit from the box. You can always rely on a Wizard's word... So, what we need to do is open this box, and we'll have access to the secrets of black magic from the age of the empire.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-08.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-08.htm new file mode 100644 index 0000000000..11bb99d2b8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-08.htm @@ -0,0 +1,5 @@ +Orim of the Shadow:
+This box seems to be impregnable. On each side is a space where a jewel should be, and the spaces all seem to form a kind of lock. The box will open only when all 6 jewels are placed in their spaces, in the right order. Opening the box will be something of a challenge.
+This book has pictures of the 6 jewels. You must find them. In the meantime, I will try to find out which order they must be placed in.
+There is a jewelry auction at the Luxury Gallery of the Town of Giran. You should go and check there first. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-08a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-08a.htm new file mode 100644 index 0000000000..2d905c5852 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-08a.htm @@ -0,0 +1,6 @@ +Orim of the Shadow:
+This box is sealed with magic power and can never be opened through physical power. See these 6 grooves, one on each side of the box? Each is a lock. To open the box, each must be unlocked by inserting the right jewelry in the right order. Even the process of opening the box itself is a riddle!
+Look here in this bookof pictures of the jewelry required. Your task is to find the 6 pieces of jewelry that act as keys.While you are gone, I will try to determine the order of insertion.
+I have heard a rumor that several pieces of jewelry cut in the imperial style were up for auction at the Giran Town Luxury Shop. Why not travel there first and have a look?
+Here, take this Dimension Diamond. You can trade it to the village gatekeeper for something special that may help you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-09.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-09.htm new file mode 100644 index 0000000000..50c053a919 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-09.htm @@ -0,0 +1,3 @@ +Orim of the Shadow:
+You must leave immediately for the jewelry auction at Giran's luxury gallery. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-10.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-10.htm new file mode 100644 index 0000000000..900dd18b20 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-10.htm @@ -0,0 +1,3 @@ +Orim of the Shadow:
+While you are searching for the 6 Gems of Aklantoth, I shall try to unravel the mystery of the order of the stones. We shall soon discover the secrets of the ancients contained in this box! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-11.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-11.htm new file mode 100644 index 0000000000..1300139767 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-11.htm @@ -0,0 +1,5 @@ +Orim of the Shadow:
+Ah, all 6 jewels! Excellent! While you were busy finding them I was researching the order of inserting the jewels. And just now I have solved the secret! Give me the jewels! We shall soon learn the secrets of the Cube of Aklantoth!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-12.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-12.htm new file mode 100644 index 0000000000..194cc3d334 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-12.htm @@ -0,0 +1,6 @@ +Orim of the Shadow:
+All the previous owners of the jewels became undead? The Black magic dwelling in the jewels must drain the life energy of the owner...
+Normally, one would throw away or destroy such jewels, but these people held on to them too long... I suspect that the jewels held some other power over those who possessed them...
+This power must have something to do with the box. Well, we won't know until we open it. All that remains is to insert the jewels, each in its own space, in the correct order. Now, give me the jewels!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-13.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-13.htm new file mode 100644 index 0000000000..8898faff96 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-13.htm @@ -0,0 +1,8 @@ +Orim of the Shadow:
+At last!
+Will the cube of Aklantoth be opened...?
+May the six bindings, tied by the almighty be undone, and let it see... daylight! Why should it be deprived of light...? Let those trapped in darkness, break free, and set their feet anew on the ground!
+Ah...!
+No!!! What have I done...?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-14.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-14.htm new file mode 100644 index 0000000000..8faa45eba0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-14.htm @@ -0,0 +1,4 @@ +Orim of the Shadow:
+How could I have been so stupid? I cannot believe a mere demon got the better of me! I, Orim of the Shadow, the best pupil of the great Wizard Hardin!
+He must be disposed of before he is complete! Hurry! He must not be allowed to reach his full strength! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-15.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-15.htm new file mode 100644 index 0000000000..e76c637c5a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-15.htm @@ -0,0 +1,5 @@ +Orim of the Shadow:
+I truly believed this to be the Cube of Aklantoth... the sacred container of the spirit of the ancient scholar... Actually a demon's prison! And not just any demon, but Zeruel, the Malrukian prince, Monarch of Drevanul, the bloody angel!
+It is all my fault! My pride has been my downfall!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-16.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-16.htm new file mode 100644 index 0000000000..466f392a3d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-16.htm @@ -0,0 +1,7 @@ +Orim of the Shadow:
+At the last moment I was able to weaken Zeruel. It is not permanent, however. If I were to lose my concentration for even one second, Zeruel and his minions will escape.
+Zeruel himself holds the key to seal the box permanently. We must take the key from him and then seal him in again. To do so, we need 2 things, the Sword of Binding and the Soul-trap Crystal... Once we get these things, we will be able to bring Zeruel down and seal his spirit permanently back in the box.
+You should be able to get the Sword of Binding from Sir Klaus Vasper in Gludin. I will write you a letter explaining the situation. He won't be inclined to lend his sword to a practitioner of Witchcraft... Do what you can to win his trust and borrow the sword from him.
+As for the Soul-trap Crystal, go and see Magister Iker of Giran. She is also hostile to Witchcraft, but if you explain the urgency of the situation she should let you borrow it.
+Meanwhile I will do my best to keep Zeruel under control. Please hurry! Although Zeruel is still weak, once he gets his strength back no one will be able to resist him! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-17.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-17.htm new file mode 100644 index 0000000000..820f3959b4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-17.htm @@ -0,0 +1,4 @@ +Orim of the Shadow:
+We must have 2 things in order to lock the devil Zeruel back into the box: . The Sword of Binding, and the Soul-trap Crystal.
+The Sword of Binding belongs to Sir Klaus Vasper, and the Soul-trap Crystal is owned by Magister Iker of Giran. Both of them are very prejudiced against Witchcraft and will need to be convinced to cooperate. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-18.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-18.htm new file mode 100644 index 0000000000..3046edfd21 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-18.htm @@ -0,0 +1,5 @@ +Orim of the Shadow:
+Ah, the Sword of Binding and the Soul-trap Crystal! You have acquired the 2 holy objects! Now, we must find Zeruel...!
+My searching spell wasn't a total success, but I have a clue of where he might be. I am fairly certain that he is in the northern part of the Town of Dion, somewhere near the Floran Village. He is probably dwelling inside a human body.
+When Zeruel reveals himself, you must use all your strength to kill him. Remember this, the last stroke must be taken with the Sword of Binding and then you must seal his spirit with the Soul-trap Crystal. I know you can do it. Please hurry. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-19.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-19.htm new file mode 100644 index 0000000000..9717317c6d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-19.htm @@ -0,0 +1,4 @@ +Orim of the Shadow:
+Please hurry up and give me the crystal and the key! My concentration is slipping! We must not delay any longer!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-20.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-20.htm new file mode 100644 index 0000000000..9c0863de48 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-20.htm @@ -0,0 +1,6 @@ +Orim of the Shadow:
+I command thee, devil trapped in this prison of spirits! I invoke the name of Gran Kain, ruler of all darkness, get thee back from whence ye came!
+Oh chains of heaven which bind the evil creatures of shadow, I beseech thee in the name of Einhasad, may this sealed seraph imprison the demon forever!
+Now hurry! Give me the key!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-21.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-21.htm new file mode 100644 index 0000000000..8a5eead36a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-21.htm @@ -0,0 +1,5 @@ +Orim of the Shadow:
+I, Orim of the Shadow, declare that this prison of spirits shall bear my seal forever! It is done. Zeruel and his minions are safeley locked inside the box and the box is sealed with the magic of light. I shall keep the 6 jewels that function as the lock for safekeeping.
+As for the sword and crystal, I shall return them to their owners. ...I don't know why but I still get the feeling that I am being watched... Have you received an unexpected gift recently?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-22.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-22.htm new file mode 100644 index 0000000000..e34ceaa846 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30630-22.htm @@ -0,0 +1,5 @@ +Orim of the Shadow:
+The necklace of Magister Iker? Damn her eyes! I shall dispose of this right away. The Wizards of the Ivory Tower have been watching us all along with this necklace!
+Thank you very much, anyway. You saved us from certain disaster that was a direct result of my arrogance and greed. I am solely responsible for what happened. I was blind to the demon's tricks. Of course I can't blame the demon too much, that is just what demons do. After all, a Wizard who cannot control dark power is not much good to anyone...
+I wish I could take you to meet Hardin right away, but I am too ashamed to see him right now. I must meditate to recover my confidence. Take this Mark of Witchcraft. From here on, the road of the Magus will appear before thee. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30631-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30631-01.htm new file mode 100644 index 0000000000..6ba41426b9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30631-01.htm @@ -0,0 +1,4 @@ +Warden Roderik:
+Ismell? He passed here a few days ago. He seemed quite pale. He was determined to go to the execution place, even though I explained to him that the undead have been exceptionally active. He refused to listen to me, saying that he can't afford to lose such a precious thing.
+Afterwards a terrible shriek could be heard and he has not been seen since. I suppose he has become one of those nameless souls that wander around the Execution Grounds. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30632-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30632-01.htm new file mode 100644 index 0000000000..3d344e8e61 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30632-01.htm @@ -0,0 +1,3 @@ +Warden Endrigo:
+Ismel? Ah, yes I remember him. He is in there. I suppose that he also turned into one of those 'nameless souls' by now. A few days ago, he ran in there as if he was being chased by someone... A terrible shriek was heard... And he never returned. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30633-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30633-01.htm new file mode 100644 index 0000000000..1576813582 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30633-01.htm @@ -0,0 +1,5 @@ +Fisher Evert:
+When I was young, I also dreamed of traveling the world and seeking adventure. But eventually I fell in love with a woman and became a fisherman. Now I am retired, with no care but to cast my line on a peaceful afternoon... This is not a bad life at all, is it?
+Please remove that sword. The reflecting sunlight is scaring the fish...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30633-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30633-02.htm new file mode 100644 index 0000000000..0f999be321 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30633-02.htm @@ -0,0 +1,3 @@ +Fisher Evert:
+If you had only minded your own business and continued on your way you would have lived another day... Do you seriously intend to challenge the Prince of Darkness?! A foolhardy move indeed! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30633-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30633-03.htm new file mode 100644 index 0000000000..7202ff86f4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/30633-03.htm @@ -0,0 +1,3 @@ +Fisher Evert:
+What...what is going on...? Oh that was horrible... What a terrible nightmare! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/Q00229_TestOfWitchcraft.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/Q00229_TestOfWitchcraft.java new file mode 100644 index 0000000000..1c6ce3aac0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00229_TestOfWitchcraft/Q00229_TestOfWitchcraft.java @@ -0,0 +1,845 @@ +/* + * 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.Q00229_TestOfWitchcraft; + +import com.l2jmobius.gameserver.enums.ChatType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.Location; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.NpcStringId; +import com.l2jmobius.gameserver.network.serverpackets.NpcSay; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Test Of Witchcraft (229) + * @author ivantotov + */ +public final class Q00229_TestOfWitchcraft extends Quest +{ + // NPCs + private static final int GROCER_LARA = 30063; + private static final int TRADER_ALEXANDRIA = 30098; + private static final int MAGISTER_IKER = 30110; + private static final int PRIEST_VADIN = 30188; + private static final int TRADER_NESTLE = 30314; + private static final int SIR_KLAUS_VASPER = 30417; + private static final int LEOPOLD = 30435; + private static final int MAGISTER_KAIRA = 30476; + private static final int SHADOW_ORIM = 30630; + private static final int WARDEN_RODERIK = 30631; + private static final int WARDEN_ENDRIGO = 30632; + private static final int FISHER_EVERT = 30633; + // Items + private static final int SWORD_OF_BINDING = 3029; + private static final int ORIMS_DIAGRAM = 3308; + private static final int ALEXANDRIAS_BOOK = 3309; + private static final int IKERS_LIST = 3310; + private static final int DIRE_WYRM_FANG = 3311; + private static final int LETO_LIZARDMAN_CHARM = 3312; + private static final int ENCHANTED_STONE_GOLEM_HEARTSTONE = 3313; + private static final int LARAS_MEMO = 3314; + private static final int NESTLES_MEMO = 3315; + private static final int LEOPOLDS_JOURNAL = 3316; + private static final int AKLANTOTH_1ST_GEM = 3317; + private static final int AKLANTOTH_2ND_GEM = 3318; + private static final int AKLANTOTH_3RD_GEM = 3319; + private static final int AKLANTOTH_4TH_GEM = 3320; + private static final int AKLANTOTH_5TH_GEM = 3321; + private static final int AKLANTOTH_6TH_GEM = 3322; + private static final int BRIMSTONE_1ST = 3323; + private static final int ORIMS_INSTRUCTIONS = 3324; + private static final int ORIMS_1ST_LETTER = 3325; + private static final int ORIMS_2ND_LETTER = 3326; + private static final int SIR_VASPERS_LETTER = 3327; + private static final int VADINS_CRUCIFIX = 3328; + private static final int TAMLIN_ORC_AMULET = 3329; + private static final int VADINS_SANCTIONS = 3330; + private static final int IKERS_AMULET = 3331; + private static final int SOULTRAP_CRYSTAL = 3332; + private static final int PURGATORY_KEY = 3333; + private static final int ZERUEL_BIND_CRYSTAL = 3334; + private static final int BRIMSTONE_2ND = 3335; + // Reward + private static final int MARK_OF_WITCHCRAFT = 3307; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monster + private static final int DIRE_WYRM = 20557; + private static final int ENCHANTED_STONE_GOLEM = 20565; + private static final int LETO_LIZARDMAN = 20577; + private static final int LETO_LIZARDMAN_ARCHER = 20578; + private static final int LETO_LIZARDMAN_SOLDIER = 20579; + private static final int LETO_LIZARDMAN_WARRIOR = 20580; + private static final int LETO_LIZARDMAN_SHAMAN = 20581; + private static final int LETO_LIZARDMAN_OVERLORD = 20582; + private static final int TAMLIN_ORC = 20601; + private static final int TAMLIN_ORC_ARCHER = 20602; + // Quest Monster + private static final int NAMELESS_REVENANT = 27099; + private static final int SKELETAL_MERCENARY = 27100; + private static final int DREVANUL_PRINCE_ZERUEL = 27101; + // Misc + private static final int MIN_LEVEL = 39; + // Locations + private static final Location DREVANUL_PRINCE_ZERUEL_SPAWN = new Location(13395, 169807, -3708); + + public Q00229_TestOfWitchcraft() + { + super(229); + { + addStartNpc(SHADOW_ORIM); + addTalkId(SHADOW_ORIM, GROCER_LARA, TRADER_ALEXANDRIA, MAGISTER_IKER, PRIEST_VADIN, TRADER_NESTLE, SIR_KLAUS_VASPER, LEOPOLD, MAGISTER_KAIRA, WARDEN_RODERIK, WARDEN_ENDRIGO, FISHER_EVERT); + addKillId(DIRE_WYRM, ENCHANTED_STONE_GOLEM, LETO_LIZARDMAN, LETO_LIZARDMAN_ARCHER, LETO_LIZARDMAN_SOLDIER, LETO_LIZARDMAN_WARRIOR, LETO_LIZARDMAN_SHAMAN, LETO_LIZARDMAN_OVERLORD, TAMLIN_ORC, TAMLIN_ORC_ARCHER, NAMELESS_REVENANT, SKELETAL_MERCENARY, DREVANUL_PRINCE_ZERUEL); + addAttackId(NAMELESS_REVENANT, SKELETAL_MERCENARY, DREVANUL_PRINCE_ZERUEL); + registerQuestItems(SWORD_OF_BINDING, ORIMS_DIAGRAM, ALEXANDRIAS_BOOK, IKERS_LIST, DIRE_WYRM_FANG, LETO_LIZARDMAN_CHARM, ENCHANTED_STONE_GOLEM_HEARTSTONE, LARAS_MEMO, NESTLES_MEMO, LEOPOLDS_JOURNAL, AKLANTOTH_1ST_GEM, AKLANTOTH_2ND_GEM, AKLANTOTH_3RD_GEM, AKLANTOTH_4TH_GEM, AKLANTOTH_5TH_GEM, AKLANTOTH_6TH_GEM, BRIMSTONE_1ST, ORIMS_INSTRUCTIONS, ORIMS_1ST_LETTER, ORIMS_2ND_LETTER, SIR_VASPERS_LETTER, VADINS_CRUCIFIX, TAMLIN_ORC_AMULET, VADINS_SANCTIONS, IKERS_AMULET, SOULTRAP_CRYSTAL, PURGATORY_KEY, ZERUEL_BIND_CRYSTAL, BRIMSTONE_2ND); + } + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + giveItems(player, ORIMS_DIAGRAM, 1); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + if (player.getClassId() == ClassId.WIZARD) + { + giveItems(player, DIMENSIONAL_DIAMOND, 122); + } + else + { + giveItems(player, DIMENSIONAL_DIAMOND, 104); + } + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30630-08a.htm"; + } + else + { + htmltext = "30630-08.htm"; + } + } + break; + } + case "30630-04.htm": + case "30630-06.htm": + case "30630-07.htm": + case "30630-12.htm": + case "30630-13.htm": + case "30630-20.htm": + case "30630-21.htm": + case "30098-02.htm": + case "30110-02.htm": + case "30417-02.htm": + { + htmltext = event; + break; + } + case "30630-14.htm": + { + if (hasQuestItems(player, ALEXANDRIAS_BOOK)) + { + takeItems(player, ALEXANDRIAS_BOOK, 1); + takeItems(player, AKLANTOTH_1ST_GEM, 1); + takeItems(player, AKLANTOTH_2ND_GEM, 1); + takeItems(player, AKLANTOTH_3RD_GEM, 1); + takeItems(player, AKLANTOTH_4TH_GEM, 1); + takeItems(player, AKLANTOTH_5TH_GEM, 1); + takeItems(player, AKLANTOTH_6TH_GEM, 1); + giveItems(player, BRIMSTONE_1ST, 1); + qs.setCond(4, true); + addSpawn(DREVANUL_PRINCE_ZERUEL, npc, true, 0, false); + htmltext = event; + } + break; + } + case "30630-16.htm": + { + if (hasQuestItems(player, BRIMSTONE_1ST)) + { + takeItems(player, BRIMSTONE_1ST, 1); + giveItems(player, ORIMS_INSTRUCTIONS, 1); + giveItems(player, ORIMS_1ST_LETTER, 1); + giveItems(player, ORIMS_2ND_LETTER, 1); + qs.setCond(6, true); + htmltext = event; + } + break; + } + case "30630-22.htm": + { + if (hasQuestItems(player, ZERUEL_BIND_CRYSTAL)) + { + giveAdena(player, 372154, true); + giveItems(player, MARK_OF_WITCHCRAFT, 1); + addExpAndSp(player, 2058244, 141240); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = event; + } + break; + } + case "30063-02.htm": + { + giveItems(player, LARAS_MEMO, 1); + htmltext = event; + break; + } + case "30098-03.htm": + { + if (hasQuestItems(player, ORIMS_DIAGRAM)) + { + takeItems(player, ORIMS_DIAGRAM, 1); + giveItems(player, ALEXANDRIAS_BOOK, 1); + qs.setCond(2, true); + htmltext = event; + } + break; + } + case "30110-03.htm": + { + giveItems(player, IKERS_LIST, 1); + htmltext = event; + break; + } + case "30110-08.htm": + { + takeItems(player, ORIMS_2ND_LETTER, 1); + giveItems(player, IKERS_AMULET, 1); + giveItems(player, SOULTRAP_CRYSTAL, 1); + if (hasQuestItems(player, SWORD_OF_BINDING)) + { + qs.setCond(7, true); + } + htmltext = event; + break; + } + case "30314-02.htm": + { + giveItems(player, NESTLES_MEMO, 1); + htmltext = event; + break; + } + case "30417-03.htm": + { + if (hasQuestItems(player, ORIMS_1ST_LETTER)) + { + takeItems(player, ORIMS_1ST_LETTER, 1); + giveItems(player, SIR_VASPERS_LETTER, 1); + htmltext = event; + } + break; + } + case "30435-02.htm": + { + if (hasQuestItems(player, NESTLES_MEMO)) + { + takeItems(player, NESTLES_MEMO, 1); + giveItems(player, LEOPOLDS_JOURNAL, 1); + htmltext = event; + } + break; + } + case "30476-02.htm": + { + giveItems(player, AKLANTOTH_2ND_GEM, 1); + if (hasQuestItems(player, AKLANTOTH_1ST_GEM, AKLANTOTH_3RD_GEM, AKLANTOTH_4TH_GEM, AKLANTOTH_5TH_GEM, AKLANTOTH_6TH_GEM)) + { + qs.setCond(3, true); + } + htmltext = event; + break; + } + case "30633-02.htm": + { + giveItems(player, BRIMSTONE_2ND, 1); + qs.setCond(9, true); + if (npc.getSummonedNpcCount() < 1) + { + addSpawn(npc, DREVANUL_PRINCE_ZERUEL, DREVANUL_PRINCE_ZERUEL_SPAWN, false, 0); + } + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onAttack(L2Npc npc, L2PcInstance attacker, int damage, boolean isSummon) + { + final QuestState qs = getQuestState(attacker, false); + if ((qs != null) && qs.isStarted()) + { + switch (npc.getId()) + { + case NAMELESS_REVENANT: + { + if (npc.isScriptValue(0) && hasQuestItems(attacker, ALEXANDRIAS_BOOK, LARAS_MEMO) && !hasQuestItems(attacker, AKLANTOTH_3RD_GEM)) + { + npc.setScriptValue(1); + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.I_ABSOLUTELY_CANNOT_GIVE_IT_TO_YOU_IT_IS_MY_PRECIOUS_JEWEL)); + } + break; + } + case SKELETAL_MERCENARY: + { + if (npc.isScriptValue(0) && hasQuestItems(attacker, LEOPOLDS_JOURNAL) && !hasQuestItems(attacker, AKLANTOTH_4TH_GEM, AKLANTOTH_5TH_GEM, AKLANTOTH_6TH_GEM)) + { + npc.setScriptValue(1); + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.I_ABSOLUTELY_CANNOT_GIVE_IT_TO_YOU_IT_IS_MY_PRECIOUS_JEWEL)); + } + break; + } + case DREVANUL_PRINCE_ZERUEL: + { + if (hasQuestItems(attacker, BRIMSTONE_1ST)) + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.I_LL_TAKE_YOUR_LIVES_LATER)); + npc.deleteMe(); + qs.setCond(5, true); + } + else if (hasQuestItems(attacker, ORIMS_INSTRUCTIONS, BRIMSTONE_2ND, SWORD_OF_BINDING, SOULTRAP_CRYSTAL)) + { + if (npc.isScriptValue(0) && checkWeapon(attacker)) + { + npc.setScriptValue(1); + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.THAT_SWORD_IS_REALLY)); + } + } + break; + } + } + } + return super.onAttack(npc, attacker, damage, isSummon); + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case DIRE_WYRM: + { + if (hasQuestItems(killer, ALEXANDRIAS_BOOK, IKERS_LIST)) + { + if (getQuestItemsCount(killer, DIRE_WYRM_FANG) < 20) + { + giveItems(killer, DIRE_WYRM_FANG, 1); + if (getQuestItemsCount(killer, DIRE_WYRM_FANG) >= 20) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case ENCHANTED_STONE_GOLEM: + { + if (hasQuestItems(killer, ALEXANDRIAS_BOOK, IKERS_LIST)) + { + if (getQuestItemsCount(killer, ENCHANTED_STONE_GOLEM_HEARTSTONE) < 20) + { + giveItems(killer, ENCHANTED_STONE_GOLEM_HEARTSTONE, 1); + if (getQuestItemsCount(killer, ENCHANTED_STONE_GOLEM_HEARTSTONE) >= 20) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case LETO_LIZARDMAN: + case LETO_LIZARDMAN_ARCHER: + case LETO_LIZARDMAN_SOLDIER: + case LETO_LIZARDMAN_WARRIOR: + case LETO_LIZARDMAN_SHAMAN: + case LETO_LIZARDMAN_OVERLORD: + { + if (hasQuestItems(killer, ALEXANDRIAS_BOOK, IKERS_LIST)) + { + if (getQuestItemsCount(killer, LETO_LIZARDMAN_CHARM) < 20) + { + giveItems(killer, LETO_LIZARDMAN_CHARM, 1); + if (getQuestItemsCount(killer, LETO_LIZARDMAN_CHARM) >= 20) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case TAMLIN_ORC: + case TAMLIN_ORC_ARCHER: + { + if (hasQuestItems(killer, VADINS_CRUCIFIX)) + { + if ((getRandom(100) < 50) && (getQuestItemsCount(killer, TAMLIN_ORC_AMULET) < 20)) + { + giveItems(killer, TAMLIN_ORC_AMULET, 1); + if (getQuestItemsCount(killer, TAMLIN_ORC_AMULET) >= 20) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case NAMELESS_REVENANT: + { + if (hasQuestItems(killer, ALEXANDRIAS_BOOK, LARAS_MEMO) && !hasQuestItems(killer, AKLANTOTH_3RD_GEM)) + { + takeItems(killer, LARAS_MEMO, 1); + giveItems(killer, AKLANTOTH_3RD_GEM, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + if (hasQuestItems(killer, AKLANTOTH_1ST_GEM, AKLANTOTH_2ND_GEM, AKLANTOTH_4TH_GEM, AKLANTOTH_5TH_GEM, AKLANTOTH_6TH_GEM)) + { + qs.setCond(3); + } + } + break; + } + case SKELETAL_MERCENARY: + { + if (hasQuestItems(killer, LEOPOLDS_JOURNAL) && !hasQuestItems(killer, AKLANTOTH_4TH_GEM, AKLANTOTH_5TH_GEM, AKLANTOTH_6TH_GEM)) + { + if (!hasQuestItems(killer, AKLANTOTH_4TH_GEM)) + { + giveItems(killer, AKLANTOTH_4TH_GEM, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + else if (!hasQuestItems(killer, AKLANTOTH_5TH_GEM)) + { + giveItems(killer, AKLANTOTH_5TH_GEM, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + else if (!hasQuestItems(killer, AKLANTOTH_6TH_GEM)) + { + takeItems(killer, LEOPOLDS_JOURNAL, 1); + giveItems(killer, AKLANTOTH_6TH_GEM, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + if (hasQuestItems(killer, AKLANTOTH_1ST_GEM, AKLANTOTH_2ND_GEM, AKLANTOTH_3RD_GEM)) + { + qs.setCond(3); + } + } + } + break; + } + case DREVANUL_PRINCE_ZERUEL: + { + if (hasQuestItems(killer, ORIMS_INSTRUCTIONS, BRIMSTONE_2ND, SWORD_OF_BINDING, SOULTRAP_CRYSTAL)) + { + if (npc.getKillingBlowWeapon() == SWORD_OF_BINDING) + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.NO_I_HAVEN_T_COMPLETELY_FINISHED_THE_COMMAND_FOR_DESTRUCTION_AND_SLAUGHTER_YET)); + takeItems(killer, SOULTRAP_CRYSTAL, 1); + giveItems(killer, PURGATORY_KEY, 1); + giveItems(killer, ZERUEL_BIND_CRYSTAL, 1); + takeItems(killer, BRIMSTONE_2ND, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + qs.setCond(10); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == SHADOW_ORIM) + { + if ((player.getClassId() == ClassId.WIZARD) || (player.getClassId() == ClassId.KNIGHT) || (player.getClassId() == ClassId.PALUS_KNIGHT)) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (player.getClassId() == ClassId.WIZARD) + { + htmltext = "30630-03.htm"; + } + else + { + htmltext = "30630-05.htm"; + } + } + else + { + htmltext = "30630-02.htm"; + } + } + else + { + htmltext = "30630-01.htm"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case SHADOW_ORIM: + { + if (hasQuestItems(player, ORIMS_DIAGRAM)) + { + htmltext = "30630-09.htm"; + } + else if (hasQuestItems(player, ALEXANDRIAS_BOOK)) + { + if (hasQuestItems(player, AKLANTOTH_1ST_GEM, AKLANTOTH_2ND_GEM, AKLANTOTH_3RD_GEM, AKLANTOTH_4TH_GEM, AKLANTOTH_5TH_GEM, AKLANTOTH_6TH_GEM)) + { + htmltext = "30630-11.htm"; + } + else + { + htmltext = "30630-10.htm"; + } + } + else if (hasQuestItems(player, BRIMSTONE_1ST)) + { + htmltext = "30630-15.htm"; + } + else if (hasQuestItems(player, ORIMS_INSTRUCTIONS) && !hasAtLeastOneQuestItem(player, SWORD_OF_BINDING, SOULTRAP_CRYSTAL)) + { + htmltext = "30630-17.htm"; + } + if (hasQuestItems(player, SWORD_OF_BINDING, SOULTRAP_CRYSTAL)) + { + qs.setCond(8, true); + htmltext = "30630-18.htm"; + } + else if (hasQuestItems(player, SWORD_OF_BINDING, ZERUEL_BIND_CRYSTAL)) + { + htmltext = "30630-19.htm"; + } + break; + } + case GROCER_LARA: + { + if (hasQuestItems(player, ALEXANDRIAS_BOOK)) + { + if (!hasAtLeastOneQuestItem(player, LARAS_MEMO, AKLANTOTH_3RD_GEM)) + { + htmltext = "30063-01.htm"; + } + else if (!hasQuestItems(player, AKLANTOTH_3RD_GEM) && hasQuestItems(player, LARAS_MEMO)) + { + htmltext = "30063-03.htm"; + } + else if (!hasQuestItems(player, LARAS_MEMO) && hasQuestItems(player, AKLANTOTH_3RD_GEM)) + { + htmltext = "30063-04.htm"; + } + } + else if (hasAtLeastOneQuestItem(player, BRIMSTONE_1ST, ORIMS_INSTRUCTIONS)) + { + htmltext = "30063-05.htm"; + } + break; + } + case TRADER_ALEXANDRIA: + { + if (hasQuestItems(player, ORIMS_DIAGRAM)) + { + htmltext = "30098-01.htm"; + } + else if (hasQuestItems(player, ALEXANDRIAS_BOOK)) + { + htmltext = "30098-04.htm"; + } + else if (hasQuestItems(player, ORIMS_INSTRUCTIONS, BRIMSTONE_1ST)) + { + htmltext = "30098-05.htm"; + } + break; + } + case MAGISTER_IKER: + { + if (hasQuestItems(player, ALEXANDRIAS_BOOK)) + { + if (!hasAtLeastOneQuestItem(player, IKERS_LIST, AKLANTOTH_1ST_GEM)) + { + htmltext = "30110-01.htm"; + } + else if (hasQuestItems(player, IKERS_LIST)) + { + if ((getQuestItemsCount(player, DIRE_WYRM_FANG) >= 20) && (getQuestItemsCount(player, LETO_LIZARDMAN_CHARM) >= 20) && (getQuestItemsCount(player, ENCHANTED_STONE_GOLEM_HEARTSTONE) >= 20)) + { + takeItems(player, IKERS_LIST, 1); + takeItems(player, DIRE_WYRM_FANG, -1); + takeItems(player, LETO_LIZARDMAN_CHARM, -1); + takeItems(player, ENCHANTED_STONE_GOLEM_HEARTSTONE, -1); + giveItems(player, AKLANTOTH_1ST_GEM, 1); + if (hasQuestItems(player, AKLANTOTH_2ND_GEM, AKLANTOTH_3RD_GEM, AKLANTOTH_4TH_GEM, AKLANTOTH_5TH_GEM, AKLANTOTH_6TH_GEM)) + { + qs.setCond(3, true); + } + htmltext = "30110-05.htm"; + } + else + { + htmltext = "30110-04.htm"; + } + } + else if (!hasQuestItems(player, IKERS_LIST) && hasQuestItems(player, AKLANTOTH_1ST_GEM)) + { + htmltext = "30110-06.htm"; + } + } + else if (hasQuestItems(player, ORIMS_INSTRUCTIONS)) + { + if (!hasAtLeastOneQuestItem(player, SOULTRAP_CRYSTAL, ZERUEL_BIND_CRYSTAL)) + { + htmltext = "30110-07.htm"; + } + else if (!hasQuestItems(player, ZERUEL_BIND_CRYSTAL) && hasQuestItems(player, SOULTRAP_CRYSTAL)) + { + htmltext = "30110-09.htm"; + } + else if (!hasQuestItems(player, SOULTRAP_CRYSTAL) && hasQuestItems(player, ZERUEL_BIND_CRYSTAL)) + { + htmltext = "30110-10.htm"; + } + } + break; + } + case PRIEST_VADIN: + { + if (hasQuestItems(player, ORIMS_INSTRUCTIONS, SIR_VASPERS_LETTER)) + { + takeItems(player, SIR_VASPERS_LETTER, 1); + giveItems(player, VADINS_CRUCIFIX, 1); + htmltext = "30188-01.htm"; + } + else if (hasQuestItems(player, VADINS_CRUCIFIX)) + { + if (getQuestItemsCount(player, TAMLIN_ORC_AMULET) < 20) + { + htmltext = "30188-02.htm"; + } + else + { + takeItems(player, VADINS_CRUCIFIX, 1); + takeItems(player, TAMLIN_ORC_AMULET, -1); + giveItems(player, VADINS_SANCTIONS, 1); + htmltext = "30188-03.htm"; + } + } + else if (hasQuestItems(player, ORIMS_INSTRUCTIONS)) + { + if (hasQuestItems(player, VADINS_SANCTIONS)) + { + htmltext = "30188-04.htm"; + } + else if (hasQuestItems(player, SWORD_OF_BINDING)) + { + htmltext = "30188-05.htm"; + } + } + break; + } + case TRADER_NESTLE: + { + if (hasQuestItems(player, ALEXANDRIAS_BOOK)) + { + if (!hasAtLeastOneQuestItem(player, LEOPOLDS_JOURNAL, NESTLES_MEMO, AKLANTOTH_4TH_GEM, AKLANTOTH_5TH_GEM, AKLANTOTH_6TH_GEM)) + { + htmltext = "30314-01.htm"; + } + else if (hasQuestItems(player, NESTLES_MEMO) && !hasQuestItems(player, LEOPOLDS_JOURNAL)) + { + htmltext = "30314-03.htm"; + } + else if (!hasQuestItems(player, NESTLES_MEMO) && hasAtLeastOneQuestItem(player, LEOPOLDS_JOURNAL, AKLANTOTH_4TH_GEM, AKLANTOTH_5TH_GEM, AKLANTOTH_6TH_GEM)) + { + htmltext = "30314-04.htm"; + } + } + break; + } + case SIR_KLAUS_VASPER: + { + if (hasQuestItems(player, ORIMS_INSTRUCTIONS)) + { + if (hasQuestItems(player, ORIMS_1ST_LETTER)) + { + htmltext = "30417-01.htm"; + } + else if (hasQuestItems(player, SIR_VASPERS_LETTER)) + { + htmltext = "30417-04.htm"; + } + else if (hasQuestItems(player, VADINS_SANCTIONS)) + { + giveItems(player, SWORD_OF_BINDING, 1); + takeItems(player, VADINS_SANCTIONS, 1); + if (hasQuestItems(player, SOULTRAP_CRYSTAL)) + { + qs.setCond(7, true); + } + htmltext = "30417-05.htm"; + } + else if (hasQuestItems(player, SWORD_OF_BINDING)) + { + htmltext = "30417-06.htm"; + } + } + break; + } + case LEOPOLD: + { + if (hasQuestItems(player, ALEXANDRIAS_BOOK)) + { + if (hasQuestItems(player, NESTLES_MEMO) && !hasQuestItems(player, LEOPOLDS_JOURNAL)) + { + htmltext = "30435-01.htm"; + } + else if (hasQuestItems(player, LEOPOLDS_JOURNAL) && !hasQuestItems(player, NESTLES_MEMO)) + { + htmltext = "30435-03.htm"; + } + else if (hasQuestItems(player, AKLANTOTH_4TH_GEM, AKLANTOTH_5TH_GEM, AKLANTOTH_6TH_GEM)) + { + htmltext = "30435-04.htm"; + } + } + else if (hasAtLeastOneQuestItem(player, BRIMSTONE_1ST, ORIMS_INSTRUCTIONS)) + { + htmltext = "30435-05.htm"; + } + break; + } + case MAGISTER_KAIRA: + { + if (hasQuestItems(player, ALEXANDRIAS_BOOK)) + { + if (!hasQuestItems(player, AKLANTOTH_2ND_GEM)) + { + htmltext = "30476-01.htm"; + } + else + { + htmltext = "30476-03.htm"; + } + } + else if (hasAtLeastOneQuestItem(player, BRIMSTONE_1ST, ORIMS_INSTRUCTIONS)) + { + htmltext = "30476-04.htm"; + } + break; + } + case WARDEN_RODERIK: + { + if (hasQuestItems(player, ALEXANDRIAS_BOOK) && hasAtLeastOneQuestItem(player, LARAS_MEMO, AKLANTOTH_3RD_GEM)) + { + htmltext = "30631-01.htm"; + } + break; + } + case WARDEN_ENDRIGO: + { + if (hasQuestItems(player, ALEXANDRIAS_BOOK) && hasAtLeastOneQuestItem(player, LARAS_MEMO, AKLANTOTH_3RD_GEM)) + { + htmltext = "30632-01.htm"; + } + break; + } + case FISHER_EVERT: + { + if (hasQuestItems(player, ORIMS_INSTRUCTIONS)) + { + if (hasQuestItems(player, SOULTRAP_CRYSTAL, SWORD_OF_BINDING) && !hasQuestItems(player, BRIMSTONE_2ND)) + { + htmltext = "30633-01.htm"; + } + else if (hasQuestItems(player, SOULTRAP_CRYSTAL, BRIMSTONE_2ND) && !hasQuestItems(player, ZERUEL_BIND_CRYSTAL)) + { + if (npc.getSummonedNpcCount() < 1) + { + addSpawn(npc, DREVANUL_PRINCE_ZERUEL, DREVANUL_PRINCE_ZERUEL_SPAWN, false, 0); + } + htmltext = "30633-02.htm"; + } + else if (hasQuestItems(player, ZERUEL_BIND_CRYSTAL) && !hasAtLeastOneQuestItem(player, SOULTRAP_CRYSTAL, BRIMSTONE_2ND)) + { + htmltext = "30633-03.htm"; + } + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == SHADOW_ORIM) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } + + private boolean checkWeapon(L2PcInstance player) + { + L2ItemInstance weapon = player.getActiveWeaponInstance(); + return ((weapon != null) && ((weapon.getId() == SWORD_OF_BINDING))); + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-01.html new file mode 100644 index 0000000000..2e03ea75c8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-01.html @@ -0,0 +1,5 @@ +Trader Lara:
+I know! You are the summons apprentice! Did you find me because you needed an arcana? I can make one for you... Although it won't be very good, it's just something I do as a pastime. It would be too embarrassing if I sold it for money.
+So how about an exchange? I'll make you a Beginner's Arcana if you'll find me the goods that I need. Will that work for you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-02.html new file mode 100644 index 0000000000..e315c5024b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-02.html @@ -0,0 +1,3 @@ +Trader Lara:
+Then I will write down the things that I need. If you can bring me what's written on the list, I will make you two Beginner's Arcanas. Okay, it's a deal. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-03.html new file mode 100644 index 0000000000..be17615653 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-03.html @@ -0,0 +1,4 @@ +Trader Lara:
+You again! What do you want this time?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-04.html new file mode 100644 index 0000000000..781eae46cb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-04.html @@ -0,0 +1,3 @@ +Trader Lara:
+Oh, I see! If that is so, let's do it just like the other day... You find me the things that I need, and I will make you some more Beginner's Arcanas. Here, I'll make a list of the things I need. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-05.html new file mode 100644 index 0000000000..3d89cf3203 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-05.html @@ -0,0 +1,3 @@ +Trader Lara:
+Please bring me all the things I wrote down on the list. Very well. I shall create the Beginner's Arcanas for you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-06.html new file mode 100644 index 0000000000..e2d1b8049d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-06.html @@ -0,0 +1,4 @@ +Trader Lara:
+You have found all the things that I asked for! Thank you so much. I shall lend you two Beginner's Arcanas as promised.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-07.html new file mode 100644 index 0000000000..4ba8dfe130 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-07.html @@ -0,0 +1,3 @@ +Trader Lara:
+Please bring me all the things I wrote down on the list. Very well. I shall lend you two Beginner's Arcanas. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-08.html new file mode 100644 index 0000000000..33dee6273e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-08.html @@ -0,0 +1,4 @@ +Trader Lara:
+You have found all the things that I asked for! Thank you so much. I shall lend you two Beginner's Arcanas as I have promised.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-09.html new file mode 100644 index 0000000000..4ba8dfe130 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-09.html @@ -0,0 +1,3 @@ +Trader Lara:
+Please bring me all the things I wrote down on the list. Very well. I shall lend you two Beginner's Arcanas. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-10.html new file mode 100644 index 0000000000..33dee6273e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-10.html @@ -0,0 +1,4 @@ +Trader Lara:
+You have found all the things that I asked for! Thank you so much. I shall lend you two Beginner's Arcanas as I have promised.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-11.html new file mode 100644 index 0000000000..4ba8dfe130 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-11.html @@ -0,0 +1,3 @@ +Trader Lara:
+Please bring me all the things I wrote down on the list. Very well. I shall lend you two Beginner's Arcanas. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-12.html new file mode 100644 index 0000000000..e2d1b8049d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-12.html @@ -0,0 +1,4 @@ +Trader Lara:
+You have found all the things that I asked for! Thank you so much. I shall lend you two Beginner's Arcanas as promised.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-13.html new file mode 100644 index 0000000000..4ba8dfe130 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-13.html @@ -0,0 +1,3 @@ +Trader Lara:
+Please bring me all the things I wrote down on the list. Very well. I shall lend you two Beginner's Arcanas. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-14.html new file mode 100644 index 0000000000..e2d1b8049d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30063-14.html @@ -0,0 +1,4 @@ +Trader Lara:
+You have found all the things that I asked for! Thank you so much. I shall lend you two Beginner's Arcanas as promised.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-01.html new file mode 100644 index 0000000000..725b31200c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-01.html @@ -0,0 +1,6 @@ +High Summoner Galatea:
+From the very beginning, while the world was still young, from when the Elves made pacts with the original elementals of the woods, summoning magic has evolved into a high level mystical art form. Along with the ability to control the elements with spells that command fire and wind, summoning magic is one of the three traditional magical arts contained within the Ivory Tower.
+Learning summoning magic is not an easy path. A high level of magic is required to communicate with creatures of the netherworld, enter into a contract with them, and bring them to your aide. A very strong will is required to make the summoned creature obey your commands.
+Many magicians have lost their lives for lacking a strong enough will when summoning. Therefore, high level summoning spells must only be taught to those whose skills have been proven and or acknowledged. You seem to be on a path that is not related to summoning magic. This is not a study to be taken lightly.
+(This quest may only be undertaken by Wizards, Elven Wizards, or Dark Wizards, level 39 or higher.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-02.html new file mode 100644 index 0000000000..12bc748c26 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-02.html @@ -0,0 +1,6 @@ +High Summoner Galatea:
+From the very beginning, while the world was still young, from when the Elves made pacts with the original elementals of the woods, summoning magic has evolved into a high level mystical art form. Along with the ability to control the elements with spells that command fire and wind, summoning magic is one of the three traditional magical arts contained within the Ivory Tower.
+Learning summoning magic is not an easy path. A high level of magic is required to communicate with creatures of the netherworld, enter into a contract with them, and bring them to your aide. A very strong will is required to make the summoned creature obey your commands.
+Many magicians have lost their lives for lacking a strong enough will when summoning. Therefore, high level summoning spells must only be taught to those whose skills have been proven and or acknowledged. If you wish to follow the path of the Summoner, you must take the challenge and pass the Trials of the Summoner. In my opinion, you are not yet ready to attempt the trial. Continue your training, then come and see me again.
+(Quest for Wizards, Elven Wizards, or Dark Wizards, level 39 or higher.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-03.htm new file mode 100644 index 0000000000..ffafd8e609 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-03.htm @@ -0,0 +1,6 @@ +High Summoner Galatea:
+From the very beginning, while the world was still young, from when the Elves made pacts with the original elementals of the woods, summoning magic has evolved into a high level mystical art form. Along with the ability to control the elements with spells that command fire and wind, summoning magic is one of the three traditional magical arts contained within the Ivory Tower.
+Learning summoning magic is not an easy path. A high level of magic is required to communicate with creatures of the netherworld, enter into a contract with them, and bring them to your aide. A very strong will is required to make the summoned creature obey your commands.
+Many magicians have lost their lives for lacking a strong enough will when summoning. Therefore, high level summoning spells must only be taught to those whose skills have been proven and or acknowledged. If you wish to follow the path of the Summoner, you must take the challenge and pass the Trials of the Summoner. Are you prepared for this challenge?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-04.htm new file mode 100644 index 0000000000..3495329a52 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-04.htm @@ -0,0 +1,5 @@ +High Summoner Galatea:
+This trial tests to see if you have the will and determination to become a Summoner. What must be done is quite simple. You must seek out and engage other Summoners in battle. Achieve victory against six opponents and you will prove yourself worthy and pass the test.
+This may seem an easy task, but a battle amongst Summoners is fairly difficult and will test a Summoner's ability to control his or her summoned creature.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-05.htm new file mode 100644 index 0000000000..987dc4b23d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-05.htm @@ -0,0 +1,7 @@ +High Summoner Galatea:
+A battle amongst Summoners is fought by the summoned creatures. The lower ranked Summoner is given the advantage of the first attack. As an apprentice Summoner, you will automatically become the lowest ranked Summoner.
+During a battle, the Summoner may assist his or her creature with magic, but cannot physically attack an opponent's summoned creature.
+A penalty is given if a summoner physically attacks an opponent's creature or receives the aid of another.
+At the conclusion of the battle, the defeated Summoner must surrender his or her Arcana Card to the victor.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-06.htm new file mode 100644 index 0000000000..d6598b9d62 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-06.htm @@ -0,0 +1,6 @@ +High Summoner Galatea:
+This card is engraved with the Summoner's name and includes a unique mark. The tradition of the Arcana Card derives from the need for early Summoner's to exult in their victories.
+As an apprentice Summoner may not begin a battle until a higher level Summoner has given you a card. If you do not have an apprentice Arcana Card, the opponent will not accept your challenge. You must give your opponent an Arcana Card each time you lose a battle. Thus, it is suggested that you make 3 or 4 extra cards for yourself.
+If you win, you are given your opponent's Arcana Card. It is easy to see who a Summoner has defeated by looking at his or her Arcana Card collection.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-07.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-07.htm new file mode 100644 index 0000000000..4444ba1b3f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-07.htm @@ -0,0 +1,6 @@ +High Summoner Galatea:
+In the old days Summoners created their own cards, but the cards have become so sophisticated that they must be created by a special craftsmen. Note that you are not yet an official Summoner and may only receive Apprentice Arcana Cards. Perhaps the day will come when you may possess a Major Arcana Card, a card that is only held by the top Summoners of the land!
+The card you will be making now is for use in the trial, so it need not be ostentatious. You must seek out a craftsman who knows the methods for creating arcana cards. Trader Lara in the Town of Dion will probably make a card for you.
+She works rather slowly, so I suggest that you order a good supply of them up front.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-08.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-08.htm new file mode 100644 index 0000000000..2cd3f9099a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-08.htm @@ -0,0 +1,9 @@ +High Summoner Galatea:
+I have several suggestions regarding opponents - there are quite a few folks who may accept your challenge if asked.
+First, you should try and contact Summoner Almors. He has been sick lately and is recovering on Talking Island.
+You should also try Summoner Basillia. I have heard that she is busy researching a new form of Summoning magic near a farm on the southern shores of Gludio.
+Summoner Camoniell, of the Elves, has been in seclusion in a cottage in southern Dion. I've heard he has had some trouble lately.
+Summoner Celestiel usually resides in the Ivory Tower, but has returned to the Elven Woods on urgent business from her homeland.
+Summoner Brynthea and Summoner Belthus of the Dark Elves may be proper opponents for you, but they are hard to find, as they are not likely to stay in one place. Last I heard, Brynthea was somewhere in the northeastern parts of Giran, and Belthus was somewhere in the Cruma Marshlands...
+These Summoners are all proud and haughty people, and may scoff at a challenge from an apprentice Summoner like yourself. But, at the same time, they will likely accept your challenge, if only to display their supremacy over you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-08a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-08a.htm new file mode 100644 index 0000000000..c7caa63f28 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-08a.htm @@ -0,0 +1,8 @@ +Head Summoner Galatea:
+If you are serious about challenging a more advanced summoner, here are some likely candidates here in Aden.
+Summoner Almorsis recuperating on Talking Island at the moment. Summoner Basillia, rumor has it, is preoccupied with studying new summoning magic at his seaside home in southern Gludio.
+The Elf, Summoner Camoniell, lives in retirement in his villa in southern Dion; I have heard that he has had some sort of bad experience lately. Summoner Celestiel once lived in the Ivory Tower, but apparently something happened in his hometown and he hastily returned to the Elven Forest.
+The Dark Elves, Summoner Brynthea and Summoner Belthus, seem likely adversaries for you, but you may have trouble actually finding them. The last I heard, Brynthea is in the eastern part of Giran and Belthus is somewhere in the Cruma Marshlands.
+All of these summoners are very proud, so when an apprentice summoner such as yourself challenges them to a duel, they may simply scoff at you. Eventually, however, their vanity may win out and they will accept your challenge to demonstrate their own superiority.
+Here, take this Dimension Diamond. You can trade it to the village gatekeeper for something special that may help you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-09.html new file mode 100644 index 0000000000..0ccfd159f2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-09.html @@ -0,0 +1,9 @@ +High Summoner Galatea:
+First, go to Trader Lara in the Town of Dion and have your Arcana Cards made. You cannot enter into a battle with another Summoner without one of these cards.
+You must battle and defeat 6 Summoners in order to pass the Trials of the Summoner.
+Do you have any other questions?
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-10.html new file mode 100644 index 0000000000..5db8ba3541 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-10.html @@ -0,0 +1,8 @@ +High Summoner Galatea:
+As I previously stated, in order to pass the Trials of the Summoner, you must battle and defeat six summoners. Before you challenge an opponent, you must have your own unique Arcana Cards created. Go and ask Lara of the town of Dion about making cards.
+Do you have any other questions?
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-11.html new file mode 100644 index 0000000000..b47005b7a7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-11.html @@ -0,0 +1,8 @@ +High Summoner Galatea:
+As I previously stated, in order to pass the Trials of the Summoner, you must battle and achieve victory over 6 Summoners. The Mark of Victory is the opponent's Arcana Card.
+Do you have any other questions?
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-11a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-11a.html new file mode 100644 index 0000000000..3ae2181f7a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-11a.html @@ -0,0 +1,7 @@ +High Summoner Galatea:
+The battles are waged between the summoned creatures alone. As an apprentice, you are automatically classified as the lower ranked Summoner and receive the advantage of the first attack.
+During battle, the Summoner may assist his or her creature with magic, but cannot physically attack an opponent's creature.
+A penalty is given if a Summoner physically attacks an opponent's creature or receives the aid of another.
+The defeated Summoner must surrender his or her Arcana Card to the victor.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-11b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-11b.html new file mode 100644 index 0000000000..ed7b12a227 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-11b.html @@ -0,0 +1,7 @@ +High Summoner Galatea:
+The Arcana Card is engraved with the Summoner's name and a unique mark. Most Summoners are highly competitive and wish to show off their victories. Thus, the tradition of Arcana Cards began.
+As an apprentice, you may begin a battle only after a higher level Summoner has given you a card. If you do not have an apprentice Arcana Card, the opponent will not accept your challenge. You must give your opponent an Arcana Card each time you are defeated, so I suggest that you have a good supply of cards created before hand.
+If you are victorious you will receive your opponent's card. It is easy to see who a Summoner has defeated by looking at his or her Arcana Card collection.
+In the past, Summoners created their own cards, but now the cards are much more sophisticated and must be created by special Craftsmen.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-11c.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-11c.html new file mode 100644 index 0000000000..f58bc049a7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-11c.html @@ -0,0 +1,6 @@ +High Summoner Galatea:
+In the past, Summoners created their own cards, but they have become much more sophisticated and now must be created by specialized craftsmen. You are not yet an official Summoner and can only receive apprentice Arcana Cards. Perhaps one day you will possess one of the major Arcana Cards, which are only owned by the top Summoners of the land!
+The card you will be making now is for use in the trial, so it does not need to be ornate. You must find a craftsman that can create these cards for you. Trader Lara in The Town of Dion would be a good place to start.
+She works slowly so I recommend that you order a good supply of them in advance.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-11d.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-11d.html new file mode 100644 index 0000000000..34958be3d2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-11d.html @@ -0,0 +1,10 @@ +High Summoner Galatea:
+I have several ideas regarding potential opponents for you.
+First, you should try and find Summoner Almors. He has been sick lately and is recovering on Talking Island.
+You should also try Summoner Basillia. I have heard that she is busy researching a new form of Summoning magic close to a farm on the southern shores of Gludio.
+Summoner Camoniell, of the Elves, has been in seclusion in a cottage in southern Dion. I've heard he has had some trouble lately.
+Summoner Celestiel usually resides in the Ivory Tower, but has returned to the Elven Woods on urgent business from her homeland.
+The Dark Elves, Summoner Brynthea and Summoner Belthus, are savvy opponents for you, but they are hard to find, as they do not stay in one place very long. Last I heard, Brynthea was somewhere in the northeastern parts of Giran, and Belthus was somewhere in the Cruma Marshlands...
+These Summoners are proud and haughty people, and may scoff at a challenge from an apprentice Summoner like yourself. But, at the same time, they will likely accept your challenge, so that they may display their superiority over you in front of their friends, family, relatives, on-lookers and animals. + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-12.html new file mode 100644 index 0000000000..52f2de083c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30634-12.html @@ -0,0 +1,4 @@ +High Summoner Galatea:
+Fantastic! You have won 6 Arcana Cards! This is a remarkable feat and worthy of inclusion to the Summoner Archives! You are the first apprentice Summoner to bring back all 6 cards so quickly! Quite frankly, I doubted whether you would succeed... My worries were without merit!
+You have passed the Trials of the Summoner! Congratulations! I shall give you the Mark of the Summoner. With your talents you will become an excellent Summoner who shall be respected and loved throughout the land. Perhaps one day you will hold one of the Major Arcana Cards... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-01.html new file mode 100644 index 0000000000..3184893d9c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-01.html @@ -0,0 +1,6 @@ +Summoner Almors:
+Greetings, my name is Almors. I am the Summoner of the Ivory Tower in Oren. This is my cat, Pako.
+Pardon my appearance, I have been recuperating here at my aunt's house. I had to get out of Oren's bitter cold. I do wish that I could return to the Ivory Tower to finish my project... Although the slower pace around here is comforting...
+Ah, I see that you are an apprentice Summoner! Have you come to fight a duel with me, by chance?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-02.html new file mode 100644 index 0000000000..3bfec28219 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-02.html @@ -0,0 +1,3 @@ +Summoner Almors:
+You have come to challenge me without an Arcana Card? That is preposterous! If you want a duel you must first visit Trader Lara of the Town of Dion. She will make an Arcana Card for you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-03.html new file mode 100644 index 0000000000..4fd69a9664 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-03.html @@ -0,0 +1,5 @@ +Summoner Almors:
+I suppose you know the rules? The first attack shall be made by summoned creatures! No intervention by the Summoners is allowed!
+Is that clear? Are you ready for battle?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-04.html new file mode 100644 index 0000000000..fe93826c32 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-04.html @@ -0,0 +1,4 @@ +Summoner Almors:
+Very well. I accept your Arcana Card of apprenticeship!
+Let the battle begin! Pako The Cat is ready for your creature's attack! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-05.html new file mode 100644 index 0000000000..3677bb8f32 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-05.html @@ -0,0 +1,4 @@ +Summoner Almors:
+You mustn't be discouraged. This result was inevitable, as you are but an apprentice Summoner. Try as you may you will never defeat me.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-06.html new file mode 100644 index 0000000000..c9502dc772 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-06.html @@ -0,0 +1,4 @@ +Summoner Almors:
+Are you ignorant of the rules or just stupid? Oh well, either way you lose again.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-07.html new file mode 100644 index 0000000000..2d64057dd0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-07.html @@ -0,0 +1,4 @@ +Summoner Almors:
+My over-confidence has allowed you to get the better of me. Take my Arcana card.
+Good job. I am sure that you shall pass the Test of the Summoner. Perhaps one day our paths will cross again in the Ivory Tower of Oren. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-08.html new file mode 100644 index 0000000000..24291267b2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-08.html @@ -0,0 +1,3 @@ +Summoner Almors:
+The time for battle has arrived! Tell your animal that Pako The Cat is prepared for the attack! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-09.html new file mode 100644 index 0000000000..ec4081bb32 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-09.html @@ -0,0 +1,3 @@ +Summoner Almors:
+We are in the midst of battle! This is not a time for idle chatter! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-10.html new file mode 100644 index 0000000000..f5519e5f39 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30635-10.html @@ -0,0 +1,3 @@ +Summoner Almors:
+I suppose you've come to humiliate me further... Wasn't my Arcana card enough for you? How will I face my colleagues on my return to the Ivory Tower of Oren if they find out? I will never hear the end of being beaten by an apprentice Summoner... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-01.html new file mode 100644 index 0000000000..be3114f24f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-01.html @@ -0,0 +1,4 @@ +Summoner Camoniell:
+Hello, young apprentice Summoner. Have you come to challenge me? I am not going to fight you right now, in fact, I will concede defeat. Here is my Arcana Card.

+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-02.html new file mode 100644 index 0000000000..53a41d173c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-02.html @@ -0,0 +1,3 @@ +Summoner Camoniell
+You don't even have an Arcana Card! How do you expect to fight? You can get a card from Trader Lara of the Town of Dion... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-03.html new file mode 100644 index 0000000000..5e3d808c07 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-03.html @@ -0,0 +1,5 @@ +Summoner Camoniell:
+Whew... You are tenacious, aren't you? Ready for a fight even as the world crumbles around you? All right, I accept your challenge to a duel. This will not be easy, but at least it should be over quickly. In fact, it shouldn't take more than a minute... Let me introduce my friend, Unicorn Racer.
+Now, I am sure you know the rules by now. The battle is only between summoned creatures, and yours is allowed the first attack.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-04.html new file mode 100644 index 0000000000..7d28a2192d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-04.html @@ -0,0 +1,4 @@ +Summoner Camoniell:
+I'll hold your Arcana Card...
+You may order your creature to attack when ready... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-05.html new file mode 100644 index 0000000000..ce3d85f417 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-05.html @@ -0,0 +1,4 @@ +Summoner Camoniell:
+That certainly took a lot longer than I expected... Let's stop fighting.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-06.html new file mode 100644 index 0000000000..00dad19c2f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-06.html @@ -0,0 +1,4 @@ +Summoner Camoniell:
+Hey, what do you think you're doing? How rude! How dare you touch my creature... Well, according the rules, I win!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-07.html new file mode 100644 index 0000000000..5b37308e83 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-07.html @@ -0,0 +1,5 @@ +Summoner Camoniell:
+How could I have lost to an apprentice Summoner?
+Is this really happening? God has forsaken me... I am done for! It is over!
+Here, take my Arcana Card. Go on! Take it and leave me alone! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-08.html new file mode 100644 index 0000000000..4bb05d391f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-08.html @@ -0,0 +1,3 @@ +Summoner Camoniell:
+You talk too much. I didn't want to fight you, what makes you think I would want to talk to you? Let's end this now. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-09.html new file mode 100644 index 0000000000..8b04947024 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-09.html @@ -0,0 +1,3 @@ +Summoner Camoniell:
+...Unicorn Racer! Give no quarter! Finish him! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-10.html new file mode 100644 index 0000000000..91f63d8786 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30636-10.html @@ -0,0 +1,3 @@ +Summoner Camoniell
+What do you want now? Stop harassing this poor old Elf, deprived of her lover and defeated by a mere apprentice... Oh, Eva! How can you be so cruel to me?... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-01.html new file mode 100644 index 0000000000..d8c7695d06 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-01.html @@ -0,0 +1,4 @@ +Summoner Belthus:
+Oh really? Are you here to train your creature? You should challenge my Shadow Turen... I'm really glad you showed up! I was beginning to get bored. Look over here... Don't you think this is a perfect place for a battle!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-02.html new file mode 100644 index 0000000000..373299884e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-02.html @@ -0,0 +1,3 @@ +Summoner Belthus:
+As much as I would like to fight right now, it is impossible until you present an Arcana Card... In the Town of Dion there is a woman named Lara that creates and sells adequate Arcana Cards. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-03.html new file mode 100644 index 0000000000..12f383e7ef --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-03.html @@ -0,0 +1,5 @@ +Summoner Belthus
+I suppose you know the rules? The first attack shall be made by summoned creatures! No intervention by the Summoners is allowed!
+Is that clear? Are you ready for battle?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-04.html new file mode 100644 index 0000000000..45b9f32eeb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-04.html @@ -0,0 +1,4 @@ +Summoner Belthus:
+I accept your Arcana Card of apprenticeship!
+Your creature is allowed the first attack. Turen is waiting! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-05.html new file mode 100644 index 0000000000..b2619a1904 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-05.html @@ -0,0 +1,5 @@ +Summoner Belthus:
+Savor the taste, sweet Turen, next time you may drink more blood...
+My friend, your control has promise but you still need much practice. Most importantly you didn't trust your creature's instincts. You must not be overbearing in your desire to win. This creates stress and reduced performance of creatures...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-06.html new file mode 100644 index 0000000000..9e43dc539e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-06.html @@ -0,0 +1,4 @@ +Summoner Belthus:
+Cheating will get you nowhere! For that, you shall forfeit your Arcana Card.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-07.html new file mode 100644 index 0000000000..aecc8ac891 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-07.html @@ -0,0 +1,5 @@ +Summoner Belthus:
+Oh my! What control!
+Oh well, I lost. Just as I had become sure of my victory, I let a crack open in my concentration... I must look like a fool to lose after all that bragging! Here is my Arcana Card.
+Handle it with care. This has been an educational experience. This defeat was an eye-opener for me as well as for Turen. Goodbye, my friend. I will look forward to our next battle. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-08.html new file mode 100644 index 0000000000..13f8f563bf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-08.html @@ -0,0 +1,3 @@ +Summoner Belthus
+Your heart doesn't seem to be in this at all. Why are you staring off into space during battle? Look at that, my Turen is bored... Order your creature to attack! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-09.html new file mode 100644 index 0000000000..63743d0cff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-09.html @@ -0,0 +1,3 @@ +Summoner Belthus
+I've never fought anyone foolish enough to try to carry on a conversation during a battle. I guess I don't mind, but are you sure you are OK? It appears that my creature is getting the better of yours...? Oops! There he goes again! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-10.html new file mode 100644 index 0000000000..a282c9745d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30637-10.html @@ -0,0 +1,3 @@ +Summoner Belthus:
+Hey, why are you still here? Am I am the only Summoner who will fight you? To pass this trial you must defeat 6 other Summoners... Good luck, and I hope you become a real Summoner soon. It is very humiliating to say that I lost to an apprentice Summoner... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-01.html new file mode 100644 index 0000000000..fabde5f816 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-01.html @@ -0,0 +1,6 @@ +Summoner Basillia:
+Greetings, traveler. I am Basillia, a Summoner of the Ivory Tower.
+I was born in this place, but left it over 30 years ago.
+Let's get down to business, shall we? I know what you're here for... Take out your Arcana Card and prepare for battle! I have already summoned my cat, Mimi.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-02.html new file mode 100644 index 0000000000..52a5672a77 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-02.html @@ -0,0 +1,3 @@ +<Summoner Basillia
+We can go no further until you get an Arcana Card. Trader Lara of the Town of Dion will make one for you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-03.html new file mode 100644 index 0000000000..083e7289c0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-03.html @@ -0,0 +1,5 @@ +Summoner Basillia:
+I suppose you know the rules? The first attack shall be made by summoned creatures! No intervention by the Summoners is allowed!
+Is that clear? Are you ready for battle?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-04.html new file mode 100644 index 0000000000..68f6b4b830 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-04.html @@ -0,0 +1,4 @@ +Summoner Basillia
+Very well. I accept your card.
+Your creature may attack Mimi The Cat now! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-05.html new file mode 100644 index 0000000000..577dd52fdf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-05.html @@ -0,0 +1,4 @@ +Summoner Basillia:
+Don't be discouraged, the outcome was inevitable. I am invincible!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-06.html new file mode 100644 index 0000000000..0016610ada --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-06.html @@ -0,0 +1,4 @@ +Summoner Basillia
+Haven't you learned that cheating does not lead to victory?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-07.html new file mode 100644 index 0000000000..89d186f18e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-07.html @@ -0,0 +1,4 @@ +Summoner Basillia
+...Well, I certainly didn't see that coming. Quite unexpected I must say... How could I have lost to you?
+I don't understand it but acquiesce... My Arcana Card is yours, as promised. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-08.html new file mode 100644 index 0000000000..3b0d59b0a5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-08.html @@ -0,0 +1,3 @@ +Summoner Basillia
+The battle has begun. Order your creature to attack! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-09.html new file mode 100644 index 0000000000..fd2d90ce56 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-09.html @@ -0,0 +1,3 @@ +Summoner Basillia
+Shut up, you fool! We are in the midst of battle! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-10.html new file mode 100644 index 0000000000..36805f69d1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30638-10.html @@ -0,0 +1,3 @@ +Summoner Basillia
+Why are you still here? I assumed that you left for battle with another Summoner... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-01.html new file mode 100644 index 0000000000..bc7ec3b5e3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-01.html @@ -0,0 +1,4 @@ +Summoner Celestiel:
+How do you do? I am Celestiel the Summoner. This is my comrade Phantasm the unicorn. This place seems good for a battle, doesn't it? What do you think, apprentice Summoner?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-02.html new file mode 100644 index 0000000000..5af4ddf2fb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-02.html @@ -0,0 +1,3 @@ +Summoner Celestiel:
+You cannot issue a challenge without an Arcana Card. Trader Lara of the Town of Dion will make one for you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-03.html new file mode 100644 index 0000000000..a292772cac --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-03.html @@ -0,0 +1,4 @@ +Summoner Celestiel:
+You are allowed the first attack and must never touch your opponent's creature. Are you ready? Let's make this a good battle!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-04.html new file mode 100644 index 0000000000..18210968a4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-04.html @@ -0,0 +1,4 @@ +Summoner Celestiel:
+First I will need your Arcana Card.
+I believe in you, Unicorn Phantasm! Take your time... Keep your eyes on your opponent! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-05.html new file mode 100644 index 0000000000..4e1eb3faeb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-05.html @@ -0,0 +1,4 @@ +Summoner Celestiel:
+Ah, yes, I win again... My Unicorn Phantasm is a powerful opponent, no? A weak creature like yours is no match for him.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-06.html new file mode 100644 index 0000000000..1bbf537151 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-06.html @@ -0,0 +1,5 @@ +Summoner Celestiel:
+Watch out Phantasm! ...Are you hurt?
+What the hell are you doing! How dare you touch my animal! You forfeit the match for that... Give me your crude little card...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-07.html new file mode 100644 index 0000000000..1fd089c514 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-07.html @@ -0,0 +1,4 @@ +Summoner Celestiel:
+Oh, my! My poor Unicorn Phantasm! I pray he isn't badly injured!
+Wow, what a battle! I never imagined such a weak animal would get the better of my Phantasm! Oh, well, I suppose everyone has to lose sometimes. Take my Arcana Card. Take heed, this is the first and the last time shall I lose to you. Take good care of my card until I can win it back! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-08.html new file mode 100644 index 0000000000..b81ccdae3a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-08.html @@ -0,0 +1,4 @@ +Summoner Celestiel:
+Unicorn Phantasm, assume defensive position! Good, stay cool...!
+It seems to me that your animal is frightened. It appears he doesn't want to attack! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-09.html new file mode 100644 index 0000000000..9821898ad4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-09.html @@ -0,0 +1,4 @@ +Summoner Celestiel:
+Good job, Unicorn Phantasm! Yeah, that's it! Step left, now parry! Watch your back! Now kick! ...Ooops!
+You are blocking my view, that is a penalty! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-10.html new file mode 100644 index 0000000000..692f081c90 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30639-10.html @@ -0,0 +1,4 @@ +Summoner Celestiel:
+I hope you are taking care of my Arcana Card...
+Are you still taking the Trial of the Summoner? If you defeat me and then lose to others I will be doubly disgraced. I pray you achieve straight victories and earn the Mark of the Summoner! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-01.html new file mode 100644 index 0000000000..c148e0e17f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-01.html @@ -0,0 +1,5 @@ +Summoner Brynthea:
+Welcome, apprentice Summoner! My name is Brynthea. I am a Summoner like you. Let me introduce my lovely creature, Tilfo.
+You are here to challenge us, correct? Here is my Arcana Card... Hand-made by a Dwarven slave. Exquisite, isn't it? You shall have it if you defeat me, although that is highly unlikely. ...Is there something you want to say?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-02.html new file mode 100644 index 0000000000..33e9a93525 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-02.html @@ -0,0 +1,3 @@ +Summoner Brynthea:
+What kind of a fool issues a challenge without a card? If you need a card you should go and see Trader Lara in the Town of Dion. She makes a card suitable for apprentice Summoners. You should go and buy a few! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-03.html new file mode 100644 index 0000000000..e8f2f177fc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-03.html @@ -0,0 +1,5 @@ +Summoner Brynthea:
+I suppose you know the rules? The first attack shall be made by summoned creature of the challenger! No intervention by the Summoners is allowed!
+Is that clear? Are you ready for battle?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-04.html new file mode 100644 index 0000000000..2277a22f67 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-04.html @@ -0,0 +1,5 @@ +Summoner Brynthea:
+Ah yes! First, I will take your apprentice Arcana Card!
+Now, fellow... Start off easy...
+All right, Tilfo, show them what you've got..! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-05.html new file mode 100644 index 0000000000..6c40581bac --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-05.html @@ -0,0 +1,5 @@ +Summoner Brynthea:
+Good job, Tilfo! You shall be rewarded later!
+Let me give you some advice... You must control your creature completely. He seemed to be on his own there for a while... Would you like to have another go?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-06.html new file mode 100644 index 0000000000..42d5c6be33 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-06.html @@ -0,0 +1,4 @@ +Summoner Brynthea:
+Oh my, it seems that you have forgotten the rule about touching the opponent's creature! You lose. Now I shall have that ugly Arcana Card of yours.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-07.html new file mode 100644 index 0000000000..ab099fa7b3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-07.html @@ -0,0 +1,4 @@ +Summoner Brynthea:
+I am very disappointed in you, Tilfo! We must now start your training all over!
+You were a stronger opponent than I imagined! The overpowering ruthlessness... You have the stuff of a real summoner. Now take my Arcana card. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-08.html new file mode 100644 index 0000000000..ac7b36fe2f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-08.html @@ -0,0 +1,4 @@ +Summoner Brynthea:
+Tilfo, let your opponent strike the first blow! Do not fear pain. It won't hurt so much once you get used to it!
+What are you looking at? Go and tell your creature to attack! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-09.html new file mode 100644 index 0000000000..5776e1ac8e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-09.html @@ -0,0 +1,4 @@ +Summoner Brynthea:
+Good job, Tilfo, you are doing well! It doesn't hurt that bad, does it? That's my loyal servant... Good girl...
+How can you let your creature fight unsupervised?... You must be a bad master indeed! Look there, your creature is bleeding! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-10.html new file mode 100644 index 0000000000..ddd3638aa9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/30640-10.html @@ -0,0 +1,3 @@ +summoner Brynthea:
+Are you still here? You seem to have great potential... You seek the Mark of the Summoner, correct? I look forward to meeting you on the field as a full-fledged Summoner someday... Ah, the blood, the screams... Just the thought of it sets my heart racing! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/Q00230_TestOfTheSummoner.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/Q00230_TestOfTheSummoner.java new file mode 100644 index 0000000000..aab7036fa5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00230_TestOfTheSummoner/Q00230_TestOfTheSummoner.java @@ -0,0 +1,1284 @@ +/* + * 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.Q00230_TestOfTheSummoner; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.ChatType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.L2Summon; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.holders.SkillHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.NpcStringId; +import com.l2jmobius.gameserver.network.serverpackets.NpcSay; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Broadcast; +import com.l2jmobius.gameserver.util.Util; + +/** + * Test Of The Summoner (230) + * @author ivantotov + */ +public final class Q00230_TestOfTheSummoner extends Quest +{ + // NPCs + private static final int GROCER_LARA = 30063; + private static final int HIGH_SUMMONER_GALATEA = 30634; + private static final int SUMMONER_ALMORS = 30635; + private static final int SUMMONER_CAMONIELL = 30636; + private static final int SUMMONER_BELTHUS = 30637; + private static final int SUMMONER_BASILLA = 30638; + private static final int SUMMONER_CELESTIEL = 30639; + private static final int SUMMONER_BRYNTHEA = 30640; + // Items + private static final int LETOLIZARDMAN_AMULET = 3337; + private static final int SAC_OF_REDSPORES = 3338; + private static final int KARULBUGBEAR_TOTEM = 3339; + private static final int SHARDS_OF_MANASHEN = 3340; + private static final int BREKAORC_TOTEM = 3341; + private static final int CRIMSON_BLOODSTONE = 3342; + private static final int TALONS_OF_TYRANT = 3343; + private static final int WINGS_OF_DRONEANT = 3344; + private static final int TUSK_OF_WINDSUS = 3345; + private static final int FANGS_OF_WYRM = 3346; + private static final int LARAS_1ST_LIST = 3347; + private static final int LARAS_2ND_LIST = 3348; + private static final int LARAS_3RD_LIST = 3349; + private static final int LARAS_4TH_LIST = 3350; + private static final int LARAS_5TH_LIST = 3351; + private static final int GALATEAS_LETTER = 3352; + private static final int BEGINNERS_ARCANA = 3353; + private static final int ALMORS_ARCANA = 3354; + private static final int CAMONIELL_ARCANA = 3355; + private static final int BELTHUS_ARCANA = 3356; + private static final int BASILLIA_ARCANA = 3357; + private static final int CELESTIEL_ARCANA = 3358; + private static final int BRYNTHEA_ARCANA = 3359; + private static final int CRYSTAL_OF_STARTING_1ST = 3360; + private static final int CRYSTAL_OF_INPROGRESS_1ST = 3361; + private static final int CRYSTAL_OF_FOUL_1ST = 3362; + private static final int CRYSTAL_OF_DEFEAT_1ST = 3363; + private static final int CRYSTAL_OF_VICTORY_1ST = 3364; + private static final int CRYSTAL_OF_STARTING_2ND = 3365; + private static final int CRYSTAL_OF_INPROGRESS_2ND = 3366; + private static final int CRYSTAL_OF_FOUL_2ND = 3367; + private static final int CRYSTAL_OF_DEFEAT_2ND = 3368; + private static final int CRYSTAL_OF_VICTORY_2ND = 3369; + private static final int CRYSTAL_OF_STARTING_3RD = 3370; + private static final int CRYSTAL_OF_INPROGRESS_3RD = 3371; + private static final int CRYSTAL_OF_FOUL_3RD = 3372; + private static final int CRYSTAL_OF_DEFEAT_3RD = 3373; + private static final int CRYSTAL_OF_VICTORY_3RD = 3374; + private static final int CRYSTAL_OF_STARTING_4TH = 3375; + private static final int CRYSTAL_OF_INPROGRESS_4TH = 3376; + private static final int CRYSTAL_OF_FOUL_4TH = 3377; + private static final int CRYSTAL_OF_DEFEAT_4TH = 3378; + private static final int CRYSTAL_OF_VICTORY_4TH = 3379; + private static final int CRYSTAL_OF_STARTING_5TH = 3380; + private static final int CRYSTAL_OF_INPROGRESS_5TH = 3381; + private static final int CRYSTAL_OF_FOUL_5TH = 3382; + private static final int CRYSTAL_OF_DEFEAT_5TH = 3383; + private static final int CRYSTAL_OF_VICTORY_5TH = 3384; + private static final int CRYSTAL_OF_STARTING_6TH = 3385; + private static final int CRYSTAL_OF_INPROGRESS_6TH = 3386; + private static final int CRYSTAL_OF_FOUL_6TH = 3387; + private static final int CRYSTAL_OF_DEFEAT_6TH = 3388; + private static final int CRYSTAL_OF_VICTORY_6TH = 3389; + // Reward + private static final int MARK_OF_SUMMONER = 3336; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monster + private static final int NOBLE_ANT = 20089; + private static final int NOBLE_ANT_LEADER = 20090; + private static final int WYRM = 20176; + private static final int TYRANT = 20192; + private static final int TYRANT_KINGPIN = 20193; + private static final int BREKA_ORC = 20267; + private static final int BREKA_ORC_ARCHER = 20268; + private static final int BREKA_ORC_SHAMAN = 20269; + private static final int BREKA_ORC_OVERLORD = 20270; + private static final int BREKA_ORC_WARRIOR = 20271; + private static final int FETTERED_SOUL = 20552; + private static final int WINDSUS = 20553; + private static final int GIANT_FUNGUS = 20555; + private static final int MANASHEN_GARGOYLE = 20563; + private static final int LETO_LIZARDMAN = 20577; + private static final int LETO_LIZARDMAN_ARCHER = 20578; + private static final int LETO_LIZARDMAN_SOLDIER = 20579; + private static final int LETO_LIZARDMAN_WARRIOR = 20580; + private static final int LETO_LIZARDMAN_SHAMAN = 20581; + private static final int LETO_LIZARDMAN_OVERLORD = 20582; + private static final int KARUL_BUGBEAR = 20600; + // Quest Monster + private static final int PAKO_THE_CAT = 27102; + private static final int UNICORN_RACER = 27103; + private static final int SHADOW_TUREN = 27104; + private static final int MIMI_THE_CAT = 27105; + private static final int UNICORN_PHANTASM = 27106; + private static final int SILHOUETTE_TILFO = 27107; + // Skill + private static final SkillHolder REDUCTION_IN_RECOVERY_TIME = new SkillHolder(4126, 1); + // Misc + private static final int MIN_LEVEL = 39; + + private static final Map MONSTERS = new HashMap<>(); + static + { + MONSTERS.put(PAKO_THE_CAT, new MonsterData(CRYSTAL_OF_INPROGRESS_1ST, CRYSTAL_OF_VICTORY_1ST, NpcStringId.I_M_SORRY_LORD)); + MONSTERS.put(UNICORN_RACER, new MonsterData(CRYSTAL_OF_INPROGRESS_3RD, CRYSTAL_OF_VICTORY_3RD, NpcStringId.I_LOSE)); + MONSTERS.put(SHADOW_TUREN, new MonsterData(CRYSTAL_OF_INPROGRESS_5TH, CRYSTAL_OF_VICTORY_5TH, NpcStringId.UGH_I_LOST)); + MONSTERS.put(MIMI_THE_CAT, new MonsterData(CRYSTAL_OF_INPROGRESS_2ND, CRYSTAL_OF_VICTORY_2ND, NpcStringId.LOST_SORRY_LORD)); + MONSTERS.put(UNICORN_PHANTASM, new MonsterData(CRYSTAL_OF_INPROGRESS_4TH, CRYSTAL_OF_VICTORY_4TH, NpcStringId.I_LOSE)); + MONSTERS.put(SILHOUETTE_TILFO, new MonsterData(CRYSTAL_OF_INPROGRESS_6TH, CRYSTAL_OF_VICTORY_6TH, NpcStringId.UGH_CAN_THIS_BE_HAPPENING)); + } + + public Q00230_TestOfTheSummoner() + { + super(230); + addStartNpc(HIGH_SUMMONER_GALATEA); + addTalkId(HIGH_SUMMONER_GALATEA, GROCER_LARA, SUMMONER_ALMORS, SUMMONER_CAMONIELL, SUMMONER_BELTHUS, SUMMONER_BASILLA, SUMMONER_CELESTIEL, SUMMONER_BRYNTHEA); + addKillId(NOBLE_ANT, NOBLE_ANT_LEADER, WYRM, TYRANT, TYRANT_KINGPIN, BREKA_ORC, BREKA_ORC_ARCHER, BREKA_ORC_SHAMAN, BREKA_ORC_OVERLORD, BREKA_ORC_WARRIOR, FETTERED_SOUL, WINDSUS, GIANT_FUNGUS, MANASHEN_GARGOYLE, LETO_LIZARDMAN, LETO_LIZARDMAN_ARCHER, LETO_LIZARDMAN_SOLDIER, LETO_LIZARDMAN_WARRIOR, LETO_LIZARDMAN_SHAMAN, LETO_LIZARDMAN_OVERLORD, KARUL_BUGBEAR); + addKillId(MONSTERS.keySet()); + addAttackId(PAKO_THE_CAT, UNICORN_RACER, SHADOW_TUREN, MIMI_THE_CAT, UNICORN_PHANTASM, SILHOUETTE_TILFO); + registerQuestItems(LETOLIZARDMAN_AMULET, SAC_OF_REDSPORES, KARULBUGBEAR_TOTEM, SHARDS_OF_MANASHEN, BREKAORC_TOTEM, CRIMSON_BLOODSTONE, TALONS_OF_TYRANT, WINGS_OF_DRONEANT, TUSK_OF_WINDSUS, FANGS_OF_WYRM, LARAS_1ST_LIST, LARAS_2ND_LIST, LARAS_3RD_LIST, LARAS_4TH_LIST, LARAS_5TH_LIST, GALATEAS_LETTER, BEGINNERS_ARCANA, ALMORS_ARCANA, CAMONIELL_ARCANA, BELTHUS_ARCANA, BASILLIA_ARCANA, CELESTIEL_ARCANA, BRYNTHEA_ARCANA, CRYSTAL_OF_STARTING_1ST, CRYSTAL_OF_INPROGRESS_1ST, CRYSTAL_OF_FOUL_1ST, CRYSTAL_OF_DEFEAT_1ST, CRYSTAL_OF_VICTORY_1ST, CRYSTAL_OF_STARTING_2ND, CRYSTAL_OF_INPROGRESS_2ND, CRYSTAL_OF_FOUL_2ND, CRYSTAL_OF_DEFEAT_2ND, CRYSTAL_OF_VICTORY_2ND, CRYSTAL_OF_STARTING_3RD, CRYSTAL_OF_INPROGRESS_3RD, CRYSTAL_OF_FOUL_3RD, CRYSTAL_OF_DEFEAT_3RD, CRYSTAL_OF_VICTORY_3RD, CRYSTAL_OF_STARTING_4TH, CRYSTAL_OF_INPROGRESS_4TH, CRYSTAL_OF_FOUL_4TH, CRYSTAL_OF_DEFEAT_4TH, CRYSTAL_OF_VICTORY_4TH, CRYSTAL_OF_STARTING_5TH, CRYSTAL_OF_INPROGRESS_5TH, CRYSTAL_OF_FOUL_5TH, CRYSTAL_OF_DEFEAT_5TH, CRYSTAL_OF_VICTORY_5TH, CRYSTAL_OF_STARTING_6TH, CRYSTAL_OF_INPROGRESS_6TH, CRYSTAL_OF_FOUL_6TH, CRYSTAL_OF_DEFEAT_6TH, CRYSTAL_OF_VICTORY_6TH); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + switch (event) + { + case "DESPAWN": + { + npc.deleteMe(); + break; + } + case "KILLED_ATTACKER": + { + final L2Summon summon = npc.getVariables().getObject("ATTACKER", L2Summon.class); + if ((summon != null) && summon.isDead()) + { + npc.deleteMe(); + } + else + { + startQuestTimer("KILLED_ATTACKER", 5000, npc, null); + } + break; + } + } + + // For NPC-only timers, player is null and no further checks or actions are required. + if (player == null) + { + return null; + } + + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + giveItems(player, GALATEAS_LETTER, 1); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 122); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30634-08a.htm"; + } + else + { + htmltext = "30634-08.htm"; + } + } + break; + } + case "30634-04.htm": + case "30634-05.htm": + case "30634-06.htm": + case "30634-07.htm": + case "30634-11.html": + case "30634-11a.html": + case "30634-11b.html": + case "30634-11c.html": + case "30634-11d.html": + { + htmltext = event; + break; + } + case "30063-02.html": + { + switch (getRandom(5)) + { + case 0: + { + giveItems(player, LARAS_1ST_LIST, 1); + break; + } + case 1: + { + giveItems(player, LARAS_2ND_LIST, 1); + break; + } + case 2: + { + giveItems(player, LARAS_3RD_LIST, 1); + break; + } + case 3: + { + giveItems(player, LARAS_4TH_LIST, 1); + break; + } + case 4: + { + giveItems(player, LARAS_5TH_LIST, 1); + break; + } + } + qs.setCond(2, true); + takeItems(player, GALATEAS_LETTER, 1); + htmltext = event; + break; + } + case "30063-04.html": + { + switch (getRandom(5)) + { + case 0: + { + giveItems(player, LARAS_1ST_LIST, 1); + break; + } + case 1: + { + giveItems(player, LARAS_2ND_LIST, 1); + break; + } + case 2: + { + giveItems(player, LARAS_3RD_LIST, 1); + break; + } + case 3: + { + giveItems(player, LARAS_4TH_LIST, 1); + break; + } + case 4: + { + giveItems(player, LARAS_5TH_LIST, 1); + break; + } + } + htmltext = event; + break; + } + case "30635-03.html": + { + if (hasQuestItems(player, BEGINNERS_ARCANA)) + { + htmltext = event; + } + else + { + htmltext = "30635-02.html"; + } + break; + } + case "30635-04.html": + { + addSkillCastDesire(npc, player, REDUCTION_IN_RECOVERY_TIME, 1000000); + takeItems(player, BEGINNERS_ARCANA, 1); + giveItems(player, CRYSTAL_OF_STARTING_1ST, 1); + takeItems(player, CRYSTAL_OF_FOUL_1ST, 1); + takeItems(player, CRYSTAL_OF_DEFEAT_1ST, 1); + htmltext = event; + break; + } + case "30636-03.html": + { + if (hasQuestItems(player, BEGINNERS_ARCANA)) + { + htmltext = event; + } + else + { + htmltext = "30636-02.html"; + } + break; + } + case "30636-04.html": + { + addSkillCastDesire(npc, player, REDUCTION_IN_RECOVERY_TIME, 1000000); + takeItems(player, BEGINNERS_ARCANA, 1); + giveItems(player, CRYSTAL_OF_STARTING_3RD, 1); + takeItems(player, CRYSTAL_OF_FOUL_3RD, 1); + takeItems(player, CRYSTAL_OF_DEFEAT_3RD, 1); + htmltext = event; + break; + } + case "30637-03.html": + { + if (hasQuestItems(player, BEGINNERS_ARCANA)) + { + htmltext = event; + } + else + { + htmltext = "30637-02.html"; + } + break; + } + case "30637-04.html": + { + addSkillCastDesire(npc, player, REDUCTION_IN_RECOVERY_TIME, 1000000); + takeItems(player, BEGINNERS_ARCANA, 1); + giveItems(player, CRYSTAL_OF_STARTING_5TH, 1); + takeItems(player, CRYSTAL_OF_FOUL_5TH, 1); + takeItems(player, CRYSTAL_OF_DEFEAT_5TH, 1); + htmltext = event; + break; + } + case "30638-03.html": + { + if (hasQuestItems(player, BEGINNERS_ARCANA)) + { + htmltext = event; + } + else + { + htmltext = "30638-02.html"; + } + break; + } + case "30638-04.html": + { + addSkillCastDesire(npc, player, REDUCTION_IN_RECOVERY_TIME, 1000000); + takeItems(player, BEGINNERS_ARCANA, 1); + giveItems(player, CRYSTAL_OF_STARTING_2ND, 1); + takeItems(player, CRYSTAL_OF_FOUL_2ND, 1); + takeItems(player, CRYSTAL_OF_DEFEAT_2ND, 1); + htmltext = event; + break; + } + case "30639-03.html": + { + if (hasQuestItems(player, BEGINNERS_ARCANA)) + { + htmltext = event; + } + else + { + htmltext = "30639-02.html"; + } + break; + } + case "30639-04.html": + { + addSkillCastDesire(npc, player, REDUCTION_IN_RECOVERY_TIME, 1000000); + takeItems(player, BEGINNERS_ARCANA, 1); + giveItems(player, CRYSTAL_OF_STARTING_4TH, 1); + takeItems(player, CRYSTAL_OF_FOUL_4TH, 1); + takeItems(player, CRYSTAL_OF_DEFEAT_4TH, 1); + htmltext = event; + break; + } + case "30640-03.html": + { + if (hasQuestItems(player, BEGINNERS_ARCANA)) + { + htmltext = event; + } + else + { + htmltext = "30640-02.html"; + } + break; + } + case "30640-04.html": + { + addSkillCastDesire(npc, player, REDUCTION_IN_RECOVERY_TIME, 1000000); + takeItems(player, BEGINNERS_ARCANA, 1); + giveItems(player, CRYSTAL_OF_STARTING_6TH, 1); + takeItems(player, CRYSTAL_OF_FOUL_6TH, 1); + takeItems(player, CRYSTAL_OF_DEFEAT_6TH, 1); + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onAttack(L2Npc npc, L2PcInstance attacker, int damage, boolean isSummon) + { + switch (npc.getId()) + { + case PAKO_THE_CAT: + { + switch (npc.getScriptValue()) + { + case 0: + { + if (isSummon) + { + npc.getVariables().set("ATTACKER", attacker.getAnyServitor()); + npc.setScriptValue(1); + startQuestTimer("DESPAWN", 120000, npc, null); + startQuestTimer("KILLED_ATTACKER", 5000, npc, null); + + final QuestState qs = getQuestState(attacker, false); + if (hasQuestItems(attacker, CRYSTAL_OF_STARTING_1ST) && (qs != null) && qs.isStarted()) + { + Broadcast.toKnownPlayers(npc, new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getTemplate().getDisplayId(), NpcStringId.WHHIISSHH)); + takeItems(attacker, CRYSTAL_OF_STARTING_1ST, -1); + giveItems(attacker, CRYSTAL_OF_INPROGRESS_1ST, 1); + addAttackPlayerDesire(npc, attacker.getAnyServitor(), 100000); + } + } + break; + } + case 1: + { + if (!isSummon || (npc.getVariables().getObject("ATTACKER", L2Summon.class) != attacker.getAnyServitor())) + { + final QuestState qs = getQuestState(attacker, false); + if (!hasQuestItems(attacker, CRYSTAL_OF_STARTING_1ST) && hasQuestItems(attacker, CRYSTAL_OF_INPROGRESS_1ST) && (qs != null) && qs.isStarted()) + { + npc.setScriptValue(2); + Broadcast.toKnownPlayers(npc, new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getTemplate().getDisplayId(), NpcStringId.RULE_VIOLATION)); + takeItems(attacker, CRYSTAL_OF_INPROGRESS_1ST, -1); + giveItems(attacker, CRYSTAL_OF_FOUL_1ST, 1); + takeItems(attacker, CRYSTAL_OF_STARTING_1ST, -1); + } + npc.deleteMe(); + } + break; + } + } + break; + } + case UNICORN_RACER: + { + switch (npc.getScriptValue()) + { + case 0: + { + if (isSummon) + { + npc.getVariables().set("ATTACKER", attacker.getAnyServitor()); + npc.setScriptValue(1); + startQuestTimer("DESPAWN", 120000, npc, null); + startQuestTimer("KILLED_ATTACKER", 5000, npc, null); + + final QuestState qs = getQuestState(attacker, false); + if (hasQuestItems(attacker, CRYSTAL_OF_STARTING_3RD) && (qs != null) && qs.isStarted()) + { + Broadcast.toKnownPlayers(npc, new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getTemplate().getDisplayId(), NpcStringId.START_DUEL)); + takeItems(attacker, CRYSTAL_OF_STARTING_3RD, -1); + giveItems(attacker, CRYSTAL_OF_INPROGRESS_3RD, 1); + addAttackPlayerDesire(npc, attacker.getAnyServitor(), 100000); + } + } + break; + } + case 1: + { + if (!isSummon || (npc.getVariables().getObject("ATTACKER", L2Summon.class) != attacker.getAnyServitor())) + { + final QuestState qs = getQuestState(attacker, false); + if (!hasQuestItems(attacker, CRYSTAL_OF_STARTING_3RD) && hasQuestItems(attacker, CRYSTAL_OF_INPROGRESS_3RD) && (qs != null) && qs.isStarted()) + { + npc.setScriptValue(2); + Broadcast.toKnownPlayers(npc, new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getTemplate().getDisplayId(), NpcStringId.RULE_VIOLATION)); + takeItems(attacker, CRYSTAL_OF_INPROGRESS_3RD, -1); + giveItems(attacker, CRYSTAL_OF_FOUL_3RD, 1); + takeItems(attacker, CRYSTAL_OF_STARTING_3RD, -1); + } + npc.deleteMe(); + } + break; + } + } + } + case SHADOW_TUREN: + { + switch (npc.getScriptValue()) + { + case 0: + { + if (isSummon) + { + npc.getVariables().set("ATTACKER", attacker.getAnyServitor()); + npc.setScriptValue(1); + startQuestTimer("DESPAWN", 120000, npc, null); + startQuestTimer("KILLED_ATTACKER", 5000, npc, null); + + final QuestState qs = getQuestState(attacker, false); + if (hasQuestItems(attacker, CRYSTAL_OF_STARTING_5TH) && (qs != null) && qs.isStarted()) + { + Broadcast.toKnownPlayers(npc, new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getTemplate().getDisplayId(), NpcStringId.SO_SHALL_WE_START)); + takeItems(attacker, CRYSTAL_OF_STARTING_5TH, -1); + giveItems(attacker, CRYSTAL_OF_INPROGRESS_5TH, 1); + addAttackPlayerDesire(npc, attacker.getAnyServitor(), 100000); + } + } + break; + } + case 1: + { + if (!isSummon || (npc.getVariables().getObject("ATTACKER", L2Summon.class) != attacker.getAnyServitor())) + { + final QuestState qs = getQuestState(attacker, false); + if (!hasQuestItems(attacker, CRYSTAL_OF_STARTING_5TH) && hasQuestItems(attacker, CRYSTAL_OF_INPROGRESS_5TH) && (qs != null) && qs.isStarted()) + { + npc.setScriptValue(2); + Broadcast.toKnownPlayers(npc, new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getTemplate().getDisplayId(), NpcStringId.RULE_VIOLATION)); + takeItems(attacker, CRYSTAL_OF_INPROGRESS_5TH, -1); + giveItems(attacker, CRYSTAL_OF_FOUL_5TH, 1); + takeItems(attacker, CRYSTAL_OF_STARTING_5TH, -1); + } + npc.deleteMe(); + } + break; + } + } + } + case MIMI_THE_CAT: + { + switch (npc.getScriptValue()) + { + case 0: + { + if (isSummon) + { + npc.getVariables().set("ATTACKER", attacker.getAnyServitor()); + npc.setScriptValue(1); + startQuestTimer("DESPAWN", 120000, npc, null); + startQuestTimer("KILLED_ATTACKER", 5000, npc, null); + + final QuestState qs = getQuestState(attacker, false); + if (hasQuestItems(attacker, CRYSTAL_OF_STARTING_2ND) && (qs != null) && qs.isStarted()) + { + Broadcast.toKnownPlayers(npc, new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getTemplate().getDisplayId(), NpcStringId.WHISH_FIGHT)); + takeItems(attacker, CRYSTAL_OF_STARTING_2ND, -1); + giveItems(attacker, CRYSTAL_OF_INPROGRESS_2ND, 1); + addAttackPlayerDesire(npc, attacker.getAnyServitor(), 100000); + } + } + break; + } + case 1: + { + if (!isSummon || (npc.getVariables().getObject("ATTACKER", L2Summon.class) != attacker.getAnyServitor())) + { + final QuestState qs = getQuestState(attacker, false); + if (!hasQuestItems(attacker, CRYSTAL_OF_STARTING_2ND) && hasQuestItems(attacker, CRYSTAL_OF_INPROGRESS_2ND) && (qs != null) && qs.isStarted()) + { + npc.setScriptValue(2); + Broadcast.toKnownPlayers(npc, new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getTemplate().getDisplayId(), NpcStringId.RULE_VIOLATION)); + takeItems(attacker, CRYSTAL_OF_INPROGRESS_2ND, -1); + giveItems(attacker, CRYSTAL_OF_FOUL_2ND, 1); + takeItems(attacker, CRYSTAL_OF_STARTING_2ND, -1); + } + npc.deleteMe(); + } + break; + } + } + } + case UNICORN_PHANTASM: + { + switch (npc.getScriptValue()) + { + case 0: + { + if (isSummon) + { + npc.getVariables().set("ATTACKER", attacker.getAnyServitor()); + npc.setScriptValue(1); + startQuestTimer("DESPAWN", 120000, npc, null); + startQuestTimer("KILLED_ATTACKER", 5000, npc, null); + + final QuestState qs = getQuestState(attacker, false); + if (hasQuestItems(attacker, CRYSTAL_OF_STARTING_4TH) && (qs != null) && qs.isStarted()) + { + Broadcast.toKnownPlayers(npc, new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getTemplate().getDisplayId(), NpcStringId.START_DUEL)); + takeItems(attacker, CRYSTAL_OF_STARTING_4TH, -1); + giveItems(attacker, CRYSTAL_OF_INPROGRESS_4TH, 1); + addAttackPlayerDesire(npc, attacker.getAnyServitor(), 100000); + } + } + break; + } + case 1: + { + if (!isSummon || (npc.getVariables().getObject("ATTACKER", L2Summon.class) != attacker.getAnyServitor())) + { + final QuestState qs = getQuestState(attacker, false); + if (!hasQuestItems(attacker, CRYSTAL_OF_STARTING_4TH) && hasQuestItems(attacker, CRYSTAL_OF_INPROGRESS_4TH) && (qs != null) && qs.isStarted()) + { + npc.setScriptValue(2); + Broadcast.toKnownPlayers(npc, new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getTemplate().getDisplayId(), NpcStringId.RULE_VIOLATION)); + takeItems(attacker, CRYSTAL_OF_INPROGRESS_4TH, -1); + giveItems(attacker, CRYSTAL_OF_FOUL_4TH, 1); + takeItems(attacker, CRYSTAL_OF_STARTING_4TH, -1); + } + npc.deleteMe(); + } + break; + } + } + } + case SILHOUETTE_TILFO: + { + switch (npc.getScriptValue()) + { + case 0: + { + if (isSummon) + { + npc.getVariables().set("ATTACKER", attacker.getAnyServitor()); + npc.setScriptValue(1); + startQuestTimer("DESPAWN", 120000, npc, null); + startQuestTimer("KILLED_ATTACKER", 5000, npc, null); + + final QuestState qs = getQuestState(attacker, false); + if (hasQuestItems(attacker, CRYSTAL_OF_STARTING_6TH) && (qs != null) && qs.isStarted()) + { + Broadcast.toKnownPlayers(npc, new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getTemplate().getDisplayId(), NpcStringId.I_LL_WALK_ALL_OVER_YOU)); + takeItems(attacker, CRYSTAL_OF_STARTING_6TH, -1); + giveItems(attacker, CRYSTAL_OF_INPROGRESS_6TH, 1); + addAttackPlayerDesire(npc, attacker.getAnyServitor(), 100000); + } + } + break; + } + case 1: + { + if (!isSummon || (npc.getVariables().getObject("ATTACKER", L2Summon.class) != attacker.getAnyServitor())) + { + final QuestState qs = getQuestState(attacker, false); + if (!hasQuestItems(attacker, CRYSTAL_OF_STARTING_6TH) && hasQuestItems(attacker, CRYSTAL_OF_INPROGRESS_6TH) && (qs != null) && qs.isStarted()) + { + npc.setScriptValue(2); + Broadcast.toKnownPlayers(npc, new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getTemplate().getDisplayId(), NpcStringId.RULE_VIOLATION)); + takeItems(attacker, CRYSTAL_OF_INPROGRESS_6TH, -1); + giveItems(attacker, CRYSTAL_OF_FOUL_6TH, 1); + takeItems(attacker, CRYSTAL_OF_STARTING_6TH, -1); + } + npc.deleteMe(); + } + break; + } + } + } + } + return super.onAttack(npc, attacker, damage, isSummon); + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case NOBLE_ANT: + case NOBLE_ANT_LEADER: + { + if (!hasQuestItems(killer, GALATEAS_LETTER) && hasQuestItems(killer, LARAS_5TH_LIST)) + { + giveItemRandomly(killer, npc, WINGS_OF_DRONEANT, 2, 30, 1.0, true); + } + break; + } + case WYRM: + { + if (!hasQuestItems(killer, GALATEAS_LETTER) && hasQuestItems(killer, LARAS_5TH_LIST)) + { + giveItemRandomly(killer, npc, FANGS_OF_WYRM, 3, 30, 1.0, true); + } + break; + } + case TYRANT: + case TYRANT_KINGPIN: + { + if (!hasQuestItems(killer, GALATEAS_LETTER) && hasQuestItems(killer, LARAS_4TH_LIST)) + { + giveItemRandomly(killer, npc, TALONS_OF_TYRANT, 3, 30, 1.0, true); + } + break; + } + case BREKA_ORC: + case BREKA_ORC_ARCHER: + case BREKA_ORC_WARRIOR: + { + if (!hasQuestItems(killer, GALATEAS_LETTER) && hasQuestItems(killer, LARAS_3RD_LIST)) + { + giveItemRandomly(killer, npc, BREKAORC_TOTEM, 1, 30, 1.0, true); + } + break; + } + case BREKA_ORC_SHAMAN: + case BREKA_ORC_OVERLORD: + { + if (!hasQuestItems(killer, GALATEAS_LETTER) && hasQuestItems(killer, LARAS_3RD_LIST)) + { + giveItemRandomly(killer, npc, BREKAORC_TOTEM, 2, 30, 1.0, true); + } + break; + } + case FETTERED_SOUL: + { + if (!hasQuestItems(killer, GALATEAS_LETTER) && hasQuestItems(killer, LARAS_3RD_LIST)) + { + giveItemRandomly(killer, npc, CRIMSON_BLOODSTONE, 6, 30, 1.0, true); + } + break; + } + case WINDSUS: + { + if (!hasQuestItems(killer, GALATEAS_LETTER) && hasQuestItems(killer, LARAS_4TH_LIST)) + { + giveItemRandomly(killer, npc, TUSK_OF_WINDSUS, 3, 30, 1.0, true); + } + break; + } + case GIANT_FUNGUS: + { + if (!hasQuestItems(killer, GALATEAS_LETTER) && hasQuestItems(killer, LARAS_1ST_LIST)) + { + giveItemRandomly(killer, npc, SAC_OF_REDSPORES, 2, 30, 1.0, true); + } + break; + } + case MANASHEN_GARGOYLE: + { + if (!hasQuestItems(killer, GALATEAS_LETTER) && hasQuestItems(killer, LARAS_2ND_LIST)) + { + giveItemRandomly(killer, npc, SHARDS_OF_MANASHEN, 2, 30, 1.0, true); + } + break; + } + case LETO_LIZARDMAN: + case LETO_LIZARDMAN_ARCHER: + case LETO_LIZARDMAN_SOLDIER: + case LETO_LIZARDMAN_WARRIOR: + { + if (!hasQuestItems(killer, GALATEAS_LETTER) && hasQuestItems(killer, LARAS_1ST_LIST)) + { + giveItemRandomly(killer, npc, LETOLIZARDMAN_AMULET, 1, 30, 1.0, true); + } + break; + } + case LETO_LIZARDMAN_SHAMAN: + case LETO_LIZARDMAN_OVERLORD: + { + if (!hasQuestItems(killer, GALATEAS_LETTER) && hasQuestItems(killer, LARAS_1ST_LIST)) + { + giveItemRandomly(killer, npc, LETOLIZARDMAN_AMULET, 2, 30, 1.0, true); + } + break; + } + case KARUL_BUGBEAR: + { + if (!hasQuestItems(killer, GALATEAS_LETTER) && hasQuestItems(killer, LARAS_2ND_LIST)) + { + giveItemRandomly(killer, npc, KARULBUGBEAR_TOTEM, 2, 30, 1.0, true); + } + break; + } + case SILHOUETTE_TILFO: + case UNICORN_PHANTASM: + case MIMI_THE_CAT: + case SHADOW_TUREN: + case UNICORN_RACER: + case PAKO_THE_CAT: + { + final MonsterData data = MONSTERS.get(npc.getId()); + if (hasQuestItems(killer, data.getCrystalOfInprogress())) + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, data.getNpcStringId())); + takeItems(killer, data.getCrystalOfInprogress(), 1); + giveItems(killer, data.getCrystalOfVictory(), 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == HIGH_SUMMONER_GALATEA) + { + if ((player.getClassId() == ClassId.WIZARD) || (player.getClassId() == ClassId.ELVEN_WIZARD) || (player.getClassId() == ClassId.DARK_WIZARD)) + { + if (player.getLevel() >= MIN_LEVEL) + { + htmltext = "30634-03.htm"; + } + else + { + htmltext = "30634-02.html"; + } + } + else + { + htmltext = "30634-01.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case HIGH_SUMMONER_GALATEA: + { + if (hasQuestItems(player, GALATEAS_LETTER)) + { + htmltext = "30634-09.html"; + } + else if (!hasQuestItems(player, GALATEAS_LETTER)) + { + if (!hasQuestItems(player, ALMORS_ARCANA, BASILLIA_ARCANA, CAMONIELL_ARCANA, CELESTIEL_ARCANA, BELTHUS_ARCANA, BRYNTHEA_ARCANA) && !hasQuestItems(player, BEGINNERS_ARCANA)) + { + htmltext = "30634-10.html"; + } + else if (!hasQuestItems(player, ALMORS_ARCANA, BASILLIA_ARCANA, CAMONIELL_ARCANA, CELESTIEL_ARCANA, BELTHUS_ARCANA, BRYNTHEA_ARCANA) && hasQuestItems(player, BEGINNERS_ARCANA)) + { + htmltext = "30634-11.html"; + } + else if (hasQuestItems(player, ALMORS_ARCANA, BASILLIA_ARCANA, CAMONIELL_ARCANA, CELESTIEL_ARCANA, BELTHUS_ARCANA, BRYNTHEA_ARCANA)) + { + giveAdena(player, 300960, true); + giveItems(player, MARK_OF_SUMMONER, 1); + addExpAndSp(player, 1664494, 114220); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30634-12.html"; + } + } + break; + } + case GROCER_LARA: + { + if (hasQuestItems(player, GALATEAS_LETTER)) + { + htmltext = "30063-01.html"; + } + else if (!hasQuestItems(player, GALATEAS_LETTER)) + { + if (!hasAtLeastOneQuestItem(player, LARAS_1ST_LIST, LARAS_2ND_LIST, LARAS_3RD_LIST, LARAS_4TH_LIST, LARAS_5TH_LIST)) + { + htmltext = "30063-03.html"; + } + else if (hasQuestItems(player, LARAS_1ST_LIST)) + { + if ((getQuestItemsCount(player, LETOLIZARDMAN_AMULET) >= 30) && (getQuestItemsCount(player, SAC_OF_REDSPORES) >= 30)) + { + takeItems(player, LETOLIZARDMAN_AMULET, -1); + takeItems(player, SAC_OF_REDSPORES, -1); + takeItems(player, LARAS_1ST_LIST, 1); + giveItems(player, BEGINNERS_ARCANA, 2); + qs.setCond(3, true); + htmltext = "30063-06.html"; + } + else + { + htmltext = "30063-05.html"; + } + } + else if (hasQuestItems(player, LARAS_2ND_LIST)) + { + if ((getQuestItemsCount(player, KARULBUGBEAR_TOTEM) >= 30) && (getQuestItemsCount(player, SHARDS_OF_MANASHEN) >= 30)) + { + takeItems(player, KARULBUGBEAR_TOTEM, -1); + takeItems(player, SHARDS_OF_MANASHEN, -1); + takeItems(player, LARAS_2ND_LIST, 1); + giveItems(player, BEGINNERS_ARCANA, 2); + qs.setCond(3, true); + htmltext = "30063-08.html"; + } + else + { + htmltext = "30063-07.html"; + } + } + else if (hasQuestItems(player, LARAS_3RD_LIST)) + { + if ((getQuestItemsCount(player, BREKAORC_TOTEM) >= 30) && (getQuestItemsCount(player, CRIMSON_BLOODSTONE) >= 30)) + { + takeItems(player, BREKAORC_TOTEM, -1); + takeItems(player, CRIMSON_BLOODSTONE, -1); + takeItems(player, LARAS_3RD_LIST, 1); + giveItems(player, BEGINNERS_ARCANA, 2); + qs.setCond(3, true); + htmltext = "30063-10.html"; + } + else + { + htmltext = "30063-09.html"; + } + } + else if (hasQuestItems(player, LARAS_4TH_LIST)) + { + if ((getQuestItemsCount(player, TALONS_OF_TYRANT) >= 30) && (getQuestItemsCount(player, TUSK_OF_WINDSUS) >= 30)) + { + takeItems(player, TALONS_OF_TYRANT, -1); + takeItems(player, TUSK_OF_WINDSUS, -1); + takeItems(player, LARAS_4TH_LIST, 1); + giveItems(player, BEGINNERS_ARCANA, 2); + qs.setCond(3, true); + htmltext = "30063-12.html"; + } + else + { + htmltext = "30063-11.html"; + } + } + else if (hasQuestItems(player, LARAS_5TH_LIST)) + { + if ((getQuestItemsCount(player, WINGS_OF_DRONEANT) >= 30) && (getQuestItemsCount(player, FANGS_OF_WYRM) >= 30)) + { + takeItems(player, WINGS_OF_DRONEANT, -1); + takeItems(player, FANGS_OF_WYRM, -1); + takeItems(player, LARAS_5TH_LIST, 1); + giveItems(player, BEGINNERS_ARCANA, 2); + qs.setCond(3, true); + htmltext = "30063-14.html"; + } + else + { + htmltext = "30063-13.html"; + } + } + } + break; + } + case SUMMONER_ALMORS: + { + if (!hasQuestItems(player, ALMORS_ARCANA)) + { + if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_1ST, CRYSTAL_OF_INPROGRESS_1ST, CRYSTAL_OF_FOUL_1ST, CRYSTAL_OF_DEFEAT_1ST, CRYSTAL_OF_VICTORY_1ST)) + { + htmltext = "30635-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_1ST, CRYSTAL_OF_INPROGRESS_1ST, CRYSTAL_OF_FOUL_1ST, CRYSTAL_OF_VICTORY_1ST) && hasQuestItems(player, CRYSTAL_OF_DEFEAT_1ST)) + { + htmltext = "30635-05.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_1ST, CRYSTAL_OF_INPROGRESS_1ST, CRYSTAL_OF_DEFEAT_1ST, CRYSTAL_OF_VICTORY_1ST) && hasQuestItems(player, CRYSTAL_OF_FOUL_1ST)) + { + htmltext = "30635-06.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_1ST, CRYSTAL_OF_INPROGRESS_1ST, CRYSTAL_OF_FOUL_1ST, CRYSTAL_OF_DEFEAT_1ST) && hasQuestItems(player, CRYSTAL_OF_VICTORY_1ST)) + { + giveItems(player, ALMORS_ARCANA, 1); + takeItems(player, CRYSTAL_OF_VICTORY_1ST, 1); + if (hasQuestItems(player, BASILLIA_ARCANA, CAMONIELL_ARCANA, CELESTIEL_ARCANA, BELTHUS_ARCANA, BRYNTHEA_ARCANA)) + { + qs.setCond(4, true); + } + htmltext = "30635-07.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_INPROGRESS_1ST, CRYSTAL_OF_FOUL_1ST, CRYSTAL_OF_DEFEAT_1ST, CRYSTAL_OF_VICTORY_1ST) && hasQuestItems(player, CRYSTAL_OF_STARTING_1ST)) + { + htmltext = "30635-08.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_1ST, CRYSTAL_OF_FOUL_1ST, CRYSTAL_OF_DEFEAT_1ST, CRYSTAL_OF_VICTORY_1ST) && hasQuestItems(player, CRYSTAL_OF_INPROGRESS_1ST)) + { + htmltext = "30635-09.html"; + } + } + else + { + htmltext = "30635-10.html"; + } + break; + } + case SUMMONER_CAMONIELL: + { + if (!hasQuestItems(player, CAMONIELL_ARCANA)) + { + if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_3RD, CRYSTAL_OF_INPROGRESS_3RD, CRYSTAL_OF_FOUL_3RD, CRYSTAL_OF_DEFEAT_3RD, CRYSTAL_OF_VICTORY_3RD)) + { + htmltext = "30636-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_3RD, CRYSTAL_OF_INPROGRESS_3RD, CRYSTAL_OF_FOUL_3RD, CRYSTAL_OF_VICTORY_3RD) && hasQuestItems(player, CRYSTAL_OF_DEFEAT_3RD)) + { + htmltext = "30636-05.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_3RD, CRYSTAL_OF_INPROGRESS_3RD, CRYSTAL_OF_DEFEAT_3RD, CRYSTAL_OF_VICTORY_3RD) && hasQuestItems(player, CRYSTAL_OF_FOUL_3RD)) + { + htmltext = "30636-06.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_3RD, CRYSTAL_OF_INPROGRESS_3RD, CRYSTAL_OF_FOUL_3RD, CRYSTAL_OF_DEFEAT_3RD) && hasQuestItems(player, CRYSTAL_OF_VICTORY_3RD)) + { + giveItems(player, CAMONIELL_ARCANA, 1); + takeItems(player, CRYSTAL_OF_VICTORY_3RD, 1); + if (hasQuestItems(player, ALMORS_ARCANA, BASILLIA_ARCANA, CELESTIEL_ARCANA, BELTHUS_ARCANA, BRYNTHEA_ARCANA)) + { + qs.setCond(4, true); + } + htmltext = "30636-07.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_INPROGRESS_3RD, CRYSTAL_OF_FOUL_3RD, CRYSTAL_OF_DEFEAT_3RD, CRYSTAL_OF_VICTORY_3RD) && hasQuestItems(player, CRYSTAL_OF_STARTING_3RD)) + { + htmltext = "30636-08.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_3RD, CRYSTAL_OF_FOUL_3RD, CRYSTAL_OF_DEFEAT_3RD, CRYSTAL_OF_VICTORY_3RD) && hasQuestItems(player, CRYSTAL_OF_INPROGRESS_3RD)) + { + htmltext = "30636-09.html"; + } + } + else + { + htmltext = "30636-10.html"; + } + break; + } + case SUMMONER_BELTHUS: + { + if (!hasQuestItems(player, BELTHUS_ARCANA)) + { + if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_5TH, CRYSTAL_OF_INPROGRESS_5TH, CRYSTAL_OF_FOUL_5TH, CRYSTAL_OF_DEFEAT_5TH, CRYSTAL_OF_VICTORY_5TH)) + { + htmltext = "30637-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_5TH, CRYSTAL_OF_INPROGRESS_5TH, CRYSTAL_OF_FOUL_5TH, CRYSTAL_OF_VICTORY_5TH) && hasQuestItems(player, CRYSTAL_OF_DEFEAT_5TH)) + { + htmltext = "30637-05.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_5TH, CRYSTAL_OF_INPROGRESS_5TH, CRYSTAL_OF_DEFEAT_5TH, CRYSTAL_OF_VICTORY_5TH) && hasQuestItems(player, CRYSTAL_OF_FOUL_5TH)) + { + htmltext = "30637-06.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_5TH, CRYSTAL_OF_INPROGRESS_5TH, CRYSTAL_OF_FOUL_5TH, CRYSTAL_OF_DEFEAT_5TH) && hasQuestItems(player, CRYSTAL_OF_VICTORY_5TH)) + { + giveItems(player, BELTHUS_ARCANA, 1); + takeItems(player, CRYSTAL_OF_VICTORY_5TH, 1); + if (hasQuestItems(player, ALMORS_ARCANA, BASILLIA_ARCANA, CAMONIELL_ARCANA, CELESTIEL_ARCANA, BRYNTHEA_ARCANA)) + { + qs.setCond(4, true); + } + htmltext = "30637-07.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_INPROGRESS_5TH, CRYSTAL_OF_FOUL_5TH, CRYSTAL_OF_DEFEAT_5TH, CRYSTAL_OF_VICTORY_5TH) && hasQuestItems(player, CRYSTAL_OF_STARTING_5TH)) + { + htmltext = "30637-08.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_5TH, CRYSTAL_OF_FOUL_5TH, CRYSTAL_OF_DEFEAT_5TH, CRYSTAL_OF_VICTORY_5TH) && hasQuestItems(player, CRYSTAL_OF_INPROGRESS_5TH)) + { + htmltext = "30637-09.html"; + } + } + else + { + htmltext = "30637-10.html"; + } + break; + } + case SUMMONER_BASILLA: + { + if (!hasQuestItems(player, BASILLIA_ARCANA)) + { + if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_2ND, CRYSTAL_OF_INPROGRESS_2ND, CRYSTAL_OF_FOUL_2ND, CRYSTAL_OF_DEFEAT_2ND, CRYSTAL_OF_VICTORY_2ND)) + { + htmltext = "30638-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_2ND, CRYSTAL_OF_INPROGRESS_2ND, CRYSTAL_OF_FOUL_2ND, CRYSTAL_OF_VICTORY_2ND) && hasQuestItems(player, CRYSTAL_OF_DEFEAT_2ND)) + { + htmltext = "30638-05.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_2ND, CRYSTAL_OF_INPROGRESS_2ND, CRYSTAL_OF_DEFEAT_2ND, CRYSTAL_OF_VICTORY_2ND) && hasQuestItems(player, CRYSTAL_OF_FOUL_2ND)) + { + htmltext = "30638-06.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_2ND, CRYSTAL_OF_INPROGRESS_2ND, CRYSTAL_OF_FOUL_2ND, CRYSTAL_OF_DEFEAT_2ND) && hasQuestItems(player, CRYSTAL_OF_VICTORY_2ND)) + { + giveItems(player, BASILLIA_ARCANA, 1); + takeItems(player, CRYSTAL_OF_VICTORY_2ND, 1); + if (hasQuestItems(player, ALMORS_ARCANA, CAMONIELL_ARCANA, CELESTIEL_ARCANA, BELTHUS_ARCANA, BRYNTHEA_ARCANA)) + { + qs.setCond(4, true); + } + htmltext = "30638-07.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_INPROGRESS_2ND, CRYSTAL_OF_FOUL_2ND, CRYSTAL_OF_DEFEAT_2ND, CRYSTAL_OF_VICTORY_2ND) && hasQuestItems(player, CRYSTAL_OF_STARTING_2ND)) + { + htmltext = "30638-08.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_2ND, CRYSTAL_OF_FOUL_2ND, CRYSTAL_OF_DEFEAT_2ND, CRYSTAL_OF_VICTORY_2ND) && hasQuestItems(player, CRYSTAL_OF_INPROGRESS_2ND)) + { + htmltext = "30638-09.html"; + } + } + else + { + htmltext = "30638-10.html"; + } + break; + } + case SUMMONER_CELESTIEL: + { + if (!hasQuestItems(player, CELESTIEL_ARCANA)) + { + if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_4TH, CRYSTAL_OF_INPROGRESS_4TH, CRYSTAL_OF_FOUL_4TH, CRYSTAL_OF_DEFEAT_4TH, CRYSTAL_OF_VICTORY_4TH)) + { + htmltext = "30639-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_4TH, CRYSTAL_OF_INPROGRESS_4TH, CRYSTAL_OF_FOUL_4TH, CRYSTAL_OF_VICTORY_4TH) && hasQuestItems(player, CRYSTAL_OF_DEFEAT_4TH)) + { + htmltext = "30639-05.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_4TH, CRYSTAL_OF_INPROGRESS_4TH, CRYSTAL_OF_DEFEAT_4TH, CRYSTAL_OF_VICTORY_4TH) && hasQuestItems(player, CRYSTAL_OF_FOUL_4TH)) + { + htmltext = "30639-06.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_4TH, CRYSTAL_OF_INPROGRESS_4TH, CRYSTAL_OF_FOUL_4TH, CRYSTAL_OF_DEFEAT_4TH) && hasQuestItems(player, CRYSTAL_OF_VICTORY_4TH)) + { + giveItems(player, CELESTIEL_ARCANA, 1); + takeItems(player, CRYSTAL_OF_VICTORY_4TH, 1); + if (hasQuestItems(player, ALMORS_ARCANA, BASILLIA_ARCANA, CAMONIELL_ARCANA, BELTHUS_ARCANA, BRYNTHEA_ARCANA)) + { + qs.setCond(4, true); + } + htmltext = "30639-07.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_INPROGRESS_4TH, CRYSTAL_OF_FOUL_4TH, CRYSTAL_OF_DEFEAT_4TH, CRYSTAL_OF_VICTORY_4TH) && hasQuestItems(player, CRYSTAL_OF_STARTING_4TH)) + { + htmltext = "30639-08.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_4TH, CRYSTAL_OF_FOUL_4TH, CRYSTAL_OF_DEFEAT_4TH, CRYSTAL_OF_VICTORY_4TH) && hasQuestItems(player, CRYSTAL_OF_INPROGRESS_4TH)) + { + htmltext = "30639-09.html"; + } + } + else + { + htmltext = "30639-10.html"; + } + break; + } + case SUMMONER_BRYNTHEA: + { + if (!hasQuestItems(player, BRYNTHEA_ARCANA)) + { + if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_6TH, CRYSTAL_OF_INPROGRESS_6TH, CRYSTAL_OF_FOUL_6TH, CRYSTAL_OF_DEFEAT_6TH, CRYSTAL_OF_VICTORY_6TH)) + { + htmltext = "30640-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_6TH, CRYSTAL_OF_INPROGRESS_6TH, CRYSTAL_OF_FOUL_6TH, CRYSTAL_OF_VICTORY_6TH) && hasQuestItems(player, CRYSTAL_OF_DEFEAT_6TH)) + { + htmltext = "30640-05.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_6TH, CRYSTAL_OF_INPROGRESS_6TH, CRYSTAL_OF_DEFEAT_6TH, CRYSTAL_OF_VICTORY_6TH) && hasQuestItems(player, CRYSTAL_OF_FOUL_6TH)) + { + htmltext = "30640-06.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_6TH, CRYSTAL_OF_INPROGRESS_6TH, CRYSTAL_OF_FOUL_6TH, CRYSTAL_OF_DEFEAT_6TH) && hasQuestItems(player, CRYSTAL_OF_VICTORY_6TH)) + { + giveItems(player, BRYNTHEA_ARCANA, 1); + takeItems(player, CRYSTAL_OF_VICTORY_6TH, 1); + if (hasQuestItems(player, ALMORS_ARCANA, BASILLIA_ARCANA, CAMONIELL_ARCANA, CELESTIEL_ARCANA, BELTHUS_ARCANA)) + { + qs.setCond(4, true); + } + htmltext = "30640-07.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_INPROGRESS_6TH, CRYSTAL_OF_FOUL_6TH, CRYSTAL_OF_DEFEAT_6TH, CRYSTAL_OF_VICTORY_6TH) && hasQuestItems(player, CRYSTAL_OF_STARTING_6TH)) + { + htmltext = "30640-08.html"; + } + else if (!hasAtLeastOneQuestItem(player, CRYSTAL_OF_STARTING_6TH, CRYSTAL_OF_FOUL_6TH, CRYSTAL_OF_DEFEAT_6TH, CRYSTAL_OF_VICTORY_6TH) && hasQuestItems(player, CRYSTAL_OF_INPROGRESS_6TH)) + { + htmltext = "30640-09.html"; + } + } + else + { + htmltext = "30640-10.html"; + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == HIGH_SUMMONER_GALATEA) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } + + private static class MonsterData + { + private final int _crystalOfInprogress; + private final int _crystalOfVictory; + private final NpcStringId _npcStringId; + + protected MonsterData(int crystalOfInprogress, int crystalOfVictory, NpcStringId npcStringId) + { + _crystalOfInprogress = crystalOfInprogress; + _crystalOfVictory = crystalOfVictory; + _npcStringId = npcStringId; + } + + protected int getCrystalOfInprogress() + { + return _crystalOfInprogress; + } + + protected int getCrystalOfVictory() + { + return _crystalOfVictory; + } + + protected NpcStringId getNpcStringId() + { + return _npcStringId; + } + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-01.html new file mode 100644 index 0000000000..d7e755f653 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-01.html @@ -0,0 +1,4 @@ +First Elder Lockirin:
+Patience and dedication are essential if you intend to master a skill. You must remember this as you continue your practice. You are not yet ready for this quest.
+(Artisans of level 39 and above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-02.html new file mode 100644 index 0000000000..81c05e168b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-02.html @@ -0,0 +1,4 @@ +First Elder Lockirin:
+The Test of the Maestro may only be taken by Artisans of a considerable level, learned through much hard training. It is not a test that can be taken by just anyone.
+(Artisans of level 39 and above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-03.htm new file mode 100644 index 0000000000..bc0236c98a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-03.htm @@ -0,0 +1,6 @@ +First Elder Lockirin:
+It has been a long time since a Dwarf has come to take the Maestro test. Youngsters these days do not appreciate the benefits of hard work... You are a notable exception, my ambitious young friend.
+Actually,it is far too easy to become a Maestro these days. In the days of my youth the test was so intense that the stress would often cause physical disfigurement! Many ended up looking like Elves! These days you only need to get Recommendations from the 3 Elders...
+So would you like to take the test?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-04.htm new file mode 100644 index 0000000000..ceb10a2827 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-04.htm @@ -0,0 +1,3 @@ +First Elder Lockirin:
+First, go and find the Elders in this building. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-04a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-04a.htm new file mode 100644 index 0000000000..63423ce155 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-04a.htm @@ -0,0 +1,4 @@ +Iron Gate's Lockirin:
+Well, then, you should first meet with the elders in this building.
+Take this Dimension Diamond. You can trade it to the village gatekeeper for something special that may help you on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-05.html new file mode 100644 index 0000000000..193fb6b282 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-05.html @@ -0,0 +1,3 @@ +First Elder Lockirin:
+The First Elder cannot give Recommendations. This is one way his powers are restricted. You must receive Recommendations from the other 3 Elders. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-06.html new file mode 100644 index 0000000000..93fe9bb657 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30531-06.html @@ -0,0 +1,3 @@ +First Elder Lockirin:
+Let's see, yes they are all here. I am impressed! I'm sure the other Elders are preoccupied with the upcoming election. Did you learn much from them? Many people covet this position and would like it for themselves. Many also fail to realize the deep significance it holds for all of us Dwarves. I pray that you become a perceptive and far-sighted Warsmith. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30532-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30532-01.html new file mode 100644 index 0000000000..3e5fa1beb8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30532-01.html @@ -0,0 +1,4 @@ +Elder Spiron:
+Ah, Balanki... So proud over the success of such a small deal... He'll get a taste of his own medicine soon. He he he.
+Oh! Who are you? What do you want? A letter of Recommendation? Can't you see how busy I am? Go get your letter somewhere else! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30533-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30533-01.html new file mode 100644 index 0000000000..11e62551e9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30533-01.html @@ -0,0 +1,6 @@ +Elder Balanki:
+Obviously you have the skills... But skills alone do not guarantee success.
+Could you possibly do me a favor? I would like to spend the rest of my life in service to my race.
+Next year is the election for the new First Elder. But that greedy Lockirin and the Steel Gate Guild are a very formidable enemy! But if I can pull this deal off, my political fortunes would rise... But...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30533-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30533-02.html new file mode 100644 index 0000000000..5c64e8c391 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30533-02.html @@ -0,0 +1,5 @@ +Elder Balanki:
+Well, I can't go into details, but it concerns the delivery of a certain item. I don't know how the news leaked out, but it seems that every thief around here is targeting our wagon.
+I have decided to hire some Guards. The Orcs are perfect for this job.
But when I tried to hire them, the Orcs staying in the town would not listen!
+Do you think you can go and persuade them? The Orc Leader's name is Croto or something like that. All I ask is that you extract a promise from them that they will send some of their mercenaries. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30533-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30533-03.html new file mode 100644 index 0000000000..0decdf9493 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30533-03.html @@ -0,0 +1,3 @@ +Elder Balanki:
+Time keeps passing, and not an Orc in sight! Have you met with Kroto, the leader of the Orcs? Are you taking this task seriously? If you expect to get a letter of Recommendation, go and bring those Orcs to me at once! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30533-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30533-04.html new file mode 100644 index 0000000000..62725b692e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30533-04.html @@ -0,0 +1,2 @@ + +Elder Balanki:
Good deal! Well done! Those Orcs... I'm afraid to say I doubted that they would agree for a while, but here is their promise! Thank you so very much! I wish there were more Dwarves around like you! Here is the letter of Recommendation that I promised. I shall make a place for you once I am First Elder. I hope we can work together again in the future... \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30533-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30533-05.html new file mode 100644 index 0000000000..6d27d754fa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30533-05.html @@ -0,0 +1,3 @@ +Elder Balanki:
+Gather 3 letters of Recommendation and go to the First Elder. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30534-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30534-01.html new file mode 100644 index 0000000000..1c3b1c7c95 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30534-01.html @@ -0,0 +1,3 @@ +Bronze Key's Keef:
+Everyone is all atwitter about the upcoming elections! If you are here to ask for a Recommendation, go away! I've had enough of this crap, and certainly wouldn't endorse a complete stranger like you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30535-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30535-01.html new file mode 100644 index 0000000000..75dcd8cdb0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30535-01.html @@ -0,0 +1,4 @@ +Filaur of the Gray Pillar:
+I don't mind writing you a letter of Recommendation, but first you must do something for me. In anticipation of next year's First Elder election our guild is planning to construct an amazing building. Our current skills are not up to the task. We require the technology of the ancient giants! If we can secure that our dreams will become reality.
+Certainly you know of the Cruma Tower? It is where the skills of the ancient giants are preserved. I have heard that a scout team from the Black Anvil Guild is there, too. They are led by a woman named Loraine or something like that... Go and obtain the technology from them. Do what you must. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30535-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30535-02.html new file mode 100644 index 0000000000..da39ecf6ab --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30535-02.html @@ -0,0 +1,3 @@ +Filaur of the Gray Pillar:
+A scout team sent by the Black Anvil guild will be near the entrance to the Cruma Tower. It is lead by a woman named Lorain. You must bring me their research results, regardless of how you get it! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30535-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30535-03.html new file mode 100644 index 0000000000..00c6378255 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30535-03.html @@ -0,0 +1,4 @@ +Filaur of the Gray Pillar:
+Is this what I have been searching for? So I judged you correctly. Well done! Here is your letter of Recommendation.
+Now there is just to build our amazing building! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30535-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30535-04.html new file mode 100644 index 0000000000..190571ecbd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30535-04.html @@ -0,0 +1,3 @@ +Filaur of the Gray Pillar:
+If you have received Recommendation letters from 3 Elders, take them to First Elder Lockirin at once. The path of the Warsmith that you desire lies ahead of you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30536-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30536-01.html new file mode 100644 index 0000000000..3eb8da2712 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30536-01.html @@ -0,0 +1,6 @@ +Elder Arin:
+The Black Anvil Guild represents the pinnacle of the Dwarven race. Thanks to our efforts, the lost skills of the ancient Giants have been rediscovered. As an elder, I will ensure that our skills progress even farther and faster. Our reputation among the other races will be unparalleled!
+Oh, did you say that you've come for a letter of recommendation? Very well -- I will assign you a task to determine whether you are indeed worthy of my recommendation.
+A portable teleportation device invented by our guild was stolen from us some time ago. We have determined that Master Toma is the culprit, but we cannot pursue him directly at this time. Your mission is to find Master Toma, determine the truth of the charges and return the device to us if he is indeed guilty.
+You will likely find him on the northern coast. When and if you return, we will talk further about the letter of recommendation... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30536-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30536-02.html new file mode 100644 index 0000000000..6618772692 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30536-02.html @@ -0,0 +1,4 @@ +Elder Arin:
+Where is the device?! If you do not bring me the mobile Teleport Device, you will never get a Recommendation letter! I must have it in order to win the upcoming election!
+Find Master Toma at once! And recover that teleport machine! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30536-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30536-03.html new file mode 100644 index 0000000000..f4ceab5910 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30536-03.html @@ -0,0 +1,5 @@ +Elder Arin:
+Five?! Did you say 5?! My dream... The future of my race... What shall I do...?
+Whew... Yes... A Recommendation letter, you say? OK, here you go.
+I need to think, so please leave me in peace. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30536-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30536-04.html new file mode 100644 index 0000000000..cd11688efd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30536-04.html @@ -0,0 +1,3 @@ +Elder Arin:
+Get letters of Recommendation from 3 Elders and take them to the First Elder. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-01.html new file mode 100644 index 0000000000..7bc3fc9914 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-01.html @@ -0,0 +1,5 @@ +Master Toma:
+Ha! Well I guess you caught me! Can't get anything past you... Don't misunderstand, I didn't steal it, I just borrowed it for a while to make the machine complete. If you want it back, please help me finish my test.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-02.html new file mode 100644 index 0000000000..aa2a69af87 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-02.html @@ -0,0 +1,5 @@ +Master Toma:
+Good choice! Now, hold the machine and press this button! If you are transported to the Dwarven Village then it is a success! Let's try it!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-03.html new file mode 100644 index 0000000000..843e161126 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-03.html @@ -0,0 +1,3 @@ +Master Toma:
+You fool! Find me if you can! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-04.html new file mode 100644 index 0000000000..a002fd3308 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-04.html @@ -0,0 +1,4 @@ +Master Toma:
+Hey! That's unfair! Just help with the test and you'll get it back!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-05.html new file mode 100644 index 0000000000..f4435a7eb2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-05.html @@ -0,0 +1,3 @@ +Master Toma:
+Come back soon! Our next experiment awaits! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-06.html new file mode 100644 index 0000000000..6715ce3ca0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-06.html @@ -0,0 +1,3 @@ +Master Toma:
+Ha, Don't be too mad. Now we know what to expect on our arrival! Now give me back the machine, not the broken one... Tell the old man that we broke 5 of them. Take care, then. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-07.html new file mode 100644 index 0000000000..ea8952ab85 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30556-07.html @@ -0,0 +1,3 @@ +Master Toma:
+Tell that old man that it broke too easily. Next time he should send something more durable. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30671-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30671-01.html new file mode 100644 index 0000000000..c654a44119 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30671-01.html @@ -0,0 +1,5 @@ +Chief Croto:
+This old fool just doesn't understand... The Contract was over last month! You don't know how that Dwarf feels about Orcs? Oh, damn...
+Oh, well, believe what you will. Now leave, I am busy!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30671-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30671-02.html new file mode 100644 index 0000000000..7f999ddfdc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30671-02.html @@ -0,0 +1,7 @@ +Chief Croto:
+Truthfully, we were exiled from the Holy Land and have been living in a foreign village. The bitterest pill to swallow is that the altar of our ancestors is in the hands of our betrayers.
+I have tried and failed several times to retrieve the altar which is being kept in the Cave of Trial.
+This year we sent the army and not one has returned. My nephew Kamuru is among the lost... Possibly lost in the cave or killed by the monster... Anyway, if something has happened to him I won't be able to face my sister.
+Let us make a bargain. Go to the Cave of Trial and find out what has happened to Kamuru. If he was killed by monsters, bring his belongings to me.
+If you will do this favor for me, I'll fulfill the request of that old Dwarf! Do you understand? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30671-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30671-03.html new file mode 100644 index 0000000000..f69a2d6b97 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30671-03.html @@ -0,0 +1,3 @@ +Chief Croto:
+The altar of our ancestors is in the Cave of Trial. It is a huge cave in an area frequented by Orcs. Our army was last seen heading there. My nephew was among them. If you search the cave, you may find the remains of my nephew. If he was killed by monsters, please bring his belongings to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30671-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30671-04.html new file mode 100644 index 0000000000..a777a2ac53 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30671-04.html @@ -0,0 +1,6 @@ +Chief Croto:
+I see. My nephew died a hero's death.
+I am jealous in a way... He was so tragically young. His name will be inscribed forever in Pa'agrio's temple.
+Now only bitter sorrow is left for this old man...
+I must send reinforcements to Elder Balanki. Well done! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30671-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30671-05.html new file mode 100644 index 0000000000..da25d5ea11 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30671-05.html @@ -0,0 +1,3 @@ +Chief Croto:
+Thank you for letting me know of my nephew's fate! I have sent more soldiers to Elder Balanki. You may now leave safely! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30672-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30672-01.html new file mode 100644 index 0000000000..7ebd81badd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30672-01.html @@ -0,0 +1,4 @@ +Jailer Dubabah:
+Ah, those trespassers I caught in this cave? He he he, you should have heard their screams as their limbs were torn off one by one... They didn't stop until I lopped off their heads! The one that cursed the loudest escaped somehow...
+But he is as good as dead. He has surely become a lovely meal for the Evil Eye Lord that stalks this cave. He he he... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30673-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30673-01.html new file mode 100644 index 0000000000..6b3c80b96c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30673-01.html @@ -0,0 +1,4 @@ +Researcher Lorain:
+We will have to discuss the research paper later! One of the team was poisoned by a monster in the dungeon! He managed to escape, but if he doesn't get an Antidote quickly he will surely die. Fortunately, all of the materials we need for the Antidote can be found around here... We must have help gathering them!
+You say you are an adventurer? We must have 10 Needles of Stinger Wasps, 10 units of Leech's Blood, and 10 Cobwebs of Swamp Spider... Can you find these things, please? We'll discuss the research paper after we have saved my colleague's life. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30673-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30673-02.html new file mode 100644 index 0000000000..92266c3416 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30673-02.html @@ -0,0 +1,3 @@ +Researcher Lorain:
+Why are you dallying about?! We cannot afford to lose even one minute... Please collect the materials before it's too late! Do you remember all of the materials? We must have 10 Needles of Stinger Wasps, 10 units of Leech's Blood, and 10 Cobwebs of the Swamp Spider! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30673-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30673-03.html new file mode 100644 index 0000000000..54e0facc82 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30673-03.html @@ -0,0 +1,6 @@ +Researcher Lorain:
+Ah, I see that you have gathered all the materials. Wait a moment please.
+... ...
+Ah, his breathing is returning to normal. The Antidote has worked! By the way, what were you here for?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30673-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30673-04.html new file mode 100644 index 0000000000..d74c56e15a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30673-04.html @@ -0,0 +1,3 @@ +Researcher Lorain:
+Here is a copy of the research paper. I am not sure if it will be of any help to you. As you see, we cannot do much research with such a small group. Moreover, we constantly have to fight off these monsters and poisonous insects... Ah! My colleague awakes! You must excuse me now. Thank you very much for your help. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30673-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30673-05.html new file mode 100644 index 0000000000..43a189653f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/30673-05.html @@ -0,0 +1,3 @@ +Researcher Lorain:
+I have given you all the research materials that I have. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/Q00231_TestOfTheMaestro.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/Q00231_TestOfTheMaestro.java new file mode 100644 index 0000000000..07370e8ed9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00231_TestOfTheMaestro/Q00231_TestOfTheMaestro.java @@ -0,0 +1,483 @@ +/* + * 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.Q00231_TestOfTheMaestro; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Test Of The Maestro (231) + * @author ivantotov + */ +public final class Q00231_TestOfTheMaestro extends Quest +{ + // NPCs + private static final int IRON_GATES_LOCKIRIN = 30531; + private static final int GOLDEN_WHEELS_SPIRON = 30532; + private static final int SILVER_SCALES_BALANKI = 30533; + private static final int BRONZE_KEYS_KEEF = 30534; + private static final int GRAY_PILLAR_MEMBER_FILAUR = 30535; + private static final int BLACK_ANVILS_ARIN = 30536; + private static final int MASTER_TOMA = 30556; + private static final int CHIEF_CROTO = 30671; + private static final int JAILER_DUBABAH = 30672; + private static final int RESEARCHER_LORAIN = 30673; + // Items + private static final int RECOMMENDATION_OF_BALANKI = 2864; + private static final int RECOMMENDATION_OF_FILAUR = 2865; + private static final int RECOMMENDATION_OF_ARIN = 2866; + private static final int LETTER_OF_SOLDER_DERACHMENT = 2868; + private static final int PAINT_OF_KAMURU = 2869; + private static final int NECKLACE_OF_KAMUTU = 2870; + private static final int PAINT_OF_TELEPORT_DEVICE = 2871; + private static final int TELEPORT_DEVICE = 2872; + private static final int ARCHITECTURE_OF_CRUMA = 2873; + private static final int REPORT_OF_CRUMA = 2874; + private static final int INGREDIENTS_OF_ANTIDOTE = 2875; + private static final int STINGER_WASP_NEEDLE = 2876; + private static final int MARSH_SPIDERS_WEB = 2877; + private static final int BLOOD_OF_LEECH = 2878; + private static final int BROKEN_TELEPORT_DEVICE = 2916; + // Reward + private static final int MARK_OF_MAESTRO = 2867; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monster + private static final int KING_BUGBEAR = 20150; + private static final int GIANT_MIST_LEECH = 20225; + private static final int STINGER_WASP = 20229; + private static final int MARSH_SPIDER = 20233; + // Quest Monster + private static final int EVIL_EYE_LORD = 27133; + // Misc + private static final int MIN_LEVEL = 39; + + public Q00231_TestOfTheMaestro() + { + super(231); + addStartNpc(IRON_GATES_LOCKIRIN); + addTalkId(IRON_GATES_LOCKIRIN, GOLDEN_WHEELS_SPIRON, SILVER_SCALES_BALANKI, BRONZE_KEYS_KEEF, GRAY_PILLAR_MEMBER_FILAUR, BLACK_ANVILS_ARIN, MASTER_TOMA, CHIEF_CROTO, JAILER_DUBABAH, RESEARCHER_LORAIN); + addKillId(KING_BUGBEAR, GIANT_MIST_LEECH, STINGER_WASP, MARSH_SPIDER, EVIL_EYE_LORD); + registerQuestItems(RECOMMENDATION_OF_BALANKI, RECOMMENDATION_OF_FILAUR, RECOMMENDATION_OF_ARIN, LETTER_OF_SOLDER_DERACHMENT, PAINT_OF_KAMURU, NECKLACE_OF_KAMUTU, PAINT_OF_TELEPORT_DEVICE, TELEPORT_DEVICE, ARCHITECTURE_OF_CRUMA, REPORT_OF_CRUMA, INGREDIENTS_OF_ANTIDOTE, STINGER_WASP_NEEDLE, MARSH_SPIDERS_WEB, BLOOD_OF_LEECH, BROKEN_TELEPORT_DEVICE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + qs.setMemoState(1); + playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 23); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30531-04a.htm"; + } + else + { + htmltext = "30531-04.htm"; + } + } + break; + } + case "30533-02.html": + { + qs.setMemoState(2); + htmltext = event; + break; + } + case "30556-02.html": + case "30556-03.html": + case "30556-04.html": + { + htmltext = event; + break; + } + case "30556-05.html": + { + if (hasQuestItems(player, PAINT_OF_TELEPORT_DEVICE)) + { + giveItems(player, BROKEN_TELEPORT_DEVICE, 1); + takeItems(player, PAINT_OF_TELEPORT_DEVICE, 1); + player.teleToLocation(140352, -194133, -3146); + startQuestTimer("SPAWN_KING_BUGBEAR", 5000, npc, player); + htmltext = event; + } + break; + } + case "30671-02.html": + { + giveItems(player, PAINT_OF_KAMURU, 1); + htmltext = event; + break; + } + case "30673-04.html": + { + if (hasQuestItems(player, INGREDIENTS_OF_ANTIDOTE) && (getQuestItemsCount(player, STINGER_WASP_NEEDLE) >= 10) && (getQuestItemsCount(player, MARSH_SPIDERS_WEB) >= 10) && (getQuestItemsCount(player, BLOOD_OF_LEECH) >= 10)) + { + giveItems(player, REPORT_OF_CRUMA, 1); + takeItems(player, STINGER_WASP_NEEDLE, -1); + takeItems(player, MARSH_SPIDERS_WEB, -1); + takeItems(player, BLOOD_OF_LEECH, -1); + takeItems(player, INGREDIENTS_OF_ANTIDOTE, 1); + htmltext = event; + } + break; + } + case "SPAWN_KING_BUGBEAR": + { + addAttackPlayerDesire(addSpawn(KING_BUGBEAR, 140395, -194147, -3146, 0, false, 200000, false), player); + addAttackPlayerDesire(addSpawn(KING_BUGBEAR, 140395, -194147, -3146, 0, false, 200000, false), player); + addAttackPlayerDesire(addSpawn(KING_BUGBEAR, 140395, -194147, -3146, 0, false, 200000, false), player); + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case GIANT_MIST_LEECH: + { + if (qs.isMemoState(4) && hasQuestItems(killer, INGREDIENTS_OF_ANTIDOTE) && (getQuestItemsCount(killer, BLOOD_OF_LEECH) < 10)) + { + giveItems(killer, BLOOD_OF_LEECH, 1); + if (getQuestItemsCount(killer, BLOOD_OF_LEECH) >= 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case STINGER_WASP: + { + if (qs.isMemoState(4) && hasQuestItems(killer, INGREDIENTS_OF_ANTIDOTE) && (getQuestItemsCount(killer, STINGER_WASP_NEEDLE) < 10)) + { + giveItems(killer, STINGER_WASP_NEEDLE, 1); + if (getQuestItemsCount(killer, STINGER_WASP_NEEDLE) >= 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case MARSH_SPIDER: + { + if (qs.isMemoState(4) && hasQuestItems(killer, INGREDIENTS_OF_ANTIDOTE) && (getQuestItemsCount(killer, MARSH_SPIDERS_WEB) < 10)) + { + giveItems(killer, MARSH_SPIDERS_WEB, 1); + if (getQuestItemsCount(killer, MARSH_SPIDERS_WEB) >= 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case EVIL_EYE_LORD: + { + if (qs.isMemoState(2) && hasQuestItems(killer, PAINT_OF_KAMURU) && !hasQuestItems(killer, NECKLACE_OF_KAMUTU)) + { + giveItems(killer, NECKLACE_OF_KAMUTU, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + final int memoState = qs.getMemoState(); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == IRON_GATES_LOCKIRIN) + { + if (player.getClassId() == ClassId.ARTISAN) + { + if (player.getLevel() >= MIN_LEVEL) + { + htmltext = "30531-03.htm"; + } + else + { + htmltext = "30531-01.html"; + } + } + else + { + htmltext = "30531-02.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case IRON_GATES_LOCKIRIN: + { + if ((memoState >= 1) && !hasQuestItems(player, RECOMMENDATION_OF_BALANKI, RECOMMENDATION_OF_FILAUR, RECOMMENDATION_OF_ARIN)) + { + htmltext = "30531-05.html"; + } + else if (hasQuestItems(player, RECOMMENDATION_OF_BALANKI, RECOMMENDATION_OF_FILAUR, RECOMMENDATION_OF_ARIN)) + { + giveAdena(player, 372154, true); + giveItems(player, MARK_OF_MAESTRO, 1); + addExpAndSp(player, 2085244, 141240); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30531-06.html"; + } + break; + } + case GOLDEN_WHEELS_SPIRON: + { + htmltext = "30532-01.html"; + break; + } + case SILVER_SCALES_BALANKI: + { + if ((memoState == 1) && !hasQuestItems(player, RECOMMENDATION_OF_BALANKI)) + { + htmltext = "30533-01.html"; + } + else if (memoState == 2) + { + if (!hasQuestItems(player, LETTER_OF_SOLDER_DERACHMENT)) + { + htmltext = "30533-03.html"; + } + else + { + giveItems(player, RECOMMENDATION_OF_BALANKI, 1); + takeItems(player, LETTER_OF_SOLDER_DERACHMENT, 1); + qs.setMemoState(1); + if (hasQuestItems(player, RECOMMENDATION_OF_ARIN, RECOMMENDATION_OF_FILAUR)) + { + qs.setCond(2, true); + } + htmltext = "30533-04.html"; + } + } + else if (hasQuestItems(player, RECOMMENDATION_OF_BALANKI)) + { + htmltext = "30533-05.html"; + } + break; + } + case BRONZE_KEYS_KEEF: + { + htmltext = "30534-01.html"; + break; + } + case GRAY_PILLAR_MEMBER_FILAUR: + { + if ((memoState == 1) && !hasQuestItems(player, RECOMMENDATION_OF_FILAUR)) + { + giveItems(player, ARCHITECTURE_OF_CRUMA, 1); + qs.setMemoState(4); + htmltext = "30535-01.html"; + } + else if (memoState == 4) + { + if (hasQuestItems(player, ARCHITECTURE_OF_CRUMA) && !hasQuestItems(player, REPORT_OF_CRUMA)) + { + htmltext = "30535-02.html"; + } + else if (hasQuestItems(player, REPORT_OF_CRUMA) && !hasQuestItems(player, ARCHITECTURE_OF_CRUMA)) + { + giveItems(player, RECOMMENDATION_OF_FILAUR, 1); + takeItems(player, REPORT_OF_CRUMA, 1); + qs.setMemoState(1); + if (hasQuestItems(player, RECOMMENDATION_OF_BALANKI, RECOMMENDATION_OF_ARIN)) + { + qs.setCond(2, true); + } + htmltext = "30535-03.html"; + } + } + else if (hasQuestItems(player, RECOMMENDATION_OF_FILAUR)) + { + htmltext = "30535-04.html"; + } + break; + } + case BLACK_ANVILS_ARIN: + { + if ((memoState == 1) && !hasQuestItems(player, RECOMMENDATION_OF_ARIN)) + { + giveItems(player, PAINT_OF_TELEPORT_DEVICE, 1); + qs.setMemoState(3); + htmltext = "30536-01.html"; + } + else if (memoState == 3) + { + if (hasQuestItems(player, PAINT_OF_TELEPORT_DEVICE) && !hasQuestItems(player, TELEPORT_DEVICE)) + { + htmltext = "30536-02.html"; + } + else if (getQuestItemsCount(player, TELEPORT_DEVICE) >= 5) + { + giveItems(player, RECOMMENDATION_OF_ARIN, 1); + takeItems(player, TELEPORT_DEVICE, -1); + qs.setMemoState(1); + if (hasQuestItems(player, RECOMMENDATION_OF_BALANKI, RECOMMENDATION_OF_FILAUR)) + { + qs.setCond(2, true); + } + htmltext = "30536-03.html"; + } + } + else if (hasQuestItems(player, RECOMMENDATION_OF_ARIN)) + { + htmltext = "30536-04.html"; + } + break; + } + case MASTER_TOMA: + { + if (memoState == 3) + { + if (hasQuestItems(player, PAINT_OF_TELEPORT_DEVICE)) + { + htmltext = "30556-01.html"; + } + else if (hasQuestItems(player, BROKEN_TELEPORT_DEVICE)) + { + giveItems(player, TELEPORT_DEVICE, 5); + takeItems(player, BROKEN_TELEPORT_DEVICE, 1); + htmltext = "30556-06.html"; + } + else if (getQuestItemsCount(player, TELEPORT_DEVICE) == 5) + { + htmltext = "30556-07.html"; + } + } + break; + } + case CHIEF_CROTO: + { + if ((memoState == 2) && !hasAtLeastOneQuestItem(player, PAINT_OF_KAMURU, NECKLACE_OF_KAMUTU, LETTER_OF_SOLDER_DERACHMENT)) + { + htmltext = "30671-01.html"; + } + else if (hasQuestItems(player, PAINT_OF_KAMURU) && !hasQuestItems(player, NECKLACE_OF_KAMUTU)) + { + htmltext = "30671-03.html"; + } + else if (hasQuestItems(player, NECKLACE_OF_KAMUTU)) + { + giveItems(player, LETTER_OF_SOLDER_DERACHMENT, 1); + takeItems(player, NECKLACE_OF_KAMUTU, 1); + takeItems(player, PAINT_OF_KAMURU, 1); + htmltext = "30671-04.html"; + } + else if (hasQuestItems(player, LETTER_OF_SOLDER_DERACHMENT)) + { + htmltext = "30671-05.html"; + } + break; + } + case JAILER_DUBABAH: + { + if (hasQuestItems(player, PAINT_OF_KAMURU)) + { + htmltext = "30672-01.html"; + } + break; + } + case RESEARCHER_LORAIN: + { + if (memoState == 4) + { + if (hasQuestItems(player, ARCHITECTURE_OF_CRUMA) && !hasAtLeastOneQuestItem(player, INGREDIENTS_OF_ANTIDOTE, REPORT_OF_CRUMA)) + { + giveItems(player, INGREDIENTS_OF_ANTIDOTE, 1); + takeItems(player, ARCHITECTURE_OF_CRUMA, 1); + htmltext = "30673-01.html"; + } + else if (hasQuestItems(player, INGREDIENTS_OF_ANTIDOTE) && !hasQuestItems(player, REPORT_OF_CRUMA)) + { + if ((getQuestItemsCount(player, STINGER_WASP_NEEDLE) >= 10) && (getQuestItemsCount(player, MARSH_SPIDERS_WEB) >= 10) && (getQuestItemsCount(player, BLOOD_OF_LEECH) >= 10)) + { + htmltext = "30673-03.html"; + } + else + { + htmltext = "30673-02.html"; + } + } + else if (hasQuestItems(player, REPORT_OF_CRUMA)) + { + htmltext = "30673-05.html"; + } + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == IRON_GATES_LOCKIRIN) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30510-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30510-01.html new file mode 100644 index 0000000000..dad8a13fe4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30510-01.html @@ -0,0 +1,3 @@ +Seer Somak:
+What did you come here for? Sumari's Letter? Did you come to get the Urutu Blade?! We finished the ceremony of the blessings of our ancestors two days ago. Here! Take this back with you. Chief Hatos will be most pleased! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30510-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30510-02.html new file mode 100644 index 0000000000..857d1b8ad5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30510-02.html @@ -0,0 +1,3 @@ +Seer Somak:
+I hope that you are taking good care of the Urutu Blade which contains the power of flames. Give the holy treasure to the Urutu Chief, Hatos! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30510-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30510-03.html new file mode 100644 index 0000000000..ff7bae7edb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30510-03.html @@ -0,0 +1,3 @@ +Seer Somak:
+Did you get the totem from the Urutu tribal leader? That dreaded symbol which makes betrayers shiver and enemies' blood run cold! To receive that symbol is a sign of great respect by the tribal leader! You must show the utmost dignity while carrying the Urutu totem! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30515-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30515-01.html new file mode 100644 index 0000000000..959a7e6028 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30515-01.html @@ -0,0 +1,5 @@ +Seer Manakia:
+Did you come to see me, Seer Manakia, under the command of Atuba Chief Varkees? I can tell from your necklace that you are taking the Test of the Lord! Then I shall tell you what to do now!
+As you know in this land there are plenty of traitor Orcs, who have forgotten their origin and pride as an Orc! You must punish them severely by extracting their fangs and bringing them back to me! Our totem, the upright fang is made by collecting the fangs of the armies we've conquered!
+Your task is to rid the land of the Breka Orcs, and bring their fangs as proof of your victory! But don't forget, a soldier's tooth is no good! Bring only the ones of the Shaman or Overlord! Return when you have collected twenty of them! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30515-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30515-02.html new file mode 100644 index 0000000000..e15ce2aa2d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30515-02.html @@ -0,0 +1,4 @@ +Seer Manakia:
+Did you forget your task already? Go now and get rid of the Breka Orcs in the area and bring twenty of their fangs! Soldier's teeth are worthless! Only bring the ones from the Shamans or Overlords!
+You remember don't you? The totem of the cold-hearted Atubas is made from the fangs of our enemies! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30515-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30515-03.html new file mode 100644 index 0000000000..df5a57d879 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30515-03.html @@ -0,0 +1,3 @@ +Seer Manakia:
+Tejakar Oroka! You brought the twenty fangs! You have warned those vagrant Breka Orcs with the wrath of our tribe. For your honorable contribution, I shall give you this amulet as a prize. Take it to Atuba Chief Varkees at the Orc Village! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30515-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30515-04.html new file mode 100644 index 0000000000..cccff3fda8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30515-04.html @@ -0,0 +1,3 @@ +Seer Manakia:
+You have successfully completed your task with the filthy Breka Orcs and brought back their fangs! Now take the amulet I gave you to Atuba Chief Varkees! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30515-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30515-05.html new file mode 100644 index 0000000000..bd558919bb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30515-05.html @@ -0,0 +1,3 @@ +Seer Manakia:
+Someday I shall return to the Immortal Plateau to take the Test of the Lord! But I have unfinished business in this land! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-01.html new file mode 100644 index 0000000000..8aa3e9dba1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-01.html @@ -0,0 +1,4 @@ +Trader Jakal:
+Ah, you mean the Neruga Axe Blade? Yes, 1,000 Adena. No need to be surprised. You didn't think that I would give it to you for free, did you? No way! I am a merchant. It's a reasonable price for such precious symbol of the Neruga tribe spirit. If you don't agree, then leave!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-02.html new file mode 100644 index 0000000000..bd2f3b9a6f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-02.html @@ -0,0 +1,3 @@ +Trader Jakal:
+Very well! 1,000 Adena, exactly! Then here is the axe blade. This is one part of the axe which the Nerugas use in their ceremony. Handle it with care! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-03.html new file mode 100644 index 0000000000..3514f3faa1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-03.html @@ -0,0 +1,4 @@ +Trader Jakal:
+Ah, you mean the Neruga Axe Blade? Yes, 1,000 Adena. No need to be surprised. You didn't think that I would give it to you for free, did you? No way! I am a merchant. It's a reasonable price for such a precious symbol of the Neruga tribe spirit. If you don't agree, then leave!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-03a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-03a.html new file mode 100644 index 0000000000..e38c784dc2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-03a.html @@ -0,0 +1,3 @@ +Trader Jakal:
+This is not enough money! Who do you think I am? If you ever try to buy something without enough money again, I will throw you out of the shop! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-04.html new file mode 100644 index 0000000000..1ddc9b87ce --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-04.html @@ -0,0 +1,3 @@ +Trader Jakal:
+The axe blade that I gave you is a part of the Neruga axe. It is a holy weapon which is used during a ceremony in the Pa'agrio Temple, so handle it with care! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-05.html new file mode 100644 index 0000000000..bc3f1edb57 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30558-05.html @@ -0,0 +1,3 @@ +Trader Jakal:
+That is our tribe's holy axe! That means you are someone acknowledged by Tantus, our Neruga tribe leader! Tejakar Oroka! I wish you endless glory in your future! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30564-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30564-01.html new file mode 100644 index 0000000000..098425fd83 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30564-01.html @@ -0,0 +1,4 @@ +Blacksmith Sumari:
+I, Sumari, am a blacksmith of the proud Orcs. Did Urutu Chief Hatos send you here? To collect the Urutu Blade? The blade ordered by Hatos is very important! A holy object to use in the Urutu tribe's ritual! I had to send it to someone else to work on the blade because it was impossible for me to do. I gave it to Seer Somak so he could put the blessings of ancestors in the blade.
+You are in middle of the Trial of the Lord, right? It would be better for you to get the blade and give it Hatos personally. Take this letter and find Seer Somak in the Town of Dion. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30564-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30564-02.html new file mode 100644 index 0000000000..e36d2468c9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30564-02.html @@ -0,0 +1,3 @@ +Blacksmith Sumari:
+Why have you come back? Did I not tell you? I gave the Uturu Blade to Seer Somak of the Town of Dion! He will give you the blade when you show him the letter! So hurry and leave! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30564-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30564-03.html new file mode 100644 index 0000000000..c333206f48 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30564-03.html @@ -0,0 +1,3 @@ +Blacksmith Sumari:
+The Urutu Blade that has the blessings of ancestors! You received it from Seer Somak! Now take this to Chief Hatos! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30564-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30564-04.html new file mode 100644 index 0000000000..f8df49619d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30564-04.html @@ -0,0 +1,3 @@ +Blacksmith Sumari:
+Oh, this is amazing! The Totem of the Urutu tribe, an Orc's skull with a blade! Raise this horrifying form on the battlefield and your enemies will tremble and lose the will to fight! For the chief to have given you this means that he has set a high value on your skills! You should be very honored! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-01.html new file mode 100644 index 0000000000..50fc275810 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-01.html @@ -0,0 +1,4 @@ +Flame Lord Kakai:
+I, Kakai, Lord of the Flame, have no business with foreigners!
+(This quest may only be performed by Orc Shamans of level 39 and higher) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-02.html new file mode 100644 index 0000000000..0966bdb598 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-02.html @@ -0,0 +1,5 @@ +Flame Lord Kakai:
+You, warrior of our race... I shall tell you of the Overlord, the high level Shaman of our race, so listen carefully! They are those born with the fate of ruling over others! Should they become lords that lead a clan, the members of that clan shall all display remarkable power!
+Traditionally, we Orcs have chosen the chief of a tribe from among the Overlords. In order to become an Overlord, a Shaman must pass the severe Trial of the Lord. I endured this trial as a youngster in order to become the Overlord of the Hestui! The lord or chief that you will be serving in the future will also have passed this trial, so treat them with the reverence and honor that they deserve!
+(Quest for Orc Shamans, level 39 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-03.html new file mode 100644 index 0000000000..e5700d589a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-03.html @@ -0,0 +1,6 @@ +Flame Lord Kakai:
+You, warrior of our race... I shall tell you of the Overlord, the high level Shaman of our race, so listen carefully! They are those born with the fate of ruling over others! Should they become lords that lead a clan, the members of that clan shall all display remarkable power!
+Traditionally, we Orcs have chosen the chief of a tribe from among the Overlords. In order to become an Overlord, a Shaman must pass the severe Trial of the Lord. I endured this trial as a youngster in order to become the Overlord of the Hestui!
+If you wish to become an Overlord, you must also pass the Trial of the Lord! But I, Flame Lord Kakai, declare, you are not ready!
+(Quest for Orc Shamans, level 39 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-04.htm new file mode 100644 index 0000000000..b3dedee34d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-04.htm @@ -0,0 +1,6 @@ +Flame Lord Kakai:
+You, warrior of our race... I shall tell you of the Overlord, the high level Shaman of our race, so listen carefully! They are those born with the fate of ruling over others! Should they become lords that lead a clan, the members of that clan shall all display remarkable power!
+Traditionally, we Orcs have chosen the chief of a tribe from among the Overlords. In order to become an Overlord, a Shaman must pass the severe Trial of the Lord. I endured this trial as a youngster in order to become the Overlord of the Hestui!
+If you also desire to become an Overlord, you must attempt the Trial of the Lord! To pass the trial, you must first meet with the chiefs of the six tribes and receive their acknowledgement that you are worthy of becoming a lord! Young Shaman, do you wish to attempt the trial?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-05.htm new file mode 100644 index 0000000000..6f37e547fd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-05.htm @@ -0,0 +1,5 @@ +Flame Lord Kakai:
+I, Hestui tribe Chief Kakai, will oversee your trial. First, take this necklace! And now, with the exception of the Hestui tribe, go to the other five tribal chiefs and receive their acknowledgement that you are worthy of becoming a lord! As a mark of their acknowledgement, bring back the totems of each tribe!
+Bring back the totems of all five tribes and I, Hestui tribal chief Kakai, will personally test you to see if you are worthy of becoming a lord! Tejakar Oroka!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-05a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-05a.html new file mode 100644 index 0000000000..794080b738 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-05a.html @@ -0,0 +1,7 @@ +Flame Lord Kakai:
+Have you been around to visit the Orc chiefs of the six great tribes yet? Listen carefully!
+The greatest of the tribes is Hestui, the tribe that I, Kakai, lead! You must seek out the chiefs of the Atuba, Neruga, Urutu, Duda-Mara, and Gandi tribes!
+The chiefs of the Atuba, Neruga, and Urutu tribe currently reside here, in the King's Hall!
+Look for the Duda-Mara Chief in the town of Oren, and the Gandi Chief at the Town of Dion!
+The chiefs will test you to determine if you really are worthy of becoming a lord. Pass their test and receive the totem of their tribe as an acknowledgement of your skills! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-05b.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-05b.htm new file mode 100644 index 0000000000..9e68698c94 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-05b.htm @@ -0,0 +1,5 @@ +Flame Lord Kakai:
+I, Hestui leader Kakai, will oversee your test. Take this necklace and visit the other 5 tribe leaders and be acknowledged as a lord. As a proof of their acknowledgement, bring back the totem of each tribe!
+If you bring back all 5 tribes' totems, I will personally test you to see if you are really qualified to be a lord!
+And take this Dimension Diamond. You can trade it to the village gatekeeper for something special that may help you on your journey.
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-06.html new file mode 100644 index 0000000000..b9482cda51 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-06.html @@ -0,0 +1,5 @@ +Flame Lord Kakai:
+Visit the remaining five tribe chiefs, and receive their acknowledgement of your capacity to become a lord! As a mark of their acknowledgement, bring back the totems of each tribe!
+Bring back all five tribal totems and I, Hestui tribal Chief Kakai, will personally test you to see if you are worthy of becoming a lord!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-07.html new file mode 100644 index 0000000000..d72344c9bf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-07.html @@ -0,0 +1,6 @@ +Flame Lord Kakai:
+What have we here? A giant Orc fang! A sword embedded in an Orc's skull! The ritual axe! Engraved spider brooch! Monster eye carving!
+I see that you have received acknowledgement from the Chiefs of the 5 tribes! Good! You are now eligible to take the final test!
+I, Kakai, Chief of the Hestui tribe and Lord of the great Orc race, shall test you to see if you truly have the skills to become an Overlord! Young Shaman, are you ready?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-08.html new file mode 100644 index 0000000000..2e00b06599 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-08.html @@ -0,0 +1,4 @@ +Flame Lord Kakai:
+Good! Now listen to what I say! Do you remember the Cave of Trials, where you went to further your training as an apprentice? Ancestor Martankus lives in that cave. He is a great ancestral spirit that has been watching over our race for thousands of years.
+I shall give you the Bear Fang Necklace, the symbol of the Hestui tribe. Take this and go to the ancestral spirit! Pass the ultimate test that he gives you and receive acknowledgement as an Overlord! You shall learn the splendid history and honorable traditions of our Orc race. Hurry up and get to work! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-09.html new file mode 100644 index 0000000000..a127077fc0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-09.html @@ -0,0 +1,3 @@ +Flame Lord Kakai:
+What, have you not left yet?! Visit Ancestor Martankus in the Cave of Trials! Hurry! The one who hesitates forfeits the right to become an Overlord! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-10.html new file mode 100644 index 0000000000..a4de5d5b4b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-10.html @@ -0,0 +1,3 @@ +Flame Lord Kakai:
+Since the days of old, the ancestral spirits have tested all of the tribal Chiefs and Lords before bestowing authority upon them. The time for your test has come! Complete the task that the ancestral spirit Marutankus has for you in order to prove your potential of becoming a Lord! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-11.html new file mode 100644 index 0000000000..7707eb32bb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30565-11.html @@ -0,0 +1,4 @@ +Flame Lord Kakai:
+Immortal Flame! The fire bestowed upon us at the beginning of the world by Pa'agrio! The spark that lights our temple and town, day and night! Each year, the Shaman that attempts the Trial of the Lord receives this from the ancestral spirits and comes back to create a new blaze on the Torches of the temple and town! Now you have earned the right to receive the mark of the lord!
+I am proud of you, descendant of the courageous Orc race! May you accept the will of the ancestors to become a great ruler that leads the mighty Orc race to an honorable future! The trial has passed! Take the mark of the lord! Tejakar Oroka! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30566-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30566-01.html new file mode 100644 index 0000000000..292efca755 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30566-01.html @@ -0,0 +1,5 @@ +Atuba Chief Varkees:
+Dekara Lamchar Kakai! All praise the great Kakai, Lord of the Flame of Pa'agrio! I see by the necklace you wear that you seek the Lord's judgment! Excellent!
+I, Varkees, chief of the Atuba, will gladly share my knowledge with you. Tribes require symbols to rally around. Each tribe has its own unique symbol, called a totem. Once you understand the power that the totem bestows on our Atuba fighters, your skills will identify you as their lord.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30566-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30566-02.html new file mode 100644 index 0000000000..9a7218bae8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30566-02.html @@ -0,0 +1,4 @@ +Atuba Chief Varkees:
+Ah, you didn't know about the Atuba tribe's totem? You've never heard of the Pointed Fang?! Made from the fang of an enemy Orc, it is a powerful item.
+Go to the southern part of our lands and there slay the lowly Orcs who have forfeited their honor and acquire their fangs! Ah, but first go to Seer Manakia in the Town of Giran and show him this amulet. He will tell you more about the Orcs you must face. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30566-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30566-03.html new file mode 100644 index 0000000000..e1df187eb5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30566-03.html @@ -0,0 +1,3 @@ +Atuba Chief Varkees:
+Seek out Seer Manakia in the Town of Giran! Obey his orders to acquire the fangs of those dishonorable Orcs who lurk near the town. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30566-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30566-04.html new file mode 100644 index 0000000000..d236aa54e4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30566-04.html @@ -0,0 +1,4 @@ +Atuba Chief Varkees:
+Welcome back, young Shaman! I have already heard how you slew those dishonorable Orcs near Giran. I hope the experience of killing your fellow Orcs has shown you how ruthless we Atuba can be.
+Truly, you have earned the Pointed Fang Totem. I, Varkees of the Atuba, salute your skill and fighting spirit! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30566-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30566-05.html new file mode 100644 index 0000000000..06a355b066 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30566-05.html @@ -0,0 +1,3 @@ +Atuba Chief Varkees:
+Greetings, you who enforce the judgment of the Lord! You have already been acknowledged by me, so go and present our tribe's totem to the Flame Lord. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30567-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30567-01.html new file mode 100644 index 0000000000..282927da25 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30567-01.html @@ -0,0 +1,5 @@ +Neruga Chief Tantus:
+Tejakar Pa'agrio! Praise the Lord of the Flame! I see by the necklace you are wearing that you are a Sorcerer undergoing the Test of the Lord! I, Tantus, undefeated Chief of the Neruga tribe shall teach you...
+The bond that ties all tribes and kinships together is not blood but the singular consciousness of our entire race! This common mind is symbolized by the totem of each tribe. Once you have an understanding of the totem of the Warriors of Neruga, I will acknowledge you as a Monarch! Now you must find the materials that compose the Neruga tribal totem!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30567-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30567-02.html new file mode 100644 index 0000000000..35aa8f139e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30567-02.html @@ -0,0 +1,4 @@ +Neruga Chief Tantus:
+Are you sure you know nothing about the Neruga tribe's totem? The totem of the undefeated Nerugas, the people who take pride in our long history, is the 'axe and arrow!' This symbol contains the spirit of the Nerugas who never back off, until we have defeated our enemy!
+The materials that are needed for making the totem are the Negura axe blade used in rituals, and one thousand Bone Arrows! Procure all of these and bring them to me! You can get the axe blade from Trader Jakal. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30567-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30567-03.html new file mode 100644 index 0000000000..1c6494ae02 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30567-03.html @@ -0,0 +1,3 @@ +Neruga Chief Tantus:
+Didn't you hear me?! Bring me the Negura axe blade and one thousand Bone Arrows! Didn't I tell you? Ask Trader Jakal about the axe blade! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30567-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30567-04.html new file mode 100644 index 0000000000..082bfe1f3a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30567-04.html @@ -0,0 +1,4 @@ +Neruga Chief Tantus:
+Young one, you have found the materials needed for making the totem of Neruga. I bet you have learned much about the spirit of the Neruga tribe!
+Now I, Tantus, the chief of the Neruga tribe shall give you the 'Axe of Ceremony.' It is proof that the Neruga Chief has acknowledged your abilities! If you bring this to the Flame Lord Kakai, he will also approve your abilities! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30567-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30567-05.html new file mode 100644 index 0000000000..f4afe7386c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30567-05.html @@ -0,0 +1,3 @@ +Neruga Chief Tantus:
+Didn't you already receive the 'Axe of Ceremony'? Upon receiving the totem, it means that you have been acknowledged by the Neruga Chief! So, go now and show the Axe of Ceremony to the Flame Lord! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30568-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30568-01.html new file mode 100644 index 0000000000..3fff3b3fd4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30568-01.html @@ -0,0 +1,5 @@ +Urutu Chief Hatos:
+Young Shaman of the tribe, you shall remember! At one time we ruled the world and brought others to their knees before our awesome power... You must never forget! Our cities burned and our people killed by our enemies... You must remember!
+You who will take the Test of the Lord! If you wish to be recognized as possessing the qualifications of the Lord, you must know the true meaning of the totem which we, the Urutu tribe, serve.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30568-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30568-02.html new file mode 100644 index 0000000000..04e6481db0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30568-02.html @@ -0,0 +1,6 @@ +Urutu Chief Hatos:
+You really don't know anything about the totem of our Urutu tribe?! The totem of our tribe is a skull with two swords! We use the head of the betrayer Orcs to make this totem! Our totem is a solemn warning for the betrayers who stained our tribe's honor! It is also a sign of strong will that we shall never stop until we have punished every single betrayer!
+If you wish to understand the meanings of the Urutu totem, you must bring the 2 materials needed to make it. They are the Blade of Urutu and betrayer Orc's Skull! Ask the Blacksmith Sumari about the blade!
+However the Skull of the Betrayer, you must find it yourself! Recently, in the area called Timak Outpost in the southwestern part of the Town of Oren, Orcs of the Timak tribe have been gathering. They are different from the other Orcs. They are very strong. But they are no exception to the fact that we will punish all those betrayers! You'll have to kill the Timak Orcs and gather 10 skulls from them. I suppose it will be too hard for you to do such thing all alone, so I'll let you use some help from your friends. But remember! You must chop off the betrayer's head with your own hands!
+Is it clear now?! What you should do?! Find the Blade of Urutu! And gather 10 Skulls of the Timak Orcs! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30568-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30568-03.html new file mode 100644 index 0000000000..7786721e6f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30568-03.html @@ -0,0 +1,3 @@ +Urutu Chief Hatos:
+Did you forget already about your duties?! You must find the materials needed for making the Urutu's totem! The materials are the blade of the Urutu sword, and 10 skulls of Timak Orcs, the betrayers! About the blade, you should ask the Blacksmith Sumari! Tejakar Oroka! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30568-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30568-04.html new file mode 100644 index 0000000000..923614f6f2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30568-04.html @@ -0,0 +1,4 @@ +Urutu Chief Hatos:
+Tejakar Urutu! Ten skulls of Timak Orcs, and the blade of the Urutu sword! You have brought everything that I asked for. Yes, I believe that you learned the true meaning that the skull and swords has to us when you were carrying out this test! Don't forget what you have learned! There will come a day when you shall become the leader of many soldiers and realize how important such symbols as totems are!
+I, Hatos of the Urutu understood well of your abilities! I feel that you are qualified enough for receiving the Mark of the Monarch! You shall have our totem. When you return with this, the Flame Lord will acknowledge you just as I did! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30568-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30568-05.html new file mode 100644 index 0000000000..8c6d795cce --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30568-05.html @@ -0,0 +1,3 @@ +Urutu Chief Hatos:
+The totem that you are holding in your hands is the holiest object of the Urutu tribe. It also serves as a warning for betrayers and a symbol of our resolve, stronger than death! And above all, it serves notice that I, Hatos, Chief of the Urutu tribe have acknowledged you! Do not forget the meaning of the skull with a sword stuck in it! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30641-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30641-01.html new file mode 100644 index 0000000000..0d0f9b18d6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30641-01.html @@ -0,0 +1,5 @@ +Dudamara Chief Takuna:
+Tejakar Oroka! I am Takuna, chieftain of the Dudamara tribe! I will punish betrayers by order of the Lord of Flame.
+I see by your necklace that you must be a Shaman on the Examination of the Lord! Since ancient times our tribe has been known as an 'intelligent' tribe because we have produced more Shamans and clever men than any other tribe. If you want to join our tribe as a Lord, you must understand the power of our symbol, the spider totem!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30641-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30641-02.html new file mode 100644 index 0000000000..6184bd7751 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30641-02.html @@ -0,0 +1,4 @@ +Duda-Mara Chief Takuna:
+Don't you know anything about the Duda-Mara tribe's totem? Our totem is the giant spider! Spinning a web and staying completely still with icy patience until the enemy falls into the trap. And once they do, we finish them off with stealth as only a predator can! This is the way our tribe fights!
+If you want to understand the meaning of our totem, gather the materials to make the totem! You'll need feelers and legs of spiders, but not just any spider! They must be strong and fierce spiders! I heard there are marsh spiders in the Cruma Marshlands. Collect 10 feelers and legs of those spiders and bring them to me! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30641-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30641-03.html new file mode 100644 index 0000000000..5fbdf98134 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30641-03.html @@ -0,0 +1,3 @@ +Duda-Mara Chief Takuna:
+Why are you back? 10 feelers and legs are required to create the Duda-Mara totem! Giant marsh spiders lurk in the Cruma Marshlands within the lands of Dion. Hunt the spiders and get the materials you need! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30641-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30641-04.html new file mode 100644 index 0000000000..51745fe8b5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30641-04.html @@ -0,0 +1,4 @@ +Duda-Mara Chief Takuna:
+Tejakar Oroka! You've done a fine job! Spinning a web with intelligence, patience, and boldness reveals your warrior spirit of the spider!
+I shall give you this 'crafted spider brooch' as a symbol of your intelligence, akin to the spider's. Take it to Flame Lord Kakai and you will be admitted! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30641-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30641-05.html new file mode 100644 index 0000000000..e2f5e02b1d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30641-05.html @@ -0,0 +1,3 @@ +Duda-Mara Chief Takuna:
+The brooch that I gave you is a symbol of your intelligence akin to the spider's. If you want to complete the Trial of the Lord, go see Flame Lord Kakai and boastfully show him the totem of Duda-Mara right away. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30642-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30642-01.html new file mode 100644 index 0000000000..5f703f64f9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30642-01.html @@ -0,0 +1,6 @@ +Gandi Chief Chianta:
+Behold the cry of the wind and the trembling of the earth! Feel the fire of combat surging in your veins!
+The time of chaos draws nigh, and with it endless war, confusion, massacre, and battle! I, Gandi Chief Chianta, decree that in order to survive you must grow stronger! Only the strongest shall inherit the new age!
+Ah, another young Shaman taking the Test of the Lord? The powers of the sword and magic alone are not enough to earn the authority of the flame! You must also comprehend the source of all power and honor, the sacRed Totem of our Gandi tribe!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30642-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30642-02.html new file mode 100644 index 0000000000..5a46a3b163 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30642-02.html @@ -0,0 +1,5 @@ +Gandi Chief Chianta:
+Do you truly not know anything about the Gandi tribe totem? Our tribal totem is a line that connects two circles! The two circles represent life and death and are interconnected, forming a larger circle! The warriors of the Gandi tribe, who fight to the death in order to feel more alive, know well the meaning of the circles!
+The line connecting the circles is represented by a monster eye and you'll understand why once you've seen a monster eye.
+Young Shaman, you will need the cornea of a monster eye in order to create the Gandi totem! They say that a peculiar breed of monster eye roams near the Ivory Tower of Oren. Apparently these monster eyes have been strengthened by some strange spell cast by a Mystic in the Ivory Tower. Hunt those monster eyes and bring me twenty cornea! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30642-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30642-03.html new file mode 100644 index 0000000000..6b9adfe133 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30642-03.html @@ -0,0 +1,3 @@ +Gandi Chief Chianta:
+You've come back already? If you wish to understand the meaning of the Gandi totem, and to receive my acknowledgement, you must bring me twenty cornea from the monster eye! The specific breed of monster eye that you should hunt is said to wander the grounds close to the Ivory Tower of Oren. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30642-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30642-04.html new file mode 100644 index 0000000000..395032242a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30642-04.html @@ -0,0 +1,3 @@ +Gandi Chief Chianta:
+You have brought back all of the monster eye cornea! Well done, young Shaman! I trust you understand now the significance of the line that connects the two circles. Now I, Gandi Chief Chianta, will give you a monster eye wood carving, the symbol of our tribe. This totem signifies that you have received the acknowledgement of the Gandi tribe Chief. Take this to Flame Lord Kakai! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30642-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30642-05.html new file mode 100644 index 0000000000..a3eb63c97b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30642-05.html @@ -0,0 +1,3 @@ +Gandi Chief Chianta:
+Young Shaman, contemplate the meaning of the line that connects the 2 circles. It symbolizes the neverending cycle of life and death, and is a definitive symbol for Orc Warriors. We feel most alive on the battlefield with death alongside us. You must not forget this no matter where your path takes you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30643-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30643-01.html new file mode 100644 index 0000000000..97e1a0c40d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30643-01.html @@ -0,0 +1,5 @@ +First Orc:
+I am the first and the last Orc, the sole receiver of Pa'agrio's energy, the Hierarch of all Orcs! Though my physical form is gone and my soul hangs on by a thread, I linger to look after my proud Orc descendants!
+In the beginning, Pa'agrio created me from the essence of fire. My body was forged in the eternal flame, and my power would destroy mountains! My powers rivaled the gods'! When Pa'agrio ordered me to earth, I was set upon and killed by the jealous gods.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30643-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30643-02.html new file mode 100644 index 0000000000..372c74bafa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30643-02.html @@ -0,0 +1,4 @@ +First Orc:
+They were obviously jealous of the fact that that I, the First Orc, was much stronger than their puny creations. When Pa'agrio ordered me here, they schemed to use the abundant water of this earth to extinguish my inner fire, to harden the lava that flows in my veins.
With my last dying breath I gave birth to the fathers of the 7 tribes, in whom I imbued my powers of honor and flame. They also received my secrets of strength through endless training. This same character is within you. Never ignore the spiritual flame that burns within...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30643-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30643-03.html new file mode 100644 index 0000000000..d597f74da9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30643-03.html @@ -0,0 +1,5 @@ +First Orc:
+The 7 tribes are Hestui, Ragna, Atuba, Neruga, Urutu, Duda-Mara, and Gandi! The Ragna tribe betrayed our race and turned away from my teachings! Their impertinence still galls me. My soul cannot rest!
+I heard of your punishment of the Ragna tribe betrayers on my behalf! You have partially assuaged my rage, and now you shall have your reward!
+May you become a great leader! Tejakar Oroka! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-01.html new file mode 100644 index 0000000000..2bfef6ef41 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-01.html @@ -0,0 +1,5 @@ +Ancestor Martankus:
+I am Martankus from Hestui tribe! I have been dead for a thousand years and though my body has gone, my spirit remains to watch over my descendents.
+Tell me, Shaman of Flame, why do you seek me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-02.html new file mode 100644 index 0000000000..c0f8f10a53 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-02.html @@ -0,0 +1,5 @@ +Ancestor Martankus:
+I can tell by the grizzly tooth necklace that you wear that Kakai has sent you. So, you wish to take the Test of the Lord! You must learn of your ancestors' history first! Now, listen closely to what I say!
+A long time ago, Pa'agrio the Lord of Flame created the First Orc. The First Orc was made of flame and hot lava, and came to this land to control the chaos. He came first to this place where you stand, known now as the Cave of Trials.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-03.html new file mode 100644 index 0000000000..131dc54da9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-03.html @@ -0,0 +1,8 @@ +Ancestor Martankus:
+The First Orc, born of Pa'agrio's flame, was a very powerful being.
+The gods of wind, earth and water were jealous of his power and sought to kill him.
+Eventually they were successful, but not before the mighty Orc created, with his last dying breath, the originators of the 7 tribes.
+I was among them, the originator of the Hestui tribe ...
+We originators of the 7 tribes followed the teachings of the first Orc and worked hard to make our tribes prosperous. After 108 Orc tribes had taken root in this land we knew that our purpose was accomplished. We came to this cave, destroyed our exhausted bodies and left only our souls to watch over our descendants and test young Shamans who want to be the Lord of the Orcs.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-04.html new file mode 100644 index 0000000000..826b274792 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-04.html @@ -0,0 +1,6 @@ +Ancestor Martankus:
+Becoming a Lord of Orcs requires a suitable test. Your test is to calm the soul of the first Orc, who died unfairly by killing the betrayer of the seven tribes!
+You should know, there were actually seven preceding tribes before our own. However, after the original seven went into eternal sleep, one tribe betrayed our race and all became chaos. Because of the betrayal, we have forgotten the teachings of the first Orc and wasted thousands of years fighting each other.
+The tribe who betrayed the seven tribes is the Ragna! You must find Ragna Orcs and punish them! That is the only way to appease the furious spirit of the first Orc.
+In this very moment, the Ragna Orcs have come into our tribe's land! How dare those dirty betrayers come onto the Immortal Plateau! This grievous, indignant matter cannot be left unpunished! Destroy every Ragna Orc in sight! As proof of your merciless punishment, bring one of their heads! We shall not forgive the ones who tainted our great history! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-05.html new file mode 100644 index 0000000000..fbb6c3ecc7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-05.html @@ -0,0 +1,4 @@ +Ancestor Martankus:
+Punish that dirty betrayer's tribe, the Ragna Orcs! Only that will quiet the first Orc's anger after all these long years! This is what you must do!
+At this very moment, they are invading our territory. This grievous, indignant matter cannot be left unpunished! Find and destroy the Ragna Tribe, who dirty the Immortal Plateau with their presence! For proof of your merciless punishment, bring back one of their heads! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-06.html new file mode 100644 index 0000000000..87ea7bb336 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-06.html @@ -0,0 +1,6 @@ +Ancestor Martankus:
+What is this? It is a notice from the betrayer, the Ragna Chief! They say they will make a Chief of the one who kills the Flame Lord! This is an outrage! Betrayer's blood is even in their bones!
+You, brave Shaman, you have punished betrayer's tribe as I asked you. Proud of you! I acknowledge your service and hereby give you the Immortal Flame. Give this to Kakai!
+Oh! First Orc! He will personally congratulate your bravery! Although it is but a window to his soul, you will be able to speak with him for a while by using my power. What do you think? Would you like to meet the first Orc?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-07.html new file mode 100644 index 0000000000..6a52a48c66 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-07.html @@ -0,0 +1,3 @@ +Ancestor Martankus:
+I shall use my powers to conjure the spirit of the First Orc. Behold his power and learn! I know you will make your ancestors proud!! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-08.html new file mode 100644 index 0000000000..b54ba6cb01 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/30649-08.html @@ -0,0 +1,3 @@ +Ancestor Martankus:
+You have passed the test of the Lord. Now take this Immortal Flame to my descendant, your Lord, Kakai. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/Q00232_TestOfTheLord.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/Q00232_TestOfTheLord.java new file mode 100644 index 0000000000..7ed6bf5219 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00232_TestOfTheLord/Q00232_TestOfTheLord.java @@ -0,0 +1,709 @@ +/* + * 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.Q00232_TestOfTheLord; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.Location; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Test Of The Lord (232) + * @author ivantotov + */ +public final class Q00232_TestOfTheLord extends Quest +{ + // NPCs + private static final int SEER_SOMAK = 30510; + private static final int SEER_MANAKIA = 30515; + private static final int TRADER_JAKAL = 30558; + private static final int BLACKSMITH_SUMARI = 30564; + private static final int FLAME_LORD_KAKAI = 30565; + private static final int ATUBA_CHIEF_VARKEES = 30566; + private static final int NERUGA_CHIEF_TANTUS = 30567; + private static final int URUTU_CHIEF_HATOS = 30568; + private static final int DUDA_MARA_CHIEF_TAKUNA = 30641; + private static final int GANDI_CHIEF_CHIANTA = 30642; + private static final int FIRST_ORC = 30643; + private static final int ANCESTOR_MARTANKUS = 30649; + // Items + private static final int ADENA = 57; + private static final int BONE_ARROW = 1341; + private static final int ORDEAL_NECKLACE = 3391; + private static final int VARKEES_CHARM = 3392; + private static final int TANTUS_CHARM = 3393; + private static final int HATOS_CHARM = 3394; + private static final int TAKUNA_CHARM = 3395; + private static final int CHIANTA_CHARM = 3396; + private static final int MANAKIAS_ORDERS = 3397; + private static final int BREKA_ORC_FANG = 3398; + private static final int MANAKIAS_AMULET = 3399; + private static final int HUGE_ORC_FANG = 3400; + private static final int SUMARIS_LETTER = 3401; + private static final int URUTU_BLADE = 3402; + private static final int TIMAK_ORC_SKULL = 3403; + private static final int SWORD_INTO_SKULL = 3404; + private static final int NERUGA_AXE_BLADE = 3405; + private static final int AXE_OF_CEREMONY = 3406; + private static final int MARSH_SPIDER_FEELER = 3407; + private static final int MARSH_SPIDER_FEET = 3408; + private static final int HANDIWORK_SPIDER_BROOCH = 3409; + private static final int ENCHANTED_MONSTER_CORNEA = 3410; + private static final int MONSTER_EYE_WOODCARVING = 3411; + private static final int BEAR_FANG_NECKLACE = 3412; + private static final int MARTANKUS_CHARM = 3413; + private static final int RAGNA_ORC_HEAD = 3414; + private static final int RAGNA_CHIEF_NOTICE = 3415; + private static final int IMMORTAL_FLAME = 3416; + // Reward + private static final int MARK_OF_LORD = 3390; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monster + private static final int MARSH_SPIDER = 20233; + private static final int BREKA_ORC_SHAMAN = 20269; + private static final int BREKA_ORC_OVERLORD = 20270; + private static final int ENCHANTED_MONSTEREYE = 20564; + private static final int TIMAK_ORC = 20583; + private static final int TIMAK_ORC_ARCHER = 20584; + private static final int TIMAK_ORC_SOLDIER = 20585; + private static final int TIMAK_ORC_WARRIOR = 20586; + private static final int TIMAK_ORC_SHAMAN = 20587; + private static final int TIMAK_ORC_OVERLORD = 20588; + private static final int RAGNA_ORC_OVERLORD = 20778; + private static final int RAGNA_ORC_SEER = 20779; + // Misc + private static final int MIN_LEVEL = 39; + // Locations + private static final Location FIRST_ORC_SPAWN = new Location(21036, -107690, -3038); + + public Q00232_TestOfTheLord() + { + super(232); + addStartNpc(FLAME_LORD_KAKAI); + addTalkId(FLAME_LORD_KAKAI, SEER_SOMAK, SEER_MANAKIA, TRADER_JAKAL, BLACKSMITH_SUMARI, ATUBA_CHIEF_VARKEES, NERUGA_CHIEF_TANTUS, URUTU_CHIEF_HATOS, DUDA_MARA_CHIEF_TAKUNA, GANDI_CHIEF_CHIANTA, FIRST_ORC, ANCESTOR_MARTANKUS); + addKillId(MARSH_SPIDER, BREKA_ORC_SHAMAN, BREKA_ORC_OVERLORD, ENCHANTED_MONSTEREYE, TIMAK_ORC, TIMAK_ORC_ARCHER, TIMAK_ORC_SOLDIER, TIMAK_ORC_SOLDIER, TIMAK_ORC_WARRIOR, TIMAK_ORC_SHAMAN, TIMAK_ORC_OVERLORD, RAGNA_ORC_OVERLORD, RAGNA_ORC_SEER); + registerQuestItems(ORDEAL_NECKLACE, VARKEES_CHARM, TANTUS_CHARM, HATOS_CHARM, TAKUNA_CHARM, CHIANTA_CHARM, MANAKIAS_ORDERS, BREKA_ORC_FANG, MANAKIAS_AMULET, HUGE_ORC_FANG, SUMARIS_LETTER, URUTU_BLADE, TIMAK_ORC_SKULL, SWORD_INTO_SKULL, NERUGA_AXE_BLADE, AXE_OF_CEREMONY, MARSH_SPIDER_FEELER, MARSH_SPIDER_FEET, HANDIWORK_SPIDER_BROOCH, ENCHANTED_MONSTER_CORNEA, MONSTER_EYE_WOODCARVING, BEAR_FANG_NECKLACE, MARTANKUS_CHARM, RAGNA_ORC_HEAD, RAGNA_CHIEF_NOTICE, IMMORTAL_FLAME); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + giveItems(player, ORDEAL_NECKLACE, 1); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 92); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30565-05b.htm"; + } + else + { + htmltext = "30565-05.htm"; + } + } + break; + } + case "30565-05a.html": + case "30558-03a.html": + case "30643-02.html": + case "30643-03.html": + case "30649-02.html": + case "30649-03.html": + { + htmltext = event; + break; + } + case "30565-08.html": + { + if (hasQuestItems(player, HUGE_ORC_FANG)) + { + takeItems(player, ORDEAL_NECKLACE, 1); + takeItems(player, HUGE_ORC_FANG, 1); + takeItems(player, SWORD_INTO_SKULL, 1); + takeItems(player, AXE_OF_CEREMONY, 1); + takeItems(player, HANDIWORK_SPIDER_BROOCH, 1); + takeItems(player, MONSTER_EYE_WOODCARVING, 1); + giveItems(player, BEAR_FANG_NECKLACE, 1); + qs.setCond(3, true); + htmltext = event; + } + break; + } + case "30558-02.html": + { + if (getQuestItemsCount(player, ADENA) >= 1000) + { + takeItems(player, ADENA, 1000); + giveItems(player, NERUGA_AXE_BLADE, 1); + htmltext = event; + } + break; + } + case "30566-02.html": + { + giveItems(player, VARKEES_CHARM, 1); + htmltext = event; + break; + } + case "30567-02.html": + { + giveItems(player, TANTUS_CHARM, 1); + htmltext = event; + break; + } + case "30568-02.html": + { + giveItems(player, HATOS_CHARM, 1); + htmltext = event; + break; + } + case "30641-02.html": + { + giveItems(player, TAKUNA_CHARM, 1); + htmltext = event; + break; + } + case "30642-02.html": + { + giveItems(player, CHIANTA_CHARM, 1); + htmltext = event; + break; + } + case "30649-04.html": + { + if (hasQuestItems(player, BEAR_FANG_NECKLACE)) + { + takeItems(player, BEAR_FANG_NECKLACE, 1); + giveItems(player, MARTANKUS_CHARM, 1); + qs.setCond(4, true); + htmltext = event; + } + break; + } + case "30649-07.html": + { + if (npc.getSummonedNpcCount() < 1) + { + addSpawn(npc, FIRST_ORC, FIRST_ORC_SPAWN, false, 10000); + } + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case MARSH_SPIDER: + { + if (hasQuestItems(killer, ORDEAL_NECKLACE, TAKUNA_CHARM) && !hasQuestItems(killer, HANDIWORK_SPIDER_BROOCH)) + { + if (getQuestItemsCount(killer, MARSH_SPIDER_FEELER) < 10) + { + giveItems(killer, MARSH_SPIDER_FEELER, 2); + if (getQuestItemsCount(killer, MARSH_SPIDER_FEELER) >= 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + else if (getQuestItemsCount(killer, MARSH_SPIDER_FEET) < 10) + { + giveItems(killer, MARSH_SPIDER_FEET, 2); + if (getQuestItemsCount(killer, MARSH_SPIDER_FEET) >= 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case BREKA_ORC_SHAMAN: + case BREKA_ORC_OVERLORD: + { + if (hasQuestItems(killer, ORDEAL_NECKLACE, VARKEES_CHARM, MANAKIAS_ORDERS) && !hasAtLeastOneQuestItem(killer, HUGE_ORC_FANG, MANAKIAS_AMULET)) + { + if (getQuestItemsCount(killer, BREKA_ORC_FANG) < 20) + { + giveItems(killer, BREKA_ORC_FANG, 2); + if (getQuestItemsCount(killer, BREKA_ORC_FANG) >= 20) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case ENCHANTED_MONSTEREYE: + { + if (hasQuestItems(killer, ORDEAL_NECKLACE, CHIANTA_CHARM) && !hasQuestItems(killer, MONSTER_EYE_WOODCARVING)) + { + if (getQuestItemsCount(killer, ENCHANTED_MONSTER_CORNEA) < 20) + { + giveItems(killer, ENCHANTED_MONSTER_CORNEA, 1); + if (getQuestItemsCount(killer, ENCHANTED_MONSTER_CORNEA) >= 20) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case TIMAK_ORC: + case TIMAK_ORC_ARCHER: + case TIMAK_ORC_SOLDIER: + case TIMAK_ORC_WARRIOR: + case TIMAK_ORC_SHAMAN: + case TIMAK_ORC_OVERLORD: + { + if (hasQuestItems(killer, ORDEAL_NECKLACE, HATOS_CHARM) && !hasQuestItems(killer, SWORD_INTO_SKULL)) + { + if (getQuestItemsCount(killer, TIMAK_ORC_SKULL) < 10) + { + giveItems(killer, TIMAK_ORC_SKULL, 1); + if (getQuestItemsCount(killer, TIMAK_ORC_SKULL) >= 10) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case RAGNA_ORC_OVERLORD: + case RAGNA_ORC_SEER: + { + if (hasQuestItems(killer, MARTANKUS_CHARM)) + { + if (!hasQuestItems(killer, RAGNA_CHIEF_NOTICE)) + { + giveItems(killer, RAGNA_CHIEF_NOTICE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, RAGNA_ORC_HEAD)) + { + giveItems(killer, RAGNA_ORC_HEAD, 1); + qs.setCond(5, true); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == FLAME_LORD_KAKAI) + { + if (player.getRace() != Race.ORC) + { + htmltext = "30565-01.html"; + } + else if (player.getClassId() != ClassId.ORC_SHAMAN) + { + htmltext = "30565-02.html"; + } + else if (player.getLevel() < MIN_LEVEL) + { + htmltext = "30565-03.html"; + } + else + { + htmltext = "30565-04.htm"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case FLAME_LORD_KAKAI: + { + if (hasQuestItems(player, ORDEAL_NECKLACE)) + { + if (hasQuestItems(player, HUGE_ORC_FANG, SWORD_INTO_SKULL, AXE_OF_CEREMONY, MONSTER_EYE_WOODCARVING, HANDIWORK_SPIDER_BROOCH)) + { + htmltext = "30565-07.html"; + } + else + { + htmltext = "30565-06.html"; + } + } + else if (hasQuestItems(player, BEAR_FANG_NECKLACE)) + { + htmltext = "30565-09.html"; + } + else if (hasQuestItems(player, MARTANKUS_CHARM)) + { + htmltext = "30565-10.html"; + } + else if (hasQuestItems(player, IMMORTAL_FLAME)) + { + giveAdena(player, 161806, true); + giveItems(player, MARK_OF_LORD, 1); + addExpAndSp(player, 894888, 61408); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = "30565-11.html"; + } + break; + } + case SEER_SOMAK: + { + if (hasQuestItems(player, ORDEAL_NECKLACE, HATOS_CHARM, SUMARIS_LETTER) && !hasAtLeastOneQuestItem(player, SWORD_INTO_SKULL, URUTU_BLADE)) + { + takeItems(player, SUMARIS_LETTER, 1); + giveItems(player, URUTU_BLADE, 1); + htmltext = "30510-01.html"; + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, HATOS_CHARM, URUTU_BLADE) && !hasAtLeastOneQuestItem(player, SWORD_INTO_SKULL, SUMARIS_LETTER)) + { + htmltext = "30510-02.html"; + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, SWORD_INTO_SKULL) && !hasAtLeastOneQuestItem(player, HATOS_CHARM, URUTU_BLADE, SUMARIS_LETTER)) + { + htmltext = "30510-03.html"; + } + break; + } + case SEER_MANAKIA: + { + if (hasQuestItems(player, ORDEAL_NECKLACE, VARKEES_CHARM) && !hasAtLeastOneQuestItem(player, HUGE_ORC_FANG, MANAKIAS_AMULET, MANAKIAS_ORDERS)) + { + giveItems(player, MANAKIAS_ORDERS, 1); + htmltext = "30515-01.html"; + } + else if (hasQuestItems(player, VARKEES_CHARM, ORDEAL_NECKLACE, MANAKIAS_ORDERS) && !hasAtLeastOneQuestItem(player, HUGE_ORC_FANG, MANAKIAS_AMULET)) + { + if (getQuestItemsCount(player, BREKA_ORC_FANG) < 20) + { + htmltext = "30515-02.html"; + } + else + { + takeItems(player, MANAKIAS_ORDERS, 1); + takeItems(player, BREKA_ORC_FANG, -1); + giveItems(player, MANAKIAS_AMULET, 1); + htmltext = "30515-03.html"; + } + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, VARKEES_CHARM, MANAKIAS_AMULET) && !hasAtLeastOneQuestItem(player, HUGE_ORC_FANG, MANAKIAS_ORDERS)) + { + htmltext = "30515-04.html"; + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, HUGE_ORC_FANG) && !hasAtLeastOneQuestItem(player, VARKEES_CHARM, MANAKIAS_AMULET, MANAKIAS_ORDERS)) + { + htmltext = "30515-05.html"; + } + break; + } + case TRADER_JAKAL: + { + if (hasQuestItems(player, ORDEAL_NECKLACE, TANTUS_CHARM) && !hasAtLeastOneQuestItem(player, AXE_OF_CEREMONY, NERUGA_AXE_BLADE)) + { + if (getQuestItemsCount(player, ADENA) >= 1000) + { + htmltext = "30558-01.html"; + } + else + { + htmltext = "30558-03.html"; + } + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, TANTUS_CHARM, NERUGA_AXE_BLADE) && !hasQuestItems(player, AXE_OF_CEREMONY)) + { + htmltext = "30558-04.html"; + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, AXE_OF_CEREMONY) && !hasQuestItems(player, TANTUS_CHARM)) + { + htmltext = "30558-05.html"; + } + break; + } + case BLACKSMITH_SUMARI: + { + if (hasQuestItems(player, HATOS_CHARM, ORDEAL_NECKLACE) && !hasAtLeastOneQuestItem(player, SWORD_INTO_SKULL, URUTU_BLADE, SUMARIS_LETTER)) + { + giveItems(player, SUMARIS_LETTER, 1); + htmltext = "30564-01.html"; + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, HATOS_CHARM, SUMARIS_LETTER) && !hasAtLeastOneQuestItem(player, SWORD_INTO_SKULL, URUTU_BLADE)) + { + htmltext = "30564-02.html"; + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, HATOS_CHARM, URUTU_BLADE) && !hasAtLeastOneQuestItem(player, SUMARIS_LETTER, SWORD_INTO_SKULL)) + { + htmltext = "30564-03.html"; + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, SWORD_INTO_SKULL) && !hasAtLeastOneQuestItem(player, HATOS_CHARM, URUTU_BLADE, SUMARIS_LETTER)) + { + htmltext = "30564-04.html"; + } + break; + } + case ATUBA_CHIEF_VARKEES: + { + if (hasQuestItems(player, ORDEAL_NECKLACE) && !hasAtLeastOneQuestItem(player, HUGE_ORC_FANG, VARKEES_CHARM)) + { + htmltext = "30566-01.html"; + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, VARKEES_CHARM) && !hasAtLeastOneQuestItem(player, HUGE_ORC_FANG, MANAKIAS_AMULET)) + { + htmltext = "30566-03.html"; + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, VARKEES_CHARM, MANAKIAS_AMULET) && !hasQuestItems(player, HUGE_ORC_FANG)) + { + takeItems(player, VARKEES_CHARM, 1); + takeItems(player, MANAKIAS_AMULET, 1); + giveItems(player, HUGE_ORC_FANG, 1); + if (hasQuestItems(player, AXE_OF_CEREMONY, SWORD_INTO_SKULL, HANDIWORK_SPIDER_BROOCH, MONSTER_EYE_WOODCARVING)) + { + qs.setCond(2, true); + } + htmltext = "30566-04.html"; + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, HUGE_ORC_FANG) && !hasQuestItems(player, VARKEES_CHARM)) + { + htmltext = "30566-05.html"; + } + break; + } + case NERUGA_CHIEF_TANTUS: + { + if (hasQuestItems(player, ORDEAL_NECKLACE) && !hasAtLeastOneQuestItem(player, AXE_OF_CEREMONY, TANTUS_CHARM)) + { + htmltext = "30567-01.html"; + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, TANTUS_CHARM) && !hasQuestItems(player, AXE_OF_CEREMONY)) + { + if (!hasQuestItems(player, NERUGA_AXE_BLADE) || (getQuestItemsCount(player, BONE_ARROW) < 1000)) + { + htmltext = "30567-03.html"; + } + else + { + takeItems(player, BONE_ARROW, 1000); + takeItems(player, TANTUS_CHARM, 1); + takeItems(player, NERUGA_AXE_BLADE, 1); + giveItems(player, AXE_OF_CEREMONY, 1); + if (hasQuestItems(player, HUGE_ORC_FANG, SWORD_INTO_SKULL, HANDIWORK_SPIDER_BROOCH, MONSTER_EYE_WOODCARVING)) + { + qs.setCond(2, true); + } + htmltext = "30567-04.html"; + } + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, AXE_OF_CEREMONY) && !hasQuestItems(player, TANTUS_CHARM)) + { + htmltext = "30567-05.html"; + } + break; + } + case URUTU_CHIEF_HATOS: + { + if (hasQuestItems(player, ORDEAL_NECKLACE) && !hasAtLeastOneQuestItem(player, SWORD_INTO_SKULL, HATOS_CHARM)) + { + htmltext = "30568-01.html"; + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, HATOS_CHARM) && !hasQuestItems(player, SWORD_INTO_SKULL)) + { + if (hasQuestItems(player, URUTU_BLADE) && (getQuestItemsCount(player, TIMAK_ORC_SKULL) >= 10)) + { + takeItems(player, HATOS_CHARM, 1); + takeItems(player, URUTU_BLADE, 1); + takeItems(player, TIMAK_ORC_SKULL, -1); + giveItems(player, SWORD_INTO_SKULL, 1); + if (hasQuestItems(player, HUGE_ORC_FANG, AXE_OF_CEREMONY, HANDIWORK_SPIDER_BROOCH, MONSTER_EYE_WOODCARVING)) + { + qs.setCond(2, true); + } + htmltext = "30568-04.html"; + } + else + { + htmltext = "30568-03.html"; + } + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, SWORD_INTO_SKULL) && !hasQuestItems(player, HATOS_CHARM)) + { + htmltext = "30568-05.html"; + } + break; + } + case DUDA_MARA_CHIEF_TAKUNA: + { + if (hasQuestItems(player, ORDEAL_NECKLACE) && !hasAtLeastOneQuestItem(player, HANDIWORK_SPIDER_BROOCH, TAKUNA_CHARM)) + { + htmltext = "30641-01.html"; + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, TAKUNA_CHARM) && !hasQuestItems(player, HANDIWORK_SPIDER_BROOCH)) + { + if ((getQuestItemsCount(player, MARSH_SPIDER_FEELER) >= 10) && (getQuestItemsCount(player, MARSH_SPIDER_FEET) >= 10)) + { + takeItems(player, TAKUNA_CHARM, 1); + takeItems(player, MARSH_SPIDER_FEELER, -1); + takeItems(player, MARSH_SPIDER_FEET, -1); + giveItems(player, HANDIWORK_SPIDER_BROOCH, 1); + if (hasQuestItems(player, HUGE_ORC_FANG, AXE_OF_CEREMONY, SWORD_INTO_SKULL, MONSTER_EYE_WOODCARVING)) + { + qs.setCond(2, true); + } + htmltext = "30641-04.html"; + } + else + { + htmltext = "30641-03.html"; + } + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, HANDIWORK_SPIDER_BROOCH) && !hasQuestItems(player, TAKUNA_CHARM)) + { + htmltext = "30641-05.html"; + } + break; + } + case GANDI_CHIEF_CHIANTA: + { + if (hasQuestItems(player, ORDEAL_NECKLACE) && !hasAtLeastOneQuestItem(player, MONSTER_EYE_WOODCARVING, CHIANTA_CHARM)) + { + htmltext = "30642-01.html"; + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, CHIANTA_CHARM) && !hasQuestItems(player, MONSTER_EYE_WOODCARVING)) + { + if (getQuestItemsCount(player, ENCHANTED_MONSTER_CORNEA) < 20) + { + htmltext = "30642-03.html"; + } + else + { + takeItems(player, CHIANTA_CHARM, 1); + takeItems(player, ENCHANTED_MONSTER_CORNEA, -1); + giveItems(player, MONSTER_EYE_WOODCARVING, 1); + if (hasQuestItems(player, HUGE_ORC_FANG, AXE_OF_CEREMONY, SWORD_INTO_SKULL, HANDIWORK_SPIDER_BROOCH)) + { + qs.setCond(2, true); + } + htmltext = "30642-04.html"; + } + } + else if (hasQuestItems(player, ORDEAL_NECKLACE, MONSTER_EYE_WOODCARVING) && !hasQuestItems(player, CHIANTA_CHARM)) + { + htmltext = "30642-05.html"; + } + break; + } + case FIRST_ORC: + { + if (hasAtLeastOneQuestItem(player, MARTANKUS_CHARM, IMMORTAL_FLAME)) + { + qs.setCond(7, true); + htmltext = "30643-01.html"; + } + break; + } + case ANCESTOR_MARTANKUS: + { + if (hasQuestItems(player, BEAR_FANG_NECKLACE)) + { + htmltext = "30649-01.html"; + } + else if (hasQuestItems(player, MARTANKUS_CHARM) && !hasAtLeastOneQuestItem(player, RAGNA_CHIEF_NOTICE, RAGNA_ORC_HEAD)) + { + htmltext = "30649-05.html"; + } + else if (hasQuestItems(player, MARTANKUS_CHARM, RAGNA_CHIEF_NOTICE, RAGNA_ORC_HEAD)) + { + takeItems(player, MARTANKUS_CHARM, 1); + takeItems(player, RAGNA_ORC_HEAD, 1); + takeItems(player, RAGNA_CHIEF_NOTICE, 1); + giveItems(player, IMMORTAL_FLAME, 1); + qs.setCond(6, true); + htmltext = "30649-06.html"; + } + else if (hasQuestItems(player, IMMORTAL_FLAME)) + { + if (npc.getSummonedNpcCount() < 1) + { + addSpawn(npc, FIRST_ORC, FIRST_ORC_SPAWN, false, 10000); + } + htmltext = "30649-08.html"; + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == FLAME_LORD_KAKAI) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-01.html new file mode 100644 index 0000000000..a18b92c906 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-01.html @@ -0,0 +1,4 @@ +Priestess Vivyan:
+What has an Orc Shaman to do with me? Just name it! I will help you in any way I can!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-02.html new file mode 100644 index 0000000000..fd2ba58f57 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-02.html @@ -0,0 +1,5 @@ +Priestess Vivyan:
+Ah! Commander Kiruna, the only Commander in the whole Orc Kingdom. She fell in love with Paladin Kelhas... The love story of Kelhas and Kiruna is written in the history of the shrine, and I found it so touching that I read it several times.
+Oh, don't give me that look! I know you Orcs don't like to hear about an Orc that fell in love with a Human being. So sorry... but their story... it is so romantic...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-03.html new file mode 100644 index 0000000000..a8df4430e2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-03.html @@ -0,0 +1,6 @@ +Priestess Vivyan:
+Kiruna and Kelhas were Warriors who fought bravely against the army of the devil Beleth. They won every battle, but one day Kelhas was killed by the evil spirits of Beleth. Imagine Kiruna's sorrow when the news reached her that her lover had been killed. A few days after Kelhas's death, she took to the battlefield with grim determination and won a great victory over the army of Beleth.
+But unfortunately she received a mortal wound in the final battle. She was taken to the shrine for treatment, but soon died and was buried beside Kelhas. Some say that she refused treatment...
+Sometimes the feelings which appear to be weak-mindedness can be the source of great power. Do you see?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-04.html new file mode 100644 index 0000000000..44553327f5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-04.html @@ -0,0 +1,4 @@ +Priestess Vivyan:
+According to the records, the graves of Kelhas and Kiruna are in the south of Gludio, a place which has now turned into a Wasteland area. But that was already a thousand years ago... I am not sure if their remains will still be there...
+Perhaps Sarien who knows the area well, might know of its whereabouts! I shall write you a letter. You'd better go and meet him. He is doing commerce near the southern entrance of the Wasteland. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-05.html new file mode 100644 index 0000000000..84df5bdfba --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-05.html @@ -0,0 +1,3 @@ +Priestess Vivyan:
+It is said that the grave of Kiruna was built in the wasteland area. But that was a thousand years ago, so it might have disappeared already. Take the letter that I gave you to Sarien who lives in the southern border of the Wasteland. He knows the area well, so he will be able to give you some help. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-06.html new file mode 100644 index 0000000000..aaf65ebb55 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-06.html @@ -0,0 +1,3 @@ +Priestess Vivyan:
+What a pity. So the grave of Kiruna has disappeared already? It must be the Wasteland ants who dug up the grave. But her remains might still be preserved somewhere deep in the ant tunnel so do not lose hope. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-07.html new file mode 100644 index 0000000000..a7f23c63cd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30030-07.html @@ -0,0 +1,3 @@ +Priestess Vivyan:
+You have recovered every piece of Kiruna's Remains in the Wasteland? That is awesome! I am really surprised at how devoted you Orcs are to respecting your ancestors! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30436-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30436-01.html new file mode 100644 index 0000000000..da83d88b42 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30436-01.html @@ -0,0 +1,5 @@ +Trader Sarien:
+A letter from Priestess Vivyan? The grave of Paladin Kelhas and Commander Kiruna? Well... Surely there were many graves of the Elmoreden era here... But sandwind was vicious, and what's even more, the giant ants excavated the place... I bet that all the graves and the relics in it have disappeared by now.
+Although chances are scarce... I would try the ants tunnel if I were you. According to the adventurers who investigate the Wastelands, they say that the ancient relics are found in the ant tunnel now and then. Perhaps the remains that you are looking for might have been excavated by the ants as well.
+If my guesses aren't wrong, it must be the soldier ants who carry such things as bones and remains. They normally cut things into pieces, such as a human corpse. Well... Perhaps 5 pieces...? I'll give you this illustrated book for reference. It will help you when you are exploring the ant tunnel. Good luck, then! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30436-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30436-02.html new file mode 100644 index 0000000000..98d495b421 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30436-02.html @@ -0,0 +1,4 @@ +Trader Sarien:
+I bet that the grave of the Orc Warrior that you are looking for was already excavated and destroyed. But they say that once in a while, the ancient relics are found in the ant tunnel so if you are lucky enough you might find the bones that you are looking for.
+If my guesses aren't wrong, it must be the soldier ants who carry such things as bones and remains. I think they'll have cut it into 5 pieces more or less. Good luck, then! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30436-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30436-03.html new file mode 100644 index 0000000000..db3a1f17ea --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30436-03.html @@ -0,0 +1,3 @@ +Trader Sarien:
+You finally got what you wanted from the Ant Nest. You Orcs are extremely brave! You will succeed in business if you apply the same patience and skill to it. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-01.html new file mode 100644 index 0000000000..5f96c95848 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-01.html @@ -0,0 +1,6 @@ +Seer Racoy:
+Young shaman, do you seek the remains of the legendary Warrior Kiruna? First you must listen to her story!
+In a time long ago the supreme commander of our army asked for our support in a tough battle with the devil Beleth. Kiruna led a crack contingent off to the battlefield. Kiruna and her soldiers fought bravely against numerous undead and the front line did not waver.
That is, until the dreaded Death Knight Mordreous appeared on the battlefield. The soldiers, overwhelmed by fear and Beleth's magic, began to retreat...
+However, Kiruna was fearless. She took the battlefield alone, singing hymns of victory and slaughtering hundreds of undead, and finally the death Knight Mordreous!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-02.html new file mode 100644 index 0000000000..de9cef9d78 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-02.html @@ -0,0 +1,5 @@ +Seer Racoy:
+After the death of beleth, Kiruna remained in the Human's world and became the Commanding General of the kingdom's west army. Some human poets said that Kiruna fell in love with Kelhas, the Einhasad Paladin, but that's absolute nonsense! Why would an Orc Amazon fall in love with a weak Human!
+Kiruna died after suffering from a mysterious fever. The Humans buried her with the other Human Warriors in the cemetery. It is obvious that a great hero like her should have a grand funeral in the Cave of Trials! However Kiruna herself asked to be buried with the other Human soldiers.
+I don't know where that place is exactly. But I found out that there are records left about Kiruna in the Einhasad temple of this village. Go to the temple and find out about Kiruna's Remains! I also heard that a female Human called Vivyan knows something about it. I shall give you this totem. It is a precious thing which contains our ancestor's spirits. I think it will help you in finding the heroine's remains. Now it is time for you to leave. Meet Priestess Vivyan of the village temple. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-03.html new file mode 100644 index 0000000000..ccbb889843 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-03.html @@ -0,0 +1,3 @@ +Seer Racoy:
+What are you waiting for? Ask about Kiruna at the Temple of Einhasad of this village. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-04.html new file mode 100644 index 0000000000..40ad789ae6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-04.html @@ -0,0 +1,3 @@ +Seer Racoy:
+She is buried in the Wastelands. Where, I do not know. But you should not give up, young shaman. As long as the blessings of our ancestors are with us, I am sure you'll find her remains. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-05.html new file mode 100644 index 0000000000..8411cc144a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-05.html @@ -0,0 +1,3 @@ +Seer Racoy:
+It is just as the Human merchant said. If the grave of Kiruna is somewhere out there in the Wasteland, surely it must have been excavated by the ants in the area. If you have the patience and probe the ants, I am sure you will be able to regain our great ancestor's remains! Tejakar Oroka! According to the revelation, it says that the bones are divided into 5 pieces. Gather all 5 of them! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-06.html new file mode 100644 index 0000000000..fb6b39773d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-06.html @@ -0,0 +1,4 @@ +Seer Racoy:
+It pains my soul to see the body of Kiruna in this condition. I will enbalm the body according to our funeral traditions.
+...Now, young shaman, carry these contemplatively. Handle them gently. Always remember the fighting spirit of our great heroine, no matter what road you take in the future. The glory of our forefathers who fought so nobly for our tribe is within you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-07.html new file mode 100644 index 0000000000..65889e9c02 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30507-07.html @@ -0,0 +1,3 @@ +Seer Racoy:
+Young shaman, I see that you have not yet completed the Test of War Spirit. But there is no need to worry. I am quite sure that before long you shall become one of the greatest Warcryers, praising loudly the glory of Pa'agrio! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-01.html new file mode 100644 index 0000000000..cd886fe000 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-01.html @@ -0,0 +1,4 @@ +Seer Somak:
+You have no allegiance to the Lord of Flame! Why are you here! Have you come to steal the secrets of Orc magic? Go now, before I summon the war spirits and tear off your head!
+(Quest for Orc Shaman characters of level 39 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-02.html new file mode 100644 index 0000000000..4c17e8e4cf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-02.html @@ -0,0 +1,4 @@ +Seer Somak:
+A Warcryer is a supreme level Mystic who deals with the war spirits! Their fierce roar makes our soldiers burn with combativeness and dooms the enemies! Their hymn inspires our troop's morale and freezes the heart of our enemies!
Thou, great Warrior of the Orcs! Do not forget that the Mystic is one of the most appreciated strengths on the battlefield! Thou shall bow the knees to their bright wisdom and unyielding spirits!
+(Quest for Orc Shaman characters of level 39 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-03.html new file mode 100644 index 0000000000..0c3d466d9e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-03.html @@ -0,0 +1,5 @@ +Seer Somak:
+A Warcryer is a supreme level Mystic who deals with the war spirits! Their fierce roar makes our soldiers burn with combativeness and dooms the enemies! Their hymn inspires our troop's morale and freezes the heart of our enemies!
+Thou, Shaman of Orc! If you truly wish to be Warcryer, you can't avoid the War Spirit's Trial! However, I, Seer Somak say! You are still unprepared!
+(Quest for Orc Shaman characters of level 39 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-04.htm new file mode 100644 index 0000000000..d04e4b9a25 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-04.htm @@ -0,0 +1,5 @@ +Seer Somak:
+A Warcryer is a supreme level Mystic who deals with the war spirits! Their fierce roar makes our soldiers burn with combativeness and dooms the enemies! Their hymn inspires our troop's morale and freezes the heart of our enemies!
+Thou, Shaman of Orc! If you truly wish to be Warcryer, you can't avoid the War Spirit's Trial! The war spirits are the ghosts of our ancestors who died in the battlefields! You must be able to win their power over to your side! That is what the trial is all about! Will you challenge the trial?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05.htm new file mode 100644 index 0000000000..6b59ea4fb1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05.htm @@ -0,0 +1,9 @@ +Seer Somak:
+To pass the test, you must first find the bones of the ancestors who passed away while fighting in a war! Then through a trial thou can win over the power of the spirits to your side!
+The kingdom of Aden is a place where numerous Orc Warriors fought and bled! However, now it is a territory where Humans reign, and our glorious history is gradually being forgotten! Isn't it reasonable for us to celebrate the victory we achieved in this land, and collect the remains and place them on the Immortal Plateau?
+I, seer Somak investigated the biography of our tribe, which was handed down from mouth to mouth, and found out about 4 warriors. Braki the clever, Kiruna the brave, Tonar the super, and Hermodt the indomitable! When you find the bones of all 4, bring them to me!
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05.html new file mode 100644 index 0000000000..6b59ea4fb1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05.html @@ -0,0 +1,9 @@ +Seer Somak:
+To pass the test, you must first find the bones of the ancestors who passed away while fighting in a war! Then through a trial thou can win over the power of the spirits to your side!
+The kingdom of Aden is a place where numerous Orc Warriors fought and bled! However, now it is a territory where Humans reign, and our glorious history is gradually being forgotten! Isn't it reasonable for us to celebrate the victory we achieved in this land, and collect the remains and place them on the Immortal Plateau?
+I, seer Somak investigated the biography of our tribe, which was handed down from mouth to mouth, and found out about 4 warriors. Braki the clever, Kiruna the brave, Tonar the super, and Hermodt the indomitable! When you find the bones of all 4, bring them to me!
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05a.html new file mode 100644 index 0000000000..57a95257ff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05a.html @@ -0,0 +1,6 @@ +Seer Somak:
+Braki of the Duda-Mara tribe, fought against the 3000 army troops of Elmore with only 200 soldiers, some 500 years ago. He didn't yield the camp site of Horsehoof Valley and resisted for 100 days! Braki took advantage of the steep landscape and overcame the inferiority in numbers! Moreover, there were only 3 Sorcerers in the camp but he made the most out of them and managed to weaken the leader and cause disruption among the enemies.
+But the very day the back-up troops arrived, Braki died of hunger, thirst, and fever! It is said that he grieved bitterly about the fact that he couldn't die in the battlefields! He was an Orc who was not only clever in the head, but also burning with combativeness in his heart!
+According to my research, Braki's Remains are in the hands of a Human evil magician called Orim the Shadow. How dare a filthy and wicked magician touch the remains of our honored ancestor! I shall not tolerate that! Hurry and win back the remains of Braki from him!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05b.html new file mode 100644 index 0000000000..ce6a97d9bf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05b.html @@ -0,0 +1,6 @@ +Seer Somak:
+Kiruna, the amazon of Urutu! I shall tell you about she who knew no fear even in front of the hundreds and thousands of monsters.
+When the war between devil beleth and the Elmoreden empire broke, we Orcs sent out a crack contingent at the request of the Human emperor! While the weak Human soldiers were busy running away from the dark troop of beleth, Kiruna alone roared out victory and knocked down hundreds of undead and struck death Knight Mordreous to death!
+Seer Racoy of Gludio town will tell you more about Kiruna the brave! Hurry to meet him! He will tell you where you can find the bones of Kiruna!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05c.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05c.html new file mode 100644 index 0000000000..cd95f2d2ad --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05c.html @@ -0,0 +1,6 @@ +Seer Somak:
+Tonar of Hetsui tribe! He was a superman who had the strength to knock down a giant wild boar with his bare hands!
+Long time ago, in the land which is now called Oren, there was a fierce battle between the Orcs and the lizardmen. The Hetsui warriors lead by Tonar won an overwhelming victory over the lizardmen and drove them out of the kingdom!
+But the Lizardman shamans played some wicked tricks on him, and he died. Afterwards they even stole his remains and ran away! You must win back the remains of the great hero from those inferior tribes! Go right now to the village of Oren and meet Seer Pekiron! He will tell you about the lizardmen who have the remains of Tonar!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05d.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05d.html new file mode 100644 index 0000000000..99bc8e1eb2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05d.html @@ -0,0 +1,6 @@ +Seer Somak:
+Hermodt of the Neruga tribe! He is the one who killed more medusas than anyone else, during our bloody battle with the serpents!
+At that time, the Human tribe who were under our protection asked us for aid, so we sent troops to help the Human beings. Hermodt who lead that troop was called 'the indomitable warrior because he had a strong body which could fight for 3 days and 3 nights, and had the patience not to yield to the enemies.
+His body is said lie in the town of Giran. Hear the story in detail from Seer Manakia of Giran! And bring back the remains of Hermodt!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05e.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05e.htm new file mode 100644 index 0000000000..5810fb5aee --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-05e.htm @@ -0,0 +1,10 @@ +Seer Somak:
+To pass the test, you should first find the ashes of the ancestors who lost their lives warring for this land! With their ashes, you can use a ritual to harness the power of their spirits.
+Perhaps even more important, we can finally lay their remains to rest in the Immortal Plateau. What more fitting tribute can there be to our ancestors, whose victories once sounded from one end of this land to the other. Ah, but that was before Aden Kingdom, before the Humans began their rule. Now even our own Orc children forget our noble heritage!
+I, Seer Somak, have long studied our tribe's chronicle, handed down from generation to generation, and have learned the identity of the 4 warriors whose ashes you must recover: Braki the Clever, Kiruna the Brave, Tonar the Super and Hermodt the Indomitable!When you have found all of these great warriors' ashes, return here.
+Before you go, take this Dimension Diamond. You can trade it for something special from the village gatekeeper to assist you on your journey.
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-06.html new file mode 100644 index 0000000000..ff0039257c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-06.html @@ -0,0 +1,8 @@ +Seer Somak:
+To pass the test, you must first find the bones of the ancestors who died in battle! Then through a trial you can win over the power of the spirits to your side!
+The ancient heroes that I told you are 4 altogether! Braki the clever, Kiruna the brave, Tonar the super, and Hermodt the indomitable! Find their remains and bring them back to me!
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-07.html new file mode 100644 index 0000000000..bde71234c0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-07.html @@ -0,0 +1,5 @@ +Seer Somak:
+Tejakar Oroka! You have found the remains of all 4 heroes! I shall place these bones in the blessed pot. Meanwhile, you prepare for the next stage of the trial.
+To win over the power hidden in the remains of heroes, you must go through the War Spirit's Trial. To carry out this holy and solemn trial, you must see the forefather spirit Martankus in the Cave of Trials. But before seeing him, you should prepare an appropriate present for him.
+I think he will be most pleased to receive the heads of the betrayers, so go to the south of Aden and kill the Tamlin Orcs there. Bring back their heads as the present to give to Martankus! You must bring at least 13 heads! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-08.html new file mode 100644 index 0000000000..bb91dac1cc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-08.html @@ -0,0 +1,4 @@ +Seer Somak:
+Death to the filthy betrayers! That is what they asked for! Their decapitated heads will be the best gift for our ancestor spirits.
+Set off now to the north of Aden! Kill the Tamlin Orcs camping in the area and bring back their heads! You must bring at least 13 heads! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-09.html new file mode 100644 index 0000000000..849be631dd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-09.html @@ -0,0 +1,5 @@ +Seer Somak:
+Well done! Death to the filthy betrayers! That is what they asked for! Their decapitated heads will be the best gift for our ancestor spirits.
+Now take the hero's remains to the eternal Holy Land for Orcs, the Immortal Plateau. And meet the forefather spirit Martankus which dwells in the Cave of Trials. To carry out the War Spirit's Trial we need his help for sure.
+If you carry this totem with you, he'll know that you came for the ceremony. Be careful to show your respect to the great ancestors. Politely offer your gift and tell him that you wish to go through the War Spirit's Trial. Tejakar Pa'agrio! May the powers of fire be with you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-10.html new file mode 100644 index 0000000000..b511ed3dfd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30510-10.html @@ -0,0 +1,4 @@ +Seer Somak:
+To carry out the ceremony of the war spirits, you need to see the forefather spirit of Martankus. Now take the heroes' remains to the eternal Holy Land for Orcs, the Immortal Plateau. And meet the forefather spirit Martankus which dwells in the Cave of Trials.
+Remember to show your utmost respect to the great ancestors. Politely offer your gift and tell him that you wish to go through the War Spirit's Trial. Tejakar Pa'agrio! May the powers of fire be with you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30515-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30515-01.html new file mode 100644 index 0000000000..57c78411ed --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30515-01.html @@ -0,0 +1,6 @@ +Seer Manakia:
+That indomitable Hermodt! The greatest Warrior of the Neruga tribe. If you are here for his remains, first you should hear his story...
+Hermodt was the tribal leader when he set off to kill the serpents threatening his territory. He fought bravely and at last, drove them out.
+Alas he was shot by a poison arrow and died immediately after killing the leader of the serpents, Queen Gorgon! He was a true hero!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30515-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30515-02.html new file mode 100644 index 0000000000..63b81cbb8b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30515-02.html @@ -0,0 +1,5 @@ +Seer Manakia:
+Ever since the kingdom of Orcs first fell, Giran, has been ruled by the Humans. But Humans are weak, so the outsiders we once beat have started attacking again! What a mess!
+Take this totem to begin with which has our ancestors' spirits within it and it will guide you on your way! In eastern Giran, live medusas who are kin to serpents. Slay them and obtain the remains of Hermodt from them! The medusas split the bones into five pieces and distributed them among several of their kind.
+The important remains are held by the Gorgon Queen, Stenoa! There is no doubt that she is the descendent of the Queen that Hermodt killed! I, Seer Manakia, order you to go and kill the Queen of medusas, to revenge the death of Hermodt, and take back his skull! After you've killed the Queen, go after the other medusas as well to recover his rib-bones, backbone, arm bones, and shinbones too! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30515-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30515-03.html new file mode 100644 index 0000000000..13f9e3a694 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30515-03.html @@ -0,0 +1,4 @@ +Seer Manakia:
+Didn't I appoint you a task? I told you to recover Hermodt's Remains, from the medusas!
+Hurry up and get to work! Go and kill those medusas, and recover the remains of Hermodt! And take heed! The important remains are possessed by the Gorgon Queen, Stenoa! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30515-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30515-04.html new file mode 100644 index 0000000000..01c130ea6c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30515-04.html @@ -0,0 +1,5 @@ +Seer Manakia:
+That was magnificent, young shaman! You have driven out the medusas and taken back the remains of our fallen hero!
+It is sad to see this Warrior's remains in such poor condition. I cannot feel his spirit while his remains are like this! I, Seer Manakia shall readjust Hermodt's Remains, to a more discernible shape!
+Oh, young Orc, even after you pass the Test and move on to a higher level, you must never forget the spirits of our great heroes! The glory of our forefathers who fought for the tribe! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30515-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30515-05.html new file mode 100644 index 0000000000..e6ac9916c3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30515-05.html @@ -0,0 +1,3 @@ +Seer Manakia:
+Tejakar Oroka! Glory to the great Orcs! Young Shaman, go ahead and finish the Test of the War Spirits, and become a proud Warcryer! I believe in you! You shall be a great Shaman who influences the world with mighty flames! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-01.html new file mode 100644 index 0000000000..598ab87eec --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-01.html @@ -0,0 +1,4 @@ +Orim of the Shadow:
+Nice to meet you, Sorcerer of the Orcs. My name is Orim and my master is the great magician Hardin. What brought you to this desolate place of the shadows of the green dragon Antharas?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-02.html new file mode 100644 index 0000000000..3f5c6a7c2c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-02.html @@ -0,0 +1,7 @@ +Orim of the Shadow:
+You are indeed an Orc... So straightforward... That's right, I have the remains of Braki.
+I am sure that you will attempt to take it from me anyway if I resist giving it to you. I am well aware of the Oak's great power and their devotion to their hero.
+To tell you the truth, I don't want to fight you. I hope you don't take this the wrong way, but if we fight, you will most likely be killed. If possible we should avoid a fight that could be devastating to us both.
+As you know, the remains of Braki are filled with strong magic. If you will find me something that has equal power I shall gladly give you your hero's remains. Doesn't that seem fair?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-03.html new file mode 100644 index 0000000000..786dc7f25a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-03.html @@ -0,0 +1,5 @@ +Orim of the Shadow:
+Then I shall tell you. I want you to find something for me. If you go to northern Dion, there is a place called the Cruma Marshlands. In its center, there is a huge tower from the giant era.
+Inside the tower there dwells all sorts of weird creatures that have a special thing that grows in their bodies. More specifically, it's a strong spirit power dwelling in their bio matter. To solve the secrets of the ancient treasure of Aklantoth's chest, I need that substance.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-04.html new file mode 100644 index 0000000000..2618344fdd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-04.html @@ -0,0 +1,4 @@ +Orim of the Shadow:
+First, I need the eye of a creature called a porta. They call it the eye but in fact it is a small and solid thing like a jewel. And scales of an excuro. Those scales of the excuro are as hard as Steel but once you kill it, it is easy to peel them off. And finally, I need a mordeo talon. It is a silver-white, hook shaped claw. I want you to find ten of each item. All the creatures that I mentioned can be found in the Cruma Tower of northern Dion.
+I have written down our Contract in this document. I know that it may seem absurd to you, but it is meant to prevent any shameful events that may take place later on. Take it, just in case. I will be waiting for your safe return. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-05.html new file mode 100644 index 0000000000..53cd5a541d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-05.html @@ -0,0 +1,4 @@ +Orim of the Shadow:
+Like it is said in the document, I will give you Braki's Remains if you find me the materials that I asked for.
+I will repeat one more time, just to make sure. The things that I need are porta eyes, excuro scales, and mordeo talons. Ten of each is what I need. You can find them all in the Cruma Tower. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-06.html new file mode 100644 index 0000000000..320d4d2423 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-06.html @@ -0,0 +1,3 @@ +Orim of the Shadow:
+Good job, thank you. You have brought ten each of porta eyes, excuro scales, and mordeo talons. Therefore, I shall give you Braki's Remains, as promised. May the shades of light lead you to the truth. Farewell then, Shaman of the Orcs. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-07.html new file mode 100644 index 0000000000..c61e5c5673 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30630-07.html @@ -0,0 +1,3 @@ +Orim of the Shadow:
+Shaman of the Oaks, good to see you again. I am glad that I was able to return the remains of your hero to his people. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30649-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30649-01.html new file mode 100644 index 0000000000..70fe18e0c4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30649-01.html @@ -0,0 +1,7 @@ +Ancestor Martankus:
+Tejakar Oroka! I am Hestui Martankus, Lord of the Grizzly Tribe who died during the war between Men on the Immortal Plateau a thousand years ago!
+My descendent, heed your ancestor!
+I have experienced a thousand years of pain watching the collapse of the kingdom and the disintegration of my race! The unending, unbearable sorrow of seeing my descendents lose the memory of their glorious past.
+My offspring, present me with a gift that matches my dignity and power!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30649-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30649-02.html new file mode 100644 index 0000000000..80896a88b7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30649-02.html @@ -0,0 +1,5 @@ +Ancestor Martankus:
+Death to the traitorous pigs that have deserted the great glory of the Orc kingdom!
+I am satisfied with your offering, now tell me what you want! I, Hestui Martankus, your ancestor, will grant your wish!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30649-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30649-03.html new file mode 100644 index 0000000000..9ad8c147e0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30649-03.html @@ -0,0 +1,10 @@ +Ancestor Martankus:
+Young Shaman of our race, I feel great strength in the bones you brought. They are bones of great heroes, no doubt!
+Take this strength of past Fighters and make it your own. This is the ritual of the war spirit!
+Pass those bones one by one to me. I, the great Martankus, give the power of spirit in the bones to you.
+Braki of the Duda-Mara, I give his cleverness to you!
+Kiruna of the Urutu, I give you her bravery!
+Tonar of the Hestui, I give his will of iron to you!
+Hermodt of the Neruga, I give his faith to you!
+You, a young Shaman of our race, now own the spirits of the great warriors! As proof, you will be issued the Mark of the War Spirit. It will be of great help for becoming a high-level Shaman. Do not forget the fiery spirit when you lead the warriors of your race into war! Tejakar Oroka! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30682-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30682-01.html new file mode 100644 index 0000000000..c313c99532 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30682-01.html @@ -0,0 +1,5 @@ +Seer Pekiron:
+I heard the story from Seer Somak! So, you are looking for the bones of Tonar? Then, first I must tell you about superman Tonar, our great hero!
+As you may know, Tonar lead the crack contingent of Hetsui and drove out all the Leto Lizardmen from Oren. But as a last resort, the lizardmen shaman called out the flame wyrm. One by one, the warriors of Hetsui fell down to the ground by the fire spewing from the Wyrm's mouth. Just then, Tonar, unarmed, leapt on the Wyrm and broke its neck! But Tonar himself was severely burnt and died soon after!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30682-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30682-02.html new file mode 100644 index 0000000000..33846c4e52 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30682-02.html @@ -0,0 +1,4 @@ +Seer Pekiron:
+The Lizardman shamans understood the power hidden in Tornar's body. So they ran off with the remains. Then afterwards, with the bones, they made several fetishes. Those fetishes are still handed down among the Leto Lizardmen until this day!
+The Leto Lizardmen formed a strong force in the southern part of Oren. I suppose the Leto chiefs or shamans who lead the group, have the amulet made from Tonar's Remains. Go ahead and take back the remains of our hero! Those bloody lizardmen, dared to split the bones into a skull, rib bones, backbone, arm bones and shin bones. There are 5 pieces altogether! Take this with you! Our forefathers' spirits dwelling in this totem will guide you on your way! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30682-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30682-03.html new file mode 100644 index 0000000000..7fafaf338a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30682-03.html @@ -0,0 +1,3 @@ +Seer Pekiron:
+The bones of Tonar are in the hands of Leto Lizardmen. They say that the Leto tribe chiefs or shamans have an amulet made of Tonar's bones, so beat them and recover our hero's remains, which were divided into skull, rib bones, backbone, arm bones, and shin bones! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30682-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30682-04.html new file mode 100644 index 0000000000..b7cb50362b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30682-04.html @@ -0,0 +1,4 @@ +Seer Pekiron:
+How could they have desecrated the body of our hero so? I shall adjust the pieces into a recognizable shape!
+Young sorcerer, you must be contemplative while carrying back the bones. You are bearing the symbol of our heroes and forefathers! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30682-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30682-05.html new file mode 100644 index 0000000000..427d6e9dbd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/30682-05.html @@ -0,0 +1,3 @@ +Seer Pekiron:
+Go, young shaman, and finish the Test of the War Spirit. I believe that you shall become a proud Warcryer! Until that day when we march onto the battlefield singing the hymns of victory! Tejakar Pa'agrio! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/Q00233_TestOfTheWarSpirit.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/Q00233_TestOfTheWarSpirit.java new file mode 100644 index 0000000000..16daf2d347 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00233_TestOfTheWarSpirit/Q00233_TestOfTheWarSpirit.java @@ -0,0 +1,640 @@ +/* + * 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.Q00233_TestOfTheWarSpirit; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Test Of The War Spirit (233) + * @author ivantotov + */ +public final class Q00233_TestOfTheWarSpirit extends Quest +{ + // NPCs + private static final int PRIESTESS_VIVYAN = 30030; + private static final int TRADER_SARIEN = 30436; + private static final int SEER_RACOY = 30507; + private static final int SEER_SOMAK = 30510; + private static final int SEER_MANAKIA = 30515; + private static final int SHADOW_ORIM = 30630; + private static final int ANCESTOR_MARTANKUS = 30649; + private static final int SEER_PEKIRON = 30682; + // Items + private static final int VENDETTA_TOTEM = 2880; + private static final int TAMLIN_ORC_HEAD = 2881; + private static final int WARSPIRIT_TOTEM = 2882; + private static final int ORIMS_CONTRACT = 2883; + private static final int PORTAS_EYE = 2884; + private static final int EXCUROS_SCALE = 2885; + private static final int MORDEOS_TALON = 2886; + private static final int BRAKIS_REMAINS1 = 2887; + private static final int PEKIRONS_TOTEM = 2888; + private static final int TONARS_SKULL = 2889; + private static final int TONARS_RIB_BONE = 2890; + private static final int TONARS_SPINE = 2891; + private static final int TONARS_ARM_BONE = 2892; + private static final int TONARS_THIGH_BONE = 2893; + private static final int TONARS_REMAINS1 = 2894; + private static final int MANAKIAS_TOTEM = 2895; + private static final int HERMODTS_SKULL = 2896; + private static final int HERMODTS_RIB_BONE = 2897; + private static final int HERMODTS_SPINE = 2898; + private static final int HERMODTS_ARM_BONE = 2899; + private static final int HERMODTS_THIGH_BONE = 2900; + private static final int HERMODTS_REMAINS1 = 2901; + private static final int RACOYS_TOTEM = 2902; + private static final int VIVIANTES_LETTER = 2903; + private static final int INSECT_DIAGRAM_BOOK = 2904; + private static final int KIRUNAS_SKULL = 2905; + private static final int KIRUNAS_RIB_BONE = 2906; + private static final int KIRUNAS_SPINE = 2907; + private static final int KIRUNAS_ARM_BONE = 2908; + private static final int KIRUNAS_THIGH_BONE = 2909; + private static final int KIRUNAS_REMAINS1 = 2910; + private static final int BRAKIS_REMAINS2 = 2911; + private static final int TONARS_REMAINS2 = 2912; + private static final int HERMODTS_REMAINS2 = 2913; + private static final int KIRUNAS_REMAINS2 = 2914; + // Reward + private static final int MARK_OF_WARSPIRIT = 2879; + private static final int DIMENSIONAL_DIAMOND = 7562; + // Monster + private static final int NOBLE_ANT = 20089; + private static final int NOBLE_ANT_LEADER = 20090; + private static final int MEDUSA = 20158; + private static final int PORTA = 20213; + private static final int EXCURO = 20214; + private static final int MORDERO = 20215; + private static final int LETO_LIZARDMAN_SHAMAN = 20581; + private static final int LETO_LIZARDMAN_OVERLORD = 20582; + private static final int TAMLIN_ORC = 20601; + private static final int TAMLIN_ORC_ARCHER = 20602; + // Quest Monster + private static final int STENOA_GORGON_QUEEN = 27108; + // Misc + private static final int MIN_LEVEL = 39; + + public Q00233_TestOfTheWarSpirit() + { + super(233); + addStartNpc(SEER_SOMAK); + addTalkId(SEER_SOMAK, PRIESTESS_VIVYAN, TRADER_SARIEN, SEER_RACOY, SEER_MANAKIA, SHADOW_ORIM, ANCESTOR_MARTANKUS, SEER_PEKIRON); + addKillId(NOBLE_ANT, NOBLE_ANT_LEADER, MEDUSA, PORTA, EXCURO, MORDERO, LETO_LIZARDMAN_SHAMAN, LETO_LIZARDMAN_OVERLORD, TAMLIN_ORC, TAMLIN_ORC_ARCHER, STENOA_GORGON_QUEEN); + registerQuestItems(VENDETTA_TOTEM, TAMLIN_ORC_HEAD, WARSPIRIT_TOTEM, ORIMS_CONTRACT, PORTAS_EYE, EXCUROS_SCALE, MORDEOS_TALON, BRAKIS_REMAINS1, PEKIRONS_TOTEM, TONARS_SKULL, TONARS_RIB_BONE, TONARS_SPINE, TONARS_ARM_BONE, TONARS_THIGH_BONE, TONARS_REMAINS1, MANAKIAS_TOTEM, HERMODTS_SKULL, HERMODTS_RIB_BONE, HERMODTS_SPINE, HERMODTS_ARM_BONE, HERMODTS_THIGH_BONE, HERMODTS_REMAINS1, RACOYS_TOTEM, VIVIANTES_LETTER, INSECT_DIAGRAM_BOOK, KIRUNAS_SKULL, KIRUNAS_RIB_BONE, KIRUNAS_SPINE, KIRUNAS_ARM_BONE, KIRUNAS_THIGH_BONE, KIRUNAS_REMAINS1, BRAKIS_REMAINS2, TONARS_REMAINS2, HERMODTS_REMAINS2, KIRUNAS_REMAINS2); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (qs.isCreated()) + { + qs.startQuest(); + if (player.getVariables().getInt("2ND_CLASS_DIAMOND_REWARD", 0) == 0) + { + giveItems(player, DIMENSIONAL_DIAMOND, 92); + player.getVariables().set("2ND_CLASS_DIAMOND_REWARD", 1); + htmltext = "30510-05e.htm"; + } + else + { + htmltext = "30510-05.htm"; + } + } + break; + } + case "30510-05a.html": + case "30510-05b.html": + case "30510-05c.html": + case "30510-05d.html": + case "30510-05.html": + case "30030-02.html": + case "30030-03.html": + case "30630-02.html": + case "30630-03.html": + case "30649-02.html": + { + htmltext = event; + break; + } + case "30030-04.html": + { + giveItems(player, VIVIANTES_LETTER, 1); + htmltext = event; + break; + } + case "30507-02.html": + { + giveItems(player, RACOYS_TOTEM, 1); + htmltext = event; + break; + } + case "30515-02.html": + { + giveItems(player, MANAKIAS_TOTEM, 1); + htmltext = event; + break; + } + case "30630-04.html": + { + giveItems(player, ORIMS_CONTRACT, 1); + htmltext = event; + break; + } + case "30649-03.html": + { + if (hasQuestItems(player, TONARS_REMAINS2)) + { + giveAdena(player, 161806, true); + giveItems(player, MARK_OF_WARSPIRIT, 1); + addExpAndSp(player, 894888, 61408); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + htmltext = event; + } + break; + } + case "30682-02.html": + { + giveItems(player, PEKIRONS_TOTEM, 1); + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case NOBLE_ANT: + case NOBLE_ANT_LEADER: + { + if (hasQuestItems(killer, RACOYS_TOTEM, INSECT_DIAGRAM_BOOK)) + { + final int i0 = getRandom(100); + if (i0 > 65) + { + if (!hasQuestItems(killer, KIRUNAS_THIGH_BONE)) + { + giveItems(killer, KIRUNAS_THIGH_BONE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, KIRUNAS_ARM_BONE)) + { + giveItems(killer, KIRUNAS_ARM_BONE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + } + else if (i0 > 30) + { + if (!hasQuestItems(killer, KIRUNAS_SPINE)) + { + giveItems(killer, KIRUNAS_SPINE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, KIRUNAS_RIB_BONE)) + { + giveItems(killer, KIRUNAS_RIB_BONE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + } + else if (i0 > 0) + { + if (!hasQuestItems(killer, KIRUNAS_SKULL)) + { + giveItems(killer, KIRUNAS_SKULL, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + } + } + break; + } + case MEDUSA: + { + if (hasQuestItems(killer, MANAKIAS_TOTEM)) + { + if (!hasQuestItems(killer, HERMODTS_RIB_BONE)) + { + giveItems(killer, HERMODTS_RIB_BONE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, HERMODTS_SPINE)) + { + giveItems(killer, HERMODTS_SPINE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, HERMODTS_ARM_BONE)) + { + giveItems(killer, HERMODTS_ARM_BONE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, HERMODTS_THIGH_BONE)) + { + giveItems(killer, HERMODTS_THIGH_BONE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + } + break; + } + case PORTA: + { + if (hasQuestItems(killer, ORIMS_CONTRACT)) + { + giveItemRandomly(killer, npc, PORTAS_EYE, 2, 10, 1.0, true); + } + break; + } + case EXCURO: + { + if (hasQuestItems(killer, ORIMS_CONTRACT)) + { + giveItemRandomly(killer, npc, EXCUROS_SCALE, 5, 10, 1.0, true); + } + break; + } + case MORDERO: + { + if (hasQuestItems(killer, ORIMS_CONTRACT)) + { + giveItemRandomly(killer, npc, MORDEOS_TALON, 5, 10, 1.0, true); + } + break; + } + case LETO_LIZARDMAN_SHAMAN: + case LETO_LIZARDMAN_OVERLORD: + { + if (hasQuestItems(killer, PEKIRONS_TOTEM)) + { + if (!hasQuestItems(killer, TONARS_SKULL)) + { + giveItems(killer, TONARS_SKULL, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, TONARS_RIB_BONE)) + { + giveItems(killer, TONARS_RIB_BONE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, TONARS_SPINE)) + { + giveItems(killer, TONARS_SPINE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, TONARS_ARM_BONE)) + { + giveItems(killer, TONARS_ARM_BONE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else if (!hasQuestItems(killer, TONARS_THIGH_BONE)) + { + giveItems(killer, TONARS_THIGH_BONE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + } + break; + } + case TAMLIN_ORC: + case TAMLIN_ORC_ARCHER: + { + if (hasQuestItems(killer, VENDETTA_TOTEM)) + { + if (giveItemRandomly(killer, npc, TAMLIN_ORC_HEAD, 1, 13, 1.0, true)) + { + qs.setCond(4, true); + } + } + break; + } + case STENOA_GORGON_QUEEN: + { + if (hasQuestItems(killer, MANAKIAS_TOTEM) && !hasQuestItems(killer, HERMODTS_SKULL)) + { + giveItems(killer, HERMODTS_SKULL, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == SEER_SOMAK) + { + if (player.getRace() == Race.ORC) + { + if (player.getClassId() == ClassId.ORC_SHAMAN) + { + if (player.getLevel() < MIN_LEVEL) + { + htmltext = "30510-03.html"; + } + else + { + htmltext = "30510-04.htm"; + } + } + else + { + htmltext = "30510-02.html"; + } + } + else + { + htmltext = "30510-01.html"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case SEER_SOMAK: + { + if (!hasAtLeastOneQuestItem(player, VENDETTA_TOTEM, WARSPIRIT_TOTEM)) + { + if (hasQuestItems(player, BRAKIS_REMAINS1, HERMODTS_REMAINS1, KIRUNAS_REMAINS1, TONARS_REMAINS1)) + { + giveItems(player, VENDETTA_TOTEM, 1); + takeItems(player, BRAKIS_REMAINS1, 1); + takeItems(player, TONARS_REMAINS1, 1); + takeItems(player, HERMODTS_REMAINS1, 1); + takeItems(player, KIRUNAS_REMAINS1, 1); + qs.setCond(3); + htmltext = "30510-07.html"; + } + else + { + htmltext = "30510-06.html"; + } + } + else if (hasQuestItems(player, VENDETTA_TOTEM)) + { + if (getQuestItemsCount(player, TAMLIN_ORC_HEAD) < 13) + { + htmltext = "30510-08.html"; + } + else + { + takeItems(player, VENDETTA_TOTEM, 1); + giveItems(player, WARSPIRIT_TOTEM, 1); + giveItems(player, BRAKIS_REMAINS2, 1); + giveItems(player, TONARS_REMAINS2, 1); + giveItems(player, HERMODTS_REMAINS2, 1); + giveItems(player, KIRUNAS_REMAINS2, 1); + qs.setCond(5); + htmltext = "30510-09.html"; + } + } + else if (hasQuestItems(player, WARSPIRIT_TOTEM)) + { + htmltext = "30510-10.html"; + } + break; + } + case PRIESTESS_VIVYAN: + { + if (hasQuestItems(player, RACOYS_TOTEM) && !hasAtLeastOneQuestItem(player, VIVIANTES_LETTER, INSECT_DIAGRAM_BOOK)) + { + htmltext = "30030-01.html"; + } + else if (hasQuestItems(player, RACOYS_TOTEM, VIVIANTES_LETTER) && !hasQuestItems(player, INSECT_DIAGRAM_BOOK)) + { + htmltext = "30030-05.html"; + } + else if (hasQuestItems(player, RACOYS_TOTEM, INSECT_DIAGRAM_BOOK) && !hasQuestItems(player, VIVIANTES_LETTER)) + { + htmltext = "30030-06.html"; + } + else if (!hasQuestItems(player, RACOYS_TOTEM) && hasAtLeastOneQuestItem(player, KIRUNAS_REMAINS1, KIRUNAS_REMAINS2, VENDETTA_TOTEM)) + { + htmltext = "30030-07.html"; + } + break; + } + case TRADER_SARIEN: + { + if (hasQuestItems(player, RACOYS_TOTEM, VIVIANTES_LETTER) && !hasQuestItems(player, INSECT_DIAGRAM_BOOK)) + { + takeItems(player, VIVIANTES_LETTER, 1); + giveItems(player, INSECT_DIAGRAM_BOOK, 1); + htmltext = "30436-01.html"; + } + else if (hasQuestItems(player, RACOYS_TOTEM, INSECT_DIAGRAM_BOOK) && !hasQuestItems(player, VIVIANTES_LETTER)) + { + htmltext = "30436-02.html"; + } + else if (!hasQuestItems(player, RACOYS_TOTEM) && hasAtLeastOneQuestItem(player, KIRUNAS_REMAINS1, KIRUNAS_REMAINS2, VENDETTA_TOTEM)) + { + htmltext = "30436-03.html"; + } + break; + } + case SEER_RACOY: + { + if (!hasAtLeastOneQuestItem(player, RACOYS_TOTEM, KIRUNAS_REMAINS1, KIRUNAS_REMAINS2, VENDETTA_TOTEM)) + { + htmltext = "30507-01.html"; + } + else if (hasQuestItems(player, RACOYS_TOTEM) && !hasAtLeastOneQuestItem(player, VIVIANTES_LETTER, INSECT_DIAGRAM_BOOK)) + { + htmltext = "30507-03.html"; + } + else if (hasQuestItems(player, RACOYS_TOTEM, VIVIANTES_LETTER) && !hasQuestItems(player, INSECT_DIAGRAM_BOOK)) + { + htmltext = "30507-04.html"; + } + else if (hasQuestItems(player, RACOYS_TOTEM, INSECT_DIAGRAM_BOOK) && !hasQuestItems(player, VIVIANTES_LETTER)) + { + if (hasQuestItems(player, KIRUNAS_SKULL, KIRUNAS_RIB_BONE, KIRUNAS_SPINE, KIRUNAS_ARM_BONE, KIRUNAS_THIGH_BONE)) + { + takeItems(player, RACOYS_TOTEM, 1); + takeItems(player, INSECT_DIAGRAM_BOOK, 1); + takeItems(player, KIRUNAS_SKULL, 1); + takeItems(player, KIRUNAS_RIB_BONE, 1); + takeItems(player, KIRUNAS_SPINE, 1); + takeItems(player, KIRUNAS_ARM_BONE, 1); + takeItems(player, KIRUNAS_THIGH_BONE, 1); + giveItems(player, KIRUNAS_REMAINS1, 1); + if (hasQuestItems(player, BRAKIS_REMAINS1, HERMODTS_REMAINS1, TONARS_REMAINS1)) + { + qs.setCond(2); + } + htmltext = "30507-06.html"; + } + else + { + htmltext = "30507-05.html"; + } + } + else if (!hasQuestItems(player, RACOYS_TOTEM) && hasAtLeastOneQuestItem(player, KIRUNAS_REMAINS1, KIRUNAS_REMAINS2, VENDETTA_TOTEM)) + { + htmltext = "30507-07.html"; + } + break; + } + case SEER_MANAKIA: + { + if (!hasAtLeastOneQuestItem(player, MANAKIAS_TOTEM, HERMODTS_REMAINS2, VENDETTA_TOTEM, HERMODTS_REMAINS1)) + { + htmltext = "30515-01.html"; + } + else if (hasQuestItems(player, MANAKIAS_TOTEM)) + { + if (hasQuestItems(player, HERMODTS_SKULL, HERMODTS_RIB_BONE, HERMODTS_SPINE, HERMODTS_ARM_BONE, HERMODTS_THIGH_BONE)) + { + takeItems(player, MANAKIAS_TOTEM, 1); + takeItems(player, HERMODTS_SKULL, 1); + takeItems(player, HERMODTS_RIB_BONE, 1); + takeItems(player, HERMODTS_SPINE, 1); + takeItems(player, HERMODTS_ARM_BONE, 1); + takeItems(player, HERMODTS_THIGH_BONE, 1); + giveItems(player, HERMODTS_REMAINS1, 1); + if (hasQuestItems(player, BRAKIS_REMAINS1, KIRUNAS_REMAINS1, TONARS_REMAINS1)) + { + qs.setCond(2); + } + htmltext = "30515-04.html"; + } + else + { + htmltext = "30515-03.html"; + } + } + else if (!hasQuestItems(player, MANAKIAS_TOTEM) && hasAtLeastOneQuestItem(player, HERMODTS_REMAINS1, HERMODTS_REMAINS2, VENDETTA_TOTEM)) + { + htmltext = "30515-05.html"; + } + break; + } + case SHADOW_ORIM: + { + if (!hasAtLeastOneQuestItem(player, ORIMS_CONTRACT, BRAKIS_REMAINS1, BRAKIS_REMAINS2, VENDETTA_TOTEM)) + { + htmltext = "30630-01.html"; + } + else if (hasQuestItems(player, ORIMS_CONTRACT)) + { + if ((getQuestItemsCount(player, PORTAS_EYE) + getQuestItemsCount(player, EXCUROS_SCALE) + getQuestItemsCount(player, MORDEOS_TALON)) < 30) + { + htmltext = "30630-05.html"; + } + else + { + takeItems(player, ORIMS_CONTRACT, 1); + takeItems(player, PORTAS_EYE, -1); + takeItems(player, EXCUROS_SCALE, -1); + takeItems(player, MORDEOS_TALON, -1); + giveItems(player, BRAKIS_REMAINS1, 1); + if (hasQuestItems(player, HERMODTS_REMAINS1, KIRUNAS_REMAINS1, TONARS_REMAINS1)) + { + qs.setCond(2); + } + htmltext = "30630-06.html"; + } + } + else if (!hasQuestItems(player, ORIMS_CONTRACT) && hasAtLeastOneQuestItem(player, BRAKIS_REMAINS1, BRAKIS_REMAINS2, VENDETTA_TOTEM)) + { + htmltext = "30630-07.html"; + } + break; + } + case ANCESTOR_MARTANKUS: + { + if (hasQuestItems(player, WARSPIRIT_TOTEM)) + { + htmltext = "30649-01.html"; + } + break; + } + case SEER_PEKIRON: + { + if (!hasAtLeastOneQuestItem(player, PEKIRONS_TOTEM, TONARS_REMAINS1, TONARS_REMAINS2, VENDETTA_TOTEM)) + { + htmltext = "30682-01.html"; + } + else if (hasQuestItems(player, PEKIRONS_TOTEM)) + { + if (hasQuestItems(player, TONARS_SKULL, TONARS_RIB_BONE, TONARS_SPINE, TONARS_ARM_BONE, TONARS_THIGH_BONE)) + { + takeItems(player, PEKIRONS_TOTEM, 1); + takeItems(player, TONARS_SKULL, 1); + takeItems(player, TONARS_RIB_BONE, 1); + takeItems(player, TONARS_SPINE, 1); + takeItems(player, TONARS_ARM_BONE, 1); + takeItems(player, TONARS_THIGH_BONE, 1); + giveItems(player, TONARS_REMAINS1, 1); + if (hasQuestItems(player, BRAKIS_REMAINS1, HERMODTS_REMAINS1, KIRUNAS_REMAINS1)) + { + qs.setCond(2); + } + htmltext = "30682-04.html"; + } + else + { + htmltext = "30682-03.html"; + } + } + else if (!hasQuestItems(player, PEKIRONS_TOTEM) && hasAtLeastOneQuestItem(player, TONARS_REMAINS1, TONARS_REMAINS2, VENDETTA_TOTEM)) + { + htmltext = "30682-05.html"; + } + break; + } + } + } + else if (qs.isCompleted()) + { + if (npc.getId() == SEER_SOMAK) + { + htmltext = getAlreadyCompletedMsg(player); + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-01.html new file mode 100644 index 0000000000..40f309ad3d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-01.html @@ -0,0 +1,5 @@ +Captain Gilbert:
+A few weeks ago, the lord announced that he will transfer all of the refugees from the Gracian wars to Talking Island. But, as you know, Talking Island still has many regions where it is too dangerous for people to live. The southern village of the island and regions surrounding the magic school are safe, but the inland woods and northern shores are places that even we guards do not like to venture into, not only because of the vicious wild beasts, but also because of the Orc masses and violent werewolves that live there.
+Before going ahead with his plans to relocate the refugees, the lord has officially issued a command to eliminate from Talking Island the dangerous beasts that pose a threat to the lives of residents. They say that the lord's command will be officially announced in a few days. How do you feel about participating in the beast hunt?
+(Quest for characters level 6 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-02.htm new file mode 100644 index 0000000000..c14af7eff0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-02.htm @@ -0,0 +1,6 @@ +Captain Gilbert:
+A few weeks ago, the lord announced that he will transfer all of the refugees from the Gracian wars to Talking Island. But, as you know, Talking Island still has many regions where it is too dangerous for people to live. The southern village of the island and regions surrounding the magic school are safe, but the inland woods and northern shores are places that even we guards do not like to venture into, not only because of the vicious wild beasts, but also because of the Orc masses and violent werewolves that live there.
+Before going ahead with his plans to relocate the war refugees, the lord has officially issued a command to eliminate from Talking Island the dangerous beasts that pose a threat to the lives of residents. Whoever slays the orcs or werewolves, and brings back proof, will be given a reward. Already many of the young men have armed themselves and gone out from of the village.
+How about if you participate in the hunt? You can gain some actual battle experience, and it's also a good opportunity to receive prizes given in the name of our lord.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-03.htm new file mode 100644 index 0000000000..efb8c02718 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-03.htm @@ -0,0 +1,5 @@ +Captain Gilbert:
+Go and slay orcs and werewolves that live on Talking Island, and bring back proof of their deaths. Prizes will be awarded according to the amount of proof that you bring back. Bring back the feather Orc Amulet, werewolf fangs, or the Orc's Necklace that orcs of fighter rank carry.
+This task is not just a simple hunt, but an official announcement that, under the will of the lord, Talking Island is now part of the Aden Kingdom. Therefore, the aggressors who have invaded our land must be punished accordingly. All who participate in this hunt are representatives carrying out the will of the lord, and must carry this symbol of the lord at all times.
+May the blessings of Einhasad be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-04.html new file mode 100644 index 0000000000..8a63f14f06 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-04.html @@ -0,0 +1,6 @@ +Captain Gilbert:
+You cannot hope for any reward if you laze around in the village. Go outside the village immediately and join in on the hunt. This will be our chance to drive the orcs and werewolves from our lands and make Talking Island a suitable place for Humans to live in.
+Don't tell me you've come back because you want to give up? Do you always give up that easily?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-05.html new file mode 100644 index 0000000000..69ff51feae --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-05.html @@ -0,0 +1,3 @@ +Captain Gilbert:
+You have done well. May the blessings of Einhasad be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-06.html new file mode 100644 index 0000000000..d9c4bebd43 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-06.html @@ -0,0 +1,3 @@ +Captain Gilbert:
+Please continue, then. Pretty soon, our Talking Island will be a suitable place for peaceful citizens to live in, free of violent orcs and vicious werewolves. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-07.html new file mode 100644 index 0000000000..f23ad63cd6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/30039-07.html @@ -0,0 +1,6 @@ +Captain Gilbert:
+Well done. I will reward you for every piece of proof you have brought me. This is a reward given to honor the fighters who have faithfully carried out the will of our lord.
+The lord's decree is still valid. There is still more Adena left for rewards. Will you continue your hunt, or will you quit?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/Q00257_TheGuardIsBusy.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/Q00257_TheGuardIsBusy.java new file mode 100644 index 0000000000..24499ae4fd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00257_TheGuardIsBusy/Q00257_TheGuardIsBusy.java @@ -0,0 +1,182 @@ +/* + * 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.Q00257_TheGuardIsBusy; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * The Guard is Busy (257) + * @author xban1x + */ +public final class Q00257_TheGuardIsBusy extends Quest +{ + public final static class MobDrop extends ItemHolder + { + private final int _chance; + private final int _random; + + public MobDrop(int random, int chance, int id, long count) + { + super(id, count); + _random = random; + _chance = chance; + } + + public boolean getDrop() + { + return (getRandom(_random) < _chance); + } + } + + // NPC + private static final int GILBERT = 30039; + // Misc + private static final int MIN_LVL = 6; + // Monsters + private static final Map> MONSTERS = new HashMap<>(); + // Items + private static final int GLUDIO_LORDS_MARK = 1084; + private static final int ORC_AMULET = 752; + private static final int ORC_NECKLACE = 1085; + private static final int WEREWOLF_FANG = 1086; + + static + { + MONSTERS.put(20006, Arrays.asList(new MobDrop(10, 2, ORC_AMULET, 2), new MobDrop(10, 10, ORC_AMULET, 1))); // Orc Archer + MONSTERS.put(20093, Arrays.asList(new MobDrop(100, 85, ORC_NECKLACE, 1))); // Orc Fighter + MONSTERS.put(20096, Arrays.asList(new MobDrop(100, 95, ORC_NECKLACE, 1))); // Orc Fighter Sub Leader + MONSTERS.put(20098, Arrays.asList(new MobDrop(100, 100, ORC_NECKLACE, 1)));// Orc Fighter Leader + MONSTERS.put(20130, Arrays.asList(new MobDrop(10, 7, ORC_AMULET, 1))); // Orc + MONSTERS.put(20131, Arrays.asList(new MobDrop(10, 9, ORC_AMULET, 1))); // Orc Grunt + MONSTERS.put(20132, Arrays.asList(new MobDrop(10, 7, WEREWOLF_FANG, 1))); // Werewolf + MONSTERS.put(20342, Arrays.asList(new MobDrop(0, 1, WEREWOLF_FANG, 1))); // Werewolf Chieftain + MONSTERS.put(20343, Arrays.asList(new MobDrop(100, 85, WEREWOLF_FANG, 1))); // Werewolf Hunter + } + + public Q00257_TheGuardIsBusy() + { + super(257); + addStartNpc(GILBERT); + addTalkId(GILBERT); + addKillId(MONSTERS.keySet()); + registerQuestItems(ORC_AMULET, GLUDIO_LORDS_MARK, ORC_NECKLACE, WEREWOLF_FANG); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st == null) + { + return htmltext; + } + + switch (event) + { + case "30039-03.htm": + { + st.startQuest(); + giveItems(player, GLUDIO_LORDS_MARK, 1); + htmltext = event; + break; + } + case "30039-05.html": + { + st.exitQuest(true, true); + htmltext = event; + break; + } + case "30039-06.html": + { + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if (st == null) + { + return super.onKill(npc, killer, isSummon); + } + + for (MobDrop drop : MONSTERS.get(npc.getId())) + { + if (drop.getDrop()) + { + giveItems(killer, drop); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getLevel() >= MIN_LVL) ? "30039-02.htm" : "30039-01.html"; + break; + } + case State.STARTED: + { + if (hasAtLeastOneQuestItem(player, ORC_AMULET, ORC_NECKLACE, WEREWOLF_FANG)) + { + final long amulets = getQuestItemsCount(player, ORC_AMULET); + final long common = getQuestItemsCount(player, ORC_NECKLACE, WEREWOLF_FANG); + giveAdena(player, ((amulets * 10) + (common * 20) + (((amulets + common) >= 10) ? 1000 : 0)), true); + takeItems(player, -1, ORC_AMULET, ORC_NECKLACE, WEREWOLF_FANG); + // Q00281_HeadForTheHills.giveNewbieReward(player); + htmltext = "30039-07.html"; + } + else + { + htmltext = "30039-04.html"; + } + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/30001-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/30001-01.html new file mode 100644 index 0000000000..2b4590bdb3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/30001-01.html @@ -0,0 +1,4 @@ +Trader Lector:
+I am a trader now, but I used to be a leather craftsman. Even now, I buy materials every now and then to make leather clothing, gloves, cloaks, and boots. May I ask you later to find me materials if I need them?
+(Quest for characters level 3 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/30001-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/30001-02.htm new file mode 100644 index 0000000000..0401f5b208 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/30001-02.htm @@ -0,0 +1,5 @@ +Trader Lector:
+I may be a merchant now, but I used to be a Leather Cutter. I used to work for Duke Van Dyke in my early days. During the Elmore War, I made hundreds of leather armors for the Duke's soldiers in ten days. Even after retiring, I still practice making leather armor from time to time to keep my skills sharp.
+A few days ago, Consul Sir Windawood came to see me himself and asked me to make fifty leather armors for the newly established militia. I can make that many on my own, but I don't have enough materials. I need quite a few more wolf pelts. Can I ask you to find them for me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/30001-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/30001-03.html new file mode 100644 index 0000000000..0d6dd43aac --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/30001-03.html @@ -0,0 +1,3 @@ +Trader Lector:
+Hunt wolves and bring me their pelts. Bring me forty of the pelts and, in return, I will give you a piece of equipment that is useful to you. There is little time left if I am to finish the fifty leather armors that the governor has ordered by this week. So please hurry. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/30001-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/30001-04.html new file mode 100644 index 0000000000..021d44101a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/30001-04.html @@ -0,0 +1,3 @@ +Trader Lector:
+So you haven't gotten all of the Wolf Pelts yet. I know it is difficult, but please gather forty pelts and bring them back to me. In return, I will give you a piece of equipment that will be quite useful to you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/30001-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/30001-05.html new file mode 100644 index 0000000000..dc101e2ffe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/30001-05.html @@ -0,0 +1,3 @@ +Trader Lector:
+Oh, I see you've brought me forty Wolf Pelts. Well done! As promised, I will give you a defense armor that will be useful to you. It has been made by the Dwarven craftsmen of Giran, and is guaranteed to be of the highest quality. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/Q00258_BringWolfPelts.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/Q00258_BringWolfPelts.java new file mode 100644 index 0000000000..83df96f2fb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00258_BringWolfPelts/Q00258_BringWolfPelts.java @@ -0,0 +1,149 @@ +/* + * 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.Q00258_BringWolfPelts; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Bring Wolf Pelts (258) + * @author xban1x + */ +public final class Q00258_BringWolfPelts extends Quest +{ + // Npc + private static final int LECTOR = 30001; + // Item + private static final int WOLF_PELT = 702; + // Monsters + private static final int[] MONSTERS = new int[] + { + 20120, // Wolf + 20442, // Elder Wolf + }; + // Rewards + private static final Map REWARDS = new HashMap<>(); + static + { + REWARDS.put(390, 1); // Cotton Shirt + REWARDS.put(29, 6); // Leather Pants + REWARDS.put(22, 9); // Leather Shirt + REWARDS.put(1119, 13); // Short Leather Gloves + REWARDS.put(426, 16); // Tunic + } + // Misc + private static final int MIN_LVL = 3; + private static final int WOLF_PELT_COUNT = 40; + + public Q00258_BringWolfPelts() + { + super(258); + addStartNpc(LECTOR); + addTalkId(LECTOR); + addKillId(MONSTERS); + registerQuestItems(WOLF_PELT); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equalsIgnoreCase("30001-03.html")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(1)) + { + giveItems(killer, WOLF_PELT, 1); + if (getQuestItemsCount(killer, WOLF_PELT) >= WOLF_PELT_COUNT) + { + st.setCond(2, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getLevel() >= MIN_LVL) ? "30001-02.htm" : "30001-01.html"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + htmltext = "30001-04.html"; + break; + } + case 2: + { + if (getQuestItemsCount(player, WOLF_PELT) >= WOLF_PELT_COUNT) + { + final int chance = getRandom(16); + for (Map.Entry reward : REWARDS.entrySet()) + { + if (chance < reward.getValue()) + { + giveItems(player, reward.getKey(), 1); + break; + } + } + st.exitQuest(true, true); + htmltext = "30001-05.html"; + break; + } + } + } + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-01.html new file mode 100644 index 0000000000..7ad2cc2895 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-01.html @@ -0,0 +1,4 @@ +Marius:
+May the blessings of the starlight fall upon you. So you are the mercenary hired by my colleague Edmond. I was once a Knight with a sword ... But ... something happened. And I pledged not to touch a sword again. I have retired now.
+I felt terrible that I haven't been able to help Edmond ... Thankfully, I owe you gratitude for volunteering to kill these spiders for us. Tell me anything you need. If you bring me ten or more Giant Spider Skins, I will exchange them for a Healing Potion or arrows. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-02.html new file mode 100644 index 0000000000..1f698f3286 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-02.html @@ -0,0 +1,10 @@ +Marius:
+May the blessings of the starlight fall upon you. So you are the mercenary hired by my colleague Edmond. I was once a Knight with a sword... But... something happened and I pledged not to touch a sword again. I am retired now.
+I felt terrible that I haven't been able to help Edmond. Thankfully, I owe you gratitude for volunteering to kill these spiders for us.
+Tell me if you need anything. I will exchange two Healing Potions, fifty Wooden Arrows, 60 no grade soulshots or 30 no grade spiritshots for ten Giant Spider Skins.
+ + + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-03.html new file mode 100644 index 0000000000..1bc25032fe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-03.html @@ -0,0 +1,3 @@ +Marius:
+Please be careful when hunting the spiders. They have very sensitive hearing, so they will attack anything that moves around them. Be on guard from a distance, and be watchful for any unexpected attacks. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-04.html new file mode 100644 index 0000000000..f732778349 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-04.html @@ -0,0 +1,4 @@ +Marius:
+I got this Healing Potion from Silvia in the village a few days ago. This is a very effective item for treating injuries received in battle.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-05.html new file mode 100644 index 0000000000..dd5c04c4f8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-05.html @@ -0,0 +1,5 @@ +Marius:
+I bought these arrows from the weapon shop when I went to the village few days ago. Trader Lector took care in selecting these, so you can use them without any worries.
+Personally, I would shoot arrows from a far distance to wound the spider, then approach it to deliver the final blow ... but I'm sure you have your own ways of hunting them.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-05a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-05a.html new file mode 100644 index 0000000000..c0479ee880 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-05a.html @@ -0,0 +1,5 @@ +Marius:
+It's a soulshot created personally by Blacksmith Altran. He is highly regarded among Dwarves as an excellent artisan! I'm sure that this item is up to his high standards.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-05b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-05b.html new file mode 100644 index 0000000000..c89cbca089 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-05b.html @@ -0,0 +1,4 @@ +Marius:
+Ah, you're new to soulshots, are you? Well by all means, let me explain! A soulshot enhances a weapon by encircling it with a blue spirit. This greatly improves the attack power of the weapon. The enhancement is consumed with use. Continuous attack will require multiple soulshots. Mercenaries and hunters are known to carry hundreds of soulshots as part of their equipment.
+It is very important to remember that soulshots can only be applied only to a weapon that has been specifically designed to absorb spirit energy. The grade of the weapon and the type of soulshot used determine the outcome. Know your weapon and select the appropriate soulshot. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-05c.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-05c.html new file mode 100644 index 0000000000..965ea4eefe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-05c.html @@ -0,0 +1,5 @@ +Marius:
+This spiritshot was made by Blacksmith Altran. He is well-known among Dwarves as a superb craftsman. This item is of top quality. Put it to good use.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-05d.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-05d.html new file mode 100644 index 0000000000..04b77f9211 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-05d.html @@ -0,0 +1,6 @@ +Marius:
+You don't know how to use a spiritshot? OK, here's a brief explanation:
+A spiritshot enhances a weapon with the explosive energy of a powerful spirit. Blessed spiritshots are even more powerful. Each spiritshot only works once, so you will need multiple spiritshots if you intend to use them successively.
+A good Mystic will always have enough spiritshots to save himself and his party in a crisis.
+Spiritshots may only be used with weapons that are designed to absorb spirit energy. The grade of weapon must match the grade of the spiritshot. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-06.html new file mode 100644 index 0000000000..529c819451 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-06.html @@ -0,0 +1,8 @@ +Marius:
+Do you need anything else? I will exchange two Healing Potions, fifty Wooden Arrows, 60 no grade soulshots or 30 no grade spiritshots for ten Giant Spider Skins.
+ + + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-07.html new file mode 100644 index 0000000000..3b9bd07eb2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30405-07.html @@ -0,0 +1,4 @@ +Marius:
+If you need anything later, gather Giant Spider Skins and come back to me.
+Please be careful when you are hunting the spiders. They have very sensitive hearing, so they will attack anything that moves around them. Be on guard from a distance, and be watchful of any unexpected attacks. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-01.html new file mode 100644 index 0000000000..af703756f8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-01.html @@ -0,0 +1,6 @@ +Edmond:
+Welcome, traveler. I originally resided in Gludio, but lost my family during the war with Gracia and moved here to start a new life.
+I am trying to ranch here with my old friend, Marius. We were going to take our sheep to the sunny hillside right over there and turn them out to pasture ... But the giant spiders showed up, and we lost all thirty sheep that we brought from Innadril.
+Soon, we're going to hire someone to kill the giant spiders around this area. Do you think you could help out with that?
+(Quest for characters level 15 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-02.htm new file mode 100644 index 0000000000..df5cd4f431 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-02.htm @@ -0,0 +1,6 @@ +Edmond:
+Welcome, traveler. I originally resided in Gludio, but lost my family during the war with Gracia and moved here to start a new life.
+I am trying to ranch here with my old friend, Marius. We were going to take our sheep to the sunny hillside right back there and turn them out to pasture ... But the giant spiders showed up, and we lost all thirty sheep that we brought from Innadril.
+We are going to hire mercenaries with the money the governor granted us and drive off the giant spiders from this area. It looks like you know how to fight ...Do you think you could exterminate those spiders for us?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-03.html new file mode 100644 index 0000000000..7071382c18 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-03.html @@ -0,0 +1,4 @@ +Edmond:
+Hunt the giant spiders that are wreaking havoc in this area, then bring their skins back to me. I will reward you for each Giant Spider Skin you bring back.
+Oh, and if you need something while hunting those spiders, ask my friend, Marius. He takes care of everything that we bring from the village. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-04.html new file mode 100644 index 0000000000..e6a319dae1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-04.html @@ -0,0 +1,5 @@ +Edmond:
+What, there weren't any spiders to hunt? That can't be ... Only a few days ago, those spiders ate some pigs that were in the backyard. They're somewhere around here, I tell you.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-05.html new file mode 100644 index 0000000000..f8029aa8fd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-05.html @@ -0,0 +1,6 @@ +Edmond:
+Thank you for your trouble. I hope you didn't get hurt? As we promised, I will reward you for each Giant Spider Skin that you have brought. Here, take this.
+Thanks to your help, I will soon be able to graze my cattle without any worries. Just thinking of that makes me so happy. I can picture my sheep peacefully grazing in the pastures on the green hillside.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-06.html new file mode 100644 index 0000000000..93eacc9658 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-06.html @@ -0,0 +1,3 @@ +Edmond:
+It's too bad, but I guess it can't be helped. Although it was brief, I really appreciate your help. If you go back to the village, could you tell the folks that Edmond of the northwestern ranch is looking to hire soldiers? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-07.html new file mode 100644 index 0000000000..0572f4c90f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/30497-07.html @@ -0,0 +1,3 @@ +Edmond:
+Please carry on then. Those spiders are vicious, so be careful. And remember, if you need anything, ask Marius. He will be more than willing to help you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/Q00259_RequestFromTheFarmOwner.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/Q00259_RequestFromTheFarmOwner.java new file mode 100644 index 0000000000..947cdc2ea5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00259_RequestFromTheFarmOwner/Q00259_RequestFromTheFarmOwner.java @@ -0,0 +1,184 @@ +/* + * 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.Q00259_RequestFromTheFarmOwner; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Request from the Farm Owner (259) + * @author xban1x + */ +public final class Q00259_RequestFromTheFarmOwner extends Quest +{ + // Npcs + private static final int EDMOND = 30497; + private static final int MARIUS = 30405; + // Monsters + private static final int[] MONSTERS = new int[] + { + 20103, // Giant Spider + 20106, // Talon Spider + 20108, // Blade Spider + }; + // Items + private static final int SPIDER_SKIN = 1495; + // Misc + private static final int MIN_LVL = 15; + private static final int SKIN_COUNT = 10; + private static final int SKIN_REWARD = 25; + private static final int SKIN_BONUS = 250; + private static final Map CONSUMABLES = new HashMap<>(); + static + { + CONSUMABLES.put("30405-04.html", new ItemHolder(1061, 2)); // Greater Healing Potion + CONSUMABLES.put("30405-05.html", new ItemHolder(17, 250)); // Wooden Arrow + CONSUMABLES.put("30405-05a.html", new ItemHolder(1835, 60)); // Soulshot: No Grade + CONSUMABLES.put("30405-05c.html", new ItemHolder(2509, 30)); // Spiritshot: No Grade + } + + public Q00259_RequestFromTheFarmOwner() + { + super(259); + addStartNpc(EDMOND); + addTalkId(EDMOND, MARIUS); + addKillId(MONSTERS); + registerQuestItems(SPIDER_SKIN); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st == null) + { + return htmltext; + } + + switch (event) + { + case "30405-03.html": + case "30405-05b.html": + case "30405-05d.html": + case "30497-07.html": + { + htmltext = event; + break; + } + case "30405-04.html": + case "30405-05.html": + case "30405-05a.html": + case "30405-05c.html": + { + if (getQuestItemsCount(player, SPIDER_SKIN) >= SKIN_COUNT) + { + giveItems(player, CONSUMABLES.get(event)); + takeItems(player, SPIDER_SKIN, SKIN_COUNT); + htmltext = event; + } + break; + } + case "30405-06.html": + { + htmltext = (getQuestItemsCount(player, SPIDER_SKIN) >= SKIN_COUNT) ? event : "30405-07.html"; + break; + } + case "30497-03.html": + { + st.startQuest(); + htmltext = event; + break; + } + case "30497-06.html": + { + st.exitQuest(true, true); + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if (st != null) + { + giveItems(killer, SPIDER_SKIN, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st == null) + { + return htmltext; + } + + switch (npc.getId()) + { + case EDMOND: + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getLevel() >= MIN_LVL) ? "30497-02.htm" : "30497-01.html"; + break; + } + case State.STARTED: + { + if (hasQuestItems(player, SPIDER_SKIN)) + { + final long skins = getQuestItemsCount(player, SPIDER_SKIN); + giveAdena(player, (skins * SKIN_REWARD) + ((skins >= 10) ? SKIN_BONUS : 0), true); + takeItems(player, SPIDER_SKIN, -1); + htmltext = "30497-05.html"; + } + else + { + htmltext = "30497-04.html"; + } + break; + } + } + break; + } + case MARIUS: + { + htmltext = (getQuestItemsCount(player, SPIDER_SKIN) >= SKIN_COUNT) ? "30405-02.html" : "30405-01.html"; + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-01.html new file mode 100644 index 0000000000..60a99a36c7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-01.html @@ -0,0 +1,4 @@ +Sentinel Rayen:
+Stranger with an unfamiliar gaze, please be careful if you should venture outside the village. The woods are full of danger, as there is a war going on between our race of the woods and the kaboo orcs of the Fog Mountains. But do not worry, the Elven warriors will soon drive the orcs out of our woods.
+(Quest for Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-02.html new file mode 100644 index 0000000000..0437d904de --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-02.html @@ -0,0 +1,5 @@ +Sentinel Rayen:
+The orcs of Fog Mountains are becoming bolder and bolder lately. Before, they wouldn't dare set foot into the Elven Forest, and now they dare to come into the village.
+Pretty soon, we plan to recruit brave brothers to help us defeat these fearless invaders. I hope you will take part in this when the time comes.
+(Quest for Elven characters level 6 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-03.htm new file mode 100644 index 0000000000..434be4563e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-03.htm @@ -0,0 +1,6 @@ +Sentinel Rayen:
+The kaboo orcs of the Fog Mountains are becoming bolder and bolder lately. Before, they wouldn't dare set foot into the Elven Forest, and now they dare to come into the village. On top of that, more and more Orc hordes are invading the forest.
+I don't know how the orcs can come near the village, with the guardians keeping watch at the boundary of the woods. They must be avoiding the eyes of the guardians using some clever method.
+The elders have ordered us to recruit brothers who will help us to defeat the kaboo orcs. Shouldn't we punish this fearless race that dares to invade our homes? Would you like to participate?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-04.htm new file mode 100644 index 0000000000..459feb0cf0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-04.htm @@ -0,0 +1,5 @@ +Sentinel Rayen:
+Now go into the Elven Forest and fight the kaboo orcs. But you must keep this in mind. A hierarchy exists within the orcs, and because fighter or leader levels are stronger than lesser orcs, you may be in trouble if you do not take care.
+The lesser orcs carry feather amulets, while the high level orcs wear necklaces made from bones. Gather these items as proof and bring them to me.
+May the goddess guide your blade and arrows! Teach those orcs a stern lesson that they should never even think of setting foot into the Elven Forest! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-05.html new file mode 100644 index 0000000000..39be79cb15 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-05.html @@ -0,0 +1,6 @@ +Sentinel Rayen:
+Why have you come back so soon? Even as we speak, our beautiful woods are being invaded by the Orcs. They are a race that does not know about beauty or purity. We cannot let them violate our home, can we?
+But even if you say that your mind and body are tired, I will not fault or scold you. Sheath your blade at once and take shelter under the shade of the Mother Tree.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-06.html new file mode 100644 index 0000000000..bdf1aca9f5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-06.html @@ -0,0 +1,6 @@ +Sentinel Rayen:
+You have fought well for the brothers of the forest. I will give you a reward for each piece of proof you have brought from slaying kaboo orcs in the battlefield. I am giving this in the name of our Hierarch Asterios, so please do not refuse our gift.
+Now! Shall you go back to the battlefield and fight once more? Or do you wish to stop? Even if you say that you are exhausted in mind and body, I will not fault or scold you.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-07.html new file mode 100644 index 0000000000..47bbebd549 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-07.html @@ -0,0 +1,3 @@ +Sentinel Rayen:
+The brothers of the forest will forever remember your bravery. Sheathe your sword now and seek rest under the shade of the Mother Tree. May the tranquility of the still lakes be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-08.html new file mode 100644 index 0000000000..35c6ab6b30 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/30221-08.html @@ -0,0 +1,3 @@ +Sentinel Rayen:
+I hope you will continue to fight for the brothers of the forest. Teach those kaboo orcs a lesson they will never forget, so that they know how deadly Elven punishment can be, and never dare to set foot in our woods again. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/Q00260_OrcHunting.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/Q00260_OrcHunting.java new file mode 100644 index 0000000000..b9d940dddc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00260_OrcHunting/Q00260_OrcHunting.java @@ -0,0 +1,146 @@ +/* + * 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.Q00260_OrcHunting; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Orc Hunting (260) + * @author xban1x + */ +public final class Q00260_OrcHunting extends Quest +{ + // NPC + private static final int RAYEN = 30221; + // Items + private static final int ORC_AMULET = 1114; + private static final int ORC_NECKLACE = 1115; + // Monsters + private static final Map MONSTERS = new HashMap<>(); + static + { + MONSTERS.put(20468, ORC_AMULET); // Kaboo Orc + MONSTERS.put(20469, ORC_AMULET); // Kaboo Orc Archer + MONSTERS.put(20470, ORC_AMULET); // Kaboo Orc Grunt + MONSTERS.put(20471, ORC_NECKLACE); // Kaboo Orc Fighter + MONSTERS.put(20472, ORC_NECKLACE); // Kaboo Orc Fighter Leader + MONSTERS.put(20473, ORC_NECKLACE); // Kaboo Orc Fighter Lieutenant + } + // Misc + private static final int MIN_LVL = 6; + + public Q00260_OrcHunting() + { + super(260); + addStartNpc(RAYEN); + addTalkId(RAYEN); + addKillId(MONSTERS.keySet()); + registerQuestItems(ORC_AMULET, ORC_NECKLACE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st == null) + { + return htmltext; + } + + switch (event) + { + case "30221-04.htm": + { + st.startQuest(); + htmltext = event; + break; + } + case "30221-07.html": + { + st.exitQuest(true, true); + htmltext = event; + break; + } + case "30221-08.html": + { + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && (getRandom(10) > 4)) + { + giveItems(killer, MONSTERS.get(npc.getId()), 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.ELF) ? (player.getLevel() >= MIN_LVL) ? "30221-03.htm" : "30221-02.html" : "30221-01.html"; + break; + } + case State.STARTED: + { + if (hasAtLeastOneQuestItem(player, getRegisteredItemIds())) + { + final long amulets = getQuestItemsCount(player, ORC_AMULET); + final long necklaces = getQuestItemsCount(player, ORC_NECKLACE); + giveAdena(player, ((amulets * 12) + (necklaces * 30) + ((amulets + necklaces) >= 10 ? 1000 : 0)), true); + takeItems(player, -1, getRegisteredItemIds()); + // Q00281_HeadForTheHills.giveNewbieReward(player); + htmltext = "30221-06.html"; + } + else + { + htmltext = "30221-05.html"; + } + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/30222-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/30222-01.htm new file mode 100644 index 0000000000..fbaa5a8b2e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/30222-01.htm @@ -0,0 +1,5 @@ +Alshupes:
+Lately I've put aside the money lending business and have taken up the hobby of collecting the skins or claws of rare animals. There are many that criticize my hobby, saying that only Humans would gather the bodies of dead animals as trophies, but these are the same people that turn around and come to see or borrow them for a few days, saying that they need them for magic research -- of course, asking me to keep it a secret from everyone else.
+One day, when you become skilled enough to hunt rare animals, stop by and see me. I will give you a rewarding task to complete. Right now, though, I think it would be far too difficult for you.
+(Quest for characters level 15 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/30222-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/30222-02.htm new file mode 100644 index 0000000000..447e1ef026 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/30222-02.htm @@ -0,0 +1,4 @@ +Alshupes:
+Lately I've put aside the money lending business and have taken up the hobby of collecting the skins or claws of rare animals. There are many that criticize my hobby, saying that only Humans would gather the bodies of dead animals as trophies, but these are the same people that turn around and come to see or borrow them for a few days, saying that they need them for magic research -- of course, asking me to keep it a secret from everyone else.
So how about it, will you take on a job for me? It involves searching the fields and hunting rare animals for trophies. I can't say it's an easy task, but I will compensate you generously for your labor. What do you say, would you like to give it a try?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/30222-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/30222-03.htm new file mode 100644 index 0000000000..ec377f4bbd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/30222-03.htm @@ -0,0 +1,4 @@ +Alshupes:
+Currently, my main interest is in the large insects that I saw while traveling in the Human land of Gludio. As you would know if you studied history, when the Mystics of the Ivory Tower battled the Dark Sorcerer Beleth, also called a devil by the Humans of old, the strong magical energy which arose from their combat caused southern Gludio to become a barren plain and produced abnormalities such as ants the size of houses and spiders the size of Buffalos.
+In the last ten years, those great spiders have spread even to these Elven Woods. The tame creatures that have become accustomed to the care of the spirits and fairies of our woods are the perfect prey for those gigantic predators. Isn't that interesting? There are three kinds of giant spiders: crimson spiders, hook spiders, and pincer spiders. I don't have a preference, but I want to put into my hands a giant spider trophy. What you must do for me is to hunt the great spiders in the forest, cut off eight legs, and bring them back to me. It is a bit dangerous, but I will reward you generously for your efforts. Giant spiders are often found past the first three-way junction to the west of the village. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/30222-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/30222-04.html new file mode 100644 index 0000000000..2520127d76 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/30222-04.html @@ -0,0 +1,3 @@ +Alshupes:
+Didn't I ask you to fetch eight Giant Spider Legs for me? I don't care if it is a crimson spider, hook spider, or a pincer spider. Bring me all eight and I will pay you generously, as promised. The giant spiders are mostly found past the first three-way junction to the west of the village. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/30222-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/30222-05.html new file mode 100644 index 0000000000..ddfc469611 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/30222-05.html @@ -0,0 +1,4 @@ +Alshupes:
+Oh, so you've managed to get them. I guess I will have to see you in a new light. You're more skilled than you appear.
+Here is your reward. Thank you for your good work. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/Q00261_CollectorsDream.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/Q00261_CollectorsDream.java new file mode 100644 index 0000000000..9433949330 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00261_CollectorsDream/Q00261_CollectorsDream.java @@ -0,0 +1,146 @@ +/* + * 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.Q00261_CollectorsDream; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.model.variables.PlayerVariables; +import com.l2jmobius.gameserver.network.NpcStringId; +import com.l2jmobius.gameserver.network.serverpackets.ExShowScreenMessage; +import com.l2jmobius.gameserver.util.Util; + +/** + * Collector's Dream (261) + * @author xban1x + */ +public final class Q00261_CollectorsDream extends Quest +{ + // Npc + private static final int ALSHUPES = 30222; + // Monsters + private static final int[] MONSTERS = new int[] + { + 20308, // Hook Spider + 20460, // Crimson Spider + 20466, // Pincer Spider + }; + // Item + private static final int SPIDER_LEG = 1087; + // Misc + private static final int MIN_LVL = 15; + private static final int MAX_LEG_COUNT = 8; + // Message + private static final ExShowScreenMessage MESSAGE = new ExShowScreenMessage(NpcStringId.LAST_DUTY_COMPLETE_N_GO_FIND_THE_NEWBIE_HELPER, 2, 5000); + + public Q00261_CollectorsDream() + { + super(261); + addStartNpc(ALSHUPES); + addTalkId(ALSHUPES); + addKillId(MONSTERS); + registerQuestItems(SPIDER_LEG); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equals("30222-03.htm")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(1) && Util.checkIfInRange(1500, npc, killer, true)) + { + if (giveItemRandomly(killer, SPIDER_LEG, 1, MAX_LEG_COUNT, 1, true)) + { + st.setCond(2); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getLevel() >= MIN_LVL) ? "30222-02.htm" : "30222-01.htm"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + htmltext = "30222-04.html"; + break; + } + case 2: + { + if (getQuestItemsCount(player, SPIDER_LEG) >= MAX_LEG_COUNT) + { + giveNewbieReward(player); + giveAdena(player, 1000, true); + addExpAndSp(player, 2000, 0); + st.exitQuest(true, true); + htmltext = "30222-05.html"; + } + break; + } + } + break; + } + } + return htmltext; + } + + public static void giveNewbieReward(L2PcInstance player) + { + final PlayerVariables vars = player.getVariables(); + if (vars.getString("GUIDE_MISSION", null) == null) + { + vars.set("GUIDE_MISSION", 100000); + player.sendPacket(MESSAGE); + } + else if (((vars.getInt("GUIDE_MISSION") % 100000000) / 10000000) != 1) + { + vars.set("GUIDE_MISSION", vars.getInt("GUIDE_MISSION") + 10000000); + player.sendPacket(MESSAGE); + } + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/30137-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/30137-01.htm new file mode 100644 index 0000000000..294eb7742d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/30137-01.htm @@ -0,0 +1,5 @@ +Trader Vollodos:
+I travel to Oren's Ivory Tower once or twice a year. What kind of place is the Ivory Tower of Oren, you ask? It is the headquarters of Mystics, as well as an educational institute, and a place where Mystics gather. You can get useful magic potions and materials from the Traders or Mystics of the Ivory Tower.
+But during my recent visit, some of them asked me to bring them magic materials that can only be found in our Dark Forest. They said that they would pay handsomely for the items they need. So I've recently started to sell goods such as the wings of an imp or an arachne's web there. I'm looking to see if I can gather some more precious items for sale. I will ask for your help when the time comes. I'm going to need more hands if I want to gather large amounts of any item.
+(Quest for characters level 8 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/30137-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/30137-02.htm new file mode 100644 index 0000000000..293fd0e44d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/30137-02.htm @@ -0,0 +1,6 @@ +Trader Vollodos:
+I travel to Oren's Ivory Tower once or twice a year. What kind of place is the Ivory Tower of Oren, you ask? It is the headquarters of Mystics, as well as an educational institute, and a place where Mystics gather. You can get useful magic potions and materials from the Traders or Mystics of the Ivory Tower.
+A few of the Ivory Tower Mystics have asked me to bring them magic materials that can only be found in our Dark Forest. They pay handsomely for the materials that I bring them, and it occurred to me that this might be the beginning of a good business. So I plan to go into it a bit deeper.
+During my last visit I noticed that there were many Mystics looking for mushroom spores. These spores can only be obtained from the green fungus or the blood fungus that appear in our Dark Forest. The fungi are strange, mushroom-shaped life forms that have formed from the fermented spores carried over from the Sea of Spores. It is dangerous for a mere businessman like myself to face the fungi alone. Which brings me to my point. Do you think you could go and get me some? I will pay you well for them.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/30137-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/30137-03.htm new file mode 100644 index 0000000000..ec5a4764c1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/30137-03.htm @@ -0,0 +1,4 @@ +Trader Vollodos:
+You must travel far from the village to find the fungus. They grow in the deep southern region of the Dark Forest, and also near the School of Dark Arts. You can get the Spore Sac by killing the fungus, but sometimes the Spore Sac explodes when the fungus is killed, so you will probably have to hunt many fungi.
+Gather ten Spore Sacs and bring them back to me. Your payment will be more than fair, so do not worry. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/30137-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/30137-04.html new file mode 100644 index 0000000000..e3b115a75c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/30137-04.html @@ -0,0 +1,3 @@ +Trader Vollodos:
+Weren't you supposed to bring me ten fungus Spore Sacs? If you bring me ten of them as promised, I will give you the reward. Hurry! The carriage travelling to the Ivory Tower leaves in a few days, and I must have the goods ready by then. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/30137-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/30137-05.html new file mode 100644 index 0000000000..6d7836a5c8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/30137-05.html @@ -0,0 +1,4 @@ +Trader Vollodos:
+This is undoubtedly a fungus Spore Sac. Thank you. I'll compensate you as I promised. I am sure that the magicians of Ivory Tower will also be satisfied. I wonder what I can get in return for this trade.
+Come by the shop anytime. May the protection of Shilen be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/Q00262_TradeWithTheIvoryTower.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/Q00262_TradeWithTheIvoryTower.java new file mode 100644 index 0000000000..3aa9bc59f0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00262_TradeWithTheIvoryTower/Q00262_TradeWithTheIvoryTower.java @@ -0,0 +1,144 @@ +/* + * 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.Q00262_TradeWithTheIvoryTower; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.Config; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Trade With The Ivory Tower (262) + * @author ivantotov + */ +public final class Q00262_TradeWithTheIvoryTower extends Quest +{ + // NPCs + private static final int VOLLODOS = 30137; + // Items + private static final int SPORE_SAC = 707; + // Misc + private static final int MIN_LEVEL = 8; + private static final int REQUIRED_ITEM_COUNT = 10; + // Monsters + private static final Map MOBS_SAC = new HashMap<>(); + + static + { + MOBS_SAC.put(20007, 3); // Green Fungus + MOBS_SAC.put(20400, 4); // Blood Fungus + } + + public Q00262_TradeWithTheIvoryTower() + { + super(262); + addStartNpc(VOLLODOS); + addTalkId(VOLLODOS); + addKillId(MOBS_SAC.keySet()); + registerQuestItems(SPORE_SAC); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equalsIgnoreCase("30137-03.htm")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon) + { + final L2PcInstance partyMember = getRandomPartyMember(player, 1); + if (partyMember == null) + { + return super.onKill(npc, player, isSummon); + } + + final QuestState st = getQuestState(partyMember, false); + float chance = (MOBS_SAC.get(npc.getId()) * Config.RATE_QUEST_DROP); + if (getRandom(10) < chance) + { + rewardItems(partyMember, SPORE_SAC, 1); + if (getQuestItemsCount(partyMember, SPORE_SAC) >= REQUIRED_ITEM_COUNT) + { + st.setCond(2, true); + } + else + { + playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + return super.onKill(npc, player, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = player.getLevel() >= MIN_LEVEL ? "30137-02.htm" : "30137-01.htm"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + if (getQuestItemsCount(player, SPORE_SAC) < REQUIRED_ITEM_COUNT) + { + htmltext = "30137-04.html"; + } + break; + } + case 2: + { + if (getQuestItemsCount(player, SPORE_SAC) >= REQUIRED_ITEM_COUNT) + { + htmltext = "30137-05.html"; + giveAdena(player, 3000, true); + st.exitQuest(true, true); + } + break; + } + } + break; + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-01.htm new file mode 100644 index 0000000000..0b57e59be7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-01.htm @@ -0,0 +1,5 @@ +Sentry Kayleen:
+Foreign traveler, do not wander around this place. Please conduct your business in the village quickly and leave. Soon, our Dark Elven Race will go to war with the balor orcs of the Misty Mountains.
+When the fighting begins, the roads will become dangerous and you may be forced to stay here. So if you have somewhere else you need to get to, it would be better to hurry.
+(Quest for Dark Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-02.htm new file mode 100644 index 0000000000..7699b6dbec --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-02.htm @@ -0,0 +1,5 @@ +Sentry Kayleen:
+I don't know why, but the Balor Orcs, who had been hiding in the Misty Mountains, have started to invade our forest in groups. It is unpardonable that the Balor Orcs, who used to be our slaves, have forgotten their place and dare to challenge us!
+The Assassin scouts are following the movements of the Balor Orcs at this very moment. As soon as accurate information is received, Tetrarch Vellior will give the command to strike. When the time comes, you should also participate in the battle! We must launch a full-scale attack and drive the Balor Orcs out of our woods!
+(Quest for characters level 8 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-03.htm new file mode 100644 index 0000000000..11d49806bb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-03.htm @@ -0,0 +1,6 @@ +Sentry Kayleen:
+I do not know why, but the balor orcs, who had been hiding in the Misty Mountains, have started to invade our forest in groups. It is unpardonable that the balor orcs, who used to be our slaves, have forgotten their place and dare to challenge us!
+According to the reports of the assassin scouts, the balor orcs are not simply coming to pillage, but are preparing for a large-scale migration. A sudden invasion of the balor orcs ... Perhaps those cunning Elves of Light are behind this!
+These woods are our home. We have defended ourselves every time the greedy Humans or the Elves of Light invaded us. We cannot allow an inferior race like the balor orcs to threaten our woods! All the Warriors of our race must come together to punish them in the name of Shilen. Would you like to participate?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-04.htm new file mode 100644 index 0000000000..6923c0a4ad --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-04.htm @@ -0,0 +1,5 @@ +Sentry Kayleen:
+Go to the woods and strike down any balor orcs you meet! Someone with your skills can easily take care of the Balor Orc archers, but the fighters and leaders are much stronger than regular balor orcs, so do not let your guard down!
+Tetrarch Vellior made a proclamation just a few days ago. The more balor orcs that are killed, the greater reward he will give. Slay the balor orcs and bring back something to serve as proof of your deed. The archers carry feather amulets, while the fighters and leaders wear a necklace crafted of bone pieces. If you collect these and bring them to me, I will give you a reward according to the number of items you present.
+Excellent! May you go forth in the name of Shilen and present fear as dark as the abyss and a death as cold as the deep lakes to those invaders who have violated our land! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-05.html new file mode 100644 index 0000000000..a28271bd9c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-05.html @@ -0,0 +1,6 @@ +Sentry Kayleen:
+Why are your hands so clean when they should be stained with the blood of the balor orcs? Go quickly into the woods and dispose of the balor orcs! Go forth in the name of Shilen and take fear as dark as the abyss and death as cold as the deep lakes to those invaders who have violated our land!
+You do not want to give up, do you? Do you not hear the balor orcs on the battlefield outside of the village mocking you? Would you turn and run from their taunts?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-06.html new file mode 100644 index 0000000000..d2e96b189e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-06.html @@ -0,0 +1,6 @@ +Sentry Kayleen:
+You have fought very well. In the name of Tetrarch Vellior, I will give you a reward for every balor Orc that you strike down. Those who fight on behalf of the race of darkness will reap a rich reward for their bravery.
+But the battle is not over yet. The foreign invaders still lurk in our woods! Will you go back into the battlefield, or will you stop fighting now?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-07.html new file mode 100644 index 0000000000..e2645994cf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-07.html @@ -0,0 +1,3 @@ +Sentry Kayleen:
+Then set down your sword and staff now, and go seek rest. May you find tranquility and safety in the darkness of the abyss. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-08.html new file mode 100644 index 0000000000..0d6c3d01bd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/30346-08.html @@ -0,0 +1,4 @@ +Sentry Kayleen:
+Bring death upon the fighters and an unforgettable fear upon their widows, so that the balor orcs will never again dream of coming into our woods.
+May Shilen's will guide your sword and arrows straight to the hearts of your enemies! May Gran Kain increase the strength of your spells and spirits! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/Q00263_OrcSubjugation.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/Q00263_OrcSubjugation.java new file mode 100644 index 0000000000..e2a9ff9d11 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00263_OrcSubjugation/Q00263_OrcSubjugation.java @@ -0,0 +1,143 @@ +/* + * 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.Q00263_OrcSubjugation; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Orc Subjugation (263) + * @author ivantotov + */ +public final class Q00263_OrcSubjugation extends Quest +{ + // NPCs + private static final int KAYLEEN = 30346; + // Items + private static final int ORC_AMULET = 1116; + private static final int ORC_NECKLACE = 1117; + // Misc + private static final int MIN_LEVEL = 8; + // Monsters + private static final Map MONSTERS = new HashMap<>(); + static + { + MONSTERS.put(20385, ORC_AMULET); // Balor Orc Archer + MONSTERS.put(20386, ORC_NECKLACE); // Balor Orc Fighter + MONSTERS.put(20387, ORC_NECKLACE); // Balor Orc Fighter Leader + MONSTERS.put(20388, ORC_NECKLACE); // Balor Orc Lieutenant + } + + public Q00263_OrcSubjugation() + { + super(263); + addStartNpc(KAYLEEN); + addTalkId(KAYLEEN); + addKillId(MONSTERS.keySet()); + registerQuestItems(ORC_AMULET, ORC_NECKLACE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st == null) + { + return htmltext; + } + + switch (event) + { + case "30346-04.htm": + { + st.startQuest(); + htmltext = event; + break; + } + case "30346-07.html": + { + st.exitQuest(true, true); + htmltext = event; + break; + } + case "30346-08.html": + { + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && (getRandom(10) > 4)) + { + giveItems(killer, MONSTERS.get(npc.getId()), 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.DARK_ELF) ? (player.getLevel() >= MIN_LEVEL) ? "30346-03.htm" : "30346-02.htm" : "30346-01.htm"; + break; + } + case State.STARTED: + { + if (hasAtLeastOneQuestItem(player, getRegisteredItemIds())) + { + final long amulets = getQuestItemsCount(player, ORC_AMULET); + final long necklaces = getQuestItemsCount(player, ORC_NECKLACE); + giveAdena(player, ((amulets * 20) + (necklaces * 30) + ((amulets + necklaces) >= 10 ? 1100 : 0)), true); + takeItems(player, -1, getRegisteredItemIds()); + htmltext = "30346-06.html"; + } + else + { + htmltext = "30346-05.html"; + } + break; + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/30136-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/30136-01.htm new file mode 100644 index 0000000000..f7460b1370 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/30136-01.htm @@ -0,0 +1,5 @@ +Trader Payne:
+The arrows sold in this store are specially crafted by my hands. As you know, the shaft is made from ash and the tips are made from Steel or adamantium.
+But sometimes I get orders for custom-made arrows. For example, the Assassin Kiel Nighthawk has ordered a claw-shaped arrowhead made of Wolf Claws. He is away at the siege battle in Giran right now, but I am sure he will order arrowheads again when he returns. I'd like you to help me gather the Wolf Claws when that time comes.
+(Quest for characters level 3 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/30136-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/30136-02.htm new file mode 100644 index 0000000000..967f9a1d98 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/30136-02.htm @@ -0,0 +1,6 @@ +Trader Payne:
+The arrows sold in this store are specially crafted by my hands. As you know, the shaft is made from ash and the tips are made from Steel or adamantium.
+But sometimes I get orders for custom-made arrows. Just a few days ago, Assassin Kiel Nighthawk placed an order for claw-shaped arrows made from Wolf Claws. Hooked arrows made from claws are difficult to pull out once they are lodged in the body, and create great internal wounds.
+Kiel said that he had to leave for a castle siege soon and to complete the arrows within a week. However, time is too short and I must ask your assistance. Could you help me gather the Wolf Claws?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/30136-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/30136-03.htm new file mode 100644 index 0000000000..73c123c97c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/30136-03.htm @@ -0,0 +1,5 @@ +Trader Payne:
+Thank you. Your task is fairly simple. Collect fifty Wolf Claws and bring them to me. You can acquire the claws by hunting the ashen wolves or goblins outside of the village. The lowest goblins have crude talismans made by stringing Wolf Claws.
+As a reward for helping me, I will give you a good one among the things that I possess. I swear on the eye of Shilen which observes everything, that I will faithfully fulfill the terms of our Contract.
+Now, Wonderful! I thank you in advance. There is not much time, so please hurry. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/30136-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/30136-04.html new file mode 100644 index 0000000000..19b9efc003 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/30136-04.html @@ -0,0 +1,4 @@ +Trader Payne:
+According to the Contract we have entered into, you must gather fifty Wolf Claws and bring them to me. You can acquire the claws by hunting the ashen wolves or goblins outside of the village. The lowest goblins have crude talismans made by stringing Wolf Claws.
+Now hurry! There is not much time left. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/30136-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/30136-05.html new file mode 100644 index 0000000000..5dc5c64867 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/30136-05.html @@ -0,0 +1,4 @@ +Trader Payne:
+Thank you. I see you have brought me fifty Wolf Claws. Now I can start on the special arrows that Kiel has ordered. I hope I can finish them in time, before he leaves for Pabel.
+According to our Contract, I will give you this. It may not be flashy, but it is light and very strong, and will surely be useful one day. Now, shall we go our separate ways? May the shelter of the abyss envelope you until we meet again. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/Q00264_KeenClaws.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/Q00264_KeenClaws.java new file mode 100644 index 0000000000..85a3777781 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00264_KeenClaws/Q00264_KeenClaws.java @@ -0,0 +1,163 @@ +/* + * 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.Q00264_KeenClaws; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Keen Claws (264) + * @author xban1x + */ +public final class Q00264_KeenClaws extends Quest +{ + // Npc + private static final int PAINT = 30136; + // Item + private static final int WOLF_CLAW = 1367; + // Monsters + private static final Map> MONSTER_CHANCES = new HashMap<>(); + // Rewards + private static final Map> REWARDS = new HashMap<>(); + // Misc + private static final int MIN_LVL = 3; + private static final int WOLF_CLAW_COUNT = 50; + static + { + MONSTER_CHANCES.put(20003, Arrays.asList(new ItemHolder(2, 25), new ItemHolder(8, 50))); + MONSTER_CHANCES.put(20456, Arrays.asList(new ItemHolder(1, 80), new ItemHolder(2, 100))); + + REWARDS.put(1, Arrays.asList(new ItemHolder(4633, 1))); + REWARDS.put(2, Arrays.asList(new ItemHolder(57, 2000))); + REWARDS.put(5, Arrays.asList(new ItemHolder(5140, 1))); + REWARDS.put(8, Arrays.asList(new ItemHolder(735, 1), new ItemHolder(57, 50))); + REWARDS.put(11, Arrays.asList(new ItemHolder(737, 1))); + REWARDS.put(14, Arrays.asList(new ItemHolder(734, 1))); + REWARDS.put(17, Arrays.asList(new ItemHolder(35, 1), new ItemHolder(57, 50))); + } + + public Q00264_KeenClaws() + { + super(264); + addStartNpc(PAINT); + addTalkId(PAINT); + addKillId(MONSTER_CHANCES.keySet()); + registerQuestItems(WOLF_CLAW); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equals("30136-03.htm")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(1)) + { + final int random = getRandom(100); + for (ItemHolder drop : MONSTER_CHANCES.get(npc.getId())) + { + if (random < drop.getCount()) + { + if (giveItemRandomly(killer, WOLF_CLAW, drop.getId(), WOLF_CLAW_COUNT, 1, true)) + { + st.setCond(2); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getLevel() >= MIN_LVL) ? "30136-02.htm" : "30136-01.htm"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + htmltext = "30136-04.html"; + break; + } + case 2: + { + if (getQuestItemsCount(player, WOLF_CLAW) >= WOLF_CLAW_COUNT) + { + final int chance = getRandom(17); + for (Map.Entry> reward : REWARDS.entrySet()) + { + if (chance < reward.getKey()) + { + for (ItemHolder item : reward.getValue()) + { + rewardItems(player, item); + } + if (chance == 0) + { + playSound(player, QuestSound.ITEMSOUND_QUEST_JACKPOT); + } + break; + } + } + st.exitQuest(true, true); + htmltext = "30136-05.html"; + } + break; + } + } + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-01.html new file mode 100644 index 0000000000..f6e7f95ea2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-01.html @@ -0,0 +1,4 @@ +Sentry Kristin:
+Traveler of another race, we of the dark believe that the act of requesting the assistance of another is a sign of weakness. No matter how difficult the situation may be, I will never ask any favors of you.
+(Quest for Dark Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-02.html new file mode 100644 index 0000000000..90ba03d49f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-02.html @@ -0,0 +1,5 @@ +Sentry Kristin:
+Have you ever seen imps in the forest? Those hideous creatures were once slaves that served our race. However, they undid the spells of restraint through some unknown method and escaped aboveground. When I look at that lowly race that used to serve us parading around aboveground, I feel so... I cannot contain my hurt pride.
+However, recently Tetrarch Vellior said he is preparing a spell that will make the imps submissive again. Soon, those rude imps will once again call us their masters!
+(Quest for characters level 6 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-03.htm new file mode 100644 index 0000000000..2e8772ed17 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-03.htm @@ -0,0 +1,6 @@ +Sentry Kristin:
+Have you seen imps in the forest? Those hideous creatures were once slaves that served our race. However, when we were at war with the Elves of Light, they undid the spells of restraint through some unknown method and escaped aboveground.
+When I look at the lowly race that used to serve us parading around aboveground, I feel so ... I cannot contain my hurt pride.
+However, recently Tetrarch Velior said he is preparing a spell that will make the imps submissive again. But he mentioned that he needs the shackles from around their necks in order to complete the spell. Would you go into the woods to slay those rude imps and collect their shackles?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-04.htm new file mode 100644 index 0000000000..9aab36e9d6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-04.htm @@ -0,0 +1 @@ +Sentry Kristin:
Good. Go into the forest and strike down any imp you meet, collect the shackles around their necks, and bring them to me. I will compensate you for every shackle you bring me.
In the name of the goddess, may your hunt meet great success! Soon those arrogant imps will once again call us their masters! diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-05.html new file mode 100644 index 0000000000..6c82562f3d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-05.html @@ -0,0 +1,5 @@ +Sentry Kristin:
+You have come back empty-handed. Are you tired of the hunt already? As I have said before, only those who return with the shackles from the imp's necks will receive the reward.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-06.html new file mode 100644 index 0000000000..85e749282f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-06.html @@ -0,0 +1,6 @@ +Sentry Kristin:
+Have you come back after teaching a lesson to that lowly race that has forgotten its place? The shackles you have returned with will be useful for Tetrarch Vellior's spell research. As promised, I will reward you for each shackle you have brought me.
+If you are not tired of the hunt yet, could you continue a little more? I don't know whether the spell research is going well ... But the Tetrarch says that he needs more shackles.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-07.html new file mode 100644 index 0000000000..9c85e56978 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-07.html @@ -0,0 +1,5 @@ +Sentry Kristin:
+Good. We sentries will take care of hunting the rest of the imps.
+Ah! About those imps ... Keep this information to yourself ... I overheard the Elders talking and ... they say that the imps are resisting the submission spell. I hear the elders are preparing an even stronger spell ...
+Perhaps the rumor is true that there is a magic user among the imps. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-08.html new file mode 100644 index 0000000000..9a1e01761d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/30357-08.html @@ -0,0 +1,3 @@ +Sentry Kristin:
+Please carry on, then. In the name of the goddess, I pray that your hunt may yield great plenty. Soon, those arrogant imps will once again call us their masters! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/Q00265_BondsOfSlavery.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/Q00265_BondsOfSlavery.java new file mode 100644 index 0000000000..d1a446380c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00265_BondsOfSlavery/Q00265_BondsOfSlavery.java @@ -0,0 +1,140 @@ +/* + * 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.Q00265_BondsOfSlavery; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Bonds of Slavery (265) + * @author xban1x + */ +public final class Q00265_BondsOfSlavery extends Quest +{ + // Item + private static final int IMP_SHACKLES = 1368; + // NPC + private static final int KRISTIN = 30357; + // Misc + private static final int MIN_LVL = 6; + // Monsters + private static final Map MONSTERS = new HashMap<>(); + static + { + MONSTERS.put(20004, 5); // Imp + MONSTERS.put(20005, 6); // Imp Elder + } + + public Q00265_BondsOfSlavery() + { + super(265); + addStartNpc(KRISTIN); + addTalkId(KRISTIN); + addKillId(MONSTERS.keySet()); + registerQuestItems(IMP_SHACKLES); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st == null) + { + return htmltext; + } + + switch (event) + { + case "30357-04.htm": + { + st.startQuest(); + htmltext = event; + break; + } + case "30357-07.html": + { + st.exitQuest(true, true); + htmltext = event; + break; + } + case "30357-08.html": + { + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && (getRandom(10) < MONSTERS.get(npc.getId()))) + { + giveItems(killer, IMP_SHACKLES, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.DARK_ELF) ? (player.getLevel() >= MIN_LVL) ? "30357-03.htm" : "30357-02.html" : "30357-01.html"; + break; + } + case State.STARTED: + { + if (hasQuestItems(player, IMP_SHACKLES)) + { + final long shackles = getQuestItemsCount(player, IMP_SHACKLES); + giveAdena(player, (shackles * 12) + (shackles >= 10 ? 500 : 0), true); + takeItems(player, IMP_SHACKLES, -1); + // Q00281_HeadForTheHills.giveNewbieReward(player); + htmltext = "30357-06.html"; + } + else + { + htmltext = "30357-05.html"; + } + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-01.htm new file mode 100644 index 0000000000..3c32e08ff0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-01.htm @@ -0,0 +1,4 @@ +Pixie Murika:
+You are not a child of the forest! I don't wish to receive assistance from one who doesn't understand the order of the forest!
+(Quest for Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-02.htm new file mode 100644 index 0000000000..95552d68c4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-02.htm @@ -0,0 +1,5 @@ +Pixie Murika:
+A few days ago, the king of the birds came to my race and asked for help. Keltirs steal water birds' eggs hidden in the grass, while the wolves devour baby pheasants, and he asked us to slay the greedy animals for him.
+It is true that the keltir and the wolf only act on their inbred natural instincts, but we must stop them from preying on the birds for a time, if we are to restore the balance of the forest! Right now our queen is thinking of ways to protect the birds of the forest. Surely with her insight and wisdom, she will find an excellent solution!
+(Quest for Elven characters level 3 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-03.htm new file mode 100644 index 0000000000..38d7f92e91 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-03.htm @@ -0,0 +1,6 @@ +Pixie Murika:
+A few days ago, the king of the birds came to my race and asked for help. The red keltirs are stealing eggs from the nests of aquatic birds, hidden in the grass, and eating them. Also, the gray wolves are eating the young pheasants. So, they asked us to kill those greedy animals.
+It is true that the keltir and the wolf only act on their inbred natural instinct, but we must stop them from preying on the birds so heavily if we are to recover the balance of the forest!
+Our wise queen has found the perfect solution for protecting the birds. We can protect bird nests and homes by placing talismans that emit a power keltirs and wolves fear. This will prevent them from approaching the birds. But we are having difficulties collecting the necessary materials to create this talisman. Do you think you could help us?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-04.htm new file mode 100644 index 0000000000..e449e4b988 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-04.htm @@ -0,0 +1,3 @@ +Pixie Murika:
+To create the amulets, we need the fangs of the keltir or the wolf. We need many of them, as we plan to place these talismans in many locations. Gather 100 fangs and bring them to me. In return, I will then give you this sparkling stone that I recently found in the grass! I am not sure what it is, but I am sure it is something very valuable! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-05.html new file mode 100644 index 0000000000..3f1ce44b17 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-05.html @@ -0,0 +1,3 @@ +Pixie Murika:
+Have you forgotten already your promise to hunt red keltirs and gray wolves and bring me 100 of their fangs? Keep your promise and I will give you this sparkling stone that I found a few days ago in the forest. I'm sure it is a very valuable stone! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-06.html new file mode 100644 index 0000000000..7ff35d2b01 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/31852-06.html @@ -0,0 +1,4 @@ +Pixie Murika:
+You have brought me 100 fangs as promised! Thank you! Now our queen can make the talismans to protect the birds of the forest. I hope that the day will soon come when songbirds will sing from every tree branch.
+Please don't leave yet! We pixies always repay any help we receive. There! Take this. I found it in the woods a few days ago. Your kind seems to like this kind of sparkling stone, right? This is a very precious stone, isn't it? Am I wrong? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/Q00266_PleasOfPixies.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/Q00266_PleasOfPixies.java new file mode 100644 index 0000000000..7367300371 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00266_PleasOfPixies/Q00266_PleasOfPixies.java @@ -0,0 +1,181 @@ +/* + * 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.Q00266_PleasOfPixies; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Pleas of Pixies (266) + * @author xban1x + */ +public final class Q00266_PleasOfPixies extends Quest +{ + // NPC + private static final int PIXY_MURIKA = 31852; + // Items + private static final int PREDATORS_FANG = 1334; + // Monsters + private static final Map> MONSTERS = new HashMap<>(); + static + { + MONSTERS.put(20537, Arrays.asList(new ItemHolder(10, 2))); // Elder Red Keltir + MONSTERS.put(20525, Arrays.asList(new ItemHolder(5, 2), new ItemHolder(10, 3))); // Gray Wolf + MONSTERS.put(20534, Arrays.asList(new ItemHolder(6, 1))); // Red Keltir + MONSTERS.put(20530, Arrays.asList(new ItemHolder(8, 1))); // Young Red Keltir + } + // Rewards + private static final Map> REWARDS = new HashMap<>(); + static + { + REWARDS.put(0, Arrays.asList(new ItemHolder(1337, 1), new ItemHolder(3032, 1))); // Emerald, Recipe: Spiritshot D + REWARDS.put(1, Arrays.asList(new ItemHolder(2176, 1), new ItemHolder(1338, 1))); // Recipe: Leather Boots, Blue Onyx + REWARDS.put(2, Arrays.asList(new ItemHolder(1339, 1), new ItemHolder(1061, 1))); // Onyx, Greater Healing Potion + REWARDS.put(3, Arrays.asList(new ItemHolder(1336, 1), new ItemHolder(1060, 1))); // Glass Shard, Lesser Healing Potion + } + // Misc + private static final int MIN_LVL = 3; + + public Q00266_PleasOfPixies() + { + super(266); + addStartNpc(PIXY_MURIKA); + addTalkId(PIXY_MURIKA); + addKillId(MONSTERS.keySet()); + registerQuestItems(PREDATORS_FANG); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equals("31852-04.htm")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(1)) + { + final int chance = getRandom(10); + for (ItemHolder mob : MONSTERS.get(npc.getId())) + { + if (chance < mob.getId()) + { + if (giveItemRandomly(killer, npc, PREDATORS_FANG, mob.getCount(), 100, 1.0, true)) + { + st.setCond(2); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st == null) + { + return htmltext; + } + switch (st.getState()) + { + case State.CREATED: + { + if (player.getRace() != Race.ELF) + { + htmltext = "31852-01.htm"; + } + else if (player.getLevel() < MIN_LVL) + { + htmltext = "31852-02.htm"; + } + else + { + htmltext = "31852-03.htm"; + } + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + htmltext = "31852-05.html"; + break; + } + case 2: + { + if (getQuestItemsCount(player, PREDATORS_FANG) >= 100) + { + final int chance = getRandom(100); + int reward; + if (chance < 2) + { + reward = 0; + playSound(player, QuestSound.ITEMSOUND_QUEST_JACKPOT); + } + else if (chance < 20) + { + reward = 1; + } + else if (chance < 45) + { + reward = 2; + } + else + { + reward = 3; + } + for (ItemHolder item : REWARDS.get(reward)) + { + rewardItems(player, item); + } + st.exitQuest(true, true); + htmltext = "31852-06.html"; + } + break; + } + } + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-01.htm new file mode 100644 index 0000000000..ff2ed590e3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-01.htm @@ -0,0 +1,5 @@ +Treant Bremec:
+... ... Green woods.forest.trees.most.precious.life.Mother Tree.child.my.brother ... ...
+... ... But.you.not.Mother Tree.child.cannot.understand.forest.order.cannot.help ... ... .
+(Quest for Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-02.htm new file mode 100644 index 0000000000..472e99b52d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-02.htm @@ -0,0 +1,7 @@ +Treant Bremec:
+... ... Green woods.forest.trees.most.precious.life.Mother Tree.child.my.brothers ... ...
+... ... Misty Mountain.Orc.even they.no harm.trees.know.wrath.of forest ... ...
+... ... First.seeing.goblin.stupid.fearless.children.tree.cut.branch.burn.tree.uproot ... ...
+... ...Treant.brothers.death of.our race.sad.angry.foolish.goblin.stomp ... ...
+(Quest for Elven characters level 4 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-03.htm new file mode 100644 index 0000000000..003c2845d0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-03.htm @@ -0,0 +1,9 @@ +Treant Bremec:
+... ... Green woods.forest.trees.most.precious.life.Mother Tree.child.my.brother ... ...
+... ... Misty Mountain.Orc.even they.no harm.trees.know.wrath.of forest ... ...
+... ... Foreign.new. ... ...goblin.stupid.fearless.children.tree.cut.branch.burn.tree.uproot ... ...
+... ... Treants.brothers.death of.our race.sad.angry ... ...goblin.punish ... ...
+But ...goblin.many.number.run away.hide.away.from.Bremec.fury.run.hide ... ...
+... ... You.help. ... ...goblin.forest.destroyer.ruthless.invader.you.punish.avenge.teach.forest.order ... ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-04.htm new file mode 100644 index 0000000000..385a4d55e0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-04.htm @@ -0,0 +1,5 @@ +Treant Bremec:
+... ... You.us.help.green woods.forest.brothers.thank.rejoice ... ...
+... ... Goblin.eradiacate.goblin.hold.weapon.dead.branch.brothers'.bodies.bring.back ... ...
+... ... Keep.promise.I.Bremec.Treant.green woods.protector.valuable.gift.of forest.give ... ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-05.html new file mode 100644 index 0000000000..52cf1f70e7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-05.html @@ -0,0 +1,5 @@ +Treant Bremec:
+... ... Goblin.forest.destroyer.ruthless.invader.you.punish.teach.forest.order ... ...
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-06.html new file mode 100644 index 0000000000..ba4c17f2a7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-06.html @@ -0,0 +1,9 @@ +Treant Bremec:
+... ... Goblin.forest.destroyer.ruthless.invader.you.punish.avenge.teach.forest.order ... ...
+... ... Goblin.weapon.dead.tree branch.brothers'.bodies.you.bring ... ...
+... ... Promise.keep.I.Bremec.protector of.green woods.valuable.gift.of forest.give ... ...
+... ... You.bring.goblin.weapon.dead.branch.I.give.one of.my.gifts.for.each ... ...
+... ... Not.finished.goblin.punish.avenge.eradicate.teach.forest.order ... ...
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-07.html new file mode 100644 index 0000000000..b91d922d49 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-07.html @@ -0,0 +1,3 @@ +Treant Bremec:
+... ... Forest.brothers.thank you.teach.foolish.goblins.forest.lesson.fury of.green woods ... ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-08.html new file mode 100644 index 0000000000..71f5be20b1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/31853-08.html @@ -0,0 +1,4 @@ +Treant Bremec:
+... ... Forest.anger.brothers'.fury.not.end yet ... ...
+... ... Continue.punish.goblin.invader.eradicate.avenge.teach.forest.order ... ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/Q00267_WrathOfVerdure.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/Q00267_WrathOfVerdure.java new file mode 100644 index 0000000000..bc7f98a1de --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00267_WrathOfVerdure/Q00267_WrathOfVerdure.java @@ -0,0 +1,133 @@ +/* + * 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.Q00267_WrathOfVerdure; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Wrath of Verdure (267) + * @author xban1x + */ +public final class Q00267_WrathOfVerdure extends Quest +{ + // NPC + private static final int TREANT_BREMEC = 31853; + // Item + private static final int GOBLIN_CLUB = 1335; + // Monster + private static final int GOBLIN_RAIDER = 20325; + // Reward + private static final int SILVERY_LEAF = 1340; + // Misc + private static final int MIN_LVL = 4; + + public Q00267_WrathOfVerdure() + { + super(267); + addStartNpc(TREANT_BREMEC); + addTalkId(TREANT_BREMEC); + addKillId(GOBLIN_RAIDER); + registerQuestItems(GOBLIN_CLUB); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st != null) + { + switch (event) + { + case "31853-04.htm": + { + st.startQuest(); + htmltext = event; + break; + } + case "31853-07.html": + { + st.exitQuest(true, true); + htmltext = event; + break; + } + case "31853-08.html": + { + htmltext = event; + break; + } + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && (getRandom(10) < 5)) + { + giveItems(killer, GOBLIN_CLUB, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.ELF) ? (player.getLevel() >= MIN_LVL) ? "31853-03.htm" : "31853-02.htm" : "31853-01.htm"; + break; + } + case State.STARTED: + { + if (hasQuestItems(player, GOBLIN_CLUB)) + { + final long count = getQuestItemsCount(player, GOBLIN_CLUB); + rewardItems(player, SILVERY_LEAF, count); + if (count >= 10) + { + giveAdena(player, 600, true); + } + takeItems(player, GOBLIN_CLUB, -1); + htmltext = "31853-06.html"; + } + else + { + htmltext = "31853-05.html"; + } + break; + } + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-01.htm new file mode 100644 index 0000000000..c82a005c68 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-01.htm @@ -0,0 +1,4 @@ +Praetorian Rukain:
+Ha ha! What task would I, Rukain, have for a member of a weak race like yours? Just take care not be bitten on the behind by a ferocious kasha wolf!
+(Quest for Orc characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-02.htm new file mode 100644 index 0000000000..63408431bb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-02.htm @@ -0,0 +1,5 @@ +Praetorian Rukain:
+I can't stand newbies these days! They still smell like milk, but they think they're so great! If only I were not a praetorian, I would knock some of these saucy rascals down with one blow and perhaps get their wits going.
+Hey! Are you glaring at me, kid? You look upset because I disregard you! If you feel offended, why don't you train harder!
+(Quest for Orc characters level 4 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-03.htm new file mode 100644 index 0000000000..e4a3310945 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-03.htm @@ -0,0 +1,5 @@ +Praetorian Rukain:
+I truly cannot stand novices these days! They still smell like milk, but they go around like great lords ...! If I were not a praetorian, I would knock down all those saucy rascals with one swing of my fist. That might start their wits running.
+Hey! Are you glaring at me, youngster? You look offended because I disregard you. Hey, listen! If you don't want to be treated like a novice, you have no choice but to prove to me that you are an excellent fighter.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-04.htm new file mode 100644 index 0000000000..435396eb5d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-04.htm @@ -0,0 +1,4 @@ +Praetorian Rukain:
+Tejakar Pa'agrio! Good! You have quite a strong will! Run to the wilderness outside the village and hunt kasha wolves immediately! And bring fifty fangs that you pulled out of the wolves as proof. Then I, as a praetorian, will acknowledge you as a true Orc Fighter!
+You look frightened already! Ha ha! Hey, kid! You thought it'd be easy to show that you're brave! Anyway, I hope you come back alive! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-05.html new file mode 100644 index 0000000000..99b9113acf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-05.html @@ -0,0 +1,3 @@ +Praetorian Rukain:
+Hey, kid! Why are you back so early? Don't tell me you want to give up already? Don't be a wimp! Run out to the wilderness outside the village and hunt kasha wolves. Don't dream of coming back until you have fifty fangs! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-06.html new file mode 100644 index 0000000000..dc5542c52b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-06.html @@ -0,0 +1,4 @@ +Praetorian Rukain:
+Tejakar Pa'agrio! My young brother, you came back alive! You have fulfilled your task well. It always makes me proud when I see a young friend returning with a fist tightly clasping fangs, with a battered body but a glowing eye!
+Wonderful! Take this! It is a necklace made of wolf fangs. This is a token that shows everyone that you have the combative spirit and courage of a true Orc. Wear it on your chest with pride! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-07.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-07.htm new file mode 100644 index 0000000000..38cbb85492 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-07.htm @@ -0,0 +1,4 @@ +Praetorian Rukain:
+Haven't you already proven your valor and received the necklace? Do you want to try one more time? You overflow with vigor. If you want to go out and fight, I won't hold you back!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-08.html new file mode 100644 index 0000000000..e68d5f0433 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/30577-08.html @@ -0,0 +1,3 @@ +Praetorian Rukain:
+What are you waiting for! Leave now and run to the wilderness outside the village and hunt kasha wolves! And bring fifty fangs that you pulled out of the wolves as proof! Tejakar Pa'agrio! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/Q00271_ProofOfValor.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/Q00271_ProofOfValor.java new file mode 100644 index 0000000000..2c9291f6c5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00271_ProofOfValor/Q00271_ProofOfValor.java @@ -0,0 +1,137 @@ +/* + * 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.Q00271_ProofOfValor; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Proof of Valor (271) + * @author xban1x + */ +public final class Q00271_ProofOfValor extends Quest +{ + // NPC + private static final int RUKAIN = 30577; + // Items + private static final int KASHA_WOLF_FANG = 1473; + // Monsters + private static final int KASHA_WOLF = 20475; + // Rewards + private static final int HEALING_POTION = 1061; + private static final int NECKLACE_OF_COURAGE = 1506; + private static final int NECKLACE_OF_VALOR = 1507; + // Misc + private static final int MIN_LVL = 4; + + public Q00271_ProofOfValor() + { + super(271); + addStartNpc(RUKAIN); + addTalkId(RUKAIN); + addKillId(KASHA_WOLF); + registerQuestItems(KASHA_WOLF_FANG); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equalsIgnoreCase("30577-04.htm")) + { + st.startQuest(); + return hasAtLeastOneQuestItem(player, NECKLACE_OF_VALOR, NECKLACE_OF_COURAGE) ? "30577-08.html" : event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(1)) + { + final long count = getQuestItemsCount(killer, KASHA_WOLF_FANG); + int amount = ((getRandom(100) < 25) && (count < 49)) ? 2 : 1; + giveItems(killer, KASHA_WOLF_FANG, amount); + if ((count + amount) >= 50) + { + st.setCond(2, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = null; + if (st != null) + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.ORC) ? (player.getLevel() >= MIN_LVL) ? (hasAtLeastOneQuestItem(player, NECKLACE_OF_VALOR, NECKLACE_OF_COURAGE)) ? "30577-07.htm" : "30577-03.htm" : "30577-02.htm" : "30577-01.htm"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + htmltext = "30577-05.html"; + break; + } + case 2: + { + if (getQuestItemsCount(player, KASHA_WOLF_FANG) >= 50) + { + if (getRandom(100) <= 13) + { + rewardItems(player, NECKLACE_OF_VALOR, 1); + rewardItems(player, HEALING_POTION, 10); + } + else + { + rewardItems(player, NECKLACE_OF_COURAGE, 1); + } + takeItems(player, KASHA_WOLF_FANG, -1); + st.exitQuest(true, true); + htmltext = "30577-06.html"; + } + break; + } + } + break; + } + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-01.htm new file mode 100644 index 0000000000..d2348367b9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-01.htm @@ -0,0 +1,5 @@ +Seer Livina:
+Tejakar Oroka! Now that the goblins have moved here to the Immortal Plateau, that dirty race has damaged the legacy of our ancestors and stained our holy ground for hundreds of years.
+However, now we Orcs will commence an unmerciful punishment on the goblins! It is not something for one of a different race, like yourself, to meddle in, so be careful not to become involved in the fight for no purpose!
+(Quest for Orc characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-02.htm new file mode 100644 index 0000000000..a6a5d9972d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-02.htm @@ -0,0 +1,6 @@ +Seer Livina:
+Tejakar Oroka! Since the goblins moved here while we were at war against the Elves, they have been damaging the legacy of our ancestors and have been staining our sacred grounds for hundreds of years.
+Just a few days ago, reckless goblin grave robbers dug up our great Urutu graves and dishonored us! Because of this incident, the spirits of our ancestors were furious and appear in our dreams every night, shouting for revenge in blood.
+When the next full moon rises, we plan to cut the head of those unholy grave robbers and calm the fury of the ancestral spirits by performing a sacrificial rite. When the time comes, I will order many young brothers to punish those goblins, so be prepared!
+(Quest for Orc characters level 5 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-03.htm new file mode 100644 index 0000000000..5e8e087c24 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-03.htm @@ -0,0 +1,6 @@ +Seer Livina:
+Tejakar Oroka! Young Orc, you have been guided to me by the spirits of our ancestors. As you already know, since they have moved in here while we were at war against the Elves, the goblins have been damaging the legacy of our ancestors and have been staining our sacred grounds for hundreds of years.
+Just few days ago, reckless goblin grave robbers dug up the great Urutu graves and committed sacrilege! Because of this incident, the spirits of our ancestors were furious and appear in our dreams every night, shouting for revenge in blood.
+The only way to ease their anger is to behead those disrespectful grave robbers and offer them to the ancestors. I order you as a seer. Go, young Orc! Go punish the goblins and burn their village! Show no mercy to those who dug up our ancestors' graves!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-04.htm new file mode 100644 index 0000000000..52f1e97995 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-04.htm @@ -0,0 +1,4 @@ +Seer Livina:
+Tejakar Oroka! Young Orc who fights for the dignity of your race, you must pacify the fury of the ancestors and renew the honor of the Orcs by killing each and every goblin that lives in this land.
+But first, we must make a sacrifice for our ancestors to soothe their spirits! To do that, we need to behead those who dug up the graves. To satisfy our ancestors, we should behead at least fifty grave robbers. So go to the wilderness and kill all the goblin grave robbers you see! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-05.html new file mode 100644 index 0000000000..37e8f62927 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-05.html @@ -0,0 +1,4 @@ +Seer Livina:
+That is not enough to soothe our ancestors' anger! Only when the blood of fifty goblin grave robbers wets the ground and their heads are offered on the altar, will the angry spirits of our ancestors go back to sleep in peace.
+Young Orc, who fights for our pride, teach them the consequences of upsetting us! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-06.html new file mode 100644 index 0000000000..132c135a9a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/30572-06.html @@ -0,0 +1,5 @@ +Seer Livina:
+Tejakar Oroka! May glory be upon the Orcs! With this, the blood of fifty goblin grave diggers has wet the ground and their heads have been sacrificed to our ancestors to pacify their wrath.
+Young Orc, you have done very well! You fought for our pride and you deserve a reward! Take this money and enjoy it as much as you want! Having fun and resting are also ways to prepare for the next battle!
+Now, I must prepare the sacrificial ceremony for the spirits of our ancestors. After you've rested enough, come visit me. This battle shall continue until we clear those dirty goblins out of our land! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/Q00272_WrathOfAncestors.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/Q00272_WrathOfAncestors.java new file mode 100644 index 0000000000..8bc3b632b7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00272_WrathOfAncestors/Q00272_WrathOfAncestors.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.Q00272_WrathOfAncestors; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Wrath of Ancestors (272) + * @author xban1x + */ +public final class Q00272_WrathOfAncestors extends Quest +{ + // NPC + private static final int LIVINA = 30572; + // Items + private static final int GRAVE_ROBBERS_HEAD = 1474; + // Monsters + private static final int[] MONSTERS = new int[] + { + 20319, // Goblin Grave Robber + 20320, // Goblin Tomb Raider Leader + }; + // Misc + private static final int MIN_LVL = 5; + + public Q00272_WrathOfAncestors() + { + super(272); + addStartNpc(LIVINA); + addTalkId(LIVINA); + addKillId(MONSTERS); + registerQuestItems(GRAVE_ROBBERS_HEAD); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equalsIgnoreCase("30572-04.htm")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(1)) + { + giveItems(killer, GRAVE_ROBBERS_HEAD, 1); + if (getQuestItemsCount(killer, GRAVE_ROBBERS_HEAD) >= 50) + { + st.setCond(2, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = null; + if (st != null) + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.ORC) ? (player.getLevel() >= MIN_LVL) ? "30572-03.htm" : "30572-02.htm" : "30572-01.htm"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + htmltext = "30572-05.html"; + break; + } + case 2: + { + giveAdena(player, 1500, true); + st.exitQuest(true, true); + htmltext = "30572-06.html"; + break; + } + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-01.htm new file mode 100644 index 0000000000..b3a9087eda --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-01.htm @@ -0,0 +1,4 @@ +Atuba Chief Varkees:
+Do you think that I, Varkees, Chief of the Atuba tribe, would seek the help of a race of weaklings?! Get out of my sight!
+(Only Orcs may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-02.htm new file mode 100644 index 0000000000..f329d97df1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-02.htm @@ -0,0 +1,5 @@ +Atuba Chief Varkees:
+The almighty Flame Lord has ordered me to defeat the Rakeclaw Imps. Have you ever encountered those disgusting creatures? They are an abomination! Spawned from the blackest magic, their very existence defiles our sacred lands.
+But they are too cowardly to face us alone -- there must be someone or something else controlling them. I have pledged to the Flame Lord that I will find out the truth, no matter what!
+(Only characters who are level 6 and above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-03.htm new file mode 100644 index 0000000000..0723d9f2e0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-03.htm @@ -0,0 +1,6 @@ +Atuba Chief Varkees:
+The almighty Flame Lord has ordered me to wipe those disgusting Rakeclaw Imps from the face of the earth! Have you ever encountered those disgusting creatures? They are an abomination! Spawned from the blackest magic, their very existence defiles our sacred lands.
+But they are too cowardly to face us alone -- there must be someone or something else controlling them. According to our seers, a jeweled Soulstone is embedded in each of their black hearts. This Soulstone enslaves its victim to the will of another.
+The seers also believe that if we gather enough Soulstones, we will be able to turn their own powers against them and discover who is controlling the Imps. I therefore charge you with the task of slaying these filthy Imps and bringing me the Soulstones embedded in their hearts!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-04.htm new file mode 100644 index 0000000000..96c8a55493 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-04.htm @@ -0,0 +1,4 @@ +Atuba Chief Varkees:
+Tejakar Pa'agrio! Then go at once and defeat the Rakeclaw Imps, collect their Soulstones and return here to me! I, Varkees, pledge to reward you for every Soulstones you bring.
+But listen well! Although the Soulstones are originally red, they turn black when they assimilate with the host. Most of the Soulstones you find will have already turned black, but some of the stronger-willed Imps may still have Red Soulstones. Bring me a Red Soulstone and I will give you an even greater reward! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-05.html new file mode 100644 index 0000000000..1a7cd772f8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-05.html @@ -0,0 +1,5 @@ +Atuba Chief Varkees:
+Young Orc, why have you not kept your promise to me?! Leave here at once and slay the Rakeclaw Imps who have invaded our land, then bring me the Soulstones embedded in their craven hearts!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-06.html new file mode 100644 index 0000000000..4e0519869a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-06.html @@ -0,0 +1,6 @@ +Atuba Chief Varkees:
+Tejakar Pa'agrio! You have done well, young Orc. Though you have not found a Red Soulstone, the Black Soulstones you have brought will help us discover who or what is controlling these vile Imps!
+As promised, I will reward you for each of the Soulstones you have brought. If you wish to continue to aid us, I will reward you further.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-07.html new file mode 100644 index 0000000000..7f8a044098 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-07.html @@ -0,0 +1,6 @@ +Atuba Chief Varkees:
+Tejakar Pa'agrio! Ah, the Red Soulstone! Well done, young Orc. With this, the seers will be able to use their magic to discover who or what is controlling these vile Imps.
+Now, as promised, I will reward you for each of the Soulstones you brought. May Pa'agrio smile upon your valor! Will you continue to cleanse our lands of these vermin?
+ + + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-08.html new file mode 100644 index 0000000000..9ca9e8afdd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-08.html @@ -0,0 +1,4 @@ +Atuba Chief Varkees:
+Stop?! Our vengeance against these creatures has just begun, and already you wish to sheathe your weapons and creep away from the field of battle! Are you frightened?
+Young Orc, you dishonor yourself, your tribe and our entire race! Death first! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-09.html new file mode 100644 index 0000000000..ba14060223 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/30566-09.html @@ -0,0 +1,3 @@ +Atuba Chief Varkees:
+Now the seers and I will cast a spell to discover who is controlling these Imps. Meanwhile, you must continue to uphold the honor of our race. Tejakar Pa'agrio! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/Q00273_InvadersOfTheHolyLand.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/Q00273_InvadersOfTheHolyLand.java new file mode 100644 index 0000000000..205af80c86 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00273_InvadersOfTheHolyLand/Q00273_InvadersOfTheHolyLand.java @@ -0,0 +1,146 @@ +/* + * 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.Q00273_InvadersOfTheHolyLand; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Invaders of the Holy Land (273) + * @author xban1x + */ +public final class Q00273_InvadersOfTheHolyLand extends Quest +{ + // NPC + private static final int VARKEES = 30566; + // Items + private static final int BLACK_SOULSTONE = 1475; + private static final int RED_SOULSTONE = 1476; + // Monsters + private static final Map MONSTERS = new HashMap<>(); + static + { + MONSTERS.put(20311, 90); // Rakeclaw Imp + MONSTERS.put(20312, 87); // Rakeclaw Imp Hunter + MONSTERS.put(20313, 77); // Rakeclaw Imp Chieftain + } + // Misc + private static final int MIN_LVL = 6; + + public Q00273_InvadersOfTheHolyLand() + { + super(273); + addStartNpc(VARKEES); + addTalkId(VARKEES); + addKillId(MONSTERS.keySet()); + registerQuestItems(BLACK_SOULSTONE, RED_SOULSTONE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st != null) + { + switch (event) + { + case "30566-04.htm": + { + st.startQuest(); + htmltext = event; + break; + } + case "30566-08.html": + { + st.exitQuest(true, true); + htmltext = event; + break; + } + case "30566-09.html": + { + htmltext = event; + break; + } + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if (st != null) + { + if (getRandom(100) <= MONSTERS.get(npc.getId())) + { + giveItems(killer, BLACK_SOULSTONE, 1); + } + else + { + giveItems(killer, RED_SOULSTONE, 1); + } + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = null; + if (st != null) + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.ORC) ? (player.getLevel() >= MIN_LVL) ? "30566-03.htm" : "30566-02.htm" : "30566-01.htm"; + break; + } + case State.STARTED: + { + if (hasAtLeastOneQuestItem(player, BLACK_SOULSTONE, RED_SOULSTONE)) + { + final long black = getQuestItemsCount(player, BLACK_SOULSTONE); + final long red = getQuestItemsCount(player, RED_SOULSTONE); + giveAdena(player, (red * 10) + (black * 3) + ((red > 0) ? (((red + black) >= 10) ? 1800 : 0) : ((black >= 10) ? 1500 : 0)), true); + takeItems(player, -1, BLACK_SOULSTONE, RED_SOULSTONE); + // Q00281_HeadForTheHills.giveNewbieReward(player); + htmltext = (red > 0) ? "30566-07.html" : "30566-06.html"; + } + else + { + htmltext = "30566-05.html"; + } + break; + } + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-01.html new file mode 100644 index 0000000000..c7c0249b88 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-01.html @@ -0,0 +1,4 @@ +Prefect Brukurse:
+Your courage is admirable, small creature of another race! However, I have no task to give to a weak one like you!
+(Quest for Orc characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-02.html new file mode 100644 index 0000000000..2c8998b005 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-02.html @@ -0,0 +1,5 @@ +Prefect Brukurse:
+This Immortal Plateau has been the holiest land of the Orcs since ancient times! The place where our progenitor -- made by the great Pa'agrio of the flame -- took his first steps, is none other than the Immortal Plateau. However, there is a group of fools that will not understand that this land belongs to us. These wolfmen call themselves maraku and challenge us for our land.
+The Flame Lord Kakai sent an envoy to the wolfmen and politely asked them to leave this land! But they replied to his civil request by returning the envoy's head! We will mercilessly punish those who repay our good will with blood! So, you should not go and prepare yourself for vengeance!
+(Quest for Orc characters level 9 and above, with Necklace of Valor.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-03.htm new file mode 100644 index 0000000000..d42f767d4f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-03.htm @@ -0,0 +1,6 @@ +Prefect Brukurse:
+This Immortal Plateau has been the holiest land of the Orcs since ancient times! The place where our progenitor -- made by the great Pa'agrio of flame -- took his first steps, is none other than the Immortal Plateau. However, there is a group of fools that will not understand that this land belongs to us. These wolfmen call themselves maraku and challenge us for our land.
+The Flame Lord Kakai sent an envoy to the wolfmen and politely asked them to leave this land! But they replied to his civil request by returning the envoy's head!
+How dare they repay our good will with blood! Blood for blood! As things have turned out this way, I of course cannot let a single werewolf live. The wolfmen brought this upon themselves! The lord has ordered us to punish these rash fools without pity. Young Orc! Will you not fight for the dignity of your race?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-04.htm new file mode 100644 index 0000000000..9832260338 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-04.htm @@ -0,0 +1,4 @@ +Prefect Brukurse:
+Tejakar Oroka! Young Orc, go to the wilderness right now and kill those maraku wolfmen without mercy! Collect forty of their severed heads and bring them back to me! The maraku tribe leaders are quite powerful so be careful when you deal with them!
+I will pierce the heads of that proud race with spears, and display them outside the village! They will realize the high price of arousing our anger! Here! Go off and fight! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-05.html new file mode 100644 index 0000000000..e8c49bb5c5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-05.html @@ -0,0 +1,3 @@ +Prefect Brukurse:
+Young Orc, have you come back already? The punishment of those maraku wolfmen who dare to challenge us has not ended yet! Don't even think about coming back here until you have forty werewolf heads! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-06.html new file mode 100644 index 0000000000..e6da3d8353 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-06.html @@ -0,0 +1,4 @@ +Prefect Brukurse:
+Tejakar Oroka! Well done indeed, my young Orc! The severed heads of the werewolves that you brought back will all be skewered on spears and placed outside the village. We will show the world the consequences of challenging us!
+But the maraku wolfmen will not retreat so easily! This is not the end of the war against them. You should take a short rest and restore your energy! However, grease your weapon, tighten the laces on your armor so they do not become loose, and remain prepared to fight at any moment! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-07.html new file mode 100644 index 0000000000..0428aa22aa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-07.html @@ -0,0 +1,5 @@ +Prefect Brukurse:
+Tejakar Oroka! Well done indeed, my young Orc! The crude item in your hand is a totem worshipped by the wolfmen! That is a great war trophy to commemorate this battle. But if you are not interested in trophies, you can sell it to the merchants. I heard some brothers will pay a fortune to get those trophies, maybe to show off their valor!
+The severed heads of the werewolves that you have brought back will be skewered on spears and placed outside the village. We will show the world the consequences of daring to challenge our race!
+But the maraku wolfmen will not retreat so easily! This is not the end of the war against them. You should take a short rest and restore your energy! However, keep your weapons greased and tighten the laces on your armor to remain always prepared to fight! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-08.html new file mode 100644 index 0000000000..ed434eecb0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/30569-08.html @@ -0,0 +1,6 @@ +Prefect Brukurse:
+This Immortal Plateau has been the holiest of lands for the Orcs since ancient times! The place where our progenitor -- made by the great Pa'agrio of flame -- took his first steps, is none other than the Immortal Plateau. However, there is a group of fools that refuses to understand that this land belongs to us. These wolfmen call themselves maraku and challenge us for our land.
+The Flame Lord Kakai sent an envoy to the wolfmen and asked them to leave this land! But they replied to his civil request by returning the envoy's head! We will mercilessly punish those who repay our good will with blood!
+I look at your eyes and I can tell that your blood is boiling with anger already! However, if you wish to fight for the dignity of your race, you must first be acknowledged as an Orc Fighter. Go on to Praetorian Rukain and test your courage!
+(Quest for characters possessing the Necklace of Valor and the Necklace of Courage.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/Q00274_SkirmishWithTheWerewolves.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/Q00274_SkirmishWithTheWerewolves.java new file mode 100644 index 0000000000..0404a88c31 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00274_SkirmishWithTheWerewolves/Q00274_SkirmishWithTheWerewolves.java @@ -0,0 +1,143 @@ +/* + * 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.Q00274_SkirmishWithTheWerewolves; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Skirmish with the Werewolves (274) + * @author xban1x + */ +public final class Q00274_SkirmishWithTheWerewolves extends Quest +{ + // NPC + private static final int BRUKURSE = 30569; + // Monsters + private static final int[] MONSTERS = new int[] + { + 20363, // Maraku Werewolf + 20364, // Maraku Werewolf Chieftain + }; + // Items + private static final int NECKLACE_OF_COURAGE = 1506; + private static final int NECKLACE_OF_VALOR = 1507; + private static final int WEREWOLF_HEAD = 1477; + private static final int WEREWOLF_TOTEM = 1501; + // Misc + private static final int MIN_LVL = 9; + + public Q00274_SkirmishWithTheWerewolves() + { + super(274); + addStartNpc(BRUKURSE); + addTalkId(BRUKURSE); + addKillId(MONSTERS); + registerQuestItems(WEREWOLF_HEAD, WEREWOLF_TOTEM); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equalsIgnoreCase("30569-04.htm")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(1)) + { + giveItems(killer, WEREWOLF_HEAD, 1); + if (getRandom(100) <= 5) + { + giveItems(killer, WEREWOLF_TOTEM, 1); + } + if (getQuestItemsCount(killer, WEREWOLF_HEAD) >= 40) + { + st.setCond(2, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + if (hasAtLeastOneQuestItem(player, NECKLACE_OF_VALOR, NECKLACE_OF_COURAGE)) + { + htmltext = (player.getRace() == Race.ORC) ? (player.getLevel() >= MIN_LVL) ? "30569-03.htm" : "30569-02.html" : "30569-01.html"; + } + else + { + htmltext = "30569-08.html"; + } + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + htmltext = "30569-05.html"; + break; + } + case 2: + { + final long heads = getQuestItemsCount(player, WEREWOLF_HEAD); + if (heads >= 40) + { + final long totems = getQuestItemsCount(player, WEREWOLF_TOTEM); + giveAdena(player, (heads * 30) + (totems * 600) + 2300, true); + st.exitQuest(true, true); + htmltext = (totems > 0) ? "30569-07.html" : "30569-06.html"; + } + } + } + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-00.htm new file mode 100644 index 0000000000..3de2fb43c1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-00.htm @@ -0,0 +1,4 @@ +Neruga Chief Tantus:
+I am Chief Tantus of the great Neruga Tribe! The tasks I give are difficult ones that can only be carried out by the strongest fighters. They are all much too strenuous to entrust to a weak stranger like you!
+(Quest for Orcish characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-01.htm new file mode 100644 index 0000000000..aeb700395d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-01.htm @@ -0,0 +1,5 @@ +Neruga Chief Tantus:
+The identity of the one stirring up goblins and werewolves, and controlling Rakeclaw Imps has been unmasked. He is called Varangka, a disgraced mage banished from the Kingdom a few years ago. He decided to seek revenge upon us to wipe away his shame and humiliation by conspiring with the evil spirits and gaining the power of the darkness. Somewhere on the Immortal Plateau, he is plotting to destroy the Kingdom of the Orcs.
+Many expeditions have been dispatched to kill him, but every time Varangka already knew of the attack and had escaped. We found out that he has servants that act as his eyes and ears. The darkwing bats are controlled by Varangka, who uses them to monitor our movements. Seer Tanapi is developing a protective shield that will keep darkwing bats from approaching. I will ask you later to collect objects that are required to complete the magic, so be prepared.
+(Quest for Orc characters level 11 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-02.htm new file mode 100644 index 0000000000..f25d303f31 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-02.htm @@ -0,0 +1,5 @@ +Neruga Chief Tantus:
+The identity of the one stirring up goblins and werewolves, and controlling Rakeclaw Imps has been unmasked. He is called Varangka, a disgraced mage banished from the Kingdom a few years ago. He decided to seek revenge upon us to wipe away his shame and humiliation by conspiring with the evil spirits and gaining the power of the darkness. Somewhere on the Immortal Plateau, he is plotting to destroy the Kingdom of the Orcs.
+Many expeditions have been dispatched to kill him, but every time, Varangka already knew of the attack and had escaped. Now we know that he had servants in the air that acted as his eyes and ears. The darkwing bats are being controlled by Varangka, who uses them to monitor our movements. The seers say they need the fangs of the bats to complete the protection system that will keep the darkwing bats from approaching.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-03.htm new file mode 100644 index 0000000000..2ff191defb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-03.htm @@ -0,0 +1,4 @@ +Neruga Chief Tantus:
+Kill the darkwing bats and bring their fangs. Fangs should not be broken or scratched! Bring only the intact ones; a total of seventy fangs are required.
+As long as the darkwing bats act as the eyes and ears of Varangka, he can see every move we make. We should make him go blind by sending an expedition to defeat him. You must be careful when hunting darkwing bats. Varangka's Trackers may attack you. Make sure you are always on your guard. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-04.html new file mode 100644 index 0000000000..a6f5bf759d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-04.html @@ -0,0 +1,4 @@ +Neruga Chief Tantus:
+You must collect seventy fangs of the darkwing bats. That's the only way to complete the protection shield that will keep the bats from approaching. As long as the darkwing bats become the eyes and ears of Varangka, he can see every move that we make. We cannot defeat him until we blind him.
+You must be careful when hunting darkwing bats. Trackers sent by Varangka may attack you. Make sure you are always on your guard. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-05.html new file mode 100644 index 0000000000..0b59bd9e08 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/30567-05.html @@ -0,0 +1,4 @@ +Neruga Chief Tantus:
+Well done! With this, we can cast a shield around the king's hall and surrounding buildings for the time being, to prevent the secret agents of Varangka from peeking in. Before we can dispatch an expedition team to deal with Varangka, they must first receive the protection of the shield. We need more Bat Fangs in the future.
+For now, receive this money, help yourself to our excellent food and drink, and have a good rest. Come back when you are ready to fight once more for our race. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/Q00275_DarkWingedSpies.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/Q00275_DarkWingedSpies.java new file mode 100644 index 0000000000..6e9109a4fc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00275_DarkWingedSpies/Q00275_DarkWingedSpies.java @@ -0,0 +1,168 @@ +/* + * This file is part of the L2J Mobius project. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +package quests.Q00275_DarkWingedSpies; + +import com.l2jmobius.gameserver.ai.CtrlIntention; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Attackable; +import com.l2jmobius.gameserver.model.actor.L2Character; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.util.Util; + +/** + * Dark Winged Spies (275) + * @author xban1x + */ +public final class Q00275_DarkWingedSpies extends Quest +{ + // Npc + private static final int NERUGA_CHIEF_TANTUS = 30567; + // Items + private static final int DARKWING_BAT_FANG = 1478; + private static final int VARANGKAS_PARASITE = 1479; + // Monsters + private static final int DARKWING_BAT = 20316; + private static final int VARANGKAS_TRACKER = 27043; + // Misc + private static final int MIN_LVL = 11; + private static final int FANG_PRICE = 60; + private static final int MAX_BAT_FANG_COUNT = 70; + + public Q00275_DarkWingedSpies() + { + super(275); + addStartNpc(NERUGA_CHIEF_TANTUS); + addTalkId(NERUGA_CHIEF_TANTUS); + addKillId(DARKWING_BAT, VARANGKAS_TRACKER); + addSeeCreatureId(VARANGKAS_TRACKER); + registerQuestItems(DARKWING_BAT_FANG, VARANGKAS_PARASITE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equals("30567-03.htm")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + + if ((st != null) && st.isCond(1) && Util.checkIfInRange(1500, npc, killer, true)) + { + final long count = getQuestItemsCount(killer, DARKWING_BAT_FANG); + + switch (npc.getId()) + { + case DARKWING_BAT: + { + if (giveItemRandomly(killer, DARKWING_BAT_FANG, 1, MAX_BAT_FANG_COUNT, 1, true)) + { + st.setCond(2); + } + else if ((count > 10) && (count < 66) && (getRandom(100) < 10)) + { + addSpawn(VARANGKAS_TRACKER, killer); + giveItems(killer, VARANGKAS_PARASITE, 1); + } + break; + } + case VARANGKAS_TRACKER: + { + if ((count < 66) && hasQuestItems(killer, VARANGKAS_PARASITE)) + { + if (giveItemRandomly(killer, DARKWING_BAT_FANG, 5, MAX_BAT_FANG_COUNT, 1, true)) + { + st.setCond(2); + } + takeItems(killer, VARANGKAS_PARASITE, -1); + } + break; + } + } + } + + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onSeeCreature(L2Npc npc, L2Character creature, boolean isSummon) + { + if (creature.isPlayer()) + { + npc.setRunning(); + ((L2Attackable) npc).addDamageHate(creature, 0, 1); + npc.getAI().setIntention(CtrlIntention.AI_INTENTION_ATTACK, creature); + } + return super.onSeeCreature(npc, creature, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance talker) + { + final QuestState st = getQuestState(talker, true); + String htmltext = getNoQuestMsg(talker); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (talker.getRace() == Race.ORC) ? (talker.getLevel() >= MIN_LVL) ? "30567-02.htm" : "30567-01.htm" : "30567-00.htm"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + htmltext = "30567-05.html"; + break; + } + case 2: + { + final long count = getQuestItemsCount(talker, DARKWING_BAT_FANG); + if (count >= MAX_BAT_FANG_COUNT) + { + giveAdena(talker, count * FANG_PRICE, true); + st.exitQuest(true, true); + htmltext = "30567-05.html"; + } + break; + } + } + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-00.htm new file mode 100644 index 0000000000..105f5f8f55 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-00.htm @@ -0,0 +1,4 @@ +Seer Tanapi:
+It is difficult for a foreign race such as yourself to understand the teachings of the flame that Pa'agrio gives us Orcs. One that cannot realize the truth within flame can be of no assistance to me!
+(Quest for Orc characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-01.htm new file mode 100644 index 0000000000..9b9727ad7d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-01.htm @@ -0,0 +1,6 @@ +Seer Tanapi:
+Young Orc, have you seen an animal called the kasha bear? It is a poor animal polluted by kasha, the evil spirit of death and decomposition. Animals polluted by evil spirits die slowly because of the curse. However, that is not the only problem. The curse is terrible because it can be spread to other animals.
+The gray bears are the greatest guardian totems of the Hestui tribe. Our tribe has been consecrating the gray bears since ancient times. However, as gray bears recently became contaminated by the evil spirit kasha, the status of our tribe has been trampled to the ground, and not one day passes when we can sleep in peace.
+We are working on purifying kasha bears, but I don't think you can take charge of this task yet.
+(Quest for Orc characters level 15 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-02.htm new file mode 100644 index 0000000000..743aacc0e5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-02.htm @@ -0,0 +1,6 @@ +Seer Tanapi:
+Young Orc, have you seen an animal called the kasha bear? It is a poor animal polluted by kasha, the evil spirit of death and decomposition. The animals contaminated by evil spirits die slowly because of the curse. However, that is not the only problem. The curse is terrible because it can be spread to other animals nearby.
+I am the Chief of the Hestui. We Hestuis have consecrated the gray bears and served them since ancient times. However, as gray bears recently became contaminated by the evil spirit kasha, the status of our tribe has been trampled to the ground, and not one day passes when we can sleep in peace.
+There is only one way to purify the gray bears polluted by the evil spirit kasha. That is to kill them. It is a difficult quest, but it is also worth undertaking. What do you think?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-03.htm new file mode 100644 index 0000000000..c780bd24e6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-03.htm @@ -0,0 +1,5 @@ +Seer Tanapi:
+If you kill a kasha bear, you must cut open its abdomen and take out the Kasha Parasite. The evil spirit kasha contaminates the gray bears through the parasites.
+But the true enemy to defeat is the kasha totem spirit. They say that the evil kasha spirit takes the form of the gray bear. Based on my studies, if there are enough parasites, they will call forth the kasha totem spirit. I don't know how many are needed though.
+If you kill the kasha totem spirit, the crystal of the kasha totem spirit will appear. Bring it to me. It is something I desperately need for my studies. If you bring it to me, I will reward you in the name of the Hestui. Good luck. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-04.html new file mode 100644 index 0000000000..1ae083eb12 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-04.html @@ -0,0 +1,3 @@ +Seer Tanapi:
+Do not forget. When you kill the kasha bears, their bodies will become purified when the Kasha Parasites come out. If there are more parasites, their energy becomes stronger and the kasha totem spirit appears. When it appears, defeat it and obtain the crystal of the kasha totem spirit. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-05.html new file mode 100644 index 0000000000..7a7c6c1f7a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/30571-05.html @@ -0,0 +1,5 @@ +Seer Tanapi:
+You finally brought the crystal of the kasha totem spirit! Thank you.
+So I was right when I said the parasites were the key to calling forth the kasha totem spirit. Now I must study this crystal. I will make sure that we Hestuis do not forget your help. Here -- this is my small token of gratitude. Please accept it. It is a totem of our tribe.
+One day, when I discover kasha, the true source of evil, I will trust your courage and ask you another favor. Till then, my young Orc, may the protection of Pa'agrio be with you always. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/Q00276_TotemOfTheHestui.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/Q00276_TotemOfTheHestui.java new file mode 100644 index 0000000000..10bc44d787 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00276_TotemOfTheHestui/Q00276_TotemOfTheHestui.java @@ -0,0 +1,175 @@ +/* + * 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.Q00276_TotemOfTheHestui; + +import java.util.ArrayList; +import java.util.List; + +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.util.Util; + +import quests.Q00261_CollectorsDream.Q00261_CollectorsDream; + +/** + * Totem of the Hestui (276) + * @author xban1x + */ +public final class Q00276_TotemOfTheHestui extends Quest +{ + // Npc + private static final int TANAPI = 30571; + // Items + private static final int KASHA_PARASITE = 1480; + private static final int KASHA_CRYSTAL = 1481; + // Monsters + private static final int KASHA_BEAR = 20479; + private static final int KASHA_BEAR_TOTEM = 27044; + // Rewards + private static final int[] REWARDS = new int[] + { + 29, + 1500, + }; + // Misc + private static final List SPAWN_CHANCES = new ArrayList<>(); + private static final int MIN_LVL = 15; + + static + { + SPAWN_CHANCES.add(new ItemHolder(79, 100)); + SPAWN_CHANCES.add(new ItemHolder(69, 20)); + SPAWN_CHANCES.add(new ItemHolder(59, 15)); + SPAWN_CHANCES.add(new ItemHolder(49, 10)); + SPAWN_CHANCES.add(new ItemHolder(39, 2)); + } + + public Q00276_TotemOfTheHestui() + { + super(276); + addStartNpc(TANAPI); + addTalkId(TANAPI); + addKillId(KASHA_BEAR, KASHA_BEAR_TOTEM); + registerQuestItems(KASHA_PARASITE, KASHA_CRYSTAL); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equals("30571-03.htm")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(1) && Util.checkIfInRange(1500, killer, npc, true)) + { + switch (npc.getId()) + { + case KASHA_BEAR: + { + final long chance1 = getQuestItemsCount(killer, KASHA_PARASITE); + final int chance2 = getRandom(100); + boolean chance3 = true; + for (ItemHolder spawnChance : SPAWN_CHANCES) + { + if ((chance1 >= spawnChance.getId()) && (chance2 <= spawnChance.getCount())) + { + addSpawn(KASHA_BEAR_TOTEM, npc); + takeItems(killer, KASHA_PARASITE, -1); + chance3 = false; + break; + } + } + if (chance3) + { + giveItemRandomly(killer, KASHA_PARASITE, 1, 0, 1, true); + } + break; + } + case KASHA_BEAR_TOTEM: + { + if (giveItemRandomly(killer, KASHA_CRYSTAL, 1, 1, 1, true)) + { + st.setCond(2); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.ORC) ? (player.getLevel() >= MIN_LVL) ? "30571-02.htm" : "30571-01.htm" : "30571-00.htm"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + htmltext = "30571-04.html"; + break; + } + case 2: + { + if (hasQuestItems(player, KASHA_CRYSTAL)) + { + Q00261_CollectorsDream.giveNewbieReward(player); + for (int reward : REWARDS) + { + rewardItems(player, reward, 1); + } + st.exitQuest(true, true); + htmltext = "30571-05.html"; + } + break; + } + } + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/30576-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/30576-01.htm new file mode 100644 index 0000000000..279dca7931 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/30576-01.htm @@ -0,0 +1,4 @@ +Gatekeeper Tamil:
+Thank you, but this is too dangerous for you. Don't you know? In order to collect Starstones, you must defeat the greystone golems on the Immortal Plateau. But these golems are too strong for you.
+(Quest for characters level 15 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/30576-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/30576-02.htm new file mode 100644 index 0000000000..3e1c5ff180 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/30576-02.htm @@ -0,0 +1,6 @@ +Gatekeeper Tamil:
+The magic power I learned from the Ivory Tower of Oren allows me to control the door of space time. It is almost miraculous, being able to reach a town on the other side of the continent with only a few steps.
+But I am ashamed to admit that my understanding of Human magic is incomplete, and I cannot control the door of space time with my powers alone. I need the power of the totem spirit of the spider in order to use my teleport spell. The spider web spun by the totem spirit of the spider reaches all corners of the universe. Following the spider web lets anyone move to anywhere on the continent in a matter of seconds.
+But to receive the aid of the totem spirit of the spider, I must make periodic offerings. So every week, I offer the totem spirit Starstones, which entrap the powers of the stars. However, as long as I hold the position of Gatekeeper here, I cannot leave my post. I need someone's help to find Starstones to offer the spider.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/30576-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/30576-03.htm new file mode 100644 index 0000000000..6137c8a2c2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/30576-03.htm @@ -0,0 +1,5 @@ +Gatekeeper Tamil:
+Thank you! I will not forget your kindness. But are you sure you know what is required? Every golem carries a Starstone in its body. According to the Seers, the power of the stars contained within the Starstone is the force that keeps the golems alive and moving.
+Anyway, if you defeat the greystone golems on the Immortal Plateau, you will be able to collect the precious mineral that I need. I need twenty of those.
+Be careful! The greystone golem may be slow, but its strength is great. You are placing yourself in great danger, so proceed with caution! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/30576-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/30576-04.html new file mode 100644 index 0000000000..64c816b25d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/30576-04.html @@ -0,0 +1,4 @@ +Gatekeeper Tamil:
+That is not enough at all. I need at least twenty Starstones. If I can't offer them to the totem spirit of the spider, the door of space and time that connects our village to the mainland will be closed! So please hurry.
+Defeat the greystone golems on the Immortal Plateau to obtain Starstones. Be careful! They may be slow, but they are very strong and are hardly a force to be taken lightly. I will pray for your safe return! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/30576-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/30576-05.html new file mode 100644 index 0000000000..114dfe4328 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/30576-05.html @@ -0,0 +1,4 @@ +Gatekeeper Tamil:
+Welcome, young one! Well done! I am sure the totem spirit of the spider will be very satisfied with these Starstones! It would be great if you could help me out again in the future.
+I'll give you a Gatekeeper's charm for your help. If you need to go to Gludio later, give me that charm. I will teleport you to Gludin free of charge! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/Q00277_GatekeepersOffering.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/Q00277_GatekeepersOffering.java new file mode 100644 index 0000000000..26159d36ab --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00277_GatekeepersOffering/Q00277_GatekeepersOffering.java @@ -0,0 +1,117 @@ +/* + * 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.Q00277_GatekeepersOffering; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Gatekeeper's Offering (277) + * @author malyelfik + */ +public class Q00277_GatekeepersOffering extends Quest +{ + // NPC + private static final int TAMIL = 30576; + // Monster + private static final int GREYSTONE_GOLEM = 20333; + // Items + private static final int STARSTONE = 1572; + private static final int GATEKEEPER_CHARM = 1658; + // Misc + private static final int MIN_LEVEL = 15; + private static final int STARSTONE_COUT = 20; + + public Q00277_GatekeepersOffering() + { + super(277); + addStartNpc(TAMIL); + addTalkId(TAMIL); + addKillId(GREYSTONE_GOLEM); + registerQuestItems(STARSTONE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equalsIgnoreCase("30576-03.htm")) + { + if (player.getLevel() < MIN_LEVEL) + { + return "30576-01.htm"; + } + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isStarted() && (getQuestItemsCount(killer, STARSTONE) < STARSTONE_COUT)) + { + giveItems(killer, STARSTONE, 1); + if (getQuestItemsCount(killer, STARSTONE) >= STARSTONE_COUT) + { + st.setCond(2, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + htmltext = "30576-02.htm"; + break; + case State.STARTED: + if (st.isCond(1)) + { + htmltext = "30576-04.html"; + } + else if (st.isCond(2) && (getQuestItemsCount(player, STARSTONE) >= STARSTONE_COUT)) + { + giveItems(player, GATEKEEPER_CHARM, 2); + st.exitQuest(true, true); + htmltext = "30576-05.html"; + } + break; + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/30553-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/30553-01.htm new file mode 100644 index 0000000000..29b843be6d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/30553-01.htm @@ -0,0 +1,5 @@ +Maryse Redbonnet:
+When I was 10, I decided to kill all the wolves in the world, because they killed my loving family. I didn't want this to happen to others, you see. That's why I became a wolf hunter... I still vividly remember my first kill... It was a wolf cub that was only a few days old... I killed it without mercy.
+After that, I killed every wolf that I saw! I killed hundreds, no, thousands of wolves! People saw me carrying a bundle of Wolf Pelts and called me the Redbonnet the horrible. I must kill wolves! I have to kill them all!
+(Quest for characters level 4 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/30553-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/30553-02.htm new file mode 100644 index 0000000000..33705ac692 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/30553-02.htm @@ -0,0 +1,6 @@ +Maryse Redbonnet:
+When I was 10, I decided to kill all the wolves in the world, because they killed my loving family. I didn't want this to happen to others, you see. That's why I became a wolf hunter... I still vividly remember my first kill... It was a wolf cub that was only a few days old. I killed it without mercy.
+After that, I killed every wolf that I saw! I killed hundreds, I mean, thousands of wolves! People saw me carrying a bundle of Wolf Pelts and called me the Redbonnet the horrible.
+But now I am too old to hunt wolves. So, someone should kill the wolves in my stead! I want to smell their blood... The bloody stench of the enemies who killed my family! Please... It is my wish... Please kill the wolves! Kill them all!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/30553-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/30553-03.htm new file mode 100644 index 0000000000..ad890088d5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/30553-03.htm @@ -0,0 +1,3 @@ +Maryse Redbonnet:
+If you kill wolves for me, I will give you an article left by my grandmother as a reward! Kill the black wolves stalking everywhere outside the village right now! And strip their pelts and bring them to me! One or two is not enough! Of course not ... No way! I need many! Forty Wolf Pelts ...! Yes, bring back 40! Heh, heh, heh ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/30553-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/30553-04.html new file mode 100644 index 0000000000..5bc96f2db3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/30553-04.html @@ -0,0 +1,4 @@ +Maryse Redbonnet:
+... Forty Wolf Pelts! Is that too difficult a task? How come you didn't keep your promise? Somewhere right now, a young girl is being eaten by a wolf! I can see that!
+Run out of the village now and kill all the black wolves! I want to smell the blood of wolves! The bloody stench of my enemies! All the wolves in the world must be killed! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/30553-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/30553-05.html new file mode 100644 index 0000000000..1a98f26eef --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/30553-05.html @@ -0,0 +1,4 @@ +Maryse Redbonnet:
+Heh, heh, heh ... Yes, this is it ... Forty dead wolves ... Look, grandma! I killed this many wolves today as well! Aren't you happy, grandma? Aren't you? Aren't you? The horrible redbonnet is still strong!
+I told you! My grandma is very happy, too! My grandma wants me to give this to you. Here! Take it! It's for making my grandma happy ... All right! Take it now! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/Q00291_RevengeOfTheRedbonnet.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/Q00291_RevengeOfTheRedbonnet.java new file mode 100644 index 0000000000..a6e92e1910 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00291_RevengeOfTheRedbonnet/Q00291_RevengeOfTheRedbonnet.java @@ -0,0 +1,125 @@ +/* + * 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.Q00291_RevengeOfTheRedbonnet; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.util.Util; + +/** + * Revenge of the Redbonnet (291). + * @author xban1x + */ +public final class Q00291_RevengeOfTheRedbonnet extends Quest +{ + // NPC + private static final int MARYSE_REDBONNET = 30553; + // Item + private static final ItemHolder BLACK_WOLF_PELT = new ItemHolder(1482, 40); + // Monster + private static final int BLACK_WOLF = 20317; + private static final int BLACK_TIMBER_WOLF = 20318; + // Rewards + private static final int SCROLL_OF_ESCAPE = 736; + private static final int GRANDMAS_PEARL = 1502; + private static final int GRANDMAS_MIRROR = 1503; + private static final int GRANDMAS_NECKLACE = 1504; + private static final int GRANDMAS_HAIRPIN = 1505; + // Misc + private static final int MIN_LVL = 4; + + public Q00291_RevengeOfTheRedbonnet() + { + super(291); + addStartNpc(MARYSE_REDBONNET); + addTalkId(MARYSE_REDBONNET); + addKillId(BLACK_WOLF, BLACK_TIMBER_WOLF); + registerQuestItems(BLACK_WOLF_PELT.getId()); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if ((qs != null) && event.equals("30553-03.htm")) + { + qs.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isCond(1) && Util.checkIfInRange(1500, npc, killer, true)) + { + if (giveItemRandomly(qs.getPlayer(), npc, BLACK_WOLF_PELT.getId(), 1, BLACK_WOLF_PELT.getCount(), 1.0, true)) + { + qs.setCond(2); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String html = getNoQuestMsg(player); + if (qs.isCreated()) + { + html = ((player.getLevel() >= MIN_LVL) ? "30553-02.htm" : "30553-01.htm"); + } + else if (qs.isStarted()) + { + if (qs.isCond(2) && hasItem(player, BLACK_WOLF_PELT)) + { + takeItem(player, BLACK_WOLF_PELT); + final int chance = getRandom(100); + if (chance <= 2) + { + giveItems(player, GRANDMAS_PEARL, 1); + } + else if (chance <= 20) + { + giveItems(player, GRANDMAS_MIRROR, 1); + } + else if (chance <= 45) + { + giveItems(player, GRANDMAS_NECKLACE, 1); + } + else + { + giveItems(player, GRANDMAS_HAIRPIN, 1); + giveItems(player, SCROLL_OF_ESCAPE, 1); + } + qs.exitQuest(true, true); + html = "30553-05.html"; + } + else + { + html = "30553-04.html"; + } + } + return html; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-00.htm new file mode 100644 index 0000000000..639aa0aec6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-00.htm @@ -0,0 +1,4 @@ +Elder Spiron:
+Young stranger of a foreign race, you wish to help me? I appreciate the thought, but ... I cannot entrust guild business to an outsider.
+(Quest for Dwarven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-01.htm new file mode 100644 index 0000000000..efda5fc3a3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-01.htm @@ -0,0 +1,5 @@ +Elder Spiron:
+Business is bad these days because of the goblin brigands. The goblins have become so bold that they attack freight wagons now!
+Just last week, a wagon belonging to our guild was attacked by the goblin brigands. I am thinking of addressing this brigand issue next month at the Guild Association Elder Council ... But I can't wait that long ... I need to do something about this ...
+(Quest for Dwarven characters level 5 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-02.htm new file mode 100644 index 0000000000..1b71bcf81a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-02.htm @@ -0,0 +1,6 @@ +Elder Spiron:
+Business is bad these days because of the goblin brigands. The goblins have become so bold that they attack freight wagons now!
+Our guild has been taking great losses lately because our wagons are being attacked. I am thinking of addressing this brigand issue next month at the Guild Association Elder Council ... But I can't wait that long ...
+So, I need to ask you a favor ... Would you like to work for me? If you work for our glorious Golden Wheel Guild, your friends and colleagues will respect you even more. Oh, and of course I will reward you based on your work. Nothing is free for Dwarves. What do you think? Will you give it a try?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-03.htm new file mode 100644 index 0000000000..5ba0866109 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-03.htm @@ -0,0 +1,5 @@ +Elder Spiron:
+Very well! Now let me give you the details. Your job is to wipe out the insolent goblins that have been attacking our Guild freight wagons. Of course, I could hire guard escorts, but under these circumstances I cannot trust anyone except for my guild members.
+In the interest of good business, I need proof of your qualifications. All goblins wear necklaces that represent their rank, so collect them and bring them to me. I will reward you based on the number and type of necklaces that you bring. That means, if you bring necklaces that belong to high-ranking goblins, I will reward you even more, understood?
+Now! Leave at once! Time is money! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-04.html new file mode 100644 index 0000000000..14480ba78e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-04.html @@ -0,0 +1,7 @@ +Elder Spiron:
+Why have you returned empty handed? Don't tell me that you've forgotten what your job is.
+Given the urgency of the situation, let me tell you one more time! Your job is to punish the insolent goblins that are interrupting our guild's trade. Defeat the goblins and bring their necklaces as proof. I will reward you based on the number and type of necklaces that you bring.
+Now! Leave at once! Time is money!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-05.html new file mode 100644 index 0000000000..3ea9d780ef --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-05.html @@ -0,0 +1,6 @@ +Elder Spiron:
+Welcome back! So you have taken care of the insolent goblins that interfered with our business! Now I'll finally get a good night's sleep! Of course, we need to work very hard to cover last month's loss ... Whew ...
+Anyway, you have done well! As promised, I will reward you based on the number and type of necklaces you have brought after killing the goblins. Thanks to your efforts, the insolent brigands have been taught a lesson, but I am still worried ... A freight wagon is departing for Shootguart tonight ... Would you do me another favor?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-06.html new file mode 100644 index 0000000000..fd901e0ebf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-06.html @@ -0,0 +1,4 @@ +Elder Spiron:
+You want to quit? Why? It's not because you think the reward isn't enough, is it? People may say that I'm stingy, but upon my word I always treat those who work for our guild very well.
+You should think again, young friend! You can broaden your experience, while making money. Don't miss this opportunity! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-07.html new file mode 100644 index 0000000000..8a9428c2a7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-07.html @@ -0,0 +1,3 @@ +Elder Spiron:
+Please carry on then! It is thanks to earnest youngsters like you that the business of our Dwarven Guilds flourishes! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-08.html new file mode 100644 index 0000000000..7f1d4e67ec --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-08.html @@ -0,0 +1,7 @@ +Elder Spiron:
+Well done! As promised, I will reward you based on the number and types of necklaces you have brought after killing the goblins. What are these memos ...? This paper is used by Dwarven Guilds when writing official documents ... Also, the handwriting is Dwarvish ...
+This means those insolent goblins were in secret communication with one of us Dwarves ...! How can this be ...! This must be a plot by one of the other guilds to destroy our business!
+Look here, my friend. Please find rest of these memos! That's the only way to reveal the truth behind this secret plot! I'll give you more than enough reward, never you worry about that!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-09.html new file mode 100644 index 0000000000..62daa1795f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-09.html @@ -0,0 +1,6 @@ +Elder Spiron:
+Well done! As promised, I will reward you based on the number and type of necklaces you have brought after killing the goblins. Have you found the rest of the Suspicious Memos?
+Please help me out once more, my friend! You know that you are the only one I can trust. I must find the rest of the memos and find out who is trying to destroy our Guild!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-10.html new file mode 100644 index 0000000000..edb71308e2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30532-10.html @@ -0,0 +1,8 @@ +Elder Spiron:
+Well done! As promised, I will reward you based on the number and type of necklaces you have brought after killing the goblins. Their spirits must be significantly deflated!
+What is this, a Contract ...? This is the Suspicious Memos all combined! Let me see ... Hmm ... Yes ... As I thought ...The goblins were hired by the Silver Scale Guild. I can't believe Balanki would hatch such a bold plot ... Well, I must do something!
+Going straight to the Guild Elder Council is not much fun ... I think meeting Balanki and coming to a mutual agreement is better! I finally have his weak point ... He must pay a high price for his actions!
+Thanks to you, I have obtained valuable information. Since I am a fair Dwarf, I will reward you additionally for your unexpected achievement. Many thanks for your troubles!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30533-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30533-01.html new file mode 100644 index 0000000000..c8b2f6736f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30533-01.html @@ -0,0 +1,5 @@ +Elder Balanki:
+I've heard that you work for the Golden Wheel Guild ... Is this true?
+Young friend, let me give you a piece of advice. Spiron is only taking advantage of you. That mean old man is only interested in generating profits for his guild!
+If you should ever get hurt or run into trouble while carrying out guild business, don't expect Spiron to help you. He'll only argue that your demise wasn't in the original deal or contract. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30533-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30533-02.html new file mode 100644 index 0000000000..55dc5536f0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/30533-02.html @@ -0,0 +1,6 @@ +Elder Balanki:
+Aren't you Spiron's messenger? What business do you have with me? Hmm? What is this Contract?
+Oh no. Those goblins ...! I told them to tear this Contract to pieces and throw it away ... This puts me in quite a difficult situation ... However ... Why did you bring this Contract to me?
+Oh ... Now I understand ... If I give you the proper price, you will forget about this Contract, right? You are as cunning as that old man ... Ok. Is this enough? Not enough? Now, this should be enough. You are a greedy one ...
+Give me the Contract now! I will throw this into the brazier in the forge tonight ...! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/Q00292_BrigandsSweep.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/Q00292_BrigandsSweep.java new file mode 100644 index 0000000000..54317bd775 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00292_BrigandsSweep/Q00292_BrigandsSweep.java @@ -0,0 +1,226 @@ +/* + * 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.Q00292_BrigandsSweep; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.util.Util; + +/** + * Brigands Sweep (292) + * @author xban1x + */ +public final class Q00292_BrigandsSweep extends Quest +{ + // NPC's + private static final int SPIRON = 30532; + private static final int BALANKI = 30533; + // Items + private static final int GOBLIN_NECKLACE = 1483; + private static final int GOBLIN_PENDANT = 1484; + private static final int GOBLIN_LORD_PENDANT = 1485; + private static final int SUSPICIOUS_MEMO = 1486; + private static final int SUSPICIOUS_CONTRACT = 1487; + // Monsters + private static final Map MOB_ITEM_DROP = new HashMap<>(); + static + { + MOB_ITEM_DROP.put(20322, GOBLIN_NECKLACE); // Goblin Brigand + MOB_ITEM_DROP.put(20323, GOBLIN_PENDANT); // Goblin Brigand Leader + MOB_ITEM_DROP.put(20324, GOBLIN_NECKLACE); // Goblin Brigand Lieutenant + MOB_ITEM_DROP.put(20327, GOBLIN_NECKLACE); // Goblin Snooper + MOB_ITEM_DROP.put(20528, GOBLIN_LORD_PENDANT); // Goblin Lord + } + // Misc + private static final int MIN_LVL = 5; + + public Q00292_BrigandsSweep() + { + super(292); + addStartNpc(SPIRON); + addTalkId(SPIRON, BALANKI); + addKillId(MOB_ITEM_DROP.keySet()); + registerQuestItems(GOBLIN_NECKLACE, GOBLIN_PENDANT, GOBLIN_LORD_PENDANT, SUSPICIOUS_MEMO, SUSPICIOUS_CONTRACT); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + String html = null; + if (qs == null) + { + return html; + } + + switch (event) + { + case "30532-03.htm": + { + if (qs.isCreated()) + { + qs.startQuest(); + html = event; + } + break; + } + case "30532-06.html": + { + if (qs.isStarted()) + { + qs.exitQuest(true, true); + html = event; + } + break; + } + case "30532-07.html": + { + if (qs.isStarted()) + { + html = event; + } + break; + } + } + return html; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + final int chance = getRandom(10); + if (chance > 5) + { + giveItemRandomly(killer, npc, MOB_ITEM_DROP.get(npc.getId()), 1, 0, 1.0, true); + } + else if (qs.isCond(1) && (chance > 4) && !hasQuestItems(killer, SUSPICIOUS_CONTRACT)) + { + final long memos = getQuestItemsCount(killer, SUSPICIOUS_MEMO); + if (memos < 3) + { + if (giveItemRandomly(killer, npc, SUSPICIOUS_MEMO, 1, 3, 1.0, false)) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + giveItems(killer, SUSPICIOUS_CONTRACT, 1); + takeItems(killer, SUSPICIOUS_MEMO, -1); + qs.setCond(2, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance talker) + { + final QuestState qs = getQuestState(talker, true); + String html = getNoQuestMsg(talker); + switch (npc.getId()) + { + case SPIRON: + { + switch (qs.getState()) + { + case State.CREATED: + { + html = (talker.getRace() == Race.DWARF) ? (talker.getLevel() >= MIN_LVL) ? "30532-02.htm" : "30532-01.htm" : "30532-00.htm"; + break; + } + case State.STARTED: + { + if (!hasAtLeastOneQuestItem(talker, getRegisteredItemIds())) + { + html = "30532-04.html"; + } + else + { + final long necklaces = getQuestItemsCount(talker, GOBLIN_NECKLACE); + final long pendants = getQuestItemsCount(talker, GOBLIN_PENDANT); + final long lordPendants = getQuestItemsCount(talker, GOBLIN_LORD_PENDANT); + final long sum = necklaces + pendants + lordPendants; + if (sum > 0) + { + giveAdena(talker, (necklaces * 12) + (pendants * 36) + (lordPendants * 33) + (sum >= 10 ? 1000 : 0), true); + takeItems(talker, -1, GOBLIN_NECKLACE, GOBLIN_PENDANT, GOBLIN_LORD_PENDANT); + } + if ((sum > 0) && !hasAtLeastOneQuestItem(talker, SUSPICIOUS_MEMO, SUSPICIOUS_CONTRACT)) + { + html = "30532-05.html"; + } + else + { + final long memos = getQuestItemsCount(talker, SUSPICIOUS_MEMO); + if ((memos == 0) && hasQuestItems(talker, SUSPICIOUS_CONTRACT)) + { + giveAdena(talker, 1120, true); + takeItems(talker, -1, SUSPICIOUS_CONTRACT); // Retail like, reward is given in 2 pieces if both conditions are meet. + html = "30532-10.html"; + } + else + { + if (memos == 1) + { + html = "30532-08.html"; + } + else if (memos >= 2) + { + html = "30532-09.html"; + } + } + } + } + } + } + break; + } + case BALANKI: + { + if (qs.isStarted()) + { + if (hasQuestItems(talker, SUSPICIOUS_CONTRACT)) + { + giveAdena(talker, 620, true); + takeItems(talker, 1487, -1); + html = "30533-02.html"; + } + else + { + html = "30533-01.html"; + } + } + break; + } + } + return html; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-01.htm new file mode 100644 index 0000000000..de7662e410 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-01.htm @@ -0,0 +1,4 @@ +Filaur of the Gray Pillar:
+You want work? Huh! If I gave you work, people will start saying that the Dwarves make their guests run errands! I don't want to be lax in my hospitality to guests. Don't overexert yourself, and since you have come all the way to the Dwarf country, sample our native products!
+(Quest for Dwarven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-02.htm new file mode 100644 index 0000000000..739c6d2f4d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-02.htm @@ -0,0 +1,5 @@ +Filaur of the Gray Pillar:
+Have you heard of a metal called chrysolite? This material is used by the maestros to craft high quality armor and weapons. Until now, the entire supply has been imported from Gracia, but we have just discovered that there are veins of this rare metal not very far from here.
+We're planning to work on developing these new veins soon, and need the help of energetic young Dwarves. I'll ask you for help soon, so be prepared.
+(Quest for Dwarven characters level 6 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-03.htm new file mode 100644 index 0000000000..5027ceff2d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-03.htm @@ -0,0 +1,6 @@ +Filaur of the Gray Pillar:
+While I was making an inspection of the Mithril Mine, I was attacked by Utuku Orcs. Fortunately, my guards defeated the Orcs, but I found out something very interesting...
+Rough ore was found in the pockets of the defeated Orcs, and I assume it is used as currency between Orcs. The guards are all members of the Iron Gate and didn't recognize the ore, but I noticed at once that the ore is rough chrysolite.
+As you know, chrysolite is used by the maestros to make high quality armor and weapons. Until now, the entire supply has been imported from Gracia, but this incident has provided a new method of acquiring that rare metal. But to take advantage of this opportunity, I need the help of young, energetic Dwarves like you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-04.htm new file mode 100644 index 0000000000..819e75a429 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-04.htm @@ -0,0 +1,5 @@ +Filaur of the Gray Pillar:
+If you leave the village and go to the minefield, you will see many Utuku Orcs. Bring me the Chrysolite Ore that you collect after defeating them. I will reward you based on the amount of the ore you bring back.
+But more importantly, you should find out where the ore comes from. I ordered some investigators of the guild to find out, but I haven't gotten any useful information from them. I only know that there are many hidden chrysolite veins somewhere in the Spine Mine Field, and only a few Utuku Orcs know the locations.
+Sending investigators was a mistake, because the Orcs now know that the veins are important. I hear they tore the Maps that indicate the location of the veins into many pieces and scattered them throughout the territory. If you find the pieces of the Maps, you must go to Priestess of the Earth Chichirin in the temple. She will help you to combine the Maps. I will give you a generous reward once you bring me the completed Maps. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-05.html new file mode 100644 index 0000000000..0ab8c28290 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-05.html @@ -0,0 +1,6 @@ +Filaur of the Gray Pillar:
+I am sorry, but if you come back with empty hands I can't reward you, no matter how hard you tried. As I mentioned before, I will reward you based on the amount of Chrysolite Ore that you collect after defeating the Utuku Orcs.
+And don't forget ...If you collect four pieces of a torn Map, you should visit Chichirin in the Maphr Temple. If you ask her for help, she will combine those torn pieces and make a complete Map. I will give you a generous reward once you bring me the completed Maps.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-06.html new file mode 100644 index 0000000000..56d1fb7c28 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-06.html @@ -0,0 +1,5 @@ +Filaur of the Gray Pillar:
You've done well, young Dwarf. This ore you have brought may look rough, but once it goes through the trained hands of craftsmen, it becomes a precious metal with a brilliant blue luster. True maestros should be able to find the beauty hidden in plain objects.
+As promised, I will reward you based on the amount of ore you have brought. And, don't forget ... If you collect four pieces of a torn Map, you should visit Chichirin in the Maphr Temple. If you ask her for help, she will combine those torn pieces and make a complete Map. I will give you a generous reward once you bring me the completed Maps.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-07.html new file mode 100644 index 0000000000..b555bdc897 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-07.html @@ -0,0 +1,3 @@ +Filaur of the Gray Pillar:
+You want to quit already? I am very disappointed ... I thought you'd be more dedicated than that. Although you might not earn much profit now, you can receive a big reward once you put more time into it ... Young ones, they are too impatient these days ... Tsk tsk ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-08.html new file mode 100644 index 0000000000..49e4889154 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-08.html @@ -0,0 +1,3 @@ +Filaur of the Gray Pillar:
+Think about how much money we can save if we can actually mine chrysolite instead of importing it. This task is not only an achievement for our Gray Pillar Guild, it is an advancement for our entire Dwarven Kingdom. Don't forget this. Please carry on. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-09.html new file mode 100644 index 0000000000..5fcb334345 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-09.html @@ -0,0 +1,7 @@ +Filaur of the Gray Pillar:
+Ohh! You have obtained a complete Map! Well done! We can finally find out the location of the hidden chrysolite vein! I will reward you as promised. This should be enough.
+Let me see ... Hmm ... Oh. Stupid Orcs, their Map is too hard to read. But I can still roughly figure out the location. My investigators will have no problem locating the vein.
+As I said before, there are many hidden veins. Continue to find more Maps! I will reward you whenever you bring new Maps, so don't worry about that.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-10.html new file mode 100644 index 0000000000..826b807686 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30535-10.html @@ -0,0 +1,7 @@ +Filaur of the Gray Pillar:
+Ohh! You have obtained a complete Map! Well done! We finally can find out the location of the hidden chrysolite vein! I will pay you as promised. I will also give you an additional reward for the amount of ore you have brought.
+Let me see ... Hmm ... Oh. Stupid Orcs, their Map is too hard to read. But I can still roughly figure out the location. My investigators will have no problem locating the vein.
+As I said before, there are many hidden veins. Continue to find more Maps! I will reward you whenever you bring new Maps, so don't worry about that.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30539-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30539-01.html new file mode 100644 index 0000000000..60c4880a53 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30539-01.html @@ -0,0 +1,4 @@ +Priestess of the Earth Chichirin:
+I heard from Filaur of the Gray Pillar. You are trying to recover some old Maps, right? I used to be an apprentice for the cartography guild before becoming a seer. I helped Master Diana recover the Map that shows the sites of the ancient giants.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30539-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30539-02.html new file mode 100644 index 0000000000..452ed024f7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30539-02.html @@ -0,0 +1,3 @@ +Priestess of the Earth Chichirin:
+I'm sorry, but you don't have enough pieces of the torn Map. Look here. You don't have this part. See, just there? I think I need four pieces of the torn Map to make a complete Map. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30539-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30539-03.html new file mode 100644 index 0000000000..fb28981b97 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/30539-03.html @@ -0,0 +1,4 @@ +Priestess of the Earth Chichirin:
+Let me see ... This part should be on the upper left-hand corner ... This should be under that piece ... If I put this here ...
+There! It is a little loose, but I have managed to create a rough Map. I have never seen these characters before. These are neither the giants' nor the Elves' writing. Clumsy lines and bad handwriting ... it seems like a race with lousy craftsmanship made this Map ... Perhaps the Humans? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/Q00293_TheHiddenVeins.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/Q00293_TheHiddenVeins.java new file mode 100644 index 0000000000..f0309225b0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00293_TheHiddenVeins/Q00293_TheHiddenVeins.java @@ -0,0 +1,176 @@ +/* + * 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.Q00293_TheHiddenVeins; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * The Hidden Veins (293) + * @author xban1x + */ +public final class Q00293_TheHiddenVeins extends Quest +{ + // NPCs + private static final int FILAUR = 30535; + private static final int CHICHIRIN = 30539; + // Items + private static final int CHRYSOLITE_ORE = 1488; + private static final int TORN_MAP_FRAGMENT = 1489; + private static final int HIDDEN_ORE_MAP = 1490; + // Monsters + private static final int[] MONSTERS = new int[] + { + 20446, + 20447, + 20448, + }; + // Misc + private static final int MIN_LVL = 6; + private static final int REQUIRED_TORN_MAP_FRAGMENT = 4; + + public Q00293_TheHiddenVeins() + { + super(293); + addStartNpc(FILAUR); + addTalkId(FILAUR, CHICHIRIN); + addKillId(MONSTERS); + registerQuestItems(CHRYSOLITE_ORE, TORN_MAP_FRAGMENT, HIDDEN_ORE_MAP); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st == null) + { + return htmltext; + } + + switch (event) + { + case "30535-04.htm": + { + st.startQuest(); + htmltext = event; + break; + } + case "30535-07.html": + { + st.exitQuest(true, true); + htmltext = event; + break; + } + case "30535-08.html": + { + htmltext = event; + break; + } + case "30539-03.html": + { + if (getQuestItemsCount(player, TORN_MAP_FRAGMENT) >= REQUIRED_TORN_MAP_FRAGMENT) + { + giveItems(player, HIDDEN_ORE_MAP, 1); + takeItems(player, TORN_MAP_FRAGMENT, REQUIRED_TORN_MAP_FRAGMENT); + htmltext = event; + } + else + { + htmltext = "30539-02.html"; + } + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if (st != null) + { + final int chance = getRandom(100); + if (chance > 50) + { + giveItems(killer, CHRYSOLITE_ORE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + else if (chance < 5) + { + giveItems(killer, TORN_MAP_FRAGMENT, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st == null) + { + return htmltext; + } + + switch (npc.getId()) + { + case FILAUR: + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.DWARF) ? (player.getLevel() >= MIN_LVL) ? "30535-03.htm" : "30535-02.htm" : "30535-01.htm"; + break; + } + case State.STARTED: + { + if (hasAtLeastOneQuestItem(player, CHRYSOLITE_ORE, HIDDEN_ORE_MAP)) + { + final long ores = getQuestItemsCount(player, CHRYSOLITE_ORE); + final long maps = getQuestItemsCount(player, HIDDEN_ORE_MAP); + giveAdena(player, (ores * 5) + (maps * 500) + (((ores + maps) >= 10) ? 2000 : 0), true); + takeItems(player, -1, CHRYSOLITE_ORE, HIDDEN_ORE_MAP); + // Q00281_HeadForTheHills.giveNewbieReward(player); + htmltext = (ores > 0) ? (maps > 0) ? "30535-10.html" : "30535-06.html" : "30535-09.html"; + } + else + { + htmltext = "30535-05.html"; + } + break; + } + } + break; + } + case CHICHIRIN: + { + htmltext = "30539-01.html"; + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-00.htm new file mode 100644 index 0000000000..7a0b474545 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-00.htm @@ -0,0 +1,4 @@ +Elder Keef:
+You want work? It's true that we are overloaded at the moment, but according to guild rules, I cannot entrust any work to an outsider. I am sorry.
+(Quest for Dwarven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-01.htm new file mode 100644 index 0000000000..0d54d1283a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-01.htm @@ -0,0 +1,5 @@ +Elder Keef:
+As you know, the Bronze Key Guild travels the continent collecting rare materials. We received a request, and I'm looking for a person with the right qualification to manage the assignment.
+I'm in urgent need of a person, but I can't give this job to just anybody in off the street ... It's hard to find reliable help these days. Do you have any friends for this job? Someone diligent, and responsible, and that can keep a secret.
+(Quest for Dwarven characters level 10 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-02.htm new file mode 100644 index 0000000000..4c591cfa53 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-02.htm @@ -0,0 +1,6 @@ +Elder Keef:
+As you know, the Bronze Key Guild travels the continent collecting rare materials. We received a request, and I'm looking for a person with the right qualifications to manage the assignment.
+I'm in urgent need of a person, but I can't give this job to just anybody in off the street ... It's hard to find reliable help these days.
+But it seems like I can trust you. I am a good judge of character. I can tell what a person is like at a single glance. Let me see your eyes ... You do your work in silence no matter what others may think about it ... You seem to be that kind of person ... What do you think? Am I right? I want to give you a task. How does that sound? You want to give it a try?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-03.htm new file mode 100644 index 0000000000..7bd08eac0d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-03.htm @@ -0,0 +1,5 @@ +Elder Keef:
+Your job is to collect Bat Fangs. While wandering west of the Mine Field, you will often see blade bats and barbed bats. You will hunt them and bring me their fangs. You need to collect exactly 100 fangs.
+I don't know what such an odd material is used for, but all we need to do is find the items that our clients want. Our guild members should be able to bring anything, even dragon scales, to our clients. That's our belief.
+There's one thing I don't really like about this quest ... the client is Hardin, who has been branded as a black magician by the Humans. Things could become complicated if anyone finds out that our Guild is dealing with such a notorious person ... I hope you won't talk to anyone else about this. Do you understand what I'm saying? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-04.html new file mode 100644 index 0000000000..4bbf37e905 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-04.html @@ -0,0 +1,3 @@ +Elder Keef:
+I don't want you to come back here until the quest is complete. It is not good for us to be seen together. Come back when you have 100 Bat Fangs! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-05.html new file mode 100644 index 0000000000..dbbbad6b11 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-05.html @@ -0,0 +1,4 @@ +Elder Keef:
+You've done well, my friend. You have brought me 100 Bat Fangs. Magnificent! I can send these to Hardin's Academy by this week's wagon. I will give you this ring for your work on behalf of the Bronze Key Guild. This token signifies that our Guild trusts you.
+Actually, I had a cup of tea with Hardin few days ago. Contrary to the rumors, he was a well-mannered, pleasant person. Having a business relationship with such a person is actually investing in the future. We never know when we'll be put into a tight spot, just like when we were attacked by Orcs before ... We need to have few solid allies as a simple precaution, don't you think? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-06.html new file mode 100644 index 0000000000..73915507c6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/30534-06.html @@ -0,0 +1,4 @@ +Elder Keef:
+You've done well, my friend. You have brought me 100 Bat Fangs. Magnificent! I can send these to Hardin's Academy by this week's wagon. As promised, I will reward you for your hard work. This should be enough, no? Our guild's rule is to give appropriate rewards to those who have worked for us.
+Actually, I had a cup of tea with Hardin few days ago. Contrary to the rumors, he was a well-mannered, pleasant person. Having a business relationship with such a person is actually investing in the future. We never know when we'll be put into a tight spot, just like when we were attacked by Orcs before ... We need to have few solid allies as a simple precaution, don't you think? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/Q00294_CovertBusiness.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/Q00294_CovertBusiness.java new file mode 100644 index 0000000000..ed03bc4a64 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00294_CovertBusiness/Q00294_CovertBusiness.java @@ -0,0 +1,131 @@ +/* + * 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.Q00294_CovertBusiness; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.util.Util; + +/** + * Covert Business (294) + * @author xban1x + */ +public final class Q00294_CovertBusiness extends Quest +{ + // NPC + private static final int KEEF = 30534; + // Item + private static final int BAT_FANG = 1491; + // Monsters + private static final Map> MONSTER_DROP_CHANCE = new HashMap<>(); + static + { + MONSTER_DROP_CHANCE.put(20370, Arrays.asList(6, 3, 1, -1)); + MONSTER_DROP_CHANCE.put(20480, Arrays.asList(5, 2, -1)); + } + // Reward + private static final int RING_OF_RACCOON = 1508; + // Misc + private static final int MIN_LVL = 10; + + public Q00294_CovertBusiness() + { + super(294); + addStartNpc(KEEF); + addTalkId(KEEF); + addKillId(MONSTER_DROP_CHANCE.keySet()); + registerQuestItems(BAT_FANG); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if ((qs != null) && qs.isCreated() && event.equals("30534-03.htm")) + { + qs.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isCond(1) && Util.checkIfInRange(1500, npc, killer, true)) + { + final int chance = getRandom(10); + int count = 0; + for (int i : MONSTER_DROP_CHANCE.get(npc.getId())) + { + count++; + if (chance > i) + { + if (giveItemRandomly(killer, npc, BAT_FANG, count, 100, 1.0, true)) + { + qs.setCond(2); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance talker) + { + final QuestState qs = getQuestState(talker, true); + String html = getNoQuestMsg(talker); + if (qs.isCreated()) + { + html = (talker.getRace() == Race.DWARF) ? (talker.getLevel() >= MIN_LVL) ? "30534-02.htm" : "30534-01.htm" : "30534-00.htm"; + } + else if (qs.isStarted()) + { + if (qs.isCond(2)) + { + if (hasQuestItems(talker, RING_OF_RACCOON)) + { + giveAdena(talker, 2400, true); + html = "30534-06.html"; + } + else + { + giveItems(talker, RING_OF_RACCOON, 1); + html = "30534-05.html"; + } + addExpAndSp(talker, 0, 600); + qs.exitQuest(true, true); + } + else + { + html = "30534-04.html"; + } + } + return html; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-01.htm new file mode 100644 index 0000000000..9b04c82ffe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-01.htm @@ -0,0 +1,6 @@ +Elder Arin:
+Have you ever traveled by airship? It is the ultimate transportation, and we of the Black Anvil Guild created it with our combined technology. The sight of the airships flying high in the sky makes people sigh with admiration.
+But they say that the flying mechanisms of the giants of ere were greater in size than those of today, faster than the wyverns, and could even fly higher than the clouds. My dream is to restore the forgotten flying technology of the giants. I wonder what our land looks like from the sky, through the clouds ... Doesn't imagining that just make you happy?
+I am very busy with my guild business, but I try to study the Floating Stones, the basic element of flight, whenever I get the chance. Floating Stones are a peculiar metal that have the characteristic of hovering in the air, and I believe that the key to unlocking the secret of the giants of ere lies in finding a method to control the Floating Stone's powers. But I always run short of study materials, so I often ask apprentices like you to collect Floating Stones.
+(Quest for characters level 11 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-02.htm new file mode 100644 index 0000000000..08c11c1b98 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-02.htm @@ -0,0 +1,6 @@ +Elder Arin:
+Have you ever traveled by airship? It is the ultimate transportation, and we of the Black Anvil Guild created it with our combined technology. The sight of the airships flying high in the sky makes people sigh with admiration.
+But they say that the flying mechanisms of the giants of ere were greater in size than those of today, faster than the wyverns, and could even fly higher than the clouds. My dream is to restore the forgotten flying technology of the giants. I wonder what our land looks like from the sky, through the clouds ... Doesn't imagining that just make you happy?
+I am very busy with my guild business, but I try to study the Floating Stones, the basic element of flight, whenever I get the chance. Floating Stones are a peculiar metal that have the characteristic of hovering in the air, and I believe that the key to unlocking the secret of the giants of ere lies in finding a method to control the Floating Stones' powers. But I always run short of study materials, so I often ask apprentices like you to collect Floating Stones. What do you think? Will you help me?
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-03.htm new file mode 100644 index 0000000000..701192ff35 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-03.htm @@ -0,0 +1,4 @@ +Elder Arin:
+Floating Stones are not as hard to find as you think. Have you seen creatures such as monster eyes and magical weavers? They can fly through the air because they have Floating Stones in their bodies. Maybe the scholars were correct when they said monster eyes were artificial creatures created by the giants of ere.
+Anyway, there are many magical weavers in the Spine Mine Field, so you should hunt them and collect Floating Stone. If you search the northwest side of the western part of the mining region, you can easily find them. If you collect and bring the fifty Floating Stones, I will reward you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-04.html new file mode 100644 index 0000000000..1ba5e9b651 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-04.html @@ -0,0 +1,3 @@ +Elder Arin:
+Welcome back! How is the collecting job going? As I told you before, you can obtain the Floating Stones by hunting the magical weavers. Gather fifty of them and I will reward you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-05.html new file mode 100644 index 0000000000..884580cda6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-05.html @@ -0,0 +1,4 @@ +Elder Arin:
+Welcome, young apprentice! Do you have the fifty Floating Stones that I asked you to collect? Ah, right! You certainly have fifty of them! Thank you for your trouble. I will pay you as promised. This should be enough. I will give you this ring as a reward for working with us, the Black Anvil Guild. This token signifies that our guild trusts you.
+Now I can have some time to concentrate on my study. I don't know what will happen when the material runs short again, but once the ultimate airship is ready I will call you and give you a ride. So come visit me from time to time, and help me collect research materials. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-06.html new file mode 100644 index 0000000000..a84bb81d4f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/30536-06.html @@ -0,0 +1,4 @@ +Elder Arin:
+Welcome, young apprentice! Do you have the fifty Floating Stones that I asked you to collect? Ah, right! You certainly have fifty of them! Thank you for your trouble. I will pay you as promised. This should be enough.
+Now I can have some time to concentrate on my study. I don't know what will happen when the material runs short again, but once the ultimate airship is ready I will call you and give you a ride. So come visit me from time to time, and help me collect research materials. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/Q00295_DreamingOfTheSkies.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/Q00295_DreamingOfTheSkies.java new file mode 100644 index 0000000000..b72ae6da7c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00295_DreamingOfTheSkies/Q00295_DreamingOfTheSkies.java @@ -0,0 +1,110 @@ +/* + * 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.Q00295_DreamingOfTheSkies; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.util.Util; + +/** + * Dreaming of the Skies (295) + * @author xban1x + */ +public final class Q00295_DreamingOfTheSkies extends Quest +{ + // NPC + private static final int ARIN = 30536; + // Monster + private static final int MAGICAL_WEAVER = 20153; + // Item + private static final int FLOATING_STONE = 1492; + // Reward + private static final int RING_OF_FIREFLY = 1509; + // Misc + private static final int MIN_LVL = 11; + + public Q00295_DreamingOfTheSkies() + { + super(295); + addStartNpc(ARIN); + addTalkId(ARIN); + addKillId(MAGICAL_WEAVER); + registerQuestItems(FLOATING_STONE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if ((qs != null) && qs.isCreated() && event.equals("30536-03.htm")) + { + qs.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isCond(1) && Util.checkIfInRange(1500, npc, killer, true)) + { + if (giveItemRandomly(killer, npc, FLOATING_STONE, (getRandom(100) > 25) ? 1 : 2, 50, 1.0, true)) + { + qs.setCond(2); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance talker) + { + final QuestState qs = getQuestState(talker, true); + String html = getNoQuestMsg(talker); + if (qs.isCreated()) + { + html = (talker.getLevel() >= MIN_LVL) ? "30536-02.htm" : "30536-01.htm"; + } + else if (qs.isStarted()) + { + if (qs.isCond(2)) + { + if (hasQuestItems(talker, RING_OF_FIREFLY)) + { + giveAdena(talker, 2400, true); + html = "30536-06.html"; + } + else + { + giveItems(talker, RING_OF_FIREFLY, 1); + html = "30536-05.html"; + } + takeItems(talker, FLOATING_STONE, -1); + qs.exitQuest(true, true); + } + else + { + html = "30536-04.html"; + } + } + return html; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-01.htm new file mode 100644 index 0000000000..dbaf22f4e9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-01.htm @@ -0,0 +1,6 @@ +Trader Mion:
+I'm in trouble! I'm in big trouble! Van Holter of Elmore came to me, Mion, and ordered twenty dresses. Formal outfits for the mission to Aden, I heard. Oh dear. What should I do? Not enough time ... not enough materials! The honor of the Silver Scale Guild depends on my two hands now! Oh no ... I have to make the best Formal Wear! I'm in trouble! Big trouble! I don't know what to do now? I don't know! I really don't!
+Tarantula Spider Silk is lighter and has better colors than the highest-quality silk! Where can I find enough Tarantula Spider Silk for twenty dresses? That's too much! Who will believe me if I say I couldn't make Spider Silk dresses made of Tarantula Spider Silk because I couldn't find enough Spider Silk -- I'm frustrated! I'm frustrated! Tears form in my eyes and the world collapses upon me! Yikes! I really don't know what to do now ...!
+I do not have much time to make twenty by next week. Eeek! I, Mion, am responsible for this, if I do not finish on time! My fingers are starting to ache, thinking of all those clothes to make ... I will need a pile of laces and ribbons! Who is going to get the Spider Silk for me? Oh no! I need more materials!!! What should I do? Oh no ... my life is tragic ... now really ...I don't know what to do!!!
+(Quest for characters level 15 and above, with either the Ring of Raccoon or the Ring of Firefly.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-02.htm new file mode 100644 index 0000000000..7a6accaeeb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-02.htm @@ -0,0 +1,5 @@ +Trader Mion:
+I'm in trouble! I'm in big trouble! Van Holter of Elmore came to me, Mion, and ordered twenty dresses ... Formal outfits for the mission to Aden, I heard. Oh dear. What should I do? Not enough time ... not enough materials! The honor of the Silver Scale Guild depends on my two hands now! Oh no ... I have to make the best Formal Wear! I'm in trouble! Big trouble! I don't know what to do now? I don't know! I really don't!
+Tarantula Spider Silk is lighter and has better colors than the highest-quality silk! Where can I find enough Tarantula Spider Silk for twenty dresses? That's too much! Who will believe me if I say I couldn't make Spider Silk dresses made of Tarantula Spider Silk because I couldn't find enough Spider Silk -- I'm frustrated! I'm frustrated! Tears form in my eyes and the world collapses upon me! Yikes! I really don't know what to do now ...!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-03.htm new file mode 100644 index 0000000000..9faf476385 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-03.htm @@ -0,0 +1,5 @@ +Trader Mion:
+Ohh! Goddess Maphr sent me a savior! Good Lord! What took you so long!
+You don't have much time! Now I shall tell you about collecting the Spider Silk. Generally, people think that tarantulas do not make webs, but that is false. They dig holes for their nests and make webs to line them! Hunt tarantulas and bring all the Spider Silk to me! There are two kinds of tarantulas: hunter tarantula and plunder tarantula. If you fulfill this quest, I will reward you!
+By the way, if you happen to find a tarantula Spinneret take it to Defender Nathan. He will spin the silk out of it. He is a very skilled and sensitive Dwarf. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-04.html new file mode 100644 index 0000000000..9d92cd429d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-04.html @@ -0,0 +1,6 @@ +Trader Mion:
+Aghhh! What are you doing here? Hey ... I don't have time ... Just spin the silk out of them. If I don't have twenty dresses by next week, I will be kicked out of the Silver Scale Guild!
+I am telling you once more. You may receive Spider Silks only by hunting hunter tarantulas or plunder tarantulas. Just find them quickly and I will pay you back for sure. Also, you may only spin silks by giving Defender Nathan the tarantula Spinnerets! You don't have much time! You should be busy hunting spiders now ... you shouldn't waste your time like this! Please hurry, hurry ... I'm about to cry ...I don't know what to do now!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-05.html new file mode 100644 index 0000000000..d668056a08 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-05.html @@ -0,0 +1,6 @@ +Trader Mion:
+Oh my ...I'm deeply touched! I've never been this touched before! You brought the Spider Silk! Thank you very, very much! This is the reward, as promised. Please take it ... I still need more Spider Silk, so please collect more!
+But making twenty dresses will take forever ... What should I do? Maybe I should run away to another village? Oh no! I don't know what to do!!!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-06.html new file mode 100644 index 0000000000..a859ac1fb2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-06.html @@ -0,0 +1,3 @@ +Trader Mion:
+No way! I'm in a hurry and you want to quit? Do you want me to die? I have to make dresses by the day after tomorrow ...! Mion will hate you and curse you! Aghhhh! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-07.html new file mode 100644 index 0000000000..0220a053be --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30519-07.html @@ -0,0 +1,3 @@ +Trader Mion:
+Please hurry ... hurry! Tarantula Spider Silk! A lot! Hurry, hurry! Spinnerets are to go to Defender Nathan! Do you understand? Aghhh! Hurry, hurry! I'm about to die! Drink some honey tea and cheer up, Mion! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30548-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30548-01.html new file mode 100644 index 0000000000..b75ff9d3e1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30548-01.html @@ -0,0 +1,5 @@ +Defender Nathan:
+I heard about you from Mion. You're helping her collect the Spider Silks, right? I once learned the craft of spinning from the Golden Wheel Guild. But I gave up being a craftsman, and became a defender instead ... Actually, I once got my fortune told at the Maphr Temple. They said I wouldn't live long if I became a craftsman ... Tsk ...
+Anyway, my skills don't compare to a master's, but the village girls once swooned at my spinning skills! So, if you have any tarantula Spinnerets, bring them to me. I'll spin an unbelievable amount of Spider Silk for you!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30548-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30548-02.html new file mode 100644 index 0000000000..57a48a8f5a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30548-02.html @@ -0,0 +1,3 @@ +Defender Nathan:
+Huh! I can't believe Mion gave this job to such a fool. Hello? Anybody home?! I said Spinnerets, dummy! I need Spinnerets to spin the Spider Silk! Get it? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30548-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30548-03.html new file mode 100644 index 0000000000..6fcdce67b0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/30548-03.html @@ -0,0 +1,4 @@ +Defender Nathan:
+Spinnerets are the organs within the tarantulas' bodies that store the Spider Silk. Usually one can spin about fifteen skeins of Spider Silk from one Spinneret, but I can easily spin much more than that! If I'm lucky, I can spin over twenty skeins! Ha Ha Ha!
+Here! All done! Hurry up and take these to Mion! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/Q00296_TarantulasSpiderSilk.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/Q00296_TarantulasSpiderSilk.java new file mode 100644 index 0000000000..adb0289549 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00296_TarantulasSpiderSilk/Q00296_TarantulasSpiderSilk.java @@ -0,0 +1,167 @@ +/* + * 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.Q00296_TarantulasSpiderSilk; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.util.Util; + +/** + * Tarantula's Spider Silk (296) + * @author xban1x + */ +public final class Q00296_TarantulasSpiderSilk extends Quest +{ + // NPCs + private static final int TRADER_MION = 30519; + private static final int DEFENDER_NATHAN = 30548; + // Items + private static final int TARANTULA_SPIDER_SILK = 1493; + private static final int TARANTULA_SPINNERETTE = 1494; + // Monsters + private static final int[] MONSTERS = new int[] + { + 20394, + 20403, + 20508, + }; + // Misc + private static final int MIN_LVL = 15; + + public Q00296_TarantulasSpiderSilk() + { + super(296); + addStartNpc(TRADER_MION); + addTalkId(TRADER_MION, DEFENDER_NATHAN); + addKillId(MONSTERS); + registerQuestItems(TARANTULA_SPIDER_SILK, TARANTULA_SPINNERETTE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + String html = null; + if (qs == null) + { + return null; + } + + switch (event) + { + case "30519-03.htm": + { + if (qs.isCreated()) + { + qs.startQuest(); + html = event; + } + break; + } + case "30519-06.html": + { + if (qs.isStarted()) + { + qs.exitQuest(true, true); + html = event; + } + break; + } + case "30519-07.html": + { + if (qs.isStarted()) + { + html = event; + } + break; + } + case "30548-03.html": + { + if (qs.isStarted()) + { + if (hasQuestItems(player, TARANTULA_SPINNERETTE)) + { + giveItems(player, TARANTULA_SPIDER_SILK, (15 + getRandom(9)) * getQuestItemsCount(player, TARANTULA_SPINNERETTE)); + takeItems(player, TARANTULA_SPINNERETTE, -1); + html = event; + } + else + { + html = "30548-02.html"; + } + } + break; + } + } + return html; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && Util.checkIfInRange(1500, npc, killer, true)) + { + final int chance = getRandom(100); + if (chance > 95) + { + giveItemRandomly(killer, npc, TARANTULA_SPINNERETTE, 1, 0, 1, true); + } + else if (chance > 45) + { + giveItemRandomly(killer, npc, TARANTULA_SPIDER_SILK, 1, 0, 1, true); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance talker) + { + final QuestState qs = getQuestState(talker, true); + String html = getNoQuestMsg(talker); + if (qs.isCreated() && (npc.getId() == TRADER_MION)) + { + html = (talker.getLevel() >= MIN_LVL ? "30519-02.htm" : "30519-01.htm"); + } + else if (qs.isStarted()) + { + if (npc.getId() == TRADER_MION) + { + final long silk = getQuestItemsCount(talker, TARANTULA_SPIDER_SILK); + if (silk >= 1) + { + giveAdena(talker, (silk * 30) + (silk >= 10 ? 2000 : 0), true); + takeItems(talker, TARANTULA_SPIDER_SILK, -1); + // Q00281_HeadForTheHills.giveNewbieReward(talker);// TODO: It's using wrong bitmask, need to create a general bitmask for this using EnumIntBitmask class inside Quest class for handling Quest rewards. + html = "30519-05.html"; + } + else + { + html = "30519-04.html"; + } + } + else if (npc.getId() == DEFENDER_NATHAN) + { + html = "30548-01.html"; + } + } + return html; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/30540-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/30540-01.htm new file mode 100644 index 0000000000..a365d7c9de --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/30540-01.htm @@ -0,0 +1,6 @@ +Gatekeeper Wirphy:
+Twenty Starstones from the whinstone golems would be enough for now.
+But do you know that the whinstone golems are extremely strong?
+I am sorry. I've met many adventurers in my long life and the way I see it, you're just beginning your journey as an adventurer and do not have enough experience for the job. It may be too dangerous for you.
+(Quest for characters level 15 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/30540-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/30540-02.htm new file mode 100644 index 0000000000..191d22d83c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/30540-02.htm @@ -0,0 +1,6 @@ +Gatekeeper Wirphy:
+Most of my body parts were created by combining materials from the previous creations of the ancient giants.
+But because the remains are not complete, I can always feel energy draining out of my body. My body could not be perfected with Dwarven technology, so they opted for a second choice -- rechargeable energy.
+But I used too much energy while recently teleporting a large group of traders. Will you help me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/30540-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/30540-03.htm new file mode 100644 index 0000000000..23897a5ed1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/30540-03.htm @@ -0,0 +1,7 @@ +Gatekeeper Wirphy:
+Thank you!
+You are truly kind.
+While travelling west through the Spine Mine Field, you will see many whinstone golems, one of the legacies of the ancient giants, wandering around. Please collect twenty Starstones from their bodies. That should be enough energy for now.
+I don't have much, but I can give you a gatekeeper's token that lets you use the teleport service.
+Good luck then! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/30540-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/30540-04.html new file mode 100644 index 0000000000..b156e31879 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/30540-04.html @@ -0,0 +1,5 @@ +Gatekeeper Wirphy:
+I need at least twenty Starstones.
+The Dwarves created us so that we can only recharge in units of twenty Starstones.
+There are many whinstone golems in the Mine Field, so it shouldn't be difficult to gather them. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/30540-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/30540-05.html new file mode 100644 index 0000000000..2185843a0a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/30540-05.html @@ -0,0 +1,5 @@ +Gatekeeper Wirphy:
+Phew! Thank goodness. I was almost out of energy.
+Right ... I have to give you this. This is a Gatekeeper's token. If you need to teleport to Gludin later, just give it back to me. With the token, I will teleport you without charging any Adena.
+Thank you again. Have a nice day! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/Q00297_GatekeepersFavor.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/Q00297_GatekeepersFavor.java new file mode 100644 index 0000000000..e304123f70 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00297_GatekeepersFavor/Q00297_GatekeepersFavor.java @@ -0,0 +1,117 @@ +/* + * 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.Q00297_GatekeepersFavor; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Gatekeeper's Favor (297) + * @author malyelfik + */ +public class Q00297_GatekeepersFavor extends Quest +{ + // NPC + private static final int WIRPHY = 30540; + // Monster + private static final int WHINSTONE_GOLEM = 20521; + // Items + private static final int STARSTONE = 1573; + private static final int GATEKEEPER_TOKEN = 1659; + // Misc + private static final int MIN_LEVEL = 15; + private static final int STARSTONE_COUT = 20; + + public Q00297_GatekeepersFavor() + { + super(297); + addStartNpc(WIRPHY); + addTalkId(WIRPHY); + addKillId(WHINSTONE_GOLEM); + registerQuestItems(STARSTONE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equalsIgnoreCase("30540-03.htm")) + { + if (player.getLevel() < MIN_LEVEL) + { + return "30540-01.htm"; + } + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isStarted() && (getQuestItemsCount(killer, STARSTONE) < STARSTONE_COUT)) + { + giveItems(killer, STARSTONE, 1); + if (getQuestItemsCount(killer, STARSTONE) >= STARSTONE_COUT) + { + st.setCond(2, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + htmltext = "30540-02.htm"; + break; + case State.STARTED: + if (st.isCond(1)) + { + htmltext = "30540-04.html"; + } + else if (st.isCond(2) && (getQuestItemsCount(player, STARSTONE) >= STARSTONE_COUT)) + { + giveItems(player, GATEKEEPER_TOKEN, 2); + st.exitQuest(true, true); + htmltext = "30540-05.html"; + } + break; + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/30029-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/30029-02.htm new file mode 100644 index 0000000000..3a08ef8bba --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/30029-02.htm @@ -0,0 +1,5 @@ +Master Minia:
+When I was young, I had the opportunity to visit many places around the continent and experience different cultures. Perhaps it is because I am a Master who studies swordsmanship, but I was naturally drawn to the weapons of diverse races. That led to my hobby of collecting various rare weapons.
+These days, I am interested in the weapons of the Tunath orcs, who are natives of Talking Island. The orcs' weapons differ slightly according to region, but the orcs of this island were isolated for a long time from the mainland and that is probably why the shape of their weapons is very unique. For that reason, I would like to add the arrowhead of the Tunath orcs to my collection. It would be nice if you could later assist me in collecting arrowheads.
+(Quest for characters level 10 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/30029-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/30029-03.htm new file mode 100644 index 0000000000..cb8ebb565f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/30029-03.htm @@ -0,0 +1,6 @@ +Master Minia:
+When I was young, I had the opportunity to visit many places around the continent and experience different cultures. Perhaps it is because I am a master who studies swordsmanship, but I was naturally drawn to the weapons of diverse races. That led to my hobby of collecting various rare weapons.
+These days, I am interested in the weapons of the Tunath orcs, who are natives of Talking Island. The orcs' weapons differ slightly according to region, but the orcs of this island were isolated for a long time from the mainland and that is probably why the shape of their weapons is very unique. For that reason, I would like to add the arrowhead of the Tunath orcs to my collection.
+If you have the time, could you collect Orcish Arrowheads for me? Of course, I will pay you for your services.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/30029-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/30029-04.htm new file mode 100644 index 0000000000..b87d5cadf8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/30029-04.htm @@ -0,0 +1,4 @@ +Master Minia:
+There are many Orcs on Talking Island, but the Tunath Orcs are at the Elven Ruins. There you will be able to find arrowheads used by the Tunath Orc Marksmen. If you don't know how to find the ruins, ask Guard Kenyos.
+These would not be soley for my own private collection. I plan to donate some to Sedrick's Training Hall for exhibition, so please bring back ten arrowheads. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/30029-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/30029-05.html new file mode 100644 index 0000000000..ef9aa6d2c0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/30029-05.html @@ -0,0 +1,4 @@ +Master Minia:
+Please gather ten arrowheads used by the Tunath Orc Marksmen and bring them to me. I am not collecting them simply for my private purposes, but plan to donate some to Sedrick's Training Hall for exhibition.
+Tunath Orcs are in the Elven Ruins. If you don't know where that is, ask Guard Kenyos for directions. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/30029-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/30029-06.html new file mode 100644 index 0000000000..51aee37e07 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/30029-06.html @@ -0,0 +1,3 @@ +Master Minia:
+Thank you very much. With this, I can now add Tunath Orc arrowheads to my weapons collection list. I plan to donate about five to Sedrick's Training Hall for exhibition purposes. I will compensate you as promised. Please take this as a token of my thanks for your trouble. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/Q00303_CollectArrowheads.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/Q00303_CollectArrowheads.java new file mode 100644 index 0000000000..7c2d9b715e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00303_CollectArrowheads/Q00303_CollectArrowheads.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.Q00303_CollectArrowheads; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Collect Arrowheads (303) + * @author ivantotov + */ +public final class Q00303_CollectArrowheads extends Quest +{ + // NPC + private static final int MINIA = 30029; + // Item + private static final int ORCISH_ARROWHEAD = 963; + // Misc + private static final int MIN_LEVEL = 10; + private static final int REQUIRED_ITEM_COUNT = 10; + // Monster + private static final int TUNATH_ORC_MARKSMAN = 20361; + + public Q00303_CollectArrowheads() + { + super(303); + addStartNpc(MINIA); + addTalkId(MINIA); + addKillId(TUNATH_ORC_MARKSMAN); + registerQuestItems(ORCISH_ARROWHEAD); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equals("30029-04.htm")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon) + { + final L2PcInstance partyMember = getRandomPartyMember(player, 1); + if (partyMember != null) + { + final QuestState st = getQuestState(partyMember, false); + if (giveItemRandomly(player, npc, ORCISH_ARROWHEAD, 1, REQUIRED_ITEM_COUNT, 0.4, true)) + { + st.setCond(2); + } + } + return super.onKill(npc, player, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = player.getLevel() >= MIN_LEVEL ? "30029-03.htm" : "30029-02.htm"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + if (getQuestItemsCount(player, ORCISH_ARROWHEAD) < REQUIRED_ITEM_COUNT) + { + htmltext = "30029-05.html"; + } + break; + } + case 2: + { + if (getQuestItemsCount(player, ORCISH_ARROWHEAD) >= REQUIRED_ITEM_COUNT) + { + giveAdena(player, 1000, true); + addExpAndSp(player, 2000, 0); + st.exitQuest(true, true); + htmltext = "30029-06.html"; + } + break; + } + } + break; + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-02.htm new file mode 100644 index 0000000000..ff0b81901d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-02.htm @@ -0,0 +1,5 @@ +Trader Katerina:
+I am working as a trader now, but actually my expertise is collecting and trading jewels. I find rare jewels by asking favors of travelers like you and sell them at Giran or Aden. Not long ago, I heard that one can find precious jewels at the Elven Ruins of Talking Island. It is an elemental stone used by the Elven Mystics or something like that ...
+Now that I think about it, the Elven Ruins may be too dangerous for you to go to. I was going to ask you to find me that jewel, but ... If you come across an opportunity later on to explore the Elven Ruins, please come to me. Then I will tell you in detail how to find the jewel there.
+(Quest for characters level 17 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-03.htm new file mode 100644 index 0000000000..1ba5bd32bb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-03.htm @@ -0,0 +1,5 @@ +Trader Katerina:
+Although I work as a merchant now, my specialty used to be collecting and dealing in jewels. I would ask travelers like you to obtain rare jewels, and I would sell them at Giran or Aden. A little while ago, I found some entertaining information while looking through some ancient documents at the School of Wizardry. The Stones of Water and Fire that were once used by the ancient Elf magicians could be found some place on this island. It was a long-abandoned place called the Elven Ruins. Sound interesting to you?
+The Elven Ruins are much too dangerous for someone like me, but I'm sure you can handle it without a problem. If you bring back the jewels that I'm looking for from the ruins, I'll pay you generously. How about it?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-04.htm new file mode 100644 index 0000000000..d926146228 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-04.htm @@ -0,0 +1,6 @@ +Trader Katerina:
+Thank you so much for granting my request. Now please listen carefully to my account.
+The Elven Ruins here on Talking Island used to be a place where the Elves taught the Humans magic a long time ago. They say that underground, there used to be a temple where the Elves performed sacrificial rites to the spirit kings of fire and water. When the Elves left the island, they broke the elemental Stone of Fire and elemental stone of ice, which were in the underground temple before they left.
+But as the stones were shattered, the magic that was emitted from the shards summoned water spirit undines and flame spirit salamanders. Therefore, underneath the Elven Ruins there are still many salamanders and undines that have Flame Shards, fragments of the elemental Stone of Fire, and Ice Shards, fragments of the elemental Stone of Water, in their bodies.
+What you must do is go to the Elven Ruins and bring the fragments of elemental stones that are inside the bodies of the salamanders and undines. I will compensate you according to the number of jewels that you bring back. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-05.html new file mode 100644 index 0000000000..b7133add3d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-05.html @@ -0,0 +1,5 @@ +Trader Katerina:
+You have not brought any fragments of elemental stone. As I already told you, you must go to the underground Elven Ruins to find the fragments of elemental stone. Inside the fire spirit salamanders and water spirit undines, you will be able to find the Flame Shard and Ice Shard, respectively, fragments of the elemental stones of fire and water.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-07.html new file mode 100644 index 0000000000..c59ab75c2d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-07.html @@ -0,0 +1,6 @@ +Trader Katerina:
+Thank you very much. I think I can feel a warmth at the tip of my fingers because the jewel contains the power of the spirits. How fascinating.
+As I promised, I will compensate you according to the number of jewels you brought me. Will you go back to the ruins to bring more jewels? Or do you want to end our Contract?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-08.html new file mode 100644 index 0000000000..2f9b0a3d0e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-08.html @@ -0,0 +1,3 @@ +Trader Katerina:
+If I come across any information on rare jewels in the future, I may ask you for your services again. I hope you will help me then, too. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-09.html new file mode 100644 index 0000000000..ba20679734 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/30004-09.html @@ -0,0 +1,3 @@ +Trader Katerina:
+Thank you. I thank you in advance. And don't worry about compensation. I will truly compensate you for as much as you bring back. I may not look it, but I always keep my word. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/Q00306_CrystalOfFireAndIce.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/Q00306_CrystalOfFireAndIce.java new file mode 100644 index 0000000000..8c667e7328 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00306_CrystalOfFireAndIce/Q00306_CrystalOfFireAndIce.java @@ -0,0 +1,168 @@ +/* + * This file is part of the L2J Mobius project. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +package quests.Q00306_CrystalOfFireAndIce; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.util.Util; + +/** + * Crystals of Fire and Ice (306) + * @author ivantotov + */ +public final class Q00306_CrystalOfFireAndIce extends Quest +{ + // NPC + private static final int KATERINA = 30004; + // Items + private static final int FLAME_SHARD = 1020; + private static final int ICE_SHARD = 1021; + // Misc + private static final int MIN_LEVEL = 17; + // Monsters + private static final int UNDINE_NOBLE = 20115; + private static final Map MONSTER_DROPS = new HashMap<>(); + static + { + MONSTER_DROPS.put(20109, new ItemHolder(FLAME_SHARD, 925)); // Salamander + MONSTER_DROPS.put(20110, new ItemHolder(ICE_SHARD, 900)); // Undine + MONSTER_DROPS.put(20112, new ItemHolder(FLAME_SHARD, 900)); // Salamander Elder + MONSTER_DROPS.put(20113, new ItemHolder(ICE_SHARD, 925)); // Undine Elder + MONSTER_DROPS.put(20114, new ItemHolder(FLAME_SHARD, 925)); // Salamander Noble + MONSTER_DROPS.put(UNDINE_NOBLE, new ItemHolder(ICE_SHARD, 950)); // Undine Noble + } + + public Q00306_CrystalOfFireAndIce() + { + super(306); + addStartNpc(KATERINA); + addTalkId(KATERINA); + addKillId(MONSTER_DROPS.keySet()); + registerQuestItems(FLAME_SHARD, ICE_SHARD); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + String htmltext = null; + switch (event) + { + case "30004-04.htm": + { + if (st.isCreated()) + { + st.startQuest(); + htmltext = event; + } + break; + } + case "30004-08.html": + { + st.exitQuest(true, true); + htmltext = event; + break; + } + case "30004-09.html": + { + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs; + if (npc.getId() == UNDINE_NOBLE) // Undine Noble gives quest drops only for the killer + { + qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted()) + { + giveKillReward(killer, npc); + } + } + else + { + qs = getRandomPartyMemberState(killer, -1, 3, npc); + if (qs != null) + { + giveKillReward(qs.getPlayer(), npc); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = player.getLevel() >= MIN_LEVEL ? "30004-03.htm" : "30004-02.htm"; + break; + } + case State.STARTED: + { + if (hasAtLeastOneQuestItem(player, getRegisteredItemIds())) + { + final long flame = getQuestItemsCount(player, FLAME_SHARD); + final long ice = getQuestItemsCount(player, ICE_SHARD); + giveAdena(player, ((flame * 40) + (ice * 40) + ((flame + ice) >= 10 ? 5000 : 0)), true); + takeItems(player, -1, getRegisteredItemIds()); + htmltext = "30004-07.html"; + } + else + { + htmltext = "30004-05.html"; + } + break; + } + } + return htmltext; + } + + private static final void giveKillReward(L2PcInstance player, L2Npc npc) + { + if (Util.checkIfInRange(1500, npc, player, false)) + { + final ItemHolder item = MONSTER_DROPS.get(npc.getId()); + giveItemRandomly(player, npc, item.getId(), 1, 0, 1000.0 / item.getCount(), true); + } + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-02.htm new file mode 100644 index 0000000000..604197764b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-02.htm @@ -0,0 +1,5 @@ +Trader Herbiel:
+Long ago, we Elves dwelled in a beautiful land east of the Elven Forest, beyond the mountains. But it was scarred by powerful dark magic used during the Human-Elven War. Now it is a poisonous expanse called the Sea of Spores.
+Worse, that noxious area is slowly expanding, contaminating our forest and gradually eroding our magical defense field. Unless we can stop it, I fear it is only a matter of time before our village is destroyed. Perhaps when you are more experienced, my young friend, you will help us fight this menace.
+(Only characters who are level 8 and higher may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-03.htm new file mode 100644 index 0000000000..dfe0b0ab76 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-03.htm @@ -0,0 +1,5 @@ +Trader Herbiel:
+Long ago, we Elves dwelled in a beautiful land east of the Elven Forest, beyond the mountains. But it was scarred by powerful dark magic used during the Human-Elven War. Now it is a poisonous expanse called the Sea of Spores.
+Worse, that noxious area is slowly expanding, contaminating our forest and gradually eroding our magical defense field. That is why the spirits of the forest are becoming more aggressive, and creatures like the Walking Fungus are increasing in number. We have been researching a way to reverse the curse and restore the Sea of Spores to its original condition, but...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-04.htm new file mode 100644 index 0000000000..4f7c83e375 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-04.htm @@ -0,0 +1,6 @@ +Trader Herbiel:
+We are attempting to gather information on 2 fronts. The renowned Spellsinger Adria Lumingshine is currently on the shores of the Sea of Spores, while Hierarch Asterios is attempting to neutralize the poisons that have seeped into our forest. I have been assisting the Hierarch's research by collecting and refining the leaves, roots and spores of various plants.
+However, he recently asked me to find a specific kind of spore pollen that is carried here by the wind from the Sea of Spores. The pollen is so fine that the only way to collect it is to extract it from Spore Fungus.
+I'm needed here to oversee the extraction process, which means I need a volunteer to go to the forest and collect Spore Sacs from Spore Fungi. Will you help me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-05.htm new file mode 100644 index 0000000000..057d83823b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-05.htm @@ -0,0 +1,3 @@ +Trader Herbiel:
+Go to the Elven Forest, slay the Spore Fungi there and return her with 10 Spore Sacs. Keep in mind that the Spore Sacs are very delicate and may tear unless you are extremely careful. May Eva's blessing go with you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-06.html new file mode 100644 index 0000000000..83f485c612 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-06.html @@ -0,0 +1,3 @@ +Trader Herbiel:
+I need at least 10 Spore Sacs in order to extract the amount of pollen needed for the Hierarch's research. Please go and bring back more -- this is important! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-07.html new file mode 100644 index 0000000000..b8d7b63776 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/30150-07.html @@ -0,0 +1,4 @@ +Trader Herbiel:
+Thank you! Now I can extract the pollen the Hierarch needs. With any luck, this will provide the key we need to defeat the Sea of Spores.
+You have done a great service today for all Elvenkind. Please accept this as a token of my gratitude. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/Q00313_CollectSpores.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/Q00313_CollectSpores.java new file mode 100644 index 0000000000..81dad2663e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00313_CollectSpores/Q00313_CollectSpores.java @@ -0,0 +1,139 @@ +/* + * 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.Q00313_CollectSpores; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.util.Util; + +/** + * Collect Spores (313) + * @author ivantotov + */ +public final class Q00313_CollectSpores extends Quest +{ + // NPC + private static final int HERBIEL = 30150; + // Item + private static final int SPORE_SAC = 1118; + // Misc + private static final int MIN_LEVEL = 8; + private static final int REQUIRED_SAC_COUNT = 10; + // Monster + private static final int SPORE_FUNGUS = 20509; + + public Q00313_CollectSpores() + { + super(313); + addStartNpc(HERBIEL); + addTalkId(HERBIEL); + addKillId(SPORE_FUNGUS); + registerQuestItems(SPORE_SAC); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + String htmltext = null; + switch (event) + { + case "30150-05.htm": + { + if (st.isCreated()) + { + st.startQuest(); + htmltext = event; + } + break; + } + case "30150-04.htm": + { + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isCond(1) && Util.checkIfInRange(1500, npc, killer, false)) + { + if (giveItemRandomly(killer, npc, SPORE_SAC, 1, REQUIRED_SAC_COUNT, 0.4, true)) + { + st.setCond(2); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = player.getLevel() >= MIN_LEVEL ? "30150-03.htm" : "30150-02.htm"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + if (getQuestItemsCount(player, SPORE_SAC) < REQUIRED_SAC_COUNT) + { + htmltext = "30150-06.html"; + } + break; + } + case 2: + { + if (getQuestItemsCount(player, SPORE_SAC) >= REQUIRED_SAC_COUNT) + { + giveAdena(player, 3500, true); + st.exitQuest(true, true); + htmltext = "30150-07.html"; + } + break; + } + } + break; + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-00.htm new file mode 100644 index 0000000000..e2e56fdc2e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-00.htm @@ -0,0 +1,5 @@ +Master Ellenia:
+Have you ever seen the race called the ratmen? We Elves call that lowly race "plague bringers." Originally no disease existed anywhere in the Elven Forest. But when the dirty ratmen entered our forest, they spread disease and plague, and we learned for the first time what it means to become ill and weak.
+Their nest has recently been uncovered, and a group will be sent soon to eradicate them. We will surely drive the plague bringers out of our forest. But this is business between Elves and ratmen. I don't think the one of a foreign race, like yourself, should be involved.
+(Quest for Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-02.htm new file mode 100644 index 0000000000..b26dd56ef2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-02.htm @@ -0,0 +1,6 @@ +Master Ellenia:
+Have you ever seen the race called the ratmen? We Elves call that lowly race "plague bringers." Originally no disease existed anywhere in the Elven Forest. But when the dirty ratmen entered our forest, they spread disease and plague, and we learned for the first time what it means to become ill and weak.
+Moreover, the ratmen were paid to fight for the Dark Elves as mercenary soldiers during our war with the dark ones. Countless Elven brothers lost their lives to that disgusting race. Never can we forget or forgive the sins that they committed against us.
+Heed my words ... there will come a day when those plague bringers will be destroyed. When that time comes, please take up your sword and join in the sacred task of dealing with the ratmen.
+(Quest for Elven characters level 18 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-03.htm new file mode 100644 index 0000000000..ac09697420 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-03.htm @@ -0,0 +1,6 @@ +Master Ellenia:
+Have you ever seen the race called the ratmen? We Elves call that lowly race "plague bringers." Originally no disease existed anywhere in the Elven Forest. But when the dirty ratmen entered our forest, they spread disease and plague, and we learned for the first time what it means to become ill and weak.
+Moreover, the ratmen were paid to fight for the Dark Elves as mercenary soldiers during our war with the dark ones. Countless Elven brothers lost their lives to that disgusting race. Never can we forget or forgive the sins that they committed against us.
+Now the time has come to destroy the plague bringers! Won't you participate in the sacred task of punishing the ratmen?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-04.htm new file mode 100644 index 0000000000..42a325fc1e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-04.htm @@ -0,0 +1,4 @@ +Master Ellenia:
+Then I shall draw up our Contract. What you must do is to kill the ratmen and bring back their fangs as proof. I will compensate you for as many as you bring back. Furthermore, if you kill their leader Varool Foulclaw and bring back one of his fangs as proof, I will give you a great reward.
+We should not leave any of them alive, those dirty villains that have polluted the Elven Forest with disease and collaborated with the dark race! In Eva's name, may they all receive the stillness of the grave! According to the sentinels, the ratmen nest is in the abandoned Elven Underground Fortress. If you do not know the way to the Elven Underground Fortress, ask Sentinel Starden. May the divine protection of Eva be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-05.html new file mode 100644 index 0000000000..c5c091db5c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-05.html @@ -0,0 +1,5 @@ +Master Ellenia:
+The eradication of the plague bringers has begun! Please hurry to the abandoned Underground Elven Fortress. Do you remember the Contract you signed with me? Destroy the dirty ratmen and bring back their fangs as proof, and I will reward you for each item of proof you bring me. I will give you an exceptionally large reward if you kill their leader, Varool Foulclaw, and bring me one of his fangs.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-07.html new file mode 100644 index 0000000000..05dddb4433 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-07.html @@ -0,0 +1,6 @@ +Master Ellenia:
+I congratulate you upon your safe return, Fighter of the forest. Have you given the enemy of our race a harsh punishment they will not soon forget?
+According to the terms of our Contract, I will reward you according to the number of fangs you have brought. I hope you will continue to fight for the brothers of the forest.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-08.html new file mode 100644 index 0000000000..f5e1a28844 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-08.html @@ -0,0 +1,3 @@ +Master Ellenia:
+I understand. You too, need rest. Rest under the shade of the Mother Tree and recover the strength of both your body and soul. Well then, may Eva's blessings be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-09.html new file mode 100644 index 0000000000..8d870e8deb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/30155-09.html @@ -0,0 +1,3 @@ +Master Ellenia:
+The fight must continue. We should not leave any of them alive, those dirty villains that have polluted the Elven Forest with disease and collaborated with the dark race. In Eva's name, may they all receive the stillness of the grave! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/Q00316_DestroyPlagueCarriers.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/Q00316_DestroyPlagueCarriers.java new file mode 100644 index 0000000000..5802373437 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00316_DestroyPlagueCarriers/Q00316_DestroyPlagueCarriers.java @@ -0,0 +1,173 @@ +/* + * 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.Q00316_DestroyPlagueCarriers; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.ChatType; +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.NpcStringId; +import com.l2jmobius.gameserver.network.serverpackets.NpcSay; + +/** + * Destroy Plague Carriers (316) + * @author ivantotov + */ +public final class Q00316_DestroyPlagueCarriers extends Quest +{ + // NPC + private static final int ELLENIA = 30155; + // Items + private static final int WERERAT_FANG = 1042; + private static final int VAROOL_FOULCLAW_FANG = 1043; + // Misc + private static final int MIN_LEVEL = 18; + // Monsters + private static final int VAROOL_FOULCLAW = 27020; + private static final Map MONSTER_DROPS = new HashMap<>(); + static + { + MONSTER_DROPS.put(20040, new ItemHolder(WERERAT_FANG, 5)); // Sukar Wererat + MONSTER_DROPS.put(20047, new ItemHolder(WERERAT_FANG, 5)); // Sukar Wererat Leader + MONSTER_DROPS.put(VAROOL_FOULCLAW, new ItemHolder(VAROOL_FOULCLAW_FANG, 7)); // Varool Foulclaw + } + + public Q00316_DestroyPlagueCarriers() + { + super(316); + addStartNpc(ELLENIA); + addTalkId(ELLENIA); + addAttackId(VAROOL_FOULCLAW); + addKillId(MONSTER_DROPS.keySet()); + registerQuestItems(WERERAT_FANG, VAROOL_FOULCLAW_FANG); + } + + @Override + public boolean checkPartyMember(QuestState qs, L2Npc npc) + { + return ((npc.getId() != VAROOL_FOULCLAW) || !hasQuestItems(qs.getPlayer(), VAROOL_FOULCLAW_FANG)); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + String htmltext = null; + if (qs == null) + { + return htmltext; + } + + switch (event) + { + case "30155-04.htm": + { + if (qs.isCreated()) + { + qs.startQuest(); + htmltext = event; + } + break; + } + case "30155-08.html": + { + qs.exitQuest(true, true); + htmltext = event; + break; + } + case "30155-09.html": + { + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onAttack(L2Npc npc, L2PcInstance attacker, int damage, boolean isSummon) + { + if (npc.isScriptValue(0)) + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.WHY_DO_YOU_OPPRESS_US_SO)); + npc.setScriptValue(1); + } + return super.onAttack(npc, attacker, damage, isSummon); + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getRandomPartyMemberState(killer, -1, 3, npc); + if (qs != null) + { + final ItemHolder item = MONSTER_DROPS.get(npc.getId()); + final int limit = (npc.getId() == VAROOL_FOULCLAW ? 1 : 0); + giveItemRandomly(qs.getPlayer(), npc, item.getId(), 1, limit, 10.0 / item.getCount(), true); + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs == null) + { + return htmltext; + } + + if (qs.isCreated()) + { + if (player.getRace() != Race.ELF) + { + htmltext = "30155-00.htm"; + } + else if (player.getLevel() < MIN_LEVEL) + { + htmltext = "30155-02.htm"; + } + else + { + htmltext = "30155-03.htm"; + } + } + else if (qs.isStarted()) + { + if (hasAtLeastOneQuestItem(player, getRegisteredItemIds())) + { + final long wererars = getQuestItemsCount(player, WERERAT_FANG); + final long foulclaws = getQuestItemsCount(player, VAROOL_FOULCLAW_FANG); + giveAdena(player, ((wererars * 30) + (foulclaws * 10000) + ((wererars + foulclaws) >= 10 ? 5000 : 0)), true); + takeItems(player, -1, getRegisteredItemIds()); + htmltext = "30155-07.html"; + } + else + { + htmltext = "30155-05.html"; + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-02.htm new file mode 100644 index 0000000000..2a2327990d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-02.htm @@ -0,0 +1,6 @@ +Rizraell:
+All spirits in the ancient forest used to be friends to us Elves. But recently, some spirits have become violent. It's as if they were trying to get revenge on the Elves for the destruction of the forest. I heard it was the angry wind spirit lirein that recently caused the strong wind to destroy the roofs of the village buildings and break windows.
+If the 'sylph' is the spirit of the cool breeze that blows between trees, then 'lirein' is a vengeful spirit of a wild storm. These spirits pluck trees from their roots and send animals flying high in the air. They are especially hostile to Elves. They come and go with severe winds, and we feel like they are trying to drive us from the forest.
+However, the Wind Shard, a fragment of Soul Ore that is within the body of a lirein, is a very precious resource. I make various magical products using Soul Ore, so I may ask you to collect some Wind Shards for me in the near future.
+(Quest for characters level 18 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-03.htm new file mode 100644 index 0000000000..da94bc28e6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-03.htm @@ -0,0 +1,8 @@ +Rizraell:
+All spirits in the ancient forest used to be friends to us Elves. But recently, some spirits have become violent. It's as if they were trying to get revenge on the Elves for the destruction of the forest. I heard it was the angry wind spirit lirein that recently caused the strong wind to destroy the roofs of the village buildings and break windows.
+If the 'sylph' is the spirit of the cool breeze that blows between trees, then 'lirein' is a vengeful spirit of a wild storm. These spirits pluck trees from their roots and send animals flying high in the air. They are especially hostile to Elves. They come and go with severe winds, and we feel like they are trying to drive us from the forest.
+However, the Wind Shard, a fragment of Soul Ore that is within the body of a lirein, is a very precious resource. I use elemental stones to make various magic products, but among them, the Wind Shard is a material inevitably needed when making the scroll of wind.
+The scroll of wind is just as its name implies -- wind that is trapped in parchment. If you spread the scroll wide open, the strong wind sealed within will blow in the direction of your choice for a few seconds. This can be very useful for various tasks. It is used to change the direction of the wind east, to prevent the poisonous fumes coming from the Sea of Spores from entering the Elven forest. The scroll of wind is also bought by many Human and Dwarven sea navigators. I heard it is used when there is no wind on the ocean and the ship cannot move.
+I am making several scrolls of wind due to the commission of Herbiel, but I am short of a few materials. Can you do me the favor of collecting Wind Shards?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-04.htm new file mode 100644 index 0000000000..87db367d3f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-04.htm @@ -0,0 +1,4 @@ +Rizraell:
+Then let's make a Contract. If you find Wind Shards from lirein, the vengeful spirits of the wind, I will compensate you according to how many you bring.
+They say there are many lirein around the Neutral Zone on the boundaries of the Elven Forest and Gludio. If you don't know how to get there, ask Sentinel Rayen. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-05.html new file mode 100644 index 0000000000..b8a864bb8a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-05.html @@ -0,0 +1,5 @@ +Rizraell:
+Do you remember our Contract? If you find Wind Shards from lireins, the vengeful spirits of the wind, I will compensate you according to how many you bring me. They say there are many lirein in the Neutral Zone. Ask Sentinel Rayen about how to get there.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-07.html new file mode 100644 index 0000000000..ec1a1013b5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-07.html @@ -0,0 +1,6 @@ +Rizraell:
+Thank you. This blue jewel that quivers at the tip of my fingers is indeed a Wind Shard. I will compensate you according to how many you brought. Thank you for your trouble.
+Would you like to end the Contract? Or would you like to continue collecting?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-08.html new file mode 100644 index 0000000000..59ef753d76 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-08.html @@ -0,0 +1,3 @@ +Rizraell:
+Thank you. I am much indebted to you even during the short time our fates were bound by Contract. May Eva's blessing be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-09.html new file mode 100644 index 0000000000..040226af54 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/30361-09.html @@ -0,0 +1,3 @@ +Rizraell:
+The Wind Shard that you collect will protect our forest from the poisons blowing from the Sea of Spores and give hope to the sailors that are stranded in the ocean. Well then, please continue to perform your services. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/Q00317_CatchTheWind.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/Q00317_CatchTheWind.java new file mode 100644 index 0000000000..809496c530 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00317_CatchTheWind/Q00317_CatchTheWind.java @@ -0,0 +1,127 @@ +/* + * 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.Q00317_CatchTheWind; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; + +/** + * Catch The Wind (317) + * @author ivantotov + */ +public final class Q00317_CatchTheWind extends Quest +{ + // NPC + private static final int RIZRAELL = 30361; + // Item + private static final int WIND_SHARD = 1078; + // Misc + private static final int MIN_LEVEL = 18; + private static final double DROP_CHANCE = 0.5; + // Monsters + private static final int[] MONSTERS = + { + 20036, // Lirein + 20044, // Lirein Elder + }; + + public Q00317_CatchTheWind() + { + super(317); + addStartNpc(RIZRAELL); + addTalkId(RIZRAELL); + addKillId(MONSTERS); + registerQuestItems(WIND_SHARD); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + String htmltext = null; + if (qs == null) + { + return htmltext; + } + + switch (event) + { + case "30361-04.htm": + { + if (qs.isCreated()) + { + qs.startQuest(); + htmltext = event; + } + break; + } + case "30361-08.html": + case "30361-09.html": + { + final long shardCount = getQuestItemsCount(player, WIND_SHARD); + if (shardCount > 0) + { + giveAdena(player, ((shardCount * 40) + (shardCount >= 10 ? 2988 : 0)), true); + takeItems(player, WIND_SHARD, -1); + } + + if (event.equals("30361-08.html")) + { + qs.exitQuest(true, true); + } + + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getRandomPartyMemberState(killer, -1, 3, npc); + if (qs != null) + { + giveItemRandomly(qs.getPlayer(), npc, WIND_SHARD, 1, 0, DROP_CHANCE, true); + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs == null) + { + return htmltext; + } + + if (qs.isCreated()) + { + htmltext = ((player.getLevel() >= MIN_LEVEL) ? "30361-03.htm" : "30361-02.htm"); + } + else if (qs.isStarted()) + { + htmltext = (hasQuestItems(player, WIND_SHARD) ? "30361-07.html" : "30361-05.html"); + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/30138-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/30138-02.htm new file mode 100644 index 0000000000..670e731c83 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/30138-02.htm @@ -0,0 +1,4 @@ +Trader Minaless:
+I grow many Medicinal Herbs as a side job. Of course, my efforts don't compare at all to Tetrarch Vellior's herb garden, but I am raising a few priceless herbs like nightshade and Belladonna. However, as precious as they are, they must be given a special fertilizer. To make the fertilizer of the nightshade, one must collect all sorts of different materials, and it takes a lot of time and effort. It would be nice if you could help me later on...
+(Quest for characters level 11 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/30138-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/30138-03.htm new file mode 100644 index 0000000000..98b8bbe9ec --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/30138-03.htm @@ -0,0 +1,5 @@ +Trader Minaless:
+Do you know about the flower called nightshade? It is a very beautiful plant with a sweet scent that only blossoms at night. The juice is very poisonous, but if it is processed properly it can be used in making reagents that have many uses. Recently, I have begun raising nightshade in my herb garden. However, I am still learning the craft, so everything is very crude compared to Tetrarch Vellior's herb garden.
+To make nightshade fertilizer I must collect all sorts of odd ingredients, and it requires a lot of time and effort. I need someone to collect ingredients for me. Could you help me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/30138-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/30138-04.htm new file mode 100644 index 0000000000..3de593b851 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/30138-04.htm @@ -0,0 +1,4 @@ +Trader Minaless:
+The Nightshade needs Zombie Dust as fertilizer. Zombie Dust is made by drying the skins of corpses and grinding them into powder. It will have a stronger effect if it's made with an old corpse. Tetrarch Vellior told me he uses the skins of the undead for best effect.
+I need a favor from you. If you go to the Marshlands southwest of our village, you'll find Zombies of the Tree Elves, long dead after our race wiped them out. Go after them and bring back their Zombie Skins. If you bring me five of them, I will give you a reward. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/30138-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/30138-05.html new file mode 100644 index 0000000000..9b7e47f9a5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/30138-05.html @@ -0,0 +1,3 @@ +Trader Minaless:
+I must have at least five zombie skins to make zombie dust. If you go to the Marshlands southwest of the village, there are many marsh zombies that aimlessly wander around. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/30138-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/30138-06.html new file mode 100644 index 0000000000..61abb92f31 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/30138-06.html @@ -0,0 +1,3 @@ +Trader Minaless:
+Thank you! This is enough to make fertilizer for a month. I will compensate you as I promised! I will also give you a reagent made from the juice of nightshade I harvested just recently. My skills are yet poor, so the effect is weak, but I think you will still find it quite useful. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/Q00319_ScentOfDeath.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/Q00319_ScentOfDeath.java new file mode 100644 index 0000000000..c576b267d3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00319_ScentOfDeath/Q00319_ScentOfDeath.java @@ -0,0 +1,144 @@ +/* + * 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.Q00319_ScentOfDeath; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.util.Util; + +/** + * Scent of Death (319) + * @author Zoey76 + */ +public class Q00319_ScentOfDeath extends Quest +{ + // NPC + private static final int MINALESS = 30138; + // Monsters + private static final int MARSH_ZOMBIE = 20015; + private static final int MARSH_ZOMBIE_LORD = 20020; + // Item + private static final int ZOMBIES_SKIN = 1045; + private static final ItemHolder LESSER_HEALING_POTION = new ItemHolder(1060, 1); + // Misc + private static final int MIN_LEVEL = 11; + private static final int MIN_CHANCE = 7; + private static final int REQUIRED_ITEM_COUNT = 5; + + public Q00319_ScentOfDeath() + { + super(319); + addStartNpc(MINALESS); + addTalkId(MINALESS); + addKillId(MARSH_ZOMBIE, MARSH_ZOMBIE_LORD); + registerQuestItems(ZOMBIES_SKIN); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + + String htmltext = null; + if (player.getLevel() >= MIN_LEVEL) + { + switch (event) + { + case "30138-04.htm": + { + st.startQuest(); + htmltext = event; + break; + } + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && Util.checkIfInRange(1500, npc, killer, false) && (getQuestItemsCount(killer, ZOMBIES_SKIN) < REQUIRED_ITEM_COUNT)) + { + if (getRandom(10) > MIN_CHANCE) + { + giveItems(killer, ZOMBIES_SKIN, 1); + if (getQuestItemsCount(killer, ZOMBIES_SKIN) < REQUIRED_ITEM_COUNT) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + else + { + st.setCond(2, true); + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + if (st == null) + { + return getNoQuestMsg(player); + } + + String htmltext = getNoQuestMsg(player); + switch (st.getState()) + { + case State.CREATED: + { + htmltext = player.getLevel() >= MIN_LEVEL ? "30138-03.htm" : "30138-02.htm"; + break; + } + case State.STARTED: + { + switch (st.getCond()) + { + case 1: + { + htmltext = "30138-05.html"; + break; + } + case 2: + { + giveAdena(player, 3350, false); + giveItems(player, LESSER_HEALING_POTION); + takeItems(player, ZOMBIES_SKIN, -1); + st.exitQuest(true, true); + htmltext = "30138-06.html"; + break; + } + } + break; + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-00.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-00.htm new file mode 100644 index 0000000000..3e7afbe69b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-00.htm @@ -0,0 +1,4 @@ +Tetrarch Kaitar:
+Shilen is the holy mother who created us Dark Elves from water. However, to foreign races like yourself, Shilen is only a fearful being that brings death. There is not a chance that an outsider who does not understand the truth hidden within the darkness of the abyss will assist me properly in what I do.
+(Quest for Dark Elven characters.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-02.htm new file mode 100644 index 0000000000..84151dd5db --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-02.htm @@ -0,0 +1,5 @@ +Tetrarch Kaitar:
+For the past 300 years, I have lived to fulfill the will of Gran Kain and Shilen. As a reward for my devotion, goddess Shilen gave me the ability to see into the future.
+Once a month, I perform spells to foresee the dangers or disasters that will affect my race and forecast the direction in which the Temple of Darkness must proceed. However, the spells are not that simple. The preparation process is complicated and I need many different materials. Sooner or later, I will tell you to collect the materials I need for the spells, so be prepared.
+(Quest for Dark Elven characters level 10 or above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-03.htm new file mode 100644 index 0000000000..721b26e027 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-03.htm @@ -0,0 +1,6 @@ +Tetrarch Kaitar:
+I am a member of the Tetrarch council, but at the same time I am an Abyssal Celebrant. For the past 300 years, I have lived to fulfill the will of Gran Kain and Shilen. The goddess Shilen controls death and fate and sometimes lets us steal a glance at the future through death. The goddess taught me how to read the future by throwing bones of the dead and examining the shape they make when they fall on the ground.
+Once a month, I perform spells to foresee the dangers or disasters that will affect my race, and forecast the direction in which the Temple of Darkness must proceed. In days like these, when enemies that threaten our race are all around, it is my bounden duty to see whether there are any disasters or dangers in the future for my race.
+Every time I make my predictions, I need new bone pieces. The older the bones are, the stronger the power of death that lies within them, so I can see the future more clearly. I would ask you to collect the bone pieces needed for my spell. Well, are you interested?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-04.htm new file mode 100644 index 0000000000..968b410c97 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-04.htm @@ -0,0 +1,4 @@ +Tetrarch Kaitar:
+If you follow the road to the southwest section of the village, you will come to the abandoned School of Dark Arts. It was built a long time ago, for the greatest sorcerers of our race to study black magic. There, we developed a way to undo the curse on our race which made sunlight scorch our skin, and we also began studying spells to unseal our Hierarch. However, when we were at war with the Elves of Light, we abandoned the school for strategic reasons.
+We destroyed all the research materials so our magical results would not fall into the hands of our enemy. However, the few brothers who could not escape and were surrounded by the enemies put an end to their own lives and rose as the undead to fight the enemy until the end. The brothers who were sacrificed then still wander along the corridors of the Institute as skeleton spirits. I would like you to bring me their bone pieces. The bones of those who died in a war that was rampant with slaughter and death have especially strong black magic powers. I do not need many. Just find me ten. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-05.html new file mode 100644 index 0000000000..13187cbe99 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-05.html @@ -0,0 +1,3 @@ +Tetrarch Kaitar:
+You agreed to get me ten bone pieces of the skeleton hunters from the School of Dark Arts, did you not? You know the way to the School of Dark Arts, do you not? Follow the coastline and go to the southwest and you will be able to find it. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-06.html new file mode 100644 index 0000000000..c84b37b251 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/30359-06.html @@ -0,0 +1,4 @@ +Tetrarch Kaitar:
+You have collected all 10 bone pieces. Well done! Within these bone pieces that you have collected are the final breaths of the brothers that were sacrificed at the hands of the enemy 100 years ago. Can you feel it? The beautiful smell of death?
+Here is the compensation that I promised. Now, may the peace of the darkness and the shelter of the abyss be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/Q00320_BonesTellTheFuture.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/Q00320_BonesTellTheFuture.java new file mode 100644 index 0000000000..241f17f265 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00320_BonesTellTheFuture/Q00320_BonesTellTheFuture.java @@ -0,0 +1,113 @@ +/* + * 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.Q00320_BonesTellTheFuture; + +import com.l2jmobius.gameserver.enums.Race; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Bones Tell The Future (320) + * @author ivantotov + */ +public final class Q00320_BonesTellTheFuture extends Quest +{ + // NPC + private static final int TETRACH_KAITAR = 30359; + // Item + private static final int BONE_FRAGMENT = 809; + // Misc + private static final int MIN_LEVEL = 10; + private static final int REQUIRED_BONE_COUNT = 10; + private static final double DROP_CHANCE = 0.18; + // Monsters + private static final int[] MONSTERS = + { + 20517, // Skeleton Hunter + 20518, // Skeleton Hunter Archer + }; + + public Q00320_BonesTellTheFuture() + { + super(320); + addStartNpc(TETRACH_KAITAR); + addTalkId(TETRACH_KAITAR); + addKillId(MONSTERS); + registerQuestItems(BONE_FRAGMENT); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && event.equals("30359-04.htm")) + { + st.startQuest(); + return event; + } + return null; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getRandomPartyMemberState(killer, 1, 3, npc); + if ((qs != null) && giveItemRandomly(killer, npc, BONE_FRAGMENT, 1, REQUIRED_BONE_COUNT, DROP_CHANCE, true)) + { + qs.setCond(2); + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getRace() == Race.DARK_ELF) ? (player.getLevel() >= MIN_LEVEL) ? "30359-03.htm" : "30359-02.htm" : "30359-00.htm"; + break; + } + case State.STARTED: + { + if (getQuestItemsCount(player, BONE_FRAGMENT) >= REQUIRED_BONE_COUNT) + { + htmltext = "30359-06.html"; + giveAdena(player, 8470, true); + st.exitQuest(true, true); + } + else + { + htmltext = "30359-05.html"; + } + break; + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/30351-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/30351-02.html new file mode 100644 index 0000000000..faaef2fa6d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/30351-02.html @@ -0,0 +1,6 @@ +Astaron:
+Have you ever tried Dreviant Wine? It's the sweetest, but most dangerous wine that those of my race enjoy drinking. The wine is made from the distilled poison of spiders, you see. Only a few people in the entire continent, including myself, know how to make this wine. I had the opportunity to learn this skill before Hierarch Mitraell was entrapped by that seal. Rumor has it that the Drevanul whispered into the Hierarch's ear how to make this precious wine.
+Perhaps it is because the secret has been passed down from the Drevanul, but when our brothers who practice the dark arts drink this wine, their understanding of magic is heightened momentarily. Since I am not well versed in magic, I do not know if this is true or not.
+In a few weeks Mr. Vollodos will be importing an order of grapes cultivated from the land of Gludio, and I plan to purchase them and try making a few bottles of Dreviant Wine for myself. The most difficult ingredient to find is the spider's poison. I may have to ask your help for that...
+(Quest for characters level 18 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/30351-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/30351-03.htm new file mode 100644 index 0000000000..e1595d1eb4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/30351-03.htm @@ -0,0 +1,6 @@ +Astaron:
+Have you ever tried Dreviant Wine? It's the sweetest, but most dangerous wine that those of my race enjoy drinking. The wine is made from the distilled poison of spiders, you see. Only a few people in the entire continent, including myself, know how to make this wine. I had the opportunity to learn this skill before Hierarch Mitraell was entrapped by that seal. Rumor has it that the Drevanul whispered into the Hierarch's ear how to make this precious wine.
+Perhaps it is because the secret has been passed down from the Drevanuls, but when our brothers who practice the dark arts drink this wine, their understanding of magic is heightened momentarily. Since I am not well versed in magic, I do not know if this is true or not.
+A few days ago Trader Vollodos received a shipment of grapes cultivated in the Human land of Gludio, and I am thinking of purchasing them to make a few bottles of Dreviant Wine. The most difficult ingredient to find is the spider's poison, and I would like you to take care of that for me. Can you help me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/30351-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/30351-04.htm new file mode 100644 index 0000000000..c5965582ba --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/30351-04.htm @@ -0,0 +1,3 @@ +Astaron:
+While travelling southwest from the village, you will encounter the Altar of Passage of the Dark Elves. There are many poison spiders living in the nearby woods. Hunt the spiders and bring me their Poison Sacs. If you bring me ten Poison Sacs, I will reward you generously. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/30351-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/30351-05.html new file mode 100644 index 0000000000..d6a531db80 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/30351-05.html @@ -0,0 +1,3 @@ +Astaron:
+You agreed to collect ten Poison Sacs for me, right? Have you found them all yet? Well, there's no need to rush. They say there are many poison spiders near the Altar of Passage of the Dark Elves. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/30351-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/30351-06.html new file mode 100644 index 0000000000..68a2ba2164 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/30351-06.html @@ -0,0 +1,3 @@ +Astaron:
+So you have brought me all ten Poison Sacs. Thank you. This should be enough to make three or four bottles of the finest Dreviant Wine. When the wine ages in a few years, I will let you sample it, so don't forget and come see me again. Now, here is the compensation I promised you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/Q00324_SweetestVenom.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/Q00324_SweetestVenom.java new file mode 100644 index 0000000000..5ca87bfda6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00324_SweetestVenom/Q00324_SweetestVenom.java @@ -0,0 +1,135 @@ +/* + * 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.Q00324_SweetestVenom; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Sweetest Venom (324) + * @author xban1x + */ +public class Q00324_SweetestVenom extends Quest +{ + // NPCs + private static final int ASTARON = 30351; + // Monsters + private static final Map MONSTERS = new HashMap<>(); + static + { + MONSTERS.put(20034, 26); + MONSTERS.put(20038, 29); + MONSTERS.put(20043, 30); + } + // Items + private static final int VENOM_SAC = 1077; + // Misc + private static final int MIN_LVL = 18; + private static final int REQUIRED_COUNT = 10; + private static final int ADENA_COUNT = 5810; + + public Q00324_SweetestVenom() + { + super(324); + addStartNpc(ASTARON); + addTalkId(ASTARON); + addKillId(MONSTERS.keySet()); + registerQuestItems(VENOM_SAC); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st != null) + { + if (event.equals("30351-04.htm")) + { + st.startQuest(); + htmltext = event; + } + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = player.getLevel() < MIN_LVL ? "30351-02.html" : "30351-03.htm"; + break; + } + case State.STARTED: + { + if (st.isCond(2)) + { + giveAdena(player, ADENA_COUNT, true); + st.exitQuest(true, true); + htmltext = "30351-06.html"; + } + else + { + htmltext = "30351-05.html"; + } + break; + } + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance player, boolean isPet) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && st.isCond(1)) + { + long sacs = getQuestItemsCount(player, VENOM_SAC); + if (sacs < REQUIRED_COUNT) + { + if (getRandom(100) < MONSTERS.get(npc.getId())) + { + giveItems(player, VENOM_SAC, 1); + if ((++sacs) < REQUIRED_COUNT) + { + playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + else + { + st.setCond(2, true); + } + } + } + } + return super.onKill(npc, player, isPet); + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30336-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30336-01.htm new file mode 100644 index 0000000000..4531dcbdfd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30336-01.htm @@ -0,0 +1,4 @@ +Guard Curtis:
+If you are thinking of going to the ruins, I can give you an errand that you will find rewarding. I can't tell you about it right now, but if you stop by later on I'll tell you in private.
+(Quest for characters level 15 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30336-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30336-02.htm new file mode 100644 index 0000000000..d6a9046dd9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30336-02.htm @@ -0,0 +1,5 @@ +Guard Curtis:
+If you are thinking of going to the ruins, I can give you an errand that you will find rewarding. Just recently, I spoke with Samed, who lives near the edge of the village... He asked me to refer a few skilled friends to him, when guards or mercenary soldier troops were dispatched near the ruins.
+I myself have helped him out a few times. The job is a little unpleasant, but... the pay is good. What do you say, do you want to give it a try?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30336-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30336-03.htm new file mode 100644 index 0000000000..51aeaa4058 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30336-03.htm @@ -0,0 +1,4 @@ +Guard Curtis:
+Go to Samed to get all the details. If you meet him, tell him that Curtis sent you. Then he'll know I sent you and will give you the job.
+I wouldn't tell anyone you are working for Samed. So I hope you won't tell anyone that you received the job from me. Do you understand what I'm saying? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30336-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30336-04.html new file mode 100644 index 0000000000..28b8c7182c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30336-04.html @@ -0,0 +1,4 @@ +Guard Curtis:
+You haven't met Samed yet? Look now, I personally guarantee that this is a job that pays very well! Someone with your skills could earn big money. Of course, you'll have to work so that no one notices you...
+So hurry up and find Samed. If you meet him, tell him that Curtis sent you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30336-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30336-05.html new file mode 100644 index 0000000000..81873536f6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30336-05.html @@ -0,0 +1,3 @@ +Guard Curtis:
+I see you've talked with Samed. It is a bit unpleasant, but... selling the bones and organs of those who are already dead should not cause any sort of real problem. And it doesn't hurt anyone, right? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30342-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30342-01.html new file mode 100644 index 0000000000..8a0380a8cf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30342-01.html @@ -0,0 +1,5 @@ +Varsak:
+Our family has been doing this work for generations. However, there are hardly any people who look for undertakers these days. It is because the priests of Einhasad encourage cremation. However, sometimes, there are a few who come to follow the old customs.
+Have you come to me for a funeral? Is there anything I can do for you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30342-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30342-02.html new file mode 100644 index 0000000000..a2bb68cadd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30342-02.html @@ -0,0 +1,4 @@ +Varsak:
+I'm sorry, but that is impossible. To recompose a skeleton to human form, you must have all five parts: the skull, rib, spine, arm bone and thigh bone.
+By the way, you don't work for Samed, do you? It would be better to stay away from him. Bad rumors always follow him -- that he is a student of the evil Wizard Hardin or a servant of the devil Beleth. That is why people avoid him. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30342-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30342-03.html new file mode 100644 index 0000000000..3eaaa00b7e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30342-03.html @@ -0,0 +1,4 @@ +Varsak:
+I am not sure the bone pieces are from the same person, but... At any rate, I'll try to recompose the skeleton. This is the least we can do to put the angry spirit of a person who died at war to rest. Please give him or her a proper funeral.
+But... You don't work for Samed, do you? It would be better to keep your distance from him. Bad rumors always follow him -- they say he is a student of the black magician Hardin or a servant of the devil Beleth. People avoid him for a reason. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30342-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30342-04.html new file mode 100644 index 0000000000..7b54130598 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30342-04.html @@ -0,0 +1,3 @@ +Varsak:
+Ah! Oh dear... Forgive me! The bone was too old... It got smashed while I was trying to recompose the skeleton. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-01.html new file mode 100644 index 0000000000..8b97143019 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-01.html @@ -0,0 +1,4 @@ +Samed:
+What could a humble person like me have to ask you? It would be nice if you just left me alone so I could live quietly...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-02.htm new file mode 100644 index 0000000000..e4b6bae0ac --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-02.htm @@ -0,0 +1,6 @@ +Samed:
+Hmm? So you came to me for a job. Well, are you thinking of going to the ruins? If you find me a few things from there, I will generously reward you afterwards. Though I am not sure whether you will come back alive from that place that crawls with zombies and skeletons.
+You must find me corpse pieces. Of course there are many corpses in the graveyard, but if you are caught disturbing the graves and pulling out coffins, you will be considered a witch and be burnt at the stake. So there is no choice but to take the living corpses from the undead.
+Why do I need corpse pieces? Don't try to know the reason. Haven't you heard that curiosity killed the cat? All you have to do is find what I need and take the money.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-03.html new file mode 100644 index 0000000000..7d05bc59cd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-03.html @@ -0,0 +1,5 @@ +Samed:
+Collect corpse pieces from the Ruins of Despair or the Ruins of Agony. If you don't know how to find the ruins, ask Guard Curtis or Guard Babenco. From the zombies, bring their head, heart, and liver. From the skeletons, bring the skull, spine, rib, arm bone, and thigh bone.
+I also need bone pieces, but actually I need a Complete Skeleton of Human form more. Unfortunately, when you fight with the undead, their body shatters so it will be impossible to find a Complete Skeleton. But the person that took this job before you found one somehow.
+Ah, and don't bring back anything from the spartoi. Spartoi are his minions... It is better not to make him angry. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-04.html new file mode 100644 index 0000000000..d8b9bfd8f9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-04.html @@ -0,0 +1,6 @@ +Samed:
+You have returned already? I see you have not found the items I asked you for. I am very disappointed...
+I will explain to you again, so listen carefully. Go to the Ruins of Despair or the Ruins of Agony and find me the corpse pieces of the undead and I will give you an ample reward. If you don't know how to find the ruins, ask Guard Curtis or Guard Babenco.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-05.html new file mode 100644 index 0000000000..0eac7586ad --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-05.html @@ -0,0 +1,5 @@ +Samed:
+Did you come unseen by the guards? Do you have the items I asked you for? Give them to me before the smell of decay fills the village!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-06.html new file mode 100644 index 0000000000..f3d9d953cd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-06.html @@ -0,0 +1,4 @@ +Samed:
+You seem exhausted from dealing with the dead souls. Well, it may have been too difficult for someone like you, who has lived only in the bright world. But I keep my promises, don't I? I will compensate you for the number of items you have brought. I have put the money in this coin purse, so make sure you tuck it in your pocket.
+You must be swearing to yourself that you will never do such an unpleasant job again, right? I can tell just from your eyes. However, you may have to come to me in the end. You will realize in no time that there is no other job that pays as much. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-07.html new file mode 100644 index 0000000000..f81fcbd6f0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-07.html @@ -0,0 +1,4 @@ +Samed:
+Then I will pay you according to the number of corpse pieces you have brought. Keep up the good work.
+Ah! And let me give you one word of advice. You do not need to be frightened by the undead of the ruins. They move by the power of black magic, but they are really just decayed pieces of meat. If you think of it that way, there is no reason to be afraid, right? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-08.html new file mode 100644 index 0000000000..4df403df73 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-08.html @@ -0,0 +1,6 @@ +Samed:
+Ohh! You brought back a Complete Skeleton! You haven't dug up some cemetery, have you? Well, hand it over to me before the villagers see!
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-09.html new file mode 100644 index 0000000000..7c17843fe1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/30434-09.html @@ -0,0 +1,6 @@ +Samed:
+As I promised, I will compensate you according to the number of remains. I have filled this pouch full of coins so keep it safe.
+Looking at your pocket, I see you have many small corpse pieces in addition to Complete Skeletons. Give them to me before the smell of decay fills the village!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/Q00325_GrimCollector.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/Q00325_GrimCollector.java new file mode 100644 index 0000000000..0b2881007a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00325_GrimCollector/Q00325_GrimCollector.java @@ -0,0 +1,283 @@ +/* + * 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.Q00325_GrimCollector; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.QuestItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.util.Util; + +/** + * Grim Collector (325) + * @author ivantotov + */ +public final class Q00325_GrimCollector extends Quest +{ + // NPCs + private static final int GUARD_CURTIZ = 30336; + private static final int VARSAK = 30342; + private static final int SAMED = 30434; + // Items + private static final int ANATOMY_DIAGRAM = 1349; + private static final int ZOMBIE_HEAD = 1350; + private static final int ZOMBIE_HEART = 1351; + private static final int ZOMBIE_LIVER = 1352; + private static final int SKULL = 1353; + private static final int RIB_BONE = 1354; + private static final int SPINE = 1355; + private static final int ARM_BONE = 1356; + private static final int THIGH_BONE = 1357; + private static final int COMPLETE_SKELETON = 1358; + // Misc + private static final int MIN_LEVEL = 15; + // Monsters + private static final Map> MONSTER_DROPS = new HashMap<>(); + static + { + MONSTER_DROPS.put(20026, Arrays.asList(new QuestItemHolder(ZOMBIE_HEAD, 30), new QuestItemHolder(ZOMBIE_HEART, 50), new QuestItemHolder(ZOMBIE_LIVER, 75))); + MONSTER_DROPS.put(20029, Arrays.asList(new QuestItemHolder(ZOMBIE_HEAD, 30), new QuestItemHolder(ZOMBIE_HEART, 52), new QuestItemHolder(ZOMBIE_LIVER, 75))); + MONSTER_DROPS.put(20035, Arrays.asList(new QuestItemHolder(SKULL, 5), new QuestItemHolder(RIB_BONE, 15), new QuestItemHolder(SPINE, 29), new QuestItemHolder(THIGH_BONE, 79))); + MONSTER_DROPS.put(20042, Arrays.asList(new QuestItemHolder(SKULL, 6), new QuestItemHolder(RIB_BONE, 19), new QuestItemHolder(ARM_BONE, 69), new QuestItemHolder(THIGH_BONE, 86))); + MONSTER_DROPS.put(20045, Arrays.asList(new QuestItemHolder(SKULL, 9), new QuestItemHolder(SPINE, 59), new QuestItemHolder(ARM_BONE, 77), new QuestItemHolder(THIGH_BONE, 97))); + MONSTER_DROPS.put(20051, Arrays.asList(new QuestItemHolder(SKULL, 9), new QuestItemHolder(RIB_BONE, 59), new QuestItemHolder(SPINE, 79), new QuestItemHolder(ARM_BONE, 100))); + MONSTER_DROPS.put(20457, Arrays.asList(new QuestItemHolder(ZOMBIE_HEAD, 40), new QuestItemHolder(ZOMBIE_HEART, 60), new QuestItemHolder(ZOMBIE_LIVER, 80))); + MONSTER_DROPS.put(20458, Arrays.asList(new QuestItemHolder(ZOMBIE_HEAD, 40), new QuestItemHolder(ZOMBIE_HEART, 70), new QuestItemHolder(ZOMBIE_LIVER, 100))); + MONSTER_DROPS.put(20514, Arrays.asList(new QuestItemHolder(SKULL, 6), new QuestItemHolder(RIB_BONE, 21), new QuestItemHolder(SPINE, 30), new QuestItemHolder(ARM_BONE, 31), new QuestItemHolder(THIGH_BONE, 64))); + MONSTER_DROPS.put(20515, Arrays.asList(new QuestItemHolder(SKULL, 5), new QuestItemHolder(RIB_BONE, 20), new QuestItemHolder(SPINE, 31), new QuestItemHolder(ARM_BONE, 33), new QuestItemHolder(THIGH_BONE, 69))); + } + + public Q00325_GrimCollector() + { + super(325); + addStartNpc(GUARD_CURTIZ); + addTalkId(GUARD_CURTIZ, VARSAK, SAMED); + addKillId(MONSTER_DROPS.keySet()); + registerQuestItems(ANATOMY_DIAGRAM, ZOMBIE_HEAD, ZOMBIE_HEART, ZOMBIE_LIVER, SKULL, RIB_BONE, SPINE, ARM_BONE, THIGH_BONE, COMPLETE_SKELETON); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + String htmltext = null; + switch (event) + { + case "30336-03.htm": + { + if (st.isCreated()) + { + st.startQuest(); + htmltext = event; + } + break; + } + case "assembleSkeleton": + { + if (!hasQuestItems(player, SPINE, ARM_BONE, SKULL, RIB_BONE, THIGH_BONE)) + { + htmltext = "30342-02.html"; + } + else + { + takeItems(player, 1, SPINE, ARM_BONE, SKULL, RIB_BONE, THIGH_BONE); + + if (getRandom(5) < 4) + { + giveItems(player, COMPLETE_SKELETON, 1); + htmltext = "30342-03.html"; + } + else + { + htmltext = "30342-04.html"; + } + } + break; + } + case "30434-02.htm": + { + htmltext = event; + break; + } + case "30434-03.html": + { + giveItems(player, ANATOMY_DIAGRAM, 1); + htmltext = event; + break; + } + case "30434-06.html": + case "30434-07.html": + { + if (hasQuestItems(player, getRegisteredItemIds())) + { + final long head = getQuestItemsCount(player, ZOMBIE_HEAD); + final long heart = getQuestItemsCount(player, ZOMBIE_HEART); + final long liver = getQuestItemsCount(player, ZOMBIE_LIVER); + final long skull = getQuestItemsCount(player, SKULL); + final long rib = getQuestItemsCount(player, RIB_BONE); + final long spine = getQuestItemsCount(player, SPINE); + final long arm = getQuestItemsCount(player, ARM_BONE); + final long thigh = getQuestItemsCount(player, THIGH_BONE); + final long complete = getQuestItemsCount(player, COMPLETE_SKELETON); + final long totalCount = (head + heart + liver + skull + rib + spine + arm + thigh + complete); + if (totalCount > 0) + { + long sum = ((head * 30) + (heart * 20) + (liver * 20) + (skull * 100) + (rib * 40) + (spine * 14) + (arm * 14) + (thigh * 14)); + + if (totalCount >= 10) + { + sum += 1629; + } + + if (complete > 0) + { + sum += 543 + (complete * 341); + } + + giveAdena(player, sum, true); + } + + takeItems(player, -1, getRegisteredItemIds()); + } + + if (event.equals("30434-06.html")) + { + st.exitQuest(true, true); + } + + htmltext = event; + break; + } + case "30434-09.html": + { + final long complete = getQuestItemsCount(player, COMPLETE_SKELETON); + if (complete > 0) + { + giveAdena(player, ((complete * 341) + 543), true); + takeItems(player, COMPLETE_SKELETON, -1); + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + + if ((qs == null) || !qs.isStarted()) + { + return super.onKill(npc, killer, isSummon); + } + + if (!Util.checkIfInRange(1500, killer, npc, true) || !hasQuestItems(killer, ANATOMY_DIAGRAM)) + { + return super.onKill(npc, killer, isSummon); + } + + final int rnd = getRandom(100); + for (QuestItemHolder drop : MONSTER_DROPS.get(npc.getId())) + { + if (rnd < drop.getChance()) + { + giveItemRandomly(killer, npc, drop.getId(), 1, 0, 1.0, true); + break; + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st == null) + { + return htmltext; + } + + switch (npc.getId()) + { + case GUARD_CURTIZ: + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getLevel() >= MIN_LEVEL) ? "30336-02.htm" : "30336-01.htm"; + break; + } + case State.STARTED: + { + htmltext = hasQuestItems(player, ANATOMY_DIAGRAM) ? "30336-05.html" : "30336-04.html"; + break; + } + } + break; + } + case VARSAK: + { + if (st.isStarted() && hasQuestItems(player, ANATOMY_DIAGRAM)) + { + htmltext = "30342-01.html"; + } + break; + } + case SAMED: + { + if (st.isStarted()) + { + if (!hasQuestItems(player, ANATOMY_DIAGRAM)) + { + htmltext = "30434-01.html"; + } + else + { + if (!hasAtLeastOneQuestItem(player, getRegisteredItemIds())) + { + htmltext = "30434-04.html"; + } + else if (!hasQuestItems(player, COMPLETE_SKELETON)) + { + htmltext = "30434-05.html"; + } + else + { + htmltext = "30434-08.html"; + } + } + } + break; + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-01.htm new file mode 100644 index 0000000000..837d0861bc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-01.htm @@ -0,0 +1,5 @@ +Leopold:
+Currently, the Black Lion mercenaries are working for the lord of Gludio. They are in charge of getting rid of the remnants of Ol Mahum, who are still staying and causing problems in this land. They have been fighting against the remnants for several months.
+However, Ol Mahums are not savages like werewolves, but highly trained soldiers. They are very difficult to deal with, since they are well organized like regular armies.
A few days ago, our Black Lion troop was shamefully defeated in close battle with Ol Mahums on the outskirts of Gludin. Many brothers lost their lives in combat. We are short of troops until the second platoon returns from the Wastelands in the south. I am very worried ... We may have to recruit some good fighters who will fight with us ...
+(Quest for characters level 21 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-02.htm new file mode 100644 index 0000000000..a8762843ff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-02.htm @@ -0,0 +1,7 @@ +Leopold:
+Currently, the Black Lion mercenaries are working for the lord of Gludio. They are in charge of getting rid of the remnants of Ol Mahum, who are still staying and causing problems in this land. They have been fighting against the remnants for several months.
+However, Ol Mahums are not savages like werewolves, but highly trained soldiers. They are very difficult to deal with, since they are well organized like regular armies.
+A few days ago, our Black Lion troop was shamefully defeated in a close battle with Ol Mahums on the outskirts of Gludin. Many brothers lost their lives in combat. We are short of troops until our brothers of the second platoon, who have been dispatched to the Wastelands in the south, return. So we have decided to recruit skilled fighters to temporarily fill our troop.
+From the scars on your armor and the way you hold your weapon, you seem like you have had a lot of experience on the field. What do you think? Won't you fight for the Black Lions? It is an opportunity to play a role in punishing the cruel Ol Mahum who have ruined this land.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-03.htm new file mode 100644 index 0000000000..48e2d151c5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-03.htm @@ -0,0 +1,6 @@ +Leopold:
+The Black Lion undoubtedly rewards its members according to skill and performance. You will be paid according to the number of enemies you kill. One condition, though, you must take the badge of ranking as a token of proof.
+Ol Mahum use badges in the shape of a cross, taking after the foreign troops of Gracia. Patrols and guards have red, suppliers, officers, and shooters have blue, and the generals and captains have Black Cross Badges. Naturally, you will receive a higher award depending on the rank of the Ol Mahum you killed.
+If you display great skills on the battlefield, you can become an official member of the Black Lions. For this, you must gather 100 badges of the Ol Mahum to prove your skills.
+Currently, Ol Mahum are camping in the abandoned camp. If you don't know how to get there, ask Guard Linus. Wonderful! Now get ready to depart, my comrade. Forward to victory! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-04.html new file mode 100644 index 0000000000..408e1f9eaa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-04.html @@ -0,0 +1,7 @@ +Leopold:
+Comrade, how is the situation on the battlefield? As you have no badge of the Ol Mahum in your hand, I see your performance has not been good. If you think fighting against the Ol Mahum is too difficult for you, you can always quit. It is better for both of us if you acknowledge your limits instead of aiming too high.
+If you are thinking of continuing to fight Ol Mahums, I will give you some advice. As I already told you, the Ol Mahum may seem like savage beasts, but they have an organization that has been trained as well as any country's official army. Ol Mahums will help companions in danger, so you may have to face several Ol Mahums at once.
+Unless you form a troop like them, you have no choice but to approach them carefully and use guerilla tactics to deal with them one at a time. Knights may say it is a dishonorable way to fight, but it's quite an effective method.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-05.html new file mode 100644 index 0000000000..b50836df5e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-05.html @@ -0,0 +1,6 @@ +Leopold:
+Welcome, comrade of the sword! Seeing you safely return from the scene of battle gives me great joy. The badges of the enemy in your hand show that the goddess of victory has smiled upon you.
+I received a letter that the brothers of the second platoon, who were dispatched to the south part of Gludio, will return later than planned. I will need more of your services for the time being.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-06.html new file mode 100644 index 0000000000..b271e19cfa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-06.html @@ -0,0 +1,7 @@ +Leopold:
+Welcome, my comrade of the sword! I congratulate you on your safe return. How was your performance on the battlefield?
+How truly amazing! You have really brought me 100 badges! Magnificent! As I promised, I acknowledge you a member of the Black Lions. Because of our current situation, we cannot give you a proper joining ceremony, but instead, I give you this mark. The mark shows that you are a member of the proud Black Lions.
+I received a letter that the brothers of the second platoon, who were dispatched to the south part of Gludio, will return later than planned. You must go back to the battlefield and fight, comrade of the sword!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-07.html new file mode 100644 index 0000000000..5a2717d5ce --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-07.html @@ -0,0 +1,3 @@ +Leopold:
+I am sorry, but if this is truly your will, I cannot stop you. However, the ties made as brothers of the sword are not easily broken ... We will meet again someday. May the goddess of victory be with you in all the battlefields that you walk upon!! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-08.html new file mode 100644 index 0000000000..670ea1ccad --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-08.html @@ -0,0 +1,3 @@ +Leopold:
+Please continue your services, comrade of the sword. May the goddess of victory guide your sword and staff! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-09.html new file mode 100644 index 0000000000..e153db2548 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/30435-09.html @@ -0,0 +1,7 @@ +Leopold:
+Welcome, my comrade of the sword! I congratulate you on your safe return. How was your performance on the battlefield?
+How truly amazing! You brought back another hundred badges! Magnificent! Ha ha! You have already proven your skills and have been acknowledged as a member of the Black Lions, and yet you still amaze me!
+I received a letter that the brothers of the second platoon, who were dispatched to the south part of Gludio, will return later than planned. Our brothers here must hold on until they return. Go on back to the battlefield and fight, brother of the sword!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/Q00326_VanquishRemnants.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/Q00326_VanquishRemnants.java new file mode 100644 index 0000000000..b325fafda5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00326_VanquishRemnants/Q00326_VanquishRemnants.java @@ -0,0 +1,153 @@ +/* + * 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.Q00326_VanquishRemnants; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Vanquish Remnants (326) + * @author xban1x + */ +public final class Q00326_VanquishRemnants extends Quest +{ + // NPC + private static final int LEOPOLD = 30435; + // Items + private static final int RED_CROSS_BADGE = 1359; + private static final int BLUE_CROSS_BADGE = 1360; + private static final int BLACK_CROSS_BADGE = 1361; + private static final int BLACK_LION_MARK = 1369; + // Monsters + private static final Map MONSTERS = new HashMap<>(); + //@formatter:off + static + { + MONSTERS.put(20053, new int[] {61, RED_CROSS_BADGE}); // Ol Mahum Patrol + MONSTERS.put(20058, new int[] {61, RED_CROSS_BADGE}); // Ol Mahum Guard + MONSTERS.put(20061, new int[] {57, BLUE_CROSS_BADGE}); // Ol Mahum Remnants + MONSTERS.put(20063, new int[] {63, BLUE_CROSS_BADGE}); // Ol Mahum Shooter + MONSTERS.put(20066, new int[] {59, BLACK_CROSS_BADGE}); // Ol Mahum Captain + MONSTERS.put(20436, new int[] {55, BLUE_CROSS_BADGE}); // Ol Mahum Supplier + MONSTERS.put(20437, new int[] {59, RED_CROSS_BADGE}); // Ol Mahum Recruit + MONSTERS.put(20438, new int[] {60, BLACK_CROSS_BADGE}); // Ol Mahum General + MONSTERS.put(20439, new int[] {62, BLUE_CROSS_BADGE}); // Ol Mahum Officer + } + //@formatter:on + // Misc + private static final int MIN_LVL = 21; + + public Q00326_VanquishRemnants() + { + super(326); + addStartNpc(LEOPOLD); + addTalkId(LEOPOLD); + addKillId(MONSTERS.keySet()); + registerQuestItems(RED_CROSS_BADGE, BLUE_CROSS_BADGE, BLACK_CROSS_BADGE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st != null) + { + switch (event) + { + case "30435-03.htm": + { + st.startQuest(); + htmltext = event; + break; + } + case "30435-07.html": + { + st.exitQuest(true, true); + htmltext = event; + break; + } + case "30435-08.html": + { + htmltext = event; + break; + } + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && st.isStarted() && (getRandom(100) < MONSTERS.get(npc.getId())[0])) + { + giveItems(killer, MONSTERS.get(npc.getId())[1], 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = null; + if (st != null) + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = (player.getLevel() >= MIN_LVL) ? "30435-02.htm" : "30435-01.htm"; + break; + } + case State.STARTED: + { + final long red_badges = getQuestItemsCount(player, RED_CROSS_BADGE); + final long blue_badges = getQuestItemsCount(player, BLUE_CROSS_BADGE); + final long black_badges = getQuestItemsCount(player, BLACK_CROSS_BADGE); + final long sum = red_badges + blue_badges + black_badges; + if (sum > 0) + { + if ((sum >= 100) && !hasQuestItems(player, BLACK_LION_MARK)) + { + giveItems(player, BLACK_LION_MARK, 1); + } + giveAdena(player, ((red_badges * 46) + (blue_badges * 52) + (black_badges * 58) + ((sum >= 10) ? 4320 : 0)), true); + takeItems(player, -1, RED_CROSS_BADGE, BLUE_CROSS_BADGE, BLACK_CROSS_BADGE); + htmltext = (sum >= 100) ? (hasQuestItems(player, BLACK_LION_MARK)) ? "30435-09.html" : "30435-06.html" : "30435-05.html"; + } + else + { + htmltext = "30435-04.html"; + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-01.html new file mode 100644 index 0000000000..c53e9e3235 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-01.html @@ -0,0 +1,10 @@ +Magister Iris:
+So the rumors are true ... That the mercenaries fighting the Orcs on the northwest shores are secretly selling relics of the ancient kingdom ...
+How could they sell such valuable historical artifacts to businessmen ...! Objects that represent the lives of our ancestors ... They'll be degraded into mere decorations and displays ... This should not happen!
+Please ... If any relics of the ancient kingdom should chance to fall into your hands ... Don't sell them at the shop, but bring them to me ... I can't pay you, but ... I will try to share some of my knowledge with you ... And I will make sure that the relics that are recovered will all be used as research material for the researchers of the Ivory Tower.
+ + + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-02.html new file mode 100644 index 0000000000..741d293cbb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-02.html @@ -0,0 +1,4 @@ +Magister Iris:
+Why are you trying to give me something you don't even have? I can't understand you at all.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-03.html new file mode 100644 index 0000000000..8a262a4e91 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-03.html @@ -0,0 +1,5 @@ +Magister Iris:
+This Clay Pot piece ...? By the looks of the repetitive spiral designs, it looks like it was made in the early kingdom style. That such delicate craftsmanship was available thousands of years ago ... It's unbelievable.
+Thank you very much. The relics you have brought me will all be used as research material by the historical research society of the Ivory Tower. Take pride in the fact that you have played a part in revealing our forgotten past.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-04.html new file mode 100644 index 0000000000..f33d283049 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-04.html @@ -0,0 +1,5 @@ +Magister Iris:
+This brass piece? It is part of a crown! However ... it's not the crown of a ruler, but a portion of the crown worn by priests during ceremonies. Look at these delicate carvings ... Beautiful, aren't they? It doesn't look like this item was made thousands of years ago, does it?
+Thank you very much. The relics you have brought me will all be used as research material by the historical research society of the Ivory Tower. Take pride in the fact that you have played a part in revealing our forgotten past.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-05.html new file mode 100644 index 0000000000..761eb6e5a8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-05.html @@ -0,0 +1,5 @@ +Magister Iris:
+This is a piece of a broken mirror. This is probably a portion of one of the bronze mirrors used by noblewomen of the Elmoreden age. Truly this is a very valuable artifact, that holds images of the lives of the ancient ones.
+Thank you very much. The relics you have brought me will all be used as research material by the historical research society of the Ivory Tower. Take pride in the fact that you have played a part in revealing our forgotten past.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-06.html new file mode 100644 index 0000000000..2158cc4986 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-06.html @@ -0,0 +1,5 @@ +Magister Iris:
+... The bead appears to be part of a necklace ... Yes, that is probably it. It is the jade necklace worn by magicians of the royal Elmoreden court. Truly, it is a very valuable cultural artifact that records the lives and traditions of the ancient ones.
+Thank you very much. The relics you have brought me will all be used as research material by the historical research society of the Ivory Tower. Take pride in the fact that you have played a part in revealing our forgotten past.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-07.html new file mode 100644 index 0000000000..80e3d8c41b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30034-07.html @@ -0,0 +1,5 @@ +Magister Iris:
+These artifacts...? Who restored them? Restoring broken artifacts to their original state is a job that requires great delicacy... Whoever worked on these is very talented.
+I will send them all to the Ivory Tower. They will be precious resources for historical study. I will make sure that your name appears in the Ivory Tower scholars' research paper.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-01.html new file mode 100644 index 0000000000..3e6a0282f4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-01.html @@ -0,0 +1,8 @@ +Trader Asha:
+Um ... um ... You're fighting with the orcs on the northern coast, right? They say there are many relics of the ancient empire in that region ...
+Uh, um ... I majored in ancient relics when I studied at the Ivory Tower, you see ... So ... Um ... . If you bring back pieces of relics, I can restore them to their original state ...
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-02.html new file mode 100644 index 0000000000..a0e60e4043 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-02.html @@ -0,0 +1,4 @@ +Trader Asha:
+Uh ... Well ... You must have five clay jar pieces to restore it to its original state ... I am so sorry ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-03.html new file mode 100644 index 0000000000..142d4565e1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-03.html @@ -0,0 +1,6 @@ +Trader Asha:
+... I see you have collected five clay jar pieces ... All, all right ... I think I can restore the jar with this ...
+Look at the pattern engraved on this piece ... It is in the style of the early empire age ... If I match the pieces where the pattern continues ...
+Ah! It is done! ... You can see the lines of the cracks, but ... One way or another ... I have assembled the jar to its original state ... A relic of the empire that is over one thousand years old ... this is a very precious legacy of history ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-04.html new file mode 100644 index 0000000000..96ebc16c72 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-04.html @@ -0,0 +1,4 @@ +Trader Asha:
+Ahh ... Oh dear. You must have five accessory pieces ... Only then ... Can I restore it to its original state ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-05.html new file mode 100644 index 0000000000..15c3d470ce --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-05.html @@ -0,0 +1,5 @@ +Trader Asha:
+That I am assembling such a precious relic with my own hands ... It is so exciting ... However, I have not seen this accessory in the book ... Should this piece go on top? And if the rest are connected to the bottom ...
+See! It is a three-level crown used by the priests of Elmoreden ... Isn't it absolutely beautiful?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-06.html new file mode 100644 index 0000000000..6e5059a520 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-06.html @@ -0,0 +1,5 @@ +Trader Asha:
+Ahh ... I'm sorry! I must have five Bronze Mirror Pieces to restore it to its original shape ...
+Please take a look at this diagram ... "Bronze mirror used by noblewomen in the Elmoreden age" ... According to this diagram, to assemble the mirror, it is impossible to do so with only the pieces you have ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-07.html new file mode 100644 index 0000000000..24153b6223 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-07.html @@ -0,0 +1,5 @@ +Trader Asha:
+Wow! You have brought five pieces of bronze mirror fragments ... With this, I can restore the mirror as it is seen in this illustration ... This piece goes with this piece ... And if I connect it underneath with this ... And so! It is complete!
+Do you know? This mirror was used by the noblewomen of the Elmoreden age ... It contains the life of the ancient people ... It is a very precious relic ...!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-08.html new file mode 100644 index 0000000000..70a173b505 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-08.html @@ -0,0 +1,4 @@ +Trader Asha:
+ ... Uh ... To restore the jade necklace to its original state ... umm ... well ... Please take a look at this diagram ... To assemble the necklace as you can see in this illustration ... You need five beads in all ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-09.html new file mode 100644 index 0000000000..780f075a43 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-09.html @@ -0,0 +1,5 @@ +Trader Asha:
+... You have found five jade beads ...! Yes ... I believe I can assemble it ... As it is shown in this diagram ... That I am restoring such a precious relic with my own hands! I am so excited my hands are trembling ...
+... Like this ... I line up the beads and connect them ... Ahh ...! It is done! See! It is the same as the picture, is it not? This jade necklace ... The explanation reads that it was an ornament worn on the necks of court magicians ... It is truly a precious relic ...!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-10.html new file mode 100644 index 0000000000..e4ebf1636d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30313-10.html @@ -0,0 +1,5 @@ +Trader Asha:
+Ah ...! Oh dear. What am I to do ...?
+By mistake, I have ... smashed the relic pieces ... I am sorry. Terribly sorry ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-01.html new file mode 100644 index 0000000000..8a5614ca56 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-01.html @@ -0,0 +1,6 @@ +Trader Nestle:
+Are you the mercenary Piotur hired? What is going on over at the Orc Barracks? They say that ancient relics have recently been discovered there. Have you found any?
+Old relics wouldn't be of any use to a mercenary like yourself, now would they? If you bring some of them I will give you several useful items.
+What do you say?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-02.html new file mode 100644 index 0000000000..adeb40c3da --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-02.html @@ -0,0 +1,9 @@ +Trader Nestle:
+I have no interest is small pieces or fragments of relics. Trader Asha would be interested in the smaller pieces, she is an expert in restoring relics.
+Do you have any relics I might be interested in?
+ + + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-03.html new file mode 100644 index 0000000000..e1d9005bca --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-03.html @@ -0,0 +1,6 @@ +Trader Nestle:
+Oh, my! Look at the spiral pattern on the surface... the delicate carving of the handle... This is a genuine Imperial urn! It is exquisite! Thank you!
+You shall have your reward!
+Take these! I have packed several items that will be useful to a mercenary!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-04.html new file mode 100644 index 0000000000..84a80d7342 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-04.html @@ -0,0 +1,5 @@ +Trader Nestle:
+Oh, my! It is gorgeous! An actual tiara from the Imperial era! Isn't it beautiful? Thank you for your hard work.
+You shall have your reward!
Here are some things that a mercenary will find useful.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-05.html new file mode 100644 index 0000000000..6c130bce84 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-05.html @@ -0,0 +1,5 @@ +Trader Nestle:
+Oh, my, how stunning! A bronze mirror from the Imperial period! I imagine it was used by a female aristocrat of the Elmoreden kingdom... Good job!
+You shall have your reward. Here are some items that you will find useful.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-06.html new file mode 100644 index 0000000000..87a3fddf47 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-06.html @@ -0,0 +1,6 @@ +Trader Nestle:
+Oh, isn't it lovely! A jade necklace worn by the Mystics of the Imperial court! How did you find such a precious item? However you did it, good job!
+You shall have your reward as promised.
+Here are some items you will find useful.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-07.html new file mode 100644 index 0000000000..571eeb8b8b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-07.html @@ -0,0 +1,4 @@ +Trader Nestle:
+Are you some kind of idiot? You can't sell something you don't have!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-08.html new file mode 100644 index 0000000000..2cf0c2534e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-08.html @@ -0,0 +1,8 @@ +Trader Nestle:
+You should get rid of all that excess baggage! I'll take all the relics you have!
+ + + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-09.html new file mode 100644 index 0000000000..52efafe881 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30314-09.html @@ -0,0 +1,3 @@ +Trader Nestle:
+It's been a pleasure doing business with you. Bring me relics anytime! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-01.htm new file mode 100644 index 0000000000..7ef44c2f46 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-01.htm @@ -0,0 +1,5 @@ +Guard Leikan:
+At one time the land northwest of Gludio was fertile farmland, yielding bountiful harvests of wheat and barley. During the dark days of the invasion of Gracia, when the farmers were in hiding, the land was taken over by the filthy Turek orcs.
+Some day, my people will drive them out and restore the farmland to its previous state...
+(This quest may only be undertaken by a character of level 25 or above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-02.htm new file mode 100644 index 0000000000..a8fffd028b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-02.htm @@ -0,0 +1,7 @@ +Guard Leikan:
+At one time the land northwest of Gludio was fertile farmland, yielding bountiful harvests of wheat and barley. During the dark days of the invasion of Gracia, when the farmers were in hiding, the land was taken over by the filthy Turek orcs.
+Some day, my people will drive them out and restore the farmland to its previous state...
+One of the farmers, Piotur, has taken the initiative to drive the Turek orcs from his land. He is looking for a few good mercenaries.
+This should be easy for you. Do you wish to help the farmers regain their land?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-03.htm new file mode 100644 index 0000000000..4bdce5f3eb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-03.htm @@ -0,0 +1,3 @@ +Guard Leikan:
+Excellent. Take this letter to Farmer Piotur. He is bravely tending his crops while being overrun by filthy orcs. His farm is near the east entrance of the Orc Barracks. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-04.html new file mode 100644 index 0000000000..77bcfb1820 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-04.html @@ -0,0 +1,3 @@ +Guard Leikan:
+You must hurry and take this letter to Piotur. His farm is near the east entrance of the Orc Barracks. I pray that you are able to recover the lands for the farmers of Gludio. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-05.html new file mode 100644 index 0000000000..2121155cf5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-05.html @@ -0,0 +1,5 @@ +Guard Leikan:
+Ah, you again! How was Piotur?
+By the way, in case you're interested, I've heard that some relics from the ancient empire have been discovered near the Orc Barracks. You could make quite a bit of money selling those.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-05a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-05a.html new file mode 100644 index 0000000000..9a1931ce82 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-05a.html @@ -0,0 +1,5 @@ +Guard Leikan:
+Bear in mind that this is a rumor, I've not seen it myself. I was told that mercenaries have been seen returning from the area near the Orc Barracks with relics from the Elmo-Aden period.
+Although they are little more than pottery shards, they fetch a high price. If you are interested you should visit a relics expert.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-05b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-05b.html new file mode 100644 index 0000000000..64cc8db0aa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30382-05b.html @@ -0,0 +1,4 @@ +Guard Leikan:
+I know that Trader Asha is an expert in the restoration of relics. He can be found at his magic store. Magister Iris is researching relics of ancient empires at the temple...
+Also, Trader Nestle is an avid collector of relics. He can be found at the grocery store in the southwest part of the village. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-01.htm new file mode 100644 index 0000000000..d5961f7ca8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-01.htm @@ -0,0 +1,5 @@ +Piotur:
+When we were at war with Gracia, all the farmers of this region sought refuge in the east at Castle Gludio. However, when we returned to this land after the war, the turek orcs were occupying the surrounding area!
+The lord is at the height of pursuing reconstruction, but his attention does not extend to remote farm villages like this one. However, we cannot wait forever for the lord's help, can we? We are thinking of collecting money to hire mercenaries We will recover the blessed land that we inherited from our ancestors!
+(Minimum level necessary to undertake the quest is 25.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-02.htm new file mode 100644 index 0000000000..bd4b087f50 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-02.htm @@ -0,0 +1,6 @@ +Piotur:
+When we were at war with Gracia, all the farmers of this region sought refuge in the east at Castle Gludio. However, when we returned to this land after the war, the turek orcs were occupying the surrounding area!
+The lord is at the height of pursuing reconstruction, but his attention does not extend to remote farm villages like this one. However, we cannot wait forever for the lord's help, can we? My brother and I have decided to collect money and hire mercenaries. We will recover the blessed land that we inherited from our ancestors!
+Now that I come to mention it, you look like quite an experienced mercenary yourself. What do you think? Will you lend us your strength to recover the farmland that the orcs took away from us? I will give you ample compensation.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-03.htm new file mode 100644 index 0000000000..107b8b60bd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-03.htm @@ -0,0 +1,6 @@ +Piotur:
+Very well! Drive out the turek orcs that are camping around this area! If you bring the necklaces the orcs all wear, I will reward you according to the number.
+They may be lowly orcs, but they seem to have ranks among them. The one that seems to be the leader has a luxurious necklace. I will reward you a little more for that one.
+Ah! And as you know, this area was once the holy grounds for the ancient Elmoreden Empire. In the past, one could find three or four ancient relics each day when digging the earth to till the soil. Orcs also seem to understand about the value of those relics, and some collect them. Do away with the orcs and keep the relics that you find. You will be able to sell them for a high price at a store in the village.
+Now it is time for you to leave. Please make an effort to recover the land for the farmers that lost their way of life. May the blessing of the goddess be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-03.html new file mode 100644 index 0000000000..107b8b60bd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-03.html @@ -0,0 +1,6 @@ +Piotur:
+Very well! Drive out the turek orcs that are camping around this area! If you bring the necklaces the orcs all wear, I will reward you according to the number.
+They may be lowly orcs, but they seem to have ranks among them. The one that seems to be the leader has a luxurious necklace. I will reward you a little more for that one.
+Ah! And as you know, this area was once the holy grounds for the ancient Elmoreden Empire. In the past, one could find three or four ancient relics each day when digging the earth to till the soil. Orcs also seem to understand about the value of those relics, and some collect them. Do away with the orcs and keep the relics that you find. You will be able to sell them for a high price at a store in the village.
+Now it is time for you to leave. Please make an effort to recover the land for the farmers that lost their way of life. May the blessing of the goddess be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-03a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-03a.htm new file mode 100644 index 0000000000..28978f0a02 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-03a.htm @@ -0,0 +1,6 @@ +Piotur:
+You must be the mercenary sent by Guard Leikan. It is good to see you. I have a sad story to tell you...
+During the war with Gracia the farmers of this area were driven off of our land. After the war was over we returned to our farms only to find them occupied by Turek orcs!
+I'll give the Lord credit for his many restoration projects, but unfortunately we are far from the castle and haven't gotten any significant help from him. We must take responsibility for recovering our farms! Would you help us drive the orcs from our lands? You will be well compensated for you efforts.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-04.html new file mode 100644 index 0000000000..7658e324e6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-04.html @@ -0,0 +1,6 @@ +Piotur:
+Please help the farmers who lost their way of living recover their land from the orcs. As I told you, kill the turek orcs and bring their necklaces back as proof, and I will give you a reward.
+Also, do not discard the ancient relics that the orcs keep with them. Collect them all. You can sell them for quite a high price at the village. Why don't you think of it as a kind of bonus for this task?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-05.html new file mode 100644 index 0000000000..5eaf24cb53 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-05.html @@ -0,0 +1,6 @@ +Piotur:
+Young soldier, you have fought well. By the Contract, I will give you a reward according to the number of turek Orc necklaces you have brought. Thanks to your efforts, the farmers who lost their way of living are one day closer to recovering their land.
+Ah! Also, do not dispose of the ancient relics that the orcs kept on them, but collect them all. You can sell them for quite a high price in the village. Why don't you think of it as a kind of bonus for the work you've done? Now that I think about it, there is supposed to be a specialist of archeology in Gludin ... That person will be able to tell you the value of these objects in more detail.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-06.html new file mode 100644 index 0000000000..6f88d7268a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-06.html @@ -0,0 +1,4 @@ +Piotur:
+I am sad to see you go, but it seems that our fates which brought us together for a time now must separate. However, only the gods know the destiny of people. I may request your help again someday. Or a day may come when I will help you ... we never know.
+May the goddess' blessing be upon your future days. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-07.html new file mode 100644 index 0000000000..5d562c1e10 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/30597-07.html @@ -0,0 +1,4 @@ +Piotur:
+They say that the turek orcs have trained the ferocious wolves to use as military hounds. Even the smallest creature knows its master. When orcs are attacked, the wolves fight as well, so be careful.
+May the goddess' blessing be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/Q00327_RecoverTheFarmland.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/Q00327_RecoverTheFarmland.java new file mode 100644 index 0000000000..3c283b78e0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00327_RecoverTheFarmland/Q00327_RecoverTheFarmland.java @@ -0,0 +1,459 @@ +/* + * 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.Q00327_RecoverTheFarmland; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; + +/** + * Recover the Farmland (327). + * @author GKR + */ + +public final class Q00327_RecoverTheFarmland extends Quest +{ + // NPCs + private static final int IRIS = 30034; + private static final int ASHA = 30313; + private static final int NESTLE = 30314; + private static final int LEIKAN = 30382; + private static final int PIOTUR = 30597; + private static final int TUREK_ORK_WARLORD = 20495; + private static final int TUREK_ORK_ARCHER = 20496; + private static final int TUREK_ORK_SKIRMISHER = 20497; + private static final int TUREK_ORK_SUPPLIER = 20498; + private static final int TUREK_ORK_FOOTMAN = 20499; + private static final int TUREK_ORK_SENTINEL = 20500; + private static final int TUREK_ORK_SHAMAN = 20501; + + // Items + private static final int TUREK_DOG_TAG = 1846; + private static final int TUREK_MEDALLION = 1847; + private static final int LEIKANS_LETTER = 5012; + private static final int CLAY_URN_FRAGMENT = 1848; + private static final int BRASS_TRINKET_PIECE = 1849; + private static final int BRONZE_MIRROR_PIECE = 1850; + private static final int JADE_NECKLACE_BEAD = 1851; + private static final int ANCIENT_CLAY_URN = 1852; + private static final int ANCIENT_BRASS_TIARA = 1853; + private static final int ANCIENT_BRONZE_MIRROR = 1854; + private static final int ANCIENT_JADE_NECKLACE = 1855; + private static final int QUICK_STEP_POTION = 734; + private static final int SWIFT_ATTACK_POTION = 735; + private static final int SCROLL_OF_ESCAPE = 736; + private static final int SCROLL_OF_RESURRECTION = 737; + private static final int HEALING_POTION = 1061; + private static final int SOULSHOT_D = 1463; + private static final int SPIRITSHOT_D = 2510; + + // Misc + private static final int MIN_LVL = 25; + private static final Map FRAGMENTS_REWARD_DATA = new HashMap<>(4); + private static final Map FRAGMENTS_DROP_PROB = new HashMap<>(7); + private static final ItemHolder[] FULL_REWARD_DATA = + { + new ItemHolder(ANCIENT_CLAY_URN, 2766), + new ItemHolder(ANCIENT_BRASS_TIARA, 3227), + new ItemHolder(ANCIENT_BRONZE_MIRROR, 3227), + new ItemHolder(ANCIENT_JADE_NECKLACE, 3919) + }; + + static + { + FRAGMENTS_REWARD_DATA.put("30034-03.html", new ItemHolder(CLAY_URN_FRAGMENT, 307)); + FRAGMENTS_REWARD_DATA.put("30034-04.html", new ItemHolder(BRASS_TRINKET_PIECE, 368)); + FRAGMENTS_REWARD_DATA.put("30034-05.html", new ItemHolder(BRONZE_MIRROR_PIECE, 368)); + FRAGMENTS_REWARD_DATA.put("30034-06.html", new ItemHolder(JADE_NECKLACE_BEAD, 430)); + + FRAGMENTS_DROP_PROB.put(TUREK_ORK_ARCHER, 21); + FRAGMENTS_DROP_PROB.put(TUREK_ORK_FOOTMAN, 19); + FRAGMENTS_DROP_PROB.put(TUREK_ORK_SENTINEL, 18); + FRAGMENTS_DROP_PROB.put(TUREK_ORK_SHAMAN, 22); + FRAGMENTS_DROP_PROB.put(TUREK_ORK_SKIRMISHER, 21); + FRAGMENTS_DROP_PROB.put(TUREK_ORK_SUPPLIER, 20); + FRAGMENTS_DROP_PROB.put(TUREK_ORK_WARLORD, 26); + } + + public Q00327_RecoverTheFarmland() + { + super(327); + addStartNpc(LEIKAN, PIOTUR); + addTalkId(LEIKAN, PIOTUR, IRIS, ASHA, NESTLE); + addKillId(TUREK_ORK_WARLORD, TUREK_ORK_ARCHER, TUREK_ORK_SKIRMISHER, TUREK_ORK_SUPPLIER, TUREK_ORK_FOOTMAN, TUREK_ORK_SENTINEL, TUREK_ORK_SHAMAN); + registerQuestItems(TUREK_DOG_TAG, TUREK_MEDALLION, LEIKANS_LETTER); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + + String html = null; + + switch (event) + { + case "30034-01.html": + case "30313-01.html": + case "30314-02.html": + case "30314-08.html": + case "30314-09.html": + case "30382-05a.html": + case "30382-05b.html": + case "30597-03.html": + case "30597-07.html": + { + html = event; + break; + } + case "30382-03.htm": + { + st.startQuest(); + giveItems(player, LEIKANS_LETTER, 1); + st.setCond(2); + html = event; + break; + } + case "30597-03.htm": + { + st.startQuest(); + html = event; + break; + } + case "30597-06.html": + { + st.exitQuest(true, true); + html = event; + break; + } + case "30034-03.html": + case "30034-04.html": + case "30034-05.html": + case "30034-06.html": + { + final ItemHolder item = FRAGMENTS_REWARD_DATA.get(event); + if (!hasQuestItems(player, item.getId())) + { + html = "30034-02.html"; + } + else + { + addExpAndSp(player, getQuestItemsCount(player, item.getId()) * item.getCount(), 0); + takeItems(player, item.getId(), -1); + playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); + html = event; + } + break; + } + case "30034-07.html": + { + boolean rewarded = false; + for (ItemHolder it : FULL_REWARD_DATA) + { + if (hasQuestItems(player, it.getId())) + { + addExpAndSp(player, getQuestItemsCount(player, it.getId()) * it.getCount(), 0); + takeItems(player, it.getId(), -1); + playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); + rewarded = true; + } + } + html = rewarded ? event : "30034-02.html"; + break; + } + case "30313-03.html": + { + if (getQuestItemsCount(player, CLAY_URN_FRAGMENT) < 5) + { + html = "30313-02.html"; + } + else + { + takeItems(player, CLAY_URN_FRAGMENT, 5); + if (getRandom(6) < 5) + { + giveItems(player, ANCIENT_CLAY_URN, 1); + html = event; + } + else + { + html = "30313-10.html"; + } + } + break; + } + case "30313-05.html": + { + if (getQuestItemsCount(player, BRASS_TRINKET_PIECE) < 5) + { + html = "30313-04.html"; + } + else + { + takeItems(player, BRASS_TRINKET_PIECE, 5); + if (getRandom(7) < 6) + { + giveItems(player, ANCIENT_BRASS_TIARA, 1); + html = event; + } + else + { + html = "30313-10.html"; + } + } + break; + } + case "30313-07.html": + { + if (getQuestItemsCount(player, BRONZE_MIRROR_PIECE) < 5) + { + html = "30313-06.html"; + } + else + { + takeItems(player, BRONZE_MIRROR_PIECE, 5); + if (getRandom(7) < 6) + { + giveItems(player, ANCIENT_BRONZE_MIRROR, 1); + html = event; + } + else + { + html = "30313-10.html"; + } + } + break; + } + case "30313-09.html": + { + if (getQuestItemsCount(player, JADE_NECKLACE_BEAD) < 5) + { + html = "30313-08.html"; + } + else + { + takeItems(player, JADE_NECKLACE_BEAD, 5); + if (getRandom(8) < 7) + { + giveItems(player, ANCIENT_JADE_NECKLACE, 1); + html = event; + } + else + { + html = "30313-10.html"; + } + } + break; + } + case "30314-03.html": + { + if (!hasQuestItems(player, ANCIENT_CLAY_URN)) + { + html = "30314-07.html"; + } + else + { + rewardItems(player, SOULSHOT_D, getRandom(70, 110)); + takeItems(player, ANCIENT_CLAY_URN, 1); + html = event; + } + break; + } + case "30314-04.html": + { + if (!hasQuestItems(player, ANCIENT_BRASS_TIARA)) + { + html = "30314-07.html"; + } + else + { + final int rnd = getRandom(100); + if (rnd < 40) + { + rewardItems(player, HEALING_POTION, 1); + } + else if (rnd < 84) + { + rewardItems(player, QUICK_STEP_POTION, 1); + } + else + { + rewardItems(player, SWIFT_ATTACK_POTION, 1); + } + takeItems(player, ANCIENT_BRASS_TIARA, 1); + html = event; + } + break; + } + case "30314-05.html": + { + if (!hasQuestItems(player, ANCIENT_BRONZE_MIRROR)) + { + html = "30314-07.html"; + } + else + { + rewardItems(player, (getRandom(100) < 59) ? SCROLL_OF_ESCAPE : SCROLL_OF_RESURRECTION, 1); + takeItems(player, ANCIENT_BRONZE_MIRROR, 1); + html = event; + } + break; + } + case "30314-06.html": + { + if (!hasQuestItems(player, ANCIENT_JADE_NECKLACE)) + { + html = "30314-07.html"; + } + else + { + rewardItems(player, SPIRITSHOT_D, getRandom(50, 90)); + takeItems(player, ANCIENT_JADE_NECKLACE, 1); + html = event; + } + break; + } + } + + return html; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if (st != null) + { + if ((npc.getId() == TUREK_ORK_SHAMAN) || (npc.getId() == TUREK_ORK_WARLORD)) + { + giveItems(killer, TUREK_MEDALLION, 1); + } + else + { + giveItems(killer, TUREK_DOG_TAG, 1); + } + + if (getRandom(100) < FRAGMENTS_DROP_PROB.get(npc.getId())) + { + giveItems(killer, getRandom(CLAY_URN_FRAGMENT, JADE_NECKLACE_BEAD), 1); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String html = getNoQuestMsg(player); + + switch (npc.getId()) + { + case LEIKAN: + { + if (st.isCreated()) + { + html = ((player.getLevel() >= MIN_LVL) ? "30382-02.htm" : "30382-01.htm"); + } + else if (st.isStarted()) + { + if (hasQuestItems(player, LEIKANS_LETTER)) + { + html = "30382-04.html"; + } + else + { + html = "30382-05.html"; + st.setCond(5, true); + } + } + break; + } + case PIOTUR: + { + if (st.isCreated()) + { + html = ((player.getLevel() >= MIN_LVL) ? "30597-02.htm" : "30597-01.htm"); + } + else if (st.isStarted()) + { + if (hasQuestItems(player, LEIKANS_LETTER)) + { + html = "30597-03a.htm"; + takeItems(player, LEIKANS_LETTER, -1); + st.setCond(3, true); + } + else + { + if (!hasQuestItems(player, TUREK_DOG_TAG) && !hasQuestItems(player, TUREK_MEDALLION)) + { + html = "30597-04.html"; + } + else + { + html = "30597-05.html"; + final long dogTags = getQuestItemsCount(player, TUREK_DOG_TAG); + final long medallions = getQuestItemsCount(player, TUREK_MEDALLION); + final long rewardCount = (dogTags * 40) + (medallions * 50) + (((dogTags + medallions) >= 10) ? 619 : 0); + giveAdena(player, rewardCount, true); + takeItems(player, TUREK_DOG_TAG, -1); + takeItems(player, TUREK_MEDALLION, -1); + st.setCond(4, true); + } + } + } + break; + } + case IRIS: + { + if (st.isStarted()) + { + html = "30034-01.html"; + } + break; + } + case ASHA: + { + if (st.isStarted()) + { + html = "30313-01.html"; + } + break; + } + case NESTLE: + { + if (st.isStarted()) + { + html = "30314-01.html"; + } + break; + } + } + + return html; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-01.htm new file mode 100644 index 0000000000..e07f07ea64 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-01.htm @@ -0,0 +1,5 @@ +Trader Sarien:
+I know it is hard to believe, but a long time ago southern Gludio also used to be fertile farmland. However, as you can see, now it is nothing more than barren wasteland. It may seem like barren land to normal people, but true businessmen like me find opportunities in any place.
+I believe there are valuable commodities to be found here in the Wastelands that cannot be found elsewhere. If I am able to find them, I may begin a new business here. When that time comes, I may need your help.
+(Quest for characters level 21 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-02.htm new file mode 100644 index 0000000000..ad96097833 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-02.htm @@ -0,0 +1,5 @@ +Trader Sarien:
+I know it is hard to believe, but a long time ago southern Gludio also used to be fertile farmland. However, as you can see, now it is nothing more than barren wastelands. It may seem like barren land to normal people, but true businessmen like me find opportunities in any place.
+In the end, I was able to find something valuable in these Wastelands that could not be found elsewhere. Therefore I have decided to begin a new business here. I would like to have a reliable partner. What do you think about working with me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-03.htm new file mode 100644 index 0000000000..8f0d8aab6d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-03.htm @@ -0,0 +1,7 @@ +Trader Sarien:
+Good. Spit on the ground and shake on it. Now we have a contract with the goddess of earth, Maphr, as our witness. Now listen to what I have to say.
+Do you remember the eight basic ingredients used for magic research I told you about earlier? We can find some of them in this area. If you'll hunt monster eyes, you can get their useful monster eye carcasses, and once in a while, you can even obtain a monster eye lens, and this is a very valuable item. They say Dwarves use these to make something called "eye glasses."
+Also, if you hunt the basilisk, you can get its gizzard. The basilisk swallows the pebbles of the wastelands to aid its digestion, but inside, they are mixed with jade shards. So we can obtain jade from the basilisk gizzard.
+You can find monster eyes on the coast near here. The basilisk can be found within the Wastelands. There are also monster eyes in the Wastelands, but they are much more dangerous than those on the coast, so you must be careful. But you may be able to find items that are that much more precious, so it is worth taking the challenge to hunt
+From now on, the items you bring to me I will sell to the Ivory Tower. I have already signed a contract with the magicians of the Ivory Tower and fixed the price as well. I will give you 30% of the item price I have agreed to take. So please bring back as much as possible. Well then, may the blessing of the earth be with you, partner. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-04.html new file mode 100644 index 0000000000..52cad6863f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-04.html @@ -0,0 +1,5 @@ +Trader Sarien:
+Ho, why are your hands empty, partner? Were you not supposed to find me monster eye carcasses and lenses, and the gizzards of the basilisk? You aren't going to quit by any chance, are you?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-05.html new file mode 100644 index 0000000000..2f71b786ab --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-05.html @@ -0,0 +1,5 @@ +Trader Sarien:
+Come, partner. I am glad you have returned safely from the rugged land. First, relax and catch your breath. As your sack is bulging, you must have gathered quite a few products. Let us take a look at the outcome of the hunt! As promised, I will pay you according to how many items you brought.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-06.html new file mode 100644 index 0000000000..077e677b02 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-06.html @@ -0,0 +1,3 @@ +Trader Sarien:
+I am sorry to hear that. And there I was, thinking I had met a partner whom I could work with for a long time. However, I have no choice but to look for another partner... Well, I wish you happiness in your future. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-07.html new file mode 100644 index 0000000000..4776ef3e13 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/30436-07.html @@ -0,0 +1,3 @@ +Trader Sarien:
+Then please continue your efforts. I must look for a coach that will deliver the products to Oren's Ivory Tower. I must earn more money to achieve the large business I have planned in my head. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/Q00328_SenseForBusiness.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/Q00328_SenseForBusiness.java new file mode 100644 index 0000000000..ec1aeb9b31 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00328_SenseForBusiness/Q00328_SenseForBusiness.java @@ -0,0 +1,165 @@ +/* + * 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.Q00328_SenseForBusiness; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Sense for Business (328) + * @author xban1x + */ +public class Q00328_SenseForBusiness extends Quest +{ + // NPCs + private static final int SARIEN = 30436; + private static final Map MONSTER_EYES = new HashMap<>(); + private static final Map MONSTER_BASILISKS = new HashMap<>(); + // @formatter:off + static + { + MONSTER_EYES.put(20055, new int[] { 61, 62 }); + MONSTER_EYES.put(20059, new int[] { 61, 62 }); + MONSTER_EYES.put(20067, new int[] { 72, 74 }); + MONSTER_EYES.put(20068, new int[] { 78, 79 }); + MONSTER_BASILISKS.put(20070, 60); + MONSTER_BASILISKS.put(20072, 63); + } + // @formatter:on + // Items + private static final int MONSTER_EYE_CARCASS = 1347; + private static final int MONSTER_EYE_LENS = 1366; + private static final int BASILISK_GIZZARD = 1348; + // Misc + private static final int MONSTER_EYE_CARCASS_ADENA = 25; + private static final int MONSTER_EYE_LENS_ADENA = 1000; + private static final int BASILISK_GIZZARD_ADENA = 60; + private static final int BONUS = 618; + private static final int BONUS_COUNT = 10; + private static final int MIN_LVL = 21; + + public Q00328_SenseForBusiness() + { + super(328); + addStartNpc(SARIEN); + addTalkId(SARIEN); + addKillId(MONSTER_EYES.keySet()); + addKillId(MONSTER_BASILISKS.keySet()); + registerQuestItems(MONSTER_EYE_CARCASS, MONSTER_EYE_LENS, BASILISK_GIZZARD); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st != null) + { + switch (event) + { + case "30436-03.htm": + { + st.startQuest(); + htmltext = event; + break; + } + case "30436-06.html": + { + st.exitQuest(true, true); + htmltext = event; + break; + } + } + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = player.getLevel() < MIN_LVL ? "30436-01.htm" : "30436-02.htm"; + break; + } + case State.STARTED: + { + final long carcass = getQuestItemsCount(player, MONSTER_EYE_CARCASS); + final long lens = getQuestItemsCount(player, MONSTER_EYE_LENS); + final long gizzards = getQuestItemsCount(player, BASILISK_GIZZARD); + if ((carcass + lens + gizzards) > 0) + { + giveAdena(player, ((carcass * MONSTER_EYE_CARCASS_ADENA) + (lens * MONSTER_EYE_LENS_ADENA) + (gizzards * BASILISK_GIZZARD_ADENA) + ((carcass + lens + gizzards) >= BONUS_COUNT ? BONUS : 0)), true); + takeItems(player, -1, MONSTER_EYE_CARCASS, MONSTER_EYE_LENS, BASILISK_GIZZARD); + htmltext = "30436-05.html"; + } + else + { + htmltext = "30436-04.html"; + } + break; + } + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance player, boolean isPet) + { + final QuestState st = getQuestState(player, false); + if ((st != null) && st.isStarted()) + { + final int chance = getRandom(100); + if (MONSTER_EYES.containsKey(npc.getId())) + { + if (chance < MONSTER_EYES.get(npc.getId())[0]) + { + giveItems(player, MONSTER_EYE_CARCASS, 1); + playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + else if (chance < MONSTER_EYES.get(npc.getId())[1]) + { + giveItems(player, MONSTER_EYE_LENS, 1); + playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + else if (MONSTER_BASILISKS.containsKey(npc.getId())) + { + if (chance < MONSTER_BASILISKS.get(npc.getId())) + { + giveItems(player, BASILISK_GIZZARD, 1); + playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + return super.onKill(npc, player, isPet); + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-01.htm new file mode 100644 index 0000000000..14ccce5902 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-01.htm @@ -0,0 +1,5 @@ +Trader Rolento:
+As Elves are infatuated with poetry and songs and Orcs rave over war, we Dwarves love to make things with our very own hands. Ever since I was young, I immensely enjoyed fooling around with toys with springs or pocket watches. My dream is to make a golem with my own hands some day.
+However, I am not talking about the animate, monster golems that you can see frequently. The golems made by the dwarves are automatic dolls that move according to minute mechanical devices. It is totally different from stone golems or granite golems, which are magically blessed with life.
However, I always wondered what the energy source of a magically created golem would be. No matter how carefully I looked at it, I could not find the part that generated power... . There are many golems in the wastelands here. They say it is because the devil Beleth and the magicians of the Ivory Tower used them as weapons of war in this land. If that is true, then that means that more than a thousand years have passed since the golems were abandoned in this land. Don't you find it surprising that they are still moving? What do you think? Aren't you getting curious, too? If you have time later, let's research it together.
+(Quest for characters level 33 and above.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-02.htm new file mode 100644 index 0000000000..1beeed6909 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-02.htm @@ -0,0 +1,6 @@ +Trader Rolento:
+As Elves are infatuated with poetry and songs and Orcs rave over war, we Dwarves love to make things with our very own hands. Ever since I was young, I immensely enjoyed fooling around with toys with springs or pocket watches. My dream is to make a golem with my own hands someday.
+However, I am not talking about the animate, monster golems that you can see frequently. The golems made by the dwarves are automatic dolls that move according to minute mechanical devices. It is totally different from stone golems or granite golems, which were magically blessed with life.
+However, I always wondered what the energy source of a magically created golem would be. No matter how carefully I looked at it, I could not find the part that generated power... There are many golems in the Wastelands here. They say it is because the devil Beleth and the magicians of the Ivory Tower used them as weapons of war in this land. If that is true, then that means that more than a thousand years have passed since the golems were abandoned in this land. What do you think? Aren't you getting curious, too? If you grant my request, it will be a great help to my studies... will you help me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-03.htm new file mode 100644 index 0000000000..c331082c3f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-03.htm @@ -0,0 +1,6 @@ +Trader Rolento:
+Good! We understand each other well. Actually, I recently had a chance to see a destroyed granite golem, and within the remains I saw a piece of stone of a different hue. I asked Sarien, who has profound knowledge of magic, and he said the stone was a heartstone. I found out that all the golems made by the magicians had a heartstone in the center of their bodies.
+What was it that he said? Something about putting a symbolic heart that resembles the living body into a still stone figure, and then gathering the magic forces before beginning the spells... . Of course I didn't understand a word of what he was talking about, but anyway, it seems almost certain that the heartstone is the power source of the golem.
+So, I would like you to go into the Wastelands and get me the heartstone of a golem. There are many granite golems in the Wastelands. There are also granite golems that are nicknamed punchers, because they Brandish their fists about fiercely.
+Most heartstones shatter or crack when the golem is killed, but very rarely you can obtain whole, perfect heartstones. I would like you to bring me all the heartstones you can find -- whether they be broken or whole. I will compensate you for as many as you bring back. Of course, I will be more generous for perfect heartstones. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-04.html new file mode 100644 index 0000000000..ecd24a537a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-04.html @@ -0,0 +1,5 @@ +Trader Rolento:
+Oh dear, your hands are still empty. As I already told you, I need the heartstones of granite golems and punchers. Please go to the Wastelands and find heartstones for me.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-05.html new file mode 100644 index 0000000000..2f451bcf6a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-05.html @@ -0,0 +1,6 @@ +Trader Rolento:
+Oh, you have found some! I will reveal whether or not the power to move rocks like living humans for hundreds of years lies within this small stone. I must begin my research immediately -- starting tonight. Although it is difficult because I do not have any proper tools or measuring devices, because this is not a workshop, I can measure the size with a ruler and the weight with a scale, and pound it with my hammer to fathom its solidity and density. Hmm ... so this goes like this ... and ...
+Oh dear, I've been wrapped up too much in my own thoughts, forgive me! As we promised, I will reward you by the number of heartstones you have brought.
But I wish to have some more heartstones to send to my guild brothers in Giran. What do you say? Could I ask you another favor?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-06.html new file mode 100644 index 0000000000..a0500194c2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-06.html @@ -0,0 +1,3 @@ +Trader Rolento:
+I'm sorry that you are quitting, it is too bad. I'll have to ask someone else. Thanks anyway. May the divine blessing of Maphr, our God of the Earth, be with you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-07.html new file mode 100644 index 0000000000..18f0149023 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/30437-07.html @@ -0,0 +1,3 @@ +Trader Rolento:
+I want to thank you. Thank you so much for helping me satisfy my curiosity. If my studies produce results, then we Dwarves may be able to develop a new power tool that moves mechanical devices. It is all thanks to you. That granted, please help me a little more. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/Q00329_CuriosityOfADwarf.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/Q00329_CuriosityOfADwarf.java new file mode 100644 index 0000000000..11208147f5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00329_CuriosityOfADwarf/Q00329_CuriosityOfADwarf.java @@ -0,0 +1,153 @@ +/* + * 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.Q00329_CuriosityOfADwarf; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.ItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; +import com.l2jmobius.gameserver.util.Util; + +/** + * Curiosity Of A Dwarf (329) + * @author ivantotov + */ +public final class Q00329_CuriosityOfADwarf extends Quest +{ + // NPC + private static final int TRADER_ROLENTO = 30437; + // Items + private static final int GOLEM_HEARTSTONE = 1346; + private static final int BROKEN_HEARTSTONE = 1365; + // Misc + private static final int MIN_LEVEL = 33; + // Monsters + private static final Map> MONSTER_DROPS = new HashMap<>(); + static + { + MONSTER_DROPS.put(20083, Arrays.asList(new ItemHolder(GOLEM_HEARTSTONE, 3), new ItemHolder(BROKEN_HEARTSTONE, 54))); // Granitic Golem + MONSTER_DROPS.put(20085, Arrays.asList(new ItemHolder(GOLEM_HEARTSTONE, 3), new ItemHolder(BROKEN_HEARTSTONE, 58))); // Puncher + } + + public Q00329_CuriosityOfADwarf() + { + super(329); + addStartNpc(TRADER_ROLENTO); + addTalkId(TRADER_ROLENTO); + addKillId(MONSTER_DROPS.keySet()); + registerQuestItems(GOLEM_HEARTSTONE, BROKEN_HEARTSTONE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st == null) + { + return htmltext; + } + + switch (event) + { + case "30437-03.htm": + { + if (st.isCreated()) + { + st.startQuest(); + htmltext = event; + } + break; + } + case "30437-06.html": + { + st.exitQuest(true, true); + htmltext = event; + break; + } + case "30437-07.html": + { + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState st = getQuestState(killer, false); + if ((st != null) && Util.checkIfInRange(1500, npc, killer, true)) + { + final int rnd = getRandom(100); + for (ItemHolder drop : MONSTER_DROPS.get(npc.getId())) + { + if (rnd < drop.getCount()) + { + giveItemRandomly(killer, npc, drop.getId(), 1, 0, 1.0, true); + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + if (st == null) + { + return htmltext; + } + + switch (st.getState()) + { + case State.CREATED: + { + htmltext = player.getLevel() >= MIN_LEVEL ? "30437-02.htm" : "30437-01.htm"; + break; + } + case State.STARTED: + { + if (hasAtLeastOneQuestItem(player, getRegisteredItemIds())) + { + final long broken = getQuestItemsCount(player, BROKEN_HEARTSTONE); + final long golem = getQuestItemsCount(player, GOLEM_HEARTSTONE); + giveAdena(player, ((broken * 50) + (golem * 1000) + ((broken + golem) >= 10 ? 1183 : 0)), true); + takeItems(player, -1, getRegisteredItemIds()); + htmltext = "30437-05.html"; + } + else + { + htmltext = "30437-04.html"; + } + break; + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-01.htm new file mode 100644 index 0000000000..660776e674 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-01.htm @@ -0,0 +1,7 @@ +Guard Beltkam:
+My family all lost their lives to Antharas the Land Dragon. My mother and younger sister perished ten years ago, when many southern villages in Giran burned to the ground in the heat of Antharas' rampage. Then, three years ago, when the land dragon extermination force was formed at the lord's command, my father and older brother were recruited as soldiers, sent to the Dragon Valley, and eventually died meaningless deaths.
+I swore an oath before my family graves that I would slay that great evil creature. Everyone holds me back, saying that it is a futile effort, but I will definitely bring Antharas down. It's the only way I know to bring peace to my family's spirits.
+I have prepared diligently during this past year for my revenge. I consulted with many mercenaries, and I even researched documents relating to the dragon in the Ivory Tower's library. The dwarf bounty hunter "Terrin Wymslayer," who is a famous dragon hunter, especially gave me many words of advice. I finally came to the conclusion that arrows were the most effective weapons.
+Now, then. I do not mind telling you of my troubles, but I cannot ask you to help me in this endeavor, at least not as you are now. One day, perhaps, I may be in your debt.
+(Only characters above level 32 are permitted to take on this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-02.htm new file mode 100644 index 0000000000..a6811fa31f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-02.htm @@ -0,0 +1,7 @@ +Guard Beltkam:
+I lost my whole family to Antharas the Land Dragon. My mother and younger sister perished ten years ago, when many southern villages in Giran burned to the ground in the heat of Antharas' rampage. Then, three years ago, when the land dragon extermination force was formed at the lord's command, my father and older brother were recruited as soldiers, sent to the Dragon Valley, and eventually died meaningless deaths.
+I swore an oath before my family graves that I would slay that great evil creature. Everyone holds me back, saying that it is a futile effort, but I will definitely bring Antharas down. Don't you think that's the only way to bring peace to the spirits of my family?
+I have prepared diligently during this past year for my revenge. I consulted with many mercenaries, and I even researched documents relating to the dragon in the Ivory Tower's library. The dwarf bounty hunter "Terrin Wymslayer," who is a famous dragon hunter, especially gave me many words of advice. I finally came to the conclusion that arrows were the most effective weapons.
+For the past six months, I have repledged my oath of revenge every day, while working to forge an arrow that will kill Antharas. But the ingredients needed to create the arrow are all difficult to obtain. That is why I must frequently ask travelers like you to collect these ingredients for me. Can I also ask this favor of you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-03.htm new file mode 100644 index 0000000000..78ac53eb1b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-03.htm @@ -0,0 +1,5 @@ +Guard Belton:
+I am not foolish enough to think that I can avenge the death of my family alone. I have received the aid of many, and will continue to ask favors of those like yourself.
+The materials you must find for me are the Silver Feathers of a Harpy, Wyrm Teeth and the venom from a Medusa. The Harpy's Feathers are used to make the fletching for the arrows, while the Wyrm Teeth will be used for arrowheads. They say that if one applies the venomous poison of the Medusa on the tip of the arrow and dries it properly, the poison will retain its effects for many years.
+As soon as you have obtained these three materials, bring them to me, for I will give you a reward for each. I've inherited quite a fortune from my deceased parents, so be confident that your reward will be grand. I have no use material things as avenging my family is all I know now. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-04.html new file mode 100644 index 0000000000..09dd94c596 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-04.html @@ -0,0 +1,6 @@ +Guard Belton:
+You've come back empty-handed. Did you not promise to bring me harpy's Silver Feathers, the teeth of a Wyrm and the venom of a medusa?
+As soon as you obtain these three materials, bring them to me. I will reward you for each that you bring back. I've inherited quite a fortune from my deceased parents, so don't worry about the reward. Please don't quit, help me.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-05.html new file mode 100644 index 0000000000..64aede64cb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-05.html @@ -0,0 +1,6 @@ +Guard Belton:
+I'm feeling an exceptionally strong longing for my family today. But I cannot risk falling into my fancies and having my determination shaken or my will for revenge weakened. Every day as I make arrows, sharpen the teeth of the wyrms, and put feathers on my arrows, I think of my dead family. And as I apply the poison of the medusa on the end of the arrowhead, I curse Antharas.
+Now, shall we take a look at the materials you have brought? Good. This should be enough material to make arrows for a few days. As promised, I will reward you according to the number of materials you have brought me. This should be enough, I presume? If you are not planning to leave any time soon, could you help me some more? I beg you!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-06.html new file mode 100644 index 0000000000..e3bc7cce0a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-06.html @@ -0,0 +1,4 @@ +Guard Belton:
+I understand. This revenge is mine alone, anyway. I cannot rely on the kindness of others forever.
+Are you planning to leave again? Then I guess this is goodbye. But a person's future is not certain. Perhaps I may be the one to come to your aid later. Or I may be slain by Antharas without having fulfilled my revenge, and meet my family in the afterlife. The laws of the gods and of fate are truly mysterious. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-07.html new file mode 100644 index 0000000000..5ef6eda247 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-07.html @@ -0,0 +1,3 @@ +Guard Belton:
+Then please continue your efforts. I am certain that my revenge will be complete, thanks to those like you who have come to my aid. The gods control our fates, but I believe that if the will is strong enough and the conviction steadfast, the gods will be moved and allow one's fate to be reforged. One day I will surely shoot an arrow into the heart of Antharas! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/Q00331_ArrowOfVengeance.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/Q00331_ArrowOfVengeance.java new file mode 100644 index 0000000000..f9124dfc0d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/Q00331_ArrowOfVengeance.java @@ -0,0 +1,164 @@ +/* + * 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.Q00331_ArrowOfVengeance; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.quest.State; + +/** + * Arrow for Vengeance (331) + * @author xban1x + */ +public class Q00331_ArrowOfVengeance extends Quest +{ + // NPCs + private static final int BELTON = 30125; + // Items + private static final int HARPY_FEATHER = 1452; + private static final int MEDUSA_VENOM = 1453; + private static final int WYRMS_TOOTH = 1454; + // Monster + private static final Map MONSTERS = new HashMap<>(); + static + { + MONSTERS.put(20145, 59); // Harpy + MONSTERS.put(20158, 61); // Medusa + MONSTERS.put(20176, 60); // Wyrm + } + // Misc + private static final int MIN_LVL = 32; + private static final int HARPY_FEATHER_ADENA = 78; + private static final int MEDUSA_VENOM_ADENA = 88; + private static final int WYRMS_TOOTH_ADENA = 92; + private static final int BONUS = 3100; + private static final int BONUS_COUNT = 10; + + public Q00331_ArrowOfVengeance() + { + super(331); + addStartNpc(BELTON); + addTalkId(BELTON); + addKillId(MONSTERS.keySet()); + registerQuestItems(HARPY_FEATHER, MEDUSA_VENOM, WYRMS_TOOTH); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + String htmltext = null; + if (st != null) + { + switch (event) + { + case "30125-03.htm": + { + st.startQuest(); + htmltext = event; + break; + } + case "30125-06.html": + { + st.exitQuest(true, true); + htmltext = event; + break; + } + case "30125-07.html": + { + htmltext = event; + break; + } + } + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st != null) + { + switch (st.getState()) + { + case State.CREATED: + { + htmltext = player.getLevel() < MIN_LVL ? "30125-01.htm" : "30125-02.htm"; + break; + } + case State.STARTED: + { + final long harpyFeathers = getQuestItemsCount(player, HARPY_FEATHER); + final long medusaVenoms = getQuestItemsCount(player, MEDUSA_VENOM); + final long wyrmsTeeth = getQuestItemsCount(player, WYRMS_TOOTH); + if ((harpyFeathers + medusaVenoms + wyrmsTeeth) > 0) + { + giveAdena(player, ((harpyFeathers * HARPY_FEATHER_ADENA) + (medusaVenoms * MEDUSA_VENOM_ADENA) + (wyrmsTeeth * WYRMS_TOOTH_ADENA) + ((harpyFeathers + medusaVenoms + wyrmsTeeth) >= BONUS_COUNT ? BONUS : 0)), true); + takeItems(player, -1, HARPY_FEATHER, MEDUSA_VENOM, WYRMS_TOOTH); + htmltext = "30125-05.html"; + } + else + { + htmltext = "30125-04.html"; + } + break; + } + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance player, boolean isPet) + { + final QuestState st = getQuestState(player, false); + if (st != null) + { + if (getRandom(100) < MONSTERS.get(npc.getId())) + { + switch (npc.getId()) + { + case 20145: + { + giveItems(player, HARPY_FEATHER, 1); + break; + } + case 20158: + { + giveItems(player, MEDUSA_VENOM, 1); + break; + } + case 20176: + { + giveItems(player, WYRMS_TOOTH, 1); + break; + } + } + playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + return super.onKill(npc, player, isPet); + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30130-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30130-01.html new file mode 100644 index 0000000000..1cab0b737c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30130-01.html @@ -0,0 +1,4 @@ +Abyssal Celebrant Undrias:
+This sacred shrine is the only one of its kind on the entire continent. Yet the Humans spread lies about the goddess Shilen, denying that she is the giver of both life and death.
+When they invaded the Temple alongside those filthy Elves, many sacred objects were plundered. I especially mourn the loss of some exquisitely-crafted statues of Shilen. In fact, I have offered a sizable reward to anyone who recovers them... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30130-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30130-02.html new file mode 100644 index 0000000000..53df5beaeb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30130-02.html @@ -0,0 +1,3 @@ +Abyssal Celebrant Undrias:
+Is this a piece from one of the lost statues of Shilen? Where did you find it? If you can recover enough pieces to reconstruct a whole statue, you will be richly rewarded! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30130-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30130-03.html new file mode 100644 index 0000000000..d58efaee93 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30130-03.html @@ -0,0 +1,5 @@ +Abyssal Celebrant Undrias:
+One of the lost statues of Shilen! Give it to me and you will be richly rewarded, that I promise you!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30130-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30130-04.html new file mode 100644 index 0000000000..3f65076ffb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30130-04.html @@ -0,0 +1,3 @@ +Abyssal Celebrant Undrias:
+You have helped restore some of the splendor of the Temple of Shilen that was robbed from it by those Human and Elven vermin. Take this reward with my thanks. I will give you even more if you are able to recover any other lost statues. Go and serve your goddess faithfully! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30130-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30130-05.html new file mode 100644 index 0000000000..513f1d6d39 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30130-05.html @@ -0,0 +1,3 @@ +Abyssal Celebrant Undrias:
+This statue is sacred to us! It is of no use to you. In fact, the Humans would burn you at the stake if they found it in your possession! Now come to your senses and give me the statue. As I told you, you will be richly rewarded for your efforts. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-01.html new file mode 100644 index 0000000000..8f628548ec --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-01.html @@ -0,0 +1,3 @@ +Blacksmith Rupio:
+Are you a Black Lion mercenary? Why are you here? Have you come to have a weapon made? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-02.html new file mode 100644 index 0000000000..81030245c7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-02.html @@ -0,0 +1,5 @@ +Blacksmith Rupio:
+What can I do to help?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-03.html new file mode 100644 index 0000000000..7ba9c07240 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-03.html @@ -0,0 +1,3 @@ +Blacksmith Rupio:
+How did you know that my hobby was relic restoration? The restoration of a stone item to its original condition requires all the pieces. If you wish for me to restore this statue of the goddess, I must have all of the pieces, the head, torso, arms and legs. Do you understand? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-04.html new file mode 100644 index 0000000000..a24a4fd800 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-04.html @@ -0,0 +1,3 @@ +Blacksmith Rupio:
+Do you care to watch the master at work? First, I will attach the legs to the base... Then the torso above that... Now we match the joints of the arms and head properly... Voila! It's finished! The joints are still visible, but overall, it looks wonderful, don't you think? Hmm... Is this a statue of the goddess of Shilen? The detail is really quite enchanting... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-05.html new file mode 100644 index 0000000000..2bf09a13c9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-05.html @@ -0,0 +1,3 @@ +Blacksmith Rupio:
+Do you care to watch the master at work? First, I will attach the legs to the base... Then the torso above that... Now we match the joints of the arms and head properly... Oh my! I didn't expect that to happen! It just crumbled away... I realize that it was very old and fragile but.. I just applied some light pressure to connect... Oh, I am so sorry! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-06.html new file mode 100644 index 0000000000..4ba7f07a50 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-06.html @@ -0,0 +1,3 @@ +Blacksmith Rupio:
+How did you know that my hobby was relic restoration? Relics like tablets upon which words are written cannot be deciphered if there is even one piece missing. It isn't worth the effort to put the other pieces together. In my experience, square relics such as stone tablets often break into four pieces. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-07.html new file mode 100644 index 0000000000..23c15482fc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-07.html @@ -0,0 +1,3 @@ +Blacksmith Rupio:
+Would you care to watch the master at work? This fragment looks like it connects to the bottom of the tablet... And this piece goes above that... Like putting together a puzzle, isn't it?... Here we go! Finished! An ancient stone tablet... I wonder whether some secrets of history are written here? Hmm... It looks vaguely familiar.. These letters look like the language of the Titans... How in the world...?! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-08.html new file mode 100644 index 0000000000..8f0bedd1d3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30471-08.html @@ -0,0 +1,3 @@ +Blacksmith Rupio:
+Would you care to watch the master at work? Let's see, this fragment attaches to the bottom of the tablet... And this piece goes above that... Oh no! Why did it crumble like that? I suppose that it deteriorated from so many years exposed to the elements... I should have been more careful! How could I have been so careless! My most sincere apologies. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30531-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30531-01.html new file mode 100644 index 0000000000..9a439835fc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30531-01.html @@ -0,0 +1,3 @@ +First Elder Lockirin:
+I am fascinated by the civilization of the Titans. I'd pay anything to actually hold in my hands a Clay Tablet on which titan writing exists. I am sure that someone as well-traveled as yourself is familiar with such things. I have heard that Ancient Clay Tablets are often found in the Dion region... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30531-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30531-02.html new file mode 100644 index 0000000000..2802897501 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30531-02.html @@ -0,0 +1,4 @@ +First Elder Lockirin:
+Oh my! This Clay Tablet... Where in the world did you find this? Of course its just a fragment, but... Maphr...!
+Look at this! If you can obtain the other pieces and assemble them into a single tablet, I shall reward you handsomely! I promise this in the name of the First Elder of the Guild Federation! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30531-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30531-03.html new file mode 100644 index 0000000000..ba2bb380fa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30531-03.html @@ -0,0 +1,6 @@ +First Elder Lockirin:
+This Clay Tablet... Where in the world did you find this? It's just one part, but... Maphr...! How did you come across such a precious thing...?
+Check this out, my friend! If you will give me this fragment, I will give you a gift!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30531-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30531-04.html new file mode 100644 index 0000000000..bf63460b96 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30531-04.html @@ -0,0 +1,3 @@ +First Elder Lockirin:
+Thank you so much! Finally, our guild has a relic of our federation. Please accept this token of our appreciation! And if you should find more of these Clay Tablets in the future, please bring them to me! You will be rewarded handsomely! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30531-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30531-05.html new file mode 100644 index 0000000000..55116039ad --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30531-05.html @@ -0,0 +1,3 @@ +First Elder Lockirin:
+What! I offer you precious gifts and yet you refuse! Look here, you impertinent whip! Do you really think you can sell that tablet somewhere else for a higher price? I guarantee you that no one can best my offer. When you come to your senses, please come to see me again. You will be handsomely rewarded! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-01.htm new file mode 100644 index 0000000000..f7ccbad04a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-01.htm @@ -0,0 +1,4 @@ +Mercenary Captain Sophya:
+As I said, our mission is to drive out the evil spirits in this area. However, since the bulk of our military has been dispatched to Gludio our defensive forces are suffering a shortage. We are only just managing to keep the evil spirits at bay. I will hire as many tough-skinned fighters as I can find!
+(This quest may only be undertaken by a character of level 25 or above and possessing the Black Lion Mark.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-02.htm new file mode 100644 index 0000000000..de5ff731f5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-02.htm @@ -0,0 +1,5 @@ +Mercenary Captain Sophya:
+As I said, our mission is to drive the evil spirits from this area. Unfortunately, the bulk of our military has been dispatched to Gludio. At present we are only succeeding in keeping the demons at bay. I will hire every tough-skinned warrior I can get my hands on!
+Say, you seem like you have a lot of experience fighting evil spirits! You would certainly qualify to join our troop...Would you be interested in taking the test to join us? If so, go and meet with Captain Leopold in Gludin. Once you pass the test and bring back the Black Lion Mark, you will be initiated as one of our brothers and given the opportunity to join in the fight.
+(This quest may only be undertaken by a character of level 25 or above and possessing the "Black Lion Mark".) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-03.htm new file mode 100644 index 0000000000..2f2f04cf8d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-03.htm @@ -0,0 +1,5 @@ +Mercenary Captain Sophya:
+Dear brother of the Black Lion, we must drive the evil spirits from this area. Most of our troops have been dispatched to Gludio and we are only managing to hold the demons at bay.
+Fortunately, Captain Leopold of Gludin has sent many reinforcements, and we can finally launch a serious attack on the stronghold of the evil spirits. Please join us in this fight!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-04.htm new file mode 100644 index 0000000000..24632642f0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-04.htm @@ -0,0 +1,5 @@ +Mercenary Captain Sophya:
+The time has come for the black lion to pounce!
+Now, listen carefully. We have four targets to attack: The Execution Grounds, the Fortress of Resistance, the southern shoreline area and the Cruma Marshlands. Since we lack the resources to sustain a prolonged war, we will dispatch a small group of commandos to use guerrilla tactics to drive out the evil spirits.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-05.html new file mode 100644 index 0000000000..2e9abda661 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-05.html @@ -0,0 +1,7 @@ +Mercenary Captain Sophya:
+Which mission do you wish to learn more about?
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-06.html new file mode 100644 index 0000000000..fb5439ccb8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-06.html @@ -0,0 +1,5 @@ +Mercenary Captain Sophya:
+The Execution Grounds is located in the east part of the village. It is a haunted place where the never-ending cries of dead souls can be heard. Your mission is to purge that place of the undead that infest it. It is said that those doomed souls are being punished for their massacre of innocents during the farmers' uprising. Well, whatever the reason, we have a job to do. Still, I have a bad feeling about this.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-07.html new file mode 100644 index 0000000000..d98ec3e064 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-07.html @@ -0,0 +1,5 @@ +Mercenary Captain Sophya:
+This mission is to drive the remnants of the Grecian military force from the northwest part of Horseshoe Valley. You must not underestimate these opponents. They are the Ol Mahums of the Bloody Axe army, led by Blood Lord Nurka!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-08.html new file mode 100644 index 0000000000..ca108d59f6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-08.html @@ -0,0 +1,5 @@ +Mercenary Captain Sophya:
+The delu lizardmen were originally stationed by the shore area in the south of Giran. However, lately they have been infiltrating Dion territory. We don't know what they are up to yet, whether it is to find food or to prepare for a large-scale invasion. What is clear is that they are making their movements with clear determination. We must smash their units one by one and permanently discourage them from settling down in this area.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-09.html new file mode 100644 index 0000000000..eef888cd52 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-09.html @@ -0,0 +1,6 @@ +Mercenary Captain Sophya:
+We must rid the Cruma Marshlands of the evil stakato. The insect-like stakato is covered with tight scales and is equipped with two sharp forward claws. They are surprisingly quick. You must never underestimate them.
+To make matters worse, the marshlands are inhabited by giant leeches, spiders and evil spirits haunting the Tower of Giants. Needless to say, this place is quite treacherous, especially when trying to carry out military operations.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-10.html new file mode 100644 index 0000000000..a25fafc8b3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-10.html @@ -0,0 +1,4 @@ +Mercenary Captain Sophya:
+We must drive out the undead specters, sorrow maidens, neer crawlers, neer ghoul berserkers, strains and ghouls. When an undead is destroyed, it leaves behind a handful of ashes. Bring me back those ashes as proof of your victory. The more ashes of undead that you bring, the greater shall be your reward. Since you served under Captain Leopold, you know the rules of proofs and rewards, am I right?
+Now hurry! Prepare for combat and leave for the Execution Grounds immediately. Prove that the undead are no match for the Black Lion guild! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-11.html new file mode 100644 index 0000000000..913d7b533d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-11.html @@ -0,0 +1,5 @@ +Mercenary Captain Sophya:
+You must defeat the Ol Mahum guerrillas, raiders, marksmen, sergeants and captains.
+As proof that you have defeated them you must bring back the Bloody Axe Insignia, the symbol of the Partisan army. The more insignias you bring, the greater shall be your reward. Since you served under Captain Leopold, you know the rules of proof and rewards, am I right?
+Now hurry to the Fortress of Resistance. Deliver the wrath of the Black Lion upon those Ol Mahums! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-12.html new file mode 100644 index 0000000000..35f1c05192 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-12.html @@ -0,0 +1,5 @@ +Mercenary Captain Sophya:
+You must kill the delu lizardmen, including their scouts and warriors. Take care, for although they are similar to the felim and langk lizardmen, they are much more dangerous.
+As proof of their death you must bring me their teeth. The more of their teeth you bring, the greater shall be your reward. Since you served under Captain Leopold, you already know the rules of proofs and rewards, am I right?
+Time is of the essence, you must go and destroy them! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-13.html new file mode 100644 index 0000000000..4d6e1c9f91 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-13.html @@ -0,0 +1,4 @@ +Mercenary Captain Sophya:
+You must go and destroy the marsh stakatos, including their workers, soldiers and drones. As proof of your victory, bring me their claws. The more claws you bring, the greater shall be your reward.
+Now, prepare for combat and set off for the Cruma Marshlands immediately. Let those filthy stakatos feel the wrath of the Black Lion! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-14.html new file mode 100644 index 0000000000..5ee52f42a5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-14.html @@ -0,0 +1,4 @@ +Mercenary Captain Sophya:
+Dear Black Lion brother, the war with the evil spirits has begun! Will you join our struggle?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-15.html new file mode 100644 index 0000000000..9f200c5588 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-15.html @@ -0,0 +1,5 @@ +Mercenary Captain Sophya:
+Dear brother of the Black Lion, shouldn't you be on the battlefield?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-15a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-15a.html new file mode 100644 index 0000000000..a3126cc4dc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-15a.html @@ -0,0 +1,9 @@ +Mercenary Captain Sophya:
+Dear brother of the Black Lion, shouldn't you be on the battlefield?
+Ah, that box looks familiar... It's a traders union Cargo Box. Since we have no agreement regarding the return of a Cargo Box, we aren't obliged to return the cargo to the traders. But if we return it perhaps they will give us a reward!
+If you don't want to deal with traders, you can go see Redfoot. He is an expert in disposing of stolen property.
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-16.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-16.html new file mode 100644 index 0000000000..57121519e3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-16.html @@ -0,0 +1,3 @@ +Mercenary Captain Sophya:
+You must hurry to the battlefield and triumph over your enemies! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-17a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-17a.html new file mode 100644 index 0000000000..808526c73b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-17a.html @@ -0,0 +1,3 @@ +Mercenary Captain Sophya:
+Here is the mark of the Lion's Eye. It acknowledges your distinguished service on the battlefield. I am sure your victories will continue! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-18b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-18b.html new file mode 100644 index 0000000000..4b7ab03984 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-18b.html @@ -0,0 +1,3 @@ +Mercenary Captain Sophya:
+Here is the mark of the Lion's Eye. It acknowledges your distinguished service on the battlefield. New supplies have been issued to you. These are expendable goods that are essential in combat, you must store and guard them well! I am sure your victories will continue! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-19b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-19b.html new file mode 100644 index 0000000000..4babb97a62 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-19b.html @@ -0,0 +1,3 @@ +Mercenary Captain Sophya:
+New supplies have been issued for you. Since they are expendable goods that are essential in combat, store and guard them well! I am confident your victories will continue. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-20.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-20.html new file mode 100644 index 0000000000..2089cf29ab --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-20.html @@ -0,0 +1,5 @@ +Mercenary Captain Sophya:
+Even the mightiest lion sleeps. Go to the village and rest. Mercenaries must save their energies for battle.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-21.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-21.html new file mode 100644 index 0000000000..7c5d8e7909 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-21.html @@ -0,0 +1,7 @@ +Mercenary Captain Sophya:
+Why do you wish to leave the Black Lion troop? Oh well, no need to explain yourself to me, but heed my words... There is no path for you but the one of the warrior. No matter what you do or where you go you are destined for the battlefield.
+Anyways, if you really want to withdraw from this Mercenary Troop, you must know this. Once you withdraw, you must return the symbol of the Black Lion Mercenaries since you are not a Black Lion mercenary any more. Moreover, you will not be able to enjoy all the benefits given to the Black Lion Mercenaries that you've been using. For instance, you cannot get a reward for collecting Cargo Boxes, Statues of Shilen, pieces of Fragment of Ancient Tablet, etc. If you want to use the benefits, you will have to obtain the symbol of the Black Lion Mercenaries first. Think about it again thoroughly.
+However, you will receive discharge pay according to your service.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-22.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-22.html new file mode 100644 index 0000000000..1232c9fc29 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-22.html @@ -0,0 +1,5 @@ +Mercenary Captain Sophya:
+Good job! You will be amply rewarded.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-23.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-23.html new file mode 100644 index 0000000000..cf98404b06 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-23.html @@ -0,0 +1,9 @@ +Mercenary Captain Sophya:
+Good job! You will be amply rewarded.
+Ah, that box looks familiar... It's a traders union Cargo Box. Since we have no agreement regarding the return of a Cargo Box, we aren't obliged to return the cargo to the traders. But if we return it perhaps they will give us a reward!
+If you don't want to deal with traders, you can go see Redfoot. He is an expert in disposing of stolen property.
+ + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-24a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-24a.html new file mode 100644 index 0000000000..2870fd8986 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-24a.html @@ -0,0 +1,6 @@ +Mercenary Captain Sophya:
+Ah yes, Redfoot. He is hard to be around but harder to do without. His primary job is the delivery of military supplies, he does business on the side brokering stolen loot and war trophies. He is also a valuable source of information. You should consult with him often.
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-25b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-25b.html new file mode 100644 index 0000000000..07da5aa52f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-25b.html @@ -0,0 +1,6 @@ +Mercenary Captain Sophya:
+This Cargo Box bears the seal of the Aden Traders Guild. If you wish to return it to them, take it to Morgan at the magic grocery store. He works for that guild.
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-26.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-26.html new file mode 100644 index 0000000000..bd0d1337dc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30735-26.html @@ -0,0 +1,3 @@ +Mercenary Captain Sophya:
+If you have your mind made up, I won't try to change it. Please return the Black Lion Mark. We are no longer comrades. Here is your pay. Take it and go. Perhaps one day we will draw our swords together again. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-01.html new file mode 100644 index 0000000000..5845416bd8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-01.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+Hey friend, did you say that you are on active duty? I salute your honorable service! Is there anything I can do to help?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-02.html new file mode 100644 index 0000000000..94b37e5db6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-02.html @@ -0,0 +1,6 @@ +Mercenary Redfoot:
+Hey friend, did you say that you are on active duty? I salute your honorable service! Is there anything I can do to help?
+What kind of box is that...? Oh, I recognize it now. That's a Cargo Box used by traders. Since you brought it to me I assume you have no intention of returning it to its owner, am I right? Yes, I see. Of course I'll open the box for you and give you the contents. I will charge you a small fee for my service. I think 650 Adena will be appropriate. Think of it as the cost of opening the box and keeping my mouth shut.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-03.html new file mode 100644 index 0000000000..e3232ce723 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-03.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+You don't have enough money! Come back when you have 650 Adena.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04a.html new file mode 100644 index 0000000000..62e094fc05 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04a.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Shall we open the box? This lock should be no problem for me... There we go... That was too easy. Now, what do we have here?
+Fruit...? Ah, apples from Gludio! Yum, they look delicious. If you can get them to market before they spoil, you should be able to make some money.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04b.html new file mode 100644 index 0000000000..7635a11706 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04b.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Shall we open the box? This lock should be no problem for me... There we go... That was too easy. Now, what do we have here?
+Hmm, isn't this corn meal? Pig food! You should take it to the market and sell it since it is of no use to you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04c.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04c.html new file mode 100644 index 0000000000..ffcca307ab --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04c.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Shall we open the box? This lock should be no problem for me... There we go... That was too easy. Now, what do we have here?
+What's this, Dire Wolf Pelts? They appear to have been tanned by a leather craftman, but not very well. They could possibly be used to make hats. You should be able to sell these at the market.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04d.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04d.html new file mode 100644 index 0000000000..911c113462 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04d.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Shall we open the box? This lock should be no problem for me... There we go... That was too easy. Now, what do we have here?
+A gem? Ah, a Moonstone! This should fetch a good price at the market.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04e.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04e.html new file mode 100644 index 0000000000..ba49318d64 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04e.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Shall we open the box? This lock should be no problem for me... There we go... That was too easy. Now, what do we have here?
+Hmm? What's this powder...? Do I dare taste it? Ah, this must be Gludio Wheat Flour! It can be used for baking bread. You should be able to get a decent price at the market.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04f.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04f.html new file mode 100644 index 0000000000..8e6b90edc7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04f.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Shall we open the box? This lock should be no problem for me... There we go... That was too easy. Now, what do we have here?
+It's Spidersilk Rope! It's a very strong and light rope that is made from the spidersilk that is collected from the tarantula's webs in the Spine Mountain Range. If you take it to a store, you should be able to get a very good price for it.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04g.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04g.html new file mode 100644 index 0000000000..25060d7d8f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04g.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+Shall we open the box? This lock should be no problem for me... There we go... That was too easy. Now, what do we have here?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04h.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04h.html new file mode 100644 index 0000000000..0e24f6b947 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04h.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Shall we open the box? This lock should be no problem for me... There we go... That was too easy. Now, what do we have here?
+A silver bowl and a teacup? They seem to be of high quality! It appears that they were made by Elven Artisans. I don't buy such exquisite items but if you take them to a store, you should be able to sell them for a good price.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04i.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04i.html new file mode 100644 index 0000000000..2734b5d375 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04i.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Shall we open the box? This lock should be no problem for me... There we go... That was too easy. Now, what do we have here?
+Machine parts? This appears to be the mark of the Black Anvil Guild. I'm not sure, but I think these parts are used by Dwarves to repair golems. If you take them to a store you should be able to sell them for a good price.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04j.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04j.html new file mode 100644 index 0000000000..c7816b77ee --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04j.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Shall we open the box? This lock should be no problem for me... There we go... That was too easy. Now, what do we have here?
+A gem...? Ah, a Fire Emerald! It's a rare and precious gemstone that gives off a red light when exposed to sunlight. You are very lucky! This will fetch a very good price at market.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04k.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04k.html new file mode 100644 index 0000000000..b175275603 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04k.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Shall we open the box? This lock should be no problem for me... There we go... That was too easy. Now, what do we have here?
+Ah, a silk dress, and a very expensive one by the looks of it! Notice the design. This was imported from Avella of the east. Who would order such an expensive item at a time like this? This should fetch a high price at a store.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04l.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04l.html new file mode 100644 index 0000000000..25060d7d8f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04l.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+Shall we open the box? This lock should be no problem for me... There we go... That was too easy. Now, what do we have here?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04m.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04m.html new file mode 100644 index 0000000000..8eb6db53aa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04m.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Shall we open the box? This lock should be no problem for me... There we go... That was too easy. Now, what do we have here?
+Oh, my, I don't believe it! An Imperial Diamond! I believe this stone once decorated the crown of the king of Elmoreden! Isn't it beautiful! You are extremely lucky! It is priceless! This gem should fetch a fortune at the market!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04n.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04n.html new file mode 100644 index 0000000000..1b0d03d7e4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04n.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Shall we open the box? This lock should be no problem for me... There we go... That was too easy. Now, what do we have here?
+A fragment of stone? It appears to be a piece of a statue of the goddess Shilen. Isn't she the goddess of death? I have a bad feeling about this. If this was a complete statue, it would fetch a huge amount of money. Blacksmith Rupio can repair a broken relic like this... If you collect all the fragments of the statue and take them to him, he will restore the statue.
+ +. \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04o.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04o.html new file mode 100644 index 0000000000..c63d45a849 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-04o.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Shall we open the box? This lock should be no problem for me... There we go... That was too easy. Now, what do we have here?
+A broken tablet fragment? Hmm... What are these symbols? Could this be a relic from ancient times? If this were a complete tablet, it would be a very valuable historical object. You should find all the fragments of the tablet and take them to Blacksmith Rupio. He specializes in the restoration of relics.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-05.html new file mode 100644 index 0000000000..25ccaba644 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-05.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+What sort of idiot asks to have a box opened when he doesn't have one?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-06.html new file mode 100644 index 0000000000..b6d1159672 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-06.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Is there anything else I can help you with?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-07.html new file mode 100644 index 0000000000..8158b83da6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-07.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+Hey, you don't have enough money! You didn't think I would give you information for free, did you? This is business!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08.html new file mode 100644 index 0000000000..ea0ea25897 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+Sorry, I don't have any new information for you. You might try again later.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08a.html new file mode 100644 index 0000000000..b4212e4229 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08a.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+Once I overheard some Dwarves talking in a blacksmith's shop... The one that seemed to be in charge was desperately seeking a scroll, something about hieroglyphs. I couldn't make out the details, but it had something to do with ancient technology. Until then I had thought that Dwarves were only capable of working in blacksmith shops and warehouses. Now I know that they have been seriously underestimated by the Humans.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08b.html new file mode 100644 index 0000000000..2930dd5cd6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08b.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+One time while talking with some friends in the Dark Elf Guild, I learned that Dark Elves worship the Goddess Shilen! You say everyone already knows that? Well I find it shocking.
+Why would anyone want to worship a goddess of death? It doesn't make sense! I have heard that the Dark Elves' Shilen Temple in the Dark Forest is spectacular. There are rumors that abyssal celebrants there are gathering fragments of the statue of Goddess Shilen from everywhere!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08c.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08c.html new file mode 100644 index 0000000000..afc7e80356 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08c.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+A hatchling is a cute baby dragon hatched from the egg of a Wyrm or a drake. I have heard of a pet handler named Cooper who knows how to raise a hatchling as a pet. He is the man to see if you are interested in obtaining a hatchling.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08d.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08d.html new file mode 100644 index 0000000000..bc55c8d669 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08d.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+I can tell you things that would be very useful for a clan leader to know. There are aristocrats in all areas who support small clans. These aristocrats include Sir Kristof Rodemai in the Town of Giran and Sir Gustav Athebaldt of the Town of Oren. They are not exactly philanthropists. They expect something in return for their support.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08e.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08e.html new file mode 100644 index 0000000000..4b662afed6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08e.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+I know of a society of ancient coin collectors. Once I thought they were collectors of cheap novelty coins, but I have discovered since that the objects of their affection have great value. They will trade very valuable things for coins that strike their fancy! If you are interested in meeting them, you should find a Dwarf named Sorint in Hunters Village.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08f.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08f.html new file mode 100644 index 0000000000..47b6b8ecdd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08f.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+Near the Ivory Tower in Oren you will find a false alchemist. She claims to be able to create a magic potion to make wishes come true... Many have fallen victim to his trickery. Amazingly, occasionally the potion actually seems to work. The problem is that this only happens very infrequently.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08g.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08g.html new file mode 100644 index 0000000000..071b05347f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08g.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+Shhh! Come closer and I'll tell you a secret. You will find this very useful. Recently I overheard some traders discussing the theft of a priceless gem known as the Imperial Diamond from the cargo wagon of the Aden Business Association. How I would love to gaze upon it just once before I die!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08h.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08h.html new file mode 100644 index 0000000000..2a3dd56292 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08h.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Have you heard the rumor that Antharas the Land Dragon has awoken? This is terrible news! If it emerges from its lair in Dragon Valley, all of the Giran region will fall into a state of pandemonium!
+A woman named Gabrielle in the Town of Giran is recruiting people for a militia to catch Antharas. Does she really think that they will have any chance against the dragon? I fear they do not!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08i.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08i.html new file mode 100644 index 0000000000..427d2619fa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08i.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+In this village there is a young man named Jonas who dreams of becoming the best chef in the kingdom. He is preparing for a culinary competition and seeks an adventurer to find ingredients for some exotic dishes...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08j.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08j.html new file mode 100644 index 0000000000..c29c549b24 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08j.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+There is a young guard named Belton in the Town of Giran whose heart burns for revenge on Antharas. He will not listen to reason. Every day he can be found making his special arrows. He pays well for the raw materials he needs. If you're interested, why don't you go and see him?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08k.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08k.html new file mode 100644 index 0000000000..684c1093e1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08k.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+I will tell you something every traveler should know. The law says that traders of this kingdom are prohibited from dealing with criminals. But some traders such as the grocer Pano of Floran Village and Tyra, a trader in the west part of the Dark Forest flaunt this law. Even though their desire for profit is admirable, I think it is shameful for them to break the law like that.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08l.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08l.html new file mode 100644 index 0000000000..ba480b6333 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08l.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Are you looking for a job? In the northwest part of Gludio there is a farmer named Piotur who is hiring mercenaries to drive the Turek orcs away from his farm... This sounds like a good job for you, doesn't it?
+By the way, are you aware that ancient relics are often found there? Many have gone there to deal with Turek orcs and come away with priceless relics!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08m.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08m.html new file mode 100644 index 0000000000..0d5635173a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08m.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Have you heard of the association of human traders known as the Aden Business Guild? They became aware of the great profits that Dwarven traders and warehouse keepers were generating. They decided to form a guild of their own. They don't realize how important the Dwarven business instinct is. No matter how hard they try, they will never keep up with Dwarves.
+To add insult to injury, they have suffered great losses from attacks by evil spirits on their trade routes.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08n.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08n.html new file mode 100644 index 0000000000..2930dd5cd6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08n.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+One time while talking with some friends in the Dark Elf Guild, I learned that Dark Elves worship the Goddess Shilen! You say everyone already knows that? Well I find it shocking.
+Why would anyone want to worship a goddess of death? It doesn't make sense! I have heard that the Dark Elves' Shilen Temple in the Dark Forest is spectacular. There are rumors that abyssal celebrants there are gathering fragments of the statue of Goddess Shilen from everywhere!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08o.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08o.html new file mode 100644 index 0000000000..a1c915241b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08o.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+A hatchling is a cute baby dragon hatched from the egg of a Wyrm or a drake. I have heard of a pet handler named Cooper who knows how to raise a hatchling as a pet. He is the man to see if you are interested in obtaining a hatchling!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08p.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08p.html new file mode 100644 index 0000000000..bc55c8d669 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08p.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+I can tell you things that would be very useful for a clan leader to know. There are aristocrats in all areas who support small clans. These aristocrats include Sir Kristof Rodemai in the Town of Giran and Sir Gustav Athebaldt of the Town of Oren. They are not exactly philanthropists. They expect something in return for their support.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08q.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08q.html new file mode 100644 index 0000000000..88f9ea63ce --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08q.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+I know of a society of ancient coin collectors. Once I thought they were collectors of cheap novelty coins, but I have discovered since that the objects of their affection have great value. They will trade very valuable things for coins that strike their fancy! If you are interested in meeting them, you should meet a Dwarf called Sorint in Hunters Village.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08r.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08r.html new file mode 100644 index 0000000000..3b141fe484 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08r.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+Near the Ivory Tower in Oren you will find a false alchemist. She claims to be able to create a magic potion to make wishes come true... Many have fallen victim to his trickery. Amazingly, occasionally the potion actually seems to work. The problem is that this only happens very infrequently.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08s.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08s.html new file mode 100644 index 0000000000..9c396d773f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08s.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+Mercenary Redfoot
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08t.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08t.html new file mode 100644 index 0000000000..98300d2691 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-08t.html @@ -0,0 +1,5 @@ +Mercenary Redfoot:
+Have you heard the rumor that Antharas the Land Dragon has awoken? This is terrible news! If it emerges from its lair in Dragon Valley, all of Giran region will fall into a state of pandemonium!
+A woman named Gabrielle in the Town of Giran is recruiting people for a militia to catch Antharas. Does she really think that they will have any chance against the dragon? I fear they do not!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-09.html new file mode 100644 index 0000000000..c91d6d587b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30736-09.html @@ -0,0 +1,4 @@ +Mercenary Redfoot:
+Is there anything else I can do for you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-01.html new file mode 100644 index 0000000000..e1367c84fd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-01.html @@ -0,0 +1,3 @@ +Guildsman Morgan:
+Ah, a member of the Black Lion Mercenaries! I have heard of your efforts to kill the evil creatures in this area. Keep up the good work! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-02.html new file mode 100644 index 0000000000..ab34624d34 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-02.html @@ -0,0 +1,4 @@ +Guildsman Morgan:
+Ah, a member of the Black Lion Mercenaries! I have heard of your efforts to kill the evil creatures in this area. Keep up the good work! Is there anything I can do for you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-03.html new file mode 100644 index 0000000000..78de8b8f2c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-03.html @@ -0,0 +1,5 @@ +Guildsman Morgan:
+This freight box is from our commercial guild! It is part of the shipment that was recently stolen from our carts by evil creatures! Our losses from that robbery were staggering. Thank you for recovering this part of it.
+As a representative of the commercial guild, Please take these coins from our guild as a token of our appreciation.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-04.html new file mode 100644 index 0000000000..74d14816fc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-04.html @@ -0,0 +1,4 @@ +Guildsman Morgan:
+Ah, another freight box! Thank you again. We are losing many of our shipments to bandits. Without the help of mercenaries like you our losses would be much greater. Please take these coins from our guild as a token of our appreciation. Keep up the good work!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-05.html new file mode 100644 index 0000000000..de2c17e9f4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-05.html @@ -0,0 +1,5 @@ +Guildsman Morgan:
+I cannot thank you enough for recovering our stolen freight boxes. If our commercial guild was in a better financial situation, we would hire competent mercenaries like you as bodyguards... We would surely be safe then!
+Your reward was substantially increased after I spoke to my superiors about the hard work you have been doing for our guild. You have earned it, please take it without refusing.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-06.html new file mode 100644 index 0000000000..bf551c3209 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-06.html @@ -0,0 +1,3 @@ +Guildsman Morgan:
+That's not a freight box! What are you talking about? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-07.html new file mode 100644 index 0000000000..21eed539ce --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/30737-07.html @@ -0,0 +1,4 @@ +Guildsman Morgan:
+Is there anything I can do for you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/Q00333_HuntOfTheBlackLion.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/Q00333_HuntOfTheBlackLion.java new file mode 100644 index 0000000000..58b676d48d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00333_HuntOfTheBlackLion/Q00333_HuntOfTheBlackLion.java @@ -0,0 +1,1188 @@ +/* + * 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.Q00333_HuntOfTheBlackLion; + +import com.l2jmobius.gameserver.enums.CategoryType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.itemcontainer.Inventory; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.util.Util; + +/** + * Hunt Of The Black Lion (333) + * @author ivantotov + */ +public final class Q00333_HuntOfTheBlackLion extends Quest +{ + // NPCs + private static final int ABYSSAL_CELEBRANT_UNDRIAS = 30130; + private static final int BLACKSMITH_RUPIO = 30471; + private static final int IRON_GATES_LOCKIRIN = 30531; + private static final int MERCENARY_CAPTAIN_SOPHYA = 30735; + private static final int MERCENARY_REEDFOOT = 30736; + private static final int GUILDSMAN_MORGON = 30737; + // Items + private static final int BLACK_LION_MARK = 1369; + private static final int CARGO_BOX_1ST = 3440; + private static final int CARGO_BOX_2ND = 3441; + private static final int CARGO_BOX_3RD = 3442; + private static final int CARGO_BOX_4TH = 3443; + private static final int STATUE_OF_SHILEN_HEAD = 3457; + private static final int STATUE_OF_SHILEN_TORSO = 3458; + private static final int STATUE_OF_SHILEN_ARM = 3459; + private static final int STATUE_OF_SHILEN_LEG = 3460; + private static final int COMPLETE_STATUE_OF_SHILEN = 3461; + private static final int FRAGMENT_OF_ANCIENT_TABLET_1ST_PIECE = 3462; + private static final int FRAGMENT_OF_ANCIENT_TABLET_2ND_PIECE = 3463; + private static final int FRAGMENT_OF_ANCIENT_TABLET_3RD_PIECE = 3464; + private static final int FRAGMENT_OF_ANCIENT_TABLET_4TH_PIECE = 3465; + private static final int COMPLETE_ANCIENT_TABLET = 3466; + private static final int SOPHYAS_1ST_ORDER = 3671; + private static final int SOPHYAS_2ND_ORDER = 3672; + private static final int SOPHYAS_3RD_ORDER = 3673; + private static final int SOPHYAS_4TH_ORDER = 3674; + private static final int LIONS_CLAW = 3675; + private static final int LIONS_EYE = 3676; + private static final int GUILD_COIN = 3677; + private static final int UNDEAD_ASH = 3848; + private static final int BLOODY_AXE_INSIGNIA = 3849; + private static final int DELU_LIZARDMAN_FANG = 3850; + private static final int STAKATO_TALON = 3851; + // Rewards + private static final int ALACRITY_POTION = 735; + private static final int SCROL_OF_ESCAPE = 736; + private static final int HELING_POTION = 1061; + private static final int SOULSHOT_D_GRADE = 1463; + private static final int SPIRITSHOT_D_GRADE = 2510; + private static final int GLUDIO_APPLES = 3444; + private static final int DION_CORN_MEAL = 3445; + private static final int DIRE_WOLF_PELTS = 3446; + private static final int MOONSTONE = 3447; + private static final int GLUDIO_WHEAT_FLOUR = 3448; + private static final int SPIDERSILK_ROPE = 3449; + private static final int ALEXANDRITE = 3450; + private static final int SILVER_TEA_SERVICE = 3451; + private static final int MECHANIC_GOLEM_SPACE_PARTS = 3452; + private static final int FIRE_EMERALD = 3453; + private static final int AVELLAN_SILK_FROCK = 3454; + private static final int FERIOTIC_PORCELAIN_URM = 3455; + private static final int IMPERIAL_DIAMOND = 3456; + // Monster + private static final int MARSH_STAKATO = 20157; + private static final int NEER_CRAWLER = 20160; + private static final int SPECTER = 20171; + private static final int SORROW_MAIDEN = 20197; + private static final int NEER_CRAWLER_BERSERKER = 20198; + private static final int STRAIN = 20200; + private static final int GHOUL = 20201; + private static final int OL_MAHUM_GUERILLA = 20207; + private static final int OL_MAHUM_RAIDER = 20208; + private static final int OL_MAHUM_MARKSMAN = 20209; + private static final int OL_MAHUM_SERGEANT = 20210; + private static final int OL_MAHUM_CAPTAIN = 20211; + private static final int MARSH_STAKATO_WORKER = 20230; + private static final int MARSH_STAKATO_SOLDIER = 20232; + private static final int MARSH_STAKATO_DRONE = 20234; + private static final int DELU_LIZARDMAN = 20251; + private static final int DELU_LIZARDMAN_SCOUT = 20252; + private static final int DELU_LIZARDMAN_WARRIOR = 20253; + // Quest Monster + private static final int DELU_LIZARDMAN_HEADHUNTER = 27151; + private static final int MARSH_STAKATO_MARQUESS = 27152; + // Misc + private static final int MIN_LEVEL = 25; + + public Q00333_HuntOfTheBlackLion() + { + super(333); + addStartNpc(MERCENARY_CAPTAIN_SOPHYA); + addTalkId(MERCENARY_CAPTAIN_SOPHYA, ABYSSAL_CELEBRANT_UNDRIAS, BLACKSMITH_RUPIO, IRON_GATES_LOCKIRIN, MERCENARY_REEDFOOT, GUILDSMAN_MORGON); + addKillId(MARSH_STAKATO, NEER_CRAWLER, SPECTER, SORROW_MAIDEN, NEER_CRAWLER_BERSERKER, STRAIN, GHOUL, OL_MAHUM_GUERILLA, OL_MAHUM_RAIDER, OL_MAHUM_MARKSMAN, OL_MAHUM_SERGEANT, OL_MAHUM_CAPTAIN, MARSH_STAKATO_WORKER, MARSH_STAKATO_SOLDIER, MARSH_STAKATO_DRONE, DELU_LIZARDMAN, DELU_LIZARDMAN_SCOUT, DELU_LIZARDMAN_WARRIOR, DELU_LIZARDMAN_HEADHUNTER, MARSH_STAKATO_MARQUESS); + registerQuestItems(BLACK_LION_MARK, CARGO_BOX_1ST, CARGO_BOX_2ND, CARGO_BOX_3RD, CARGO_BOX_4TH, STATUE_OF_SHILEN_HEAD, STATUE_OF_SHILEN_TORSO, STATUE_OF_SHILEN_ARM, STATUE_OF_SHILEN_LEG, COMPLETE_STATUE_OF_SHILEN, FRAGMENT_OF_ANCIENT_TABLET_1ST_PIECE, FRAGMENT_OF_ANCIENT_TABLET_2ND_PIECE, FRAGMENT_OF_ANCIENT_TABLET_3RD_PIECE, FRAGMENT_OF_ANCIENT_TABLET_4TH_PIECE, COMPLETE_ANCIENT_TABLET, SOPHYAS_1ST_ORDER, SOPHYAS_2ND_ORDER, SOPHYAS_3RD_ORDER, SOPHYAS_4TH_ORDER, LIONS_CLAW, LIONS_EYE, GUILD_COIN, UNDEAD_ASH, BLOODY_AXE_INSIGNIA, DELU_LIZARDMAN_FANG, STAKATO_TALON); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + final int chance = getRandom(100); + final int chance1 = getRandom(100); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "30735-04.htm": + { + if (qs.isCreated()) + { + qs.startQuest(); + htmltext = event; + } + break; + } + case "30735-05.html": + case "30735-06.html": + case "30735-07.html": + case "30735-08.html": + case "30735-09.html": + case "30130-05.html": + case "30531-05.html": + case "30735-21.html": + case "30735-24a.html": + case "30735-25b.html": + case "30736-06.html": + case "30736-09.html": + case "30737-07.html": + { + htmltext = event; + break; + } + case "30735-10.html": + { + if (!hasQuestItems(player, SOPHYAS_1ST_ORDER)) + { + giveItems(player, SOPHYAS_1ST_ORDER, 1); + htmltext = event; + } + break; + } + case "30735-11.html": + { + if (!hasQuestItems(player, SOPHYAS_2ND_ORDER)) + { + giveItems(player, SOPHYAS_2ND_ORDER, 1); + htmltext = event; + } + break; + } + case "30735-12.html": + { + if (!hasQuestItems(player, SOPHYAS_3RD_ORDER)) + { + giveItems(player, SOPHYAS_3RD_ORDER, 1); + htmltext = event; + } + break; + } + case "30735-13.html": + { + if (!hasQuestItems(player, SOPHYAS_4TH_ORDER)) + { + giveItems(player, SOPHYAS_4TH_ORDER, 1); + htmltext = event; + } + break; + } + case "30735-16.html": + { + if (getQuestItemsCount(player, LIONS_CLAW) < 10) + { + htmltext = event; + } + else if ((getQuestItemsCount(player, LIONS_CLAW) >= 10) && (getQuestItemsCount(player, LIONS_EYE) < 4)) + { + giveItems(player, LIONS_EYE, 1); + if (chance < 25) + { + giveItems(player, HELING_POTION, 20); + } + else if (chance < 50) + { + if (player.isInCategory(CategoryType.FIGHTER_GROUP)) + { + giveItems(player, SOULSHOT_D_GRADE, 100); + } + else if (player.isInCategory(CategoryType.MAGE_GROUP)) + { + giveItems(player, SPIRITSHOT_D_GRADE, 50); + } + } + else if (chance < 75) + { + giveItems(player, SCROL_OF_ESCAPE, 20); + } + else + { + giveItems(player, ALACRITY_POTION, 3); + } + takeItems(player, LIONS_CLAW, 10); + htmltext = "30735-17a.html"; + } + else if ((getQuestItemsCount(player, LIONS_CLAW) >= 10) && (getQuestItemsCount(player, LIONS_EYE) >= 4) && (getQuestItemsCount(player, LIONS_EYE) <= 7)) + { + giveItems(player, LIONS_EYE, 1); + if (chance < 25) + { + giveItems(player, HELING_POTION, 25); + } + else if (chance < 50) + { + if (player.isInCategory(CategoryType.FIGHTER_GROUP)) + { + giveItems(player, SOULSHOT_D_GRADE, 200); + } + else if (player.isInCategory(CategoryType.MAGE_GROUP)) + { + giveItems(player, SPIRITSHOT_D_GRADE, 100); + } + } + else if (chance < 75) + { + giveItems(player, SCROL_OF_ESCAPE, 20); + } + else + { + giveItems(player, ALACRITY_POTION, 3); + } + takeItems(player, LIONS_CLAW, 10); + htmltext = "30735-18b.html"; + } + else if ((getQuestItemsCount(player, LIONS_CLAW) >= 10) && (getQuestItemsCount(player, LIONS_EYE) >= 8)) + { + takeItems(player, LIONS_EYE, 8); + if (chance < 25) + { + giveItems(player, HELING_POTION, 50); + } + else if (chance < 50) + { + if (player.isInCategory(CategoryType.FIGHTER_GROUP)) + { + giveItems(player, SOULSHOT_D_GRADE, 400); + } + else if (player.isInCategory(CategoryType.MAGE_GROUP)) + { + giveItems(player, SPIRITSHOT_D_GRADE, 200); + } + } + else if (chance < 75) + { + giveItems(player, SCROL_OF_ESCAPE, 30); + } + else + { + giveItems(player, ALACRITY_POTION, 4); + } + takeItems(player, LIONS_CLAW, 10); + htmltext = "30735-19b.html"; + } + break; + } + case "30735-20.html": + { + takeItems(player, SOPHYAS_1ST_ORDER, -1); + takeItems(player, SOPHYAS_2ND_ORDER, -1); + takeItems(player, SOPHYAS_3RD_ORDER, -1); + takeItems(player, SOPHYAS_4TH_ORDER, -1); + htmltext = event; + break; + } + case "30735-26.html": + { + if (hasQuestItems(player, BLACK_LION_MARK)) + { + giveAdena(player, 12400, true); + qs.exitQuest(true, true); + htmltext = event; + } + break; + } + case "30130-04.html": + { + if (hasQuestItems(player, COMPLETE_STATUE_OF_SHILEN)) + { + giveAdena(player, 30000, true); + takeItems(player, COMPLETE_STATUE_OF_SHILEN, 1); + htmltext = event; + } + break; + } + case "30471-03.html": + { + if (!hasQuestItems(player, STATUE_OF_SHILEN_HEAD, STATUE_OF_SHILEN_TORSO, STATUE_OF_SHILEN_ARM, STATUE_OF_SHILEN_LEG)) + { + htmltext = event; + } + else + { + if (getRandom(100) < 50) + { + giveItems(player, COMPLETE_STATUE_OF_SHILEN, 1); + takeItems(player, STATUE_OF_SHILEN_HEAD, 1); + takeItems(player, STATUE_OF_SHILEN_TORSO, 1); + takeItems(player, STATUE_OF_SHILEN_ARM, 1); + takeItems(player, STATUE_OF_SHILEN_LEG, 1); + htmltext = "30471-04.html"; + } + else + { + takeItems(player, STATUE_OF_SHILEN_HEAD, 1); + takeItems(player, STATUE_OF_SHILEN_TORSO, 1); + takeItems(player, STATUE_OF_SHILEN_ARM, 1); + takeItems(player, STATUE_OF_SHILEN_LEG, 1); + htmltext = "30471-05.html"; + } + } + break; + } + case "30471-06.html": + { + if (!hasQuestItems(player, FRAGMENT_OF_ANCIENT_TABLET_1ST_PIECE, FRAGMENT_OF_ANCIENT_TABLET_2ND_PIECE, FRAGMENT_OF_ANCIENT_TABLET_3RD_PIECE, FRAGMENT_OF_ANCIENT_TABLET_4TH_PIECE)) + { + htmltext = event; + } + else + { + if (getRandom(100) < 50) + { + giveItems(player, COMPLETE_ANCIENT_TABLET, 1); + takeItems(player, FRAGMENT_OF_ANCIENT_TABLET_1ST_PIECE, 1); + takeItems(player, FRAGMENT_OF_ANCIENT_TABLET_2ND_PIECE, 1); + takeItems(player, FRAGMENT_OF_ANCIENT_TABLET_3RD_PIECE, 1); + takeItems(player, FRAGMENT_OF_ANCIENT_TABLET_4TH_PIECE, 1); + htmltext = "30471-07.html"; + } + else + { + takeItems(player, FRAGMENT_OF_ANCIENT_TABLET_1ST_PIECE, 1); + takeItems(player, FRAGMENT_OF_ANCIENT_TABLET_2ND_PIECE, 1); + takeItems(player, FRAGMENT_OF_ANCIENT_TABLET_3RD_PIECE, 1); + takeItems(player, FRAGMENT_OF_ANCIENT_TABLET_4TH_PIECE, 1); + htmltext = "30471-08.html"; + } + } + break; + } + case "30531-04.html": + { + if (hasQuestItems(player, COMPLETE_ANCIENT_TABLET)) + { + giveAdena(player, 30000, true); + takeItems(player, COMPLETE_ANCIENT_TABLET, 1); + htmltext = event; + } + break; + } + case "30736-03.html": + { + if ((getQuestItemsCount(player, Inventory.ADENA_ID) < 650) && ((getQuestItemsCount(player, CARGO_BOX_1ST) + getQuestItemsCount(player, CARGO_BOX_2ND) + getQuestItemsCount(player, CARGO_BOX_3RD) + getQuestItemsCount(player, CARGO_BOX_4TH)) >= 1)) + { + htmltext = event; + } + else if ((getQuestItemsCount(player, Inventory.ADENA_ID) >= 650) && ((getQuestItemsCount(player, CARGO_BOX_1ST) + getQuestItemsCount(player, CARGO_BOX_2ND) + getQuestItemsCount(player, CARGO_BOX_3RD) + getQuestItemsCount(player, CARGO_BOX_4TH)) >= 1)) + { + takeItems(player, Inventory.ADENA_ID, 650); + if (hasQuestItems(player, CARGO_BOX_1ST)) + { + takeItems(player, CARGO_BOX_1ST, 1); + } + else if (hasQuestItems(player, CARGO_BOX_2ND)) + { + takeItems(player, CARGO_BOX_2ND, 1); + } + else if (hasQuestItems(player, CARGO_BOX_3RD)) + { + takeItems(player, CARGO_BOX_3RD, 1); + } + else if (hasQuestItems(player, CARGO_BOX_4TH)) + { + takeItems(player, CARGO_BOX_4TH, 1); + } + + if (chance < 40) + { + if (chance1 < 33) + { + giveItems(player, GLUDIO_APPLES, 1); + htmltext = "30736-04a.html"; + } + else if (chance1 < 66) + { + giveItems(player, DION_CORN_MEAL, 1); + htmltext = "30736-04b.html"; + } + else + { + giveItems(player, DIRE_WOLF_PELTS, 1); + htmltext = "30736-04c.html"; + } + } + else if (chance < 60) + { + if (chance1 < 33) + { + giveItems(player, MOONSTONE, 1); + htmltext = "30736-04d.html"; + } + else if (chance1 < 66) + { + giveItems(player, GLUDIO_WHEAT_FLOUR, 1); + htmltext = "30736-04e.html"; + } + else + { + giveItems(player, SPIDERSILK_ROPE, 1); + htmltext = "30736-04f.html"; + } + } + else if (chance < 70) + { + if (chance1 < 33) + { + giveItems(player, ALEXANDRITE, 1); + htmltext = "30736-04g.html"; + } + else if (chance1 < 66) + { + giveItems(player, SILVER_TEA_SERVICE, 1); + htmltext = "30736-04h.html"; + } + else + { + giveItems(player, MECHANIC_GOLEM_SPACE_PARTS, 1); + htmltext = "30736-04i.html"; + } + } + else if (chance < 75) + { + if (chance1 < 33) + { + giveItems(player, FIRE_EMERALD, 1); + htmltext = "30736-04j.html"; + } + else if (chance1 < 66) + { + giveItems(player, AVELLAN_SILK_FROCK, 1); + htmltext = "30736-04k.html"; + } + else + { + giveItems(player, FERIOTIC_PORCELAIN_URM, 1); + htmltext = "30736-04l.html"; + } + } + else if (chance < 76) + { + giveItems(player, IMPERIAL_DIAMOND, 1); + htmltext = "30736-04m.html"; + } + else if (getRandom(100) < 50) + { + if (chance1 < 25) + { + giveItems(player, STATUE_OF_SHILEN_HEAD, 1); + } + else if (chance1 < 50) + { + giveItems(player, STATUE_OF_SHILEN_TORSO, 1); + } + else if (chance1 < 75) + { + giveItems(player, STATUE_OF_SHILEN_ARM, 1); + } + else + { + giveItems(player, STATUE_OF_SHILEN_LEG, 1); + } + htmltext = "30736-04n.html"; + } + else + { + if (chance1 < 25) + { + giveItems(player, FRAGMENT_OF_ANCIENT_TABLET_1ST_PIECE, 1); + } + else if (chance1 < 50) + { + giveItems(player, FRAGMENT_OF_ANCIENT_TABLET_2ND_PIECE, 1); + } + else if (chance1 < 75) + { + giveItems(player, FRAGMENT_OF_ANCIENT_TABLET_3RD_PIECE, 1); + } + else + { + giveItems(player, FRAGMENT_OF_ANCIENT_TABLET_4TH_PIECE, 1); + } + htmltext = "30736-04o.html"; + } + } + else if ((getQuestItemsCount(player, CARGO_BOX_1ST) + getQuestItemsCount(player, CARGO_BOX_2ND) + getQuestItemsCount(player, CARGO_BOX_3RD) + getQuestItemsCount(player, CARGO_BOX_4TH)) < 1) + { + htmltext = "30736-05.html"; + } + break; + } + case "30736-07.html": + { + if (player.getAdena() < (200 + (qs.getMemoState() * 200))) + { + htmltext = event; + } + else if ((qs.getMemoState() * 100) > 200) + { + htmltext = "30736-08.html"; + } + else + { + if (chance < 5) + { + htmltext = "30736-08a.html"; + } + else if (chance < 10) + { + htmltext = "30736-08b.html"; + } + else if (chance < 15) + { + htmltext = "30736-08c.html"; + } + else if (chance < 20) + { + htmltext = "30736-08d.html"; + } + else if (chance < 25) + { + htmltext = "30736-08e.html"; + } + else if (chance < 30) + { + htmltext = "30736-08f.html"; + } + else if (chance < 35) + { + htmltext = "30736-08g.html"; + } + else if (chance < 40) + { + htmltext = "30736-08h.html"; + } + else if (chance < 45) + { + htmltext = "30736-08i.html"; + } + else if (chance < 50) + { + htmltext = "30736-08j.html"; + } + else if (chance < 55) + { + htmltext = "30736-08k.html"; + } + else if (chance < 60) + { + htmltext = "30736-08l.html"; + } + else if (chance < 65) + { + htmltext = "30736-08m.html"; + } + else if (chance < 70) + { + htmltext = "30736-08n.html"; + } + else if (chance < 75) + { + htmltext = "30736-08o.html"; + } + else if (chance < 80) + { + htmltext = "30736-08p.html"; + } + else if (chance < 85) + { + htmltext = "30736-08q.html"; + } + else if (chance < 90) + { + htmltext = "30736-08r.html"; + } + else if (chance < 95) + { + htmltext = "30736-08s.html"; + } + else + { + htmltext = "30736-08t.html"; + } + takeItems(player, Inventory.ADENA_ID, 200 + (qs.getMemoState() * 200)); + qs.setMemoState(qs.getMemoState() + 1); + } + break; + } + case "30737-06.html": + { + if ((getQuestItemsCount(player, CARGO_BOX_1ST) + getQuestItemsCount(player, CARGO_BOX_2ND) + getQuestItemsCount(player, CARGO_BOX_3RD) + getQuestItemsCount(player, CARGO_BOX_4TH)) < 1) + { + htmltext = event; + } + else + { + if (hasQuestItems(player, CARGO_BOX_1ST)) + { + takeItems(player, CARGO_BOX_1ST, 1); + } + else if (hasQuestItems(player, CARGO_BOX_2ND)) + { + takeItems(player, CARGO_BOX_2ND, 1); + } + else if (hasQuestItems(player, CARGO_BOX_3RD)) + { + takeItems(player, CARGO_BOX_3RD, 1); + } + else if (hasQuestItems(player, CARGO_BOX_4TH)) + { + takeItems(player, CARGO_BOX_4TH, 1); + } + + if (getQuestItemsCount(player, GUILD_COIN) < 80) + { + giveItems(player, GUILD_COIN, 1); + } + else + { + takeItems(player, GUILD_COIN, 80); + } + + if (getQuestItemsCount(player, GUILD_COIN) < 40) + { + giveAdena(player, 100, true); + htmltext = "30737-03.html"; + } + else if ((getQuestItemsCount(player, GUILD_COIN) >= 40) && (getQuestItemsCount(player, GUILD_COIN) < 80)) + { + giveAdena(player, 200, true); + htmltext = "30737-04.html"; + } + else + { + giveAdena(player, 300, true); + htmltext = "30737-05.html"; + } + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case MARSH_STAKATO: + { + if (hasQuestItems(killer, SOPHYAS_4TH_ORDER)) + { + if (getRandom(100) < 55) + { + giveItems(killer, STAKATO_TALON, 1); + } + if (getRandom(100) < 12) + { + giveItems(killer, CARGO_BOX_4TH, 1); + } + if ((getRandom(100) < 2) && hasQuestItems(killer, SOPHYAS_4TH_ORDER)) + { + addSpawn(MARSH_STAKATO_MARQUESS, npc, true, 0, false); + } + } + break; + } + case NEER_CRAWLER: + { + if (hasQuestItems(killer, SOPHYAS_1ST_ORDER)) + { + if (getRandom(2) == 0) + { + giveItems(killer, UNDEAD_ASH, 1); + } + if (getRandom(100) < 11) + { + giveItems(killer, CARGO_BOX_1ST, 1); + } + } + break; + } + case SPECTER: + { + if (hasQuestItems(killer, SOPHYAS_1ST_ORDER)) + { + if (getRandom(100) < 60) + { + giveItems(killer, UNDEAD_ASH, 1); + } + if (getRandom(100) < 8) + { + giveItems(killer, CARGO_BOX_1ST, 1); + } + } + break; + } + case SORROW_MAIDEN: + { + if (hasQuestItems(killer, SOPHYAS_1ST_ORDER)) + { + if (getRandom(100) < 60) + { + giveItems(killer, UNDEAD_ASH, 1); + } + if (getRandom(100) < 9) + { + giveItems(killer, CARGO_BOX_1ST, 1); + } + } + break; + } + case NEER_CRAWLER_BERSERKER: + { + if (hasQuestItems(killer, SOPHYAS_1ST_ORDER)) + { + if (getRandom(2) == 0) + { + giveItems(killer, UNDEAD_ASH, 1); + } + if (getRandom(100) < 12) + { + giveItems(killer, CARGO_BOX_1ST, 1); + } + } + break; + } + case STRAIN: + { + if (hasQuestItems(killer, SOPHYAS_1ST_ORDER)) + { + if (getRandom(2) == 0) + { + giveItems(killer, UNDEAD_ASH, 1); + } + if (getRandom(100) < 13) + { + giveItems(killer, CARGO_BOX_1ST, 1); + } + } + break; + } + case GHOUL: + { + if (hasQuestItems(killer, SOPHYAS_1ST_ORDER)) + { + if (getRandom(2) == 0) + { + giveItems(killer, UNDEAD_ASH, 1); + } + if (getRandom(100) < 15) + { + giveItems(killer, CARGO_BOX_1ST, 1); + } + } + break; + } + case OL_MAHUM_GUERILLA: + { + if (hasQuestItems(killer, SOPHYAS_2ND_ORDER)) + { + if (getRandom(2) == 0) + { + giveItems(killer, BLOODY_AXE_INSIGNIA, 1); + } + if (getRandom(100) < 9) + { + giveItems(killer, CARGO_BOX_2ND, 1); + } + } + break; + } + case OL_MAHUM_RAIDER: + { + if (hasQuestItems(killer, SOPHYAS_2ND_ORDER)) + { + if (getRandom(2) == 0) + { + giveItems(killer, BLOODY_AXE_INSIGNIA, 1); + } + if (getRandom(100) < 10) + { + giveItems(killer, CARGO_BOX_2ND, 1); + } + } + break; + } + case OL_MAHUM_MARKSMAN: + { + if (hasQuestItems(killer, SOPHYAS_2ND_ORDER)) + { + if (getRandom(2) == 0) + { + giveItems(killer, BLOODY_AXE_INSIGNIA, 1); + } + if (getRandom(100) < 11) + { + giveItems(killer, CARGO_BOX_2ND, 1); + } + } + break; + } + case OL_MAHUM_SERGEANT: + { + if (hasQuestItems(killer, SOPHYAS_2ND_ORDER)) + { + if (getRandom(2) == 0) + { + giveItems(killer, BLOODY_AXE_INSIGNIA, 1); + } + if (getRandom(100) < 12) + { + giveItems(killer, CARGO_BOX_2ND, 1); + } + } + break; + } + case OL_MAHUM_CAPTAIN: + { + if (hasQuestItems(killer, SOPHYAS_2ND_ORDER)) + { + if (getRandom(2) == 0) + { + giveItems(killer, BLOODY_AXE_INSIGNIA, 1); + } + if (getRandom(100) < 13) + { + giveItems(killer, CARGO_BOX_2ND, 1); + } + } + break; + } + case MARSH_STAKATO_WORKER: + { + if (hasQuestItems(killer, SOPHYAS_4TH_ORDER)) + { + if (getRandom(100) < 60) + { + giveItems(killer, STAKATO_TALON, 1); + } + if (getRandom(100) < 13) + { + giveItems(killer, CARGO_BOX_4TH, 1); + } + if ((getRandom(100) < 2) && hasQuestItems(killer, SOPHYAS_4TH_ORDER)) + { + addSpawn(MARSH_STAKATO_MARQUESS, npc, true, 0, false); + } + } + break; + } + case MARSH_STAKATO_SOLDIER: + { + if (hasQuestItems(killer, SOPHYAS_4TH_ORDER)) + { + if (getRandom(100) < 56) + { + giveItems(killer, STAKATO_TALON, 1); + } + if (getRandom(100) < 14) + { + giveItems(killer, CARGO_BOX_4TH, 1); + } + if ((getRandom(100) < 2) && hasQuestItems(killer, SOPHYAS_4TH_ORDER)) + { + addSpawn(MARSH_STAKATO_MARQUESS, npc, true, 0, false); + } + } + break; + } + case MARSH_STAKATO_DRONE: + { + if (hasQuestItems(killer, SOPHYAS_4TH_ORDER)) + { + if (getRandom(100) < 60) + { + giveItems(killer, STAKATO_TALON, 1); + } + if (getRandom(100) < 15) + { + giveItems(killer, CARGO_BOX_4TH, 1); + } + if ((getRandom(100) < 2) && hasQuestItems(killer, SOPHYAS_4TH_ORDER)) + { + addSpawn(MARSH_STAKATO_MARQUESS, npc, true, 0, false); + } + } + break; + } + case DELU_LIZARDMAN: + case DELU_LIZARDMAN_SCOUT: + { + if (hasQuestItems(killer, SOPHYAS_3RD_ORDER)) + { + if (getRandom(2) == 0) + { + giveItems(killer, DELU_LIZARDMAN_FANG, 1); + } + if (getRandom(100) < 14) + { + giveItems(killer, CARGO_BOX_3RD, 1); + } + } + if ((getRandom(100) < 3) && hasQuestItems(killer, SOPHYAS_3RD_ORDER)) + { + addSpawn(DELU_LIZARDMAN_HEADHUNTER, npc, true, 0, false); + addSpawn(DELU_LIZARDMAN_HEADHUNTER, npc, true, 0, false); + } + break; + } + case DELU_LIZARDMAN_WARRIOR: + { + if (hasQuestItems(killer, SOPHYAS_3RD_ORDER)) + { + if (getRandom(2) == 0) + { + giveItems(killer, DELU_LIZARDMAN_FANG, 1); + } + if (getRandom(100) < 15) + { + giveItems(killer, CARGO_BOX_3RD, 1); + } + } + if ((getRandom(100) < 3) && hasQuestItems(killer, SOPHYAS_3RD_ORDER)) + { + addSpawn(DELU_LIZARDMAN_HEADHUNTER, npc, true, 0, false); + addSpawn(DELU_LIZARDMAN_HEADHUNTER, npc, true, 0, false); + } + break; + } + case DELU_LIZARDMAN_HEADHUNTER: + { + if (hasQuestItems(killer, SOPHYAS_3RD_ORDER)) + { + giveItems(killer, DELU_LIZARDMAN_FANG, 4); + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + break; + } + case MARSH_STAKATO_MARQUESS: + { + if (hasQuestItems(killer, SOPHYAS_4TH_ORDER)) + { + giveItems(killer, STAKATO_TALON, 8); + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated()) + { + if (npc.getId() == MERCENARY_CAPTAIN_SOPHYA) + { + if (player.getLevel() < MIN_LEVEL) + { + htmltext = "30735-01.htm"; + } + else + { + if (!hasQuestItems(player, BLACK_LION_MARK)) + { + htmltext = "30735-02.htm"; + } + else + { + htmltext = "30735-03.htm"; + } + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case MERCENARY_CAPTAIN_SOPHYA: + { + if ((getQuestItemsCount(player, SOPHYAS_1ST_ORDER) + getQuestItemsCount(player, SOPHYAS_2ND_ORDER) + getQuestItemsCount(player, SOPHYAS_3RD_ORDER) + getQuestItemsCount(player, SOPHYAS_4TH_ORDER)) == 0) + { + htmltext = "30735-14.html"; + } + else if (((getQuestItemsCount(player, SOPHYAS_1ST_ORDER) + getQuestItemsCount(player, SOPHYAS_2ND_ORDER) + getQuestItemsCount(player, SOPHYAS_3RD_ORDER) + getQuestItemsCount(player, SOPHYAS_4TH_ORDER)) == 1) && ((getQuestItemsCount(player, UNDEAD_ASH) + getQuestItemsCount(player, BLOODY_AXE_INSIGNIA) + getQuestItemsCount(player, DELU_LIZARDMAN_FANG) + getQuestItemsCount(player, STAKATO_TALON)) < 1) && ((getQuestItemsCount(player, CARGO_BOX_1ST) + getQuestItemsCount(player, CARGO_BOX_2ND) + getQuestItemsCount(player, CARGO_BOX_3RD) + getQuestItemsCount(player, CARGO_BOX_4TH)) < 1)) + { + htmltext = "30735-15.html"; + } + else if (((getQuestItemsCount(player, SOPHYAS_1ST_ORDER) + getQuestItemsCount(player, SOPHYAS_2ND_ORDER) + getQuestItemsCount(player, SOPHYAS_3RD_ORDER) + getQuestItemsCount(player, SOPHYAS_4TH_ORDER)) == 1) && ((getQuestItemsCount(player, UNDEAD_ASH) + getQuestItemsCount(player, BLOODY_AXE_INSIGNIA) + getQuestItemsCount(player, DELU_LIZARDMAN_FANG) + getQuestItemsCount(player, STAKATO_TALON)) < 1) && ((getQuestItemsCount(player, CARGO_BOX_1ST) + getQuestItemsCount(player, CARGO_BOX_2ND) + getQuestItemsCount(player, CARGO_BOX_3RD) + getQuestItemsCount(player, CARGO_BOX_4TH)) >= 1)) + { + htmltext = "30735-15a.html"; + } + else if (((getQuestItemsCount(player, SOPHYAS_1ST_ORDER) + getQuestItemsCount(player, SOPHYAS_2ND_ORDER) + getQuestItemsCount(player, SOPHYAS_3RD_ORDER) + getQuestItemsCount(player, SOPHYAS_4TH_ORDER)) == 1) && ((getQuestItemsCount(player, UNDEAD_ASH) + getQuestItemsCount(player, BLOODY_AXE_INSIGNIA) + getQuestItemsCount(player, DELU_LIZARDMAN_FANG) + getQuestItemsCount(player, STAKATO_TALON)) >= 1) && ((getQuestItemsCount(player, CARGO_BOX_1ST) + getQuestItemsCount(player, CARGO_BOX_2ND) + getQuestItemsCount(player, CARGO_BOX_3RD) + getQuestItemsCount(player, CARGO_BOX_4TH)) == 0)) + { + final long itemcount = getQuestItemsCount(player, UNDEAD_ASH) + getQuestItemsCount(player, BLOODY_AXE_INSIGNIA) + getQuestItemsCount(player, DELU_LIZARDMAN_FANG) + getQuestItemsCount(player, STAKATO_TALON); + if (itemcount < 20) + { + + } + else if (itemcount < 50) + { + giveItems(player, LIONS_CLAW, 1); + } + else if (itemcount < 100) + { + giveItems(player, LIONS_CLAW, 2); + } + else + { + giveItems(player, LIONS_CLAW, 3); + } + final long ash = getQuestItemsCount(player, UNDEAD_ASH); + final long insignia = getQuestItemsCount(player, BLOODY_AXE_INSIGNIA); + final long fang = getQuestItemsCount(player, DELU_LIZARDMAN_FANG); + final long talon = getQuestItemsCount(player, STAKATO_TALON); + giveAdena(player, ((ash * 35) + (insignia * 35) + (((fang + 35) + (talon * 35)))), true); + takeItems(player, UNDEAD_ASH, -1); + takeItems(player, BLOODY_AXE_INSIGNIA, -1); + takeItems(player, DELU_LIZARDMAN_FANG, -1); + takeItems(player, STAKATO_TALON, -1); + qs.setMemoState(0); + htmltext = "30735-22.html"; + } + else if (((getQuestItemsCount(player, SOPHYAS_1ST_ORDER) + getQuestItemsCount(player, SOPHYAS_2ND_ORDER) + getQuestItemsCount(player, SOPHYAS_3RD_ORDER) + getQuestItemsCount(player, SOPHYAS_4TH_ORDER)) == 1) && ((getQuestItemsCount(player, UNDEAD_ASH) + getQuestItemsCount(player, BLOODY_AXE_INSIGNIA) + getQuestItemsCount(player, DELU_LIZARDMAN_FANG) + getQuestItemsCount(player, STAKATO_TALON)) >= 1) && ((getQuestItemsCount(player, CARGO_BOX_1ST) + getQuestItemsCount(player, CARGO_BOX_2ND) + getQuestItemsCount(player, CARGO_BOX_3RD) + getQuestItemsCount(player, CARGO_BOX_4TH)) >= 1)) + { + final long itemcount = getQuestItemsCount(player, UNDEAD_ASH) + getQuestItemsCount(player, BLOODY_AXE_INSIGNIA) + getQuestItemsCount(player, DELU_LIZARDMAN_FANG) + getQuestItemsCount(player, STAKATO_TALON); + if (itemcount < 20) + { + + } + else if (itemcount < 50) + { + giveItems(player, LIONS_CLAW, 1); + } + else if (itemcount < 100) + { + giveItems(player, LIONS_CLAW, 2); + } + else + { + giveItems(player, LIONS_CLAW, 3); + } + giveAdena(player, (getQuestItemsCount(player, UNDEAD_ASH) * 35), true); + giveAdena(player, (getQuestItemsCount(player, BLOODY_AXE_INSIGNIA) * 35), true); + giveAdena(player, (getQuestItemsCount(player, DELU_LIZARDMAN_FANG) * 35), true); + giveAdena(player, (getQuestItemsCount(player, STAKATO_TALON) * 35), true); + takeItems(player, UNDEAD_ASH, -1); + takeItems(player, BLOODY_AXE_INSIGNIA, -1); + takeItems(player, DELU_LIZARDMAN_FANG, -1); + takeItems(player, STAKATO_TALON, -1); + qs.setMemoState(0); + htmltext = "30735-23.html"; + } + break; + } + case ABYSSAL_CELEBRANT_UNDRIAS: + { + if (!hasQuestItems(player, COMPLETE_STATUE_OF_SHILEN)) + { + if ((getQuestItemsCount(player, STATUE_OF_SHILEN_HEAD) + getQuestItemsCount(player, STATUE_OF_SHILEN_TORSO) + getQuestItemsCount(player, STATUE_OF_SHILEN_ARM) + getQuestItemsCount(player, STATUE_OF_SHILEN_LEG)) >= 1) + { + htmltext = "30130-02.html"; + } + else + { + htmltext = "30130-01.html"; + } + } + else + { + htmltext = "30130-03.html"; + } + break; + } + case BLACKSMITH_RUPIO: + { + if (((getQuestItemsCount(player, STATUE_OF_SHILEN_HEAD) + getQuestItemsCount(player, STATUE_OF_SHILEN_TORSO) + getQuestItemsCount(player, STATUE_OF_SHILEN_ARM) + getQuestItemsCount(player, STATUE_OF_SHILEN_LEG)) >= 1) || ((getQuestItemsCount(player, FRAGMENT_OF_ANCIENT_TABLET_1ST_PIECE) + getQuestItemsCount(player, FRAGMENT_OF_ANCIENT_TABLET_2ND_PIECE) + getQuestItemsCount(player, FRAGMENT_OF_ANCIENT_TABLET_3RD_PIECE) + getQuestItemsCount(player, FRAGMENT_OF_ANCIENT_TABLET_4TH_PIECE)) >= 1)) + { + htmltext = "30471-02.html"; + } + else + { + htmltext = "30471-01.html"; + } + break; + } + case IRON_GATES_LOCKIRIN: + { + if (!hasQuestItems(player, COMPLETE_ANCIENT_TABLET)) + { + if ((getQuestItemsCount(player, FRAGMENT_OF_ANCIENT_TABLET_1ST_PIECE) + getQuestItemsCount(player, FRAGMENT_OF_ANCIENT_TABLET_2ND_PIECE) + getQuestItemsCount(player, FRAGMENT_OF_ANCIENT_TABLET_3RD_PIECE) + getQuestItemsCount(player, FRAGMENT_OF_ANCIENT_TABLET_4TH_PIECE)) >= 1) + { + htmltext = "30531-02.html"; + } + else + { + htmltext = "30531-01.html"; + } + } + else + { + htmltext = "30531-03.html"; + } + break; + } + case MERCENARY_REEDFOOT: + { + if ((getQuestItemsCount(player, CARGO_BOX_1ST) + getQuestItemsCount(player, CARGO_BOX_2ND) + getQuestItemsCount(player, CARGO_BOX_3RD) + getQuestItemsCount(player, CARGO_BOX_4TH)) >= 1) + { + htmltext = "30736-02.html"; + } + else + { + htmltext = "30736-01.html"; + } + break; + } + case GUILDSMAN_MORGON: + { + if ((getQuestItemsCount(player, CARGO_BOX_1ST) + getQuestItemsCount(player, CARGO_BOX_2ND) + getQuestItemsCount(player, CARGO_BOX_3RD) + getQuestItemsCount(player, CARGO_BOX_4TH)) >= 1) + { + htmltext = "30737-02.html"; + } + else + { + htmltext = "30737-01.html"; + } + break; + } + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-01.htm new file mode 100644 index 0000000000..a8a753decf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-01.htm @@ -0,0 +1,6 @@ +Magister Nell:
+Do you wish to hear my story? Sometime ago, I met a Elder. He told me that the Forgotten Temple is related to the Ruins on Talking Island.
+More than anything else, this glittering Flare Shard and Freezing Shard are the proof! They are fragments of elemental stone found in the Ruins of Talking Island and the Forgotten Temple! Before they were broken, these two elemental stones must have had mutual resonance.
+Would you help me? Please go to the temple and bring me more of these gemstones.
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-02.htm new file mode 100644 index 0000000000..2395e297b8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-02.htm @@ -0,0 +1,4 @@ +Magister Nell:
+This won't be easy. The spirits that live in the Forgotten Temple are very strong. You will need help. You can get
+Flare Shards from lakin salamanders, salamander rowins and death fires. Freezing Shards can be obtained from the lakin undine, the rowin undine and the roxide. Please bring me 50 of each type. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-03.html new file mode 100644 index 0000000000..91aee5fc56 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-03.html @@ -0,0 +1,5 @@ +Magister Nell:
+Do you wish to hear my story? Once I met a Elder. He convinced me that the Forgotten Temple is related to the Ruins on Talking Island.
+This glittering Flare Shard and Freezing Shard are proof! They are fragments from the Ruins of Talking Island and the Forgotten Temple! Before they were broken, these two elemental stones had mutual resonance. I'm sure of it! I'm desperate to get my hands on more of these fragments... If you know anyone strong enough to enter the Forgotten Temple and bring me some of these stones, please ask them to come and see me at once!
+(This quest may only be undertaken by a character of level 25 or above.) + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-04.html new file mode 100644 index 0000000000..0a3987ec64 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-04.html @@ -0,0 +1,6 @@ +Magister Nell:
+Ah, you have done as I asked. I feel the strong pull of their magic power. Here is your reward. Would you be interested in working with me some more? I still need many more of them... I'll pay you generously for your work...
+ + + + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-05.html new file mode 100644 index 0000000000..434eacdac5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-05.html @@ -0,0 +1,8 @@ +Magister Nell:
+Well, if I only needed them for my research, these would be enough. But a Elder taught me all about these gemstones.
+He said that he needed them, and asked me to collect the fragments for him.
At that time the trader Katerina of Talking Island was there. She is also collecting gemstones.
+When she gives the gemstones to the Elder, I also want to give at least the same quantity to him. You see, I am a magister... I can't be outdone by a trader like Katerina. Do you understand?
+Please do this for me. Collect more gemstones so that I can give them to the Elder.
+ + + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-06.html new file mode 100644 index 0000000000..088a13fd5d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-06.html @@ -0,0 +1,3 @@ +Magister Nell:
+Thank you! Go to the Forgotten Temple with your colleagues. Slay the roxide, the lakin undine, and the rowin undine to obtain Freezing Shards. Slay the death fire, the lakin salamander, and the salamander rowin to obtain Flare Shards.
I'd like to give you at least 5 restored Spirit Ores, so please bring me 200 fragments of each kind. You will be well rewarded. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-07.html new file mode 100644 index 0000000000..9673af2e50 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-07.html @@ -0,0 +1,3 @@ +Magister Nell:
+Oh, too bad. Very well. I'll get someone else to help me. I appreciate your help up to now. I will take care of the remaining shards. Leave them here. If you change your mind, please come back and see me. Okay? + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-08.html new file mode 100644 index 0000000000..f127610a02 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-08.html @@ -0,0 +1,3 @@ +Magister Nell:
+Ah, the shiny black hair... eyes that sparkle like gemstones... If I could only hear the voice once more...
Why are you still here? Please hurry and collect 50 Flare Shards and 50 Freezing Shards for my research. You can find them by slaying salamanders, undines, death fires and roxides in the Forgotten Temple. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-09.html new file mode 100644 index 0000000000..d20f3071ed --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-09.html @@ -0,0 +1,6 @@ +Magister Nell:
+Thank you for your help. Would you be interested in working some more? I still need many more of these... I'll give you a very generous reward!
+ + + + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-10.html new file mode 100644 index 0000000000..676dc8efe0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-10.html @@ -0,0 +1,5 @@ +Magister Nell:
+Amazing! You've brought them! They must have been very heavy! Please put them down here. Be very, very careful!
+Thank you for your hard work. Here is your reward. These fragments are kind of small. Now, I can meet Les with confidence. He contacted me some time ago...
+Anyway, thank you for your help. If possible, please come and help me again sometime, and bring some friends to help you! Take care! + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-11.html new file mode 100644 index 0000000000..9118def50b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/30376-11.html @@ -0,0 +1,5 @@ +Magister Nell:
+Ah, what a profile! Like a classic statue... And that voice! Like an arrow piercing my heart...Where is he now? I wonder what he's doing?
+I must give him some Spirit Ore! Please, bring me 200 Flare Shards and 200 Freezing Shards!
+You can get them from salamanders, undines, death fires and roxides, deep within the Forgotten Temple! Please, hurry! Time is short! + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/Q00369_CollectorOfJewels.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/Q00369_CollectorOfJewels.java new file mode 100644 index 0000000000..096b3e0faf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00369_CollectorOfJewels/Q00369_CollectorOfJewels.java @@ -0,0 +1,187 @@ +/* + * 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.Q00369_CollectorOfJewels; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.holders.QuestItemHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; + +/** + * Collector of Jewels (369) + * @author Adry_85 + */ +public final class Q00369_CollectorOfJewels extends Quest +{ + // NPC + private static final int NELL = 30376; + // Items + private static final int FLARE_SHARD = 5882; + private static final int FREEZING_SHARD = 5883; + // Misc + private static final int MIN_LEVEL = 25; + // Mobs + private static final Map MOBS_DROP_CHANCES = new HashMap<>(); + static + { + MOBS_DROP_CHANCES.put(20609, new QuestItemHolder(FLARE_SHARD, 75, 1)); // salamander_lakin + MOBS_DROP_CHANCES.put(20612, new QuestItemHolder(FLARE_SHARD, 91, 1)); // salamander_rowin + MOBS_DROP_CHANCES.put(20749, new QuestItemHolder(FLARE_SHARD, 100, 2)); // death_fire + MOBS_DROP_CHANCES.put(20616, new QuestItemHolder(FREEZING_SHARD, 81, 1)); // undine_lakin + MOBS_DROP_CHANCES.put(20619, new QuestItemHolder(FREEZING_SHARD, 87, 1)); // undine_rowin + MOBS_DROP_CHANCES.put(20747, new QuestItemHolder(FREEZING_SHARD, 100, 2)); // roxide + } + + public Q00369_CollectorOfJewels() + { + super(369); + addStartNpc(NELL); + addTalkId(NELL); + addKillId(MOBS_DROP_CHANCES.keySet()); + registerQuestItems(FLARE_SHARD, FREEZING_SHARD); + } + + @Override + public boolean checkPartyMember(L2PcInstance member, L2Npc npc) + { + final QuestState st = getQuestState(member, false); + return ((st != null) && (st.isMemoState(1) || st.isMemoState(3))); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "30376-02.htm": + { + st.startQuest(); + st.setMemoState(1); + htmltext = event; + break; + } + case "30376-05.html": + { + htmltext = event; + break; + } + case "30376-06.html": + { + if (st.isMemoState(2)) + { + st.setMemoState(3); + st.setCond(3, true); + htmltext = event; + } + break; + } + case "30376-07.html": + { + st.exitQuest(true, true); + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon) + { + final QuestItemHolder item = MOBS_DROP_CHANCES.get(npc.getId()); + if (getRandom(100) < item.getChance()) + { + L2PcInstance luckyPlayer = getRandomPartyMember(player, npc); + if (luckyPlayer != null) + { + final QuestState st = getQuestState(luckyPlayer, false); + final int itemCount = (st.isMemoState(1) ? 50 : 200); + final int cond = (st.isMemoState(1) ? 2 : 4); + if (giveItemRandomly(luckyPlayer, npc, item.getId(), item.getCount(), itemCount, 1.0, true) // + && (getQuestItemsCount(luckyPlayer, FLARE_SHARD, FREEZING_SHARD) >= (itemCount * 2))) + { + st.setCond(cond); + } + } + } + return super.onKill(npc, player, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st.isCreated()) + { + htmltext = (player.getLevel() >= MIN_LEVEL) ? "30376-01.htm" : "30376-03.html"; + } + else if (st.isStarted()) + { + switch (st.getMemoState()) + { + case 1: + { + if (getQuestItemsCount(player, FLARE_SHARD, FREEZING_SHARD) >= 100) + { + giveAdena(player, 31810, true); + takeItems(player, -1, FLARE_SHARD, FREEZING_SHARD); + st.setMemoState(2); + htmltext = "30376-04.html"; + } + else + { + htmltext = "30376-08.html"; + } + break; + } + case 2: + { + htmltext = "30376-09.html"; + break; + } + case 3: + { + if (getQuestItemsCount(player, FLARE_SHARD, FREEZING_SHARD) >= 400) + { + giveAdena(player, 84415, true); + takeItems(player, -1, FLARE_SHARD, FREEZING_SHARD); + st.exitQuest(true, true); + htmltext = "30376-10.html"; + } + else + { + htmltext = "30376-11.html"; + } + break; + } + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-01.htm new file mode 100644 index 0000000000..8895e06a41 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-01.htm @@ -0,0 +1,7 @@ +Elder Casian:
+Did you know that at one time this barren wasteland was one of the most fertile places in Aden? For centuries farmers sowed their seeds and harvested abundant crops here. Ah, yes, those were the days...
+But then that devil Beleth and his minions arrived. We had to come up with a resolution quickly. We were compelled to at last open the forbidden spellbook...
+For two days and nights fire rained down on us and dark magic swept the land like a whirlwind... It wasn't at all what we'd anticipated...
+I couldn't bear to stay in this ruined place, so I wandered the world for many years. But now I find myself drawn back, hoping to somehow restore this land to its former beauty. I shan't be able to do this alone...
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-02.htm new file mode 100644 index 0000000000..d7fba80fc0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-02.htm @@ -0,0 +1,6 @@ +Elder Casian:
+The magic we unwittingly unleashed came from "Kranvel's Spellbook", one of the forbidden tomes of the Ivory Tower. Its fearsome power sucked the magic from all living organisms in the area, and then unleashed it all back upon us with a vengeance!
+Poor Spellsinger Diena saw the whole thing and fell into a deep state of shock. As she shed blood and tears, she destroyed the book and scattered it to the wind... She was determined that no one should ever use such evil magic again... We couldn't stop her! We all felt as if we were in a terrible nightmare, and just stared blankly at her...
+But now we know that that spellbook is the key to the restoration of this place. Please find the pieces of the book that were scattered to the wind.
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-03.htm new file mode 100644 index 0000000000..1997598414 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-03.htm @@ -0,0 +1,5 @@ +Elder Casian:
+Ironically, the deformed beasts around us hold the clues to finding the legacy of Kranvel. Giant ants are known to pick up anything they find and take it to their nests. It is said that they have collected a great number of ancient relics and taken them to their nest in the maze-like caves beneath the wasteland.
+You will most likely find the pieces of "Kranvel's Spellbook" in the Ant Nest. You mustn't attempt this alone! Take some reliable colleagues along with you.
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-04.htm new file mode 100644 index 0000000000..f0199f5ec5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-04.htm @@ -0,0 +1,6 @@ +Elder Casian:
+In order to obtain the pieces of the spellbook, you must conquer the ant recruits, ant patrols, ant guards, the noble ant and the noble ant leader.
+Check carefully any scraps of paper you come across. The pieces of "Kranvel's Spellbook" should be easy to identify.
+The spellbook has four chapters: the Chapter of Fire, the Chapter of Water, the Chapter of Wind and the Chapter of Earth. The contents will only be discernible if you recover all four chapters.
+This is a challenging task, but I think you are ready for it. May the divine blessing be with you... + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-05.html new file mode 100644 index 0000000000..b8f6723d1c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-05.html @@ -0,0 +1,8 @@ +Elder Casian:
+Did you know that at one time this barren wasteland was one of the most fertile places in Aden? For centuries, farmers sowed their seeds and harvested their abundant crops here. Ah, yes, those were the days...
+But then that devil Beleth and his minions arrived. We had to act quickly. We were compelled to at last open the forbidden spellbook...
+For two days and nights fire rained down on us and dark magic swept over the land like a whirlwind... It wasn't at all what we'd anticipated...
+When it was over, this is all that was left... A dusty wasteland inhabited by weird-looking freaks...
+Some day, hopefully, we shall find a way to change this place back into the verdant farmland it once was... I hope we can count on you when that time comes.
+(This quest may only be undertaken by a character of level 28 or above.) + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-06.html new file mode 100644 index 0000000000..01b1c8699f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-06.html @@ -0,0 +1,8 @@ +Elder Casian:
+The wind is unusually scorching today... Do you feel it? The angry cries of the souls of those who perished here seem carried on the blistering breeze across the Wasteland...
+Forgive me. This place has that effect on me. By the way, how are things at the Ant Nest?
+ + + + + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-07.html new file mode 100644 index 0000000000..88b7bc4d7a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-07.html @@ -0,0 +1,6 @@ +Elder Casian:
+How could you forget? You must slay ant recruits, ant patrols, ant guards, noble ants, and the noble ant leader in order to obtain the pieces of the spellbook.
+Examine any scraps of paper you come across carefully. The pieces of "Kranvel's Spellbook" should be instantly recognizable.
+You must find all four chapters: the Chapter of Fire, the Chapter of Water, the Chapter of Wind and the Chapter of Earth.
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-08.html new file mode 100644 index 0000000000..4db0bf5a57 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-08.html @@ -0,0 +1,7 @@ +Elder Casian:
+Let's see, the Chapter of Fire, the Chapter of Water, the Chapter of Wind, and the Chapter of Earth... you have brought them all! Perhaps your discovery will lead to a way to restore this ruined place. At last I shall be redeemed... This is all thanks to you. Please accept this humble token of my appreciation.
+But this sad chapter is not yet complete... The dark magic that caused this disaster had many sources, united in their power and holding copies of "Kranvel's Spellbook"!
+Alas, it's true! There remain many pieces of that horrid tome scattered about the inside of the Ant Nest. If I am to continue my research, and above all to keep this dreadful power from falling into the wrong hands, the remaining fragments of "Kranvel's Spellbook" must be recovered! Please help!
+ + + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-09.html new file mode 100644 index 0000000000..49c755fa7a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-09.html @@ -0,0 +1,3 @@ +Elder Casian:
+Thank you for helping us. Hopefully someday our efforts will pay off, and restore this wasteland to its former beauty. Bless you, my child... + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-10.html new file mode 100644 index 0000000000..533df7b4a6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-10.html @@ -0,0 +1,5 @@ +Elder Casian:
+I understand. Your assistance has given me the opportunity to redeem myself. I don't know exactly where my research will lead, but hopefully to a better world...
+We all must do what we think is best. Only time will tell whether our choices are good ones...
+Thank you so very much for your help. May you be blessed by the gods... + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-11.html new file mode 100644 index 0000000000..4ce71a9270 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/30612-11.html @@ -0,0 +1,4 @@ +Elder Casian:
+How could you have forgotten so quickly?
+"Kranvel's Spellbook" consists of four chapters: the Chapter of Fire, the Chapter of Water, the Chapter of Wind and the Chapter of Earth. The contents will not be discernible unless you find all four chapters. Please, you must help us! We're counting on you! + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/Q00370_AnElderSowsSeeds.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/Q00370_AnElderSowsSeeds.java new file mode 100644 index 0000000000..0679ff0193 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00370_AnElderSowsSeeds/Q00370_AnElderSowsSeeds.java @@ -0,0 +1,196 @@ +/* + * 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.Q00370_AnElderSowsSeeds; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; + +/** + * An Elder Sows Seeds (370) + * @author Adry_85 + */ +public final class Q00370_AnElderSowsSeeds extends Quest +{ + // NPC + private static final int CASIAN = 30612; + // Items + private static final int SPELLBOOK_PAGE = 5916; + private static final int CHAPTER_OF_FIRE = 5917; + private static final int CHAPTER_OF_WATER = 5918; + private static final int CHAPTER_OF_WIND = 5919; + private static final int CHAPTER_OF_EARTH = 5920; + // Misc + private static final int MIN_LEVEL = 28; + // Mobs + private static final Map MOBS1 = new HashMap<>(); + private static final Map MOBS2 = new HashMap<>(); + static + { + MOBS1.put(20082, 9); // ant_recruit + MOBS1.put(20086, 9); // ant_guard + MOBS1.put(20090, 22); // noble_ant_leader + MOBS2.put(20084, 0.101); // ant_patrol + MOBS2.put(20089, 0.100); // noble_ant + } + + public Q00370_AnElderSowsSeeds() + { + super(370); + addStartNpc(CASIAN); + addTalkId(CASIAN); + addKillId(MOBS1.keySet()); + addKillId(MOBS2.keySet()); + } + + @Override + public boolean checkPartyMember(L2PcInstance member, L2Npc npc) + { + final QuestState st = getQuestState(member, false); + return ((st != null) && st.isStarted()); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "30612-02.htm": + case "30612-03.htm": + case "30612-06.html": + case "30612-07.html": + case "30612-09.html": + { + htmltext = event; + break; + } + case "30612-04.htm": + { + st.startQuest(); + htmltext = event; + break; + } + case "REWARD": + { + if (st.isStarted()) + { + if (exchangeChapters(player, false)) + { + htmltext = "30612-08.html"; + } + else + { + htmltext = "30612-11.html"; + } + } + break; + } + case "30612-10.html": + { + if (st.isStarted()) + { + exchangeChapters(player, true); + st.exitQuest(true, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon) + { + int npcId = npc.getId(); + if (MOBS1.containsKey(npcId)) + { + if (getRandom(100) < MOBS1.get(npcId)) + { + L2PcInstance luckyPlayer = getRandomPartyMember(player, npc); + if (luckyPlayer != null) + { + giveItemRandomly(luckyPlayer, npc, SPELLBOOK_PAGE, 1, 0, 1.0, true); + } + } + } + else + { + final QuestState st = getRandomPartyMemberState(player, -1, 3, npc); + if (st != null) + { + giveItemRandomly(st.getPlayer(), npc, SPELLBOOK_PAGE, 1, 0, MOBS2.get(npcId), true); + } + } + return super.onKill(npc, player, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st.isCreated()) + { + htmltext = (player.getLevel() >= MIN_LEVEL) ? "30612-01.htm" : "30612-05.html"; + } + else if (st.isStarted()) + { + htmltext = "30612-06.html"; + } + return htmltext; + } + + private final boolean exchangeChapters(L2PcInstance player, boolean takeAllItems) + { + final long waterChapters = getQuestItemsCount(player, CHAPTER_OF_WATER); + final long earthChapters = getQuestItemsCount(player, CHAPTER_OF_EARTH); + final long windChapters = getQuestItemsCount(player, CHAPTER_OF_WIND); + final long fireChapters = getQuestItemsCount(player, CHAPTER_OF_FIRE); + long minCount = waterChapters; + if (earthChapters < minCount) + { + minCount = earthChapters; + } + if (windChapters < minCount) + { + minCount = windChapters; + } + if (fireChapters < minCount) + { + minCount = fireChapters; + } + if (minCount > 0) + { + giveAdena(player, minCount * 3600, true); + } + final long countToTake = (takeAllItems ? -1 : minCount); + takeItems(player, (int) countToTake, CHAPTER_OF_WATER, CHAPTER_OF_EARTH, CHAPTER_OF_WIND, CHAPTER_OF_FIRE); + return (minCount > 0); + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-01.htm new file mode 100644 index 0000000000..e9a0ad48c2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-01.htm @@ -0,0 +1,5 @@ +Master Auron:
+Now I'm a master who teaches young Fighters, but I was once a soldier for the Warrior League, walking the borderline between of life and death on the battlefield.
+To be accepted into the Warrior League, there's no need for a noble birth or the lord's Recommendation. We accept any Fighter who has courage and spirit.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-02.htm new file mode 100644 index 0000000000..d18cc35f56 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-02.htm @@ -0,0 +1,4 @@ +Master Auron:
+You are still too inexperienced. The damage to your armor and the callus on your palm show me that plainly. Come back after you are more seasoned. At that time, I will be willing to test you to determine if you are indeed qualified to be a true Warrior.
+(Only characters level 18 and above may embark on this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-02a.htm new file mode 100644 index 0000000000..a58aa4f773 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-02a.htm @@ -0,0 +1,3 @@ +Master Auron:
+Why has one who has already attained the title of Warrior come to seek me? Is not your place on the battlefield? Leave at once! May the goddess of victory smile down on you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-03.htm new file mode 100644 index 0000000000..43b2fa0bc6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-03.htm @@ -0,0 +1,3 @@ +Master Auron:
+You seem to have already decided on the path you will take. So why have you come to me? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-04.htm new file mode 100644 index 0000000000..5c52c50fb4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-04.htm @@ -0,0 +1,3 @@ +Master Auron:
+You already have the medallion of the Warrior. Then you already have the qualifications to enter the warriors guild. Take the medallion and go to Grand Master Ramos of our guild, and he will change your profession to a Warrior. He's the one standing right over there. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-05.htm new file mode 100644 index 0000000000..f33784c93f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-05.htm @@ -0,0 +1,4 @@ +Master Auron:
+Good! Then I will test you to see if you have the talents to become a true Warrior. It is a very simple test -- any Fighter with courage and spirit can pass it.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-06.htm new file mode 100644 index 0000000000..a112e4a614 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-06.htm @@ -0,0 +1,3 @@ +Master Auron:
+To take this test, you must first find the weapon that the Warriors call the sword of trial. Simplon of the town of Gludio knows all about the sword. These days, he works at a weapons and armor shop, but in the past he was a famous soldier, so treat him with respect. If you show him this letter, he will receive you very cordially. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-07.html new file mode 100644 index 0000000000..16d3cc2de0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-07.html @@ -0,0 +1,3 @@ +Master Auron:
+You haven't met Simplon yet? He works at a weapons shop in the town of Gludio. If you show him my letter, he will tell you everything you need to know about the sword of trial. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-08.html new file mode 100644 index 0000000000..5c67cf0ae7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-08.html @@ -0,0 +1,3 @@ +Master Auron:
+I see you met Simplon. It gather that he asked you to do something difficult, because he certainly doesn't give the Sword of Trial to just anyone. But don't be too upset. Though he seems tempermental on the outside, he's really a warm person once you get to know him. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-09.html new file mode 100644 index 0000000000..8297db9b0f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-09.html @@ -0,0 +1,6 @@ +Master Auron:
+Good, so you have found the sword of trial. Here's what you must do now ... If you go out to Windmill Hill, in the southern plains, you will find poison spiders -- their bodies are bigger than wagons, and they're violent and dangerous to deal with. Use only the rusty bronze sword to hunt the poison spiders. You may not use any other weapons.
+When you kill a poison spider, cut off its legs and keep them. Ah yes, and you may also bring the legs of the arachnid tracker, a spider which is a little more ferocious even than the poison spider. Collect twenty spider legs and bring them here. That is the test to become a Warrior. If you pass this test, I will give you the medallion of the Warrior.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-10.html new file mode 100644 index 0000000000..0f12e2150a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-10.html @@ -0,0 +1,5 @@ +Master Auron:
+How do you hunt a poison spider with a rusty sword? Look here, fellow, do you know what the creed of our warriors guild is? It's stay alive even in the worst conditions. There is no law that says you will always be at an advantage in a fight against your opponent. However, in any situation, you can win if you keep your wits about you.
+Think of this ... do you think a knight armed with luxurious Steel armor and a Steel sword has achieved a real victory after killing a farmer who is armed with a wooden spear? True victory is rolling in the mud and taking a beating, then picking up a stone and striking for your opponent's head. It is that gruesome. Do you understand what I'm saying?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-11.html new file mode 100644 index 0000000000..e1a2f28124 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-11.html @@ -0,0 +1,5 @@ +Master Auron:
+Good! Once you've passed through the southern gate of the village, to the left you'll see the windmills of Windmill Hill. There you'll find giant poison spiders and arachnid trackers.
+You'll also find many spiders on the Fellmere Harvesting Grounds west of the Fellmere Lake over the northern mountains. Bring twenty of their legs to me.
+You must use only the sword of trial to kill them! Do you understand? Get going! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-12.html new file mode 100644 index 0000000000..030b65eadf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-12.html @@ -0,0 +1,3 @@ +Master Auron:
+Why have you come back? Didn't I tell you to bring back twenty Poison Spider Legs from giant poison spiders or arachnid trackers? You're not thinking of giving up, are you? Where are your guts? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-13.html new file mode 100644 index 0000000000..d3e1d9967c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30010-13.html @@ -0,0 +1,4 @@ +Master Auron:
+Have you returned? Well, I knew you would be able to do the job magnificently. I hereby give you the medallion of the Warrior. It is proof that you have earned the qualifications to change profession to a Warrior. Take it and go to Grand Master Ramos of our guild. He will change your profession to a Warrior. He is the one right over there.
+I don't know how your future will turn out, but I hope you do not forget the warrior's creed that I've taught you. Until we meet again, may the goddess of victory smile on you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-01.html new file mode 100644 index 0000000000..d3ec052da0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-01.html @@ -0,0 +1,5 @@ +Trader Simplon:
+What? Are you trying to become a Warrior? Ha ha! To me, you seem like a novice! Well, now that I think of it, when I was young the elder soldiers would often look down on me because I had a childlike face. So I will give you an opportunity.
+Well, if you want to be a Warrior, you must first find the sword of trial. I already know where it is, but first let me test your disposition.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-02.html new file mode 100644 index 0000000000..3233781a08 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-02.html @@ -0,0 +1,5 @@ +Trader Simplon:
+Recently, the lord announced that he would restore all the villages that became ruins during the war and solicited to the warriors guild for soldiers to do away with the undead. If you want to prove that you have the qualities of a Warrior, go to the Ruins of Agony and fight with the tracker skeletons!
+The skeletons in the ruins are the spirits of poor soldiers that lost their lives cruelly during the war and become undead. Bring back ten rusted swords that they used. While you perform this task, take this mark with you, since you have become a member of our warriors guild for a short time.
+What? Difficult? What are you saying! Twenty years ago when I was about your age, the witch Cleo led undead troops into the Castle of Gludio. My comrades and I fought against hundreds of skeletons in just one night! And here you are whining about killing just ten tracker skeletons?! No more unnecessary words, now be off with you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-03.html new file mode 100644 index 0000000000..aa48192de5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-03.html @@ -0,0 +1,3 @@ +Trader Simplon:
+What? Why have you returned empty handed? Do you not wish to become a Warrior, or are you stupid? If you have forgotten already, let me tell you again! Go to the Ruins of Agony and fight the tracker skeletons, collect ten of their rusted swords, and bring them to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-04.html new file mode 100644 index 0000000000..1ed5af234e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-04.html @@ -0,0 +1,3 @@ +Trader Simplon:
+Didn't I tell you to bring ten rusted swords? You can count, can't you? Put out both of your hands and look at your fingers. That is how many rusted swords you should come back with. Only then can I give you the sword of trial. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-05.html new file mode 100644 index 0000000000..fae34065fd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-05.html @@ -0,0 +1,5 @@ +Trader Simplon:
+Ho, you have brought back ten rusted swords used by the tracker skeletons of the ruins. I can tell from the Gracian characters engraved on the blade -- the undead of the ruins are all spirits of the soldiers that died during war with Gracia.
+Anyway, many thanks for your trouble. Here, take one of these rusted swords. Why? Because that is none other than the sword of trial!
+What is that dumbfounded look on your face? Don't be unreasonable. Look here, young fellow, did you think we warriors had a magical sword with splendid ornaments? If I say that is the sword of trial, then understand that it is so, and be off! Here, I will write you a letter to take to Master Auron! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-06.html new file mode 100644 index 0000000000..16a62db53f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/30253-06.html @@ -0,0 +1,3 @@ +Trader Simplon:
+So, how do you like the sword of trial that I gave you? By the way, why are you still staying in this village? Go along to Master Auron and show him the letter that I wrote. Then he will tell you about the test you must take with the sword of trial to become a Warrior. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/Q00401_PathOfTheWarrior.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/Q00401_PathOfTheWarrior.java new file mode 100644 index 0000000000..0c688d210e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00401_PathOfTheWarrior/Q00401_PathOfTheWarrior.java @@ -0,0 +1,330 @@ +/* + * 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.Q00401_PathOfTheWarrior; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path Of The Warrior (401) + * @author ivantotov + */ +public final class Q00401_PathOfTheWarrior extends Quest +{ + // NPCs + private static final int MASTER_AURON = 30010; + private static final int TRADER_SIMPLON = 30253; + // Items + private static final int AURONS_LETTER = 1138; + private static final int WARRIOR_GUILD_MARK = 1139; + private static final int RUSTED_BRONZE_SWORD1 = 1140; + private static final int RUSTED_BRONZE_SWORD2 = 1141; + private static final int RUSTED_BRONZE_SWORD3 = 1142; + private static final int SIMPLONS_LETTER = 1143; + private static final int VENOMOUS_SPIDERS_LEG = 1144; + // Reward + private static final int MEDALLION_OF_WARRIOR = 1145; + // Monster + private static final int TRACKER_SKELETON = 20035; + private static final int VENOMOUS_SPIDERS = 20038; + private static final int TRACKER_SKELETON_LIDER = 20042; + private static final int ARACHNID_TRACKER = 20043; + // Misc + private static final int MIN_LEVEL = 19; + + public Q00401_PathOfTheWarrior() + { + super(401); + addStartNpc(MASTER_AURON); + addTalkId(MASTER_AURON, TRADER_SIMPLON); + addAttackId(VENOMOUS_SPIDERS, ARACHNID_TRACKER); + addKillId(TRACKER_SKELETON, VENOMOUS_SPIDERS, TRACKER_SKELETON_LIDER, ARACHNID_TRACKER); + registerQuestItems(AURONS_LETTER, WARRIOR_GUILD_MARK, RUSTED_BRONZE_SWORD1, RUSTED_BRONZE_SWORD2, RUSTED_BRONZE_SWORD3, SIMPLONS_LETTER, VENOMOUS_SPIDERS_LEG); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() == ClassId.FIGHTER) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (hasQuestItems(player, MEDALLION_OF_WARRIOR)) + { + htmltext = "30010-04.htm"; + } + else + { + htmltext = "30010-05.htm"; + } + } + else + { + htmltext = "30010-02.htm"; + } + } + else if (player.getClassId() == ClassId.WARRIOR) + { + htmltext = "30010-02a.htm"; + } + else + { + htmltext = "30010-03.htm"; + } + break; + } + case "30010-06.htm": + { + if (!hasQuestItems(player, AURONS_LETTER)) + { + qs.startQuest(); + giveItems(player, AURONS_LETTER, 1); + htmltext = event; + } + break; + } + case "30010-10.html": + { + htmltext = event; + break; + } + case "30010-11.html": + { + if (hasQuestItems(player, SIMPLONS_LETTER, RUSTED_BRONZE_SWORD2)) + { + takeItems(player, RUSTED_BRONZE_SWORD2, 1); + giveItems(player, RUSTED_BRONZE_SWORD3, 1); + takeItems(player, SIMPLONS_LETTER, 1); + qs.setCond(5, true); + htmltext = event; + } + break; + } + case "30253-02.html": + { + if (hasQuestItems(player, AURONS_LETTER)) + { + takeItems(player, AURONS_LETTER, 1); + giveItems(player, WARRIOR_GUILD_MARK, 1); + qs.setCond(2, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onAttack(L2Npc npc, L2PcInstance attacker, int damage, boolean isSummon) + { + final QuestState qs = getQuestState(attacker, false); + if ((qs != null) && qs.isStarted()) + { + switch (npc.getScriptValue()) + { + case 0: + { + npc.getVariables().set("lastAttacker", attacker.getObjectId()); + if (!checkWeapon(attacker)) + { + npc.setScriptValue(2); + } + else + { + npc.setScriptValue(1); + } + break; + } + case 1: + { + if (!checkWeapon(attacker)) + { + npc.setScriptValue(2); + } + else if (npc.getVariables().getInt("lastAttacker") != attacker.getObjectId()) + { + npc.setScriptValue(2); + } + break; + } + } + } + return super.onAttack(npc, attacker, damage, isSummon); + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case TRACKER_SKELETON: + case TRACKER_SKELETON_LIDER: + { + if (hasQuestItems(killer, WARRIOR_GUILD_MARK) && (getQuestItemsCount(killer, RUSTED_BRONZE_SWORD1) < 10)) + { + if (getRandom(10) < 4) + { + giveItems(killer, RUSTED_BRONZE_SWORD1, 1); + if (getQuestItemsCount(killer, RUSTED_BRONZE_SWORD1) == 10) + { + qs.setCond(3, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case VENOMOUS_SPIDERS: + case ARACHNID_TRACKER: + { + if ((getQuestItemsCount(killer, VENOMOUS_SPIDERS_LEG) < 20) && npc.isScriptValue(1)) + { + giveItems(killer, VENOMOUS_SPIDERS_LEG, 1); + if (getQuestItemsCount(killer, VENOMOUS_SPIDERS_LEG) == 20) + { + qs.setCond(6, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == MASTER_AURON) + { + htmltext = "30010-01.htm"; + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case MASTER_AURON: + { + if (hasQuestItems(player, AURONS_LETTER)) + { + htmltext = "30010-07.html"; + } + else if (hasQuestItems(player, WARRIOR_GUILD_MARK)) + { + htmltext = "30010-08.html"; + } + else if (hasQuestItems(player, SIMPLONS_LETTER, RUSTED_BRONZE_SWORD2) && !hasAtLeastOneQuestItem(player, WARRIOR_GUILD_MARK, AURONS_LETTER)) + { + htmltext = "30010-09.html"; + } + else if (hasQuestItems(player, RUSTED_BRONZE_SWORD3) && !hasAtLeastOneQuestItem(player, WARRIOR_GUILD_MARK, AURONS_LETTER)) + { + if (getQuestItemsCount(player, VENOMOUS_SPIDERS_LEG) < 20) + { + htmltext = "30010-12.html"; + } + else + { + // giveAdena(player, 1000, true); No Longer Gives Adena + giveItems(player, MEDALLION_OF_WARRIOR, 1); + addExpAndSp(player, 6080, 0); // Player now only gets EXP Fixed rate. + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30010-13.html"; + } + } + break; + } + case TRADER_SIMPLON: + { + if (hasQuestItems(player, AURONS_LETTER)) + { + htmltext = "30253-01.html"; + } + else if (hasQuestItems(player, WARRIOR_GUILD_MARK)) + { + if (!hasQuestItems(player, RUSTED_BRONZE_SWORD1)) + { + htmltext = "30253-03.html"; + } + else if (getQuestItemsCount(player, RUSTED_BRONZE_SWORD1) < 10) + { + htmltext = "30253-04.html"; + } + else + { + takeItems(player, WARRIOR_GUILD_MARK, 1); + takeItems(player, RUSTED_BRONZE_SWORD1, -1); + giveItems(player, RUSTED_BRONZE_SWORD2, 1); + giveItems(player, SIMPLONS_LETTER, 1); + qs.setCond(4, true); + htmltext = "30253-05.html"; + } + } + else if (hasQuestItems(player, SIMPLONS_LETTER)) + { + htmltext = "30253-06.html"; + } + break; + } + } + } + return htmltext; + } + + private static boolean checkWeapon(L2PcInstance player) + { + L2ItemInstance weapon = player.getActiveWeaponInstance(); + return ((weapon != null) && ((weapon.getId() == RUSTED_BRONZE_SWORD3))); + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30031-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30031-01.html new file mode 100644 index 0000000000..abe4907589 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30031-01.html @@ -0,0 +1,4 @@ +High Priest Biotin:
+Now I see you were a squire. The church of Einhasad has always provided a restful place for pilgrims. Stay here and rest until your weary body and soul have recovered.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30031-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30031-02.html new file mode 100644 index 0000000000..253eb42d2e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30031-02.html @@ -0,0 +1,5 @@ +High Priest Biotin:
+Long ago, this place was where the Elves taught the Humans magic. However, not long after, the Humans betrayed the Elves and went to war with them. In the end, we Humans repaid kindness with betrayal.
+Although it was committed by our ancestors, we inherited their sin. We are still paying for their actions. On this island, dead Elves are unable to rest and became undead called silent horrors and threaten the island residents.
+Wouldn't it be best to put the souls of the elves slain by humans to rest, and ask pardon of their souls? I would like to ask you to do this favor. Go to the Elven Ruins and defeat the silent horrors. And please come back with ten of their skulls. I would like to perform a proper funeral service so the spirits of the elves can obtain rest. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30031-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30031-03.html new file mode 100644 index 0000000000..c76fc7e4bb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30031-03.html @@ -0,0 +1,3 @@ +High Priest Biotin:
+You and I will represent the Humans and show respect to the spirits of the Elves that died by the hands of our ancestors one thousand years ago. You must bring ten silent horror skulls from the Elven Ruins in order to perform a proper funeral service. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30031-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30031-04.html new file mode 100644 index 0000000000..545a504d61 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30031-04.html @@ -0,0 +1,4 @@ +High Priest Biotin:
+You have brought back ten skulls from the ruins. With these, I can perform a proper funeral service for the elves that were slain a long time ago. May the departed spirits of the ruins forget their resentment of a thousand years, and gain peace within the arms of Einhasad.
+Please take this coin ... This is proof that you have given a great contribution to the people of Gludio. May your sword continue to be used to punish evil, and your shield be used to protect the righteous. May the protection of light be with you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30031-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30031-05.html new file mode 100644 index 0000000000..b7ece634f9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30031-05.html @@ -0,0 +1,3 @@ +High Priest Biotin:
+Einhasad leads all pilgrims in the right direction in their search for truth. We cannot know what disasters or blessings are in store for us in the future, being as we are mere Humans. But I am sure there is something prepared for you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30037-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30037-01.html new file mode 100644 index 0000000000..6cc28d1b45 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30037-01.html @@ -0,0 +1,4 @@ +High Priestess Levian:
+This is the holy hall of Einhasad. How could you clad yourself with the tools of war and enter the most holy place? From your mark, I see you are a Knight in training. If that is the case, shouldn't you show all the more respect in the Temple of Einhasad? Next time, enter the temple in a more reverent costume.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30037-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30037-02.html new file mode 100644 index 0000000000..32dbb9fddd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30037-02.html @@ -0,0 +1,5 @@ +High Priestess Levian:
+These days, I hear from the guards that the lizardmen appear in great numbers on the southern shore of the province ... As you know, they look like lizards but are all evil creatures made by Shilen. The lizard is the descendent of the dragon, which is the ultimate creature of evil.
+In addition, the guards say that these lizardmen perform strange sacrifices every night towards the sea. I am sure they are praying to Shilen, who lies asleep in the deep. Gludio is the land of the righteous ones that follow Einhasad. We cannot allow the land to become contaminated by unholy pagan creatures.
+In the name of Einhasad, destroy Shilen's evil creatures. Take this mark with you, and strike the lizardmen with your sword of righteousness. If you return with twenty tokens after killing the lizardmen I will give you the Coin of Lords. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30037-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30037-03.html new file mode 100644 index 0000000000..1118f0aa0b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30037-03.html @@ -0,0 +1,3 @@ +High Priestess Levian:
+How come you have returned so early? You must return with twenty tokens of proof that you have killed the evil creatures of Shilen in order for me to give you the Coin of Lords. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30037-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30037-04.html new file mode 100644 index 0000000000..58b6d14870 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30037-04.html @@ -0,0 +1,5 @@ +High Priestess Levian:
+Thank you. Now the lizardmen will not dare covet the land of Gludio. When I look at the strange idols of the lizardmen, I get shivers. I am thinking of burning these unholy things.
+As we agreed, I will give you the Coin of Lords. May you always live by the will of Einhasad. Only the spiritual teachings of light will protect you from corruption.
+Pray, do not take my advice lightly. I have seen many Knights fall to the apostles of darkness because of arrogance. In the end, they return to the arms of Einhasad as they are cleansed in the flames of the stake, but it is not a desirable fate. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30037-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30037-05.html new file mode 100644 index 0000000000..9bb5ba5299 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30037-05.html @@ -0,0 +1,3 @@ +High Priestess Levian:
+May Einhasad bless your pilgrimage. By the way, have you been to Talking Island? As you know, that small and isolated island is also a part of the Gludio province. Therefore the captain of guards and High Priest there will also have the Coin of Lords. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30039-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30039-01.html new file mode 100644 index 0000000000..26935aa1f5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30039-01.html @@ -0,0 +1,4 @@ +Captain Gilbert:
+We have not met in a long time. So you are an esquire in training... Anyway, I am glad to see you! I am Captain Gilbert.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30039-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30039-02.html new file mode 100644 index 0000000000..e7de499b73 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30039-02.html @@ -0,0 +1,4 @@ +Captain Gilbert:
+Giant spiders have always existed on Talking Island. They used to only live on the northern part of the island, but lately incidents of their attacking homes and carrying off livestock have increased. They are so huge and ferocious that it is sometimes too difficult for the guard troop to deal with them.
+Please. Destroy the giant spiders. Hunt the spiders and peel off their husks. Return with twenty husks and I will give you the coin of the lords. I am sorry to ask you to do such a dangerous task, but I cannot think of anyone but you who could possibly manage this. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30039-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30039-03.html new file mode 100644 index 0000000000..cfe17f1f64 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30039-03.html @@ -0,0 +1,3 @@ +Captain Gilbert:
+Bring me twenty giant spider husks and I will give you the coin of the lords. I am sorry to ask you to do such a dangerous task, but I cannot think of anyone but you who could possibly manage this. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30039-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30039-04.html new file mode 100644 index 0000000000..3d9d07e40a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30039-04.html @@ -0,0 +1,3 @@ +Captain Gilbert:
+Thank you, young esquire. As promised, I will give you the coin of the lords. I hope your pilgrimage is successful. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30039-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30039-05.html new file mode 100644 index 0000000000..153775ee0d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30039-05.html @@ -0,0 +1,4 @@ +Captain Gilbert:
+So we meet again, esquire!. Nice to see you! Is your pilgrimage going well?
+Have you been the Einhasad Temple, by any chance? High Priest Biotin may have need of your services. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-01.html new file mode 100644 index 0000000000..ad3e9f7ea0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-01.html @@ -0,0 +1,5 @@ +High Priest Raymond:
+May the blessings of Einhasad be with you always.
+Long ago the knights alliance protected the church of Einhasad. Not many know this, but in the chaos that followed the fall of the empire, it was that very alliance that protected the church from raiders and pagans, while still protecting the priests from the armies of Beleth. We never forgot the assistance we received from them over those dark, desperate days.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-02.html new file mode 100644 index 0000000000..0f993db1e3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-02.html @@ -0,0 +1,6 @@ +High Priest Raymond:
+Of course! You see, we must ask the alliance's help again.
+A few years ago, during the war with Gracia, we sent several priests to a small village in the south. The priest treated the wounded and performed funerals for the dead there, but one day the village was attacked by mercenaries. Men, woman, child... it didn't matter - each was butchered where they stood. Their bodies may have decayed over time, but the spirits of the dead there have not peace and still haunt the village ruins as undead spectres.
+Of course, it is the duty of the priest to console their spirits and put them to rest through player, but it is too dangerous for someone like myself to face the horrors in those ruins. That is why I am asking you a favor.
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-03.html new file mode 100644 index 0000000000..c3eafa025c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-03.html @@ -0,0 +1,5 @@ +High Priest Raymond:
+Esquire, I beg you! Please go to the Ruins of Despair to the south of the village and find the departed spirits of the priests that have turned into the undead. Destroy them with your sword and recover the Einhasad crosses that are somewhere on their bodies. If you bring back twelve Einhasad crosses, I can perform a mass that soothes the spirits of the dead priests.
+Before you go, take this. It is a mark that shows you are performing a holy task for the church of Einhasad.
+Well than, I shall pray for your safe return. May the light of Einhasad guide you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-04.html new file mode 100644 index 0000000000..15da30ba11 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-04.html @@ -0,0 +1,4 @@ +High Priest Raymond:
+Even now, I can hear the cries and groans of despair from my priest brothers who cannot find rest. Please bring me twelve Silver Crosses of Einhasad from the Undead Priests at the Ruins of Despair, which is to the south of the village, so that I may offer a service to appease their souls.
+May Einhasad's blessing be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-05.html new file mode 100644 index 0000000000..65698b53b4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-05.html @@ -0,0 +1,4 @@ +High Priest Raymond:
+Now I can finally pray for the brothers who have perished while answering the summons of the gods. May Einhasad admit their souls ...
+Esquire, on behalf of the priests, I thank you. Here, take this coin of the lords. May the light of Einhasad guide you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-06.html new file mode 100644 index 0000000000..a2768b4f0e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30289-06.html @@ -0,0 +1,3 @@ +High Priest Raymond:
+Esquire, I see your pilgrimage is not yet finished. Please take a moment to kneel in front of the altar and offer a silent prayer of reverence. The light of Einhasad will bring the strength back into your weary soul. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30332-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30332-01.html new file mode 100644 index 0000000000..0bc3796d3d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30332-01.html @@ -0,0 +1,5 @@ +Captain Bathis:
+Oh-ho. That mark tells me that you're an apprentice knight! Our guards do a great job protecting the village, so I don't think we have much to as of someone like you.
+Well, if you insist on helping, there is one thing that you could do...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30332-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30332-02.html new file mode 100644 index 0000000000..cdfd419cf8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30332-02.html @@ -0,0 +1,4 @@ +Captain Bathis:
+If you follow the road northeast of the village, you will cross a river that marks the area between Gludio and Neutral Zone. There is a bridge that crosses the river. Recently, bugbear raiders have appeared around the area between the bridge and the Neutral Zone and attacked trader coaches. Already twenty traders have lost their lives, and the goods that were stolen are too numerous to list. The traders have requested funds from the trader's guild headquarters in order to hire mercenaries, but the guild has yet to answer their request.
+I would be much obliged if you would get rid of the bugbears. According to the reports, there are about ten bugbears that attacked the trader coaches. Kill them and bring back ten necklaces. While on this task, you will be performing an official task of the Gludio guards, so take this with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30332-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30332-03.html new file mode 100644 index 0000000000..a10009e16c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30332-03.html @@ -0,0 +1,4 @@ +Captain Bathis:
+Have you defeated the bugbear raiders? What do you mean, not yet? What have you done all this time?! I have already reported to my superiors that I have sent out soldiers to destroy the bugbears ... What will they take me for?!
+At this very moment, the Traders that do business with Dion are losing quite a bit of profit by having to take the long way around on the southern coastal road! This is not the time for you to be fooling around in the village! Go defeat the bugbears and bring back ten necklaces. Then I will give you the coin of the lords! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30332-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30332-04.html new file mode 100644 index 0000000000..e4bbcfdf99 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30332-04.html @@ -0,0 +1,4 @@ +Captain Bathis:
+Oh, so you have killed all the bugbears. Now the traders can safely drive their carts to Dion. Here, take this -- it's a coin of the lords.
+Now you have the coin in your hand, and I have preserved my dignity as captain of the guards. Wasn't that a good exchange? Ha! Well, have a fine day! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30332-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30332-05.html new file mode 100644 index 0000000000..8784a3c734 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30332-05.html @@ -0,0 +1,4 @@ +Captain Bathis:
+Are you still on your training quest, fledgling? You're inviting trouble ... tsk tsk ...
+Come and see me whenever you feel like quitting! I will hire you on in the guard. Ha! Well, have a fine day! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30379-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30379-01.html new file mode 100644 index 0000000000..a32c14c552 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30379-01.html @@ -0,0 +1,5 @@ +Captain Bezique:
+I have seen many young people like you who seek to become Human Knights. They foolishly try to act the part of the hero, and put not only themselves, but others in danger with their foolishness.
+This age no longer needs noble heroes. No one expects a courageous knight to appear and save them. Do you know what the people want? They want well-organized guards, carrying good weapons that will protect them, and a strong castle wall outside the village.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30379-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30379-02.html new file mode 100644 index 0000000000..40e451f1c7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30379-02.html @@ -0,0 +1,5 @@ +Captain Bezique:
+My my ... you are quite stubborn. Fine. If you must play the part of the hero ... why don't you go and hunt the spiders that have been wreaking havoc lately? Giant spiders have recently been reported upturning farmers' carts, raiding sheep and cattle, and even attacking Humans.
+The monsters you need to hunt are called poison spiders, or arachnid tracker. Cut off their legs, then bring back twenty of them and I will give you the coin of the lords. Go to the Windmill Hill on the left of the southern coastal road and you will see lots of them appearing. I must follow procedure, so being captain of the guards, I give you this mark to take with you.
+Well then, I hope you return with your life! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30379-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30379-03.html new file mode 100644 index 0000000000..92dc756614 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30379-03.html @@ -0,0 +1,4 @@ +Captain Bezique:
+... No doubt it was too difficult for you!
+As I told you, bring back twenty legs of the giant poison spiders or arachnid tracker and I will give you the coin of the lords. To reach the place where they are often sighted, follow the southern coastline road. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30379-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30379-04.html new file mode 100644 index 0000000000..f1c84e330f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30379-04.html @@ -0,0 +1,4 @@ +Captain Bezique:
+Ho ho, so you've really killed twenty poison spiders! Perhaps I've been too harsh on you. I was just about to organize a team of soldiers to battle the poison spiders, because I thought you weren't coming back. I apologize for being rude.
+Here, I give you one of the few coins of the lords I have in my possession. I hope you have a successful quest. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30379-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30379-05.html new file mode 100644 index 0000000000..64335c8909 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30379-05.html @@ -0,0 +1,5 @@ +Captain Bezique:
+So we meet again. Are you still on your quest? Ho ho, it must not be that easy to become a Human Knight.
+Have you been to Talking Island? As you know, the island is also a part of the Gludio province. The captain of guards and the high priest there also have coins of the lords. As it is a remote place, security will be loose, and a warrior -- no, an apprentice Knight -- like yourself will be of aid.
+Go to the wharf of the harbor to take a ship going to Talking Island If you don't know the way to the harbor, ask Guard Plink. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-01.htm new file mode 100644 index 0000000000..9687e63101 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-01.htm @@ -0,0 +1,4 @@ +Sir Klaus Vasper:
+Even in this age, there are still young fighters now and then who wish to become a Human Knight. However, most are novices wrapped up in fantasies that they will become hero knights like those from legends. There are not many that have the qualities of a true Knight -- in other words, the courage to sacrifice oneself and the faith to stand up against the absurdities of the world.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-02.htm new file mode 100644 index 0000000000..c0ca2ce2bf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-02.htm @@ -0,0 +1,5 @@ +Sir Klaus Vasper:
+y comrade of the sword, you are still not experienced enough to become a Knight. I can see the true passion and belief you hold in your heart, but those are not enough -- only through the forge of battle will you also gain the power to hold fast to those beliefs in the midst of unrighteousness.
+Come back when you are a little older and wiser. When you are ready, I will test your worthiness to be a true Knight.
+(Only characters level 18 and above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-02a.htm new file mode 100644 index 0000000000..778ebcd3fb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-02a.htm @@ -0,0 +1,3 @@ +Sir Klaus Vasper:
+Haven't you already earned the title of Knight? Brother, you need not receive the trial of the esquire again. Your duty is to fight for your noble faith and the glory of the lord. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-03.htm new file mode 100644 index 0000000000..43b0fb6ecd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-03.htm @@ -0,0 +1,3 @@ +Sir Klaus Vasper:
+It seems that you have already selected your path. You do not need to perform the trials of the esquire. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-04.htm new file mode 100644 index 0000000000..713db46f09 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-04.htm @@ -0,0 +1,3 @@ +Sir Klaus Vasper:
+Haven't you already received the Sword of Ritual? That sword is proof that you have the qualifications to become a Knight. If you take it to the grand master of the fighters guild, he will change your profession to a Human Knight. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-05.htm new file mode 100644 index 0000000000..c2f473e731 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-05.htm @@ -0,0 +1,4 @@ +Sir Klaus Vasper:
+You want to become a Human Knight? Then you must go through the trial of the esquire to prove that you are not merely a rash, hot-blooded fighter, but one with true knightly spirit. This is a form of ritual and a process of training that all who desire to become a Human Knight must perform.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-06.html new file mode 100644 index 0000000000..a6182062da --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-06.html @@ -0,0 +1,5 @@ +Sir Klaus Vasper:
+Knights were initially chosen to fight injustice and to protect the weak. The right to wear a sword and shield goes along with the responsibility to protect citizens from danger. The attire of knights has changed many times along with the changes of eras, but the fact that we are guardians of ordinary folk has not changed. That is because of the divine calling that we received from Einhasad, mother of creation.
+The moment that a young warrior begins the life of a guardian knight and embarks on a training mission is called the Trial of an Apprentice Human Knight. An apprentice knight travels all over the kingdom, usually to the areas that don't receive the protection of the army, and aids those who ask for help. Those we receive help gives a Coin of Lords as a token of the thanks to the apprentice knight.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-07.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-07.htm new file mode 100644 index 0000000000..9d63c7b960 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-07.htm @@ -0,0 +1,6 @@ +Sir Karrel Vasper:
+Traditionally, the lord of the citizens who received the apprentice knight's help would show gratitude by inviting the apprentice to his castle and throwing a feast. But these days, the tradition is to give a Coin of Lords. A Coin of Lords is a gold coin engraved with a wise saying, showing the lord's gratitude. The right to give out these coins is given to the village guard captain or high priest.
+When the pilgrimage is over and the apprentice knight returns, the number of Coins he has determines whether the apprentice knight will be formally recognized as a full-fledged knight.
+If you wish to join the Knight Guild and earn the title of a knight, you must also go through this trial. So, my brother of the sword, will you formally go through the trial of the apprentice knight?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-08.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-08.htm new file mode 100644 index 0000000000..e91924b596 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-08.htm @@ -0,0 +1,5 @@ +Sir Klaus Vasper:
+Very well. I, Sir Klaus Vasper, the guardian knight of the west, bestow this Trial of the Apprentice Knight upon you. Always carry this mark with you while embarking on the trial. This is how people along your pilgrimage will recognize you as an apprentice knight.
+As you go around to the villages in the Gludio region, try to meet with the local guard captain or the high priest. They will suggest many difficult tasks that you may perform for the people. When you complete these tasks, you can obtain a Coin of Lords. If you return with three or more Coins, you will have completed your trial.
+Then, embark on your journey. May Einhasad's protection be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-09.html new file mode 100644 index 0000000000..949097c01c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-09.html @@ -0,0 +1,3 @@ +Sir Klaus Vasper:
+Your pilgrimage is not over until you receive at least three coins of lords. Travel around the various villages in Gludio and meet the Guard Captains and High Priests. You can receive coins if you perform their tasks. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-10.html new file mode 100644 index 0000000000..0f3207e28f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-10.html @@ -0,0 +1,6 @@ +Sir Klaus Vasper:
+Come, comrade of the sword. You have done well. By bringing these three coins of lords, you have proven you have the abilities and qualities to become a Knight.
+Now, do you want to complete the trial of the esquire? If so, I will give you the Sword of Ritual, with which you may change your profession to a Human Knight. Of course, if you want, you need not finish the trial of the esquire, but may instead continue with your journey.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-11.html new file mode 100644 index 0000000000..6632d21003 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-11.html @@ -0,0 +1,6 @@ +Sir Klaus Vasper:
+Welcome, comrade of the sword. I see you have had great success on your pilgrimage. You have brought many coins of lords when you only had to bring three ... This proves that you have sufficient ability and disposition to become a Human Knight.
+Now, do you want to complete the trial of the esquire? If so, I will give you the Sword of Ritual, with which you may change your profession to a Human Knight. Of course, if you want, you need not finish the trial of the esquire, but may instead continue with your journey.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-12.html new file mode 100644 index 0000000000..17715d3ad4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-12.html @@ -0,0 +1,4 @@ +Sir Klaus Vasper:
+Welcome, comrade of the sword. I cannot be anything but surprised - it has been long indeed since any esquires that have brought back six coins of lords. This is more than enough to prove that you have the abilities and qualities to become a Human Knight.
+Now it is time to complete your trial as esquire. You have successfully endured this most demanding trial. Congratulations! Now you have earned the qualifications to become a Knight. I will give you the Sword of Ritual. This sword was used in the knighting ceremony of the legendary Sir Sedrick -- bear it with care. If you take this to the Grand Master of the fighters guild, he will change your profession to a Human Knight. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-13.html new file mode 100644 index 0000000000..52947cf285 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-13.html @@ -0,0 +1,5 @@ +Sir Klaus Vasper:
+You have successfully endured a most demanding trial. Congratulations! Now you are qualified to become a Human Knight.
+I will give you the Sword of Ritual. This sword was used in the knighting ceremony of the legendary Sir Sedrick -- bear it with care. If you take this to the Grand Master of the fighters guild, he will change your profession to a Human Knight.
+Now, it is time for you to leave. Keep the faith and the romance of chivalry in your heart, and make your own destiny. May the good will of Einhasad always remain with you through every challenge. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-14.html new file mode 100644 index 0000000000..5465f9d983 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-14.html @@ -0,0 +1,4 @@ +Sir Klaus Vasper:
+You have successfully endured a most demanding trial. Congratulations! Now you are qualified to become a Human Knight.
+I will give you the Sword of Ritual. This sword was used in the knighting ceremony of the legendary Sir Sedrick -- bear it with care. If you take this to the Grand Master of the fighters guild, he will change your profession to a Human Knight. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-15.html new file mode 100644 index 0000000000..4e9879b2e7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30417-15.html @@ -0,0 +1,3 @@ +Sir Klaus Vasper:
+Three coins of lords are the minimum condition in order to become a Human Knight. If you think that you are not ready, continue your pilgrimage. If there are villages in Gludio that you have not gone to yet, go to them and meet the Guard Captains or High Priests. I heard one enthusiastic esquire even journeyed to Talking Island. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30653-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30653-01.html new file mode 100644 index 0000000000..7cb19ec7d7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/30653-01.html @@ -0,0 +1,4 @@ +Sir Aaron Tanford:
+From your mark I gather that you are undergoing the Trial of the Esquire. They must be hard up for students, eh? Your courage is admirable but, honestly my friend, you may as well give up. Do you think just anyone can become a Knight?
+You are not even of noble birth, are you? One cannot become a true Knight without noble birth and natural talent. It is really pathetic to see someone from the lower classes struggle to become a Knight. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/Q00402_PathOfTheHumanKnight.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/Q00402_PathOfTheHumanKnight.java new file mode 100644 index 0000000000..c8217fe7db --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00402_PathOfTheHumanKnight/Q00402_PathOfTheHumanKnight.java @@ -0,0 +1,628 @@ +/* + * 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.Q00402_PathOfTheHumanKnight; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path Of The Human Knight (402) + * @author ivantotov + */ +public final class Q00402_PathOfTheHumanKnight extends Quest +{ + // NPCs + private static final int HIGH_PRIEST_BIOTIN = 30031; + private static final int LEVIAN = 30037; + private static final int CAPTAIN_GILBERT = 30039; + private static final int HIGH_PRIEST_RAYMOND = 30289; + private static final int CAPTAIN_BATHIS = 30332; + private static final int CAPTAIN_BEZIQUE = 30379; + private static final int SIR_KLAUS_VASPER = 30417; + private static final int SIR_ARON_TANFORD = 30653; + // Items + private static final int SQUIRES_MARK = 1271; + private static final int COIN_OF_LORDS1 = 1162; + private static final int COIN_OF_LORDS2 = 1163; + private static final int COIN_OF_LORDS3 = 1164; + private static final int COIN_OF_LORDS4 = 1165; + private static final int COIN_OF_LORDS5 = 1166; + private static final int COIN_OF_LORDS6 = 1167; + private static final int GLUDIO_GUARDS_1ST_BADGE = 1168; + private static final int BUGBEAR_NECKLACE = 1169; + private static final int EINHASADS_1ST_TEMPLE_BADGE = 1170; + private static final int EINHASAD_CRUCIFIX = 1171; + private static final int GLUDIO_GUARDS_2ND_BADGE = 1172; + private static final int VENOMOUS_SPIDERS_LEG = 1173; + private static final int EINHASADS_2ND_TEMPLE_BADGE = 1174; + private static final int LIZARDMANS_TOTEM = 1175; + private static final int GLUDIO_GUARDS_3RD_BADGE = 1176; + private static final int GIANT_SPIDERS_HUSK = 1177; + private static final int EINHASADS_3RD_TEMPLE_BADGE = 1178; + private static final int SKULL_OF_SILENT_HORROR = 1179; + // Reward + private static final int SWORD_OF_RITUAL = 1161; + // Monster + private static final int LANGK_LIZARDMAN_WARRIOR = 20024; + private static final int LANGK_LIZARDMAN_SCOUT = 20027; + private static final int LANGK_LIZARDMAN = 20030; + private static final int VENOMOUS_SPIDER = 20038; + private static final int ARACHNID_TRACKER = 20043; + private static final int ARACHNID_PREDATOR = 20050; + private static final int GIANT_SPIDER = 20103; + private static final int TALON_SPIDER = 20106; + private static final int BLADE_SPIDER = 20108; + private static final int SILENT_HORROR = 20404; + private static final int BUGBEAR_RAIDER = 20775; + // Quest Monster + private static final int UNDEAD_PRIEST = 27024; + // Misc + private static final int MIN_LEVEL = 18; + + public Q00402_PathOfTheHumanKnight() + { + super(402); + addStartNpc(SIR_KLAUS_VASPER); + addTalkId(SIR_KLAUS_VASPER, HIGH_PRIEST_BIOTIN, LEVIAN, HIGH_PRIEST_RAYMOND, CAPTAIN_GILBERT, CAPTAIN_BATHIS, CAPTAIN_BEZIQUE, SIR_ARON_TANFORD); + addKillId(LANGK_LIZARDMAN_WARRIOR, LANGK_LIZARDMAN_SCOUT, LANGK_LIZARDMAN, VENOMOUS_SPIDER, ARACHNID_TRACKER, ARACHNID_PREDATOR, GIANT_SPIDER, TALON_SPIDER, BLADE_SPIDER, SILENT_HORROR, BUGBEAR_RAIDER, UNDEAD_PRIEST); + registerQuestItems(SQUIRES_MARK, COIN_OF_LORDS1, COIN_OF_LORDS2, COIN_OF_LORDS3, COIN_OF_LORDS4, COIN_OF_LORDS5, COIN_OF_LORDS6, GLUDIO_GUARDS_1ST_BADGE, BUGBEAR_NECKLACE, EINHASADS_1ST_TEMPLE_BADGE, EINHASAD_CRUCIFIX, GLUDIO_GUARDS_2ND_BADGE, VENOMOUS_SPIDERS_LEG, EINHASADS_2ND_TEMPLE_BADGE, LIZARDMANS_TOTEM, GLUDIO_GUARDS_3RD_BADGE, GIANT_SPIDERS_HUSK, EINHASADS_3RD_TEMPLE_BADGE, SKULL_OF_SILENT_HORROR); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + + if (qs == null) + { + return null; + } + + String htmltext = null; + final long CoinCount = getQuestItemsCount(player, COIN_OF_LORDS1, COIN_OF_LORDS2, COIN_OF_LORDS3, COIN_OF_LORDS4, COIN_OF_LORDS5, COIN_OF_LORDS6); + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() == ClassId.FIGHTER) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (hasQuestItems(player, SWORD_OF_RITUAL)) + { + htmltext = "30417-04.htm"; + } + else + { + htmltext = "30417-05.htm"; + } + } + else + { + htmltext = "30417-02.htm"; + } + } + else if (player.getClassId() == ClassId.KNIGHT) + { + htmltext = "30417-02a.htm"; + } + else + { + htmltext = "30417-03.htm"; + } + break; + } + case "30417-08.htm": + { + qs.startQuest(); + giveItems(player, SQUIRES_MARK, 1); + htmltext = event; + break; + } + case "30289-02.html": + case "30417-06.html": + case "30417-07.htm": + case "30417-15.html": + { + htmltext = event; + break; + } + case "30417-13.html": + { + if (hasQuestItems(player, SQUIRES_MARK) && ((CoinCount) == 3)) + { + giveAdena(player, 81900, true); + giveItems(player, SWORD_OF_RITUAL, 1); + takeItems(player, COIN_OF_LORDS1, 1); + takeItems(player, COIN_OF_LORDS2, 1); + takeItems(player, COIN_OF_LORDS3, 1); + takeItems(player, COIN_OF_LORDS4, 1); + takeItems(player, COIN_OF_LORDS5, 1); + takeItems(player, COIN_OF_LORDS6, 1); + takeItems(player, GLUDIO_GUARDS_1ST_BADGE, 1); + takeItems(player, GLUDIO_GUARDS_2ND_BADGE, 1); + takeItems(player, GLUDIO_GUARDS_3RD_BADGE, 1); + takeItems(player, EINHASADS_1ST_TEMPLE_BADGE, 1); + takeItems(player, EINHASADS_2ND_TEMPLE_BADGE, 1); + takeItems(player, EINHASADS_3RD_TEMPLE_BADGE, 1); + takeItems(player, BUGBEAR_NECKLACE, 1); + takeItems(player, EINHASAD_CRUCIFIX, 1); + takeItems(player, VENOMOUS_SPIDERS_LEG, 1); + takeItems(player, LIZARDMANS_TOTEM, 1); + takeItems(player, GIANT_SPIDERS_HUSK, 1); + takeItems(player, SKULL_OF_SILENT_HORROR, 1); + takeItems(player, SQUIRES_MARK, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 160267, 11576); + } + else if (level == 19) + { + addExpAndSp(player, 228064, 14925); + } + else + { + addExpAndSp(player, 295862, 18274); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = event; + } + break; + } + case "30417-14.html": + { + if (hasQuestItems(player, SQUIRES_MARK) && ((CoinCount) > 3) && ((CoinCount) < 6)) + { + giveAdena(player, 81900, true); + giveItems(player, SWORD_OF_RITUAL, 1); + takeItems(player, COIN_OF_LORDS1, 1); + takeItems(player, COIN_OF_LORDS2, 1); + takeItems(player, COIN_OF_LORDS3, 1); + takeItems(player, COIN_OF_LORDS4, 1); + takeItems(player, COIN_OF_LORDS5, 1); + takeItems(player, COIN_OF_LORDS6, 1); + takeItems(player, GLUDIO_GUARDS_1ST_BADGE, 1); + takeItems(player, GLUDIO_GUARDS_2ND_BADGE, 1); + takeItems(player, GLUDIO_GUARDS_3RD_BADGE, 1); + takeItems(player, EINHASADS_1ST_TEMPLE_BADGE, 1); + takeItems(player, EINHASADS_2ND_TEMPLE_BADGE, 1); + takeItems(player, EINHASADS_3RD_TEMPLE_BADGE, 1); + takeItems(player, BUGBEAR_NECKLACE, 1); + takeItems(player, EINHASAD_CRUCIFIX, 1); + takeItems(player, VENOMOUS_SPIDERS_LEG, 1); + takeItems(player, LIZARDMANS_TOTEM, 1); + takeItems(player, GIANT_SPIDERS_HUSK, 1); + takeItems(player, SKULL_OF_SILENT_HORROR, 1); + takeItems(player, SQUIRES_MARK, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 160267, 11576); + } + else if (level == 19) + { + addExpAndSp(player, 228064, 14925); + } + else + { + addExpAndSp(player, 295862, 18274); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = event; + } + break; + } + case "30031-02.html": + { + giveItems(player, EINHASADS_3RD_TEMPLE_BADGE, 1); + htmltext = event; + break; + } + case "30037-02.html": + { + giveItems(player, EINHASADS_2ND_TEMPLE_BADGE, 1); + htmltext = event; + break; + } + case "30289-03.html": + { + giveItems(player, EINHASADS_1ST_TEMPLE_BADGE, 1); + htmltext = event; + break; + } + case "30039-02.html": + { + giveItems(player, GLUDIO_GUARDS_3RD_BADGE, 1); + htmltext = event; + break; + } + case "30379-02.html": + { + giveItems(player, GLUDIO_GUARDS_2ND_BADGE, 1); + htmltext = event; + break; + } + case "30332-02.html": + { + giveItems(player, GLUDIO_GUARDS_1ST_BADGE, 1); + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case LANGK_LIZARDMAN_WARRIOR: + case LANGK_LIZARDMAN_SCOUT: + case LANGK_LIZARDMAN: + { + if (hasQuestItems(killer, EINHASADS_2ND_TEMPLE_BADGE) && (getQuestItemsCount(killer, LIZARDMANS_TOTEM) < 20) && (getRandom(10) < 5)) + { + giveItems(killer, LIZARDMANS_TOTEM, 1); + if (getQuestItemsCount(killer, LIZARDMANS_TOTEM) == 20) + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case VENOMOUS_SPIDER: + case ARACHNID_TRACKER: + case ARACHNID_PREDATOR: + { + if (hasQuestItems(killer, GLUDIO_GUARDS_2ND_BADGE) && (getQuestItemsCount(killer, VENOMOUS_SPIDERS_LEG) < 20)) + { + giveItems(killer, VENOMOUS_SPIDERS_LEG, 1); + if (getQuestItemsCount(killer, VENOMOUS_SPIDERS_LEG) == 20) + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case GIANT_SPIDER: + case TALON_SPIDER: + case BLADE_SPIDER: + { + if (hasQuestItems(killer, GLUDIO_GUARDS_3RD_BADGE) && (getQuestItemsCount(killer, GIANT_SPIDERS_HUSK) < 20) && (getRandom(10) < 4)) + { + giveItems(killer, GIANT_SPIDERS_HUSK, 1); + if (getQuestItemsCount(killer, GIANT_SPIDERS_HUSK) == 20) + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case SILENT_HORROR: + { + if (hasQuestItems(killer, EINHASADS_3RD_TEMPLE_BADGE) && (getQuestItemsCount(killer, SKULL_OF_SILENT_HORROR) < 10) && (getRandom(10) < 4)) + { + giveItems(killer, SKULL_OF_SILENT_HORROR, 1); + if (getQuestItemsCount(killer, SKULL_OF_SILENT_HORROR) == 10) + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case BUGBEAR_RAIDER: + { + if (hasQuestItems(killer, GLUDIO_GUARDS_1ST_BADGE) && (getQuestItemsCount(killer, BUGBEAR_NECKLACE) < 10)) + { + giveItems(killer, BUGBEAR_NECKLACE, 1); + if (getQuestItemsCount(killer, BUGBEAR_NECKLACE) == 10) + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case UNDEAD_PRIEST: + { + if (hasQuestItems(killer, EINHASADS_1ST_TEMPLE_BADGE) && (getQuestItemsCount(killer, EINHASAD_CRUCIFIX) < 12) && (getRandom(10) < 5)) + { + giveItems(killer, EINHASAD_CRUCIFIX, 1); + if (getQuestItemsCount(killer, EINHASAD_CRUCIFIX) == 12) + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == SIR_KLAUS_VASPER) + { + htmltext = "30417-01.htm"; + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case SIR_KLAUS_VASPER: + { + final long CoinCount = getQuestItemsCount(player, COIN_OF_LORDS1, COIN_OF_LORDS2, COIN_OF_LORDS3, COIN_OF_LORDS4, COIN_OF_LORDS5, COIN_OF_LORDS6); + if (hasQuestItems(player, SQUIRES_MARK)) + { + if ((CoinCount) < 3) + { + htmltext = "30417-09.html"; + } + else if ((CoinCount) == 3) + { + htmltext = "30417-10.html"; + } + else if (((CoinCount) > 3) && ((CoinCount) < 6)) + { + htmltext = "30417-11.html"; + } + else + { + giveAdena(player, 163800, true); + giveItems(player, SWORD_OF_RITUAL, 1); + takeItems(player, COIN_OF_LORDS1, 1); + takeItems(player, COIN_OF_LORDS2, 1); + takeItems(player, COIN_OF_LORDS3, 1); + takeItems(player, COIN_OF_LORDS4, 1); + takeItems(player, COIN_OF_LORDS5, 1); + takeItems(player, COIN_OF_LORDS6, 1); + takeItems(player, SQUIRES_MARK, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 23152); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 29850); + } + else + { + addExpAndSp(player, 591724, 36542); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30417-12.html"; + } + } + break; + } + case HIGH_PRIEST_BIOTIN: + { + if (hasQuestItems(player, SQUIRES_MARK) && !hasAtLeastOneQuestItem(player, EINHASADS_3RD_TEMPLE_BADGE, COIN_OF_LORDS6)) + { + htmltext = "30031-01.html"; + } + else if (hasQuestItems(player, EINHASADS_3RD_TEMPLE_BADGE)) + { + if (getQuestItemsCount(player, SKULL_OF_SILENT_HORROR) < 10) + { + htmltext = "30031-03.html"; + } + else + { + giveItems(player, COIN_OF_LORDS6, 1); + takeItems(player, EINHASADS_3RD_TEMPLE_BADGE, 1); + takeItems(player, SKULL_OF_SILENT_HORROR, -1); + htmltext = "30031-04.html"; + } + } + else if (hasQuestItems(player, COIN_OF_LORDS6)) + { + htmltext = "30031-05.html"; + } + break; + } + case LEVIAN: + { + if (hasQuestItems(player, SQUIRES_MARK) && !hasAtLeastOneQuestItem(player, EINHASADS_2ND_TEMPLE_BADGE, COIN_OF_LORDS4)) + { + htmltext = "30037-01.html"; + } + else if (hasQuestItems(player, EINHASADS_2ND_TEMPLE_BADGE)) + { + if (getQuestItemsCount(player, LIZARDMANS_TOTEM) < 20) + { + htmltext = "30037-03.html"; + } + else + { + giveItems(player, COIN_OF_LORDS4, 1); + takeItems(player, EINHASADS_2ND_TEMPLE_BADGE, 1); + takeItems(player, LIZARDMANS_TOTEM, -1); + htmltext = "30037-04.html"; + } + } + else if (hasQuestItems(player, COIN_OF_LORDS4)) + { + htmltext = "30037-05.html"; + } + break; + } + case HIGH_PRIEST_RAYMOND: + { + if (hasQuestItems(player, SQUIRES_MARK) && !hasAtLeastOneQuestItem(player, EINHASADS_1ST_TEMPLE_BADGE, COIN_OF_LORDS2)) + { + htmltext = "30289-01.html"; + } + else if (hasQuestItems(player, EINHASADS_1ST_TEMPLE_BADGE)) + { + if (getQuestItemsCount(player, EINHASAD_CRUCIFIX) < 12) + { + htmltext = "30289-04.html"; + } + else + { + giveItems(player, COIN_OF_LORDS2, 1); + takeItems(player, EINHASADS_1ST_TEMPLE_BADGE, 1); + takeItems(player, EINHASAD_CRUCIFIX, -1); + htmltext = "30289-05.html"; + } + } + else if (hasQuestItems(player, COIN_OF_LORDS2)) + { + htmltext = "30289-06.html"; + } + break; + } + case CAPTAIN_GILBERT: + { + if (hasQuestItems(player, SQUIRES_MARK) && !hasAtLeastOneQuestItem(player, GLUDIO_GUARDS_3RD_BADGE, COIN_OF_LORDS5)) + { + htmltext = "30039-01.html"; + } + else if (hasQuestItems(player, GLUDIO_GUARDS_3RD_BADGE)) + { + if (getQuestItemsCount(player, GIANT_SPIDERS_HUSK) < 20) + { + htmltext = "30039-03.html"; + } + else + { + giveItems(player, COIN_OF_LORDS5, 1); + takeItems(player, GLUDIO_GUARDS_3RD_BADGE, 1); + takeItems(player, GIANT_SPIDERS_HUSK, -1); + htmltext = "30039-04.html"; + } + } + else if (hasQuestItems(player, COIN_OF_LORDS5)) + { + htmltext = "30039-05.html"; + } + break; + } + case CAPTAIN_BEZIQUE: + { + if (hasQuestItems(player, SQUIRES_MARK) && !hasAtLeastOneQuestItem(player, GLUDIO_GUARDS_2ND_BADGE, COIN_OF_LORDS3)) + { + htmltext = "30379-01.html"; + } + else if (hasQuestItems(player, GLUDIO_GUARDS_2ND_BADGE)) + { + if (getQuestItemsCount(player, VENOMOUS_SPIDERS_LEG) < 20) + { + htmltext = "30379-03.html"; + } + else + { + giveItems(player, COIN_OF_LORDS3, 1); + takeItems(player, GLUDIO_GUARDS_2ND_BADGE, 1); + takeItems(player, VENOMOUS_SPIDERS_LEG, -1); + htmltext = "30379-04.html"; + } + } + else if (hasQuestItems(player, COIN_OF_LORDS3)) + { + htmltext = "30379-05.html"; + } + break; + } + case CAPTAIN_BATHIS: + { + if (hasQuestItems(player, SQUIRES_MARK) && !hasAtLeastOneQuestItem(player, GLUDIO_GUARDS_1ST_BADGE, COIN_OF_LORDS1)) + { + htmltext = "30332-01.html"; + } + else if (hasQuestItems(player, GLUDIO_GUARDS_1ST_BADGE)) + { + if (getQuestItemsCount(player, BUGBEAR_NECKLACE) < 10) + { + htmltext = "30332-03.html"; + } + else + { + giveItems(player, COIN_OF_LORDS1, 1); + takeItems(player, GLUDIO_GUARDS_1ST_BADGE, 1); + takeItems(player, BUGBEAR_NECKLACE, -1); + htmltext = "30332-04.html"; + } + } + else if (hasQuestItems(player, COIN_OF_LORDS1)) + { + htmltext = "30332-05.html"; + } + break; + } + case SIR_ARON_TANFORD: + { + if (hasQuestItems(player, SQUIRES_MARK)) + { + htmltext = "30653-01.html"; + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-01.htm new file mode 100644 index 0000000000..7616fd5181 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-01.htm @@ -0,0 +1,5 @@ +Captain Bezique:
+You want to be a Rogue? Oh, bother! Must I see to this as well, when I am so busy these days ...
+Ah! But it happens that there is a bothersome task at the moment. If you solve it for me, I will recommend you as a Rogue. What do you think? Do you want to take the job?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-02.htm new file mode 100644 index 0000000000..2109bb2690 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-02.htm @@ -0,0 +1,4 @@ +Captain Bezique:
+You are an ambitious youth. But on second thought ... I don't think this job is right for you. What I'm sayin' is, you're not the type to become a Rogue ...
+I'm not looking down on you so please don't be offended. It is just that magicians and certain races do not qualify to become Rogues. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-02a.htm new file mode 100644 index 0000000000..abdf69bfc2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-02a.htm @@ -0,0 +1,3 @@ +Captain Bezique:
+You are full of ambition. But this task may be too simple for a seasoned Rogue like you. How about giving your juniors a chance? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-03.htm new file mode 100644 index 0000000000..a3c97d6290 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-03.htm @@ -0,0 +1,5 @@ +Captain Bezique:
+I can see that you are a youngster filled with enthusiasm. Unfortunately, you also seem too inexperienced for this mission. I'm a good judge of ability, so don't quarrel.
+In any event, I'm only concerned for your safety. The bottom line is that this job is simply too dangerous for you right now. Come back to me after you've completed additional training and I'll see what I can do for you...
+(Only characters who are level 18 or above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-04.htm new file mode 100644 index 0000000000..00a085500e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-04.htm @@ -0,0 +1,3 @@ +Captain Bezique:
+Don't you already have the Recommendation that I wrote you?? Take it to the Grand Master of the fighters guild. Then you can change profession to a Rogue. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-05.htm new file mode 100644 index 0000000000..60b70cd964 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-05.htm @@ -0,0 +1,5 @@ +Captain Bezique:
+Aren't you an ambitious young one. Very well! I will explain what you must do.
+Recently, a pack of thieves has been running wild near Gludin Village and causing us problems. They know that our village is in disorder because of the restoration project, and they have been exploiting the opportunity to sneak in and out, stealing the property of many innocent people.
According to the people who have seen them, they are not humans but Ol Mahums. They are so fast that our guards lose them in pursuit every time. If you can capture those thieves, we will recognize your talents and recommend you to be a Rogue.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-06.htm new file mode 100644 index 0000000000..92b75f4eea --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-06.htm @@ -0,0 +1,5 @@ +Captain Bezique:
+Those thieves are surely part of the Ol Mahum straggler troops. The Ol Mahum foreign troops that Gracia hired years ago during the Gracian War, are still pitching runaway troop campsites beyond the mountain north of the village.
+One more thing. There is someone who can help you catch those thieves. There is a woman named Neti who lives in this village... Actually, she was once a chivalrous robber. She sure kept this kingdom's corrupt aristocracy in fear, heh heh. She's also famous as a treasure hunter who found rare and valuable treasure in many ruins.
+You might get a cold reception if you go asking for her help, so take this letter with you. She owes me a debt, so she will surely help you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-07.html new file mode 100644 index 0000000000..4fb4d8f3b3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-07.html @@ -0,0 +1,3 @@ +Captain Bezique:
+You have not sought out Neti yet? She will give you much aid in catching the thieves. She lives in this village, so hurry and find her. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-08.html new file mode 100644 index 0000000000..3598350b4c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-08.html @@ -0,0 +1,5 @@ +Captain Bezique:
+I understand that you have received a "Horseshoe of Light" from Neti. You must be more talented than you look, but if Neti gave you this, she has faith in your abilities. So let's start going after those thieves in earnest. This is the Most Wanted List.
+I'm sure you can tell from reading the list, but your opponents are called the Cat's Eye Bandits. They're named for their leader, nicknamed Cat's Eye for whatever reason, and are all of the Ol Mahum race. According to my scouts, their base is located near the Abandoned Camp where the runaway Ol Mahum troops pitch camp. If you don't know how to get there, go and ask Guard Praga.
+Use the bow and dagger that Neti gave you to capture the Cat's Eye gang in one stroke. And bring back the 4 types of items that were stolen from the people of this village. Should be a good test of your mettle. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-09.html new file mode 100644 index 0000000000..c1b242fbcd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-09.html @@ -0,0 +1,5 @@ +Captain Bezique:
+Oh! You've recovered all the stolen items. Thank you for your trouble. Your skills are better than I thought. I think you really have the qualities to become a good Rogue.
+Red-eyed Bandits... Have you ever heard of them? They are the largest group of bandits on the continent with their home in the snow-covered mountains of Oren. I can't believe those stupid thieves were related to the Red-eyed Bandits... I need to make a detailed inquiry into this. Hmm...
+Anyhow, I will write you a letter of Recommendation. Go to Grand Master Ramos at the Fighters Guild and show him my Recommendation. Then you can change occupations to a Rogue. Well then, I wish you luck. Oh, and I almost forgot! I will give Neti back her bow and dagger for you. I have to go and thank her, anyway. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-10.html new file mode 100644 index 0000000000..7dd61c636b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-10.html @@ -0,0 +1,3 @@ +Captain Bezique:
+By the look of that bow and dagger, I see Neti has given you a task to test your skills. In the past, Neti's skills with The Bow and dagger were the finest in all Gludio. People's mouths would hang open whenever she shot an apple off a young child's head. If you want to be a Rogue, you must learn how to use your bow and dagger well. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-11.html new file mode 100644 index 0000000000..06e8066f22 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30379-11.html @@ -0,0 +1,4 @@ +Captain Bezique:
+Why are you still here? Hurry along -- kill the Cat's Eye Bandits and recover the four stolen items. Remember that you must use The Bow and dagger that Neti gave you to kill those scoundrels.
+According to my men, the thieves are near the abandoned campgrounds. If you don't know how to get there, ask Guard Praga. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-01.html new file mode 100644 index 0000000000..e847b89e95 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-01.html @@ -0,0 +1,7 @@ +Neti:
+Oh blast it...! I suppose Bezique has already told you about my past?
+I can't refuse a request from Bezique. He saved me a long time ago when I was in a diffiult situation... But I really hate annoying jobs like this!
+Fine. If you really want to catch those thieves, you have to follow my words exactly from now on. Got it?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-02.html new file mode 100644 index 0000000000..05b54f9086 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-02.html @@ -0,0 +1,5 @@ +Neti:
+Rumor has it that the thieves are very nimble. If you want to deal with them, you must increase your agility to their level. That is probably why Bezique said that he would acknowledge you as a Rogue if you catch those thieves. Great agility is the main talent you must have to be a Rogue.
+Before you handle those thieves, I must test you to fathom your agility. So be alert and listen. If you pass this test, you will be able to catch the thieves easily.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-03.html new file mode 100644 index 0000000000..abeec90b70 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-03.html @@ -0,0 +1,4 @@ +Neti:
+Well then, have it your way! I only talked with you because Bezique asked me to help you, but since you don't want to, it's all the better. These tasks really annoy me, too!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-04.html new file mode 100644 index 0000000000..58f8884715 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-04.html @@ -0,0 +1,6 @@ +Neti:
+All right. I accept your apology. But only this once. So listen carefully to my words.
+Rumor has it that the thieves are very nimble. If you want to deal with them, you must increase your agility to their level. That is probably why Bezique said that he would acknowledge you as a Rogue if you catch those thieves. Great agility is the main talent you must have to be a Rogue.
+Before you handle those thieves, I must test you to fathom your agility. If you pass this test, you will be able to catch the thieves easily.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-05.html new file mode 100644 index 0000000000..29503153c5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-05.html @@ -0,0 +1,6 @@ +Neti:
+First, take this bow and dagger. To engage in combat that depends on agility, you must be able to use a bow and dagger skillfully, rather than a sword or axe.
+Take these two weapons and go east of here to the Ruins of Agony, and hunt skeletons and spartoi. Skeletons shatter very easily, so it will not be difficult to find bone pieces. It is more dangerous, but hunting spartoi is easier when collecting bone pieces.
+You must keep in mind that when you hunt skeletons or spartoi, you must use The Bow and dagger that I gave you. As proof of your hunt, bring back ten bone pieces and I will let you pass the test.
+Now it is time for you to leave. If you don't know the way to the ruins, ask the guards. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-06.html new file mode 100644 index 0000000000..dd9cdc83ff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-06.html @@ -0,0 +1,4 @@ +Neti:
+Have you come already? I see you are far from finishing. Hurry on to the Ruins of Agony, and hunt the skeletons and spartoi. You must use The Bow and dagger that I gave you. If you bring back ten bone pieces as proof of your success, I will let you pass the test.
+If you don't know the way to the ruins, ask the guards. Well, you should leave now. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-07.html new file mode 100644 index 0000000000..e006a9392b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-07.html @@ -0,0 +1,3 @@ +Neti:
+Thank you. That is sufficient to catch the thieves. To prove your ability, I give you the Horseshoe of Light. Take this to Captain Bezique. And take care to catch the thieves with the weapons I have given you. I assure you they will come in handy in catching thieves. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-08.html new file mode 100644 index 0000000000..7af8d80cb0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/30425-08.html @@ -0,0 +1,3 @@ +Neti:
+Now take the Horseshoe of Light that I have given you and go to Captain Bezique. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/Q00403_PathOfTheRogue.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/Q00403_PathOfTheRogue.java new file mode 100644 index 0000000000..ef7a4eabfa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00403_PathOfTheRogue/Q00403_PathOfTheRogue.java @@ -0,0 +1,369 @@ +/* + * 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.Q00403_PathOfTheRogue; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.ChatType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.holders.ItemChanceHolder; +import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.NpcStringId; +import com.l2jmobius.gameserver.network.serverpackets.NpcSay; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path Of The Rogue (403) + * @author ivantotov + */ +public final class Q00403_PathOfTheRogue extends Quest +{ + // NPCs + private static final int CAPTAIN_BEZIQUE = 30379; + private static final int NETI = 30425; + // Items + private static final int BEZIQUES_LETTER = 1180; + private static final int NETIS_BOW = 1181; + private static final int NETIS_DAGGER = 1182; + private static final int SPARTOIS_BONES = 1183; + private static final int HORSESHOE_OF_LIGHT = 1184; + private static final int MOST_WANTED_LIST = 1185; + private static final int STOLEN_JEWELRY = 1186; + private static final int STOLEN_TOMES = 1187; + private static final int STOLEN_RING = 1188; + private static final int STOLEN_NECKLACE = 1189; + private static final int[] STOLEN_ITEMS = + { + STOLEN_JEWELRY, + STOLEN_TOMES, + STOLEN_RING, + STOLEN_NECKLACE + }; + // Reward + private static final int BEZIQUES_RECOMMENDATION = 1190; + // Misc + private static final int MIN_LEVEL = 18; + private static final int REQUIRED_ITEM_COUNT = 10; + // Quest Monster + private static final int CATS_EYE_BANDIT = 27038; + // Monster + private static final Map MONSTER_DROPS = new HashMap<>(); + static + { + MONSTER_DROPS.put(20035, new ItemChanceHolder(SPARTOIS_BONES, 2)); // Tracker Skeleton + MONSTER_DROPS.put(20042, new ItemChanceHolder(SPARTOIS_BONES, 3)); // Tracker Skeleton Leader + MONSTER_DROPS.put(20045, new ItemChanceHolder(SPARTOIS_BONES, 2)); // Skeleton Scout + MONSTER_DROPS.put(20051, new ItemChanceHolder(SPARTOIS_BONES, 2)); // Skeleton Bowman + MONSTER_DROPS.put(20054, new ItemChanceHolder(SPARTOIS_BONES, 8)); // Ruin Spartoi + MONSTER_DROPS.put(20060, new ItemChanceHolder(SPARTOIS_BONES, 8)); // Raging Spartoi + } + + public Q00403_PathOfTheRogue() + { + super(403); + addStartNpc(CAPTAIN_BEZIQUE); + addTalkId(CAPTAIN_BEZIQUE, NETI); + addAttackId(MONSTER_DROPS.keySet()); + addAttackId(CATS_EYE_BANDIT); + addKillId(MONSTER_DROPS.keySet()); + addKillId(CATS_EYE_BANDIT); + registerQuestItems(BEZIQUES_LETTER, NETIS_BOW, NETIS_DAGGER, SPARTOIS_BONES, HORSESHOE_OF_LIGHT, MOST_WANTED_LIST, STOLEN_JEWELRY, STOLEN_TOMES, STOLEN_RING, STOLEN_NECKLACE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() == ClassId.FIGHTER) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (hasQuestItems(player, BEZIQUES_RECOMMENDATION)) + { + htmltext = "30379-04.htm"; + } + else + { + htmltext = "30379-05.htm"; + } + } + else + { + htmltext = "30379-03.htm"; + } + } + else if (player.getClassId() == ClassId.ROGUE) + { + htmltext = "30379-02a.htm"; + } + else + { + htmltext = "30379-02.htm"; + } + break; + } + case "30379-06.htm": + { + qs.startQuest(); + giveItems(player, BEZIQUES_LETTER, 1); + htmltext = event; + break; + } + case "30425-02.html": + case "30425-03.html": + case "30425-04.html": + { + htmltext = event; + break; + } + case "30425-05.html": + { + if (hasQuestItems(player, BEZIQUES_LETTER)) + { + takeItems(player, BEZIQUES_LETTER, 1); + if (!hasQuestItems(player, NETIS_BOW)) + { + giveItems(player, NETIS_BOW, 1); + } + if (!hasQuestItems(player, NETIS_DAGGER)) + { + giveItems(player, NETIS_DAGGER, 1); + } + qs.setCond(2, true); + } + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onAttack(L2Npc npc, L2PcInstance attacker, int damage, boolean isSummon) + { + final QuestState qs = getQuestState(attacker, false); + if ((qs != null) && qs.isStarted()) + { + switch (npc.getScriptValue()) + { + case 0: + { + npc.getVariables().set("lastAttacker", attacker.getObjectId()); + if (!checkWeapon(attacker)) + { + npc.setScriptValue(2); + } + else + { + if (npc.getId() == CATS_EYE_BANDIT) + { + attacker.sendPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.YOU_CHILDISH_FOOL_DO_YOU_THINK_YOU_CAN_CATCH_ME)); + } + npc.setScriptValue(1); + } + break; + } + case 1: + { + if (!checkWeapon(attacker)) + { + npc.setScriptValue(2); + } + else if (npc.getVariables().getInt("lastAttacker") != attacker.getObjectId()) + { + npc.setScriptValue(2); + } + break; + } + } + } + return super.onAttack(npc, attacker, damage, isSummon); + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && npc.isScriptValue(1) && Util.checkIfInRange(1500, npc, killer, true)) + { + if (npc.getId() == CATS_EYE_BANDIT) + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.I_MUST_DO_SOMETHING_ABOUT_THIS_SHAMEFUL_INCIDENT)); + if (hasQuestItems(killer, MOST_WANTED_LIST)) + { + int randomItem = STOLEN_ITEMS[getRandom(STOLEN_ITEMS.length)]; + if (!hasQuestItems(killer, randomItem)) + { + giveItems(killer, randomItem, 1); + + if (hasQuestItems(killer, STOLEN_ITEMS)) + { + qs.setCond(6, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + } + else + { + final ItemChanceHolder reward = MONSTER_DROPS.get(npc.getId()); + if ((getQuestItemsCount(killer, reward.getId()) < REQUIRED_ITEM_COUNT) && npc.isScriptValue(1) && (getRandom(REQUIRED_ITEM_COUNT) < reward.getChance())) + { + giveItems(killer, reward.getId(), reward.getCount()); + if (getQuestItemsCount(killer, reward.getId()) >= REQUIRED_ITEM_COUNT) + { + qs.setCond(3, true); + } + else + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + } + return super.onKill(npc, killer, isSummon); + } + + private boolean checkWeapon(L2PcInstance player) + { + L2ItemInstance weapon = player.getActiveWeaponInstance(); + return ((weapon != null) && ((weapon.getId() == NETIS_BOW) || (weapon.getId() == NETIS_DAGGER))); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == CAPTAIN_BEZIQUE) + { + htmltext = "30379-01.htm"; + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case CAPTAIN_BEZIQUE: + { + if (hasQuestItems(player, STOLEN_JEWELRY, STOLEN_TOMES, STOLEN_RING, STOLEN_NECKLACE)) + { + giveAdena(player, 163800, true); + takeItems(player, NETIS_BOW, 1); + takeItems(player, NETIS_DAGGER, 1); + takeItems(player, MOST_WANTED_LIST, 1); + takeItems(player, STOLEN_JEWELRY, 1); + takeItems(player, STOLEN_TOMES, 1); + takeItems(player, STOLEN_RING, 1); + takeItems(player, STOLEN_NECKLACE, 1); + giveItems(player, BEZIQUES_RECOMMENDATION, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 20232); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 26930); + } + else + { + addExpAndSp(player, 591724, 33628); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30379-09.html"; + } + else if (!hasQuestItems(player, HORSESHOE_OF_LIGHT) && hasQuestItems(player, BEZIQUES_LETTER)) + { + htmltext = "30379-07.html"; + } + else if (hasQuestItems(player, HORSESHOE_OF_LIGHT)) + { + takeItems(player, HORSESHOE_OF_LIGHT, 1); + giveItems(player, MOST_WANTED_LIST, 1); + qs.setCond(5, true); + htmltext = "30379-08.html"; + } + else if (hasQuestItems(player, NETIS_BOW, NETIS_DAGGER) && !hasQuestItems(player, MOST_WANTED_LIST)) + { + htmltext = "30379-10.html"; + } + else if (hasQuestItems(player, MOST_WANTED_LIST)) + { + htmltext = "30379-11.html"; + } + break; + } + case NETI: + { + if (hasQuestItems(player, BEZIQUES_LETTER)) + { + htmltext = "30425-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, HORSESHOE_OF_LIGHT, BEZIQUES_LETTER)) + { + if (hasQuestItems(player, MOST_WANTED_LIST)) + { + htmltext = "30425-08.html"; + } + else if (getQuestItemsCount(player, SPARTOIS_BONES) < REQUIRED_ITEM_COUNT) + { + htmltext = "30425-06.html"; + } + else + { + takeItems(player, SPARTOIS_BONES, REQUIRED_ITEM_COUNT); + giveItems(player, HORSESHOE_OF_LIGHT, 1); + qs.setCond(4, true); + htmltext = "30425-07.html"; + } + } + else if (hasQuestItems(player, HORSESHOE_OF_LIGHT)) + { + htmltext = "30425-08.html"; + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-01.htm new file mode 100644 index 0000000000..6c73c4a8f3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-01.htm @@ -0,0 +1,3 @@ +Parina:
+Looking closely, I see you are not the one I have been waiting for. I'm sorry, but I do not have anything to tell you. I am tired, so please go back to where you came from. However ... please be happy. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-02.htm new file mode 100644 index 0000000000..4cf60cde34 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-02.htm @@ -0,0 +1,4 @@ +Parina:
+Hidden in nature are surprising powers: Water, Fire, Wind and Earth. With time, you too will understand. Until then you must be patient.
+(Only characters level 18 and above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-02a.htm new file mode 100644 index 0000000000..74a509910f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-02a.htm @@ -0,0 +1,3 @@ +Parina:
+You are a Human Wizard that has already perceived the secrets of water, fire, wind, and earth. There is no need for you to re-embark upon the journey of becoming a Wizard. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-03.htm new file mode 100644 index 0000000000..ecd1529977 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-03.htm @@ -0,0 +1,4 @@ +Parina:
+Is there something you have not found yet? Don't you already have the four tokens of water, fire, wind and earth? Take the bead of four seasons and go to the high priest. He will be able to open your new future for you.
+I feel the power of a new beginning. He will not like me that much, but ... I respect him. Go before it is too late. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-04.htm new file mode 100644 index 0000000000..b698f2bb0b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-04.htm @@ -0,0 +1,4 @@ +Parina:
+To become a Human Wizard, you must have the four tokens of water, fire, wind and earth. If you are not acknowledged by nature, which controls these four elements, you do not have the right to be called a Wizard. Go out into the world and collect the four tokens. The collection of the tokens can only be accomplished by your own power. This is all I can do for you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-05.html new file mode 100644 index 0000000000..18c69aa35d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-05.html @@ -0,0 +1,3 @@ +Parina:
+How goes your journey of searching for the tokens? Please find and bring the tokens of water, fire, wind and earth. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-06.html new file mode 100644 index 0000000000..767c15f8f7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-06.html @@ -0,0 +1,4 @@ +Parina:
+I see you have collected all four tokens of water, fire, wind and earth. Through the journey to collect tokens, you have proven your passion for learning, curiosity about the world, powers of deep investigation and contemplation, and strong will. You have created your future with your own hands.
+I give you the bead of four seasons Take this bead to the high priest. I'm sure he can guide you to the path of the Wizard. May your future days always be filled with light. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-07.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-07.htm new file mode 100644 index 0000000000..3b564d445e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30391-07.htm @@ -0,0 +1,4 @@ +Parina:
+The journey of becoming a Wizard begins with the will of a magician to learn new things. Strong will to obtain knowledge is often compared to a flame. You must first find the token of flame.
+In order to do that, you must meet the Flame Spirit. It is in the form of a lizard wrapped up in flames and is near a village damaged during the war, now called the Ruins of Despair. Look for it to the south of the village of Castle Gludio. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30409-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30409-01.html new file mode 100644 index 0000000000..b621d788b1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30409-01.html @@ -0,0 +1,5 @@ +Earth Snake:
+Wait! Do not deceive yourself into thinking I am a mere lizard just because I look like a basilisk. Although my appearance is unremarkable, I am a spirit of earth, which studies the principles of the world embodied within the soil and rock. Right now I am looking for a way to purify the negative forces that have seeped into the earth in these ruins.
+You say you are looking for the token of earth? Then I must test you to see if you are qualified to earn it. Just because the spirits of water, fire and wind have acknowledged you doesn't mean that I will do so as easily.
+It is your task to find Red Soil that contains the strong life of the earth. You can obtain it by hunting a bear called the red bear that lives in this vicinity. The red bear can be found in the Fellmere Harvesting Grounds between the Ruins of Agony and the Orc Barracks. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30409-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30409-02.html new file mode 100644 index 0000000000..4140dc05c4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30409-02.html @@ -0,0 +1,3 @@ +Earth Snake:
+If you want to receive the token of earth from me, bring me back Red Soil. The Red Soil contains the strong vitality of the earth and can be obtained by hunting the red bears that are frequently seen in the Fellmere Harvesting Grounds between the Ruins of Agony and the Orc Barracks. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30409-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30409-03.html new file mode 100644 index 0000000000..6dfceaf054 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30409-03.html @@ -0,0 +1,4 @@ +Earth Snake:
+You've brought the Red Soil! So fast for a Human! I thought you would have more trouble than that. As promised, I'll exchange the Ring of Earth for a Token of Earth. Don't lose the faith, pilgrim.
+Once you've collected the tokens of fire, water, wind and earth, speak with Parina in Gludin. She has a special affinity for the spirits of the four elements, for they are constantly whispering into her ear. She will raise your understanding of magic to new heights. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30409-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30409-04.html new file mode 100644 index 0000000000..75eff00d6b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30409-04.html @@ -0,0 +1,3 @@ +Earth Snake:
+Once you have collected all four tokens - fire, water, air and earth - that represent the four elements of nature, go find Parina in Gludin Village. Her deep understanding of the elements and spirits can lead you towards enlightenment. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30410-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30410-01.html new file mode 100644 index 0000000000..e7f5098ede --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30410-01.html @@ -0,0 +1,5 @@ +Wasteland Lizardman:
+Nice to meet you, Human. I am a minstrel who savors the music in nature and loves to sing loudly. I regret that I cannot chat with you long. I am in the middle of listening to the song brought to me by the winds of the Wastelands.
+You've come because you have some business with me? What business are you talking about?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30410-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30410-02.html new file mode 100644 index 0000000000..4deb5383dd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30410-02.html @@ -0,0 +1,4 @@ +Wasteland Lizardman:
+Ah ...! The spirit of wind up in the north? I've seen it a few times ... I hate that race, so I don't even associate with it at all. I just saw it from afar and it didn't even say hello, so I passed by. But why did you bring up the sylph?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30410-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30410-03.html new file mode 100644 index 0000000000..979b865337 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30410-03.html @@ -0,0 +1,4 @@ +Wasteland Lizardman:
+I'm very sorry about that ... I didn't know I was making that much noise. Actually, I've been digging in the ground to bury my eggs here. I finished digging yesterday, and I've buried the eggs, so I won't be noisy any more. Won't you tell her that I'm really sorry?
+I also found this feather while I was digging. It may belong to the sylph. Please show it to her. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30410-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30410-04.html new file mode 100644 index 0000000000..88a7e38d57 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30410-04.html @@ -0,0 +1,3 @@ +Wasteland Lizardman:
+Take the feather I gave you to the wind sylph. Don't forget to say that I said I am sorry about the noise ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30411-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30411-01.html new file mode 100644 index 0000000000..0a40658b21 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30411-01.html @@ -0,0 +1,4 @@ +Flame Salamander:
+What is it, child of Humans? Aren't you frightened by the fumes of fire that I breathe? It has been a long time since I've seen a Human as fearless as you. So you've come to find the token of flame? Now I see that you are a Mystic who controls the powers of elements! Good ... If you grant me a favor, I will give you the token of flame.
+The Key of Flame that I had in my charge was stolen not long ago. The rascal that took the key was a ratman fighter. He is in fact an evil spirit in disguise, that covets the power of fire. How else could he have tricked me and stolen the key? Please find the scoundrel and recover the key. There are many ratman fighters at the northwestern corner of the Ruins of Despair. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30411-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30411-02.html new file mode 100644 index 0000000000..a3d6c874e3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30411-02.html @@ -0,0 +1,3 @@ +Flame Salamander:
+Child of Humans, have you come back already? Didn't I tell you to kill the ratman fighter and bring back the Key of Flame? Only then can I give you the token of flame. There are many ratman fighters at the northwestern corner of the Ruins of Despair. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30411-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30411-03.html new file mode 100644 index 0000000000..848ce06dd0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30411-03.html @@ -0,0 +1,5 @@ +Flame Salamander:
+Ah ... I see you have found the key. I give you the Flame Earring as a token of fire. I name you predecessor of the flame ... Pray, do not neglect the desire for learning now rising within you.
+Your desires for knowledge lead to curiosity about the world. Thought caught up in that curiosity cannot stay in one place for very long, and will wander continuously in search of new knowledge. This is why the strong curiosity that stirs the scholar to travel is often compared to the wind.
+The next thing you must find is the Wind Token. In order to find it, you must first speak to the Wind Sylph. She is staying at the entrance of the Wastelands beyond the southwestern mountains. As you already know, there are three entrances to the Wastelands. The sylph will be at the northwest entrance. I wish you luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30411-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30411-04.html new file mode 100644 index 0000000000..d643a3dadc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30411-04.html @@ -0,0 +1,3 @@ +Flame Salamander:
+Child of Humans ... Haven't you already received the token of flame from me? You have already been recognized as the predecessor of flame, now go find the Wind Token. In order to find the token, you must meet the Wind Sylph. You can meet her at the entrance to the Wastelands that is southwest of here. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30412-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30412-01.html new file mode 100644 index 0000000000..c00374e0b1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30412-01.html @@ -0,0 +1,6 @@ +Wind Sylph:
+I see you have come to find the Wind Token. The winds blowing here told me of your story. If you grant me one favor, I will happily give you the Wind Token.
+Not long ago, the wastelands Lizardman appeared in the Southern Wastelands, and it has been so noisy ever since that I haven't been able to savor the wind comfortably.
+Please make the wastelands Lizardman quiet so my meditations are not disrupted. Then I will give you the Wind Token.
+Since scary monsters are prowling around on the southern hills, it would be safer for you to follow the western path of the valley and then head south. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30412-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30412-02.html new file mode 100644 index 0000000000..7cc58a817c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30412-02.html @@ -0,0 +1,3 @@ +Wind Sylph:
+Is it that you do not wish to grant my request? All the noise gives me a headache ... Please, I beg you. Go to the Wasteland Lizardman. He is in the Southern Wastelands. The safest route for you will be to follow the road west of the valley and then head south. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30412-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30412-03.html new file mode 100644 index 0000000000..4816bce775 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30412-03.html @@ -0,0 +1,6 @@ +Wind Sylph:
+Thank you very much. Now I can meditate in peace. I was thinking of going to some other land because it was so noisy. As a token of my appreciation, I give you the Wind Token.
+Searcher of the wind, please do not forget your naive curiosity about materials.
+Curiosity always leads to investigation. The deep contemplation and research of a magician is very often compared to the deep waters of a lake.
+Now you must find the token of water. In order to find it, you must meet the undine of the water. She is near Fellmere Lake. The lake can be found if you pass the abandoned camp of the Ol Mahums in the north and continue a little farther north. Well then, may the divine protection of wind be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30412-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30412-04.html new file mode 100644 index 0000000000..87a606e1d9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30412-04.html @@ -0,0 +1,4 @@ +Wind Sylph:
+I see you have already earned the Wind Token from me. What you must find now is the token of water. To find it, you must meet the undine of the water.
+The undine of the water is at Fellmere Lake. To find the lake, you must go north of here. Go pass the abandoned camp where the Ol Mahums are and go a little more north to reach Fellmere Lake. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30413-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30413-01.html new file mode 100644 index 0000000000..2f48a4aec2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30413-01.html @@ -0,0 +1,5 @@ +Water Undine:
+Don't be a nuisance and disappear. I am busy purifying the force of water in the surrounding land!
+You want to earn the token of water? Well then, do me one favor. Do you see that lake? On the other side of the lake is a monster shaped like a strange eye called the Water Seer. It disturbs the force of water in this area and really gives me a headache.
+Would you be willing to go kill the Water Seer and bring back two sparkling pebbles as proof? Then I will give you the token of water. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30413-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30413-02.html new file mode 100644 index 0000000000..9d7cbbb867 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30413-02.html @@ -0,0 +1,3 @@ +Water Undine:
+You don't have the sparkling pebbles yet? You can obtain the pebbles by killing the Water Seer. Bring back two of them. Please hurry! If I change my mind. I may just give away the token of water to someone else. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30413-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30413-03.html new file mode 100644 index 0000000000..1091e628c7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30413-03.html @@ -0,0 +1,5 @@ +Water Undine:
+Oh! Surprisingly, you have some skill! Now it will be a little easier for me to purify the water. As I promised, I will give you the token of water. Studier of the water, do not be lazy in your quest for truth.
+When a magician's knowledge reaches a certain level, his understanding of the world turns to steadfast faith. The strong will of a magician who tries to change the world with his beliefs is very often compared to the earth.
+The next thing you must find is the token of earth. You can only obtain that by meeting the Earth Snake. If you want to meet the snake, you must go to the Ruins of Agony. Just north of here, you will easily find the ruins. The Earth Snake may look crude, but it is a very wise spirit, so it is better not to be arrogant in front of it. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30413-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30413-04.html new file mode 100644 index 0000000000..0138f6ab0a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/30413-04.html @@ -0,0 +1,3 @@ +Water Undine:
+Have you forgotten what I've said already? I told you to go find the earth snake! Go to the Ruins of Agony north of here to meet it. You haven't given up on the token of earth, have you? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/Q00404_PathOfTheHumanWizard.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/Q00404_PathOfTheHumanWizard.java new file mode 100644 index 0000000000..d515f7c08f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00404_PathOfTheHumanWizard/Q00404_PathOfTheHumanWizard.java @@ -0,0 +1,391 @@ +/* + * 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.Q00404_PathOfTheHumanWizard; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path Of The Human Wizard (404) + * @author ivantotov + */ +public final class Q00404_PathOfTheHumanWizard extends Quest +{ + // NPCs + private static final int PARINA = 30391; + private static final int EARTH_SNAKE = 30409; + private static final int WASTELAND_LIZARDMAN = 30410; + private static final int FLAME_SALAMANDER = 30411; + private static final int WIND_SYLPH = 30412; + private static final int WATER_UNDINE = 30413; + // Items + private static final int MAP_OF_LUSTER = 1280; + private static final int KEY_OF_FLAME = 1281; + private static final int FLAME_EARING = 1282; + private static final int BROKEN_BRONZE_MIRROR = 1283; + private static final int WIND_FEATHER = 1284; + private static final int WIND_BANGLE = 1285; + private static final int RAMAS_DIARY = 1286; + private static final int SPARKLE_PEBBLE = 1287; + private static final int WATER_NECKLACE = 1288; + private static final int RUSTY_COIN = 1289; + private static final int RED_SOIL = 1290; + private static final int EARTH_RING = 1291; + // Reward + private static final int BEAD_OF_SEASON = 1292; + // Monster + private static final int RED_BEAR = 20021; + private static final int RATMAN_WARRIOR = 20359; + // Quest Monster + private static final int WATER_SEER = 27030; + // Misc + private static final int MIN_LEVEL = 18; + + public Q00404_PathOfTheHumanWizard() + { + super(404); + addStartNpc(PARINA); + addTalkId(PARINA, EARTH_SNAKE, WASTELAND_LIZARDMAN, FLAME_SALAMANDER, WIND_SYLPH, WATER_UNDINE); + addKillId(RED_BEAR, RATMAN_WARRIOR, WATER_SEER); + registerQuestItems(MAP_OF_LUSTER, KEY_OF_FLAME, FLAME_EARING, BROKEN_BRONZE_MIRROR, WIND_FEATHER, WIND_BANGLE, RAMAS_DIARY, SPARKLE_PEBBLE, WATER_NECKLACE, RUSTY_COIN, RED_SOIL, EARTH_RING); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() == ClassId.MAGE) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (hasQuestItems(player, BEAD_OF_SEASON)) + { + htmltext = "30391-03.htm"; + } + else + { + qs.startQuest(); + htmltext = "30391-07.htm"; + } + } + else + { + htmltext = "30391-02.htm"; + } + } + else if (player.getClassId() == ClassId.WIZARD) + { + htmltext = "30391-02a.htm"; + } + else + { + htmltext = "30391-01.htm"; + } + break; + } + case "30410-02.html": + { + htmltext = event; + break; + } + case "30410-03.html": + { + giveItems(player, WIND_FEATHER, 1); + qs.setCond(6, true); + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case RED_BEAR: + { + if (hasQuestItems(killer, RUSTY_COIN) && !hasQuestItems(killer, RED_SOIL) && (getRandom(100) < 20)) + { + giveItems(killer, RED_SOIL, 1); + qs.setCond(12, true); + } + break; + } + case RATMAN_WARRIOR: + { + if (hasQuestItems(killer, MAP_OF_LUSTER) && !hasQuestItems(killer, KEY_OF_FLAME) && (getRandom(100) < 80)) + { + giveItems(killer, KEY_OF_FLAME, 1); + qs.setCond(3, true); + } + break; + } + case WATER_SEER: + { + if (hasQuestItems(killer, RAMAS_DIARY) && (getQuestItemsCount(killer, SPARKLE_PEBBLE) < 2) && (getRandom(100) < 80)) + { + giveItems(killer, SPARKLE_PEBBLE, 1); + if (getQuestItemsCount(killer, SPARKLE_PEBBLE) == 2) + { + qs.setCond(9, true); + } + else + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == PARINA) + { + htmltext = "30391-04.htm"; + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case PARINA: + { + if (!hasQuestItems(player, FLAME_EARING, WIND_BANGLE, WATER_NECKLACE, EARTH_RING)) + { + htmltext = "30391-05.html"; + } + else + { + giveAdena(player, 163800, true); + takeItems(player, FLAME_EARING, 1); + takeItems(player, WIND_BANGLE, 1); + takeItems(player, WATER_NECKLACE, 1); + takeItems(player, EARTH_RING, 1); + if (!hasQuestItems(player, BEAD_OF_SEASON)) + { + giveItems(player, BEAD_OF_SEASON, 1); + } + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 23152); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 29850); + } + else + { + addExpAndSp(player, 591724, 36548); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30391-06.html"; + } + break; + } + case EARTH_SNAKE: + { + if (hasQuestItems(player, WATER_NECKLACE) && !hasAtLeastOneQuestItem(player, RUSTY_COIN, EARTH_RING)) + { + if (!hasQuestItems(player, RUSTY_COIN)) + { + giveItems(player, RUSTY_COIN, 1); + } + qs.setCond(11, true); + htmltext = "30409-01.html"; + } + else if (hasQuestItems(player, RUSTY_COIN)) + { + if (!hasQuestItems(player, RED_SOIL)) + { + htmltext = "30409-02.html"; + } + else + { + takeItems(player, RUSTY_COIN, 1); + takeItems(player, RED_SOIL, 1); + if (!hasQuestItems(player, EARTH_RING)) + { + giveItems(player, EARTH_RING, 1); + } + qs.setCond(13, true); + htmltext = "30409-03.html"; + } + } + else if (hasQuestItems(player, EARTH_RING)) + { + htmltext = "30409-04.html"; + } + break; + } + case WASTELAND_LIZARDMAN: + { + if (hasQuestItems(player, BROKEN_BRONZE_MIRROR)) + { + if (!hasQuestItems(player, WIND_FEATHER)) + { + htmltext = "30410-01.html"; + } + else + { + htmltext = "30410-04.html"; + } + } + break; + } + case FLAME_SALAMANDER: + { + if (!hasAtLeastOneQuestItem(player, MAP_OF_LUSTER, FLAME_EARING)) + { + if (!hasQuestItems(player, MAP_OF_LUSTER)) + { + giveItems(player, MAP_OF_LUSTER, 1); + } + qs.setCond(2, true); + htmltext = "30411-01.html"; + } + else if (hasQuestItems(player, MAP_OF_LUSTER)) + { + if (!hasQuestItems(player, KEY_OF_FLAME)) + { + htmltext = "30411-02.html"; + } + else + { + takeItems(player, MAP_OF_LUSTER, 1); + takeItems(player, KEY_OF_FLAME, 1); + if (!hasQuestItems(player, FLAME_EARING)) + { + giveItems(player, FLAME_EARING, 1); + } + qs.setCond(4, true); + htmltext = "30411-03.html"; + } + } + else if (hasQuestItems(player, FLAME_EARING)) + { + htmltext = "30411-04.html"; + } + break; + } + case WIND_SYLPH: + { + if (hasQuestItems(player, FLAME_EARING) && !hasAtLeastOneQuestItem(player, BROKEN_BRONZE_MIRROR, WIND_BANGLE)) + { + if (!hasQuestItems(player, BROKEN_BRONZE_MIRROR)) + { + giveItems(player, BROKEN_BRONZE_MIRROR, 1); + } + qs.setCond(5, true); + htmltext = "30412-01.html"; + } + else if (hasQuestItems(player, BROKEN_BRONZE_MIRROR)) + { + if (!hasQuestItems(player, WIND_FEATHER)) + { + htmltext = "30412-02.html"; + } + else + { + takeItems(player, BROKEN_BRONZE_MIRROR, 1); + takeItems(player, WIND_FEATHER, 1); + if (!hasQuestItems(player, WIND_BANGLE)) + { + giveItems(player, WIND_BANGLE, 1); + } + qs.setCond(7, true); + htmltext = "30412-03.html"; + } + } + else if (hasQuestItems(player, WIND_BANGLE)) + { + htmltext = "30412-04.html"; + } + break; + } + case WATER_UNDINE: + { + if (hasQuestItems(player, WIND_BANGLE) && !hasAtLeastOneQuestItem(player, RAMAS_DIARY, WATER_NECKLACE)) + { + if (!hasQuestItems(player, RAMAS_DIARY)) + { + giveItems(player, RAMAS_DIARY, 1); + } + qs.setCond(8, true); + htmltext = "30413-01.html"; + } + else if (hasQuestItems(player, RAMAS_DIARY)) + { + if (getQuestItemsCount(player, SPARKLE_PEBBLE) < 2) + { + htmltext = "30413-02.html"; + } + else + { + takeItems(player, RAMAS_DIARY, 1); + takeItems(player, SPARKLE_PEBBLE, -1); + if (!hasQuestItems(player, WATER_NECKLACE)) + { + giveItems(player, WATER_NECKLACE, 1); + } + qs.setCond(10, true); + htmltext = "30413-03.html"; + } + } + else if (hasQuestItems(player, WATER_NECKLACE)) + { + htmltext = "30413-04.html"; + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30017-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30017-01.html new file mode 100644 index 0000000000..2d357b0b2e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30017-01.html @@ -0,0 +1,4 @@ +Grand Magister Gallint:
+So it comes to this. I knew it would turn out badly, and I tried to stop him when he started writing that book ...
+Give me the book. From this moment it will be kept here forever in this place. If you show this token to Lionel, he will be relieved as well. Now, take this token of custody to Lionel. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30017-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30017-02.html new file mode 100644 index 0000000000..978ca12f55 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30017-02.html @@ -0,0 +1,3 @@ +Grand Magister Gallint:
+Please take this token of custody of the book to Lionel. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-01.htm new file mode 100644 index 0000000000..7f794aec0d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-01.htm @@ -0,0 +1,4 @@ +Priest Zigaunt:
+You will need the Mark of Faith to change profession to a Cleric. It is given to people with true faith. By chance there is a task suitable to prove your faith if you would agree to give it a try?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-02.htm new file mode 100644 index 0000000000..09c50a073b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-02.htm @@ -0,0 +1,3 @@ +Priest Zigaunt:
+Oh. You are not a Mystic. I cannot give this errand to those who are not Mystics. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-02a.htm new file mode 100644 index 0000000000..b8facb851d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-02a.htm @@ -0,0 +1,3 @@ +Priest Zigaunt:
+You are already a Cleric that has proven your worthiness! You do not have to show your faith again. Please spread the teachings of the gods all over the world. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-03.htm new file mode 100644 index 0000000000..c869471fdc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-03.htm @@ -0,0 +1,4 @@ +Priest Zigaunt:
+Thank you for your offer, but this job is too difficult for you right now. You need more experience. Let's talk again when you seen a little more of the world.
+(Only characters level 18 and above may embark on this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-04.htm new file mode 100644 index 0000000000..9c234b6737 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-04.htm @@ -0,0 +1,3 @@ +Priest Zigaunt:
+I see you already have the Mark of Faith. If you meet High Priestess Levian, you can change profession. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-05.htm new file mode 100644 index 0000000000..dff83ee20c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-05.htm @@ -0,0 +1,4 @@ +Priest Zigaunt:
+By any chance, have you heard the rumors that there is a heretical book that criticizes our religion? The book is called "Understanding of Miracles," and it was actually written by a person who used to be a priest. That is why the church wants to take care of this problem quietly.
+Can you retrieve the books that have been sold? Please do it undercover. The beginning of the rumor about this book was the town of Gludio. Begin your search there. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-06.html new file mode 100644 index 0000000000..b51f42ee23 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-06.html @@ -0,0 +1,3 @@ +Priest Zigaunt:
+Please retrieve all those improper books. The future of our religion depends on your success. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-07.html new file mode 100644 index 0000000000..d39d954b9a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-07.html @@ -0,0 +1,3 @@ +Priest Zigaunt:
+You must bring a signed covenant from Lionel. Please hurry, the church wants to take care of this very quickly. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-08.html new file mode 100644 index 0000000000..b8c3537200 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-08.html @@ -0,0 +1,5 @@ +Priest Zigaunt:
+Thank you for your trouble. The church will be very happy. However, we must take care of the fundamental cause of the problem ...
+It is the will of the church that the writer of the book must sign a covenant saying that he will not write any more subversive content and that he will not breathe a word to anyone that he was once a priest. His name is Lionel. He is supposedly living in retirement on Talking Island.
+Please meet Lionel and make him sign the covenant. Well then, I thank you in advance. May the light of the heavens lead you to the righteous path. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-09.html new file mode 100644 index 0000000000..7bd2ab600d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30022-09.html @@ -0,0 +1,5 @@ +Priest Zigaunt:
+This is definitely Lionel's signature. Thank you.
+With this, your faith has been fully proven. Here, take this token of faith. If you show that to the High Priestess Levian, she will help you to change your profession to Cleric, one who promulgates the teachings of Einhasad.
+I must excuse myself now, to make a report to the church. Goodbye. May the blessing of Einhasad be with you ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30030-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30030-01.html new file mode 100644 index 0000000000..76ad3bae6c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30030-01.html @@ -0,0 +1,4 @@ +Priestess Vivyan:
+Ehh?! The book was forbidden by the church? I had no idea! I didn't even know and recommended it to my friends ...
+Ah ... Now what do I do? What to do? Will the high priests forgive me? They will no doubt give me a terrible punishment ... From cleaning floors to laundry to cooking ...! Ahhhh ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30030-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30030-02.html new file mode 100644 index 0000000000..64a524a96d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30030-02.html @@ -0,0 +1,6 @@ +Priestess Vivyan:
+Cleaning floors, laundry, cooking ...
+Doing laundry, cooking and cleaning floors ...
+Cooking, cleaning floors and doing laundry ...
+Ahhhhh ...! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30253-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30253-01.html new file mode 100644 index 0000000000..cd8f4100f8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30253-01.html @@ -0,0 +1,5 @@ +Trader Simplon:
+Understanding of Miracles? Ah! You are speaking of the books I sold not long ago. Threatening books? I don't know ... As for me, I don't really know the contents of the book ... I just got a few to sell because they said that a lot of people wanted to read it ...
+The church is collecting the books? Well, if that is the case ... I will give them to you, but I bought those books with money so the church will compensate me for them, right?
+I bought five books in all, and I'll give you the three that were not sold. The other two books were bought by Guard Praga and Priestess Vivyan in this village. Go and ask them about the books. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30253-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30253-02.html new file mode 100644 index 0000000000..41bb955e26 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30253-02.html @@ -0,0 +1,3 @@ +Trader Simplon:
+Why have you come back? Is it to find out whether I am selling threatening books? Please go away so you will not a disturb my customers! If you want to find out more about the other two books, you can go ask Guard Praga and Priestess Vivyan in this village about them. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30333-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30333-01.html new file mode 100644 index 0000000000..20da11d5ba --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30333-01.html @@ -0,0 +1,5 @@ +Guard Praga:
+Ah... that book. But that book was quite interesting. And I bought it for money. I can't give it to you for free.
+Well, how about this? Recently, I was making rounds in the Ruins of Agony when I happened into a fight with the ruin zombies. At that time, I lost a pendant that my mother left me before she died. Please find it for me. Here, this is the chain of the necklace. See if the pendant fits it, and then return them to me, please.
+Don't wrinkle your nose like that. A true believer like you will be protected by your strong faith. If you need direction, you can reach the Ruins of Agony by journeying west of the village. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30333-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30333-02.html new file mode 100644 index 0000000000..1d5371aabd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30333-02.html @@ -0,0 +1,3 @@ +Guard Praga:
+You still haven't found my mother's pendant? I'm sorry, but until then I cannot give you the book. I'm busy, so please excuse me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30333-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30333-03.html new file mode 100644 index 0000000000..f2f1e16791 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30333-03.html @@ -0,0 +1,4 @@ +Guard Praga:
+Yes! Yes, this is the pendant. I thought I had lost it forever ... thank you so much! My mother, who is with the gods, will also be pleased ...
+Oh yes! Here is the book you were looking for. I didn't notice it was blasphemy. Strange ... Did the church say that it was heresy? How strange ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30333-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30333-04.html new file mode 100644 index 0000000000..4ec437d46f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30333-04.html @@ -0,0 +1,3 @@ +Guard Praga:
+Thank you for finding my mother's pendant. And by the way, what did you do with that forbidden book that you took last time? Did you burn it or something? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30408-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30408-01.html new file mode 100644 index 0000000000..22ecad9b69 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30408-01.html @@ -0,0 +1,5 @@ +Lionel:
+What? The church designated my book as a forbidden book? This is truly too much! Have you read my book? I was disappointed with the profession of Priest, which only focused on formalities. I gave up the profession and wrote my understanding of miracles as objectively as possible, as they occur beyond the positions of Priest or Prophet. And now it is being treated like this!
+However... I cannot stand alone against those who hold all the power of the church...
+Please take pity on me and do me one favor. The church will burn all the books they have collected but I don't want the book I spent my heart and soul writing to disappear forever. Please give this last book to Gallint at Einhovant's School of Wizardry. He taught me the importance of knowledge. If he puts the book in safekeeping, it may not become known to the world, but it will be preserved forever. Please, I beg you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30408-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30408-02.html new file mode 100644 index 0000000000..19986f273d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30408-02.html @@ -0,0 +1,3 @@ +Lionel:
+Get out of my sight! How dare you spread false rumors that my books are forbidden! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30408-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30408-03.html new file mode 100644 index 0000000000..17fc8b8086 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30408-03.html @@ -0,0 +1,3 @@ +Lionel:
+Please give my book to Galint of the Einhovant School of Witchcraft and Wizardry! I will never forget your kindness. Please do not breathe a word of this to anyone! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30408-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30408-04.html new file mode 100644 index 0000000000..2f8b92e4a0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30408-04.html @@ -0,0 +1,4 @@ +Lionel:
+Thank you so much. I will repay your kindness without fail.
+The covenant is here. The dogmatic High Priests will be content with this. Bah! Rascals of the church! I will pay back my debt to them someday! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30408-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30408-05.html new file mode 100644 index 0000000000..a0b4234963 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/30408-05.html @@ -0,0 +1,3 @@ +Lionel:
+I can't believe my academic studies are disturbed because of the dogmatic high priests ... humph! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/Q00405_PathOfTheCleric.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/Q00405_PathOfTheCleric.java new file mode 100644 index 0000000000..574ca8de1d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00405_PathOfTheCleric/Q00405_PathOfTheCleric.java @@ -0,0 +1,326 @@ +/* + * 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.Q00405_PathOfTheCleric; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path Of The Cleric (405) + * @author ivantotov + */ +public final class Q00405_PathOfTheCleric extends Quest +{ + // NPCs + private static final int GALLINT = 30017; + private static final int ZIGAUNT = 30022; + private static final int VIVYAN = 30030; + private static final int TRADER_SIMPLON = 30253; + private static final int GUARD_PRAGA = 30333; + private static final int LIONEL = 30408; + // Items + private static final int LETTER_OF_ORDER_1ST = 1191; + private static final int LETTER_OF_ORDER_2ND = 1192; + private static final int LIONELS_BOOK = 1193; + private static final int BOOK_OF_VIVYAN = 1194; + private static final int BOOK_OF_SIMPLON = 1195; + private static final int BOOK_OF_PRAGA = 1196; + private static final int CERTIFICATE_OF_GALLINT = 1197; + private static final int PENDANT_OF_MOTHER = 1198; + private static final int NECKLACE_OF_MOTHER = 1199; + private static final int LEMONIELLS_COVENANT = 1200; + // Reward + private static final int MARK_OF_FAITH = 1201; + // Monster + private static final int RUIN_ZOMBIE = 20026; + private static final int RUIN_ZOMBIE_LEADER = 20029; + // Misc + private static final int MIN_LEVEL = 18; + + public Q00405_PathOfTheCleric() + { + super(405); + addStartNpc(ZIGAUNT); + addTalkId(ZIGAUNT, GALLINT, VIVYAN, TRADER_SIMPLON, GUARD_PRAGA, LIONEL); + addKillId(RUIN_ZOMBIE, RUIN_ZOMBIE_LEADER); + registerQuestItems(LETTER_OF_ORDER_1ST, LETTER_OF_ORDER_2ND, LIONELS_BOOK, BOOK_OF_VIVYAN, BOOK_OF_SIMPLON, BOOK_OF_PRAGA, CERTIFICATE_OF_GALLINT, PENDANT_OF_MOTHER, NECKLACE_OF_MOTHER, LEMONIELLS_COVENANT); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() == ClassId.MAGE) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (hasQuestItems(player, MARK_OF_FAITH)) + { + htmltext = "30022-04.htm"; + } + else + { + qs.startQuest(); + giveItems(player, LETTER_OF_ORDER_1ST, 1); + htmltext = "30022-05.htm"; + } + } + else + { + htmltext = "30022-03.htm"; + } + } + else if (player.getClassId() == ClassId.CLERIC) + { + htmltext = "30022-02a.htm"; + } + else + { + htmltext = "30022-02.htm"; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + if (hasQuestItems(killer, NECKLACE_OF_MOTHER) && !hasQuestItems(killer, PENDANT_OF_MOTHER)) + { + giveItems(killer, PENDANT_OF_MOTHER, 1); + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == ZIGAUNT) + { + if (!hasQuestItems(player, MARK_OF_FAITH)) + { + htmltext = "30022-01.htm"; + } + else + { + htmltext = "30022-04.htm"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case ZIGAUNT: + { + if (!hasQuestItems(player, LEMONIELLS_COVENANT) && hasQuestItems(player, LETTER_OF_ORDER_2ND)) + { + htmltext = "30022-07.html"; + } + else if (hasQuestItems(player, LETTER_OF_ORDER_2ND, LEMONIELLS_COVENANT)) + { + giveAdena(player, 163800, true); + takeItems(player, LETTER_OF_ORDER_2ND, 1); + takeItems(player, LEMONIELLS_COVENANT, 1); + giveItems(player, MARK_OF_FAITH, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 23152); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 28630); + } + else + { + addExpAndSp(player, 591724, 35328); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30022-09.html"; + } + else if (hasQuestItems(player, LETTER_OF_ORDER_1ST)) + { + if (hasQuestItems(player, BOOK_OF_VIVYAN, BOOK_OF_SIMPLON, BOOK_OF_PRAGA)) + { + takeItems(player, LETTER_OF_ORDER_1ST, 1); + giveItems(player, LETTER_OF_ORDER_2ND, 1); + takeItems(player, BOOK_OF_VIVYAN, 1); + takeItems(player, BOOK_OF_SIMPLON, -1); + takeItems(player, BOOK_OF_PRAGA, 1); + qs.setCond(3, true); + htmltext = "30022-08.html"; + } + else + { + htmltext = "30022-06.html"; + } + } + break; + } + case GALLINT: + { + if (!hasQuestItems(player, LEMONIELLS_COVENANT) && hasQuestItems(player, LETTER_OF_ORDER_2ND)) + { + if (!hasQuestItems(player, CERTIFICATE_OF_GALLINT) && hasQuestItems(player, LIONELS_BOOK)) + { + takeItems(player, LIONELS_BOOK, 1); + giveItems(player, CERTIFICATE_OF_GALLINT, 1); + qs.setCond(5, true); + htmltext = "30017-01.html"; + } + else + { + htmltext = "30017-02.html"; + } + } + break; + } + case VIVYAN: + { + if (hasQuestItems(player, LETTER_OF_ORDER_1ST)) + { + if (!hasQuestItems(player, BOOK_OF_VIVYAN)) + { + giveItems(player, BOOK_OF_VIVYAN, 1); + if ((getQuestItemsCount(player, BOOK_OF_SIMPLON) >= 3) && (getQuestItemsCount(player, BOOK_OF_VIVYAN) >= 0) && (getQuestItemsCount(player, BOOK_OF_PRAGA) >= 1)) + { + qs.setCond(2, true); + } + htmltext = "30030-01.html"; + } + else + { + htmltext = "30030-02.html"; + } + } + break; + } + case TRADER_SIMPLON: + { + if (hasQuestItems(player, LETTER_OF_ORDER_1ST)) + { + if (!hasQuestItems(player, BOOK_OF_SIMPLON)) + { + giveItems(player, BOOK_OF_SIMPLON, 3); + if ((getQuestItemsCount(player, BOOK_OF_SIMPLON) >= 0) && (getQuestItemsCount(player, BOOK_OF_VIVYAN) >= 1) && (getQuestItemsCount(player, BOOK_OF_PRAGA) >= 1)) + { + qs.setCond(2, true); + } + htmltext = "30253-01.html"; + } + else + { + htmltext = "30253-02.html"; + } + } + break; + } + case GUARD_PRAGA: + { + if (hasQuestItems(player, LETTER_OF_ORDER_1ST)) + { + if (!hasAtLeastOneQuestItem(player, BOOK_OF_PRAGA, NECKLACE_OF_MOTHER)) + { + giveItems(player, NECKLACE_OF_MOTHER, 1); + htmltext = "30333-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, BOOK_OF_PRAGA, PENDANT_OF_MOTHER) && hasQuestItems(player, NECKLACE_OF_MOTHER)) + { + htmltext = "30333-02.html"; + } + else if (!hasQuestItems(player, BOOK_OF_PRAGA) && hasQuestItems(player, NECKLACE_OF_MOTHER, PENDANT_OF_MOTHER)) + { + giveItems(player, BOOK_OF_PRAGA, 1); + takeItems(player, PENDANT_OF_MOTHER, 1); + takeItems(player, NECKLACE_OF_MOTHER, 1); + if ((getQuestItemsCount(player, BOOK_OF_SIMPLON) >= 3) && (getQuestItemsCount(player, BOOK_OF_VIVYAN) >= 1) && (getQuestItemsCount(player, BOOK_OF_PRAGA) >= 0)) + { + qs.setCond(2, true); + } + htmltext = "30333-03.html"; + } + else if (hasQuestItems(player, BOOK_OF_PRAGA)) + { + htmltext = "30333-04.html"; + } + } + break; + } + case LIONEL: + { + if (!hasQuestItems(player, LETTER_OF_ORDER_2ND)) + { + htmltext = "30408-02.html"; + } + else if (!hasAtLeastOneQuestItem(player, LIONELS_BOOK, LEMONIELLS_COVENANT, CERTIFICATE_OF_GALLINT) && hasQuestItems(player, LETTER_OF_ORDER_2ND)) + { + giveItems(player, LIONELS_BOOK, 1); + qs.setCond(4, true); + htmltext = "30408-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, LEMONIELLS_COVENANT, CERTIFICATE_OF_GALLINT) && hasQuestItems(player, LETTER_OF_ORDER_2ND, LIONELS_BOOK)) + { + htmltext = "30408-03.html"; + } + else if (!hasAtLeastOneQuestItem(player, LIONELS_BOOK, LEMONIELLS_COVENANT) && hasQuestItems(player, LETTER_OF_ORDER_2ND, CERTIFICATE_OF_GALLINT)) + { + takeItems(player, CERTIFICATE_OF_GALLINT, 1); + giveItems(player, LEMONIELLS_COVENANT, 1); + qs.setCond(6, true); + htmltext = "30408-04.html"; + } + else if (!hasAtLeastOneQuestItem(player, LIONELS_BOOK, CERTIFICATE_OF_GALLINT) && hasQuestItems(player, LETTER_OF_ORDER_2ND, LEMONIELLS_COVENANT)) + { + htmltext = "30408-05.html"; + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-01.html new file mode 100644 index 0000000000..57d864345d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-01.html @@ -0,0 +1,4 @@ +Blacksmith Kluto:
+Oh ho, so you want to be an Elven Knight? Of course, I know how to make the brooch. However, nothing in this world is free ... If you want the Elven Knight Brooch, you must first do me a service.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-02.html new file mode 100644 index 0000000000..c2c4e91334 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-02.html @@ -0,0 +1,4 @@ +Blacksmith Kluto:
+East of here, there is a camp of the Ol Mahums. They are indeed ferocious scoundrels. Their trainees come out to the southeast of the Abandoned Camp, and I want you to get rid of them. You need not know the reason.
+There will be about twenty of them. Hmm ... I would have to know whether or not you really killed all twenty. If you bring me twenty of the jewels that the Ol Mahums carry with them, I will accommodate you. I'll give you this so you do not forget. Now, off you go! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-03.html new file mode 100644 index 0000000000..ec90c14531 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-03.html @@ -0,0 +1,4 @@ +Blacksmith Kluto:
+Why have you returned so early? Were you afraid? They are only Ol Mahum Novices... You are quite timid.
+If I may give you a piece of advice, don't go deep into the camp. If the Ol Mahum come upon you in a group, with your skills you'd never be able to deal with them. Do you understand what I'm saying? Well, be off now! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-04.html new file mode 100644 index 0000000000..efb3b3d098 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-04.html @@ -0,0 +1,3 @@ +Blacksmith Kluto:
+Did I not tell you to bring twenty jewels? I cannot accommodate you even if you are only one short. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-05.html new file mode 100644 index 0000000000..4302da1230 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-05.html @@ -0,0 +1,5 @@ +Blacksmith Kluto:
+Amazing! To be frank, I wasn't expecting much out of you. Indeed, Master Sorius knows a good candidate. To tell the truth, bringing back the Emeralds was also part of the test. Since Sorius saved my life long ago, I have been assisting him in testing young Elven Fighters. When we have some time, I will tell you how Sorius saved me from the Orcs.
+Give me the Topaz Pieces and Emerald Pieces. These jewels will be used as materials to make the brooches for the next youngsters who qualify to become Elven Knights. Your brooch has already been made from the jewels collected by those that took the test before you.
+Now take this box. In it is the completed Elven Knight Brooch. Take this to Master Sorius and he will conduct the official presentation. You have rightfully earned it. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-06.html new file mode 100644 index 0000000000..daa3b615a4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30317-06.html @@ -0,0 +1,3 @@ +Blacksmith Kluto:
+Have you not gone yet? Aren't you eager to begin your career as an Elven Knight. Get along now to Master Sorius! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-01.htm new file mode 100644 index 0000000000..65a49c7695 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-01.htm @@ -0,0 +1,4 @@ +Master Sorius:
+Greetings, child in search of the training of the sword. When I look at the new candidates like yourself that seek me, I am sure that the long tradition of our Elven race is being continued.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-02.htm new file mode 100644 index 0000000000..dfa0f89c89 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-02.htm @@ -0,0 +1,3 @@ +Sorius:
+Haven't you already chosen the path that you must take? Train yourself more before aspiring to a higher level. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-02a.htm new file mode 100644 index 0000000000..7d3d1e2653 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-02a.htm @@ -0,0 +1,3 @@ +Sorius:
+You are already walking the path of an Elven Knight. Train yourself more before proceeding to a higher level. May the starlight guide you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-03.htm new file mode 100644 index 0000000000..71158df07b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-03.htm @@ -0,0 +1,4 @@ +Master Sorius:
+Ah, it seems that you are still inexperienced. Just from watching your footwork and movements, I can tell that you are not ready to learn the skills I teach. Be patient and keep training. I see in your eyes that you have the passion and conviction to succeed. I will look forward to training you when you are truly ready!
+(Only characters level 18 and above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-04.htm new file mode 100644 index 0000000000..e1c6a78061 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-04.htm @@ -0,0 +1,3 @@ +Master Sorius:
+I see you have the Elven Knight Brooch. Take the brooch and go to Grand Master Rains. Then he will change your profession to Elven Knight. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-05.htm new file mode 100644 index 0000000000..96790d6e29 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-05.htm @@ -0,0 +1,5 @@ +Master Sorius:
+Elven Knights choose the path of the sword over archery, both of which were developed by our race for thousands of years. These days, many Elven Knights enter the Human world to practice the will of Einhasad and Eva, even though they were originally created to protect the Mother Trees from invaders.
+We must test your skills to see if you have what it takes to become an Elven Knight. This is a test to judge your skills, but I am sure one of your level will pass with no particular difficulties. What do you say? Will you assume the challenge of the test?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-06.htm new file mode 100644 index 0000000000..ea8a5f1782 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-06.htm @@ -0,0 +1,5 @@ +Master Sorius:
+There is a place called the Ruins of Agony in the war-devastated area at the northern part of Gludio. Cruel and violent undead skeletons and the spartoi are disturbing and harming innocent people who travel near there. Elven Knights follow the teachings of Einhasad and Eva. There is no better place than the Ruins of Agony where an Elven Knight can perform his or her duty. If you don't know how to go to the Ruins of Agony, ask Guard Babenco.
+Please go to the Ruins of Agony and hunt skeletons and spartoi. If you defeat the undead, you will be able to get some Topaz Pieces. You must bring back twenty of these jewels. Also, you must be extra careful because those undead can help each other.
+This is your first test. Now, it's time to test your talent. I will pray for you to distinguish yourself in war. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-07.html new file mode 100644 index 0000000000..f95f0d3b7a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-07.html @@ -0,0 +1,4 @@ +Master Sorius:
+You haven't left yet? Can it be it that you are unsure of the test? Someone like you will be able to perform it well. Hurry on to the Ruins of Agony and test your skills on the skeletons and spartoi.
+If you don't know how to go to the Ruins of Agony, ask Guard Babenco. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-08.html new file mode 100644 index 0000000000..4dc9271122 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-08.html @@ -0,0 +1,3 @@ +Master Sorius:
+It is still not enough. You must have 20 Topaz Pieces. May the divine blessing of Einhasad and Eva be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-09.html new file mode 100644 index 0000000000..346fc42c99 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-09.html @@ -0,0 +1,4 @@ +Master Sorius:
+Congratulations. You safely completed the test. The topaz you brought back will be used as an ingredient for the "Elven Knight Brooch.", which will be proof of your skill, enough that you can then present yourself to a grand master.
+But the "Elven Knight Brooch" cannot be completed with just the topaz fragment. Take this letter and go see Blacksmith Kluto in Gludin Castle Town. He will tell you how to make the "Elven Knight Brooch" with these jewels. If you don't know the way to Gludin Castle Town, go ask Guard Praga.
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-10.html new file mode 100644 index 0000000000..fb3381f12c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-10.html @@ -0,0 +1,4 @@ +Master Sorius:
+I see you have safely passed Kluto's test. Congratulations! You have proven that you have the courage to become an Elven Knight. This brooch is made of materials collected by other Elves who have gone through this same test. Another brilliant tradition of the Elven race is passed on to future generations!
+If you wish to change your profession to Elven Knight, give this brooch to Grand Master Rains. Until we meet again, may the protection of Eva be with you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-11.html new file mode 100644 index 0000000000..4693473801 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/30327-11.html @@ -0,0 +1,3 @@ +Master Sorius:
+You haven't found Kluto yet? You can meet Kluto at the blacksmith's shop in Gludin. If you don't know how to get to Gludin, ask Guard Praga. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/Q00406_PathOfTheElvenKnight.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/Q00406_PathOfTheElvenKnight.java new file mode 100644 index 0000000000..0c5d3e20f0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00406_PathOfTheElvenKnight/Q00406_PathOfTheElvenKnight.java @@ -0,0 +1,275 @@ +/* + * 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.Q00406_PathOfTheElvenKnight; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.holders.ItemChanceHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path Of The Elven Knight (406) + * @author ivantotov + */ +public final class Q00406_PathOfTheElvenKnight extends Quest +{ + // NPCs + private static final int BLACKSMITH_KLUTO = 30317; + private static final int MASTER_SORIUS = 30327; + // Items + private static final int SORIUS_LETTER = 1202; + private static final int KLUTO_BOX = 1203; + private static final int TOPAZ_PIECE = 1205; + private static final int EMERALD_PIECE = 1206; + private static final int KLUTO_MEMO = 1276; + // Reward + private static final int ELVEN_KNIGHT_BROOCH = 1204; + // Misc + private static final int MIN_LEVEL = 18; + // Mobs + private static final int OL_MAHUM_NOVICE = 20782; + private static final Map MONSTER_DROPS = new HashMap<>(); + static + { + MONSTER_DROPS.put(20035, new ItemChanceHolder(TOPAZ_PIECE, 70)); // Tracker Skeleton + MONSTER_DROPS.put(20042, new ItemChanceHolder(TOPAZ_PIECE, 70)); // Tracker Skeleton Leader + MONSTER_DROPS.put(20045, new ItemChanceHolder(TOPAZ_PIECE, 70)); // Skeleton Scout + MONSTER_DROPS.put(20051, new ItemChanceHolder(TOPAZ_PIECE, 70)); // Skeleton Bowman + MONSTER_DROPS.put(20054, new ItemChanceHolder(TOPAZ_PIECE, 70)); // Ruin Spartoi + MONSTER_DROPS.put(20060, new ItemChanceHolder(TOPAZ_PIECE, 70)); // Salamander Noble + MONSTER_DROPS.put(OL_MAHUM_NOVICE, new ItemChanceHolder(EMERALD_PIECE, 50)); // Ol Mahum Novice + } + + public Q00406_PathOfTheElvenKnight() + { + super(406); + addStartNpc(MASTER_SORIUS); + addTalkId(MASTER_SORIUS, BLACKSMITH_KLUTO); + addKillId(MONSTER_DROPS.keySet()); + registerQuestItems(SORIUS_LETTER, KLUTO_BOX, TOPAZ_PIECE, EMERALD_PIECE, KLUTO_MEMO); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() != ClassId.ELVEN_FIGHTER) + { + if (player.getClassId() == ClassId.ELVEN_KNIGHT) + { + htmltext = "30327-02a.htm"; + } + else + { + htmltext = "30327-02.htm"; + } + } + else if (player.getLevel() < MIN_LEVEL) + { + htmltext = "30327-03.htm"; + } + else if (hasQuestItems(player, ELVEN_KNIGHT_BROOCH)) + { + htmltext = "30327-04.htm"; + } + else + { + htmltext = "30327-05.htm"; + } + break; + } + case "30327-06.htm": + { + qs.startQuest(); + htmltext = event; + break; + } + case "30317-02.html": + { + takeItems(player, SORIUS_LETTER, 1); + if (!hasQuestItems(player, KLUTO_MEMO)) + { + giveItems(player, KLUTO_MEMO, 1); + } + qs.setCond(4, true); + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + final ItemChanceHolder reward = MONSTER_DROPS.get(npc.getId()); + int requiredItemId = KLUTO_BOX; + int cond = 2; + boolean check = !hasQuestItems(killer, requiredItemId); + if (npc.getId() == OL_MAHUM_NOVICE) + { + requiredItemId = KLUTO_MEMO; + cond = 5; + check = hasQuestItems(killer, requiredItemId); + } + + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, false)) + { + if (check && (getQuestItemsCount(killer, reward.getId()) < 20) && (getRandom(100) < reward.getChance())) + { + giveItems(killer, reward); + if (getQuestItemsCount(killer, reward.getId()) == 20) + { + qs.setCond(cond, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == MASTER_SORIUS) + { + htmltext = "30327-01.htm"; + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case MASTER_SORIUS: + { + if (!hasQuestItems(player, KLUTO_BOX)) + { + if (!hasQuestItems(player, TOPAZ_PIECE)) + { + htmltext = "30327-07.html"; + } + else if (hasQuestItems(player, TOPAZ_PIECE) && (getQuestItemsCount(player, TOPAZ_PIECE) < 20)) + { + htmltext = "30327-08.html"; + } + else if (!hasAtLeastOneQuestItem(player, KLUTO_MEMO, SORIUS_LETTER) && (getQuestItemsCount(player, TOPAZ_PIECE) >= 20)) + { + if (!hasQuestItems(player, SORIUS_LETTER)) + { + giveItems(player, SORIUS_LETTER, 1); + } + qs.setCond(3, true); + htmltext = "30327-09.html"; + } + else if ((getQuestItemsCount(player, TOPAZ_PIECE) >= 20) && hasAtLeastOneQuestItem(player, SORIUS_LETTER, KLUTO_MEMO)) + { + htmltext = "30327-11.html"; + } + } + else + { + giveAdena(player, 163800, true); + if (!hasQuestItems(player, ELVEN_KNIGHT_BROOCH)) + { + giveItems(player, ELVEN_KNIGHT_BROOCH, 1); + } + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 23152); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 29850); + } + else + { + addExpAndSp(player, 591724, 33328); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30327-10.html"; + } + break; + } + case BLACKSMITH_KLUTO: + { + if (!hasQuestItems(player, KLUTO_BOX)) + { + if (hasQuestItems(player, SORIUS_LETTER) && (getQuestItemsCount(player, TOPAZ_PIECE) >= 20)) + { + htmltext = "30317-01.html"; + } + else if (!hasQuestItems(player, EMERALD_PIECE) && hasQuestItems(player, KLUTO_MEMO) && (getQuestItemsCount(player, TOPAZ_PIECE) >= 20)) + { + htmltext = "30317-03.html"; + } + else if (hasQuestItems(player, KLUTO_MEMO, EMERALD_PIECE) && (getQuestItemsCount(player, TOPAZ_PIECE) >= 20) && (getQuestItemsCount(player, EMERALD_PIECE) < 20)) + { + htmltext = "30317-04.html"; + } + else if (hasQuestItems(player, KLUTO_MEMO) && (getQuestItemsCount(player, TOPAZ_PIECE) >= 20) && (getQuestItemsCount(player, EMERALD_PIECE) >= 20)) + { + if (!hasQuestItems(player, KLUTO_BOX)) + { + giveItems(player, KLUTO_BOX, 1); + } + takeItems(player, TOPAZ_PIECE, -1); + takeItems(player, EMERALD_PIECE, -1); + takeItems(player, KLUTO_MEMO, 1); + qs.setCond(6, true); + htmltext = "30317-05.html"; + } + } + else if (hasQuestItems(player, KLUTO_BOX)) + { + htmltext = "30317-06.html"; + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-01.htm new file mode 100644 index 0000000000..e266cd0648 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-01.htm @@ -0,0 +1,4 @@ +Master Reisa:
+So you want to be an Elven Scout? Hmm ... it is not my place to recommend you as an Elven Scout without reason, so I would like to see your skills first. By chance, there is a task you may be perfect for. Prove your skills as an Elven Fighter through this task. What do you say, will you accept the assignment?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-02.htm new file mode 100644 index 0000000000..08c19a6f46 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-02.htm @@ -0,0 +1,3 @@ +Master Reisa:
+I'm sorry, but you are not qualified to take the test to become an to Elven Scout. Try to find the path that is right for you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-02a.htm new file mode 100644 index 0000000000..2657a8aa40 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-02a.htm @@ -0,0 +1,3 @@ +Master Reisa:
+You have already changed profession to Elven Scout, so there is no need for you to reaffirm your skills. You are not needed in villages like these, but in the vast plains. Travel wide and far and increase the dignity of our Elven race. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-03.htm new file mode 100644 index 0000000000..a0bd00051d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-03.htm @@ -0,0 +1,3 @@ +Master Reisa:
+Class transfer to Elven Scout... I admire your ambition, but you are not yet ready. Ambition alone cannot make you an Elven Scout! Return here after you have received additional training and I will reconsider your request.
+(Only characters level 18 and above may undertake this quest.) \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-04.htm new file mode 100644 index 0000000000..7553349cfb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-04.htm @@ -0,0 +1,3 @@ +Master Reisa:
+Now, go to Grand Master Rains to change your profession to Elven Scout. If you take my Recommendation, you will be permitted to change profession to Elven Scout. And friend, I hope you raise the dignity of our race ever higher with your steadfast manner. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-05.htm new file mode 100644 index 0000000000..45d6407616 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-05.htm @@ -0,0 +1,5 @@ +Master Reisa:
+If that is the case, I will explain the task to you now. Not long ago, Guard Moretti of our village came to me. He said that a colleague who on patrols with him was lost and they still don't know his whereabouts. So he wanted the help of the Elves who are skilled in the arts of investigation. He is a very devoted youth, and I have always thought very highly of him, so I accepted his request.
+So, I am about to give you that task. Finding a missing person requires great investigative skills, alertness, and lucidity. Moreover, you never know what dangers lie ahead, so you must also have great combat skills. Solving this task is a good opportunity for you to prove your abilities.
+Please, go to Guard Moretti and listen to the facts of the case and help him. Moretti is at the east of the village, standing at the entrance where you can see the bridge. If you go with no references, he may not know you, so I will write you a letter. Please take this and go seek Moretti. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-06.html new file mode 100644 index 0000000000..dd665d3668 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-06.html @@ -0,0 +1,3 @@ +Master Reisa:
+Haven't you met Guard Moretti yet? You can learn the details from him. Moretti stands guard at the east entrance of the village where you can see the bridge. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-07.html new file mode 100644 index 0000000000..a3aa77d85f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-07.html @@ -0,0 +1,4 @@ +Master Reisa:
+I see you have received an Honorary Guard certificate. I have already heard of your achievements. Guard Moretti highly praised you. Now I can gladly recommend you as an Elven Scout. Who but a skilled Elf like you could become an Elven Scout?
+In the future, I hope you train still further, to become a magnificent Plainswalker or Silver Ranger. Now take my Recommendation and go to Grand Master Rains. He will change your profession to Elven Scout. May the power of Eva be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-08.html new file mode 100644 index 0000000000..70da2e1c67 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30328-08.html @@ -0,0 +1,3 @@ +Master Reisa:
+I see you have not solved the matter yet. Go now and help Guard Moretti. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30334-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30334-01.html new file mode 100644 index 0000000000..d95e25cf09 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30334-01.html @@ -0,0 +1,4 @@ +Guard Babenco:
+I have heard from Moretti. You must be the one who took charge of investigating this case. You must be going to the Ol Mahum's campgrounds. If you follow this road west, you will arrive at a fork in the road. Follow the road that heads southwest and you will reach the campgrounds. It used to be a place where the Gracian army made its camp, but it was abandoned for some time before the remaining army of Ol Mahums settled down there.
+Prias and I were classmates, so please find out where he is. I hope nothing has happened to him ... Pray, be careful. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-01.html new file mode 100644 index 0000000000..c8054c05cf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-01.html @@ -0,0 +1,5 @@ +Guard Moretti:
+Ah, you were sent by Reisa. Greetings. In this letter, Reisa says that you will complete this task without fail.
+Very well, then let me explain to you exactly what is required. I hope we can find the whereabouts of Prias as soon as possible ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-02.html new file mode 100644 index 0000000000..a653a310c9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-02.html @@ -0,0 +1,6 @@ +Guard Moretti:
+All right, It's time to tell you what is going on.
+A fortnight ago, I set off on a regular patrol of the ruins with a few of my colleagues. However, while we were looking around the reconstruction site, a group of Ol Mahum patrollers suddenly attacked us! In our experience, they usually don't appear at the ruins, but for some reason they suddenly showed up and attacked us. During the surprise attack, we were unable to keep our formation and fought back as best we could to make our escape. It was total chaos as we continued to try and fight our way free of the trap... I still get shivers when I think of it!
+When we had won free and regrouped, we discovered our problem. One of our party, Prias, was nowhere to be seen. We didn't know what to do, since he had vanished while we were preoccupied. So we returned to the village as quickly as we could, gathered more of our colleagues and returned to the ruins. But no matter how much we searched, we could not find a clue to his whereabouts. Since then, we are continuing our investigations, but we still have not found a clue to his whereabouts. So in the end, I requested the help of Reisa. Poor Prias... I am really worried.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-03.html new file mode 100644 index 0000000000..7921b0301d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-03.html @@ -0,0 +1,4 @@ +Guard Moretti:
+Thank you for your decision to help us in our task. My colleagues traced the footsteps of the Ol Mahum patrols, and it seems that they are staying in the abandoned camp. I think that would be the best place to start searching.
+If you are not familiar with the geography around here, ask Guard Babenco at the western entrance of the village. He will tell you how to find the abandoned camp. It is a place where a large group of Ol Mahums have established a settlement, so you must be careful. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-04.html new file mode 100644 index 0000000000..a049fbe12b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-04.html @@ -0,0 +1,3 @@ +Guard Moretti:
+You haven't found the Ol Mahum patrols yet? I think it would be best to go to the Abandoned Camp first. If you don't know how to go there, ask Guard Babenco. He is at the west entrance of the village. Thank you in advance. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-05.html new file mode 100644 index 0000000000..87c20a4c73 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-05.html @@ -0,0 +1,4 @@ +Guard Moretti:
+Oh, what is this? Prias's Letter! Ah... seeing that it is torn, I'm sure he tore it up while he was writing us a message because he was discovered.
+Unfortunately, the letter is so badly torn that I cannot tell exactly what he wanted to say... 'Ol Mahum... Urgent... Attack... Elves...' I wonder what the Elves have to do with this... anyway, I cannot read any more. Do you have any other torn letter pieces? Since this is the only clue that we have, I think it would be best to collect the remaining torn letter pieces. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-06.html new file mode 100644 index 0000000000..5f3be674f9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-06.html @@ -0,0 +1,6 @@ +Guard Moretti:
+Why, this is a letter Prias left behind! And it is torn into pieces... I am sure he ripped it up while he was trying to leave us a message. Anyway, let's quickly assemble the pieces and read the letter.
+Hmm... If I put this one on top... Ah! At last, I can read it. "I write in haste. Emergency! They have kidnapped me and are planning to attack Gludin. The Ol Mahum scouts are taking me to the Neutral Zone in the Elven Forest. It's an emergency..." The letter ends here.
+Now I know... The reason the Ol Mahum showed up in the ruins... The reason they kidnapped Prias... At least now we know where he is so there is a slight hope, but can we save him? I must ask you another favor. We must prepare for the upcoming attack, so please go and save Prias...
+Every moment is critical! If you meet Prias, give him this. This is a letter that explains the circumstances and a Medicinal Herb that will cure his wounds. To go to the Neutral Zone, cross this bridge in front of you and follow the road north. It is where Dark Elven and Elven soldiers stand face to face against each other. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-07.html new file mode 100644 index 0000000000..9fe6512929 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-07.html @@ -0,0 +1,5 @@ +Guard Moretti:
+Ah, you have finally returned. Is Prias safe? What about his letter? Hmm...
+Ah, I do not know whether my friend is truly courageous or merely rash. I can't believe he is staying behind to patrol. Anyway, he is very obliged to you. He may seem a little impolite on the outside, but he has a very kind heart. It's just that he is awkward when it comes to expressing his gratitude.
+Now our guards must prepare and set off for the battle. We must teach the Ol Mahum stragglers a lesson. At any rate, your distinguished services have greatly helped this case. I have spoken to the captain of the guards and he has already prepared an Honorary Guard. If you take this to Master Reisa, you will be able to get what you want. Well, I have many things to prepare, so goodbye. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-08.html new file mode 100644 index 0000000000..265fe46a20 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-08.html @@ -0,0 +1,3 @@ +Guard Moretti:
+Ah, you haven't gone to Reisa yet? Go on now and see Reisa. I hear you want to be an Elven Scout. I'm sure everything will turn out well. I am busy, so please excuse me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-09.html new file mode 100644 index 0000000000..8b4e47cc48 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30337-09.html @@ -0,0 +1,3 @@ +Guard Moretti:
+Please find my friend Prias somewhere in the Neutral Zone, and give him the herb and letter that I gave you. The Neutral Zone is to the north of our village, across the bridge and along the road. It is the region where Dark Elven and Elven soldiers stand face to face with one another. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30426-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30426-01.html new file mode 100644 index 0000000000..b0665c5ae4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30426-01.html @@ -0,0 +1,4 @@ +Prias:
+Has Moretti sent you? I cannot move because my feet are in shackles. Please free me!
+Do you see those Ol Mahum sentries over there? One of them has the key to the shackles on my feet! It seems they haven't noticed you yet. Lure them now and get rid of them. There is no time to hesitate. Hurry! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30426-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30426-02.html new file mode 100644 index 0000000000..fbbe3f4170 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30426-02.html @@ -0,0 +1,6 @@ +Prias:
+You are very lucky. You came just when the others had left and only the sentries remained ... Anyway, I am free, thanks to you. Thank you very much. Ah, Moretti sent me a letter? And an herb as well ... he is a wonderful friend. I begin to feel faint just by thinking about my captivity, and the torments I've had to endure.
+The scoundrels here just now were scouts of the group that was going to attack our village. They were planning to do their work in the Elven Forest where Humans cannot enter easily. Since you arrived at the right time, we can alert the people of the danger.
+Take this to Moretti and tell him that it will be hard for me to return immediately ... Tell him I will take a closer look at the situation here and join the guards later.
+I am entirely in your debt. Thank you very much. To think that I would receive help from the Elves in my lifetime! On your way back, please take this letter to Moretti. I beg you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30426-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30426-04.html new file mode 100644 index 0000000000..e11dc2888e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/30426-04.html @@ -0,0 +1,3 @@ +Prias:
+Elven friend, do not worry about me but please take my letter to Moretti. I will have to scout some more. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/Q00407_PathOfTheElvenScout.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/Q00407_PathOfTheElvenScout.java new file mode 100644 index 0000000000..da45ff8c3b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00407_PathOfTheElvenScout/Q00407_PathOfTheElvenScout.java @@ -0,0 +1,341 @@ +/* + * 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.Q00407_PathOfTheElvenScout; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path of the Elven Scout (407) + * @author ivantotov + */ +public final class Q00407_PathOfTheElvenScout extends Quest +{ + // NPCs + private static final int MASTER_REORIA = 30328; + private static final int GUARD_BABENCO = 30334; + private static final int GUARD_MORETTI = 30337; + private static final int PRIAS = 30426; + // Items + private static final int REISAS_LETTER = 1207; + private static final int PRIASS_1ND_TORN_LETTER = 1208; + private static final int PRIASS_2ND_TORN_LETTER = 1209; + private static final int PRIASS_3ND_TORN_LETTER = 1210; + private static final int PRIASS_4ND_TORN_LETTER = 1211; + private static final int MORETTIES_HERB = 1212; + private static final int MORETTIS_LETTER = 1214; + private static final int PRIASS_LETTER = 1215; + private static final int HONORARY_GUARD = 1216; + private static final int REISAS_RECOMMENDATION = 1217; + private static final int RUSTED_KEY = 1293; + // Monster + private static final int OL_MAHUM_PATROL = 20053; + // Quest Monster + private static final int OL_MAHUM_SENTRY = 27031; + // Misc + private static final int MIN_LEVEL = 18; + + public Q00407_PathOfTheElvenScout() + { + super(407); + addStartNpc(MASTER_REORIA); + addTalkId(MASTER_REORIA, GUARD_BABENCO, GUARD_MORETTI, PRIAS); + addKillId(OL_MAHUM_PATROL, OL_MAHUM_SENTRY); + addAttackId(OL_MAHUM_PATROL, OL_MAHUM_SENTRY); + registerQuestItems(REISAS_LETTER, PRIASS_1ND_TORN_LETTER, PRIASS_2ND_TORN_LETTER, PRIASS_3ND_TORN_LETTER, PRIASS_4ND_TORN_LETTER, MORETTIES_HERB, MORETTIS_LETTER, PRIASS_LETTER, HONORARY_GUARD, RUSTED_KEY); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() == ClassId.ELVEN_FIGHTER) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (hasQuestItems(player, REISAS_RECOMMENDATION)) + { + htmltext = "30328-04.htm"; + } + else + { + qs.startQuest(); + qs.unset("variable"); + giveItems(player, REISAS_LETTER, 1); + htmltext = "30328-05.htm"; + } + } + else + { + htmltext = "30328-03.htm"; + } + } + else if (player.getClassId() == ClassId.ELVEN_SCOUT) + { + htmltext = "30328-02a.htm"; + } + else + { + htmltext = "30328-02.htm"; + } + break; + } + case "30337-02.html": + { + htmltext = event; + break; + } + case "30337-03.html": + { + if (hasQuestItems(player, REISAS_LETTER)) + { + takeItems(player, REISAS_LETTER, -1); + qs.set("variable", 1); + qs.setCond(2, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onAttack(L2Npc npc, L2PcInstance attacker, int damage, boolean isSummon) + { + final QuestState qs = getQuestState(attacker, false); + + if ((qs != null) && qs.isStarted()) + { + npc.setScriptValue(attacker.getObjectId()); + } + return super.onAttack(npc, attacker, damage, isSummon); + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + if (npc.isScriptValue(killer.getObjectId()) && Util.checkIfInRange(1500, npc, killer, false)) + { + final QuestState qs = getQuestState(killer, false); + if (qs == null) + { + return null; + } + + if (npc.getId() == OL_MAHUM_SENTRY) + { + if (qs.isCond(5) && (getRandom(10) < 6)) + { + if (hasQuestItems(qs.getPlayer(), MORETTIES_HERB, MORETTIS_LETTER) && !hasQuestItems(qs.getPlayer(), RUSTED_KEY)) + { + giveItems(qs.getPlayer(), RUSTED_KEY, 1); + qs.setCond(6, true); + } + } + } + else if (qs.isCond(2)) + { + final boolean has1stLetter = hasQuestItems(qs.getPlayer(), PRIASS_1ND_TORN_LETTER); + final boolean has2ndLetter = hasQuestItems(qs.getPlayer(), PRIASS_2ND_TORN_LETTER); + final boolean has3rdLetter = hasQuestItems(qs.getPlayer(), PRIASS_3ND_TORN_LETTER); + final boolean has4thLetter = hasQuestItems(qs.getPlayer(), PRIASS_4ND_TORN_LETTER); + + if (!(has1stLetter && has2ndLetter && has3rdLetter && has4thLetter)) + { + if (!has1stLetter) + { + giveLetterAndCheckState(PRIASS_1ND_TORN_LETTER, qs); + } + else if (!has2ndLetter) + { + giveLetterAndCheckState(PRIASS_2ND_TORN_LETTER, qs); + } + else if (!has3rdLetter) + { + giveLetterAndCheckState(PRIASS_3ND_TORN_LETTER, qs); + } + else if (!has4thLetter) + { + giveLetterAndCheckState(PRIASS_4ND_TORN_LETTER, qs); + } + } + } + } + return super.onKill(npc, killer, isSummon); + } + + private void giveLetterAndCheckState(int letterId, QuestState qs) + { + giveItems(qs.getPlayer(), letterId, 1); + + if (getQuestItemsCount(qs.getPlayer(), PRIASS_1ND_TORN_LETTER, PRIASS_2ND_TORN_LETTER, PRIASS_3ND_TORN_LETTER, PRIASS_4ND_TORN_LETTER) >= 4) + { + qs.setCond(3, true); + } + else + { + playSound(qs.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == MASTER_REORIA) + { + htmltext = "30328-01.htm"; + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case MASTER_REORIA: + { + if (hasQuestItems(player, REISAS_LETTER)) + { + htmltext = "30328-06.html"; + } + else if ((qs.getInt("variable") == 1) && !hasAtLeastOneQuestItem(player, REISAS_LETTER, HONORARY_GUARD)) + { + htmltext = "30328-08.html"; + } + else if (hasQuestItems(player, HONORARY_GUARD)) + { + takeItems(player, HONORARY_GUARD, -1); + giveItems(player, REISAS_RECOMMENDATION, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 19932); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 26630); + } + else + { + addExpAndSp(player, 591724, 33328); + } + giveAdena(player, 163800, true); + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30328-07.html"; + } + break; + } + case GUARD_BABENCO: + { + if (qs.getInt("variable") == 1) + { + htmltext = "30334-01.html"; + } + break; + } + case GUARD_MORETTI: + { + final long letterCount = getQuestItemsCount(player, PRIASS_1ND_TORN_LETTER, PRIASS_2ND_TORN_LETTER, PRIASS_3ND_TORN_LETTER, PRIASS_4ND_TORN_LETTER); + if (hasQuestItems(player, REISAS_LETTER) && (letterCount == 0)) + { + htmltext = "30337-01.html"; + } + else if ((qs.getInt("variable") == 1) && !hasAtLeastOneQuestItem(player, MORETTIS_LETTER, PRIASS_LETTER, HONORARY_GUARD)) + { + if (letterCount == 0) + { + htmltext = "30337-04.html"; + } + else if (letterCount < 4) + { + htmltext = "30337-05.html"; + } + else + { + takeItems(player, -1, PRIASS_1ND_TORN_LETTER, PRIASS_2ND_TORN_LETTER, PRIASS_3ND_TORN_LETTER, PRIASS_4ND_TORN_LETTER); + giveItems(player, MORETTIES_HERB, 1); + giveItems(player, MORETTIS_LETTER, 1); + qs.setCond(4, true); + htmltext = "30337-06.html"; + } + } + else if (hasQuestItems(player, PRIASS_LETTER)) + { + takeItems(player, PRIASS_LETTER, -1); + giveItems(player, HONORARY_GUARD, 1); + qs.setCond(8, true); + htmltext = "30337-07.html"; + } + else if (hasQuestItems(player, MORETTIES_HERB, MORETTIS_LETTER)) + { + htmltext = "30337-09.html"; + } + else if (hasQuestItems(player, HONORARY_GUARD)) + { + htmltext = "30337-08.html"; + } + break; + } + case PRIAS: + { + if (hasQuestItems(player, MORETTIS_LETTER, MORETTIES_HERB)) + { + if (!hasQuestItems(player, RUSTED_KEY)) + { + qs.setCond(5, true); + htmltext = "30426-01.html"; + } + else + { + takeItems(player, -1, RUSTED_KEY, MORETTIES_HERB, MORETTIS_LETTER); + giveItems(player, PRIASS_LETTER, 1); + qs.setCond(7, true); + htmltext = "30426-02.html"; + } + } + else if (hasQuestItems(player, PRIASS_LETTER)) + { + htmltext = "30426-04.html"; + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30157-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30157-01.html new file mode 100644 index 0000000000..954596df17 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30157-01.html @@ -0,0 +1,6 @@ +Magister Greenis:
+Oh...a letter from my godmother! How is she? I haven't seen her for ages... Hmm, I see you're searching for the Magical Powers Ruby.
+It has been the symbol of my family for 200 years; no one in all of Oren or Gludio knows it better than I do. Rubies were once mined throughout northern Gludio, but those sites all collapsed during the war with Gracia.
+We have been unable to find any trace of the original mines. Fortunately, I still have a small piece of the Magical Powers Ruby. Precious as it is, I will give it to you in exchange for a favor. What do you say?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30157-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30157-02.html new file mode 100644 index 0000000000..58c3659540 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30157-02.html @@ -0,0 +1,5 @@ +Magister Greenis:
+Thank you. The Magical Powers Ruby contains a fiery force immensely valuable to those of us who study Elemental Magic.
+I would like to create more of these rubies, but to do so I need a vital ingredient that can only be found on the neck of a Pincer Spider: Red Down.
+If you bring me back 5 clumps of Red Down I will create a Magical Powers Ruby just for you. Here, take this. It is a talisman that has protected me from evil creatures in the past. Perhaps it will help you in this task as well. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30157-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30157-03.html new file mode 100644 index 0000000000..12a767faa5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30157-03.html @@ -0,0 +1,4 @@ +Magister Greenis:
+Hunt Pincer Spiders and bring back 5 clumps of Red Down, and I will give you a Magical Powers Ruby.
+Even Human Mystics use the ruby in their magical studies; the Wizards of the Ivory tower use the refined red dust to summon elemental spirits. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30157-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30157-04.html new file mode 100644 index 0000000000..d2e238dc8b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30157-04.html @@ -0,0 +1,5 @@ +Magister Greenis:
+Well done! Now I have all I need to fashion a Magical Powers Ruby.
+Here, take it!
+Before you leave, though, let me give you a word of advice. Talent will only take you so far in your Mystical studies. There is no substitute for hard work and disciplined study. The high-level Mystics of the Ivory Tower spend every waking moment in research, spurning food, sleep, recreation, love and all other distractions. Follow their example and you will advance far! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30371-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30371-01.html new file mode 100644 index 0000000000..568a968516 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30371-01.html @@ -0,0 +1,6 @@ +Thalia:
+What have you come here for? Oh... What a delicious looking apple! Is this for me? This reminds me of the legend of the Elven maiden who picked the apple of knowledge.
+Rosella sent you? Are you looking for the Pure Aquamarine? Rosella asked me before... She told me to kindly tell the whereabouts of the Aquamarine of Water, should anyone ask for it.
+But Aquamarines are not only precious, but a very valuable resource for us Elves. I cannot tell that secret to just anyone. If you perform a task for me, I shall tell you about the Aquamarine.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30371-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30371-02.html new file mode 100644 index 0000000000..262fbcbd02 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30371-02.html @@ -0,0 +1,5 @@ +Thalia:
+My request is not a difficult one. A special fertilizer is needed to maintain the green health of the Mother Trees that we look after. This fertilizer is made from the leaves that fall from the trees in the Elven Forest.
+Have you ever seen any fallen leaves in the Elven Forest? Probably not. That is because the dryad elders collect them even before the leaves have had a chance to settle on the ground. They gather these leaves and turn them into golden leaves. Use these golden leaves as fertilizer, and the trees of the Human world will never have to be fertilized again.
+Take this sap with you and slay dryad elders to obtain the golden leaf in its possession. Bring back 5 golden leaves and I will tell you the whereabouts of the Aquamarine. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30371-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30371-03.html new file mode 100644 index 0000000000..90c91ee860 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30371-03.html @@ -0,0 +1,4 @@ +Thalia:
+You are lacking in effort. My sisters and I have worked for hundreds of years without a day of rest to look after the Mother Trees and gather their fruit. Precious items require much work. I cannot tell you about the Aquamarine until you have gathered 5 Gold Leaves.
+Elves serve Einhashad, Goddess of Light, along with our mother, Eva, and thus our magic possesses the properties of light. It is our responsibility to fill the forest and the plains with joyous music. This is what we ultimately seek to achieve through magic. When our songs fill the earth, the land will become a paradise. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30371-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30371-04.html new file mode 100644 index 0000000000..8026e3642a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30371-04.html @@ -0,0 +1,5 @@ +Thalia:
+You have found all 5 Gold Leaves, I see. In return, I will tell you about the Pure Aquamarine.
+The Mother Tree normally does not have any dew, but when the roots absorb the nutrition of the golden leaves, large, beautiful drops of dew form. On rare occasions, one can find a Pure Aquamarine among the dew.
+Here, take this Pure Aquamarine. I pray that you may safely pass your ritual. And do not forget... It is our responsibility to fill the forest and the plains with joyous music... When our songs fill the earth, the land will become a paradise. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-01.htm new file mode 100644 index 0000000000..901ebb6ba2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-01.htm @@ -0,0 +1,7 @@ +Rosella:
+Elven Wizards are in the preparatory level before becoming a Spellsinger or Elemental Summoner. They aren't to be compared with the likes of the Dark Elves, who walk the path of evil.
+To become an Elven Wizard, you must learn how to communicate with the spirits. For this communication, you must find the four jewels that symbolize water, fire, wind and earth and then perform a ritual. The ritual is performed to gain understanding of the basic elements that construct the world, and to receive Eva's blessing.
+Just recently, a young one of your age came and finished the ritual. What do you think? Will you take the challenge?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-02.htm new file mode 100644 index 0000000000..12eb857b9a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-02.htm @@ -0,0 +1,3 @@ +Rosella:
+Well, it is not a bad idea to savor the charm of nature a little longer and take the challenge later. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-02a.htm new file mode 100644 index 0000000000..59edc48325 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-02a.htm @@ -0,0 +1,3 @@ +Rosella:
+Looking again... I see you have already earned the title of Elven Wizard... Why are you trying to challenge the trial again? Leave the trial for those younger than you... You should concentrate more on the task of studying the order of mother nature. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-03.htm new file mode 100644 index 0000000000..20a0d7debb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-03.htm @@ -0,0 +1,4 @@ +Rosella:
+Oh no... At my age, my eyes are always tricking me. I'm afraid you cannot perform the ritual. Only Elven Mystics have the qualifications for it.
+I must go back to my knitting. My grandson will be having his birthday soon. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-04.htm new file mode 100644 index 0000000000..f2ac5fbc69 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-04.htm @@ -0,0 +1,5 @@ +Rogellia:
+Wait a moment... Youngster, I think I made a mistake. You are too young to complete the ceremony.
+I cannot send an innocent soul like yours into the harsh world. See me again after you have gained more experience.
+(Only characters level 18 and above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-05.htm new file mode 100644 index 0000000000..64b7b7e73d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-05.htm @@ -0,0 +1,4 @@ +Rosella:
+Hmmm now, aren't you the one who finished the ritual? What are you waiting for? Go take a step into the wider world. Seek the High Priest. He will teach you what you must do and how to survive.
+May the protection of mother Eva be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-06.htm new file mode 100644 index 0000000000..6309ad91d4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-06.htm @@ -0,0 +1,8 @@ +Rosella:
+Four things are required to perform the ritual. They are 4 jewels that represent water, fire, wind and the earth. If you devote the jewels to Mother Nature and perform the ritual for Eva's blessing, in return, you will be able to communicate more deeply with the spirits.
+First, I give you this Fertility Peridot. This is the token of earth, symbolizing abundance and productivity. This is given to you, who wants to have a deeper understanding of nature, as a gift.
+Now you must find the remaining three by yourself. Which one do you want to seek first?
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-07.html new file mode 100644 index 0000000000..648c8d590b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-07.html @@ -0,0 +1,3 @@ +Rosella:
+Ruby... When I look at the red hues, I feel a memory stirring the passions of my youth... If you seek the ruby, symbol of fire, go to Magister Greenis in the Elven Village. I was her godmother when she was born. She is a fine lady. Please give her this letter I wrote about you so she will help you to find the ruby. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-08.html new file mode 100644 index 0000000000..1db26599ce --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-08.html @@ -0,0 +1,3 @@ +Rosella:
+Take the letter I gave you to Magister Greenis in the Elven Village. If you ask her for help, she will tell you about the ruby that symbolizes fire. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-09.html new file mode 100644 index 0000000000..2c8f9f55e0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-09.html @@ -0,0 +1,3 @@ +Rosella:
+Have you met Magister Greenis? How is the dear child? If you do as she says, you can find the ruby. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-10.html new file mode 100644 index 0000000000..2117490036 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-10.html @@ -0,0 +1,3 @@ +Rosella:
+Are you testing me? Don't you already have the magical powersd ruby? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-11.html new file mode 100644 index 0000000000..3d4bb0ca4f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-11.html @@ -0,0 +1,7 @@ +Rosella:
+If you devote four jewels, symbolizing water, fire, wind and earth, to Mother Nature and perform the ritual for Eva's blessing, in return, you will be able to communicate more deeply with the spirits.
+I already gave you the Fertility Peridot so go and find the remaining three by yourself. Which jewel do you want to seek first?
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-12.html new file mode 100644 index 0000000000..845a1c085a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-12.html @@ -0,0 +1,4 @@ +Rosella:
+How about learning a spell that increases memory? Haven't you already found the Pure Aquamarine? A young one like you should have a better memory!
+As I told you before, the Pure Aquamarine symbolizes water. The Elves who serve Eva always have divine protection of water. That's why the Aquamarine, which has the power of water, is the most beloved jewel among Elven Mystics. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-13.html new file mode 100644 index 0000000000..a80a38012b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-13.html @@ -0,0 +1,4 @@ +Rosella:
+Of course, you probably already know that water is the symbol of our mother Eva. Therefore, unlike other races, we elves receive the divine protection of mother Eva in the water. You need not go far to find the Pure Aquamarine, that symbolizes water. It can be found in the Elven Forest. Go to Thalia who tends the Mother Tree at Lake Iris. Give this fruit to her as a give, and ask her about the jewel. She will gladly help you.
+You can reach Lake Iris if you go straight south of the Elven Village. Thalia will be at the eastern shore of the lake. Well then, good luck. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-14.html new file mode 100644 index 0000000000..c1f3e6a58c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-14.html @@ -0,0 +1,4 @@ +Rosella:
+Go see Thalia, who takes care of the Mother Tree on Lake Iris. She will tell you about the Pure Aquamarine.
+You can reach Lake Iris if you go straight south of the Elven Village. Thalia will be at the eastern shore of the lake. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-15.html new file mode 100644 index 0000000000..f4005d9e98 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-15.html @@ -0,0 +1,3 @@ +Rosella:
+Did Thalia tell you about the Aquamarine? She is a very clever girl. She may test your skills. Her favorite test is related to the Gold Leaves. You can usually get them from the dryad elders. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-16.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-16.html new file mode 100644 index 0000000000..c5f706c192 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-16.html @@ -0,0 +1,3 @@ +Rosella:
+Don't you already have the Magical Powers Ruby? Try to find the other jewels. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-17.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-17.html new file mode 100644 index 0000000000..42ff28c66a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-17.html @@ -0,0 +1,5 @@ +Rosella:
+The Nobility Amethyst is the symbol of elegance and nobility and at the same time is the symbol of Sayha, the God of Wind. The force of the wind within the jewel is an important material for Mystics who study the magic of storms. Well, if you had studied the basics, you would know all this...
+Meet a person by the name of Northwind at the entrance to the Underground Fortress. He may know something abouth the Amethyst. Give this book to him and he will give you aid.
+To find the Elven Fortress, first go north of the village to the Neutral Zone, cross the bridge, and enter the Elven forest. If you cross the bridge, you will immediately see the grand Elven Fortress. The entrance is at the other side of the mountain. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-18.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-18.html new file mode 100644 index 0000000000..c3829291c6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-18.html @@ -0,0 +1,4 @@ +Rosella:
+Give the book I gave you to Northwind. The book is called, 'Immortal Love'... A wonderful love story... So touching... He asked for the book a long time ago.
+To find the Elven Fortress, first go north of the village to the Neutral Zone, cross the bridge, and enter the Elven forest. If you cross the bridge, you will immediately see the grand Elven Fortress. The entrance is at the other side of the mountain. You will be able to meet Northwind over there. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-19.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-19.html new file mode 100644 index 0000000000..ed6fc616da --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-19.html @@ -0,0 +1,3 @@ +Rosella:
+Didn't Northwind tell you the story of the Nobility Amethyst? There is no one who can better explain about the jewel in the Elven Forest. Meet him and ask him in detail. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-20.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-20.html new file mode 100644 index 0000000000..b531479fb8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-20.html @@ -0,0 +1,5 @@ +Rosella:
+Oh! You have collected all the jewels! Now we can begin the ritual.
+Water is the source of life. Mother, and eternity. Cleanse our stained souls with the Tears of Eva, purer than anything in the world, and give us your new blessing...
+With this, you have performed the ritual and earned the qualifications to become an Elven Wizard. Here, take this Eternity Diamond. If you take this to High Priest Raymond in the Town of Gludio, he will change your occupation to Elven Wizard. Of course, you can go to High Priestess Levian in Gludin as well. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-21.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-21.html new file mode 100644 index 0000000000..14496a4280 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-21.html @@ -0,0 +1,3 @@ +Rosella:
+You have collected five clumps of Red Down. This will be useful in manufacturing the Magical Powers Ruby. Greenis will be waiting, so go to her quickly and give her the down. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-22.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-22.html new file mode 100644 index 0000000000..3ba758ef42 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-22.html @@ -0,0 +1,3 @@ +Rosella:
+You have collected five Gold Leaves with no difficulty, I see. There was a time when the Elven Forest was full of these leaves... Now they are very rare because of the dryads. Thalia must be waiting for these leaves, I don't want to keep her waiting. Bring her these leaves and be quick. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-23.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-23.html new file mode 100644 index 0000000000..cd70765d0c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30414-23.html @@ -0,0 +1,3 @@ +Rosella:
+This is an ordinary Amethyst. Yes, this will be fine for Northwind to make a Nobility Amethyst. Northwind has a temper, so he won't wait long. If you are late, he may go someplace else. Hurry and go find him. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30423-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30423-01.html new file mode 100644 index 0000000000..4a4e689b9f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30423-01.html @@ -0,0 +1,6 @@ +Northwind:
+Oh... Rosella must have sent it. I've been begging her for a month to lend me this book. The love story in this book is very impressive. You may criticize a man that reads Romance Novels, but... Love is a truth that does not change.
+Hmm... Rosella has written a letter on the first page. She asks me to tell you about the Nobility Amethyst. Since you gave me the book I really wanted, and since Rosella has asked me, I will tell you how to find the Amethyst.
+To obtain the Nobility Amethyst you need two regular Amethysts. You can get the Amethysts by killing the sukar wererat leaders in the Elven Underground Fortress. The Underground Fortress is dangerous... Please be careful.
+I'll lend you this for good luck. It has always given me good luck. Return it when you have found the Amethyst. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30423-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30423-02.html new file mode 100644 index 0000000000..a96c626fad --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30423-02.html @@ -0,0 +1,3 @@ +Northwind:
+If you want the Nobility Amethyst, fetch two regular Amethysts from the Underground Fortress. Defeat the sukar wererat leaders in the Underground Fortress to obtain the Amethysts. There is an old superstition that the Amethyst protects one's life. That is why I think those creatures always carry it around with them. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30423-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30423-03.html new file mode 100644 index 0000000000..5c65520523 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/30423-03.html @@ -0,0 +1,5 @@ +Northwind:
+You have tremendous abilities. I'm sorry I didn't recognize it earlier. I thought an amateur with no skills was just depending on Rosella... I guess I was wrong.
+The Nobility Amethyst can be created by blowing the wind of life into two regular ones. The wind of life is nothing else but the breath of Elves. Inheriting the life force of the Mother Tree, our breath contains the very primeval powers.
+Now! Here is the Nobility Amethyst I have just made. Take this to Rosella. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/Q00408_PathOfTheElvenWizard.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/Q00408_PathOfTheElvenWizard.java new file mode 100644 index 0000000000..893d84ff80 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00408_PathOfTheElvenWizard/Q00408_PathOfTheElvenWizard.java @@ -0,0 +1,440 @@ +/* + * 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.Q00408_PathOfTheElvenWizard; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path Of The Elven Wizard (408) + * @author ivantotov + */ +public final class Q00408_PathOfTheElvenWizard extends Quest +{ + // NPCs + private static final int ROSSELA = 30414; + private static final int GREENIS = 30157; + private static final int THALIA = 30371; + private static final int NORTHWIND = 30423; + // Items + private static final int ROSELLAS_LETTER = 1218; + private static final int RED_DOWN = 1219; + private static final int MAGICAL_POWERS_RUBY = 1220; + private static final int PURE_AQUAMARINE = 1221; + private static final int APPETIZING_APPLE = 1222; + private static final int GOLD_LEAVES = 1223; + private static final int IMMORTAL_LOVE = 1224; + private static final int AMETHYST = 1225; + private static final int NOBILITY_AMETHYST = 1226; + private static final int FERTILITY_PERIDOT = 1229; + private static final int GREENISS_CHARM = 1272; + private static final int SAP_OF_THE_MOTHER_TREE = 1273; + private static final int LUCKY_POTPOURRI = 1274; + // Reward + private static final int ETERNITY_DIAMOND = 1230; + // Monster + private static final int DRYAD_ELDER = 20019; + private static final int SUKAR_WERERAT_LEADER = 20047; + private static final int PINCER_SPIDER = 20466; + // Misc + private static final int MIN_LEVEL = 18; + + public Q00408_PathOfTheElvenWizard() + { + super(408); + addStartNpc(ROSSELA); + addTalkId(ROSSELA, GREENIS, THALIA, NORTHWIND); + addKillId(DRYAD_ELDER, SUKAR_WERERAT_LEADER, PINCER_SPIDER); + registerQuestItems(ROSELLAS_LETTER, RED_DOWN, MAGICAL_POWERS_RUBY, PURE_AQUAMARINE, APPETIZING_APPLE, GOLD_LEAVES, IMMORTAL_LOVE, AMETHYST, NOBILITY_AMETHYST, FERTILITY_PERIDOT, GREENISS_CHARM, SAP_OF_THE_MOTHER_TREE, LUCKY_POTPOURRI); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() != ClassId.ELVEN_MAGE) + { + if (player.getClassId() == ClassId.ELVEN_WIZARD) + { + htmltext = "30414-02a.htm"; + } + else + { + htmltext = "30414-03.htm"; + } + } + else if (player.getLevel() < MIN_LEVEL) + { + htmltext = "30414-04.htm"; + } + else if (hasQuestItems(player, ETERNITY_DIAMOND)) + { + htmltext = "30414-05.htm"; + } + else + { + if (!hasQuestItems(player, FERTILITY_PERIDOT)) + { + giveItems(player, FERTILITY_PERIDOT, 1); + } + qs.startQuest(); + htmltext = "30414-06.htm"; + } + break; + } + case "30414-02.htm": + { + htmltext = event; + break; + } + case "30414-10.html": + { + if (hasQuestItems(player, MAGICAL_POWERS_RUBY)) + { + htmltext = event; + } + else if (!hasQuestItems(player, MAGICAL_POWERS_RUBY) && hasQuestItems(player, FERTILITY_PERIDOT)) + { + if (!hasQuestItems(player, ROSELLAS_LETTER)) + { + giveItems(player, ROSELLAS_LETTER, 1); + } + htmltext = "30414-07.html"; + } + break; + } + case "30414-12.html": + { + if (hasQuestItems(player, PURE_AQUAMARINE)) + { + htmltext = event; + } + else if (!hasQuestItems(player, PURE_AQUAMARINE) && hasQuestItems(player, FERTILITY_PERIDOT)) + { + if (!hasQuestItems(player, APPETIZING_APPLE)) + { + giveItems(player, APPETIZING_APPLE, 1); + } + htmltext = "30414-13.html"; + } + break; + } + case "30414-16.html": + { + if (hasQuestItems(player, NOBILITY_AMETHYST)) + { + htmltext = event; + } + else if (!hasQuestItems(player, NOBILITY_AMETHYST) && hasQuestItems(player, FERTILITY_PERIDOT)) + { + if (!hasQuestItems(player, IMMORTAL_LOVE)) + { + giveItems(player, IMMORTAL_LOVE, 1); + } + htmltext = "30414-17.html"; + } + break; + } + case "30157-02.html": + { + if (hasQuestItems(player, ROSELLAS_LETTER)) + { + takeItems(player, ROSELLAS_LETTER, 1); + if (!hasQuestItems(player, GREENISS_CHARM)) + { + giveItems(player, GREENISS_CHARM, 1); + } + } + htmltext = event; + break; + } + case "30371-02.html": + { + if (hasQuestItems(player, APPETIZING_APPLE)) + { + takeItems(player, APPETIZING_APPLE, 1); + if (!hasQuestItems(player, SAP_OF_THE_MOTHER_TREE)) + { + giveItems(player, SAP_OF_THE_MOTHER_TREE, 1); + } + } + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case DRYAD_ELDER: + { + if (hasQuestItems(killer, SAP_OF_THE_MOTHER_TREE) && (getQuestItemsCount(killer, GOLD_LEAVES) < 5) && (getRandom(100) < 40)) + { + giveItems(killer, GOLD_LEAVES, 1); + if (getQuestItemsCount(killer, GOLD_LEAVES) == 5) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case SUKAR_WERERAT_LEADER: + { + if (hasQuestItems(killer, LUCKY_POTPOURRI) && (getQuestItemsCount(killer, AMETHYST) < 2) && (getRandom(100) < 40)) + { + giveItems(killer, AMETHYST, 1); + if (getQuestItemsCount(killer, AMETHYST) == 2) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case PINCER_SPIDER: + { + if (hasQuestItems(killer, GREENISS_CHARM) && (getQuestItemsCount(killer, RED_DOWN) < 5) && (getRandom(100) < 70)) + { + giveItems(killer, RED_DOWN, 1); + if (getQuestItemsCount(killer, RED_DOWN) == 5) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == ROSSELA) + { + htmltext = "30414-01.htm"; + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case ROSSELA: + { + if (!hasAtLeastOneQuestItem(player, ROSELLAS_LETTER, APPETIZING_APPLE, IMMORTAL_LOVE, GREENISS_CHARM, SAP_OF_THE_MOTHER_TREE, LUCKY_POTPOURRI) && hasQuestItems(player, FERTILITY_PERIDOT) && !hasQuestItems(player, MAGICAL_POWERS_RUBY, NOBILITY_AMETHYST, PURE_AQUAMARINE)) + { + htmltext = "30414-11.html"; + } + else if (hasQuestItems(player, ROSELLAS_LETTER)) + { + htmltext = "30414-08.html"; + } + else if (hasQuestItems(player, GREENISS_CHARM)) + { + if (getQuestItemsCount(player, RED_DOWN) < 5) + { + htmltext = "30414-09.html"; + } + else + { + htmltext = "30414-21.html"; + } + } + else if (hasQuestItems(player, APPETIZING_APPLE)) + { + htmltext = "30414-14.html"; + } + else if (hasQuestItems(player, SAP_OF_THE_MOTHER_TREE)) + { + if (getQuestItemsCount(player, GOLD_LEAVES) < 5) + { + htmltext = "30414-15.html"; + } + else + { + htmltext = "30414-22.html"; + } + } + else if (hasQuestItems(player, IMMORTAL_LOVE)) + { + htmltext = "30414-18.html"; + } + else if (hasQuestItems(player, LUCKY_POTPOURRI)) + { + if (getQuestItemsCount(player, AMETHYST) < 2) + { + htmltext = "30414-19.html"; + } + else + { + htmltext = "30414-23.html"; + } + } + else + { + if (!hasAtLeastOneQuestItem(player, ROSELLAS_LETTER, APPETIZING_APPLE, IMMORTAL_LOVE, GREENISS_CHARM, SAP_OF_THE_MOTHER_TREE, LUCKY_POTPOURRI) && hasQuestItems(player, FERTILITY_PERIDOT, MAGICAL_POWERS_RUBY, NOBILITY_AMETHYST, PURE_AQUAMARINE)) + { + giveAdena(player, 163800, true); + if (!hasQuestItems(player, ETERNITY_DIAMOND)) + { + giveItems(player, ETERNITY_DIAMOND, 1); + } + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 22532); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 29230); + } + else + { + addExpAndSp(player, 591724, 35928); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30414-20.html"; + } + } + break; + } + case GREENIS: + { + if (hasQuestItems(player, ROSELLAS_LETTER)) + { + htmltext = "30157-01.html"; + } + else if (hasQuestItems(player, GREENISS_CHARM)) + { + if (getQuestItemsCount(player, RED_DOWN) < 5) + { + htmltext = "30157-03.html"; + } + else + { + takeItems(player, RED_DOWN, -1); + if (!hasQuestItems(player, MAGICAL_POWERS_RUBY)) + { + giveItems(player, MAGICAL_POWERS_RUBY, 1); + } + takeItems(player, GREENISS_CHARM, 1); + htmltext = "30157-04.html"; + } + } + break; + } + case THALIA: + { + if (hasQuestItems(player, APPETIZING_APPLE)) + { + htmltext = "30371-01.html"; + } + else if (hasQuestItems(player, SAP_OF_THE_MOTHER_TREE)) + { + if (getQuestItemsCount(player, GOLD_LEAVES) < 5) + { + htmltext = "30371-03.html"; + } + else + { + if (!hasQuestItems(player, PURE_AQUAMARINE)) + { + giveItems(player, PURE_AQUAMARINE, 1); + } + takeItems(player, GOLD_LEAVES, -1); + takeItems(player, SAP_OF_THE_MOTHER_TREE, 1); + htmltext = "30371-04.html"; + } + } + break; + } + case NORTHWIND: + { + if (hasQuestItems(player, IMMORTAL_LOVE)) + { + takeItems(player, IMMORTAL_LOVE, 1); + if (!hasQuestItems(player, LUCKY_POTPOURRI)) + { + giveItems(player, LUCKY_POTPOURRI, 1); + } + htmltext = "30423-01.html"; + } + else if (hasQuestItems(player, LUCKY_POTPOURRI)) + { + if (getQuestItemsCount(player, AMETHYST) < 2) + { + htmltext = "30423-02.html"; + } + else + { + takeItems(player, AMETHYST, -1); + if (!hasQuestItems(player, NOBILITY_AMETHYST)) + { + giveItems(player, NOBILITY_AMETHYST, 1); + } + takeItems(player, LUCKY_POTPOURRI, 1); + htmltext = "30423-03.html"; + } + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-01.htm new file mode 100644 index 0000000000..c4d59710ca --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-01.htm @@ -0,0 +1,6 @@ +Priest Manuel:
+If you want to be an Elven Oracle who fulfills that holy will of Eva, you must listen carefully to what I am about to say.
+Between us Elven Priests, there has been a prophecy that has been handed down for hundreds of years. This is a prophecy given by the Mother Tree, mother of all woods and Elves. It speaks of one girl that will purify the forces of darkness that prevail in the world, whose birth will save all those that are persecuted by the powers of the darkness.
+We call this the prophecy of the sacred flame according to the original text. However, there have been rumors that the girl mentioned in the prophecy has appeared. I would like you to confirm the truth of this rumor.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-02.htm new file mode 100644 index 0000000000..15706d764b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-02.htm @@ -0,0 +1,4 @@ +Priest Manuel:
+I see you are not an Elven Mystic. I have made a mistake.
+I am sorry, but this task can only be entrusted to an Elven Mystic.
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-02a.htm new file mode 100644 index 0000000000..1f021a2c4e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-02a.htm @@ -0,0 +1,4 @@ +Priest Manuel:
+Ah! I see you are an Oracle that has already perceived the truth of light and life.
+Leave this task to the Elven Mystics, and go out into the world to fulfill the holy will of Eva. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-03.htm new file mode 100644 index 0000000000..cd532889e6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-03.htm @@ -0,0 +1,5 @@ +Priest Manuel:
+Thank you for your offer, but I am afraid that this mission might prove too difficult for you. Come back when you have experienced more of the world. Then we will be able to speak at greater length.
+May your journey be a blessed one!
+(Only characters level 18 or above may embark on this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-04.htm new file mode 100644 index 0000000000..b3a7718636 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-04.htm @@ -0,0 +1,3 @@ +Priest Manuel:
+The leaf of the Oracle represents the noble spirit of those that fulfill Eva's will. Take it and meet the High Priest. Then you will be able to change profession to an Elven Oracle. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-05.htm new file mode 100644 index 0000000000..a6cc646571 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-05.htm @@ -0,0 +1,5 @@ +Priest Manuel:
+Recently, there have been rumors of a girl near Gludin Harbor that performs miracles. We suspect that perhaps this girl may have the power to purify the world.
+If that girl is truly the sacred flame mentioned in the prophecy, we must protect her. I have heard that there are already those who are using the prophecy of the sacred flame to hatch sinister plots. First, bring the girl to us.
+Oh yes! Take this crystal necklace. It will aid you in revealing whether or not she is truly the sacred flame of the prophecy. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-06.html new file mode 100644 index 0000000000..3d23ff35e0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-06.html @@ -0,0 +1,3 @@ +Priest Manuel:
+I would like you to confirm the truth behind the rumors that say there is a girl near Gludin Harbor. If that girl is the chosen one mentioned in the prophecy of the sacred flame, then we must protect her. Please make haste and find the girl. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-07.html new file mode 100644 index 0000000000..4e78ef3384 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-07.html @@ -0,0 +1,3 @@ +<Priest Manuel:
+It is difficult to be certain with only this evidence. The church needs more than mere rumors and guesses before it can act. Please bring back more solid evidence.
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-08.html new file mode 100644 index 0000000000..d72ec5a724 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-08.html @@ -0,0 +1,5 @@ +Priest Manuel:
+I am terribly sorry about the girl. It is difficult for us to understand the will of the gods.
+I am sorry the girl was not the prophecy of sacred flame, but I give you a high recommendation for the conduct you have shown in the process of revealing the truth. I believe you have sufficient qualifications to become an Oracle.
+Now! I give you the Leaf of Oracle. This is a mark that symbolizes the noble spirit of those that fulfill the will of Eva. Take it, and meet the High Priest. Then you will be able to change profession to an Elven Oracle. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-09.html new file mode 100644 index 0000000000..f603baef1c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30293-09.html @@ -0,0 +1,3 @@ +Priest Manuel:
+I have received information that the lizardmen were hired by someone to kidnap that girl. We must meet the girl before they do! Hurry!
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-01.html new file mode 100644 index 0000000000..0c2a15d34a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-01.html @@ -0,0 +1,5 @@ +Allana:
+Darkness prevails in the world... I, sacred flame of prophecy will drive... drive out darkness! I perform miracles of light... Purify the world!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-02.html new file mode 100644 index 0000000000..e003677e16 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-02.html @@ -0,0 +1,5 @@ +Allana:
+What was that monster? I'm afraid... I don't want to die... I don't want to abandon my brother and die!
+I don't want to trick people anymore! However, Perrin didn't give me the money he owes me yet.
+I wrote down all the work I've done until now in my diary. I will give this to you... Please help me get the money from Perrin... I need that money to cure my brother's illness...
+Perrin hides around here somewhere... Please... Please help me! \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-03.html new file mode 100644 index 0000000000..22f26da8d4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-03.html @@ -0,0 +1,4 @@ +Allana:
+Please... Please help me get my money from Perrin...
+I need that money to help my brother get well... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-04.html new file mode 100644 index 0000000000..67f2125827 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-04.html @@ -0,0 +1,5 @@ +Allana:
+Sob... It is too late... I couldn't minister medicine at the proper time... My brother... is dead. He was so kind... and with such a pure heart. My poor brother...
+When he was tortured with sickness... Where was your god? Sob...
+I don't need money any more! Go! I want to be alone! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-05.html new file mode 100644 index 0000000000..8a3f470c58 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-05.html @@ -0,0 +1,3 @@ +Allana:
+(From the crystal necklace, all of a sudden, a voice comes out). This is Priest Manuel. I have something urgent to tell you. So, please come back into the temple.
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-06.html new file mode 100644 index 0000000000..34fa2ca290 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-06.html @@ -0,0 +1,3 @@ +Allana:
+How can you come empty-handed? You said you would meet Perrin. You said you would help me... Didn't you? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-07.html new file mode 100644 index 0000000000..aafb6f3950 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-07.html @@ -0,0 +1,5 @@ +Allana:
+How dare you! Do you doubt me? To the sacred flame of prophecy... Are you giving a command? How, how dare you!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-08.html new file mode 100644 index 0000000000..28a2181c81 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-08.html @@ -0,0 +1,7 @@ +Allana:
+We must go... together?
+No! I don't want to go! I must take care of my little brother. Miracles and sacred flame of prophecy... they were all lies!
+Perrin made me do it... He brought fake patients and acted like we prayed for treatment... And acted like a miracle had happened. I knew it was wrong, but... I need money to cure my sick brother. Perrin said I could earn big money if only I did what he said...
+Then, these strange lizardmen tried to take me away... I'm so scared! I don't know what to do...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-09.html new file mode 100644 index 0000000000..42c26056c5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30424-09.html @@ -0,0 +1,7 @@ +Allana:
+Pu... punished? Like a witch... Will I be burnt at the stake?
+I, I'm sorry... They are all lies! Miracle and sacred flame of prophecy... they are all made up! I just wanted to care for my brother...
+Perrin made me do it! He brought fake patients and we prayed for treatment and acted like a miracle had happened. I knew it was wrong, but I needed money to cure my sick brother. Perrin said I could earn big money if I did what he said.
+Recently some strange lizardmen tried to take me away... I'm so scared... I don't know what to do...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-01.html new file mode 100644 index 0000000000..dd3e18b9ce --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-01.html @@ -0,0 +1,9 @@ +Perrin:
+Oho! So the Elf of justice has come! You've heard the girlie's words and have come for the money? You don't think I'll give up the money I've earned by my own sweat so easily?
+Get lost
+On any other day, I would leave my mark on your body, but I'm being nice since today is my birthday. Thank your stars!
+ + + + + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-02.html new file mode 100644 index 0000000000..8547b3593c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-02.html @@ -0,0 +1,5 @@ +Perrin:
+You want to turn me in? It will not be easy. Let me introduce my bodyguard ...
+Hey, Tamil! Teach this ratty little Elf a lesson!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-03.html new file mode 100644 index 0000000000..17e9a2e3e7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-03.html @@ -0,0 +1,5 @@ +Perrin:
+You dare to challenge me? In that case, let me introduce my bodyguard ...!
+Hey, Tamil! Put the fear of the gods into this ratty little elf!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-04.html new file mode 100644 index 0000000000..340a77c59f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-04.html @@ -0,0 +1,5 @@ +Perrin:
+Eek! You've killed Tamil ...!
+Look here! Help! Ok, ok, I was wrong!!!
+All, all right ...! You want the money? Take it ...! Take all of it! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-05.html new file mode 100644 index 0000000000..6767856ae9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-05.html @@ -0,0 +1,3 @@ +Perrin:
+I do not have anything. You may even search me ... But I really don't have anything ... Please believe me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-06.html new file mode 100644 index 0000000000..fc1d07110b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/30428-06.html @@ -0,0 +1,3 @@ +Perrin:
+Go tell that gal that she will be severely punished if she doesn't listen to Perrin's words! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/Q00409_PathOfTheElvenOracle.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/Q00409_PathOfTheElvenOracle.java new file mode 100644 index 0000000000..f7a478b6b1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00409_PathOfTheElvenOracle/Q00409_PathOfTheElvenOracle.java @@ -0,0 +1,402 @@ +/* + * 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.Q00409_PathOfTheElvenOracle; + +import com.l2jmobius.gameserver.enums.ChatType; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.NpcStringId; +import com.l2jmobius.gameserver.network.serverpackets.NpcSay; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path of the Elven Oracle (409) + * @author ivantotov + */ +public final class Q00409_PathOfTheElvenOracle extends Quest +{ + // NPCs + private static final int PRIEST_MANUEL = 30293; + private static final int ALLANA = 30424; + private static final int PERRIN = 30428; + // Items + private static final int CRYSTAL_MEDALLION = 1231; + private static final int SWINDLERS_MONEY = 1232; + private static final int ALLANA_OF_DAIRY = 1233; + private static final int LIZARD_CAPTAIN_ORDER = 1234; + private static final int HALF_OF_DAIRY = 1236; + private static final int TAMIL_NECKLACE = 1275; + // Reward + private static final int LEAF_OF_ORACLE = 1235; + // Misc + private static final int MIN_LEVEL = 18; + // Quest Monster + private static final int lIZARDMAN_WARRIOR = 27032; + private static final int LIZARDMAN_SCOUT = 27033; + private static final int LIZARDMAN_SOLDIER = 27034; + private static final int TAMIL = 27035; + + public Q00409_PathOfTheElvenOracle() + { + super(409); + addStartNpc(PRIEST_MANUEL); + addTalkId(PRIEST_MANUEL, ALLANA, PERRIN); + addKillId(TAMIL, lIZARDMAN_WARRIOR, LIZARDMAN_SCOUT, LIZARDMAN_SOLDIER); + addAttackId(TAMIL, lIZARDMAN_WARRIOR, LIZARDMAN_SCOUT, LIZARDMAN_SOLDIER); + registerQuestItems(CRYSTAL_MEDALLION, SWINDLERS_MONEY, ALLANA_OF_DAIRY, LIZARD_CAPTAIN_ORDER, HALF_OF_DAIRY, TAMIL_NECKLACE); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() == ClassId.ELVEN_MAGE) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (hasQuestItems(player, LEAF_OF_ORACLE)) + { + htmltext = "30293-04.htm"; + } + else + { + qs.startQuest(); + qs.setMemoState(1); + giveItems(player, CRYSTAL_MEDALLION, 1); + htmltext = "30293-05.htm"; + } + } + else + { + htmltext = "30293-03.htm"; + } + } + else if (player.getClassId() == ClassId.ORACLE) + { + htmltext = "30293-02a.htm"; + } + else + { + htmltext = "30293-02.htm"; + } + break; + } + case "30424-08.html": + case "30424-09.html": + { + htmltext = event; + break; + } + case "30424-07.html": + { + if (qs.isMemoState(1)) + { + htmltext = event; + } + break; + } + case "replay_1": + { + qs.setMemoState(2); + addAttackPlayerDesire(addSpawn(lIZARDMAN_WARRIOR, npc, true, 0, false), player); + addAttackPlayerDesire(addSpawn(LIZARDMAN_SCOUT, npc, true, 0, false), player); + addAttackPlayerDesire(addSpawn(LIZARDMAN_SOLDIER, npc, true, 0, false), player); + break; + } + case "30428-02.html": + case "30428-03.html": + { + if (qs.isMemoState(2)) + { + htmltext = event; + } + break; + } + case "replay_2": + { + if (qs.isMemoState(2)) + { + qs.setMemoState(3); + addAttackPlayerDesire(addSpawn(TAMIL, npc, true, 0, true), player); + } + break; + } + } + return htmltext; + } + + @Override + public String onAttack(L2Npc npc, L2PcInstance attacker, int damage, boolean isSummon) + { + if (getQuestState(attacker, false) != null) + { + switch (npc.getScriptValue()) + { + case 0: + { + switch (npc.getId()) + { + case lIZARDMAN_WARRIOR: + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.THE_SACRED_FLAME_IS_OURS)); + break; + } + case LIZARDMAN_SCOUT: + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.THE_SACRED_FLAME_IS_OURS)); + break; + } + case LIZARDMAN_SOLDIER: + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.THE_SACRED_FLAME_IS_OURS)); + break; + } + case TAMIL: + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.AS_YOU_WISH_MASTER)); + break; + } + } + + npc.setScriptValue(1); + npc.getVariables().set("firstAttacker", attacker.getObjectId()); + break; + } + case 1: + { + if (npc.getVariables().getInt("firstAttacker") != attacker.getObjectId()) + { + npc.setScriptValue(2); + } + break; + } + } + } + return super.onAttack(npc, attacker, damage, isSummon); + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && npc.isScriptValue(1) && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case lIZARDMAN_WARRIOR: + { + if (!hasQuestItems(killer, LIZARD_CAPTAIN_ORDER)) + { + npc.broadcastPacket(new NpcSay(npc, ChatType.NPC_GENERAL, NpcStringId.ARRGHH_WE_SHALL_NEVER_SURRENDER)); + giveItems(killer, LIZARD_CAPTAIN_ORDER, 1); + qs.setCond(3, true); + } + break; + } + case LIZARDMAN_SCOUT: + case LIZARDMAN_SOLDIER: + { + if (!hasQuestItems(killer, LIZARD_CAPTAIN_ORDER)) + { + giveItems(killer, LIZARD_CAPTAIN_ORDER, 1); + qs.setCond(3, true); + } + break; + } + case TAMIL: + { + if (!hasQuestItems(killer, TAMIL_NECKLACE)) + { + giveItems(killer, TAMIL_NECKLACE, 1); + qs.setCond(5, true); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == PRIEST_MANUEL) + { + if (!hasQuestItems(player, LEAF_OF_ORACLE)) + { + htmltext = "30293-01.htm"; + } + else + { + htmltext = "30293-04.htm"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case PRIEST_MANUEL: + { + if (hasQuestItems(player, CRYSTAL_MEDALLION)) + { + if (!hasAtLeastOneQuestItem(player, SWINDLERS_MONEY, ALLANA_OF_DAIRY, LIZARD_CAPTAIN_ORDER, HALF_OF_DAIRY)) + { + if (qs.isMemoState(2)) + { + qs.setMemoState(1); + qs.setCond(8); + htmltext = "30293-09.html"; + } + else + { + qs.setMemoState(1); + htmltext = "30293-06.html"; + } + } + else if (hasQuestItems(player, SWINDLERS_MONEY, ALLANA_OF_DAIRY, LIZARD_CAPTAIN_ORDER)) + { + if (!hasQuestItems(player, HALF_OF_DAIRY)) + { + giveAdena(player, 163800, true); + giveItems(player, LEAF_OF_ORACLE, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 20392); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 27090); + } + else + { + addExpAndSp(player, 591724, 33788); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30293-08.html"; + } + } + else + { + htmltext = "30293-07.html"; + } + } + break; + } + case ALLANA: + { + if (hasQuestItems(player, CRYSTAL_MEDALLION)) + { + if (!hasAtLeastOneQuestItem(player, SWINDLERS_MONEY, ALLANA_OF_DAIRY, LIZARD_CAPTAIN_ORDER, HALF_OF_DAIRY)) + { + if (qs.isMemoState(2)) + { + htmltext = "30424-05.html"; + } + else if (qs.isMemoState(1)) + { + qs.setCond(2, true); + htmltext = "30424-01.html"; + } + } + else if (!hasAtLeastOneQuestItem(player, SWINDLERS_MONEY, ALLANA_OF_DAIRY, HALF_OF_DAIRY) && hasQuestItems(player, LIZARD_CAPTAIN_ORDER)) + { + qs.setMemoState(2); + giveItems(player, HALF_OF_DAIRY, 1); + qs.setCond(4, true); + htmltext = "30424-02.html"; + } + else if (!hasAtLeastOneQuestItem(player, SWINDLERS_MONEY, ALLANA_OF_DAIRY) && hasQuestItems(player, LIZARD_CAPTAIN_ORDER, HALF_OF_DAIRY)) + { + if ((qs.isMemoState(3)) && !hasQuestItems(player, TAMIL_NECKLACE)) + { + qs.setMemoState(2); + qs.setCond(4, true); + htmltext = "30424-06.html"; + } + else + { + htmltext = "30424-03.html"; + } + } + else if (hasQuestItems(player, SWINDLERS_MONEY, LIZARD_CAPTAIN_ORDER, HALF_OF_DAIRY) && !hasQuestItems(player, ALLANA_OF_DAIRY)) + { + giveItems(player, ALLANA_OF_DAIRY, 1); + takeItems(player, HALF_OF_DAIRY, 1); + qs.setCond(9, true); + htmltext = "30424-04.html"; + } + else if (hasQuestItems(player, SWINDLERS_MONEY, LIZARD_CAPTAIN_ORDER, ALLANA_OF_DAIRY)) + { + qs.setCond(7, true); + htmltext = "30424-05.html"; + } + } + break; + } + case PERRIN: + { + if (hasQuestItems(player, CRYSTAL_MEDALLION, LIZARD_CAPTAIN_ORDER, HALF_OF_DAIRY)) + { + if (hasQuestItems(player, TAMIL_NECKLACE)) + { + giveItems(player, SWINDLERS_MONEY, 1); + takeItems(player, TAMIL_NECKLACE, 1); + qs.setCond(6, true); + htmltext = "30428-04.html"; + } + else if (hasQuestItems(player, SWINDLERS_MONEY)) + { + htmltext = "30428-05.html"; + } + else if (qs.isMemoState(3)) + { + htmltext = "30428-06.html"; + } + else + { + htmltext = "30428-01.html"; + } + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-01.htm new file mode 100644 index 0000000000..46ffc91fbe --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-01.htm @@ -0,0 +1,4 @@ +Master Virgil:
+The Palus Knights are the most skilled knights of the Dark Elves and conquer the battlefield with their fearless spirit and great talent. Only Dark Fighters who pass the trial that I give and secure the Gaze of Abyss will earn the qualifications to be selected as Palus Knights.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-02.htm new file mode 100644 index 0000000000..7ba80f2b72 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-02.htm @@ -0,0 +1,4 @@ +Master Virgil:
+I still see fear and hesitation in your eyes. You must learn to control your emotions through more experience on the battlefield -- once you have done so, come and see me again.
+(Only characters level 18 or above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-02a.htm new file mode 100644 index 0000000000..137a32b49d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-02a.htm @@ -0,0 +1,3 @@ +Master Virgil:
+You have already overcome fear and hesitation and acquired the title of Palus Knight. Now go on to the battlefield and teach the world to fear of our race. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-03.htm new file mode 100644 index 0000000000..22058388f1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-03.htm @@ -0,0 +1,3 @@ +Master Virgil:
+Palus Knights are selected from the ranks of Dark Fighters. You are not qualified. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-04.htm new file mode 100644 index 0000000000..f17d139d26 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-04.htm @@ -0,0 +1,3 @@ +Master Virgil:
+You already have the Gaze of Abyss. This means you have earned the right to become a Palus Knight. Take that token to Grand Master Tobias of our guild. Then you can change profession to a Palus Knight. He is the one right over there. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-05.htm new file mode 100644 index 0000000000..6f3e16fdd0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-05.htm @@ -0,0 +1,4 @@ +Master Virgil:
+Good. To become a Palus Knight, you must pass two trials in order. These trials test your skills and are also a rite of passage to become a true "Abyssal Knight."
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-06.htm new file mode 100644 index 0000000000..9ac41edaf5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-06.htm @@ -0,0 +1,5 @@ +Master Virgil:
+Before you receive the trial, take this talisman. Those who follow Shilen will see it and know that you are a fighter performing a task. The first trial is the ritual of 13 skulls. Its object is to collect 13 enemy skulls killed by your own hand. It is a ritual to meditate upon the death that the Knight brings with his sword. Throw out all private emotions and perform the task with a solemn heart. Do not forget that Shilen will be watching over your path.
+I will tell you about the enemy you must kill in this ritual. If you travel on the road that heads north of the village, you will come to the Neutral Zone. It is an area where combat is forbidden, according to agreement, because it is the boundary area between the two Elven tribes. There are creatures gathering their strength in the Neutral Zone, and taking advantage of the situation because Elven soldiers cannot enter.
+These creatures are the lycanthrope -- half-Human, half-animal. They are slowly getting stronger in the Neutral Zone, and are even setting their sights on the Elves' home. Dispose of these lycanthropes in the name of Shilen, and collect exactly 13 of their skulls and bring them to me. This is the end of my explanation. Now you should go. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-07.html new file mode 100644 index 0000000000..3d1bc4574a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-07.html @@ -0,0 +1,4 @@ +Master Virgil:
+How does it happen that you have not departed yet? Is fear or hesitation keeping you here? If that is so, I will have to reconsider your qualifications for becoming a Palus Knight.
+Hurry on to the Neutral Zone and kill the lycanthropes and bring thirteen of their skulls. Only then can you fulfill the custom. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-08.html new file mode 100644 index 0000000000..2a841dcb00 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-08.html @@ -0,0 +1,4 @@ +Master Virgil:
+You must have exactly 13 skulls to complete the ritual. Thirteen is a holy number to we Dark Elves that follow Shilen, for it symbolizes death and rebirth.
+Go back to the Neutral Zone and strike down the lycanthropes ... Come back when you have 13 skulls. Only then can the ritual be completed. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-09.html new file mode 100644 index 0000000000..1e787d2e25 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-09.html @@ -0,0 +1,6 @@ +Master Virgil:
+Thank you. Thirteen skulls brought from dealing with the enemy of our race ... They are the result of death brought about from your own hands. Knights of other races embellish their actions and duties by saying that they are "guarding justice" or "protecting the common people." However, the knights of the dark do not forget the essence of knighthood through hiding behind fancy words or moral obligations. A knight is one that brings death. The victory he achieves with his sword means his opponent's death.
+No matter what the goal or motive, all combat between knights ends in death. Just because you shout "honor" or "justice" doesn't change what it means to kill. Death is death. You have stolen your opponent's opportunity to live.
+Do not forget the fact that you are the "one who brings death."
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-10.html new file mode 100644 index 0000000000..ae0cf64119 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-10.html @@ -0,0 +1,4 @@ +Master Virgil:
+You need your own coffin to perform the second trial, the Ritual of the Red Coffin. Yes, I'm speaking of the coffin you use to bury an elf when he dies. According to the funeral customs of the Dark Elves, we need a traditional coffin made from the carapace of a beast. You must make this yourself.
+You should ask Abyssal Celebrant Kalinta how to make a coffin. You can meet her if you go to the Dark Elf Guild of the village of Gludin. You must take this letter with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-11.html new file mode 100644 index 0000000000..8558b3a82b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-11.html @@ -0,0 +1,5 @@ +Master Virgil:
+You have brought the Coffin of Eternal Rest with your name inscribed within it. I will send this to the Priests of the Shilen Temple. This completes your trial.
+A Knight's destiny is always to face death on the battlefield! We do not know when it will come, but it is an end we cannot escape. By entrusting the Coffin of Eternal Rest made by your own hands to the Celebrants of your funeral, you are accepting death as your fate and laying down all fear. This is what the ritual of the red coffin is for.
+Palus Knights do not fear death, and so they do not hesitate or stand back. They are the strongest Knights, that have already seen the darkness of the abyss and know not fear nor hesitation. Since you passed both trials, you have the ability to enter the glorious ranks. This Gaze of Abyss is the token you have earned. If you take this to Grand Master Tobias of our guild, he will change your occupation. He is the one right over there. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-12.html new file mode 100644 index 0000000000..1123727023 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30329-12.html @@ -0,0 +1,3 @@ +Master Virgil:
+Go to Abyssal Celebrant Kalinta and ask about the Ritual of the Red Coffin. You can meet her if you go to the Dark Elf Guild of Gludin. Make sure you take the letter I gave you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-01.html new file mode 100644 index 0000000000..def8318ee6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-01.html @@ -0,0 +1,5 @@ +Kalinta:
+I welcome you in the name of Shilen, child of darkness. So you are a Palus Knight in training who received the Trial of the Red Coffin from Master Virgil.
+To complete the trial, you must make your own Coffin of Eternal Rest. This is not the crude wooden coffin, made by humans to bury their corpses in the backyard of their temples. This is a traditional Dark Elf coffin made with the carapace of a beast and the silk threads of a spider. The materials needed to make this coffin are all very rare, and the process of searching for the materials itself is a part of the trial. Therefore, you must find the materials yourself.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-02.html new file mode 100644 index 0000000000..8115bb2824 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-02.html @@ -0,0 +1,5 @@ +Kalinta:
+Making the coffin is part of the test. Therefore, you must find all the materials yourself. To make the body of the coffin, you must obtain a solid carapace of a giant poison spider. To fasten the coffin together you must gather five silk spider thread skeins that are produced by arachnid trackers. When you have gathered all the materials, bring them to me.
+Giant poison spiders and arachnid trackers can be found in the Windmill Hill area in the southern part of Gludin Village or at the Fellmere Harvesting Grounds over the northern valley.
+Take this talisman with you. The followers of Shilen will recognize it and know that you are performing the Trial of the Red Coffin. May the divine protection of the abyss be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-03.html new file mode 100644 index 0000000000..3d6aef3c6f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-03.html @@ -0,0 +1,5 @@ +Kalinta:
+Still here, eh? Caution is a virtue, but a true knight knows that he must fulfill his commitments in a timely fashion.
+As you know, you must gather five Arachnid Tracker Silk skeins and one carapace of a giant poison spider to create a Coffin of Eternal Rest.
+Giant poison spiders and arachnid trackers can be found in the Windmill Hill area in the southern part of Gludin Village or at the Fellmere Harvesting Grounds over the northern valley. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-04.html new file mode 100644 index 0000000000..8419b22e9e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-04.html @@ -0,0 +1,3 @@ +Kalinta:
+I see you have not gathered all the materials yet. As I already told you, you must have five Arachnid Tracker Silk skeins and one large poison spider carapace to complete the Coffin of Eternal Rest. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-05.html new file mode 100644 index 0000000000..481e718be3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-05.html @@ -0,0 +1,5 @@ +Kalinta:
+Thank you. I will make you a Coffin of Eternal Rest with these materials. All living things must end their lives someday and return to the arms of Shilen. Someday, you will also cross the river never to return. Then your corpse will be put in this coffin and buried in the soul well.
+Here, the coffin is finished. However, while the form is complete, it is not yet fully yours. To make this coffin yours, you must sign your name here in the place where your head will rest.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-06.html new file mode 100644 index 0000000000..560da50664 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/30422-06.html @@ -0,0 +1,4 @@ +Kalinta:
+Now you are the true owner of this Coffin of Eternal Rest. The last part of the trial is to carry this coffin and go back to the one who first gave you the trial. Go to Master Virgil in the Town of Gludio and give him your coffin.
+I hope you will safely complete your trial and be reborn as a Knight of the deep lake. May the protection of Shilen be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/Q00410_PathOfThePalusKnight.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/Q00410_PathOfThePalusKnight.java new file mode 100644 index 0000000000..342d6fca1f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00410_PathOfThePalusKnight/Q00410_PathOfThePalusKnight.java @@ -0,0 +1,308 @@ +/* + * 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.Q00410_PathOfThePalusKnight; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path Of The Palus Knight (410) + * @author ivantotov + */ +public final class Q00410_PathOfThePalusKnight extends Quest +{ + // NPCs + private static final int MASTER_VIRGIL = 30329; + private static final int KALINTA = 30422; + // Items + private static final int PALLUS_TALISMAN = 1237; + private static final int LYCANTHROPE_SKULL = 1238; + private static final int VIRGILS_LETTER = 1239; + private static final int MORTE_TALISMAN = 1240; + private static final int VENOMOUS_SPIDERS_CARAPACE = 1241; + private static final int ARACHNID_TRACKER_SILK = 1242; + private static final int COFFIN_OF_ETERNAL_REST = 1243; + // Reward + private static final int GAZE_OF_ABYSS = 1244; + // Monster + private static final int VENOMOUS_SPIDER = 20038; + private static final int ARACHNID_TRACKER = 20043; + private static final int LYCANTHROPE = 20049; + // Misc + private static final int MIN_LEVEL = 18; + + public Q00410_PathOfThePalusKnight() + { + super(410); + addStartNpc(MASTER_VIRGIL); + addTalkId(MASTER_VIRGIL, KALINTA); + addKillId(VENOMOUS_SPIDER, ARACHNID_TRACKER, LYCANTHROPE); + registerQuestItems(PALLUS_TALISMAN, LYCANTHROPE_SKULL, VIRGILS_LETTER, MORTE_TALISMAN, VENOMOUS_SPIDERS_CARAPACE, ARACHNID_TRACKER_SILK, COFFIN_OF_ETERNAL_REST); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() == ClassId.DARK_FIGHTER) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (hasQuestItems(player, GAZE_OF_ABYSS)) + { + htmltext = "30329-04.htm"; + } + else + { + htmltext = "30329-05.htm"; + } + } + else + { + htmltext = "30329-02.htm"; + } + } + else if (player.getClassId() == ClassId.PALUS_KNIGHT) + { + htmltext = "30329-02a.htm"; + } + else + { + htmltext = "30329-03.htm"; + } + break; + } + case "30329-06.htm": + { + qs.startQuest(); + giveItems(player, PALLUS_TALISMAN, 1); + htmltext = event; + break; + } + case "30329-10.html": + { + if (hasQuestItems(player, PALLUS_TALISMAN, LYCANTHROPE_SKULL)) + { + takeItems(player, PALLUS_TALISMAN, 1); + takeItems(player, LYCANTHROPE_SKULL, -1); + giveItems(player, VIRGILS_LETTER, 1); + qs.setCond(3, true); + htmltext = event; + } + break; + } + case "30422-02.html": + { + if (hasQuestItems(player, VIRGILS_LETTER)) + { + takeItems(player, VIRGILS_LETTER, 1); + giveItems(player, MORTE_TALISMAN, 1); + qs.setCond(4, true); + htmltext = event; + } + break; + } + case "30422-06.html": + { + if (hasQuestItems(player, MORTE_TALISMAN, ARACHNID_TRACKER_SILK, VENOMOUS_SPIDERS_CARAPACE)) + { + takeItems(player, MORTE_TALISMAN, 1); + takeItems(player, VENOMOUS_SPIDERS_CARAPACE, 1); + takeItems(player, ARACHNID_TRACKER_SILK, -1); + giveItems(player, COFFIN_OF_ETERNAL_REST, 1); + qs.setCond(6, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case VENOMOUS_SPIDER: + { + if (hasQuestItems(killer, MORTE_TALISMAN) && (getQuestItemsCount(killer, VENOMOUS_SPIDERS_CARAPACE) < 1)) + { + giveItems(killer, VENOMOUS_SPIDERS_CARAPACE, 1); + if (getQuestItemsCount(killer, ARACHNID_TRACKER_SILK) >= 5) + { + qs.setCond(5, true); + } + } + break; + } + case ARACHNID_TRACKER: + { + if (hasQuestItems(killer, MORTE_TALISMAN) && (getQuestItemsCount(killer, ARACHNID_TRACKER_SILK) < 5)) + { + giveItems(killer, ARACHNID_TRACKER_SILK, 1); + if (getQuestItemsCount(killer, ARACHNID_TRACKER_SILK) == 5) + { + if ((getQuestItemsCount(killer, ARACHNID_TRACKER_SILK) >= 4) && hasQuestItems(killer, VENOMOUS_SPIDERS_CARAPACE)) + { + qs.setCond(5, true); + } + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case LYCANTHROPE: + { + if (hasQuestItems(killer, PALLUS_TALISMAN) && (getQuestItemsCount(killer, LYCANTHROPE_SKULL) < 13)) + { + giveItems(killer, LYCANTHROPE_SKULL, 1); + if (getQuestItemsCount(killer, LYCANTHROPE_SKULL) == 13) + { + qs.setCond(2, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == MASTER_VIRGIL) + { + htmltext = "30329-01.htm"; + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case MASTER_VIRGIL: + { + if (hasQuestItems(player, PALLUS_TALISMAN)) + { + if (!hasQuestItems(player, LYCANTHROPE_SKULL)) + { + htmltext = "30329-07.html"; + } + else if (hasQuestItems(player, LYCANTHROPE_SKULL) && (getQuestItemsCount(player, LYCANTHROPE_SKULL) < 13)) + { + htmltext = "30329-08.html"; + } + else + { + htmltext = "30329-09.html"; + } + } + else if (hasQuestItems(player, COFFIN_OF_ETERNAL_REST)) + { + giveAdena(player, 163800, true); + giveItems(player, GAZE_OF_ABYSS, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 26212); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 32910); + } + else + { + addExpAndSp(player, 591724, 39608); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30329-11.html"; + } + else if (hasAtLeastOneQuestItem(player, VIRGILS_LETTER, MORTE_TALISMAN)) + { + htmltext = "30329-12.html"; + } + break; + } + case KALINTA: + { + if (hasQuestItems(player, VIRGILS_LETTER)) + { + htmltext = "30422-01.html"; + } + else if (hasQuestItems(player, MORTE_TALISMAN)) + { + if (!hasQuestItems(player, ARACHNID_TRACKER_SILK, VENOMOUS_SPIDERS_CARAPACE)) + { + htmltext = "30422-03.html"; + } + else if (!hasQuestItems(player, ARACHNID_TRACKER_SILK) && hasQuestItems(player, VENOMOUS_SPIDERS_CARAPACE)) + { + htmltext = "30422-04.html"; + } + else if ((getQuestItemsCount(player, ARACHNID_TRACKER_SILK) >= 5) && hasQuestItems(player, VENOMOUS_SPIDERS_CARAPACE)) + { + htmltext = "30422-05.html"; + } + else if (hasQuestItems(player, ARACHNID_TRACKER_SILK, VENOMOUS_SPIDERS_CARAPACE)) + { + htmltext = "30422-04.html"; + } + } + else if (hasQuestItems(player, COFFIN_OF_ETERNAL_REST)) + { + htmltext = "30422-06.html"; + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-01.html new file mode 100644 index 0000000000..68156662af --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-01.html @@ -0,0 +1,4 @@ +Guard Leikan:
+Ha ha! Welcome. So Arkenia sent you. What can your humble servant do for you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-02.html new file mode 100644 index 0000000000..5fedc6781d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-02.html @@ -0,0 +1,6 @@ +Guard Leikan:
+The thieves that stole your race's treasures? Ah ... I do know roughly where they live, but ... I could tell you, but there is one condition. If you accept one request, I will give you information on the thieves.
+Please don't think I am stingy. A man must do something to survive. Nothing is free in this world. There is an ancient saying that you go bald if you take things for free. Ha ha ha ...
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-03.html new file mode 100644 index 0000000000..8fd08aadf3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-03.html @@ -0,0 +1,5 @@ +Guard Leikan:
+Actually, I recently boasted to my colleagues that I was attacked by Moonstone beasts while returning from the Dark Forest, and that I killed several. My colleagues didn't believe me and asked to see proof. This put me in a rather ... awkward position.
+So you see, I need ten Moonstone beast molars. Please get some for me. You can easily find Moonstone beasts north of here in the Neutral Zone.
+Take this memo. It is a simple Contract stating our agreement. Remember, you must bring back ten Moonstone beast molars and then I will give you information. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-04.html new file mode 100644 index 0000000000..2b4c2ea370 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-04.html @@ -0,0 +1,3 @@ +Guard Leikan:
+If you don't want to grant my request, I cannot give you information on the thieves. I don't do business that doesn't earn a reasonable profit. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-05.html new file mode 100644 index 0000000000..f40771a7d2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-05.html @@ -0,0 +1,3 @@ +Guard Leikan:
+If you want to hear my information about the thieves, then quickly go to the Neutral Zone and find me ten Moonstone beast molars. Now, hurry up please! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-06.html new file mode 100644 index 0000000000..6aff893e01 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-06.html @@ -0,0 +1,3 @@ +Guard Leikan:
+Look now, I clearly remember saying ten. Maybe you need to review your fundamental math skills? More is acknowledged but less is not. Hurry and go find the remaining molars. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-07.html new file mode 100644 index 0000000000..6a3f0b4add --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-07.html @@ -0,0 +1,5 @@ +Guard Leikan:
+Oh, great! Thank you for your trouble. Now I will tell you about the thieves.
+The ringleader is an Orc named Calpico. The fellow is very elusive, so you never know when he will show up or where, but a few days ago a report said that he was seen near the School of Dark Arts in the Dark Forest. If you search in the vicinity of the School of Dark Arts, you will be able to find the scoundrel's hiding place.
+I don't know why Calpico would steal holy articles from the Dark Elves ... I'm sure there is someone else behind it, don't you think? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-08.html new file mode 100644 index 0000000000..650eb63757 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-08.html @@ -0,0 +1,4 @@ +Guard Leikan:
+You have recovered Shilen's Tears. How could someone take such little care of such a valuable holy relic ... Tsk tsk ...
+If you take that to Arkenia, she will be pleased. Give her my regards! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-09.html new file mode 100644 index 0000000000..71e88231cf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30382-09.html @@ -0,0 +1,3 @@ +Guard Leikan:
+As I told you, the thief's identity is an Orc named Calpico. The fellow is very elusive, so you never know when he will show up or where, but a few days ago a report said that he was seen near the School of Dark Arts in the Dark Forest. If you search in the vicinity of the School of Dark Arts, you will be able to find the scoundrel's hiding place. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-01.htm new file mode 100644 index 0000000000..3be6272275 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-01.htm @@ -0,0 +1,4 @@ +Triskel:
+Assassins are murderers who kill quietly and swiftly, then vanish into the forest. They are also fighters of darkness who are talented in concealment and spying. They target the enemy's weak points with small but convenient weapons like daggers, or shoot arrows from a long distance.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-02.htm new file mode 100644 index 0000000000..9c81040aa2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-02.htm @@ -0,0 +1,3 @@ +Triskel:
+Triskel does not speak with foolish fellows who do not know their profession! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-02a.htm new file mode 100644 index 0000000000..526cba3bdd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-02a.htm @@ -0,0 +1,3 @@ +Triskel:
+Why would one who is already an Assassin want to become an Assassin again? Triskel does not speak with foolish fellows that do not know their profession! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-03.htm new file mode 100644 index 0000000000..38d27fea3f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-03.htm @@ -0,0 +1,4 @@ +Triskel:
+Hey, you little punk...you want to be an assassin? Go home to your mother!
+(Only characters level 18 and above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-04.htm new file mode 100644 index 0000000000..a346e023ed --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-04.htm @@ -0,0 +1,3 @@ +Triskel:
+You already have the Iron Heart! You already have the qualifications to become an Assassin! Take the Iron Heart and go to Grand Master Tobias of the Dark Elf Guild to change profession! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-05.htm new file mode 100644 index 0000000000..06ae3c4100 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-05.htm @@ -0,0 +1,4 @@ +Triskel:
+Hmm ... So the likes of you wants to change profession to an Assassin? Good. As luck would have it, I was just now in need of a nimble fellow. You must know that the foundation of an Assassin is quick movements! Use this opportunity to prove your skills to me! Now take this and go to Arkenia at the Dark Elf Altar of Rites.
+You don't know how to get to the Altar of Rites? Wretched fellow! Go out the east gate of the village and run to the north! Then you will reach the Neutral Zone. There is a bridge to the west that connects to the Dark Forest. After you cross the bridge, follow the road west until you reach the altar. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-06.html new file mode 100644 index 0000000000..18695b3328 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-06.html @@ -0,0 +1,4 @@ +Triskel:
+O ho, your skills are quite good! So, you received the acknowledgement of Arkenia. Indeed, I have keen insight when it comes to seeing potential.
+Now take this Iron Heart and go to a Grand Master of the Dark Elf Guild, who will give you what you want. The nearest choice would be to go to Grand Master Tobias of our village's Dark Elf Guild. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-07.html new file mode 100644 index 0000000000..c1b24a564a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-07.html @@ -0,0 +1,3 @@ +Triskel:
+Wretched fellow! Don't keep Arkenia waiting! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-08.html new file mode 100644 index 0000000000..5dc187d16c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-08.html @@ -0,0 +1,3 @@ +Triskel:
+You are truly pitiful! Don't mope, run quickly! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-09.html new file mode 100644 index 0000000000..3587302dff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-09.html @@ -0,0 +1,3 @@ +Triskel:
+You really irritate me. You wretched creature! Why are you still lingering in the village when you know who the thief is? Quickly run to the School of Dark Arts and catch that thief! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-10.html new file mode 100644 index 0000000000..57c894ab1a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-10.html @@ -0,0 +1,3 @@ +Triskel:
+Ha ha ha ... Finally you have solved the case. I knew you could do it. What are you waiting for? Go give this joyful news to Arkenia in the temple! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-11.html new file mode 100644 index 0000000000..3213ebf6b2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30416-11.html @@ -0,0 +1,3 @@ +Triskel:
+You fool! Pick up your heels and run to Arkenia at the Altar of Rites as fast as your legs can take you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-01.html new file mode 100644 index 0000000000..6a94c75c28 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-01.html @@ -0,0 +1,5 @@ +Arkenia:
+Are you the one that has come to help me?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-02.html new file mode 100644 index 0000000000..8c50ee134c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-02.html @@ -0,0 +1,7 @@ +Arkenia:
+I was waiting for you. Thank you for coming. It seems, one of our holy relics, Shilen's Tears was recently stolen. I was on my way back from a pilgrimage in the north when I was attacked by a band of thieves...
+I am afraid the tetrarchs will be furious, and I have not been able to return to the village for fear of them. They will not forgive me if they know that the holy relic was stolen. Please recover the stolen Shilen's Tears before the tetrarchs find out. Please help me...
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-03.html new file mode 100644 index 0000000000..b042e8de1b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-03.html @@ -0,0 +1,3 @@ +Arkenia:
+You are not the one I was waiting for. I mistook you for someone else. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-04.html new file mode 100644 index 0000000000..1acb1d93dd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-04.html @@ -0,0 +1,6 @@ +Arkenia:
+How can you be of our race and not know about Shilen's Tears? How could that be?
+When the solar eclipse occurs every thirty years, we Dark Elves perform sacrificial rites to the goddess Shilen, praying for abundance and prosperity. At that time each year, red dew drops form mysteriously on the pillars of the temple. We call that dew Shilen's Tears. Shilen's Tears are normally red, but when a threat to our race looms, they turn black. The tears are precious, for the whole fate of our race is tied to them.
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-05.html new file mode 100644 index 0000000000..6f76206866 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-05.html @@ -0,0 +1,4 @@ +Arkenia:
+Thank you. I have asked about the whereabouts of the thieves and have some intelligence. The most reliable information is kept by a Human by the name of Leikan. He works as a guard in the village of Gludin.
+It seems that the Human Traders of his village have been robbed many times by those thieves as well. I heard that Leikan is investigating the thieves. Take this letter and go to him. Please hurry. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-06.html new file mode 100644 index 0000000000..867171de40 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-06.html @@ -0,0 +1,3 @@ +Arkenia:
+I understand. I suppose I will have to find someone else... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-07.html new file mode 100644 index 0000000000..a121fdadb6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-07.html @@ -0,0 +1,3 @@ +Arkenia:
+Please, I beg you. Please hurry. When the tetrarchs find out... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-08.html new file mode 100644 index 0000000000..cd39d732f7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-08.html @@ -0,0 +1,3 @@ +Arkenia:
+Ah, you have finally found Shilen's Tears. Thank you. I truly thank you. In return, I will write you a Recommendation to become an Assassin. Show this to Triskel in the village of Gludio Castle. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-09.html new file mode 100644 index 0000000000..35883d798b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-09.html @@ -0,0 +1,3 @@ +Arkenia:
+Take the Recommendation I wrote you, and go to Triskel in the village of Gludio Castle. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-10.html new file mode 100644 index 0000000000..8a5c899848 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-10.html @@ -0,0 +1,3 @@ +Arkenia:
+I beg you. Please hurry. I think the tetrarchs and other priests have found out. I beg you, hurry! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-11.html new file mode 100644 index 0000000000..f0156573e7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/30419-11.html @@ -0,0 +1,3 @@ +Arkenia:
+Finally, you have found the thieves' whereabouts! Please keep going, just a little longer. I beg you... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/Q00411_PathOfTheAssassin.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/Q00411_PathOfTheAssassin.java new file mode 100644 index 0000000000..198ba44ef0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00411_PathOfTheAssassin/Q00411_PathOfTheAssassin.java @@ -0,0 +1,323 @@ +/* + * 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.Q00411_PathOfTheAssassin; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path Of The Assassin (411) + * @author ivantotov + */ +public final class Q00411_PathOfTheAssassin extends Quest +{ + // NPCs + private static final int TRISKEL = 30416; + private static final int GUARD_LEIKAN = 30382; + private static final int ARKENIA = 30419; + // Items + private static final int SHILENS_CALL = 1245; + private static final int ARKENIAS_LETTER = 1246; + private static final int LEIKANS_NOTE = 1247; + private static final int MOONSTONE_BEASTS_MOLAR = 1248; + private static final int SHILENS_TEARS = 1250; + private static final int ARKENIAS_RECOMMENDATION = 1251; + // Reward + private static final int IRON_HEART = 1252; + // Monster + private static final int MOONSTONE_BEAST = 20369; + // Quest Monster + private static final int CALPICO = 27036; + // Misc + private static final int MIN_LEVEL = 18; + + public Q00411_PathOfTheAssassin() + { + super(411); + addStartNpc(TRISKEL); + addTalkId(TRISKEL, GUARD_LEIKAN, ARKENIA); + addKillId(MOONSTONE_BEAST, CALPICO); + registerQuestItems(SHILENS_CALL, ARKENIAS_LETTER, LEIKANS_NOTE, MOONSTONE_BEASTS_MOLAR, SHILENS_TEARS, ARKENIAS_RECOMMENDATION); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() == ClassId.DARK_FIGHTER) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (hasQuestItems(player, IRON_HEART)) + { + htmltext = "30416-04.htm"; + } + else + { + qs.startQuest(); + giveItems(player, SHILENS_CALL, 1); + htmltext = "30416-05.htm"; + } + } + else + { + htmltext = "30416-03.htm"; + } + } + else if (player.getClassId() == ClassId.ASSASSIN) + { + htmltext = "30416-02a.htm"; + } + else + { + htmltext = "30416-02.htm"; + } + break; + } + case "30382-02.html": + case "30382-04.html": + { + htmltext = event; + break; + } + case "30382-03.html": + { + if (hasQuestItems(player, ARKENIAS_LETTER)) + { + takeItems(player, ARKENIAS_LETTER, 1); + giveItems(player, LEIKANS_NOTE, 1); + qs.setCond(3, true); + htmltext = event; + } + break; + } + case "30419-02.html": + case "30419-03.html": + case "30419-04.html": + case "30419-06.html": + { + htmltext = event; + break; + } + case "30419-05.html": + { + if (hasQuestItems(player, SHILENS_CALL)) + { + takeItems(player, SHILENS_CALL, 1); + giveItems(player, ARKENIAS_LETTER, 1); + qs.setCond(2, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case MOONSTONE_BEAST: + { + if (hasQuestItems(killer, LEIKANS_NOTE) && (getQuestItemsCount(killer, MOONSTONE_BEASTS_MOLAR) < 10)) + { + giveItems(killer, MOONSTONE_BEASTS_MOLAR, 1); + if (getQuestItemsCount(killer, MOONSTONE_BEASTS_MOLAR) == 10) + { + qs.setCond(4, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case CALPICO: + { + if (!hasQuestItems(killer, SHILENS_TEARS)) + { + giveItems(killer, SHILENS_TEARS, 1); + qs.setCond(6, true); + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == TRISKEL) + { + if (!hasQuestItems(player, IRON_HEART)) + { + htmltext = "30416-01.htm"; + } + else + { + htmltext = "30416-04.htm"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case TRISKEL: + { + if (!hasAtLeastOneQuestItem(player, ARKENIAS_LETTER, LEIKANS_NOTE, SHILENS_TEARS, IRON_HEART) && hasQuestItems(player, ARKENIAS_RECOMMENDATION)) + { + giveAdena(player, 163800, true); + giveItems(player, IRON_HEART, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 35830); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 35830); + } + else + { + addExpAndSp(player, 591724, 42528); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30416-06.html"; + } + else if (!hasAtLeastOneQuestItem(player, LEIKANS_NOTE, SHILENS_TEARS, ARKENIAS_RECOMMENDATION, IRON_HEART, SHILENS_CALL) && hasQuestItems(player, ARKENIAS_LETTER)) + { + htmltext = "30416-07.html"; + } + else if (!hasAtLeastOneQuestItem(player, ARKENIAS_LETTER, SHILENS_TEARS, ARKENIAS_RECOMMENDATION, IRON_HEART, SHILENS_CALL) && hasQuestItems(player, LEIKANS_NOTE)) + { + htmltext = "30416-08.html"; + } + else if (!hasAtLeastOneQuestItem(player, ARKENIAS_LETTER, LEIKANS_NOTE, SHILENS_TEARS, ARKENIAS_RECOMMENDATION, IRON_HEART, SHILENS_CALL)) + { + htmltext = "30416-09.html"; + } + else if (!hasAtLeastOneQuestItem(player, ARKENIAS_LETTER, LEIKANS_NOTE, ARKENIAS_RECOMMENDATION, IRON_HEART, SHILENS_CALL) && hasQuestItems(player, SHILENS_TEARS)) + { + htmltext = "30416-10.html"; + } + else if (!hasAtLeastOneQuestItem(player, ARKENIAS_LETTER, LEIKANS_NOTE, SHILENS_TEARS, ARKENIAS_RECOMMENDATION, IRON_HEART) && hasQuestItems(player, SHILENS_CALL)) + { + htmltext = "30416-11.html"; + } + break; + } + case GUARD_LEIKAN: + { + if (!hasAtLeastOneQuestItem(player, LEIKANS_NOTE, SHILENS_TEARS, ARKENIAS_RECOMMENDATION, IRON_HEART, SHILENS_CALL, MOONSTONE_BEASTS_MOLAR) && hasQuestItems(player, ARKENIAS_LETTER)) + { + htmltext = "30382-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, ARKENIAS_LETTER, SHILENS_TEARS, ARKENIAS_RECOMMENDATION, IRON_HEART, SHILENS_CALL, MOONSTONE_BEASTS_MOLAR) && hasQuestItems(player, LEIKANS_NOTE)) + { + htmltext = "30382-05.html"; + } + else if (!hasAtLeastOneQuestItem(player, ARKENIAS_LETTER, SHILENS_TEARS, ARKENIAS_RECOMMENDATION, IRON_HEART, SHILENS_CALL) && hasQuestItems(player, LEIKANS_NOTE)) + { + if (hasQuestItems(player, MOONSTONE_BEASTS_MOLAR) && (getQuestItemsCount(player, MOONSTONE_BEASTS_MOLAR) < 10)) + { + htmltext = "30382-06.html"; + } + else + { + takeItems(player, LEIKANS_NOTE, 1); + takeItems(player, MOONSTONE_BEASTS_MOLAR, -1); + qs.setCond(5, true); + htmltext = "30382-07.html"; + } + } + else if (hasQuestItems(player, SHILENS_TEARS)) + { + htmltext = "30382-08.html"; + } + else if (!hasAtLeastOneQuestItem(player, ARKENIAS_LETTER, LEIKANS_NOTE, SHILENS_TEARS, ARKENIAS_RECOMMENDATION, IRON_HEART, SHILENS_CALL, MOONSTONE_BEASTS_MOLAR)) + { + htmltext = "30382-09.html"; + } + break; + } + case ARKENIA: + { + if (!hasAtLeastOneQuestItem(player, ARKENIAS_LETTER, LEIKANS_NOTE, SHILENS_TEARS, ARKENIAS_RECOMMENDATION, IRON_HEART) && hasQuestItems(player, SHILENS_CALL)) + { + htmltext = "30419-01.html"; + } + else if (!hasAtLeastOneQuestItem(player, LEIKANS_NOTE, SHILENS_TEARS, ARKENIAS_RECOMMENDATION, IRON_HEART, SHILENS_CALL) && hasQuestItems(player, ARKENIAS_LETTER)) + { + htmltext = "30419-07.html"; + } + else if (!hasAtLeastOneQuestItem(player, ARKENIAS_LETTER, LEIKANS_NOTE, ARKENIAS_RECOMMENDATION, IRON_HEART, SHILENS_CALL) && hasQuestItems(player, SHILENS_TEARS)) + { + takeItems(player, SHILENS_TEARS, 1); + giveItems(player, ARKENIAS_RECOMMENDATION, 1); + qs.setCond(7, true); + htmltext = "30419-08.html"; + } + else if (!hasAtLeastOneQuestItem(player, ARKENIAS_LETTER, LEIKANS_NOTE, SHILENS_TEARS, IRON_HEART, SHILENS_CALL) && hasQuestItems(player, ARKENIAS_RECOMMENDATION)) + { + htmltext = "30419-09.html"; + } + else if (!hasAtLeastOneQuestItem(player, ARKENIAS_LETTER, SHILENS_TEARS, ARKENIAS_RECOMMENDATION, IRON_HEART, SHILENS_CALL) && hasQuestItems(player, LEIKANS_NOTE)) + { + htmltext = "30419-10.html"; + } + else if (!hasAtLeastOneQuestItem(player, ARKENIAS_LETTER, LEIKANS_NOTE, SHILENS_TEARS, ARKENIAS_RECOMMENDATION, IRON_HEART, SHILENS_CALL)) + { + htmltext = "30419-11.html"; + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-01.html new file mode 100644 index 0000000000..8997cfe7ed --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-01.html @@ -0,0 +1,5 @@ +Charkeren:
+Who are you? I curse everything in this world! Just leave me alone!
+Ah ... What good is it to be the only one alive? If the gods asked me what to do with the world, I'd ask them to destroy it right away! What good is it to live in a world like this ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-02.html new file mode 100644 index 0000000000..2e6e768948 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-02.html @@ -0,0 +1,7 @@ +Charkeren:
+My family ... We built a house near the waterfall and lived happily, tending our fields. Then suddenly, one day, an Elven militia corps showed up and threatened us, but we didn't pay much attention because we though it was just the normal harassment. But the day I went up to repair the roof for the rainy season, they swarmed into the house and killed my entire family ...
+I was a powerless coward, and I held my breath on the roof and just watched. As my family was killed one by one in front of my eyes, I pressed myself close to the roof so that I would not be seen, and did nothing to save them until they were all dead ...
+What sins did I commit for my family to be murdered! I will take revenge on those Elves by doing exactly what they did! I will make them understand how it feels to be able to do nothing while your loved ones die in front of your eyes! Ahh ... My family ...
+Could you do me a favor? It's nothing difficult...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-03.html new file mode 100644 index 0000000000..67c217020f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-03.html @@ -0,0 +1,4 @@ +Charkeren:
+Those wretched murderers threw the corpses of my family in the marsh, but I can't bear to go there to search. If I could devour those murderers like a wild beast, it still wouldn't satisfy my hunger for revenge! Please find the bodies of my parents and younger sister. I beg you. The Marsh Zombies have probably torn up the corpses. Kill the Marsh Zombies and bring back the three remains, please.
+This key was given to me by my parents as a gift. It is supposed to bring good luck. Carry this with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-04.html new file mode 100644 index 0000000000..d55506e30c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-04.html @@ -0,0 +1,4 @@ +Charkeren:
+I didn't think it would be easy to find all the remains of my family ... I know the marsh is quite large ...
+They say that the Marsh Zombies love dead bodies, so I'm sure they have scattered the corpses of my family. I do not care how long it takes. Please find their remains. Please, I beg you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-05.html new file mode 100644 index 0000000000..58ec88985f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-05.html @@ -0,0 +1,4 @@ +Charkeren:
+Ahh ... You have found the remains of my family ... How can I ever thank you ... I will never forget your kind heart. I promise I will pay you back once I finish my revenge.
+Argh ... My heart suddenly ... Ugh ... I feel nauseous. What is this? Is this a seed? I will give this to you. Now ... My heart feels so much lighter. I will not forget your kindness. Thank you so much. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-06.html new file mode 100644 index 0000000000..cd3addfc0b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30415-06.html @@ -0,0 +1,3 @@ +Charkeren:
+Thank you so much. I do not have anything now so I cannot give you anything in return. I will honor you for your kindness for the rest of my life. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30418-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30418-01.html new file mode 100644 index 0000000000..efe558f2b4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30418-01.html @@ -0,0 +1,5 @@ +Annika:
+The finest Wizards of the Dark Elven race used to study black magic here a long time ago. But this place has since been abandoned and is now in ruins. Can't you feel the spirit of evil inside? The accumulated dark magic is so strong, even a Fighter like myself can feel its power.
+I am training to become a sentry. The training course involves exploring the School of Dark Arts here. However, whenever I go into dark and closed spaces, I cannot breathe. Just the thought of going into that place steals my breath. I beg you... Please help me complete my training.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30418-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30418-02.html new file mode 100644 index 0000000000..277512312e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30418-02.html @@ -0,0 +1,4 @@ +Annika:
+Please go into the School of Dark Arts and find me two Knee Bones of the undead. You can find them by killing skeleton hunters, skeleton hunter archers, or misery skeletons.
+I will give you this candle. If you are trapped in a dark corridor in the ruins, you may need it. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30418-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30418-03.html new file mode 100644 index 0000000000..45332f77b5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30418-03.html @@ -0,0 +1,3 @@ +Annika:
+How come you've returned empty-handed? Have you forgotten your promise already? Didn't you say you were going to find me two Knee Bones of the undead? You can get the Knee Bones by killing skeleton hunters, skeleton hunter archers, or misery skeletons. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30418-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30418-04.html new file mode 100644 index 0000000000..824d9854f4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30418-04.html @@ -0,0 +1,4 @@ +Annika:
+Thank you very much. Thanks to you, I can safely complete my training. Soon, I will earn the qualifications to become a sentry. When I do, my friends won't laugh at me anymore.
+I give you this in thanks for helping me. I'm not sure exactly what it is, but it is definitely very precious. It looks like a seed or something... It looks quite marvelous, I've never seen anything like it before. I found it in the nearby woods a few days ago. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30419-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30419-01.html new file mode 100644 index 0000000000..2f7c26cd75 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30419-01.html @@ -0,0 +1,5 @@ +Arkenia:
+The Dark Forest is peaceful and orderly, but Gludio is not like that. The wounds of war still run red in that place. A Sorcerer in the past went mad, and did things that should not have been done.
+He made live Humans the subjects of his experiments. After the experiments, they were no longer Humans. The scientist turned them into skeletons, you see. Kill the skeleton scouts in the Ruins of Agony in Gludio and find the Heart of Lunacy, left by that Sorcerer whose lunacy created the evil.
+Here is a perfume made from crushed herbs, it will defend your mind from the curse of that madness. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30419-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30419-02.html new file mode 100644 index 0000000000..55a8fa3f2d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30419-02.html @@ -0,0 +1,3 @@ +Arkenia:
+Kill the skeleton scouts that appear in the Ruins of Agony and free the dead Humans' souls. Then, bring me the Heart of Lunacy you'll get from the skeleton's body. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30419-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30419-03.html new file mode 100644 index 0000000000..f26fa4303c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30419-03.html @@ -0,0 +1,4 @@ +Arkenia:
+You have found the Heart of Lunacy. This must be handled very carefully. If you are careless, it will burst. This heart is an important ingredient in the making of medicine. This much will make a lot of medicine.
+If you dry one of these hearts, it will become a Seed of Lunacy. Since you found all the hearts, I will give you a Seed of Lunacy as a reward. If you carry this with you, you will not be tormented by evil creatures. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-01.htm new file mode 100644 index 0000000000..3cafd0feeb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-01.htm @@ -0,0 +1,5 @@ +Varika:
+Do you want the ultimate power in your hands? If so, then you must not hesitate. Decision is always important. If you become a Dark Wizard, you will have the power to command the spirits as you wish.
+Well, do you want the power of the Dark Wizard that commands spirits?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-02.htm new file mode 100644 index 0000000000..acc20632a9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-02.htm @@ -0,0 +1,3 @@ +Witch Varika:
+You are not experienced enough to become a Dark Wizard. You must have achieved at least level 18 before you can wield that kind of power. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-02a.htm new file mode 100644 index 0000000000..4a61d6e06d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-02a.htm @@ -0,0 +1,3 @@ +Varika:
+It seems that ... You already have the power of a Dark Wizard ... I cannot help you. Please research power of a higher level. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-03.htm new file mode 100644 index 0000000000..fcff8ec438 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-03.htm @@ -0,0 +1,3 @@ +Varika:
+You are already walking another path. You are not eligible to take the test to become a Dark Wizard. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-04.htm new file mode 100644 index 0000000000..fa80570267 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-04.htm @@ -0,0 +1,4 @@ +Varika:
+I see you already have the Jewel of Darkness. That means you are qualified to become a Dark Wizard. Take the jewel and go to a Grand Master of the Dark Elf Guild in Gludio.
+The closest is the village of Gludin. Follow the road and continue on south. Go to the Dark Elf Guild there and meet Grand Master Xenos. He will change your profession to Dark Wizard. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-05.htm new file mode 100644 index 0000000000..450b7cfe2d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-05.htm @@ -0,0 +1,8 @@ +Varika:
+Dark Wizards can control the power of nature and perform powerful magic. But you should be aware of the origin of power that enables magic.
+Long ago, our mother Shilen was insulted by Einhasad and betrayed by the Elves when they began to serve Eva. Since then, the origin of our power is darkness, like our mother Shilen. Dark power consists of four factors -- anger, despair, horror and lunacy. You can qualify to become a Dark Wizard only if you collect the four seeds that symbolize these things.
+Here, take this. This is the Seed of Despair. Take this and find the remaining seeds. Now, which one should I explain first?
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-06.html new file mode 100644 index 0000000000..891a72f590 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-06.html @@ -0,0 +1,3 @@ +Varika:
+Are you trying to trick me? Others may be easily fooled, but it will not be easy to fool me. I see you already have the Seed of Anger. Go find the remaining seeds. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-07.html new file mode 100644 index 0000000000..0ebf9d358f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-07.html @@ -0,0 +1,3 @@ +Varika:
+Go to the waterfall that is north of the Neutral Zone and northeast of here. There, you will feel a tremendous force of anger. I have foreseen that the one emitting the anger is a young Dark Elven youth by the name of Charkeren. Bring the Seed of Anger planted in his heart. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-08.html new file mode 100644 index 0000000000..f950506b61 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-08.html @@ -0,0 +1,3 @@ +Varika:
+The young man called Charkeren was greatly afflicted. He will have great knots in his heart. Undo the knots and they will form a Seed of Anger. Please help that poor man as soon as possible. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-09.html new file mode 100644 index 0000000000..74e1bb0429 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-09.html @@ -0,0 +1,3 @@ +Varika:
+None are as weak as an opponent that has fear in his heart. I see you have the Seed of Horror. Did you collect all the other seeds? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-10.html new file mode 100644 index 0000000000..8d83b52184 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-10.html @@ -0,0 +1,3 @@ +Varika:
+I sense that someone is trembling in fear. It seems to be near the School of Dark Arts. Search thoroughly near the entrance of the School of Dark Arts. She seems like a very attractive young woman. Listen to her tale and erase her horror. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-11.html new file mode 100644 index 0000000000..fe4d6fe13a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-11.html @@ -0,0 +1,3 @@ +Varika:
+You are quite an amusing person. If you already have the Seed of Lunacy, why have you come to find it again? Go gather the seeds that you do not have yet. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-12.html new file mode 100644 index 0000000000..266db8ca64 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-12.html @@ -0,0 +1,3 @@ +Varika:
+For methods of finding a Seed of Lunacy, go and ask my sister Arkenia. She will tell you in detail what you wish to know. When you have found a Seed of Lunacy, come and seek me again. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-13.html new file mode 100644 index 0000000000..ab133be0ae --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-13.html @@ -0,0 +1,5 @@ +Varika:
+So you have finally collected the Seeds of Anger, Despair, Horror and Lunacy. Now do you know the source of our power? There is no need to be afraid. All you have to do is control these by your will.
+Emotion is important when dealing with nature's elementals. Don't forget that emotion is the source of power. Since you have gathered all the seeds needed to become a Dark Wizard, I will give you a token. Take this token to the Grand Master of the Dark Elf Guild and you can become a Dark Wizard.
+The nearest village where Dark Elves reside is the village of Gludin. Go and seek Grand Master Xenos there. He will change your profession to a Dark Wizard. Well then my friend, may the divine protection of Shilen be with you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-14.html new file mode 100644 index 0000000000..c1ae662f20 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-14.html @@ -0,0 +1,7 @@ +Varika:
+Dark Wizards can control the power of nature and perform powerful magic. But you should be aware of the origin of power that enables it.
+Long ago, our mother Shilen was insulted by Einhasad and betrayed by the Elves. Since then, the origin of our power is darkness, like our mother Shilen. Dark power consists of four factors -- anger, despair, horror and lunacy. You can qualify to become a Dark Wizard only if you collect the four seeds that symbolize these four things.
+ + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-15.html new file mode 100644 index 0000000000..257e4a2f01 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/30421-15.html @@ -0,0 +1,3 @@ +Varika:
+The Knee Bones of the undead can be made into many different kinds of medicine and are often used for teaching in school. Annika seems to be unexpectedly clever, despite her appearance. A girl of her age shouldn't want to spend the entire day in a depressing dungeon. Give the girl these Knee Bones. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/Q00412_PathOfTheDarkWizard.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/Q00412_PathOfTheDarkWizard.java new file mode 100644 index 0000000000..f6fd9163b3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00412_PathOfTheDarkWizard/Q00412_PathOfTheDarkWizard.java @@ -0,0 +1,387 @@ +/* + * 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.Q00412_PathOfTheDarkWizard; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path Of The Dark Wizard (412) + * @author ivantotov + */ +public final class Q00412_PathOfTheDarkWizard extends Quest +{ + // NPCs + private static final int CHARKEREN = 30415; + private static final int ANNIKA = 30418; + private static final int ARKENIA = 30419; + private static final int VARIKA = 30421; + // Items + private static final int SEEDS_OF_ANGER = 1253; + private static final int SEEDS_OF_DESPAIR = 1254; + private static final int SEEDS_OF_HORROR = 1255; + private static final int SEEDS_OF_LUNACY = 1256; + private static final int FAMILYS_REMAINS = 1257; + private static final int KNEE_BONE = 1259; + private static final int HEART_OF_LUNACY = 1260; + private static final int LUCKY_KEY = 1277; + private static final int CANDLE = 1278; + private static final int HUB_SCENT = 1279; + // Reward + private static final int JEWEL_OF_DARKNESS = 1261; + // Monster + private static final int MARSH_ZOMBIE = 20015; + private static final int MISERY_SKELETON = 20022; + private static final int SKELETON_SCOUT = 20045; + private static final int SKELETON_HUNTER = 20517; + private static final int SKELETON_HUNTER_ARCHER = 20518; + // Misc + private static final int MIN_LEVEL = 18; + + public Q00412_PathOfTheDarkWizard() + { + super(412); + addStartNpc(VARIKA); + addTalkId(VARIKA, CHARKEREN, ANNIKA, ARKENIA); + addKillId(MARSH_ZOMBIE, MISERY_SKELETON, SKELETON_SCOUT, SKELETON_HUNTER, SKELETON_HUNTER_ARCHER); + registerQuestItems(SEEDS_OF_ANGER, SEEDS_OF_DESPAIR, SEEDS_OF_HORROR, SEEDS_OF_LUNACY, FAMILYS_REMAINS, KNEE_BONE, HEART_OF_LUNACY, LUCKY_KEY, CANDLE, HUB_SCENT); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() == ClassId.DARK_MAGE) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (hasQuestItems(player, JEWEL_OF_DARKNESS)) + { + htmltext = "30421-04.htm"; + } + else + { + qs.startQuest(); + giveItems(player, SEEDS_OF_DESPAIR, 1); + htmltext = "30421-05.htm"; + } + } + else + { + htmltext = "30421-02.htm"; + } + } + else if (player.getClassId() == ClassId.DARK_WIZARD) + { + htmltext = "30421-02a.htm"; + } + else + { + htmltext = "30421-03.htm"; + } + break; + } + case "30421-06.html": + { + if (hasQuestItems(player, SEEDS_OF_ANGER)) + { + htmltext = event; + } + else + { + htmltext = "30421-07.html"; + } + break; + } + case "30421-09.html": + { + if (hasQuestItems(player, SEEDS_OF_HORROR)) + { + htmltext = event; + } + else + { + htmltext = "30421-10.html"; + } + break; + } + case "30421-11.html": + { + if (hasQuestItems(player, SEEDS_OF_LUNACY)) + { + htmltext = event; + } + else if (!hasQuestItems(player, SEEDS_OF_LUNACY) && hasQuestItems(player, SEEDS_OF_DESPAIR)) + { + htmltext = "30421-12.html"; + } + break; + } + case "30421-08.html": + case "30415-02.html": + { + htmltext = event; + break; + } + case "30415-03.html": + { + giveItems(player, LUCKY_KEY, 1); + htmltext = event; + break; + } + case "30418-02.html": + { + giveItems(player, CANDLE, 1); + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case MARSH_ZOMBIE: + { + if (hasQuestItems(killer, LUCKY_KEY) && (getQuestItemsCount(killer, FAMILYS_REMAINS) < 3)) + { + if (getRandom(2) == 0) + { + giveItems(killer, FAMILYS_REMAINS, 1); + if (getQuestItemsCount(killer, FAMILYS_REMAINS) == 3) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case MISERY_SKELETON: + case SKELETON_HUNTER: + case SKELETON_HUNTER_ARCHER: + { + if (hasQuestItems(killer, CANDLE) && (getQuestItemsCount(killer, KNEE_BONE) < 2)) + { + if (getRandom(2) == 0) + { + giveItems(killer, KNEE_BONE, 1); + if (getQuestItemsCount(killer, KNEE_BONE) == 2) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case SKELETON_SCOUT: + { + if (hasQuestItems(killer, HUB_SCENT) && (getQuestItemsCount(killer, HEART_OF_LUNACY) < 3)) + { + if (getRandom(2) == 0) + { + giveItems(killer, HEART_OF_LUNACY, 1); + if (getQuestItemsCount(killer, HEART_OF_LUNACY) == 3) + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == VARIKA) + { + if (!hasQuestItems(player, JEWEL_OF_DARKNESS)) + { + htmltext = "30421-01.htm"; + } + else + { + htmltext = "30421-04.htm"; + } + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case VARIKA: + { + if (hasQuestItems(player, SEEDS_OF_DESPAIR, SEEDS_OF_HORROR, SEEDS_OF_LUNACY, SEEDS_OF_ANGER)) + { + giveAdena(player, 163800, true); + giveItems(player, JEWEL_OF_DARKNESS, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 28630); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 28630); + } + else + { + addExpAndSp(player, 591724, 35328); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30421-13.html"; + } + else if (hasQuestItems(player, SEEDS_OF_DESPAIR)) + { + if (!hasAtLeastOneQuestItem(player, FAMILYS_REMAINS, LUCKY_KEY, CANDLE, HUB_SCENT, KNEE_BONE, HEART_OF_LUNACY)) + { + htmltext = "30421-14.html"; + } + else if (!hasQuestItems(player, SEEDS_OF_ANGER)) + { + htmltext = "30421-08.html"; + } + else if (!hasQuestItems(player, SEEDS_OF_HORROR)) + { + htmltext = "30421-15.html"; + } + else if (!hasQuestItems(player, SEEDS_OF_LUNACY)) + { + htmltext = "30421-12.html"; + } + } + break; + } + case CHARKEREN: + { + if (!hasQuestItems(player, SEEDS_OF_ANGER) && hasQuestItems(player, SEEDS_OF_DESPAIR)) + { + if (!hasAtLeastOneQuestItem(player, FAMILYS_REMAINS, LUCKY_KEY)) + { + htmltext = "30415-01.html"; + } + else if (hasQuestItems(player, LUCKY_KEY) && (getQuestItemsCount(player, FAMILYS_REMAINS) < 3)) + { + htmltext = "30415-04.html"; + } + else + { + giveItems(player, SEEDS_OF_ANGER, 1); + takeItems(player, FAMILYS_REMAINS, -1); + takeItems(player, LUCKY_KEY, 1); + htmltext = "30415-05.html"; + } + } + else + { + htmltext = "30415-06.html"; + } + break; + } + case ANNIKA: + { + if (!hasQuestItems(player, SEEDS_OF_HORROR) && hasQuestItems(player, SEEDS_OF_DESPAIR)) + { + if (!hasAtLeastOneQuestItem(player, CANDLE, KNEE_BONE)) + { + htmltext = "30418-01.html"; + } + else if (hasQuestItems(player, CANDLE) && (getQuestItemsCount(player, KNEE_BONE) < 2)) + { + htmltext = "30418-03.html"; + } + else + { + giveItems(player, SEEDS_OF_HORROR, 1); + takeItems(player, KNEE_BONE, -1); + takeItems(player, CANDLE, 1); + htmltext = "30418-04.html"; + } + } + break; + } + case ARKENIA: + { + if (!hasQuestItems(player, SEEDS_OF_LUNACY)) + { + if (!hasAtLeastOneQuestItem(player, HUB_SCENT, HEART_OF_LUNACY)) + { + giveItems(player, HUB_SCENT, 1); + htmltext = "30419-01.html"; + } + else if (hasQuestItems(player, HUB_SCENT) && (getQuestItemsCount(player, HEART_OF_LUNACY) < 3)) + { + htmltext = "30419-02.html"; + } + else + { + giveItems(player, SEEDS_OF_LUNACY, 1); + takeItems(player, HEART_OF_LUNACY, -1); + takeItems(player, HUB_SCENT, 1); + htmltext = "30419-03.html"; + } + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-01.htm new file mode 100644 index 0000000000..bc5d3c62c6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-01.htm @@ -0,0 +1,5 @@ +Magister Sidra:
+The Priests of Humans or Elves only look to the gods of light, and so their understanding is imperfect. The magic they use is only half and incomplete. However, the Shillien Oracles, the combat celebrants of the Dark Elves, understand both light and dark and command power from both. Not only do they cure and assist soldiers with the power of light, but they also curse enemies and steal vitality with the power of darkness.
+There is a ritual required when becoming a Shillien Oracle, to gain the knowledge of eternal darkness.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-02.htm new file mode 100644 index 0000000000..26a454bc18 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-02.htm @@ -0,0 +1,4 @@ +Magister Sidra:
+I have taught countless wizards. I can tell a candidate's aptitude simply by observing his aura. Yours tells me that you are not yet ready to become a Shillien Oracle. Return to me after you have deepened your understanding of the magic arts.
+(Only characters level 18 and above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-02a.htm new file mode 100644 index 0000000000..4a18075b73 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-02a.htm @@ -0,0 +1,3 @@ +Magister Sidra:
+You are the Shillien Oracle, who has gained all the knowledge of that office. You do not need another ritual. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-03.htm new file mode 100644 index 0000000000..fdb1ee8baa --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-03.htm @@ -0,0 +1,3 @@ +Magister Sidra:
+The customary right to perform the ritual of becoming a Shillien Oracle are only given to Dark Mystics. I cannot give you this opportunity. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-04.htm new file mode 100644 index 0000000000..ef72a6cc32 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-04.htm @@ -0,0 +1,3 @@ +Magister Sidra:
+The "Orb of Abyss" that you carry is a token that shows you have completed all requirements and are eligible to become a Shillien Oracle. Take the orb to a grand master of the Dark Elf Guild and he will give you help in obtaining the enlightenment regarding the truth between light and darkness and thereby becoming a Shillien Oracle. If you go to Grand Master Tobias just over there, you can change your profession immediately. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-05.htm new file mode 100644 index 0000000000..be93ffdc3c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-05.htm @@ -0,0 +1,4 @@ +Magister Sidra:
+Good. You have sufficient experience and skill to take the test. Above all, I feel your thirst for enlightenment and power. To step into the ranks of the Shillien Oracle, you must pass two customary tasks. This will be an opportunity to prove that you have the courage not to fear darkness and the will not to turn your eyes from the light.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-06.htm new file mode 100644 index 0000000000..9442231e27 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-06.htm @@ -0,0 +1,6 @@ +Magister Sidra:
+Before you become a Shillien Oracle that seeks the truth of all light and darkness, you must find the fragments of song that Gran Kain and Einhasad sang in the beginning.
+You must find two documents that have the song verses of creation written in ancient runes -- one is Garmiel's Book and the other is Andariel's Book.
+Meet Magister Talbot in Gludin to learn about Garmiel's Book. Show him this letter and he will welcome you since it is I who sent you.
+< +/body> \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-06a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-06a.html new file mode 100644 index 0000000000..7e885d6d03 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-06a.html @@ -0,0 +1,5 @@ +Magister Sidra:
+In the beginning, Einhasad and Gran Kain sang the song of creation and created the world. The songs of light sung by Einhasad and poems of darkness recited by Gran Kain formed a beautiful harmony to create all life in the universe. Afterwards, they taught the songs they had sung to the earthly races that worshipped them, to enable them to control light and darkness.
+However, the giants were too greedy and desired the gods' wisdom. When they challenged their authority, Einhasad and Gran Kain punished the giants and the thousand songs that the giants were taught were broken into runes. Later, magicians began to collect the ancient runes and rearrange them into spells, but their power is very weak and insignificant compared to that of the ancient ancestors who could sing the songs of creation learned directly from the gods.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-07.html new file mode 100644 index 0000000000..649062321a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-07.html @@ -0,0 +1,3 @@ +Magister Sidra:
+Meet with Magister Talbot and ask about Garmiel's Book. You can find him in the Dark Elf Guild of the village of Gludin, located on the west coast. Show him my letter and he will greet you with pleasure. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-08.html new file mode 100644 index 0000000000..6c11a2c8ed --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-08.html @@ -0,0 +1,3 @@ +Magister Sidra:
+As Talbot taught you, collect the runes and complete Garmiel's book. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-09.html new file mode 100644 index 0000000000..5c56704729 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-09.html @@ -0,0 +1,3 @@ +Magister Sidra:
+The second level of the test is to find Andariel's Book, which contains the song phrases of creation sung by Einhasad. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-10.html new file mode 100644 index 0000000000..50c0855c2d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30330-10.html @@ -0,0 +1,4 @@ +Magister Sidra:
+The two documents you hold in your hands contain parts of the song of creation sung by the Gods in the beginning. I trust that you discovered the power of the precious phrases and the truth of authority as you read them one by one.
+Now I am giving you the Orb of Abyss. With this, you have earned the qualification to become a Shillien Oracle. Take the Orb of Abyss and go to a Grand Master to request a change of occupation. If you speak to Grand Master Tobias over there, you can change profession right now. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-01.html new file mode 100644 index 0000000000..e5e8eca314 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-01.html @@ -0,0 +1,4 @@ +Priest Adonius:
+This place is the holy hall where we serve Einhasad, god of light. Why have you, a member of the race of darkness, set foot in this place?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-02.html new file mode 100644 index 0000000000..a02d66acbb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-02.html @@ -0,0 +1,4 @@ +Priest Adonius:
+There have been Dark Elves that have said the same thing before. We priests showed them compassion and taught them the path of light, but we found out that they were false seekers of truth with their eye on the power of white magic. I can no longer trust the words of your kind.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-03.html new file mode 100644 index 0000000000..b15eb5ceb4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-03.html @@ -0,0 +1,5 @@ +Priest Adonius:
+Why this is the prayer book that I wrote ... You have this too? This was published in the form of a book of poems with prayers I made to Einhasad when I was young. It became known among the younger generation through rumors, and now it is a book beloved by many people. It is embarrassing to be saying so myself, but many people were moved after reading my book and have come to the temple to follow the path of light.
+When I think that my humble writings have played a part in spreading the will of Einhasad in the world, I can only be joyful. And now those like you, who follow evil doctrines, are impressed by my book ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-04.html new file mode 100644 index 0000000000..a0db709d36 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-04.html @@ -0,0 +1,4 @@ +Priest Adonius:
+Unlike your gods, who hide truth within darkness, Einhasad is a benevolent god. We priests have been permitted a portion of the songs of light, written in Andariel's Book. If you have decided to repent your wicked past and follow the creed of the light, I will give you a copy of the ancient book.
+Atonement is not that easy. If you go east of here to the Ruins of Despair, there are many undead that cannot rest in death. To destroy these undead, you must send the good spirits still trapped inside them into the arms of Einhasad. If you bring back ten Ashen Bones that can be obtained by killing the skeletons or zombies in the Ruins of Despair, you will finish your atonement ritual. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-05.html new file mode 100644 index 0000000000..0c57e3f297 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-05.html @@ -0,0 +1,4 @@ +Priest Adonius:
+It is not easy for you to abandon the path of evil, since you have followed it for so long. If you are ready, go to the Ruins of Despair and kill the departed souls that are trapped in the form of skeletons, and bring back ten of their bone pieces. This is the atonement ritual given unto you ...
+I do hope you are able to abandon the dark and accept the truth of light. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-06.html new file mode 100644 index 0000000000..6c5f928120 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-06.html @@ -0,0 +1,3 @@ +Priest Adonius:
+Your atonement ritual is not complete until you gather ten Ashen Bones. Although it is difficult, you must endure. As it is a ritual in which you repent the dark activities of the past and accept the light of Einhasad into your soul, you must face it with a solemn heart. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-07.html new file mode 100644 index 0000000000..ddb7c2029c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-07.html @@ -0,0 +1,4 @@ +Priest Adonius:
+Welcome, child of the light. The bone pieces of the departed souls that you have brought back will be given a proper funeral. This completes your atonement. Now you are ready to follow the path of light.
+Take this. It is Andariel's book, the book you were looking for. It is a very precious book that contains parts of the song of creation sung by Einhasad, the god of light. May you always meditate on the creed of light within. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-08.html new file mode 100644 index 0000000000..91d53220a8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30375-08.html @@ -0,0 +1,3 @@ +Priest Adonius:
+Welcome, child of the light. Are you meditating upon the truth of Einhasad within Andariel's Book? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-01.html new file mode 100644 index 0000000000..6918225bd8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-01.html @@ -0,0 +1,5 @@ +Magister Talbot:
+Welcome, my friend. You want to walk the path of the Shillien Oracle? The magic of a Dark Wizard that commands fire and wind is very spectacular, but the magic power of the Shillien Oracle, which commands the more fundamental power of the universe of light and darkness, is a valuable asset to our race. I hope you successfully complete the trial of seeking truth.
+Garmiel's Book, which you search for, does not exist in this world. However, there is a way to find it.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-02.html new file mode 100644 index 0000000000..0edf2d04c4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-02.html @@ -0,0 +1,4 @@ +Magister Talbot:
+Have you ever heard of the demon dark succubus? They were servants that lived in the ancient palace of darkness and waited on Gran Kain. They were made in the image of a Goddess and are like angels of beauty and wisdom.
+However, they were jealous of the power of the Gods and secretly eavesdropped on the songs Gran Kain sung in his palace, and wrote them down to use that power as their own. When Gran Kain discovered this, he was furious and cast away the servants, saying, 'I will not steal back the secrets that you have overheard. However, to know the secrets, you will have to spill blood.' The documents that the dark succubi made of the Gods' songs disappeared, but instead, when they died, their blood formed runes to write out the lyrics of the songs that they had overheard at the palace of Gran Kain.
If you wish to complete Garmiel's book, you must collect the runes made by the blood of the dark succubus. There are many dark succubi at the Spider Nest to the west of the Altar of Rites in the northern region. Kill them and find the Bloody Runes. Take these five blank sheets. If you put the scroll sheet near the blood, the blood will soak in and form runes. If you bring five Bloody Runes, I will put the runes together to make you Garmiel's book. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-03.html new file mode 100644 index 0000000000..2ec02fc592 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-03.html @@ -0,0 +1,3 @@ +Magister Talbot:
+Why are you still here? Make haste to the Altar of Rites! You will find the Dark Succubi near the Spider Nest. Destroy them and bring back five Bloody Runes. May Gran Kain protect you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-04.html new file mode 100644 index 0000000000..3b67e03e7f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-04.html @@ -0,0 +1,3 @@ +Magister Talbot:
+This is not enough. You must have five Bloody Runes in order to complete Garmiel's book. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-05.html new file mode 100644 index 0000000000..6e96deb471 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-05.html @@ -0,0 +1,5 @@ +Magister Talbot:
+May Shilen's blessing be with all those who search for the truth of darkness... I see you have brought back all five Bloody Runes. I will combine these and write out Garmiel's Book for you. It is only a small section of the song of darkness that Gran Kain sang in the beginning, but more will be revealed as your proficiency develops.
+Now take this. It is the completed Garmiel's Book. Read its passages as you rest during your journey, and adapt the truth within as your own.
+Now you must complete a second task in order to become a Shillien Oracle. You must find Andariel's Book, which contains parts of the song of creation sung by the God of Light in the beginning. Take this book to Priest Adonius in the temple of Einhasad. He will receive you cordially when you say, 'I have read your book and, being deeply moved, I have repented of my sins and decided to accept the light.' + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-06.html new file mode 100644 index 0000000000..6a0ff5cb9e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-06.html @@ -0,0 +1,3 @@ +Magister Talbot:
+Along with Garmiel's Book, which I wrote for you, you must find Andariel's Book, which contains the truth of light, if you wish to become a Shillien Oracle. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-07.html new file mode 100644 index 0000000000..94429812b5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/30377-07.html @@ -0,0 +1,4 @@ +Magister Talbot:
+I see you have found Andariel's Book. Did the lofty priests of Einhasad fall for it when you spoke of the books they had written? They are hypocrites, who forget that the vanity and arrogance that they say are sins are within themselves.
+Now take Garmiel's Book and Andariel's Book to Magister Sidra of the village of Castle Gludio. Then she will give you the Orb of Abyss, which is the token you need to change profession to Shillien Oracle. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/Q00413_PathOfTheShillienOracle.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/Q00413_PathOfTheShillienOracle.java new file mode 100644 index 0000000000..a820687a86 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00413_PathOfTheShillienOracle/Q00413_PathOfTheShillienOracle.java @@ -0,0 +1,322 @@ +/* + * 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.Q00413_PathOfTheShillienOracle; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path Of The Shillien Oracle (413) + * @author ivantotov + */ +public final class Q00413_PathOfTheShillienOracle extends Quest +{ + // NPCs + private static final int MAGISTER_SIDRA = 30330; + private static final int PRIEST_ADONIUS = 30375; + private static final int MAGISTER_TALBOT = 30377; + // Items + private static final int SIDRAS_LETTER = 1262; + private static final int BLANK_SHEET = 1263; + private static final int BLOODY_RUNE = 1264; + private static final int GARMIELS_BOOK = 1265; + private static final int PRAYER_OF_ADONIUS = 1266; + private static final int PENITENTS_MARK = 1267; + private static final int ASHEN_BONES = 1268; + private static final int ANDARIEL_BOOK = 1269; + // Reward + private static final int ORB_OF_ABYSS = 1270; + // Monster + private static final int ZOMBIE_SOLDIER = 20457; + private static final int ZOMBIE_WARRIOR = 20458; + private static final int SHIELD_SKELETON = 20514; + private static final int SKELETON_INFANTRYMAN = 20515; + private static final int DARK_SUCCUBUS = 20776; + // Misc + private static final int MIN_LEVEL = 18; + + public Q00413_PathOfTheShillienOracle() + { + super(413); + addStartNpc(MAGISTER_SIDRA); + addTalkId(MAGISTER_SIDRA, PRIEST_ADONIUS, MAGISTER_TALBOT); + addKillId(ZOMBIE_SOLDIER, ZOMBIE_WARRIOR, SHIELD_SKELETON, SKELETON_INFANTRYMAN, DARK_SUCCUBUS); + registerQuestItems(SIDRAS_LETTER, BLANK_SHEET, BLOODY_RUNE, GARMIELS_BOOK, PRAYER_OF_ADONIUS, PENITENTS_MARK, ASHEN_BONES, ANDARIEL_BOOK); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() == ClassId.DARK_MAGE) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (hasQuestItems(player, ORB_OF_ABYSS)) + { + htmltext = "30330-04.htm"; + } + else + { + htmltext = "30330-05.htm"; + } + } + else + { + htmltext = "30330-02.htm"; + } + } + else if (player.getClassId() == ClassId.SHILLIEN_ORACLE) + { + htmltext = "30330-02a.htm"; + } + else + { + htmltext = "30330-03.htm"; + } + break; + } + case "30330-06.htm": + { + if (!hasQuestItems(player, SIDRAS_LETTER)) + { + giveItems(player, SIDRAS_LETTER, 1); + } + qs.startQuest(); + htmltext = event; + break; + } + case "30330-06a.html": + case "30375-02.html": + case "30375-03.html": + { + htmltext = event; + break; + } + case "30375-04.html": + { + if (hasQuestItems(player, PRAYER_OF_ADONIUS)) + { + takeItems(player, PRAYER_OF_ADONIUS, 1); + giveItems(player, PENITENTS_MARK, 1); + qs.setCond(5, true); + } + htmltext = event; + break; + } + case "30377-02.html": + { + if (hasQuestItems(player, SIDRAS_LETTER)) + { + takeItems(player, SIDRAS_LETTER, 1); + giveItems(player, BLANK_SHEET, 5); + qs.setCond(2, true); + } + htmltext = event; + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case ZOMBIE_SOLDIER: + case ZOMBIE_WARRIOR: + case SHIELD_SKELETON: + case SKELETON_INFANTRYMAN: + { + if (hasQuestItems(killer, PENITENTS_MARK) && (getQuestItemsCount(killer, ASHEN_BONES) < 10)) + { + giveItems(killer, ASHEN_BONES, 1); + if (getQuestItemsCount(killer, ASHEN_BONES) == 10) + { + qs.setCond(6, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case DARK_SUCCUBUS: + { + if (hasQuestItems(killer, BLANK_SHEET)) + { + giveItems(killer, BLOODY_RUNE, 1); + takeItems(killer, BLANK_SHEET, 1); + if (!hasQuestItems(killer, BLANK_SHEET) && (getQuestItemsCount(killer, BLOODY_RUNE) == 5)) + { + qs.setCond(3, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == MAGISTER_SIDRA) + { + htmltext = "30330-01.htm"; + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case MAGISTER_SIDRA: + { + if (hasQuestItems(player, SIDRAS_LETTER)) + { + htmltext = "30330-07.html"; + } + else if (hasAtLeastOneQuestItem(player, BLANK_SHEET, BLOODY_RUNE)) + { + htmltext = "30330-08.html"; + } + else if (!hasQuestItems(player, ANDARIEL_BOOK) && hasAtLeastOneQuestItem(player, PRAYER_OF_ADONIUS, GARMIELS_BOOK, PENITENTS_MARK, ASHEN_BONES)) + { + htmltext = "30330-09.html"; + } + else if (hasAtLeastOneQuestItem(player, ANDARIEL_BOOK, GARMIELS_BOOK)) + { + giveAdena(player, 163800, true); + giveItems(player, ORB_OF_ABYSS, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 26532); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 33230); + } + else + { + addExpAndSp(player, 591724, 39928); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30330-10.html"; + } + break; + } + case PRIEST_ADONIUS: + { + if (hasQuestItems(player, PRAYER_OF_ADONIUS)) + { + htmltext = "30375-01.html"; + } + else if (hasQuestItems(player, PENITENTS_MARK) && !hasAtLeastOneQuestItem(player, ASHEN_BONES, ANDARIEL_BOOK)) + { + htmltext = "30375-05.html"; + } + else if (hasQuestItems(player, PENITENTS_MARK)) + { + if (hasQuestItems(player, ASHEN_BONES) && (getQuestItemsCount(player, ASHEN_BONES) < 10)) + { + htmltext = "30375-06.html"; + } + else + { + takeItems(player, PENITENTS_MARK, 1); + takeItems(player, ASHEN_BONES, -1); + giveItems(player, ANDARIEL_BOOK, 1); + qs.setCond(7, true); + htmltext = "30375-07.html"; + } + } + else if (hasQuestItems(player, ANDARIEL_BOOK)) + { + htmltext = "30375-08.html"; + } + break; + } + case MAGISTER_TALBOT: + { + if (hasQuestItems(player, SIDRAS_LETTER)) + { + htmltext = "30377-01.html"; + } + else if (!hasQuestItems(player, BLOODY_RUNE) && (getQuestItemsCount(player, BLANK_SHEET) == 5)) + { + htmltext = "30377-03.html"; + } + else if (hasQuestItems(player, BLOODY_RUNE) && (getQuestItemsCount(player, BLOODY_RUNE) < 5)) + { + htmltext = "30377-04.html"; + } + else if (getQuestItemsCount(player, BLOODY_RUNE) >= 5) + { + takeItems(player, BLOODY_RUNE, -1); + giveItems(player, GARMIELS_BOOK, 1); + giveItems(player, PRAYER_OF_ADONIUS, 1); + qs.setCond(4, true); + htmltext = "30377-05.html"; + } + else if (hasAtLeastOneQuestItem(player, PRAYER_OF_ADONIUS, PENITENTS_MARK, ASHEN_BONES)) + { + htmltext = "30377-06.html"; + } + else if (hasQuestItems(player, ANDARIEL_BOOK, GARMIELS_BOOK)) + { + htmltext = "30377-07.html"; + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30501-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30501-01.html new file mode 100644 index 0000000000..61c9e67951 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30501-01.html @@ -0,0 +1,3 @@ +Prefect Kasman:
+I have received notice from Karukia. You were given the task to destroy the betrayers, right? They are sly scoundrels, so you must be careful in dealing with them. After you finish your task, bring me back their heads! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30501-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30501-02.html new file mode 100644 index 0000000000..ec11aa3aa0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30501-02.html @@ -0,0 +1,3 @@ +Prefect Kasman:
+Now you have one left. Go and kill the scoundrel! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30501-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30501-03.html new file mode 100644 index 0000000000..92e61e8694 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30501-03.html @@ -0,0 +1,4 @@ +Prefect Kasman:
+Foul betrayers, the Umbar tribe, to think that they abandoned the courage and loyalty of high-level orcs, they have become low Orcs depraved in body as well as in soul. How truly wicked they look. I am moved to think that we have shown mercy by killing them!
+Anyway, you have done well. You have truly demonstrated both courage and loyalty. Congratulations! I bestow this token on you. Take it and go to High Prefect Osborn right here! He will change your profession to Orc Raider. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-01.htm new file mode 100644 index 0000000000..c473598307 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-01.htm @@ -0,0 +1,5 @@ +Prefect Karukia:
+Orc Raiders are of the most elite rank among fighters of our race! Their mere appearance on the battlefield makes the enemy troops shiver in fear!
+To earn the qualifications to become an Orc Raider, you must prove that you have courage that has no regard for death, and absolute loyalty to the Orcs. There have been many young ones that lost their lives trying to prove their courage and loyalty! It is not something to challenge with a light heart!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-02.htm new file mode 100644 index 0000000000..2d5f607d38 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-02.htm @@ -0,0 +1,3 @@ +Prefect Karukia:
+Of course, I know your goal is to be a dignified and noble member of our race. But courage unsupported by ability is foolishness! That is a path that leads only to a meaningless death. Train patiently, youngster, and your chance will come. See me again when you reach level 18! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-02a.htm new file mode 100644 index 0000000000..c99eee7e38 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-02a.htm @@ -0,0 +1,3 @@ +Prefect Karukia:
+You fool! You have already been selected as a courageous Orc Raider! Don't waste my time with useless questions. Go out to the battlefield and strike down the enemy! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-03.htm new file mode 100644 index 0000000000..1557ddb874 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-03.htm @@ -0,0 +1,3 @@ +Prefect Karukia:
+Only the most courageous Orc Fighters are chosen to be Orc Raiders. You don't have the qualifications to become a Marauder! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-04.htm new file mode 100644 index 0000000000..7b91f5c82f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-04.htm @@ -0,0 +1,3 @@ +Prefect Karukia:
+Oh! The Mark of the Raider! Another strong Warrior is born to fight for the Kingdom! Ha! You must go at once to the Kingdom of Humans and show this mark to the High Prefect there! He'll transfer you to the Raider class. You should visit either High Prefect Osborn in Gludin Village or High Prefect Pinker in the Town of Schuttgart. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-05.htm new file mode 100644 index 0000000000..ea6beffdfb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-05.htm @@ -0,0 +1,4 @@ +Prefect Karukia:
+Then, I will give you a test! Orc Raiders are completed when they show courage that is unafraid of death and loyalty that is absolute. First, you must prove your loyalty. Destroy the goblins that spoil the earth and the Kuruka Ratman Leaders that control that filthy race!
+Take this Map. It is marked with the places where there are goblin tribes. If you obliterate the goblin tomb raider leader there, a Kuruka Ratman Leader will appear, so make sure not to let him get away! We do not need captives. Remember, you must kill at least ten Kuruka Ratman Leaders. Plant the power and fear of the Orcs into the enemy's heart! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-06.html new file mode 100644 index 0000000000..7a6b1c0300 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-06.html @@ -0,0 +1,3 @@ +Prefect Karukia:
+Why have you come back already? Didn't I tell you to bring back ten kuruka ratman teeth? Is this all the courage you can muster? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-07.html new file mode 100644 index 0000000000..e8f9032cd5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-07.html @@ -0,0 +1,6 @@ +Prefect Karukia:
+You accomplished the mission well, but don't get too sure of yourself! As an Orc Raider, that should've been nothing to you! Now you must prove your loyalty.
+Two Judges await you. Which do you want to go to?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-07a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-07a.html new file mode 100644 index 0000000000..6d20a327d9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-07a.html @@ -0,0 +1,4 @@ +Prefect Karukia:
+We of the Orc Kingdom have long cherished our tradition of obedience to our elders. Having said that, there are always certain individuals who'd like to change the way we do things...
+Some such criminal dogs are said to be hiding in Gludin Village! Speak with Prefect Kasman of Gludin Village... He'll tell you what you need to do! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-07b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-07b.html new file mode 100644 index 0000000000..f576774548 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-07b.html @@ -0,0 +1,4 @@ +Prefect Karukia:
+We of the Orc Kingdom have long cherished our tradition of obedience to our elders. Having said that, there are always certain individuals who'd like to change the way we do things...
+Some such criminal dogs are said to be hiding in the Town of Schuttgart! Speak with Tazeer, the Lord of Schuttgart... He'll tell you what you need to do! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-08.html new file mode 100644 index 0000000000..f9cc24df5f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/30570-08.html @@ -0,0 +1,4 @@ +Prefect Karukia:
+You have not yet proven your loyalty! There are many traitors hiding far away in Gludin to avoid our eyes! They think they are safe, but we have not forgotten them. Go on now and put an end to the betrayers and prove your loyalty!
+When you complete this task, take the heads of the two traitors to Prefect Kasman in the village of Gludin. If you have truly earned the qualifications to become an Orc Raider, you will receive a token to change profession from him. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/31978-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/31978-01.html new file mode 100644 index 0000000000..1f423b0161 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/31978-01.html @@ -0,0 +1,7 @@ +Prefect Tazeer:
+ll glory flows from the great fire!
+Are you a young soldier of the Orc Kingdom? Surely you realize that you must prove your loyalty in order to be an Orc Raider.
+The test is very simple. Unlike in your land, there are many lower Orcs here, who hold much power...
+Any move against them would take a special kind of courage... Do you have it?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/31978-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/31978-02.html new file mode 100644 index 0000000000..ace0fe9151 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/31978-02.html @@ -0,0 +1,5 @@ +Prefect Tazeer:
+Excellent! I won't tell you that you won't be in serious danger, but I believe that you're skilled enough to defeat the Timora Orcs.
+Bring me one of their heads and I'll reward you with the Mark of the Raider!
+Go now! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/31978-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/31978-03.html new file mode 100644 index 0000000000..4b7b6af545 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/31978-03.html @@ -0,0 +1,4 @@ +Prefect Tazeer:
+The traitorous Timora Orcs can be found near the lake between the Crypts of Disgrace and the Den of Evil!
+Now go and bring me back one of their heads! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/31978-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/31978-04.html new file mode 100644 index 0000000000..173cccee19 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/31978-04.html @@ -0,0 +1,7 @@ +Prefect Tazeer:
+Very well! Then pay close attention!
+The Timora Orcs betrayed us by joining the dreaded Ragna Orcs, who have long been the scourge of this area. They can usually be found near the lake between the Crypts of Disgrace and the Den of Evil. They hide in the Den of Evil whenever they hear that we're sending a powerful Orc after them.
+Letting their betrayal go unchallenged would harm the reputation of the entire Orc Kingdom! If we secretly send an unknown Orc like you after them, they might be taken off-guard...
+Please, destroy the Timora Orcs!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/31978-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/31978-05.html new file mode 100644 index 0000000000..696863a05b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/31978-05.html @@ -0,0 +1,5 @@ +Prefect Tazeer:
+Tejakar Oroca! Tejakar Renegade Raider! You've brought me the head of a traitor!

+Please accept this Mark of the Raider! Take it to the High Prefect and he will qualify you as an Orc Raider if your skills are good enough!
+Glory be with you, young Orc! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/Q00414_PathOfTheOrcRaider.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/Q00414_PathOfTheOrcRaider.java new file mode 100644 index 0000000000..58d09d0b2d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00414_PathOfTheOrcRaider/Q00414_PathOfTheOrcRaider.java @@ -0,0 +1,358 @@ +/* + * 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.Q00414_PathOfTheOrcRaider; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path Of The Orc Raider (414) + * @author ivantotov + */ +public final class Q00414_PathOfTheOrcRaider extends Quest +{ + // NPCs + private static final int PREFECT_KARUKIA = 30570; + private static final int PREFRCT_KASMAN = 30501; + private static final int PREFRCT_TAZEER = 31978; // Careful with this id, might have changed during Chronicles. + // Items + private static final int GREEN_BLOOD = 1578; + private static final int GOBLIN_DWELLING_MAP = 1579; + private static final int KURUKA_RATMAN_TOOTH = 1580; + private static final int BETRAYER_UMBAR_REPORT = 1589; + private static final int BETRAYER_ZAKAN_REPORT = 1590; + private static final int HEAD_OF_BETRAYER = 1591; + private static final int TIMORA_ORC_HEAD = 8544; + // Reward + private static final int MARK_OF_RAIDER = 1592; + // Quest Monster + private static final int KURUKA_RATMAN_LEADER = 27045; + private static final int UMBAR_ORC = 27054; + private static final int TIMORA_ORC = 27320; + // Monster + private static final int GOBLIN_TOMB_RAIDER_LEADER = 20320; + // Misc + private static final int MIN_LEVEL = 18; + + public Q00414_PathOfTheOrcRaider() + { + super(414); + addStartNpc(PREFECT_KARUKIA); + addTalkId(PREFECT_KARUKIA, PREFRCT_KASMAN, PREFRCT_TAZEER); + addKillId(KURUKA_RATMAN_LEADER, UMBAR_ORC, TIMORA_ORC, GOBLIN_TOMB_RAIDER_LEADER); + registerQuestItems(GREEN_BLOOD, GOBLIN_DWELLING_MAP, KURUKA_RATMAN_TOOTH, BETRAYER_UMBAR_REPORT, BETRAYER_ZAKAN_REPORT, HEAD_OF_BETRAYER, TIMORA_ORC_HEAD); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() == ClassId.ORC_FIGHTER) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (hasQuestItems(player, MARK_OF_RAIDER)) + { + htmltext = "30570-04.htm"; + } + else + { + if (!hasQuestItems(player, GOBLIN_DWELLING_MAP)) + { + giveItems(player, GOBLIN_DWELLING_MAP, 1); + } + qs.startQuest(); + htmltext = "30570-05.htm"; + } + } + else + { + htmltext = "30570-02.htm"; + } + } + else if (player.getClassId() == ClassId.ORC_RAIDER) + { + htmltext = "30570-02a.htm"; + } + else + { + htmltext = "30570-03.htm"; + } + break; + } + case "30570-07a.html": + { + if (hasQuestItems(player, GOBLIN_DWELLING_MAP) && (getQuestItemsCount(player, KURUKA_RATMAN_TOOTH) >= 10)) + { + takeItems(player, GOBLIN_DWELLING_MAP, 1); + takeItems(player, KURUKA_RATMAN_TOOTH, -1); + giveItems(player, BETRAYER_UMBAR_REPORT, 1); + giveItems(player, BETRAYER_ZAKAN_REPORT, 1); + qs.setCond(3, true); + htmltext = event; + } + break; + } + case "30570-07b.html": + { + if (hasQuestItems(player, GOBLIN_DWELLING_MAP) && (getQuestItemsCount(player, KURUKA_RATMAN_TOOTH) >= 10)) + { + takeItems(player, GOBLIN_DWELLING_MAP, 1); + takeItems(player, KURUKA_RATMAN_TOOTH, -1); + qs.setCond(5, true); + qs.setMemoState(2); + htmltext = event; + } + break; + } + case "31978-04.html": + { + if (qs.isMemoState(2)) + { + htmltext = event; + } + break; + } + case "31978-02.html": + { + if (qs.isMemoState(2)) + { + qs.setMemoState(3); + qs.setCond(6, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case GOBLIN_TOMB_RAIDER_LEADER: + { + if (hasQuestItems(killer, GOBLIN_DWELLING_MAP) && (getQuestItemsCount(killer, KURUKA_RATMAN_TOOTH) < 10) && (getQuestItemsCount(killer, GREEN_BLOOD) <= 20)) + { + if (getRandom(100) < (getQuestItemsCount(killer, GREEN_BLOOD) * 5)) + { + takeItems(killer, GREEN_BLOOD, -1); + addAttackPlayerDesire(addSpawn(KURUKA_RATMAN_LEADER, npc, true, 0, true), killer); + } + else + { + giveItems(killer, GREEN_BLOOD, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case KURUKA_RATMAN_LEADER: + { + if (hasQuestItems(killer, GOBLIN_DWELLING_MAP) && (getQuestItemsCount(killer, KURUKA_RATMAN_TOOTH) < 10)) + { + takeItems(killer, GREEN_BLOOD, -1); + if (getQuestItemsCount(killer, KURUKA_RATMAN_TOOTH) >= 9) + { + giveItems(killer, KURUKA_RATMAN_TOOTH, 1); + qs.setCond(2, true); + } + else + { + giveItems(killer, KURUKA_RATMAN_TOOTH, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case UMBAR_ORC: + { + if (hasAtLeastOneQuestItem(killer, BETRAYER_UMBAR_REPORT, BETRAYER_ZAKAN_REPORT) && (getQuestItemsCount(killer, HEAD_OF_BETRAYER) < 2) && (getRandom(10) < 2)) + { + giveItems(killer, HEAD_OF_BETRAYER, 1); + if (hasQuestItems(killer, BETRAYER_ZAKAN_REPORT)) + { + takeItems(killer, BETRAYER_ZAKAN_REPORT, 1); + } + else if (hasQuestItems(killer, BETRAYER_UMBAR_REPORT)) + { + takeItems(killer, BETRAYER_UMBAR_REPORT, 1); + } + if (getQuestItemsCount(killer, HEAD_OF_BETRAYER) == 2) + { + qs.setCond(4, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case TIMORA_ORC: + { + if (qs.isMemoState(3) && !hasQuestItems(killer, TIMORA_ORC_HEAD)) + { + if (getRandom(100) < 60) + { + giveItems(killer, TIMORA_ORC_HEAD, 1); + qs.setCond(7, true); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == PREFECT_KARUKIA) + { + htmltext = "30570-01.htm"; + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case PREFECT_KARUKIA: + { + if (hasQuestItems(player, GOBLIN_DWELLING_MAP) && (getQuestItemsCount(player, KURUKA_RATMAN_TOOTH) < 10)) + { + htmltext = "30570-06.html"; + } + else if (hasQuestItems(player, GOBLIN_DWELLING_MAP) && (getQuestItemsCount(player, KURUKA_RATMAN_TOOTH) >= 10)) + { + if (!hasAtLeastOneQuestItem(player, BETRAYER_UMBAR_REPORT, BETRAYER_ZAKAN_REPORT)) + { + htmltext = "30570-07.html"; + } + } + else if (hasQuestItems(player, HEAD_OF_BETRAYER) || hasAtLeastOneQuestItem(player, BETRAYER_UMBAR_REPORT, BETRAYER_ZAKAN_REPORT)) + { + htmltext = "30570-08.html"; + } + else if (qs.isMemoState(2)) + { + htmltext = "30570-07b.html"; + } + break; + } + case PREFRCT_KASMAN: + { + if (!hasQuestItems(player, HEAD_OF_BETRAYER) && (getQuestItemsCount(player, BETRAYER_UMBAR_REPORT, BETRAYER_ZAKAN_REPORT) >= 2)) + { + htmltext = "30501-01.html"; + } + else if (getQuestItemsCount(player, HEAD_OF_BETRAYER) == 1) + { + htmltext = "30501-02.html"; + } + else if (getQuestItemsCount(player, HEAD_OF_BETRAYER) == 2) + { + giveAdena(player, 163800, true); + giveItems(player, MARK_OF_RAIDER, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 21312); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 28010); + } + else + { + addExpAndSp(player, 591724, 34708); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30501-03.html"; + } + break; + } + case PREFRCT_TAZEER: + { + if (qs.isMemoState(2)) + { + htmltext = "31978-01.html"; + } + else if (qs.isMemoState(3)) + { + if (!hasQuestItems(player, TIMORA_ORC_HEAD)) + { + htmltext = "31978-03.html"; + } + else + { + giveAdena(player, 81900, true); + giveItems(player, MARK_OF_RAIDER, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 160267, 10656); + } + else if (level == 19) + { + addExpAndSp(player, 228064, 14005); + } + else + { + addExpAndSp(player, 295862, 17354); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "31978-05.html"; + } + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30501-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30501-01.html new file mode 100644 index 0000000000..14033dbb6c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30501-01.html @@ -0,0 +1,4 @@ +Prefect Kasman:
+To find the second scroll needed in order to become a Monk, you must meet Khavatari Toruku. To meet him, you must follow the path that heads north from the village. He will be near the fork in the road. When you meet him, give him this fig.
+Come back after you have completed his Trial of Steel and you receive the scroll. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30501-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30501-02.html new file mode 100644 index 0000000000..51560f4020 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30501-02.html @@ -0,0 +1,3 @@ +Prefect Kasman:
+Why have you returned? If you want to find the scroll, go on now to Khavatari Toruku He is near the three-way junction if you follow the road north of the village. When you secure the Iron Will Scroll, come back to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30501-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30501-03.html new file mode 100644 index 0000000000..53440e793f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30501-03.html @@ -0,0 +1,3 @@ +Prefect Kasman:
+You have met Khavatari Toruku! They say that his tasks can be completed only with iron will and determination! That's no problem for one like you, right? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30501-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30501-04.html new file mode 100644 index 0000000000..5f7eddef23 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30501-04.html @@ -0,0 +1,4 @@ +Prefect Kasman:
+Tejakar Oroka! Good work, young fighter! As a result of steady effort and steadfast perseverance, you have obtained both scrolls! Congratulations! Maintain that spirit and go forward. I hope you will become a fighter stronger than anyone else!
+Take this totem! It is a token that shows that you have earned the rights and passed the Trial of Flame and Iron to become a Monk. Take this to the high prefect. He will change your profession to Monk. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-01.htm new file mode 100644 index 0000000000..70fbda47c4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-01.htm @@ -0,0 +1,5 @@ +Gantaki Zu Urutu:
+Young one, do you know of the Monks that follow the secret teachings of Pa'agrio? They do not rely on weapons other than their own bodies, believing that through this training they will gain ultimate strength. They have practiced Kabart, the traditional martial art of the Orcs, for thousands of years now.
+Only an Orc whose will is as bright as the sacred flame and whose body is as strong as the finest steel may walk the path of a Monk. But the reward is worthwhile -- Kabart Masters can kill even the largest beast with one blow of their bare hands.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-02.htm new file mode 100644 index 0000000000..7f63dc8a15 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-02.htm @@ -0,0 +1,3 @@ +Gantaki Zu Urutu:
+Only the strongest and most skilled Orc Fighters may attempt to learn our traditional martial art, Kabart. You are simply not fit to become a Monk. Ambition is good, but a wise warrior acknowledges his limitations. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-02a.htm new file mode 100644 index 0000000000..545fde7b0c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-02a.htm @@ -0,0 +1,3 @@ +Gantaki Zu Urutu:
+Why do you waste your time and mine speaking on such matters? I see that you are already a Monk who holds the 2 scrolls! Return to your training and allow me to go about my duty. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-03.htm new file mode 100644 index 0000000000..5521267a1e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-03.htm @@ -0,0 +1,3 @@ +Gantaki Zu Urutu:
+Only the strongest and most skilled Orc Fighters may attempt to learn our traditional martial art, Kabart. You are neither physically nor mentally ready to become a Monk. Ambition is good, but a wise warrior acknowledges his limitations. Continue your training and come see me again when you reach level 18. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-04.htm new file mode 100644 index 0000000000..660479ede8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-04.htm @@ -0,0 +1,3 @@ +Gantaki Zu Urutu:
+Don't you already have the Khavatari Totem? Take it to the Human kingdom and show it to any Orc high prefect. He will allow you to change your class to Monk. Tejakar Pa'agrio! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-05.htm new file mode 100644 index 0000000000..39a9bd53b3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-05.htm @@ -0,0 +1,4 @@ +Gantaki Zu Urutu:
+To become a Monk, you must possess the 2 scrolls containing the basic secrets of Kabart, the traditional Orc martial art. The first scroll is called the Fiery Spirit Scroll. To obtain it, seek out Khavatari Rosheek.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-06.htm new file mode 100644 index 0000000000..f02e29aae4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-06.htm @@ -0,0 +1,5 @@ +Gantaki Zu Urutu:
+As you know, Khavatari is a title bestowed on only the greatest Kabart martial art masters. Khavatari Rosheek left our village some time ago to further develop his skills. I have heard rumors that he is near the Frozen Waterfalls in the northern part of the Immortal Plateau.
+But if you him to teach you, it would be wise for you to offer him a gift to show your respect. Here, take this Pomegranate. Perform all the tasks he gives you, no matter how difficult, and he will reward you with the scroll, which you must then bring back to me.
+Ah, I almost neglected to tell you the most importatn thing: while you are taking the test to become a Monk, you must not use any weapons other than fist-type weapons or your bare hands! If you violate this rule, you will not be allowed to complete the test. DO not forget! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-07.html new file mode 100644 index 0000000000..2a00434867 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-07.html @@ -0,0 +1,3 @@ +Gantaki Zu Urutu:
+To obtain the Fiery Spirit Scroll, seek out Khavatari Rosheek near the Frozen Waterfall in the northern part of the Immortal Plateau. Give him the Pomegranate I gave you and follow all his instructions perfectly! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-08.html new file mode 100644 index 0000000000..74db53086a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-08.html @@ -0,0 +1,3 @@ +Gantaki Zu Urutu:
+You haven't obtained the Fiery Spirit Scroll yet? No wonder! Khavatari Rosheek, above all others, esteems the traditions of Kabart. He will not give the scroll to just anyone who asks! If you truly wish to become a Monk, you must steel yourself to the task and try again. Did you really think it would be easy?! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-09a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-09a.html new file mode 100644 index 0000000000..0cb90c2a8f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-09a.html @@ -0,0 +1,6 @@ +Gantaki Zu Urutu:
+Tejakar Oroca! You have brought the Fiery Spirit Scroll! Well done! Now you have the first of the 2 scrolls necessary to become an Orc Monk.
+There are two ways to find the second scroll. You may either obtain it from Prefect Kasman of the Human village of Gludin, or you may seek out Kasman's superior: his teacher, Khavatari Aren. What would you like to do?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-09b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-09b.html new file mode 100644 index 0000000000..7566dd2062 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-09b.html @@ -0,0 +1,4 @@ +Gantaki Zu Urutu:
+Then go to the Human land of Gludio and find Prefect Kasman in the village called Gludin. Show him this letter, and he will tell you how to obtain the scroll.
+May the sacred flame guide you to success! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-09c.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-09c.html new file mode 100644 index 0000000000..8fc10f0699 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-09c.html @@ -0,0 +1,5 @@ +Gantaki Zu Urutu:
+Ah, Khavatari Aren... That name has been almost forgotten for many years now.
+Not only did she teach Prefect Kasman, but Flame Successor Akkan as well. But she went into seclusion a long time ago, and Khavatari Hubai took her place.
+Khavatari Aren lives as a hermit near the Valley of the Lords. I don't know why she chose such a place, but if you seek her out she may still be willing to help you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-10.html new file mode 100644 index 0000000000..6ded5cf45a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-10.html @@ -0,0 +1,4 @@ +Gantaki Zu Urutu:
+You haven't left yet? Why do you delay? To find the second scroll, go to the Human land of Gludio and give this letter to Prefect Kasman in the village known as Gludin. He will tell you how to find the second scroll.
+Waste no more time! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-11.html new file mode 100644 index 0000000000..72a3d75330 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30587-11.html @@ -0,0 +1,3 @@ +Gantaki Zu Urutu:
+Ah, you have not yet obtained the second scroll? Ha ha! I well know that how difficult it is to do so. But if you cannot overcome this trial, you are certainly not fit to be a Monk. Steel yourself to the task at hand and try again! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-01.html new file mode 100644 index 0000000000..805a3d5de8 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-01.html @@ -0,0 +1,5 @@ +Khavatari Rosheek:
+It's a fledgling sent by Gantaki! How dare you disturb my meditation ...
+I don't want to associate with someone with no skill! Go catch the kasha bear with your bare hands! Then, pull out five claws and bring them back in this pouch! Until you finish this task, don't think of coming back!
+And take heed! If you use any other weapon besides your bare fists or hand-to-hand weapons, you are disqualified! A true monk must be able to fight without depending on weapons! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-02.html new file mode 100644 index 0000000000..159417f3cf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-02.html @@ -0,0 +1,3 @@ +Khavatari Rosheek:
+Didn't I tell you not to come back before you caught the kasha bear and pulled out five claws? Do not disturb my discipline -- just go hunt the bear! And take heed! If you use any other weapon besides your bare fists or combat weapons, you are disqualified! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-03.html new file mode 100644 index 0000000000..89be7178f6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-03.html @@ -0,0 +1,5 @@ +Khavatari Rosheek:
+Tejakar Oroka! Have you come back already?
+I'm sorry but I am meditating, so I do not have any time to deal with you! Go hunt the kasha bladespider. And bring back five blade-shaped talons in this pouch. Then I will especially put aside some time to teach you.
+I tell you again, but if you use any other weapon besides your bare fists or hand-to-hand weapons, you are disqualified! A true monk must be able to fight without depending on weapons! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-04.html new file mode 100644 index 0000000000..1dab2f766c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-04.html @@ -0,0 +1,3 @@ +Khavatari Rosheek:
+Stop bothering me and go catch kasha blade spiders with your bare fists and combat equipment only. Pull out their blade-shaped talons and bring me back five of them in the pouch that I gave you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-05.html new file mode 100644 index 0000000000..53a9b4de5d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-05.html @@ -0,0 +1,4 @@ +Khavatari Rosheek:
+Have you come back already? I was about to rest, but you've disturbed me. Don't be such a nuisance, go and kill the scarlet salamander and bring back its scales! Collect five scales in this pouch and bring them to me.
+Of course, you should not use anything other than your bare fists and combat equipment! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-06.html new file mode 100644 index 0000000000..1d68e4bf60 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-06.html @@ -0,0 +1,3 @@ +Khavatari Rosheek:
+Don't be such a nuisance! Capture the scarlet salamander with your bare fists and combat equipment and pluck out its scales. Bring back five scales in the pouch that I gave you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-07.html new file mode 100644 index 0000000000..dc753facb1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-07.html @@ -0,0 +1,5 @@ +Khavatari Rosheek:
+Very good! I haven't seen one with your guts in a long time. Actually, I have nothing to teach you that you have not already taught yourself. The flame stands for strong faith that wishes to become stronger and a fiery desire to achieve victory.
+I was testing whether you had the heart to abandon all desires and walk the path of the Monk who pursues only strength. This is the meaning of the Trial of Flame.
+Now take this! The Fiery Spirit Scroll! Take it and this letter and go back to Gantaki Zu Urutu. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-08.html new file mode 100644 index 0000000000..2879801630 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-08.html @@ -0,0 +1,3 @@ +Khavatari Rosheek:
+What are you waiting for? Take the Fiery Spirit Scroll and letter that I have written you and go to Gantaki Zu Urutu in the village! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-09.html new file mode 100644 index 0000000000..c85bc91ada --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30590-09.html @@ -0,0 +1,3 @@ +Khavatari Rosheek:
+Young fighter, you have not found the second scroll yet? Then you must strive all the harder! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30591-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30591-01.html new file mode 100644 index 0000000000..516a2f8c62 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30591-01.html @@ -0,0 +1,6 @@ +Khavatari Toruku:
+Come here, young Orc. What is this fig? Is it for me? I have not been able to drink one drop of water for more than a fortnight, so this will come in handy. Thank you!
+I see you are a Fighter that wishes to become a Monk. So, you have come to take the Trial of Steel from me! Steel is metal that has become harder in the flame! It refers to the training process of a Monk in reaching a higher level of strength.
+The trial is to test your strength against fighter levels of other races that live in Gludio. Find the Vuku Orc Fighter on Windmill Hill in the southern part of Gludin Village, the ratman warrior on the path to the ruins, the Langk Lizardman Warrior in the Langk Lizardmen Dwellings facing the southern coast, and the Felim Lizardman Warrior in the Fellmere Harvesting Grounds in the northern part of Gludin Village and knock them down! If you have gathered 3 tokens from each race, adding up to 12 tokens in all, put them in this purse and bring them back.
+Even if you fight a lower race, you could be defeated if you are absentminded. So keep your wits about you! And one thing more... you must not use any weapon during the trial, other than your bare fists or hand-to-hand weapons. A true Monk must be able to fight without depending on weapons! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30591-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30591-02.html new file mode 100644 index 0000000000..7ac4d59409 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30591-02.html @@ -0,0 +1,4 @@ +Khavatari Toruku:
+To complete the Trial of Steel, you must fight against fighters of various races. The opponents you must knock down are the Vuku Orc Fighter, ratman warrior, Langk Lizardman Warrior, and Felim warrior. Come back after you have collected three tokens from each race, for a total of 12 tokens.
+And, don't forget, you must not use any weapon during the trial other than your bare fists or hand-to-hand weapons. A true Monk must be able to fight without depending on weapons! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30591-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30591-03.html new file mode 100644 index 0000000000..e90fa68c61 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30591-03.html @@ -0,0 +1,4 @@ +Khavatari Toruku:
+Congratulations, young one, for passing the Trial of Steel! As iron becomes harder in the flame, continuous training will make us stronger. Etch this morale deep on your heart.
+I will give you the second scroll, the scroll of Steel will, that is needed to become a Monk. Take it and return to Prefect Kasman in the village of Gludin. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30591-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30591-04.html new file mode 100644 index 0000000000..5dd212067a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/30591-04.html @@ -0,0 +1,3 @@ +Khavatari Toruku:
+You haven't left yet? Take the Iron Will Scroll and go to Prefect Kasman of the village of Gludin. Then, you will receive the token needed to change profession. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/31979-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/31979-01.html new file mode 100644 index 0000000000..e57540417a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/31979-01.html @@ -0,0 +1,6 @@ +Seer Moira:
+What? You met Khavatari Aren?
+Docara Pa'agrio! Surprising indeed! I can't believe that you, a renegade Orc, met Khavatari Aren.....
+If you really met him, then prove it!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/31979-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/31979-02.html new file mode 100644 index 0000000000..3ac1e1801d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/31979-02.html @@ -0,0 +1,6 @@ +Cabart's Geukeu
+
What is Cabart's Geukeu?
+ + +
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/31979-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/31979-03.html new file mode 100644 index 0000000000..c9004c07dc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/31979-03.html @@ -0,0 +1,3 @@ +Seer Moira:
+You've done well! You're qualified, alright! Please accept this Khavatari Totem. If you take this to the High Prefect, he'll bestow the title of Orc Monk upon you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/31979-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/31979-04.html new file mode 100644 index 0000000000..1cd4f4e970 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/31979-04.html @@ -0,0 +1,3 @@ +Seer Moira:
+What? Did you really meet Khavatari Aren? Your answer sounds good, but it's the answer of someone who doesn't know what he is! Come back after you've given it more thought. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-01.html new file mode 100644 index 0000000000..9c6c6a5158 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-01.html @@ -0,0 +1,5 @@ +Khavatari Aren:
+So you are a monk apprentice in training... From the way you move, I'd guess you were trained under Flame Lord Kakai. Is he still in good health?
+Yes, it's true I too used to write secret scrolls, but that was a long time ago. Is that what you seek from me for now, young Orc?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-02.html new file mode 100644 index 0000000000..239e43a781 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-02.html @@ -0,0 +1,6 @@ +Khavatari Aren:
+Impressive! Your technique is strong for a novice! You remind me of myself as a young Orc...
+Hey, Toruku! Come here. See this novice? I have job for one of you. I'll let the two of you determine who should be given the assignment through a contest of combat skill. He's a real fighter, this novice, so be careful!
+Are you ready, novice?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-03.html new file mode 100644 index 0000000000..e58d6ce66e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-03.html @@ -0,0 +1,4 @@ +Khavatari Aren:
+Very well. I will attend to matters here. Go and exercise your Kabart skills on the Kasha Blade Spiders and Kasha Fang Spiders you find. If you kill them and bring back 6 of their fangs, I will accept this as a demonstration of your skill.
+You must fight them using only Kabart. Use no sword, spear or axe. Mark this well: if you use a weapon to obtain the fangs, I will know. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-04.html new file mode 100644 index 0000000000..aa93a2e003 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-04.html @@ -0,0 +1,3 @@ +Khavatari Aren:
+Go and engage the Kasha Blade Spiders and Kasha Fang Spiders you find using only your Kabart training. Bring back 6 of their fangs as evidence of victory, and I will acknowledge your skills. You must fight them using only Kabart. Use no sword, spear or axe. Mark this well: if you use a weapon to obtain the fangs, I will know. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-05.html new file mode 100644 index 0000000000..dd3b964250 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-05.html @@ -0,0 +1,7 @@ +Khavatari Aren:
+You have returned with the spider fangs, I perceive. How do I know? I saw your battle!
+How did I see it, you ask? The power of Kabart, my young friend! Through it, I can watch you - just like my totem, the spider web of Duda-Mara.
+You did very well. Now I will give you a more difficult job to test your worthiness.
+There are creatures called Baar Dre Vanul, who live south of the Immortal Plateau. If you defeat them and bring their horns to me, you will have proven your worth to be a monk.
+And yes, once again, you must fight using only Kabart. If you depend on weapons instead of your own skill, the path to Kabart will remain closed to you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-06.html new file mode 100644 index 0000000000..9b725298f0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-06.html @@ -0,0 +1,4 @@ +Khavatari Aren:
+There are creatures called Baar Dre Vanul who live south of the Immortal Plateau. A Necromancer called them forth. If you defeat them and bring their horns to me, you will have proven your worth to be a monk.
+And yes, once again, you must fight using only Kabart. If you depend on weapons instead of your own skill, the path to Kabart will remain closed to you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-07.html new file mode 100644 index 0000000000..4d02b90b82 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-07.html @@ -0,0 +1,6 @@ +Khavatari Aren:
+You have returned, and you bear the Baar Dre Vanul's horn.
+They are formidable opponents, the Baar Dre Vanul. That fact that you have triumphed is evidence of mastery in Kabart.
+Very good. I do not write secret scrolls any more, so all I can give you are my teachings.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-08.html new file mode 100644 index 0000000000..cc5b775fd4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-08.html @@ -0,0 +1,5 @@ +Khavatari Aren:
+Mastering the fighting skills of Kabart doesn't mean you've mastered Kabart itself. Receiving into your body the energy of nature and the power of totems...these also are part of true mastery. For that, you must view and learn many things, in an effort to understand their true nature.
+To understand the complete oneness with everything - that is true mastery of Kabart. Those who claim to have mastered Kabart merely act out the spirits of the totems, whereas those who have truly mastered Kabart become the totem itself. Do not forget this!
+Now, take this lesson with you, and go to Seer Moira in the Town of Schuttgart. If I vouch for your qualifications, he'll give you something you need. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-09.html new file mode 100644 index 0000000000..d4fcb28c2e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/32056-09.html @@ -0,0 +1,3 @@ +Khavatari Aren:
+The culmination of the art of Kabart is complete oneness. Now, take this lesson and go to Seer Moira in the Town of Schuttgart. If I vouch for your qualifications, he'll give you something you need. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/Q00415_PathOfTheOrcMonk.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/Q00415_PathOfTheOrcMonk.java new file mode 100644 index 0000000000..05d32acde7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00415_PathOfTheOrcMonk/Q00415_PathOfTheOrcMonk.java @@ -0,0 +1,705 @@ +/* + * 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.Q00415_PathOfTheOrcMonk; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance; +import com.l2jmobius.gameserver.model.items.type.WeaponType; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path Of The Orc Monk (415) + * @author ivantotov + */ +public final class Q00415_PathOfTheOrcMonk extends Quest +{ + // NPCs + private static final int PREFECT_KASMAN = 30501; + private static final int GANTAKI_ZU_URUTU = 30587; + private static final int KHAVATARI_ROSHEEK = 30590; + private static final int KHAVATARI_TORUKU = 30591; + private static final int SEER_MOIRA = 31979; // Careful with this id, might have changed during Chronicles. + private static final int KHAVATARI_AREN = 32056; // Careful with this id, might have changed during Chronicles. + // Items + private static final int POMEGRANATE = 1593; + private static final int LEATHER_POUCH_1ST = 1594; + private static final int LEATHER_POUCH_2ND = 1595; + private static final int LEATHER_POUCH_3RD = 1596; + private static final int LEATHER_POUCH_1ST_FULL = 1597; + private static final int LEATHER_POUCH_2ND_FULL = 1598; + private static final int LEATHER_POUCH_3RD_FULL = 1599; + private static final int KASHA_BEAR_CLAW = 1600; + private static final int KASHA_BLADE_SPIDER_TALON = 1601; + private static final int SCARLET_SALAMANDER_SCALE = 1602; + private static final int FIERY_SPIRIT_SCROLL = 1603; + private static final int ROSHEEKS_LETTER = 1604; + private static final int GANTAKIS_LETTRT_OF_RECOMMENDATION = 1605; + private static final int FIG = 1606; + private static final int LEATHER_POUCH_4TF = 1607; + private static final int LEATHER_POUCH_4TF_FULL = 1608; + private static final int VUKU_ORK_TUSK = 1609; + private static final int RATMAN_FANG = 1610; + private static final int LANGK_LIZARDMAN_TOOTH = 1611; + private static final int FELIM_LIZARDMAN_TOOTH = 1612; + private static final int IRON_WILL_SCROLL = 1613; + private static final int TORUKUS_LETTER = 1614; + private static final int KASHA_SPIDERS_TOOTH = 8545; + private static final int HORN_OF_BAAR_DRE_VANUL = 8546; + // Reward + private static final int KHAVATARI_TOTEM = 1615; + // Monster + private static final int FELIM_LIZARDMAN_WARRIOR = 20014; + private static final int VUKU_ORC_FIGHTER = 20017; + private static final int LANGK_LIZZARDMAN_WARRIOR = 20024; + private static final int RATMAN_WARRIOR = 20359; + private static final int SCARLET_SALAMANDER = 20415; + private static final int KASHA_FANG_SPIDER = 20476; + private static final int KASHA_BLADE_SPIDER = 20478; + private static final int KASHA_BEAR = 20479; + private static final int BAAR_DRE_VANUL = 21118; + // Misc + private static final int MIN_LEVEL = 18; + + public Q00415_PathOfTheOrcMonk() + { + super(415); + addStartNpc(GANTAKI_ZU_URUTU); + addTalkId(GANTAKI_ZU_URUTU, PREFECT_KASMAN, KHAVATARI_ROSHEEK, KHAVATARI_TORUKU, SEER_MOIRA, KHAVATARI_AREN); + addAttackId(FELIM_LIZARDMAN_WARRIOR, VUKU_ORC_FIGHTER, LANGK_LIZZARDMAN_WARRIOR, RATMAN_WARRIOR, SCARLET_SALAMANDER, KASHA_FANG_SPIDER, KASHA_BLADE_SPIDER, KASHA_BEAR, BAAR_DRE_VANUL); + addKillId(FELIM_LIZARDMAN_WARRIOR, VUKU_ORC_FIGHTER, LANGK_LIZZARDMAN_WARRIOR, RATMAN_WARRIOR, SCARLET_SALAMANDER, KASHA_FANG_SPIDER, KASHA_BLADE_SPIDER, KASHA_BEAR, BAAR_DRE_VANUL); + registerQuestItems(POMEGRANATE, LEATHER_POUCH_1ST, LEATHER_POUCH_2ND, LEATHER_POUCH_3RD, LEATHER_POUCH_1ST_FULL, LEATHER_POUCH_2ND_FULL, LEATHER_POUCH_3RD_FULL, KASHA_BEAR_CLAW, KASHA_BLADE_SPIDER_TALON, SCARLET_SALAMANDER_SCALE, FIERY_SPIRIT_SCROLL, ROSHEEKS_LETTER, GANTAKIS_LETTRT_OF_RECOMMENDATION, FIG, LEATHER_POUCH_4TF, LEATHER_POUCH_4TF_FULL, VUKU_ORK_TUSK, RATMAN_FANG, LANGK_LIZARDMAN_TOOTH, FELIM_LIZARDMAN_TOOTH, IRON_WILL_SCROLL, TORUKUS_LETTER, KASHA_SPIDERS_TOOTH, HORN_OF_BAAR_DRE_VANUL); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() == ClassId.ORC_FIGHTER) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (hasQuestItems(player, KHAVATARI_TOTEM)) + { + htmltext = "30587-04.htm"; + } + else + { + htmltext = "30587-05.htm"; + } + } + else + { + htmltext = "30587-03.htm"; + } + } + else if (player.getClassId() == ClassId.ORC_MONK) + { + htmltext = "30587-02a.htm"; + } + else + { + htmltext = "30587-02.htm"; + } + break; + } + case "30587-06.htm": + { + qs.startQuest(); + giveItems(player, POMEGRANATE, 1); + htmltext = event; + break; + } + case "30587-09b.html": + { + if (hasQuestItems(player, FIERY_SPIRIT_SCROLL, ROSHEEKS_LETTER)) + { + takeItems(player, ROSHEEKS_LETTER, 1); + giveItems(player, GANTAKIS_LETTRT_OF_RECOMMENDATION, 1); + qs.setCond(9); + htmltext = event; + } + break; + } + case "30587-09c.html": + { + if (hasQuestItems(player, FIERY_SPIRIT_SCROLL, ROSHEEKS_LETTER)) + { + takeItems(player, ROSHEEKS_LETTER, 1); + qs.setMemoState(2); + qs.setCond(14); + htmltext = event; + } + break; + } + case "31979-02.html": + { + if (qs.isMemoState(5)) + { + htmltext = event; + } + break; + } + case "31979-03.html": + { + if (qs.isMemoState(5)) + { + giveAdena(player, 81900, true); + giveItems(player, KHAVATARI_TOTEM, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 160267, 12646); + } + else if (level == 19) + { + addExpAndSp(player, 228064, 15995); + } + else + { + addExpAndSp(player, 295862, 19344); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = event; + } + break; + } + case "31979-04.html": + { + if (qs.isMemoState(5)) + { + qs.setCond(20); + htmltext = event; + } + break; + } + case "32056-02.html": + { + if (qs.isMemoState(2)) + { + htmltext = event; + } + break; + } + case "32056-03.html": + { + if (qs.isMemoState(2)) + { + qs.setMemoState(3); + qs.setCond(15); + htmltext = event; + } + break; + } + case "32056-08.html": + { + if (qs.isMemoState(4) && (getQuestItemsCount(player, HORN_OF_BAAR_DRE_VANUL) >= 1)) + { + takeItems(player, HORN_OF_BAAR_DRE_VANUL, -1); + qs.setMemoState(5); + qs.setCond(19); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onAttack(L2Npc npc, L2PcInstance attacker, int damage, boolean isSummon) + { + final QuestState qs = getQuestState(attacker, false); + if ((qs != null) && qs.isStarted()) + { + switch (npc.getScriptValue()) + { + case 0: + { + if (!checkWeapon(attacker)) + { + npc.setScriptValue(2); + } + else + { + npc.setScriptValue(1); + npc.getVariables().set("Q00415_last_attacker", attacker.getObjectId()); + } + break; + } + case 1: + { + if ((npc.getVariables().getInt("Q00415_last_attacker") != attacker.getObjectId()) || !checkWeapon(attacker)) + { + npc.setScriptValue(2); + } + break; + } + } + } + return super.onAttack(npc, attacker, damage, isSummon); + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && npc.isScriptValue(1) && Util.checkIfInRange(1500, npc, killer, true)) + { + final long ItemCount = getQuestItemsCount(killer, RATMAN_FANG, LANGK_LIZARDMAN_TOOTH, FELIM_LIZARDMAN_TOOTH, VUKU_ORK_TUSK); + switch (npc.getId()) + { + case FELIM_LIZARDMAN_WARRIOR: + { + if (hasQuestItems(killer, LEATHER_POUCH_4TF) && (getQuestItemsCount(killer, FELIM_LIZARDMAN_TOOTH) < 3)) + { + if (ItemCount >= 11) + { + takeItems(killer, LEATHER_POUCH_4TF, 1); + giveItems(killer, LEATHER_POUCH_4TF_FULL, 1); + takeItems(killer, VUKU_ORK_TUSK, -1); + takeItems(killer, RATMAN_FANG, -1); + takeItems(killer, LANGK_LIZARDMAN_TOOTH, -1); + takeItems(killer, FELIM_LIZARDMAN_TOOTH, -1); + qs.setCond(12, true); + } + else + { + giveItems(killer, FELIM_LIZARDMAN_TOOTH, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case VUKU_ORC_FIGHTER: + { + if (hasQuestItems(killer, LEATHER_POUCH_4TF) && (getQuestItemsCount(killer, VUKU_ORK_TUSK) < 3)) + { + if (ItemCount >= 11) + { + takeItems(killer, LEATHER_POUCH_4TF, 1); + giveItems(killer, LEATHER_POUCH_4TF_FULL, 1); + takeItems(killer, VUKU_ORK_TUSK, -1); + takeItems(killer, RATMAN_FANG, -1); + takeItems(killer, LANGK_LIZARDMAN_TOOTH, -1); + takeItems(killer, FELIM_LIZARDMAN_TOOTH, -1); + qs.setCond(12, true); + } + else + { + giveItems(killer, VUKU_ORK_TUSK, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case LANGK_LIZZARDMAN_WARRIOR: + { + if (hasQuestItems(killer, LEATHER_POUCH_4TF) && (getQuestItemsCount(killer, LANGK_LIZARDMAN_TOOTH) < 3)) + { + if (ItemCount >= 11) + { + takeItems(killer, LEATHER_POUCH_4TF, 1); + giveItems(killer, LEATHER_POUCH_4TF_FULL, 1); + takeItems(killer, VUKU_ORK_TUSK, -1); + takeItems(killer, RATMAN_FANG, -1); + takeItems(killer, LANGK_LIZARDMAN_TOOTH, -1); + takeItems(killer, FELIM_LIZARDMAN_TOOTH, -1); + qs.setCond(12, true); + } + else + { + giveItems(killer, LANGK_LIZARDMAN_TOOTH, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case RATMAN_WARRIOR: + { + if (hasQuestItems(killer, LEATHER_POUCH_4TF) && (getQuestItemsCount(killer, RATMAN_FANG) < 3)) + { + if (ItemCount >= 11) + { + takeItems(killer, LEATHER_POUCH_4TF, 1); + giveItems(killer, LEATHER_POUCH_4TF_FULL, 1); + takeItems(killer, VUKU_ORK_TUSK, -1); + takeItems(killer, RATMAN_FANG, -1); + takeItems(killer, LANGK_LIZARDMAN_TOOTH, -1); + takeItems(killer, FELIM_LIZARDMAN_TOOTH, -1); + qs.setCond(12, true); + } + else + { + giveItems(killer, RATMAN_FANG, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case SCARLET_SALAMANDER: + { + if (hasQuestItems(killer, LEATHER_POUCH_3RD)) + { + if (getQuestItemsCount(killer, SCARLET_SALAMANDER_SCALE) == 4) + { + takeItems(killer, LEATHER_POUCH_3RD, 1); + giveItems(killer, LEATHER_POUCH_3RD_FULL, 1); + takeItems(killer, SCARLET_SALAMANDER_SCALE, -1); + qs.setCond(7, true); + } + else + { + giveItems(killer, SCARLET_SALAMANDER_SCALE, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case KASHA_FANG_SPIDER: + { + if (qs.isMemoState(3) && (getQuestItemsCount(killer, KASHA_SPIDERS_TOOTH) < 6)) + { + if (getRandom(100) < 70) + { + giveItems(killer, KASHA_SPIDERS_TOOTH, 1); + if (getQuestItemsCount(killer, KASHA_SPIDERS_TOOTH) >= 6) + { + qs.setCond(16, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case KASHA_BLADE_SPIDER: + { + if (hasQuestItems(killer, LEATHER_POUCH_2ND)) + { + if (getQuestItemsCount(killer, KASHA_BLADE_SPIDER_TALON) == 4) + { + takeItems(killer, LEATHER_POUCH_2ND, 1); + giveItems(killer, LEATHER_POUCH_2ND_FULL, 1); + takeItems(killer, KASHA_BLADE_SPIDER_TALON, -1); + qs.setCond(5, true); + } + else + { + giveItems(killer, KASHA_BLADE_SPIDER_TALON, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + else if (qs.isMemoState(3) && (getQuestItemsCount(killer, KASHA_SPIDERS_TOOTH) < 6)) + { + if (getRandom(100) < 70) + { + giveItems(killer, KASHA_SPIDERS_TOOTH, 1); + if (getQuestItemsCount(killer, KASHA_SPIDERS_TOOTH) == 6) + { + qs.setCond(16, true); + } + else + { + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case KASHA_BEAR: + { + if (hasQuestItems(killer, LEATHER_POUCH_1ST)) + { + if (getQuestItemsCount(killer, KASHA_BEAR_CLAW) == 4) + { + takeItems(killer, LEATHER_POUCH_1ST, 1); + giveItems(killer, LEATHER_POUCH_1ST_FULL, 1); + takeItems(killer, KASHA_BEAR_CLAW, -1); + qs.setCond(3, true); + } + else + { + giveItems(killer, KASHA_BEAR_CLAW, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + case BAAR_DRE_VANUL: + { + if (qs.isMemoState(4) && !hasQuestItems(killer, HORN_OF_BAAR_DRE_VANUL)) + { + if (getRandom(100) < 90) + { + giveItems(killer, HORN_OF_BAAR_DRE_VANUL, 1); + qs.setCond(18, true); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + final int memoState = qs.getMemoState(); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == GANTAKI_ZU_URUTU) + { + htmltext = "30587-01.htm"; + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case GANTAKI_ZU_URUTU: + { + final long letterCount = getQuestItemsCount(player, LEATHER_POUCH_1ST, LEATHER_POUCH_2ND, LEATHER_POUCH_3RD, LEATHER_POUCH_1ST_FULL, LEATHER_POUCH_2ND_FULL, LEATHER_POUCH_3RD_FULL); + if (memoState == 2) + { + htmltext = "30587-09c.html"; + } + else if (hasQuestItems(player, POMEGRANATE) && !hasAtLeastOneQuestItem(player, FIERY_SPIRIT_SCROLL, GANTAKIS_LETTRT_OF_RECOMMENDATION, ROSHEEKS_LETTER) && (letterCount == 0)) + { + htmltext = "30587-07.html"; + } + else if (!hasAtLeastOneQuestItem(player, FIERY_SPIRIT_SCROLL, POMEGRANATE, GANTAKIS_LETTRT_OF_RECOMMENDATION, ROSHEEKS_LETTER) && (letterCount == 1)) + { + htmltext = "30587-08.html"; + } + else if (hasQuestItems(player, FIERY_SPIRIT_SCROLL, ROSHEEKS_LETTER) && !hasAtLeastOneQuestItem(player, POMEGRANATE, GANTAKIS_LETTRT_OF_RECOMMENDATION) && (letterCount == 0)) + { + htmltext = "30587-09a.html"; + } + else if (memoState < 2) + { + if (hasQuestItems(player, FIERY_SPIRIT_SCROLL, GANTAKIS_LETTRT_OF_RECOMMENDATION) && !hasAtLeastOneQuestItem(player, POMEGRANATE, ROSHEEKS_LETTER) && (letterCount == 0)) + { + htmltext = "30587-10.html"; + } + else if (hasQuestItems(player, FIERY_SPIRIT_SCROLL) && !hasAtLeastOneQuestItem(player, POMEGRANATE, GANTAKIS_LETTRT_OF_RECOMMENDATION, ROSHEEKS_LETTER) && (letterCount == 0)) + { + htmltext = "30587-11.html"; + } + } + break; + } + case PREFECT_KASMAN: + { + if (hasQuestItems(player, GANTAKIS_LETTRT_OF_RECOMMENDATION)) + { + takeItems(player, GANTAKIS_LETTRT_OF_RECOMMENDATION, 1); + giveItems(player, FIG, 1); + qs.setCond(10); + htmltext = "30501-01.html"; + } + else if (hasQuestItems(player, FIG) && !hasAtLeastOneQuestItem(player, LEATHER_POUCH_4TF, LEATHER_POUCH_4TF_FULL)) + { + htmltext = "30501-02.html"; + } + else if (!hasQuestItems(player, FIG) && hasAtLeastOneQuestItem(player, LEATHER_POUCH_4TF, LEATHER_POUCH_4TF_FULL)) + { + htmltext = "30501-03.html"; + } + else if (hasQuestItems(player, IRON_WILL_SCROLL)) + { + giveAdena(player, 163800, true); + giveItems(player, KHAVATARI_TOTEM, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 25292); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 31990); + } + else + { + addExpAndSp(player, 591724, 38688); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30501-04.html"; + } + break; + } + case KHAVATARI_ROSHEEK: + { + if (hasQuestItems(player, POMEGRANATE)) + { + takeItems(player, POMEGRANATE, 1); + giveItems(player, LEATHER_POUCH_1ST, 1); + qs.setCond(2); + htmltext = "30590-01.html"; + } + else if (hasQuestItems(player, LEATHER_POUCH_1ST) && !hasQuestItems(player, LEATHER_POUCH_1ST_FULL)) + { + htmltext = "30590-02.html"; + } + else if (!hasQuestItems(player, LEATHER_POUCH_1ST) && hasQuestItems(player, LEATHER_POUCH_1ST_FULL)) + { + giveItems(player, LEATHER_POUCH_2ND, 1); + takeItems(player, LEATHER_POUCH_1ST_FULL, 1); + qs.setCond(4); + htmltext = "30590-03.html"; + } + else if (hasQuestItems(player, LEATHER_POUCH_2ND) && !hasQuestItems(player, LEATHER_POUCH_2ND_FULL)) + { + htmltext = "30590-04.html"; + } + else if (!hasQuestItems(player, LEATHER_POUCH_2ND) && hasQuestItems(player, LEATHER_POUCH_2ND_FULL)) + { + giveItems(player, LEATHER_POUCH_3RD, 1); + takeItems(player, LEATHER_POUCH_2ND_FULL, 1); + qs.setCond(6); + htmltext = "30590-05.html"; + } + else if (hasQuestItems(player, LEATHER_POUCH_3RD) && !hasQuestItems(player, LEATHER_POUCH_3RD_FULL)) + { + htmltext = "30590-06.html"; + } + else if (!hasQuestItems(player, LEATHER_POUCH_3RD) && hasQuestItems(player, LEATHER_POUCH_3RD_FULL)) + { + takeItems(player, LEATHER_POUCH_3RD_FULL, 1); + giveItems(player, FIERY_SPIRIT_SCROLL, 1); + giveItems(player, ROSHEEKS_LETTER, 1); + qs.setCond(8); + htmltext = "30590-07.html"; + } + else if (hasQuestItems(player, ROSHEEKS_LETTER, FIERY_SPIRIT_SCROLL)) + { + htmltext = "30590-08.html"; + } + else if (!hasQuestItems(player, ROSHEEKS_LETTER) && hasQuestItems(player, FIERY_SPIRIT_SCROLL)) + { + htmltext = "30590-09.html"; + } + break; + } + case KHAVATARI_TORUKU: + { + if (hasQuestItems(player, FIG)) + { + takeItems(player, FIG, 1); + giveItems(player, LEATHER_POUCH_4TF, 1); + qs.setCond(11); + htmltext = "30591-01.html"; + } + else if (hasQuestItems(player, LEATHER_POUCH_4TF) && !hasQuestItems(player, LEATHER_POUCH_4TF_FULL)) + { + htmltext = "30591-02.html"; + } + else if (!hasQuestItems(player, LEATHER_POUCH_4TF) && hasQuestItems(player, LEATHER_POUCH_4TF_FULL)) + { + takeItems(player, LEATHER_POUCH_4TF_FULL, 1); + giveItems(player, IRON_WILL_SCROLL, 1); + giveItems(player, TORUKUS_LETTER, 1); + qs.setCond(13); + htmltext = "30591-03.html"; + } + else if (hasQuestItems(player, IRON_WILL_SCROLL, TORUKUS_LETTER)) + { + htmltext = "30591-04.html"; + } + break; + } + case SEER_MOIRA: + { + if (memoState == 5) + { + htmltext = "31979-01.html"; + } + break; + } + case KHAVATARI_AREN: + { + if (memoState == 2) + { + htmltext = "32056-01.html"; + } + else if (memoState == 3) + { + if (getQuestItemsCount(player, KASHA_SPIDERS_TOOTH) < 6) + { + htmltext = "32056-04.html"; + } + else + { + takeItems(player, KASHA_SPIDERS_TOOTH, -1); + qs.setMemoState(4); + qs.setCond(17); + htmltext = "32056-05.html"; + } + } + else if (memoState == 4) + { + if (!hasQuestItems(player, HORN_OF_BAAR_DRE_VANUL)) + { + htmltext = "32056-06.html"; + } + else + { + htmltext = "32056-07.html"; + } + } + else if (memoState == 5) + { + htmltext = "32056-09.html"; + } + break; + } + } + } + return htmltext; + } + + private static boolean checkWeapon(L2PcInstance player) + { + L2ItemInstance weapon = player.getActiveWeaponInstance(); + return ((weapon == null) || (weapon.getItemType() == WeaponType.FIST) || (weapon.getItemType() == WeaponType.DUALFIST)); + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-01.html new file mode 100644 index 0000000000..9dbe9af048 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-01.html @@ -0,0 +1,6 @@ +Seer Umos:
+To meet an Orc brother in such a foreign place as this, I am truly glad to see you. From Tataru's letter, I see you have received the language of flame from the Hestui Totem Spirit. You have passed the first step in becoming an Orc shaman.
+However, to become a true Orc Shaman, you need more than just the ability to speak the language of the spirits. To control the spirits and rule their power, you must be able to shout out their names.
+However, I cannot teach you the ninety-nine names of the spirits nor are they recorded anywhere. To learn them you must meet the Duda-Mara Totem Spirit, which is called the "one that holds names." The spider web of time and space that he has spun meets various places in the continent, and one of those places is Gludio.
+Before you meet the Duda-Mara Totem Spirit, you must prepare some things. Hunt the grizzly bear which lives in Gludio and bring back its blood. When you have collected three full bottles of blood, then bring them back to me. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-02.html new file mode 100644 index 0000000000..e26269cd73 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-02.html @@ -0,0 +1,3 @@ +Seer Umos:
+As I already explained, you must prepare something before meeting the Duda-Mara Totem Spirit. Hunt the grizzly bear that lives in Gludio and bring back its blood. If you collect enough to fill three bottles, bring it back to me. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-03.html new file mode 100644 index 0000000000..33b83f76ec --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-03.html @@ -0,0 +1,5 @@ +Seer Umos:
+I will put the grizzly's blood you have brought in this cauldron. Take this to the Duda-Mara Totem Spirit. If it tries to threaten you, quickly offer the cauldron as a gift. If you are a single second late, you may spend eternity tied up in its spider web.
+When you offer the blood as a gift, ask to be taught about the names of the spirits ... You must keep this in mind.
+The totem spirit is located north of the Arena in Gludin Village. Well then, I hope you return having learned the secret of the spirits. May the divine protection of flame be with you. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-04.html new file mode 100644 index 0000000000..7d7daf1093 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-04.html @@ -0,0 +1,3 @@ +Seer Umos:
+I see you have not left yet. Find the Duda-Mara Totem Spirit and learn the names of the spirits. Only then, will you acquire the true power of a shaman and be able to change profession to an Orc Shaman. The totem spirit is located north of the Arena in Gludin Village. Dejakyar Lamme! May the protection of flame be with you. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-05.html new file mode 100644 index 0000000000..cc5cb19c43 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-05.html @@ -0,0 +1,3 @@ +Seer Umos:
+The Duda-Mara Totem Spirit will not teach you the names of the spirits without receiving anything in return. Even though it is difficult, you must complete the task that the totem spirit asks you. Only then will you be able to learn the hidden names of the spirits. Dejakyar Lamme! May the protection of flame be with you. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-06.html new file mode 100644 index 0000000000..1626a71320 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-06.html @@ -0,0 +1,4 @@ +Seer Umos:
+Tejakar Pa'agrio! You have safely returned. And you have brought the blood of the totem spirit. Congratulations! Now, after you perform the ritual of drinking the totem spirit's blood, you will be able to call the names of the ninety-nine spirits. Then you will have the power to become a true Shaman.
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-07.html new file mode 100644 index 0000000000..30cb459de0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30502-07.html @@ -0,0 +1,4 @@ +Seer Umos:
+All those that manage the names of spirits, those that spin the spider web of time and space, we receive the secret of the spirits contained in the blood of the Duda-Mara Totem Spirit. You, young shaman, have received the true authority of flame to be able to call the names of spirits and control their power.
+Now take this mask. It is a token that shows you have earned the qualifications to become a shaman. Congratulations, singer of chants! Take the mask and go to the high prefect to change profession to Orc Shaman. Tejakar Pa'agrio! May the flame guide you to the path of righteousness. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-01.htm new file mode 100644 index 0000000000..9ee073d29a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-01.htm @@ -0,0 +1,4 @@ +Tataru Zu Hestui:
+An Orc Mystic acts as an intermediary between this world and the spirit world, supplicating the spirits for the power to command nature. That is how we breathe power into our allies and cure even the most grievous wounds of battle. Even our enemies quake before this mighty power!
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-02.htm new file mode 100644 index 0000000000..a6de154996 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-02.htm @@ -0,0 +1,3 @@ +Tataru Zu Hestui:
+You are already an Orc Shaman! Why do you waste your time here? Your path lies elsewhere! + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-03.htm new file mode 100644 index 0000000000..fc35dd0d97 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-03.htm @@ -0,0 +1,3 @@ +Tataru Zu Hestui:
+We Orc Shamans perform miracles with the authority of fire -- we do not teach this power lightly! Only Orc Mystics may be permitted to seek the secret of the eternal flame. You do not meet the qualifications. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-04.htm new file mode 100644 index 0000000000..3467e5b6fd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-04.htm @@ -0,0 +1,4 @@ +Tataru Zu Hestui:
+An Orc Mystic must ask the spirits to lend him some of their power, while an Orc Shaman uses the authority of Pa'agrio to actually control them. But you have not yet met the requirements to wield that authority.
+Dedicate yourself to the task! Return to me when you have reached level 20. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-05.htm new file mode 100644 index 0000000000..253b3aacda --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-05.htm @@ -0,0 +1,4 @@ +Tataru Zu Hestui:
+Have you not already acquired the Mask of Medium? It is the token that proves your readiness to become an Orc Shaman.
+Travel now to the Human lands and show it to the High Prefect. Then he will confer on you the title of Orc Shaman. Tejakar Pa'agrio! May the powers of fire be with you! + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-06.htm new file mode 100644 index 0000000000..e2a40036ed --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-06.htm @@ -0,0 +1,4 @@ +Tataru Zu Hestui:
+To master the authority of flame and truly govern the spirits, you must learn 2 things. First, you must learn the language of flame, which is the language of the spirits, in order to communicate with them. Second, you must learn the names of the 99 spirits in order to acquire power over them. Unless you accomplish both tasks, you cannot become a true Orc Shaman.
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-07.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-07.htm new file mode 100644 index 0000000000..146282fc11 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-07.htm @@ -0,0 +1,5 @@ +Tataru Zu Hestui:
+The language of flame cannot be taught, only learned. Confused? Ha!
+If you wish to learn the language of flame, my young friend, you must summon the Hestui Totem Spirit. The spirit, who takes the form of a Kasha Bear, symbolizes dignity and wisdom.
+Before attempting the summoning, however, you must first bring me a Kasha Bear Pelt and Kasha Bladespider Husk. You must also hunt the Scarlet Salamander and obtain one of its Fiery Eggs. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-08.html new file mode 100644 index 0000000000..18834f966d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-08.html @@ -0,0 +1,3 @@ +Tataru Zu Hestui:
+Why do you hesitate? If you wish to summon the Hestui Totem Spirit, bring me a Kasha Bear Pelt and Kasha Bladespider Husk. Also, obtain a Fiery Egg from the Scarlet Salamander! + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-09.html new file mode 100644 index 0000000000..d146f32200 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-09.html @@ -0,0 +1,5 @@ +Tataru Zu Hestui:
+Now I will make you a totem mask from the Kasha Bear Pelt and Kasha Bladespider Husk you brought. It will enable you to learn the language of flame when you meet our Hestui Totem Spirit.
+The Fiery Egg you obtained from the Scarlet Salamander contains an unborn spirit whose existence is not yet ordained. It is truly a valuable item, fit to offer to the Totem Spirit as a gift.
+Now go to the Ruins south of the Temple of Pa'agrio and seek the Hestui Totem Spirit. Dejakyar Lamme! May the eternal flame guide your path. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-10.html new file mode 100644 index 0000000000..abcaa13411 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-10.html @@ -0,0 +1,3 @@ +Tataru Zu Hestui:
+Now that you have prepared the Hestui Mask and the Fiery Egg, seek the Hestui Totem Spirit at the Ruins south of the Temple of Pa'agrio. Dejakyar Lamme! May the eternal flame guide your path. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-11.html new file mode 100644 index 0000000000..11a1280c12 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-11.html @@ -0,0 +1,4 @@ +Tataru Zu Hestui:
+Dejakyar Lamme! You have brought the Claw of the Totem Spirit! Magnificent! Young Mystic, now we shall perform a ritual in which we prick your tongue with the claw. Then you shall be able to speak the language of flame!
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-12.html new file mode 100644 index 0000000000..c0bb9305f7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-12.html @@ -0,0 +1,6 @@ +Tataru Zu Hestui:
+Thanks to the great Hestui Totem Spirit, you have mastered the secret language of flame!
+Now you can communicate with the spirits -- but you cannot yet command them. If you wish to do so, you must either learn the Names of the 99 Spirits or acquire the Wisdom of the 99 Spirits. Which method will you choose?
+ + + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-13.html new file mode 100644 index 0000000000..42262cf169 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-13.html @@ -0,0 +1,3 @@ +Tataru Zu Hestui:
+You wish to learn the Names of the 99 Spirits? Then go to Gludin Village in the Human land of Gludio and show this letter of recommendation to Seer Umos. He will tell you what you must do next. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-14.html new file mode 100644 index 0000000000..080106ed17 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-14.html @@ -0,0 +1,3 @@ +Tataru Zu Hestui:
+You wish to acquire the Wisdom of the 99 Spirits? Then seek Seer Moira in the Town of Schuttgart beyond the Valley of the Lords to discover you what you must do. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-15.html new file mode 100644 index 0000000000..4eda2ee761 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-15.html @@ -0,0 +1,3 @@ +Tataru Zu Hestui:
+You have done well in learning the language of flame, young Mystic. Now you must journey to the Human land of Gludio to learn the Names of the 99 Spirits. Seek Seer Umos in Gludin Village to discover what you must do. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-16.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-16.html new file mode 100644 index 0000000000..f66fb34856 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30585-16.html @@ -0,0 +1,3 @@ +Tataru Zu Hestui:
+Though you have learned the language of flame, unless you know the Names of the 99 Spirits you will not be able to control them. You must pass this trial to become a true Shaman, so steel yourself for the perils ahead. Dejakyar Lamme! May the eternal flame protect you! + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30592-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30592-01.html new file mode 100644 index 0000000000..eb9e2db1ed --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30592-01.html @@ -0,0 +1,4 @@ +Hestui Totem Spirit:
+... growl ... Who dares to speak to me? I have poor eyesight so I cannot see you well, but I can smell ... You smell like a shaman! You are no doubt one who has come to steal the secrets of the spirits! Go away, before I bite off your head and swallow your heart!
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30592-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30592-02.html new file mode 100644 index 0000000000..69081e0c8e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30592-02.html @@ -0,0 +1,5 @@ +Hestui Totem Spirit:
+... growl ... Hmm ... Come closer! Looking at your face ... No doubt you are a descendant of Hestui! Yes, yes ... The offspring of the kasha bear are always welcome!
+... growl ... I'm sure you have come to learn the language of flame. It is one of the secrets you must learn to communicate with the spirits. Of course, I could teach it to you, but ... My young Orc ... What can you give me in return for my teachings?
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30592-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30592-03.html new file mode 100644 index 0000000000..5070e7b335 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30592-03.html @@ -0,0 +1,5 @@ +Hestui Totem Spirit:
+... Why, isn't this the fiery egg! Where did you find such a valuable item? I, the guardian spirit of the Hestui, am greatly pleased with your gift ...! I will watch over the egg with delight, waiting for the birth of a new flame spirit ... Will it be a bird of flame? Or a bright blazing lizard of fire? Indeed, I am curious!
+... growl ... Then I will give you a gift in return. Take this claw ... If you prick your tongue with it and let the blood run, you will be able to speak the language of the spirits ... Take it to Tataru Zu Hestui and perform the ritual.
+... growl ... Well then, may the blessing of the guardian spirits be with you, offspring of Hestui! + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30592-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30592-04.html new file mode 100644 index 0000000000..ecf2563cdf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30592-04.html @@ -0,0 +1,3 @@ +Hestui Totem Spirit:
+... growl ... Young Orc ... Take the claw that I gave you to Tataru Zu Hestui and perform this ritual: if you prick your tongue with the claw and perform a ritual that draws blood, when you will be able to speak the language of flame ... + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30592-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30592-05.html new file mode 100644 index 0000000000..6620aa5763 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30592-05.html @@ -0,0 +1,3 @@ +Hestui Totem Spirit:
+... growl ... To become a true Shaman, it is not enough to speak the language of flame ... Young Orc, if you truly wish to control the spirits you must learn the names of the ninety-nine different spirits ... Go and speak with one of my brothers, the Duda-Mara Totem Spirit, who is known as the "one who holds the names." + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-01.html new file mode 100644 index 0000000000..49babcf25e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-01.html @@ -0,0 +1,5 @@ +Duda-Mara Totem Spirit:
+Oh-ho! To meet the offspring of Pa'agrio in such a remote land! What do I call you?
+Wait, are you a Shaman that can speak the language of spirits? You must have come to steal the secret of spirits away from me? Go away! If you do not want to be tied up tight in my web and hung for all eternity, begone!
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-02.html new file mode 100644 index 0000000000..5bf87edc76 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-02.html @@ -0,0 +1,6 @@ +Duda-Mara Totem Spirit:
+... Didn't I tell you to go away ...!
+Hmm ... Wait ...! What is that sweet smell? Such a sweet smell comes from that cauldron! The sweet smell of blood ... You are giving this to me? Thank you ...!
+Mmmm ... mmm ... . So, young shaman of Pa'agrio, have you come to me to learn the names of the ninety-nine spirits?
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-03.html new file mode 100644 index 0000000000..a07ed4efdf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-03.html @@ -0,0 +1,6 @@ +Duda-Mara Totem Spirit:
+... If you want, I will teach you ... But I must ask a favor in return ...
+... One of the evil spirits I sealed in my web of space and time has escaped ... I have come all the way here to Gludio to catch that scoundrel ... Impertinently, it is hiding in the body of my offspring ...!
+Poison spiders, arachnid trackers, all my adorable children ... The Durka Spirit that I seek is hidden in my children's bodies.
+... You must hunt spiders and make it reveal itself ... Take this spider web of space and time that I have spun. When you have pinned the Durka Spirit down, seal it in this net and bring it to me. Then I will teach you what you wish to learn. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-04.html new file mode 100644 index 0000000000..51e6eb4d9c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-04.html @@ -0,0 +1,3 @@ +Duda-Mara Totem Spirit:
+... If you capture the Durka Spirit that escaped from my web, I will teach you the names of the spirits ... However, the scoundrel is hiding in the bodies of my precious children, the poison spiders and arachnid trackers! + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-05.html new file mode 100644 index 0000000000..137f3da02d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-05.html @@ -0,0 +1,5 @@ +Duda-Mara Totem Spirit:
+Well done indeed, young shaman. I will firmly seal it away so it does not escape a second time from my web to spread evil forces in the world ...
+Did you know, all the spirits that move the world with unseen powers were caught in my web at one time or another. As the price for freeing them, I asked for their names. That is how I came to know the names of the ninety-nine spirits.
+The name of all the spirits is contained in a drop of blood from the tip of my foot. I will give this to you. Take it to Seer Umos and perform a ritual with the blood in your mouth to receive the secret of the spirits. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-06.html new file mode 100644 index 0000000000..e2eb4683fd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/30593-06.html @@ -0,0 +1,3 @@ +Duda-Mara Totem Spirit:
+... Take the drop of blood I have given you to Seer Umos. By performing a ritual of drinking that blood which contains the secret of spirits, you will be able to obtain the powers of a true incantator. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/31979-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/31979-01.html new file mode 100644 index 0000000000..e4e86d5b62 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/31979-01.html @@ -0,0 +1,6 @@ +Seer Moira:
+Congratulations, young Orc, on taking the first step in this world!
+I want you to learn here in Schuttgart how to inherit the wisdom of the souls!
+Behold this Black Leopard in front of me! He's the Gandi Totem Spirit, the wisest of all Totem Spirits!
+Talk to him and receive his knowledge! He'll help you! + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/31979-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/31979-02.html new file mode 100644 index 0000000000..0f7a38b1cf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/31979-02.html @@ -0,0 +1,3 @@ +Seer Moira:
+Look at the Black Leopard in front of me! He's the Gandi Totem Spirit, the wisest of all the Totem Spirits!
Talk to him and receive his knowledge! He'll help you! + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/31979-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/31979-03.html new file mode 100644 index 0000000000..376c41d684 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/31979-03.html @@ -0,0 +1,6 @@ +Seer Moira:
+I've watched you, young Orc...
+You learned the Language of Flame from the Hestui Totem Spirit and the wisdom of souls from the Gandi Totem Spirit.
+You're now a legitimate Orc Shaman! I'll give you this Mask of Shaman as proof.
+Take it to the High Prefect and you'll be able to transfer class. Again, congratulations, Tazakar Oroca! + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32057-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32057-01.html new file mode 100644 index 0000000000..a4f27d756a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32057-01.html @@ -0,0 +1,7 @@ +Totem Spirit of Gandi:
+You stupid Orc! You're here to acquire the knowledge of the Totem Spirit, aren't you?
+The knowledge of the Totem Spirit can only be handed down to those in the same tribe! Different tribes could never fully understand the Totem Spirit, they'd only acquire some fragmented pieces of knowledge.
+Hum...
+You may still want to acquire the knowledge of the Totem Spirit, even though you understand the limitations... As did most others... Am I correct?
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32057-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32057-02.html new file mode 100644 index 0000000000..f96ac81078 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32057-02.html @@ -0,0 +1,3 @@ +Totem Spirit of Gandi:
+I see... Grrrr...
That's the Tribe of Fire, one of your Orc Tribes under the protection of our Totem Spirit...
Very well! There's something you must do at once! Find the Black Leopard in the Valley of the Lords and kill him. Get the Dialogue of Souls and Wisdom of Souls when you defeat him. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32057-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32057-03.html new file mode 100644 index 0000000000..ab27634aac --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32057-03.html @@ -0,0 +1,3 @@ +Totem Spirit of Gandi:
+Defeat the Black Leopard in the Valley of the Lords and then pour the blood on yourself! That will give you the wisdom! + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32057-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32057-04.html new file mode 100644 index 0000000000..7ce18e6f3f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32057-04.html @@ -0,0 +1,7 @@ +Totem Spirit of Gandi:
+Krrrr... Well...now you look more like an Orc..
+Have you become a Shaman of Flame...
+The essence of the Wisdom of Souls... The meaning of the word "victory"...
+No, you're much too young...
+ + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32057-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32057-05.html new file mode 100644 index 0000000000..cd70e143b7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32057-05.html @@ -0,0 +1,7 @@ +Totem Spirit of Gandi:
+Ha!
Well, there's no need for you to feel pain, young Orc.
+From the time that Pa'agrio created you, you were supposed to be like this!
+The shape of burning fire is not one and the kind of fire is not one either.
+You've been cleansed with the blood of Gandi's family, now other Totem Spirits cannot ignore you... krrrr...
+Now, speak with Seer Moira over there. Since you have my wisdom, he'll lead you to a Shaman. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-01.html new file mode 100644 index 0000000000..50cea2e603 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-01.html @@ -0,0 +1,3 @@ +Dead Leopard Body:
+An eerie force emanates from the Dead Leopard Body. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-02.html new file mode 100644 index 0000000000..b80fe8717c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-02.html @@ -0,0 +1,5 @@ +Dead Leopard Body:
+The Dead Leopard Body's gaze is startling, flickering with the light of distant flames.
+His lips move disturbingly, issuing strange murmurs:
+[...but you need more blood...to acquire more of the sacred blood...the blood of the Black Leopard...] + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-03.html new file mode 100644 index 0000000000..888d1b6d25 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-03.html @@ -0,0 +1,5 @@ +Dead Leopard Body:
+The Dead Leopard Body has a compelling gaze, as if distant flames flicker in its eyes.
+His lips tremble with weird murmurs:
+[. . . and you need more blood... to acquire more blood... the blood of the Black Leopard...] + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-04.html new file mode 100644 index 0000000000..9dd8055f8e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-04.html @@ -0,0 +1,8 @@ +Dead Leopard's Carcass:
+There's a strange song coming from somewhere. At last you discover the source: it issues from the mouth of a dead leopard.
+The song sounds vaguely familiar yet somehow outlandish as well, like a song you might have heard a foreigner sing as a child.
+[. . . Zakar Gandi! Tejakar Leopa!
+O, forgotten song, lost amid the long tribal battles!
+O, my fellow warriors, once a mighty army, now scattered to the winds!]
+
+ diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-05.html new file mode 100644 index 0000000000..c15ceef327 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-05.html @@ -0,0 +1,9 @@ +Dead Leopard's Carcass:
+[One fire shines its light,
+Two fires warm us with their might.
+Fires without number may
+Combine to chase all cold away,
+But let them stray and court disaster!
+Fire is a fearful master.]
+
+ diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-06.html new file mode 100644 index 0000000000..ddc3352aef --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-06.html @@ -0,0 +1,14 @@ +Dead Leopard's Carcass:
+[A ghost is much like a fire:
+approach it with great care,
+a proper distance bear,
+and grow as warm as you desire.
+But stray too close to the source,
+And it will eat you whole;
+For ghosts and fiery coals,
+Have no means to restrain their force.
+Remember the teachings of Pa'agrio!
+Remember the Song of Fire!
+In order to hear the last teaching,
+Drench your hands once more with the blood of the Black Leopard!]
+ diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-07.html new file mode 100644 index 0000000000..110a7023a6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-07.html @@ -0,0 +1,4 @@ +Dead Leopard Body:
+The Dead Leopard's lips tremble eerily. Is it trying to mutter something?
+If you obtain the blood of the Black Leopard, perhaps then you can determine if this is an illusion. + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-08.html new file mode 100644 index 0000000000..a62e146b92 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/32090-08.html @@ -0,0 +1,4 @@ +Dead Leopard Body:
+The Dead Leopard Body murmurs, over and over:
+"Go and find the Totem Spirit of Gandi. Go and find the Totem Spirit of Gandi." + diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/Q00416_PathOfTheOrcShaman.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/Q00416_PathOfTheOrcShaman.java new file mode 100644 index 0000000000..8439628a53 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00416_PathOfTheOrcShaman/Q00416_PathOfTheOrcShaman.java @@ -0,0 +1,624 @@ +/* + * 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.Q00416_PathOfTheOrcShaman; + +import java.util.HashMap; +import java.util.Map; + +import com.l2jmobius.gameserver.enums.ChatType; +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.holders.ItemChanceHolder; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.NpcStringId; +import com.l2jmobius.gameserver.network.serverpackets.NpcSay; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; + +/** + * Path of the Orc Shaman (416) + * @author Adry_85 + */ +public final class Q00416_PathOfTheOrcShaman extends Quest +{ + // NPCs + private static final int UMOS = 30502; + private static final int TATARU_ZU_HESTUI = 30585; + private static final int HESTUI_TOTEM_SPIRIT = 30592; + private static final int DUDA_MARA_TOTEM_SPIRIT = 30593; + private static final int MOIRA = 31979; // Careful with this id, might have changed during Chronicles. + private static final int TOTEM_SPIRIT_OF_GANDI = 32057; // Careful with this id, might have changed during Chronicles. + private static final int DEAD_LEOPARDS_CARCASS = 32090; // Careful with this id, might have changed during Chronicles. + // Items + private static final int FIRE_CHARM = 1616; + private static final int KASHA_BEAR_PELT = 1617; + private static final int KASHA_BLADE_SPIDER_HUSK = 1618; + private static final int FIRST_FIERY_EGG = 1619; + private static final int HESTUI_MASK = 1620; + private static final int SECOND_FIERY_EGG = 1621; + private static final int TOTEM_SPIRIT_CLAW = 1622; + private static final int TATARUS_LETTER = 1623; + private static final int FLAME_CHARM = 1624; + private static final int GRIZZLY_BLOOD = 1625; + private static final int BLOOD_CAULDRON = 1626; + private static final int SPIRIT_NET = 1627; + private static final int BOUND_DURKA_SPIRIT = 1628; + private static final int DURKA_PARASITE = 1629; + private static final int TOTEM_SPIRIT_BLOOD = 1630; + private static final int MASK_OF_MEDIUM = 1631; + // Quest Monsters + private static final int DURKA_SPIRIT = 27056; + private static final int BLACK_LEOPARD = 27319; + // Misc + private static final int MIN_LEVEL = 18; + // Mobs + private static final Map MOBS = new HashMap<>(); + static + { + MOBS.put(20415, new ItemChanceHolder(FIRST_FIERY_EGG, 1.0, 1)); // scarlet_salamander + MOBS.put(20478, new ItemChanceHolder(KASHA_BLADE_SPIDER_HUSK, 1.0, 1)); // kasha_blade_spider + MOBS.put(20479, new ItemChanceHolder(KASHA_BEAR_PELT, 1.0, 1)); // kasha_bear + MOBS.put(20335, new ItemChanceHolder(GRIZZLY_BLOOD, 1.0, 6)); // grizzly_bear + MOBS.put(20038, new ItemChanceHolder(DURKA_PARASITE, 1.0, 9)); // poison_spider + MOBS.put(20043, new ItemChanceHolder(DURKA_PARASITE, 1.0, 9)); // bind_poison_spider + MOBS.put(27056, new ItemChanceHolder(DURKA_PARASITE, 1.0, 9)); // durka_spirit + } + + public Q00416_PathOfTheOrcShaman() + { + super(416); + addStartNpc(TATARU_ZU_HESTUI); + addTalkId(TATARU_ZU_HESTUI, UMOS, MOIRA, DEAD_LEOPARDS_CARCASS, DUDA_MARA_TOTEM_SPIRIT, HESTUI_TOTEM_SPIRIT, TOTEM_SPIRIT_OF_GANDI); + addKillId(MOBS.keySet()); + addKillId(BLACK_LEOPARD); + registerQuestItems(FIRE_CHARM, KASHA_BEAR_PELT, KASHA_BLADE_SPIDER_HUSK, FIRST_FIERY_EGG, HESTUI_MASK, SECOND_FIERY_EGG, TOTEM_SPIRIT_CLAW, TATARUS_LETTER, FLAME_CHARM, GRIZZLY_BLOOD, BLOOD_CAULDRON, SPIRIT_NET, BOUND_DURKA_SPIRIT, DURKA_PARASITE, TOTEM_SPIRIT_BLOOD); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "START": + { + if (player.getClassId() != ClassId.ORC_MAGE) + { + if (player.getClassId() == ClassId.ORC_SHAMAN) + { + htmltext = "30585-02.htm"; + } + else + { + htmltext = "30585-03.htm"; + } + } + else if (player.getLevel() < MIN_LEVEL) + { + htmltext = "30585-04.htm"; + } + else if (hasQuestItems(player, MASK_OF_MEDIUM)) + { + htmltext = "30585-05.htm"; + } + else + { + htmltext = "30585-06.htm"; + } + break; + } + case "30585-07.htm": + { + st.startQuest(); + st.setMemoState(1); + giveItems(player, FIRE_CHARM, 1); + htmltext = event; + break; + } + case "30585-12.html": + { + if (hasQuestItems(player, TOTEM_SPIRIT_CLAW)) + { + htmltext = event; + } + break; + } + case "30585-13.html": + { + if (hasQuestItems(player, TOTEM_SPIRIT_CLAW)) + { + takeItems(player, TOTEM_SPIRIT_CLAW, -1); + giveItems(player, TATARUS_LETTER, 1); + st.setCond(5, true); + htmltext = event; + } + break; + } + case "30585-14.html": + { + if (hasQuestItems(player, TOTEM_SPIRIT_CLAW)) + { + takeItems(player, TOTEM_SPIRIT_CLAW, -1); + st.setCond(12, true); + st.setMemoState(100); + htmltext = event; + } + break; + } + case "30502-07.html": + { + if (hasQuestItems(player, TOTEM_SPIRIT_BLOOD)) + { + takeItems(player, TOTEM_SPIRIT_BLOOD, -1); + giveItems(player, MASK_OF_MEDIUM, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 22992); + } + else if (level >= 19) + { + addExpAndSp(player, 456128, 29690); + } + else + { + addExpAndSp(player, 591724, 36388); + } + giveAdena(player, 163800, true); + st.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = event; + } + break; + } + case "32090-05.html": + { + if (st.isMemoState(106)) + { + htmltext = event; + } + break; + } + case "32090-06.html": + { + if (st.isMemoState(106)) + { + st.setMemoState(107); + st.setCond(18, true); + htmltext = event; + } + break; + } + case "30593-02.html": + { + if (hasQuestItems(player, BLOOD_CAULDRON)) + { + htmltext = event; + } + break; + } + case "30593-03.html": + { + if (hasQuestItems(player, BLOOD_CAULDRON)) + { + takeItems(player, BLOOD_CAULDRON, -1); + giveItems(player, SPIRIT_NET, 1); + st.setCond(9, true); + htmltext = event; + } + break; + } + case "30592-02.html": + { + if (hasQuestItems(player, HESTUI_MASK, SECOND_FIERY_EGG)) + { + htmltext = event; + } + break; + } + case "30592-03.html": + { + if (hasQuestItems(player, HESTUI_MASK, SECOND_FIERY_EGG)) + { + takeItems(player, -1, HESTUI_MASK, SECOND_FIERY_EGG); + giveItems(player, TOTEM_SPIRIT_CLAW, 1); + st.setCond(4, true); + htmltext = event; + } + break; + } + case "32057-02.html": + { + if (st.isMemoState(101)) + { + st.setMemoState(102); + st.setCond(14, true); + htmltext = event; + } + break; + } + case "32057-05.html": + { + if (st.isMemoState(109)) + { + st.setMemoState(110); + st.setCond(21, true); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon) + { + final QuestState st = getRandomPartyMemberState(player, -1, 3, npc); + if (st == null) + { + return super.onKill(npc, player, isSummon); + } + + if (npc.getId() == BLACK_LEOPARD) + { + switch (st.getMemoState()) + { + case 102: + { + st.setMemoState(103); + break; + } + case 103: + { + st.setMemoState(104); + st.setCond(15, true); + if (getRandom(100) < 66) + { + npc.broadcastPacket(new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getId(), NpcStringId.MY_DEAR_FRIEND_OF_S1_WHO_HAS_GONE_ON_AHEAD_OF_ME).addStringParameter(st.getPlayer().getName())); + } + break; + } + case 105: + { + st.setMemoState(106); + st.setCond(17, true); + if (getRandom(100) < 66) + { + npc.broadcastPacket(new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getId(), NpcStringId.LISTEN_TO_TEJAKAR_GANDI_YOUNG_OROKA_THE_SPIRIT_OF_THE_SLAIN_LEOPARD_IS_CALLING_YOU_S1).addStringParameter(st.getPlayer().getName())); + } + break; + } + case 107: + { + st.setMemoState(108); + st.setCond(19, true); + break; + } + } + return super.onKill(npc, player, isSummon); + } + + final ItemChanceHolder item = MOBS.get(npc.getId()); + if (item.getCount() == st.getCond()) + { + if (st.isCond(1) && hasQuestItems(st.getPlayer(), FIRE_CHARM)) + { + if (giveItemRandomly(st.getPlayer(), npc, item.getId(), 1, 1, item.getChance(), true) // + && hasQuestItems(st.getPlayer(), FIRST_FIERY_EGG, KASHA_BLADE_SPIDER_HUSK, KASHA_BEAR_PELT)) + { + st.setCond(2, true); + } + } + else if (st.isCond(6) && hasQuestItems(st.getPlayer(), FLAME_CHARM)) + { + if (giveItemRandomly(st.getPlayer(), npc, item.getId(), 1, 3, item.getChance(), true)) + { + st.setCond(7); + } + } + else if (st.isCond(9) && hasQuestItems(st.getPlayer(), SPIRIT_NET) // + && !hasQuestItems(st.getPlayer(), BOUND_DURKA_SPIRIT) // + && (getQuestItemsCount(st.getPlayer(), DURKA_PARASITE) <= 8)) + { + if ((npc.getId() == 20038) || (npc.getId() == 20043)) + { + final int random = getRandom(10); + final long itemCount = getQuestItemsCount(st.getPlayer(), DURKA_PARASITE); + if ((((itemCount == 5) && (random < 1))) // + || ((itemCount == 6) && (random < 2)) // + || ((itemCount == 7) && (random < 2)) // + || (itemCount >= 8)) + { + takeItems(player, DURKA_PARASITE, -1); + addSpawn(DURKA_SPIRIT, npc.getX(), npc.getY(), npc.getZ(), 0, true, 0, false); + playSound(st.getPlayer(), QuestSound.ITEMSOUND_QUEST_BEFORE_BATTLE); + } + else + { + giveItems(st.getPlayer(), DURKA_PARASITE, 1); + playSound(st.getPlayer(), QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + else + { + giveItems(st.getPlayer(), BOUND_DURKA_SPIRIT, 1); + takeItems(st.getPlayer(), -1, DURKA_PARASITE, SPIRIT_NET); + } + } + } + return super.onKill(npc, player, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState st = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (st.isCreated()) + { + if (npc.getId() == TATARU_ZU_HESTUI) + { + htmltext = "30585-01.htm"; + } + } + else if (st.isStarted()) + { + switch (npc.getId()) + { + case TATARU_ZU_HESTUI: + { + if (st.isMemoState(1)) + { + if (hasQuestItems(player, FIRE_CHARM)) + { + if (getQuestItemsCount(player, KASHA_BEAR_PELT, KASHA_BLADE_SPIDER_HUSK, FIRST_FIERY_EGG) < 3) + { + htmltext = "30585-08.html"; + } + else + { + takeItems(player, -1, FIRE_CHARM, KASHA_BEAR_PELT, KASHA_BLADE_SPIDER_HUSK, FIRST_FIERY_EGG); + giveItems(player, HESTUI_MASK, 1); + giveItems(player, SECOND_FIERY_EGG, 1); + st.setCond(3, true); + htmltext = "30585-09.html"; + } + } + else if (hasQuestItems(player, HESTUI_MASK, SECOND_FIERY_EGG)) + { + htmltext = "30585-10.html"; + } + else if (hasQuestItems(player, TOTEM_SPIRIT_CLAW)) + { + htmltext = "30585-11.html"; + } + else if (hasQuestItems(player, TATARUS_LETTER)) + { + htmltext = "30585-15.html"; + } + else if (hasAtLeastOneQuestItem(player, GRIZZLY_BLOOD, FLAME_CHARM, BLOOD_CAULDRON, SPIRIT_NET, BOUND_DURKA_SPIRIT, TOTEM_SPIRIT_BLOOD)) + { + htmltext = "30585-16.html"; + } + } + else if (st.isMemoState(100)) + { + htmltext = "30585-14.html"; + } + break; + } + case UMOS: + { + if (st.isMemoState(1)) + { + if (hasQuestItems(player, TATARUS_LETTER)) + { + giveItems(player, FLAME_CHARM, 1); + takeItems(player, TATARUS_LETTER, -1); + st.setCond(6, true); + htmltext = "30502-01.html"; + } + else if (hasQuestItems(player, FLAME_CHARM)) + { + if (getQuestItemsCount(player, GRIZZLY_BLOOD) < 3) + { + htmltext = "30502-02.html"; + } + else + { + takeItems(player, -1, FLAME_CHARM, GRIZZLY_BLOOD); + giveItems(player, BLOOD_CAULDRON, 1); + st.setCond(8, true); + htmltext = "30502-03.html"; + } + } + else if (hasQuestItems(player, BLOOD_CAULDRON)) + { + htmltext = "30502-04.html"; + } + else if (hasAtLeastOneQuestItem(player, BOUND_DURKA_SPIRIT, SPIRIT_NET)) + { + htmltext = "30502-05.html"; + } + else if (hasQuestItems(player, TOTEM_SPIRIT_BLOOD)) + { + htmltext = "30502-06.html"; + } + } + break; + } + case MOIRA: + { + final int memoState = st.getMemoState(); + if (memoState == 100) + { + st.setMemoState(101); + st.setCond(13, true); + htmltext = "31979-01.html"; + } + else if ((memoState >= 101) && (memoState < 108)) + { + htmltext = "31979-02.html"; + } + else if (memoState == 110) + { + giveItems(player, MASK_OF_MEDIUM, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 160267, 11496); + } + else if (level >= 19) + { + addExpAndSp(player, 228064, 14845); + } + else + { + addExpAndSp(player, 295862, 18194); + } + giveAdena(player, 81900, true); + st.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "31979-03.html"; + } + break; + } + case DEAD_LEOPARDS_CARCASS: + { + switch (st.getMemoState()) + { + case 102: + case 103: + { + htmltext = "32090-01.html"; + break; + } + case 104: + { + st.setMemoState(105); + st.setCond(16, true); + htmltext = "32090-03.html"; + break; + } + case 105: + { + htmltext = "32090-01.html"; + break; + } + case 106: + { + htmltext = "32090-04.html"; + break; + } + case 107: + { + htmltext = "32090-07.html"; + break; + } + case 108: + { + st.setMemoState(109); + st.setCond(20, true); + htmltext = "32090-08.html"; + break; + } + } + break; + } + case DUDA_MARA_TOTEM_SPIRIT: + { + if (st.isMemoState(1)) + { + if (hasQuestItems(player, BLOOD_CAULDRON)) + { + htmltext = "30593-01.html"; + } + else if (hasQuestItems(player, SPIRIT_NET) && !hasQuestItems(player, BOUND_DURKA_SPIRIT)) + { + htmltext = "30593-04.html"; + } + else if (!hasQuestItems(player, SPIRIT_NET) && hasQuestItems(player, BOUND_DURKA_SPIRIT)) + { + takeItems(player, BOUND_DURKA_SPIRIT, -1); + giveItems(player, TOTEM_SPIRIT_BLOOD, 1); + st.setCond(11, true); + htmltext = "30593-05.html"; + } + else if (hasQuestItems(player, TOTEM_SPIRIT_BLOOD)) + { + htmltext = "30593-06.html"; + } + } + break; + } + case HESTUI_TOTEM_SPIRIT: + { + if (st.isMemoState(1)) + { + if (hasQuestItems(player, HESTUI_MASK, SECOND_FIERY_EGG)) + { + htmltext = "30592-01.html"; + } + else if (hasQuestItems(player, TOTEM_SPIRIT_CLAW)) + { + htmltext = "30592-04.html"; + } + else if (hasAtLeastOneQuestItem(player, GRIZZLY_BLOOD, FLAME_CHARM, BLOOD_CAULDRON, SPIRIT_NET, BOUND_DURKA_SPIRIT, TOTEM_SPIRIT_BLOOD, TATARUS_LETTER)) + { + htmltext = "30592-05.html"; + } + } + break; + } + case TOTEM_SPIRIT_OF_GANDI: + { + switch (st.getMemoState()) + { + case 101: + { + htmltext = "32057-01.html"; + break; + } + case 102: + { + htmltext = "32057-03.html"; + break; + } + case 109: + { + htmltext = "32057-04.html"; + break; + } + } + break; + } + } + } + return htmltext; + } +} diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30316-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30316-01.html new file mode 100644 index 0000000000..e4aa538b2a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30316-01.html @@ -0,0 +1,8 @@ +Warehouse Keeper Raut:
+What? This takes the place of the debt?
+This is not even a tenth of what he borrowed from me!
+Hmm...
I +f you do one favor for me on behalf of that sneak, then I will consider the debt repaid. What do you think?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30316-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30316-02.html new file mode 100644 index 0000000000..27581a578c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30316-02.html @@ -0,0 +1,6 @@ +Warehouse Keeper Raut:
+Good, I like your frankness.
+Actually, I have a nuisance of a nephew. One day the rascal was teased by his friends because he had bluffed that he could sell items to the monsters of Dragon Valley. And then the next day, he left with everything in the warehouse! Since he is the only child of my deceased brother, I have no choice but to find him. Please go and find him for me.
+Also, this is a scroll of return. Tell my nephew to use it so he can return immediately. I'm sorry there is only one.
+Well then, good luck on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30316-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30316-03.html new file mode 100644 index 0000000000..7e241108ab --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30316-03.html @@ -0,0 +1,7 @@ +Warehouse Keeper Raut:
+I'm sorry but you must do it.
+Do you know what that fraud Toma gave me when he said he would repay his debts? It is none other than the mark of the raider that you want. Now do you know why you must listen to my request? Then let me tell you what you need to do.
+I have a nuisance of a nephew. One day the rascal was teased by his friends because he had bluffed that he could sell items to the monsters of Dragon Valley. And then the next day, he left with everything in the warehouse!
+Since he is the only child of my deceased brother, I have no choice but to find him. Please go and find him for me. Also, this is a scroll of return. Tell my nephew to use it so he can return immediately.
+Well then, good luck on your journey. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30316-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30316-04.html new file mode 100644 index 0000000000..cd5df2cd84 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30316-04.html @@ -0,0 +1,6 @@ +Warehouse Keeper Raut:
+Torai said he was going to Dragon Valley.
+He speaks with an accent because he lives in the country, so you will be able to recognize him.
+I hope he is safe...
+Phew... Thank goodness. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30316-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30316-05.html new file mode 100644 index 0000000000..0e3428040f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30316-05.html @@ -0,0 +1,4 @@ +Warehouse Keeper Raut:
+The rascal has already arrived. Thank you.
Hey, that's my wife's prized possession, taken by Torai! Give that here! Phew!
+Anyway, since you did the job, I will keep my promise. Here is the mark of the scavenger. Take this to Warehouse Chief Moke to change profession to Scavenger. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30517-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30517-01.html new file mode 100644 index 0000000000..bcc5d5a108 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30517-01.html @@ -0,0 +1,4 @@ +Trader Shari:
+Oh, it's finally arrived! Thank you, thank you!
+Here is your payment. Please tell Mion I'm very grateful! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30517-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30517-02.html new file mode 100644 index 0000000000..180639ee1a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30517-02.html @@ -0,0 +1,6 @@ +Trader Shari:
+Oh, it's finally arrived! Thank you a!
+Here is the payment...
+(Tsk, tsk...poor fool, to be victimized by Mion!)
+What's that? Was that out loud? Oh, I was just talking to myself, friend -- just...figuring out some shelving issues... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30517-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30517-03.html new file mode 100644 index 0000000000..bf78d24f14 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30517-03.html @@ -0,0 +1,3 @@ +Trader Shari:
+Give the payment to Mion, please. Be sure to say how grateful I am. Well, you'd best be on your way. Good day! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-01.html new file mode 100644 index 0000000000..6e6bd80aa5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-01.html @@ -0,0 +1,5 @@ +Trader Mion:
+You're looking for my brother? But he wanders around here and there ... so it is very difficult to find him. More than that, he has made some kind of Teleport Device, so it is even harder to find him!!
+Well, how about this? If you help me with my work, I will see if I can find out where he is ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-02.html new file mode 100644 index 0000000000..5c8a9b3a52 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-02.html @@ -0,0 +1,4 @@ +Trader Mion:
+Good! Then please take this potion to Priest of the Earth Zimenf and bring back the payment for it as well.
+Thank you in advance! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-03.html new file mode 100644 index 0000000000..8bdb99d804 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-03.html @@ -0,0 +1,4 @@ +Trader Mion:
+Good! Then please take this weapon to Trader Shari. And you must bring back the payment for it!
+Thank you in advance! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-04.html new file mode 100644 index 0000000000..40eed12e4b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-04.html @@ -0,0 +1,4 @@ +Trader Mion:
+Good. Then please take this Lump of Iron to Head Blacksmith Bronk at the blacksmith's shop. And you must bring back the payment for it!
+Thank you in advance! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-05.html new file mode 100644 index 0000000000..a03ff607e7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-05.html @@ -0,0 +1,6 @@ +Trader Mion:
+Please go quickly! Our shop is famous for its quick deliveries!
+Don't worry about finding my brother, just hurry on!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-06.html new file mode 100644 index 0000000000..dd338296ff --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-06.html @@ -0,0 +1,3 @@ +Trader Mion:
+All right, now! Well, don't just stand there ... go on! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-07.html new file mode 100644 index 0000000000..dd94ff8a6e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-07.html @@ -0,0 +1,4 @@ +Trader Mion:
+Excuse me! Do you know how hard it is to find my brother? Isn't it proper to do something in return to help? Humph ... you're too much ...
+Well, have it your way! Look for him all your life! See if you can find him, humph! Humph! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-08.html new file mode 100644 index 0000000000..e4efffeacc --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-08.html @@ -0,0 +1,7 @@ +Trader Mion:
+Do you have a problem?
+Didn't I tell you? It. is. very. difficult. to. find. my. brother.
+Well, now that you know, off to your deliveries!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-09.html new file mode 100644 index 0000000000..3b43111917 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-09.html @@ -0,0 +1,4 @@ +Trader Mion:
+Look here, now I almost know where my brother is! You can't pretend not to know me now, right?
+If you'd have waited a bit longer, you could have found my brother!! Truly, I am so sorry! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-10.html new file mode 100644 index 0000000000..5f84961766 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-10.html @@ -0,0 +1,5 @@ +Dwarf Goods Trader Mion:
+Hmph! I thought I'd be able to boss you around for free thanks to my brother, but you're just as lazy as he is! It would be easier for me to just do it myself...
+My brother said that he was going to the northern coast to see the vast ocean.
+Heh...I imagine you'll find it a little tough to track him down, though! Well, good luck... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-11.html new file mode 100644 index 0000000000..cc804196f0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-11.html @@ -0,0 +1,5 @@ +Trader Mion:
+Good! Now please deliver this item! Oh yes! Don't forget to bring back the payment!
+(It is quite hard to order someone around.)
+Ah ... Nothing, nothing! Go on! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-12.html new file mode 100644 index 0000000000..2337d04ea5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-12.html @@ -0,0 +1,5 @@ +Trader Mion:
+Wow, thank you so much! But finding my brother ... is taking longer than I thought! Oh dear.
+Until then, please help me with my work! What? Will you help me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-13.html new file mode 100644 index 0000000000..8c6a407723 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-13.html @@ -0,0 +1,5 @@ +Dwarf Goods Trader Mion:
+You say that you forgot? How lazy and careless!
+My brother went to the northern coast to see the vast ocean.
+Don't forget this time! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-14.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-14.html new file mode 100644 index 0000000000..92618da408 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-14.html @@ -0,0 +1,3 @@ +Trader Mion:
+You must hurry and become a Scavenger! Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-15.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-15.html new file mode 100644 index 0000000000..c3d1930416 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30519-15.html @@ -0,0 +1,5 @@ +Dwarf Goods Trader Mion:
+Say, I heard some news about my brother.
+It seems that he went to the northern coast to see the vast ocean for himself.
+Heh...you may find it a little difficult to track him down, though. Good luck, I guess. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-01.htm new file mode 100644 index 0000000000..584d2da1ad --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-01.htm @@ -0,0 +1,5 @@ +Collector Pippi:
+You wish to become a Scavenger? How commendable of you! There should be more bright youngsters like yourself, but they are all too rare ... What good is an Artisan anyway? All you do is work your back off under someone else all your life. When would you even touch a stuffed money pouch? Tsk, tsk ...
+Compared to that, if you become a Scavenger you can enjoy a successful life in your later years, just like me, if you're willing to put up with just a little trouble in your youth. You have made an excellent choice. Well then, shall I tell you how to become a Scavenger?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-02.htm new file mode 100644 index 0000000000..a6dc1e0677 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-02.htm @@ -0,0 +1,4 @@ +Collector Pippi:
+Excuse me. Your shoelace is untied!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-02a.htm new file mode 100644 index 0000000000..4742c6734b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-02a.htm @@ -0,0 +1,3 @@ +Collector Pippi:
+What? But you are already a Scavenger! You haven't forgotten the most important thing, have you? That's right! Tithe! Don't forget! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-03.html new file mode 100644 index 0000000000..700636a13a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-03.html @@ -0,0 +1,5 @@ +Collector Pippi:
+That's a lie!
+Come back after your nose stops running, eh?
+(Only characters who are level 18 or above may undertake this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-04.htm new file mode 100644 index 0000000000..6304e5fc5e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-04.htm @@ -0,0 +1,4 @@ +Collector Pippi:
+What's the most important thing when you become a Scavenger?
+That's it! Tithe! Don't forget! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-05.htm new file mode 100644 index 0000000000..c158a8a54e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-05.htm @@ -0,0 +1,5 @@ +Collector Pippi:
+Well, I will tell you ... I don't know anything about the test.
+But really, I don't think that the test is important. The one really important thing, if you ask me, is tithing. Do you know how much money the guild spends on managing just one member? From guild uniforms to insurance and information fees, to giving good information to guild members ... a lot of money is needed. To obtain those funds, the most important thing is tithing, giving ten percent of what you earn ...
+Ah ... How to become a Scavenger? Only Master Toma can confirm it. His sister Trader Mion knows where he is, so ask her. I'll write you a Letter of Introduction. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-06.html new file mode 100644 index 0000000000..0df2450431 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-06.html @@ -0,0 +1,3 @@ +Collector Pippi:
+If you want to know where Master Toma is, go to Trader Mion! Didn't I give you a Letter of Introduction? + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-07.html new file mode 100644 index 0000000000..8daa8bad97 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-07.html @@ -0,0 +1,3 @@ +Collector Pippi:
+Haven't you become a Scavenger yet? Try working a little harder! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-08.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-08.htm new file mode 100644 index 0000000000..50550351b5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30524-08.htm @@ -0,0 +1,3 @@ +Dwarven Collector Pippi:
+How about an Orc Shaman instead of a Scavenger? Go to the Orc Village. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30525-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30525-01.html new file mode 100644 index 0000000000..be7113c650 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30525-01.html @@ -0,0 +1,4 @@ +Head Blacksmith Bronk:
+Oh! I was waiting for you. Now I can make the item.
+Here is the payment. Please tell Mion that I am grateful! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30525-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30525-02.html new file mode 100644 index 0000000000..aba08fc2c4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30525-02.html @@ -0,0 +1,5 @@ +Head Blacksmith Bronk:
+Oh! I was waiting for you. Now I can make the item. Here is the payment.
+(Foolish fellow. You're being tricked by Mion ...)
+Hmm? No, I didn't say anything ... just tell Mion that I said thank you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30525-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30525-03.html new file mode 100644 index 0000000000..b75e6d5d3f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30525-03.html @@ -0,0 +1,3 @@ +Head Blacksmith Bronk:
+Go along and take the money to Mion. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30538-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30538-01.html new file mode 100644 index 0000000000..fdcb15c9fb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30538-01.html @@ -0,0 +1,4 @@ +Priest of the Earth Zimenf:
+Thank you. Now I can prepare for the ritual, I say! I sincerely, truly thank you!! I must hurry to prepare the ritual. I say, the high priest will scold me if I am late.
+Take this. It is the payment for the item, I say. Please tell Mion that I am grateful. Karna Mafra! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30538-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30538-02.html new file mode 100644 index 0000000000..d9f3a54a4c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30538-02.html @@ -0,0 +1,5 @@ +Priest of the Earth Zimenf:
+I sincerely truly thank you!! Now I can prepare for the ritual, I say! I sincerely, truly thank you!! I must hurry to prepare the ritual. I say, the high priest will scold me if I am late.
+(I see Mion is sending you on errands with her brother as bait ... hee hee hee ...)
+What? Oh, nothing. I was just talking to myself. Please tell Mion thank you. Karna Mafra! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30538-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30538-03.html new file mode 100644 index 0000000000..01e353f81a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30538-03.html @@ -0,0 +1,3 @@ +Priest of the Earth Zimenf:
+Please thank Mion for the item. And I say, be careful in taking the payment that I gave you. Karna Mafra ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-01.html new file mode 100644 index 0000000000..5e6863c251 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-01.html @@ -0,0 +1,8 @@ +Master Toma:
Who are you?
+Oh, a letter from Mion?
+Hmm... So you want to be a Scavenger?
+Do just as I say.
+This body yearns for something sweet. What do you think?
+My friend says that if you kill a hunter bear, you can obtain an amazing honey. Please bring me just five Honey Jars. Knock down the Honey Bear and rummage through with Spoil and bring back the honey.
+First of all, find the hunter bear. The Honey Bear appears sometimes after killing a hunter bear. Where is the hunter bear, you ask? Then listen well to what I have to say. If you go straight up toward the north at the west entrance of the Abandoned Coal Mines, there is a place where two divided coastlines meet. There are a lot of the bears there. Take a look at the Map for more details. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-02.html new file mode 100644 index 0000000000..1fb8b8659b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-02.html @@ -0,0 +1,5 @@ +Master Toma:
+Shut up and bring me five Honey Jars at once!
+You're such an idiot! First you must kill the hunter bear. The Honey Bear will appear afterwards. Conquer the Honey Bear and search him with the spoil. Then you'll find the Honey Jars.
+You can find many hunter bears at the place where two divided coastlines meet, at the west entrance of the Abandoned Coal Mines. It's on the Map. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-03.html new file mode 100644 index 0000000000..d24a2d8a60 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-03.html @@ -0,0 +1,6 @@ +Master Toma:
+Oh, mmm... mmm...
+Truly delicious ...
+This time, hunt some monsters. Go after the hunter tarantula or plunder tarantula and bring me the beads they're holding.
+Bring back at least twenty. And don't forget to take it out with spoil. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-04.html new file mode 100644 index 0000000000..9bfd015688 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-04.html @@ -0,0 +1,5 @@ +Master Toma:
+Stop speaking to me.
+You must bring at least 20 beads.
+I am truly disappointed. Go back and catch hunter tarantulas or plunder tarantulas and poke around with a sweeper and quickly bring them to me. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-05a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-05a.html new file mode 100644 index 0000000000..2aae332c31 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-05a.html @@ -0,0 +1,8 @@ +Master Toma:
+A shining bead... Well done!
+You can complete the test by taking this to my friend.
+I owe so many of my friends... How will you choose one?
+Well, would you prefer one that is close or far away?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-05b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-05b.html new file mode 100644 index 0000000000..87face8c65 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-05b.html @@ -0,0 +1,3 @@ +Master Toma:
+A shining bead... Well done! You can finish the test by taking this to my friend Raut, a Warehouse Keeper in the Town of Gludin. Tell him I'm paying him back for the time he paid for my drinks. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-06a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-06a.html new file mode 100644 index 0000000000..c7afb3d44b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-06a.html @@ -0,0 +1,3 @@ +Master Toma:
+It's for the Warehouse Keeper Route of Gludin Town. Hurry and deliver. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-06b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-06b.html new file mode 100644 index 0000000000..a7e9d456c0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-06b.html @@ -0,0 +1,3 @@ +Master Toma:
+A shining bead... Well done! You can finish the test by taking this to my friend Yasheni, a Warehouse Chief in the Town of Schuttgart. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-06c.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-06c.html new file mode 100644 index 0000000000..4b96a4ecf7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-06c.html @@ -0,0 +1,3 @@ +Master Toma:
+Take it to Yasheni, the Warehouse Chief in the Town of Schuttgart. Hurry up! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-07.html new file mode 100644 index 0000000000..44207188c4 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30556-07.html @@ -0,0 +1,3 @@ +Master Toma:
+Scavenger-to-be, good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30557-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30557-01.html new file mode 100644 index 0000000000..eab0d830a0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30557-01.html @@ -0,0 +1,6 @@ +Torai:
+Oh my, I 'most died trying to sell these.
+I tried to sell breast covers to the purty ladies in the valley but they showed their teeth and follered me, sos I ran until my feet sweat.
+Now I wanna go home ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30557-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30557-02.html new file mode 100644 index 0000000000..da4597a10b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30557-02.html @@ -0,0 +1,7 @@ +Torai:
+Ooh ... Did my uncle send it?
+Uncle-
+I've been bad. I'll be a good boy when I go back.
+Thank you. I picked it up 'round here, please take it. It is my 'preciation.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30557-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30557-03.html new file mode 100644 index 0000000000..23bc042256 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/30557-03.html @@ -0,0 +1,4 @@ +Torai:
+Good wishes, then!
+I'm off ... + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/31958-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/31958-01.html new file mode 100644 index 0000000000..301ae12634 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/31958-01.html @@ -0,0 +1,6 @@ +Warehouse Chief Yasheni:
+Oh, so Master Toma sent you...
+He really sends strange things to pay his food bill! I'm quite disappointed in him! These small marbles are useless to me!
+OK. Get going.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/31958-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/31958-02.html new file mode 100644 index 0000000000..8922bf9e5f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/31958-02.html @@ -0,0 +1,6 @@ +Warehouse Chief Yasheni:
+Ah ha! That must be it! If Master Toma sent you, then that must be it!
+You came here to become a Scavenger, right?
+If you've met Toma and carried out his work, then I think I can trust you.
+Here, I'll give you this. Take it to Warehouse Chief Alder over there. He'll test your talent and transfer you to the Scavenger class. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/Q00417_PathOfTheScavenger.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/Q00417_PathOfTheScavenger.java new file mode 100644 index 0000000000..3e5d946066 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00417_PathOfTheScavenger/Q00417_PathOfTheScavenger.java @@ -0,0 +1,698 @@ +/* + * 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.Q00417_PathOfTheScavenger; + +import com.l2jmobius.gameserver.model.actor.L2Attackable; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.model.skills.Skill; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path Of The Scavenger (417) + * @author ivantotov + */ +public final class Q00417_PathOfTheScavenger extends Quest +{ + // NPCs + private static final int WAREHOUSE_KEEPER_RAUT = 30316; + private static final int TRADER_SHARI = 30517; + private static final int TRADER_MION = 30519; + private static final int COLLECTOR_PIPI = 30524; + private static final int HEAD_BLACKSMITH_BRONK = 30525; + private static final int PRIEST_OF_THE_EARTH_ZIMENF = 30538; + private static final int MASTER_TOMA = 30556; + private static final int TORAI = 30557; + private static final int WAREHOUSE_CHIEF_YASENI = 31958; // Careful with this id, might have changed during Chronicles. + // Items + private static final int PIPPIS_LETTER_OF_RECOMMENDATION = 1643; + private static final int ROUTS_TELEPORT_SCROLL = 1644; + private static final int SUCCUBUS_UNDIES = 1645; + private static final int MIONS_LETTER = 1646; + private static final int BRONKS_INGOT = 1647; + private static final int SHARIS_AXE = 1648; + private static final int ZIMENFS_POTION = 1649; + private static final int BRONKS_PAY = 1650; + private static final int SHARIS_PAY = 1651; + private static final int ZIMENFS_PAY = 1652; + private static final int BEAR_PICTURE = 1653; + private static final int TARANTULA_PICTURE = 1654; + private static final int HONEY_JAR = 1655; + private static final int BEAD = 1656; + private static final int BEAD_PARCEL = 1657; + private static final int BEAD_PARCEL2 = 8543; + // Reward + private static final int RING_OF_RAVEN = 1642; + // Monster + private static final int HUNTER_TARANTULA = 20403; + private static final int PLUNDER_TARANTULA = 20508; + private static final int HUNTER_BEAR = 20777; + // Quest Monster + private static final int HONEY_BEAR = 27058; + // Skill + private static final int SPOIL = 254; + // Misc + private static final int MIN_LEVEL = 18; + private static final String FIRST_ATTACKER = "FIRST_ATTACKER"; + private static final String FLAG = "FLAG"; + + public Q00417_PathOfTheScavenger() + { + super(417); + addStartNpc(COLLECTOR_PIPI); + addTalkId(COLLECTOR_PIPI, WAREHOUSE_KEEPER_RAUT, TRADER_MION, TRADER_SHARI, HEAD_BLACKSMITH_BRONK, PRIEST_OF_THE_EARTH_ZIMENF, MASTER_TOMA, TORAI, WAREHOUSE_CHIEF_YASENI); + addAttackId(HUNTER_TARANTULA, PLUNDER_TARANTULA, HUNTER_BEAR, HONEY_BEAR); + addKillId(HUNTER_TARANTULA, PLUNDER_TARANTULA, HUNTER_BEAR, HONEY_BEAR); + registerQuestItems(PIPPIS_LETTER_OF_RECOMMENDATION, ROUTS_TELEPORT_SCROLL, SUCCUBUS_UNDIES, MIONS_LETTER, BRONKS_INGOT, SHARIS_AXE, ZIMENFS_POTION, BRONKS_PAY, SHARIS_PAY, ZIMENFS_PAY, BEAR_PICTURE, TARANTULA_PICTURE, HONEY_JAR, BEAD, BEAD_PARCEL, BEAD_PARCEL2); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() == ClassId.DWARVEN_FIGHTER) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (hasQuestItems(player, RING_OF_RAVEN)) + { + htmltext = "30524-04.htm"; + } + else + { + qs.startQuest(); + qs.setMemoStateEx(1, 0); + giveItems(player, PIPPIS_LETTER_OF_RECOMMENDATION, 1); + htmltext = "30524-05.htm"; + } + } + else + { + htmltext = "30524-02.htm"; + } + } + else if (player.getClassId() == ClassId.SCAVENGER) + { + htmltext = "30524-02a.htm"; + } + else + { + htmltext = "30524-08.htm"; + } + break; + } + case "30524-03.html": + case "30557-02.html": + case "30519-06.html": + { + htmltext = event; + break; + } + case "reply_1": + { + if (hasQuestItems(player, PIPPIS_LETTER_OF_RECOMMENDATION)) + { + takeItems(player, PIPPIS_LETTER_OF_RECOMMENDATION, 1); + switch (getRandom(3)) + { + case 0: + { + giveItems(player, ZIMENFS_POTION, 1); + htmltext = "30519-02.html"; + break; + } + case 1: + { + giveItems(player, SHARIS_AXE, 1); + htmltext = "30519-03.html"; + break; + } + case 2: + { + giveItems(player, BRONKS_INGOT, 1); + htmltext = "30519-04.html"; + break; + } + } + } + break; + } + case "30519-07.html": + { + qs.setMemoStateEx(1, qs.getMemoStateEx(1) + 1); + htmltext = event; + break; + } + case "reply_2": + { + switch (getRandom(2)) + { + case 0: + { + htmltext = "30519-06.html"; + break; + } + case 1: + { + htmltext = "30519-11.html"; + break; + } + } + break; + } + case "reply_3": + { + if ((qs.getMemoStateEx(1) % 10) < 2) + { + qs.setMemoStateEx(1, qs.getMemoStateEx(1) + 1); + htmltext = "30519-07.html"; + } + else if (((qs.getMemoStateEx(1) % 10) == 2) && qs.isMemoState(0)) + { + htmltext = "30519-07.html"; + } + else if (((qs.getMemoStateEx(1) % 10) == 2) && qs.isMemoState(1)) + { + qs.setMemoStateEx(1, qs.getMemoStateEx(1) + 1); + htmltext = "30519-09.html"; + } + else if (((qs.getMemoStateEx(1) % 10) >= 3) && qs.isMemoState(1)) + { + giveItems(player, MIONS_LETTER, 1); + takeItems(player, SHARIS_AXE, 1); + takeItems(player, ZIMENFS_POTION, 1); + takeItems(player, BRONKS_INGOT, 1); + qs.setCond(4, true); + htmltext = "30519-10.html"; + } + break; + } + case "reply_4": + { + takeItems(player, ZIMENFS_PAY, 1); + takeItems(player, SHARIS_PAY, 1); + takeItems(player, BRONKS_PAY, 1); + switch (getRandom(3)) + { + case 0: + { + giveItems(player, ZIMENFS_POTION, 1); + htmltext = "30519-02.html"; + break; + } + case 1: + { + giveItems(player, SHARIS_AXE, 1); + htmltext = "30519-03.html"; + break; + } + case 2: + { + giveItems(player, BRONKS_INGOT, 1); + htmltext = "30519-04.html"; + break; + } + } + break; + } + case "30556-05b.html": + { + if (hasQuestItems(player, TARANTULA_PICTURE) && (getQuestItemsCount(player, BEAD) >= 20)) + { + takeItems(player, TARANTULA_PICTURE, 1); + takeItems(player, BEAD, -1); + giveItems(player, BEAD_PARCEL, 1); + qs.setCond(9, true); + htmltext = event; + } + break; + } + case "30556-06b.html": + { + if (hasQuestItems(player, TARANTULA_PICTURE) && (getQuestItemsCount(player, BEAD) >= 20)) + { + takeItems(player, TARANTULA_PICTURE, 1); + takeItems(player, BEAD, -1); + giveItems(player, BEAD_PARCEL2, 1); + qs.setMemoState(2); + qs.setCond(12, true); + htmltext = event; + } + break; + } + case "30316-02.html": + { + if (hasQuestItems(player, BEAD_PARCEL)) + { + takeItems(player, BEAD_PARCEL, 1); + giveItems(player, ROUTS_TELEPORT_SCROLL, 1); + qs.setCond(10, true); + htmltext = event; + } + break; + } + case "30316-03.html": + { + if (hasQuestItems(player, BEAD_PARCEL)) + { + giveItems(player, ROUTS_TELEPORT_SCROLL, 1); + takeItems(player, BEAD_PARCEL, 1); + qs.setCond(10, true); + htmltext = event; + } + break; + } + case "30557-03.html": + { + if (hasQuestItems(player, ROUTS_TELEPORT_SCROLL)) + { + takeItems(player, ROUTS_TELEPORT_SCROLL, 1); + giveItems(player, SUCCUBUS_UNDIES, 1); + qs.setCond(11, true); + npc.deleteMe(); + htmltext = event; + } + break; + } + case "31958-02.html": + { + if (qs.isMemoState(2) && hasQuestItems(player, BEAD_PARCEL2)) + { + giveAdena(player, 163800, true); + giveItems(player, RING_OF_RAVEN, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 35412); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 42110); + } + else + { + addExpAndSp(player, 591724, 48808); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onAttack(L2Npc npc, L2PcInstance attacker, int damage, boolean isSummon, Skill skill) + { + final QuestState qs = getQuestState(attacker, false); + if ((qs != null) && qs.isStarted()) + { + switch (npc.getId()) + { + + case HUNTER_BEAR: + { + switch (npc.getScriptValue()) + { + case 0: + { + npc.setScriptValue(1); + npc.getVariables().set(FIRST_ATTACKER, attacker.getObjectId()); + break; + } + case 1: + { + if (npc.getVariables().getInt(FIRST_ATTACKER) != attacker.getObjectId()) + { + npc.setScriptValue(2); + } + break; + } + } + break; + } + case HUNTER_TARANTULA: + case PLUNDER_TARANTULA: + case HONEY_BEAR: + { + if (npc.isScriptValue(0)) + { + npc.setScriptValue(1); + npc.getVariables().set(FIRST_ATTACKER, attacker.getObjectId()); + } + + // TODO: This should be skill parameter and not last skill casted. + if ((skill != null) && (skill.getId() == SPOIL)) + { + npc.setScriptValue(2); + } + break; + } + } + } + return super.onAttack(npc, attacker, damage, isSummon); + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true) && npc.isAttackable()) + { + final boolean firstAttacker = (killer.getObjectId() == npc.getVariables().getInt(FIRST_ATTACKER)); + switch (npc.getId()) + { + case HUNTER_BEAR: + { + if (npc.isScriptValue(1) && firstAttacker && hasQuestItems(killer, BEAR_PICTURE) && (getQuestItemsCount(killer, HONEY_JAR) < 5)) + { + final int flag = qs.getInt(FLAG); + if ((flag > 0) && (getRandom(100) < (20 * flag))) + { + addSpawn(HONEY_BEAR, npc, true, 0, true); + qs.set(FLAG, 0); + } + else + { + qs.set(FLAG, flag + 1); + } + } + break; + } + case HONEY_BEAR: + { + if (npc.isScriptValue(2) && firstAttacker && ((L2Attackable) npc).isSpoiled() && hasQuestItems(killer, BEAR_PICTURE)) + { + if (giveItemRandomly(killer, npc, HONEY_JAR, 1, 5, 1.0, true)) + { + qs.setCond(6); + } + } + break; + } + case HUNTER_TARANTULA: + case PLUNDER_TARANTULA: + { + if (npc.isScriptValue(2) && firstAttacker && ((L2Attackable) npc).isSpoiled() && hasQuestItems(killer, TARANTULA_PICTURE)) + { + if (giveItemRandomly(killer, npc, BEAD, 1, 20, 1.0, true)) + { + qs.setCond(8); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == COLLECTOR_PIPI) + { + htmltext = "30524-01.htm"; + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case COLLECTOR_PIPI: + { + if (hasQuestItems(player, PIPPIS_LETTER_OF_RECOMMENDATION)) + { + htmltext = "30524-06.html"; + } + else + { + htmltext = "30524-07.html"; + } + break; + } + case TRADER_MION: + { + if (hasQuestItems(player, PIPPIS_LETTER_OF_RECOMMENDATION)) + { + qs.setCond(2, true); + htmltext = "30519-01.html"; + } + else if ((getQuestItemsCount(player, SHARIS_AXE) + getQuestItemsCount(player, BRONKS_INGOT) + getQuestItemsCount(player, ZIMENFS_POTION)) == 1) + { + if ((qs.getMemoStateEx(1) % 10) == 0) + { + htmltext = "30519-05.html"; + } + else if ((qs.getMemoStateEx(1) % 10) > 0) + { + htmltext = "30519-08.html"; + } + } + else if ((getQuestItemsCount(player, SHARIS_PAY) + getQuestItemsCount(player, BRONKS_PAY) + getQuestItemsCount(player, ZIMENFS_PAY)) == 1) + { + if (qs.getMemoStateEx(1) < 50) + { + htmltext = "30519-12.html"; + } + else + { + giveItems(player, MIONS_LETTER, 1); + takeItems(player, SHARIS_PAY, 1); + takeItems(player, ZIMENFS_PAY, 1); + takeItems(player, BRONKS_PAY, 1); + qs.setCond(4, true); + htmltext = "30519-15.html"; + } + } + else if (hasQuestItems(player, MIONS_LETTER)) + { + htmltext = "30519-13.html"; + } + else if (hasAtLeastOneQuestItem(player, BEAR_PICTURE, TARANTULA_PICTURE, BEAD_PARCEL, ROUTS_TELEPORT_SCROLL, SUCCUBUS_UNDIES)) + { + htmltext = "30519-14.html"; + } + break; + } + case TRADER_SHARI: + { + if (hasQuestItems(player, SHARIS_AXE)) + { + if (qs.getMemoStateEx(1) < 20) + { + takeItems(player, SHARIS_AXE, 1); + giveItems(player, SHARIS_PAY, 1); + qs.setMemoStateEx(1, qs.getMemoStateEx(1) + 10); + htmltext = "30517-01.html"; + } + else + { + takeItems(player, SHARIS_AXE, 1); + giveItems(player, SHARIS_PAY, 1); + qs.setMemoState(1); + qs.setMemoStateEx(1, qs.getMemoStateEx(1) + 10); + qs.setCond(3, true); + htmltext = "30517-02.html"; + } + } + else if (hasQuestItems(player, SHARIS_PAY)) + { + htmltext = "30517-03.html"; + } + break; + } + case HEAD_BLACKSMITH_BRONK: + { + if (hasQuestItems(player, BRONKS_INGOT)) + { + if (qs.getMemoStateEx(1) < 20) + { + takeItems(player, BRONKS_INGOT, 1); + giveItems(player, BRONKS_PAY, 1); + qs.setMemoStateEx(1, qs.getMemoStateEx(1) + 10); + htmltext = "30525-01.html"; + } + else + { + takeItems(player, BRONKS_INGOT, 1); + giveItems(player, BRONKS_PAY, 1); + qs.setMemoState(1); + qs.setMemoStateEx(1, qs.getMemoStateEx(1) + 10); + qs.setCond(3, true); + htmltext = "30525-02.html"; + } + } + else if (hasQuestItems(player, BRONKS_PAY)) + { + htmltext = "30525-03.html"; + } + break; + } + case PRIEST_OF_THE_EARTH_ZIMENF: + { + if (hasQuestItems(player, ZIMENFS_POTION)) + { + if (qs.getMemoStateEx(1) < 20) + { + takeItems(player, ZIMENFS_POTION, 1); + giveItems(player, ZIMENFS_PAY, 1); + qs.setMemoStateEx(1, qs.getMemoStateEx(1) + 10); + htmltext = "30538-01.html"; + } + else + { + takeItems(player, ZIMENFS_POTION, 1); + giveItems(player, ZIMENFS_PAY, 1); + qs.setMemoState(1); + qs.setMemoStateEx(1, qs.getMemoStateEx(1) + 10); + qs.setCond(3, true); + htmltext = "30538-02.html"; + } + } + else if (hasQuestItems(player, ZIMENFS_PAY)) + { + htmltext = "30538-03.html"; + } + break; + } + case MASTER_TOMA: + { + if (hasQuestItems(player, MIONS_LETTER)) + { + takeItems(player, MIONS_LETTER, 1); + giveItems(player, BEAR_PICTURE, 1); + qs.setCond(5, true); + qs.set(FLAG, 0); + htmltext = "30556-01.html"; + } + else if (hasQuestItems(player, BEAR_PICTURE)) + { + if (getQuestItemsCount(player, HONEY_JAR) < 5) + { + htmltext = "30556-02.html"; + } + else + { + takeItems(player, BEAR_PICTURE, 1); + giveItems(player, TARANTULA_PICTURE, 1); + takeItems(player, HONEY_JAR, -1); + qs.setCond(7, true); + htmltext = "30556-03.html"; + } + } + else if (hasQuestItems(player, TARANTULA_PICTURE)) + { + if (getQuestItemsCount(player, BEAD) < 20) + { + htmltext = "30556-04.html"; + } + else + { + htmltext = "30556-05a.html"; + } + } + else if (hasQuestItems(player, BEAD_PARCEL) && !hasQuestItems(player, BEAD_PARCEL2)) + { + htmltext = "30556-06a.html"; + } + else if (hasQuestItems(player, BEAD_PARCEL2) && !hasQuestItems(player, BEAD_PARCEL) && qs.isMemoState(2)) + { + htmltext = "30556-06c.html"; + } + else if (hasAtLeastOneQuestItem(player, ROUTS_TELEPORT_SCROLL, SUCCUBUS_UNDIES)) + { + htmltext = "30556-07.html"; + } + break; + } + case WAREHOUSE_KEEPER_RAUT: + { + if (hasQuestItems(player, BEAD_PARCEL)) + { + htmltext = "30316-01.html"; + } + else if (hasQuestItems(player, ROUTS_TELEPORT_SCROLL)) + { + htmltext = "30316-04.html"; + } + else if (hasQuestItems(player, SUCCUBUS_UNDIES)) + { + giveAdena(player, 81900, true); + giveItems(player, RING_OF_RAVEN, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 160267, 17706); + } + else if (level == 19) + { + addExpAndSp(player, 228064, 21055); + } + else + { + addExpAndSp(player, 295862, 24404); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = "30316-05.html"; + } + break; + } + case TORAI: + { + if (hasQuestItems(player, ROUTS_TELEPORT_SCROLL)) + { + htmltext = "30557-01.html"; + } + break; + } + case WAREHOUSE_CHIEF_YASENI: + { + if (hasQuestItems(player, BEAD_PARCEL2) && !hasQuestItems(player, BEAD_PARCEL) && qs.isMemoState(2)) + { + htmltext = "31958-01.html"; + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-01.html new file mode 100644 index 0000000000..6ebb4cbb7b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-01.html @@ -0,0 +1,4 @@ +Blacksmith Pinter:
+Ah, this letter! Have you really brought this from Kluto? It is beyond my power, what should I do ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-02.html new file mode 100644 index 0000000000..e22db3c725 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-02.html @@ -0,0 +1,4 @@ +Blacksmith Pinter:
+Actually, Kluto asked me for something before... I kept it hidden in the corner of the blacksmith's shop for a long time, but oh dear, the item has been stolen! If I don't have it, Kluto will be terribly angry... he may seem like a gentleman but he has a temper like fire. When he is angry, not even the head blacksmiths can calm him. How will I find that item?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-03.html new file mode 100644 index 0000000000..a274a98b48 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-03.html @@ -0,0 +1,5 @@ +Blacksmith Pinter:
+Are you sure? Could you do that?
+If so, I can give you one clue. This is a footprint that was discovered on the floor of the blacksmith shop on the night of the robbery. I think that it is probably the footprint of the thief. Looking at the footprint, there is no doubt that it is one of a Vuku Orc Fighter. If you catch them and destroy them, I'm sure something will come out.
+Here, I will give you an impression of the footstep to use as a clue in catching the thief. By the way, the thing that was stolen was a large box. Thank you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-04.html new file mode 100644 index 0000000000..23278b5194 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-04.html @@ -0,0 +1,3 @@ +Blacksmith Pinter:
+I see you have not found the stolen item yet. Please hurry and find it. My life depends upon your success. You know who the thieves are, right? We strongly suspect the Vuku Orc Fighters. Hurry and catch them! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-05.html new file mode 100644 index 0000000000..cce58be4f2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-05.html @@ -0,0 +1,4 @@ +Blacksmith Pinter:
+Yes, this is it! Thank you so much. Let me look it over once more, then I hope you will take it to Kluto.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-06.html new file mode 100644 index 0000000000..4a79dd8a16 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-06.html @@ -0,0 +1,5 @@ +Blacksmith Pinter:
+Compensation ... right. Dwarves do not operate without something in return ... Hmm, what would you like?
+Ah, you are in the midst of taking the test of the Artisan, aren't you? If that is so, then I will give you this. However, you must not tell anyone what you have done. If this becomes known, we could all be permanently removed from the Black Anvil Guild.
+Well then, please take this box back to Kluto. Thank you. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-07.html new file mode 100644 index 0000000000..5fb57c3d7e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30298-07.html @@ -0,0 +1,4 @@ +Blacksmith Pinter:
+Go and take the item to him. Isn't that enough compensation?
+I tell you again, this task is an absolute secret. If things go wrong, I'll be ruined for the rest of my life! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-01.html new file mode 100644 index 0000000000..ec3c0b2b8e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-01.html @@ -0,0 +1,6 @@ +Blacksmith Kluto:
+Oh! Do you want to be an Artisan? I see you've already passed the first test! That Silvera, who gave you the first test, has a strange way of speaking, but she's actually quite a good-natured girl. Traveling has changed her accent though ... oh well ...
+My son is infatuated with that girl these days. He's quite a good boy, not just because he's my son ... What do you think? Do you think you can help my son?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-02.html new file mode 100644 index 0000000000..c036fe49d3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-02.html @@ -0,0 +1,4 @@ +Blacksmith Kluto:
+Oh, really? But aren't you here to take the test? One who has come to take a test mustn't let his mind wander to other things ... How will you take the test properly with such an attitude? I was only testing you with the story of my son ... I'm taking off points! Oh dear ...! It will be difficult to pass the test, I fear ....
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-03.html new file mode 100644 index 0000000000..318a82ebad --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-03.html @@ -0,0 +1,4 @@ +Blacksmith Kluto:
+Give you another chance? Hmm ... Very well! In return, you must do one thing that I ask you without fail. If you complete it properly, I will give you one more chance. What do you say, will you do as I tell you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-04.html new file mode 100644 index 0000000000..64155729bf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-04.html @@ -0,0 +1,4 @@ +Blacksmith Kluto:
+Good! So now listen carefully to what I have to say. First, take this letter to Blacksmith Pinter in the town of Gludio. If you give him this letter, he will give you something. Bring that back to me. What do you think? It's very easy, isn't it?
+If you've understood, go and get started! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-05.html new file mode 100644 index 0000000000..e1e78c155b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-05.html @@ -0,0 +1,6 @@ +Blacksmith Kluto:
+Ah, look at myself. I said something unnecessary. My apologies.
+But it seems you have quite a strong character. Actually, all that I said was simply to test your qualifications. You have passed, for now. I see you are a fine Dwarf. It is an unwritten law that we Dwarves do not put our efforts into something that is unprofitable, and I can see that you have some talent!
+But ... There is something I must confess ... There is a bit of a problem ... You cannot take a test in these circumstances ... What should I do ...?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-06.html new file mode 100644 index 0000000000..e801359e52 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-06.html @@ -0,0 +1,4 @@ +Blacksmith Kluto:
+Hmm ... Actually ... It is a complicated matter that is a bit difficult to explain to you. However, if you help me, I will make some arrangements so you can definitely take the test of the Artisan. What do you think? Will you help me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-07.html new file mode 100644 index 0000000000..df45a864b6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-07.html @@ -0,0 +1,5 @@ +Blacksmith Kluto:
+Thank you, youngster. So, from now on I want you to listen carefully to what I say.
+Take this letter that I give you to Blacksmith Pinter in the town of Gludio. If you give him the letter, he will give you something. Bring that back to me. What do you think? It's very easy, isn't it?
+Now that you know, depart quickly! Every moment is critical! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-08.html new file mode 100644 index 0000000000..3af40448b0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-08.html @@ -0,0 +1,4 @@ +Blacksmith Kluto:
+What, you haven't left yet?
+Hurry up and take the letter to Blacksmith Pinter in the town of Gludio. Then, you must return to me with the item he gives you. If you understand, then be off! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-09.html new file mode 100644 index 0000000000..4f941573c5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-09.html @@ -0,0 +1,6 @@ +Blacksmith Kluto:
+Ha ha ha, you have finally brought it. Well done!
+Hmmm, but isn't this the certificate for the second test of the Artisan? Where did you get it?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-10.html new file mode 100644 index 0000000000..bfe0f6a5a3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-10.html @@ -0,0 +1,6 @@ +Blacksmith Kluto:
+Ha Ha Ha, with this, you have passed the final test. Congratulations! Are you confused?
+I was testing your loyalty to see if you would keep a secret until the last moment. All that you have done until now was actually part of the test. The box that you brought is in fact just an empty box. I am sorry if I seemed like I was tricking you for a while, but this is how we Dwarves give our tests. "Always pursue profit" and "Never betray your colleague in a crisis" are two very different proverbs, and it is difficult to live up to them both.
+Since you have done both splendidly, I will give you the final certificate for passing the test of the Artisan. Now take this and go to Head Blacksmith Tapoy to change profession to an Artisan. Of course, you know the required level is 20, right?
+If you understand, go on now and become an Artisan. From now on, we are colleagues! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-11.html new file mode 100644 index 0000000000..8c7342fc72 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-11.html @@ -0,0 +1,5 @@ +Blacksmith Kluto:
+Are you sure? Did Blacksmith Pinter really give this to you?
+I see I have no choice. What a shame, but we will have to eternally banish our old friend from our Black Anvil guild. How could he have done such a thing, what a foolish friend ...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-12.html new file mode 100644 index 0000000000..81fd1bf4c7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30317-12.html @@ -0,0 +1,7 @@ +Blacksmith Kluto:
+Really? So you've met such a kind-hearted Dwarf. Then I guess I have no choice.
+Ha ha ha, do you think that I would fall for a lie like that? But anyway, with this, you have passed the final test. Congratulations!
+Are you confused? My question was to test your loyalty and see if you would keep a secret until under pressure. All that you have done was actually part of the test. The box that you brought is just an empty box. I am sorry if I seemed like I was tricking you for a while, but this is how we Dwarves give our tests. "Always pursue profits" and "Never betray your colleague in a crisis" are two very different proverbs, and it is difficult to live up to them.
+Since you have done both splendidly, I will give you the final certificate for passing the test of the Artisan. Now take this and go to Head Blacksmith Tapoy to change profession to an Artisan. Of course, you know the required level is 20, right?
+If you've understand, go on now and become an Artisan. From now on, we are colleagues! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-01.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-01.htm new file mode 100644 index 0000000000..b89bdd6fb7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-01.htm @@ -0,0 +1,5 @@ +Blacksmith Silvera:
+I teach young Dwarves and manage the Test of the Artisan. All apprentice Dwarves arrive at an important turning point where they must decide their future occupations. Dwarves may choose the path of the Artisan or the Scavenger.
+Artisans, who I'm responsible for testing, create something from nothing. They have unbelievable talents and use the most modern techniques available in the world today for their creations. The Artisan is the middle step in the process of becoming a Warsmith. If you wish to become the greatest skilled craftsman in Aden, you must walk the path of the Artisan.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-02.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-02.htm new file mode 100644 index 0000000000..3e23379b3e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-02.htm @@ -0,0 +1,3 @@ +Blacksmith Silvera:
+But one moment! You wish to be an Artisan? You must be mistaken. You cannot become an Artisan! Impossible! Go walk your own path. I do not have time to spare for dealing with those who are not qualified. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-02a.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-02a.htm new file mode 100644 index 0000000000..f8b60fe849 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-02a.htm @@ -0,0 +1,3 @@ +Blacksmith Silvera:
+You! You must be mistaken. You are already an Artisan! Are you joking?! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-03.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-03.htm new file mode 100644 index 0000000000..9455006109 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-03.htm @@ -0,0 +1,3 @@ +Blacksmith Silvera:
+Sorry! You are not yet qualified to be an Artisan. I warn you: it is not an easy path. To even take the test, you must first meet certain minimum qualifications. Gain more experience. Then return to me after you have reached at least level 18. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-04.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-04.htm new file mode 100644 index 0000000000..c7bdf3f068 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-04.htm @@ -0,0 +1,3 @@ +Blacksmith Silvera:
+What are you doing, loitering around here when you've already taken the test? Go on and change profession to an Artisan! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-05.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-05.htm new file mode 100644 index 0000000000..959e6fce15 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-05.htm @@ -0,0 +1,6 @@ +Blacksmith Silvery:
+Oh, fine, fine! I see that you are ready for the Artisan test.
+It is administered by the guild master of the Black Anvil, of whom you have certainly heard - a blacksmith of great renown! I will give the first, most basic of the tests; if you pass, you may go on to the second test.
+Shall we begin?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-06.htm b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-06.htm new file mode 100644 index 0000000000..731ea65b71 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-06.htm @@ -0,0 +1,5 @@ +Blacksmith Silvera:
+The first test is very easy; Though the Artisan's main task is making things, to be sure, he must also be able to find the materials needed for manufacture by himself, and not depend on others. The first test puts its focus on those basic skills. Oh, and by the way, take this ring while you are taking the test. Ok?
+Now I will give you the task. If you look around the Abandoned Coal Mines, you will come face to face with the nasty boogle ratman gang. They are the bad guys that trouble us Dwarves. Kill them and come back. But when you look at them, you'll see that they have nasty front teeth. The funny thing is that their front teeth are very useful materials. You know the famous motto of the Dwarves, right? "Whatever it is, there is nothing to throw out!"
+Catch boogle ratmen and boogle ratman leaders and bring their front teeth.This is my task. See that you bring me ten boogle ratman teeth and two teeth of the boogle ratman leaders. If you come up short, you fail! So make sure you have the right number. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-07.html new file mode 100644 index 0000000000..9be7f82450 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-07.html @@ -0,0 +1,3 @@ +Blacksmith Silvera:
+Ok, if you've brought your homework, let me take a look! One, two, three ... There's not enough! You don't want to fail your first test do you? I told you clearly! Ten boogle ratman front teeth, and two from the boogle ratman leaders!If you understand that, go and find them! Hurry up! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-08a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-08a.html new file mode 100644 index 0000000000..f8be74e5cf --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-08a.html @@ -0,0 +1,6 @@ +Blacksmith Silvery:
+Let us see, then, the front teeth of the Boogle Ratmen. Did you get them all?... Yes, the count is correct. My congratulations!
+The first test is completed. The second test is held in one of two places, and you may choose where you take it: Gludio Territory or Schuttgart Territory. Which do you choose?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-08b.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-08b.html new file mode 100644 index 0000000000..0cf3ee8f64 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-08b.html @@ -0,0 +1,3 @@ +Blacksmith Silvery:
+Very well, then! Seek Blacksmith Kluto in Gludin Village. From him you will receive the second of the tests. Good fortune to you! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-08c.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-08c.html new file mode 100644 index 0000000000..f39f212e2d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-08c.html @@ -0,0 +1,3 @@ +Blacksmith Silvery:
+Let it be so! Seek out Railroad Worker Obi on the Plains of Plunder. He shall instruct you in what to do next. Good luck, candidate! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-09.html new file mode 100644 index 0000000000..154892c575 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-09.html @@ -0,0 +1,3 @@ +Blacksmith Silvera:
+Why are you still here? To take the second test, I told you to go to Gludin ... Quickly go and meet Blacksmith Kluto. He will give you detailed instructions for the second test. Well then, good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-09a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-09a.html new file mode 100644 index 0000000000..022dfc8fbb --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30527-09a.html @@ -0,0 +1,3 @@ +Blacksmith Silvery:
+Ho, now! Why do you tarry? Your next test lies on the Plains of Plunder, not in my shop! Go there at once, and good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30531-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30531-01.html new file mode 100644 index 0000000000..5541422d6f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30531-01.html @@ -0,0 +1,4 @@ +Lockirin of the Iron Gate:
+Hmm. I see you have come a long way, and I thank you, but... since you are here, I infer that you failed the Artisan Test.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30531-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30531-02.html new file mode 100644 index 0000000000..7d3cc172f7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30531-02.html @@ -0,0 +1,4 @@ +Lockirin of the Iron Gate:
+Well, it's not a fatal problem. However, I'll have to give you a bit of a history lesson - specifically, the history concerning the war between the Orcs and the Elves.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30531-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30531-03.html new file mode 100644 index 0000000000..ce54d19a8a --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30531-03.html @@ -0,0 +1,4 @@ +Lockirin of the Iron Gate:
+We Dwarves sold weapons to the Orcs. Armed with our steel, they were a match and more for the Elves. However, we also sold weapons to the Humans, once they arrived on the scene. We were shortsighted; all we thought of was the profit in the arms trade. Can you predict what happened?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30531-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30531-04.html new file mode 100644 index 0000000000..68322088b7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30531-04.html @@ -0,0 +1,5 @@ +Lockirin of the Iron Gate:
+The Orcs were defeated with the help of the Humans, and then the Elves turned on us. They held us responsible for the losses they suffered in the war. They killed the great Dwarf King, and the fall of the Dwarves soon followed.
+After that, the Black Anvil Guild made a new rule: they would no longer sell weapons to outsiders. You see? It is not enough that you can do something; you should always ask if you should do it.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30531-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30531-05.html new file mode 100644 index 0000000000..4df26e2973 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/30531-05.html @@ -0,0 +1,3 @@ +Lockirin of the Iron Gate:
+Very well. You have passed this test and I shall certify that. When you become an Artisan, remember the lesson you learned today, and always consider the consequences of what you make. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31956-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31956-01.html new file mode 100644 index 0000000000..4b0f247eb9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31956-01.html @@ -0,0 +1,4 @@ +Warehouse Keeper Rydel:
+What brings you here? You aren't here to apply to be a Warehouse Keeper, are you?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31956-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31956-02.html new file mode 100644 index 0000000000..b31cdffd40 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31956-02.html @@ -0,0 +1,6 @@ +Warehouse Keeper Rydie:
+Oh, you're the one who is taking the Path to an Artisan!
+What a surprise! I haven't seen anyone taking the Path to an Artisan in a long time!
+Let me see, the good news... Means you're qualified to be an Artisan!
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31956-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31956-03.html new file mode 100644 index 0000000000..a2a8022f6b --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31956-03.html @@ -0,0 +1,6 @@ +Warehouse Keeper Rydie:
+Well, the stories? They are all kinds of passwords for the test. Some are stories about a hard mission, considering the question and coming up with an answer.
+Don't worry, it probably won't fail this test. Keep this in mind!
+You and I, we're both Dwarves.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31956-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31956-04.html new file mode 100644 index 0000000000..de0e63ef0d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31956-04.html @@ -0,0 +1,4 @@ +Warehouse Keeper Rydel:
+Good, then take this certificate.
+You've passed the Path to an Artisan! Go see Head Blacksmith Tapoy in Gludin Village and he'll make you an Artisan. Good luck! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-01.html new file mode 100644 index 0000000000..031b031271 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-01.html @@ -0,0 +1,8 @@ +Mineral Trader Hitchi:
+Is this the test of the Artisan?
+Then you definitely have something to tell me!
+Huh, then the final execution day is...!
+Well, what is it? Please tell me!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-02.html new file mode 100644 index 0000000000..8f138954d7 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-02.html @@ -0,0 +1,6 @@ +Mineral Trader Hitchi:
+The golden wagon wheels shake..!
+By the way, do you have any idea what you just said?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-03.html new file mode 100644 index 0000000000..e449591237 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-03.html @@ -0,0 +1,4 @@ +Mineral Trader Hitchi:
+Ha! Awesome! Just like a craftsman, eh?
+Thanks for telling me that story. Now you should go talk to Lockirin in Dwarven Village at the Iron Gate Guild. He'll tell you what you need to do next. Ha! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-04.html new file mode 100644 index 0000000000..70481346d5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-04.html @@ -0,0 +1,3 @@ +Mineral Trader Hitchi:
+Thank you for telling me the story. Now go to Lockirin in Dwarven Village at the Iron Gate Guild. He'll tell you what you need to do next. Ha! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-05.html new file mode 100644 index 0000000000..edc6831bf1 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-05.html @@ -0,0 +1,6 @@ +Mineral Trader Hitchi:
+Is that so?
+Well, that has nothing to do with me, anyway!
+Please go and speak with the Railroad Worker Obi and deliver this:
+
Registration complete. Will wait for execution date.

+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-06.html new file mode 100644 index 0000000000..6769189bc0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-06.html @@ -0,0 +1,5 @@ +Mineral Trader Hitchi:
+Do you need something else?
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-06a.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-06a.html new file mode 100644 index 0000000000..5416bc567c --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-06a.html @@ -0,0 +1,5 @@ +Mineral Trader Hitch:
+Please give this message to Railroad Worker Obi.
+
Registration complete. Will wait for execution date.

+That's it. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-07.html new file mode 100644 index 0000000000..dcc6a88ea9 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-07.html @@ -0,0 +1,6 @@ +Mineral Trader Hitchi:
+Is that so?
+Oh, it's not that bad!
+Please deliver this to Warehouse Keeper Rydel in the Town of Schuttgart.
+Good news arrived that you've been waiting for. Give messenger appropriate reward.
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-08.html new file mode 100644 index 0000000000..ff6d978880 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-08.html @@ -0,0 +1,4 @@ +Mineral Trader Hitchi:
+Please deliver this to Warehouse Keeper Rydel in the Town of Schuttgart.
+
Good news arrived that you've been waiting for. Give messenger appropriate reward.

+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-09.html new file mode 100644 index 0000000000..d246c91c1d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-09.html @@ -0,0 +1,6 @@ +Mineral Trader Hitchi:
+Just a minute, what's the hurry?
+Come on, why don't you wait here for a while? Wouldn't you like to be an Artisan?
+Don't get me wrong... I just wanted to find out what you thought about our six Dwarven guilds.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-10.html new file mode 100644 index 0000000000..593074b7cd --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-10.html @@ -0,0 +1,7 @@ +Mineral Trader Hitchi:
+I think Obi probably told me this story... The six Dwarven Guilds are like the columns that support the house of Dwarves.
+Architecture, trade, iron manufacture, warehousing, collecting.. Dwarves would cease to exist if even one of the six Guilds went missing.
+We Dwarves must put the good of our entire race above personal enrichment!
+We must never forget the bitter experiences that we've had in the past... We were enslaved by a tribe of savages... Only to see them destroyed by the very weapons they forced us to make for them!
+You passed the test! I'll give you this Pass Certificate and the Head Blacksmith will make you an Artisan. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-11.html new file mode 100644 index 0000000000..bf4f346b8d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/31963-11.html @@ -0,0 +1,6 @@ +Mineral Trader Hitchi:
+Just a minute, what's the hurry?
+Come on, please wait here with me for a while. Wouldn't you like to be an Artisan?
+Don't get me wrong... I just want to know what you think about our six Dwarven guilds.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-01.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-01.html new file mode 100644 index 0000000000..15481309d6 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-01.html @@ -0,0 +1,6 @@ +Railroad Worker Obi:
+The Artisan's test? Isn't that test conducted by the Black Anvil Guild?
+Obviously, I'm a miner from the Gray Pillar Guild. I have nothing to do with Artisans!
+ + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-02.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-02.html new file mode 100644 index 0000000000..11206b291f --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-02.html @@ -0,0 +1,6 @@ +Railroad Worker Obi:
+Hey, why did you give up so easy?
+It doesn't matter whether I belong to the Gray Pillar guild or not, does it?
+All six guilds are closely related and share collaborative relationships with each other. I even know some Collectors who work in Blacksmith Shops! Then, it shouldn't be so strange for me to give the test of an Artisan, right?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-03.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-03.html new file mode 100644 index 0000000000..56558aee69 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-03.html @@ -0,0 +1,6 @@ +Railroad Worker Obi:
+Oh, well, you're a youngster, and youngsters make a lot of mistakes!
+Just don't forget that all of our guilds have the same aim, that is, we exist to protect all Dwarves and independence!
+Are you ready to hear about the test?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-04.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-04.html new file mode 100644 index 0000000000..3e3496719e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-04.html @@ -0,0 +1,5 @@ +Railroad Worker Obi:
+You have a good mind, and I think you'll make a good Artisan.
+Never forget, we Dwarves stick together, no matter which guild we belong to.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-05.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-05.html new file mode 100644 index 0000000000..25f5c0466e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-05.html @@ -0,0 +1,5 @@ +Railroad Worker Obi:
+The test isn't very hard at all.
+All you have to do is listen to a story and deliver it Mineral Trader Hitchi in the Town of Schuttgart as it is, and follow his orders. Isn't that simple?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-06.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-06.html new file mode 100644 index 0000000000..221dc334ea --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-06.html @@ -0,0 +1,5 @@ +Railroad Worker Obi:
+OK, but remember, you must never tell this story to anyone else! All Artisans must learn the importance of keeping secrets!
+And, you must suppress your curiousity as well. Your role is only to deliver my words just as they are. Well, are you ready?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-07.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-07.html new file mode 100644 index 0000000000..4cbb4ba396 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-07.html @@ -0,0 +1,5 @@ +Railroad Worker Obi:
+
The Golden Wheels are shaking. If you hit now,
+you can change the balance of the six pillars

+Deliver these words to Mineral Trader Hitchi in the Town of Schuttgart. I'll answer no questions! If you want to pass the test, follow my words to the letter. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-08.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-08.html new file mode 100644 index 0000000000..de2aa596db --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-08.html @@ -0,0 +1,3 @@ +Railroad Worker Obi:
+I already told you. Deliver the message to Mineral Trader Hitchi in the Town of Schuttgart. + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-09.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-09.html new file mode 100644 index 0000000000..2a902831ce --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-09.html @@ -0,0 +1,4 @@ +Railroad Worker Obi:
+You're back so soon?
Do you have a message for me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-10.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-10.html new file mode 100644 index 0000000000..25a9bda4ee --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-10.html @@ -0,0 +1,6 @@ +Railroad Worker Obi:
+I see.
+Then I'll proceed with my assignment.
+Haven't you felt anything while doing this?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-11.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-11.html new file mode 100644 index 0000000000..cfaa13ca97 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-11.html @@ -0,0 +1,6 @@ +Railroad Worker Obi:
+I didn't use you! That was the test!
+Well, let's call it your education.
+Artisans make things. Once things are made, they are out of our control. Therefore, we must always think carefully about what we're making.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-12.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-12.html new file mode 100644 index 0000000000..4965c4822e --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-12.html @@ -0,0 +1,8 @@ +Railroad Worker Obi:
+That's right! That's the conclusion after serious thought, but doesn't just want to admit fostering trouble in our Dwarven Guilds.
+We, Dwarves have been persecuted too long. Even though we're extremely dextrous, and quite rich, we lack any real political power!
+Why? We've been too selfish!
+We should think more about our entire race, not just personal wealth!
+Just the words of an old Railroad Worker who remains alone at the place of dreams...
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-13.html b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-13.html new file mode 100644 index 0000000000..e303405ef5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/32052-13.html @@ -0,0 +1,5 @@ +Railroad Worker Obi:
+Now I'll give you this Final Pass Certificate.
+You're fully qualified to become an Artisan.
+Speak with the Head Blacksmith near here. Congratulations! + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/Q00418_PathOfTheArtisan.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/Q00418_PathOfTheArtisan.java new file mode 100644 index 0000000000..4fe6687081 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/Q00418_PathOfTheArtisan/Q00418_PathOfTheArtisan.java @@ -0,0 +1,637 @@ +/* + * 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.Q00418_PathOfTheArtisan; + +import com.l2jmobius.gameserver.enums.QuestSound; +import com.l2jmobius.gameserver.model.actor.L2Npc; +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; +import com.l2jmobius.gameserver.model.base.ClassId; +import com.l2jmobius.gameserver.model.quest.Quest; +import com.l2jmobius.gameserver.model.quest.QuestState; +import com.l2jmobius.gameserver.network.serverpackets.SocialAction; +import com.l2jmobius.gameserver.util.Util; + +/** + * Path Of The Artisan (418) + * @author ivantotov + */ +public final class Q00418_PathOfTheArtisan extends Quest +{ + // NPCs + private static final int BLACKSMITH_SILVERA = 30527; + private static final int BLACKSMITH_PINTER = 30298; + private static final int BLACKSMITH_KLUTO = 30317; + private static final int IRON_GATES_LOCKIRIN = 30531; + private static final int WAREHOUSE_KEEPER_RYDEL = 31956; // Careful with this id, might have changed during Chronicles. + private static final int MINERAL_TRADER_HITCHI = 31963; // Careful with this id, might have changed during Chronicles. + private static final int RAILROAD_WORKER_OBI = 32052; // Careful with this id, might have changed during Chronicles. + // Items + private static final int SILVERYS_RING = 1632; + private static final int PASS_1ST_CERTIFICATE = 1633; + private static final int PASS_2ND_CERTIFICATE = 1634; + private static final int BOOGLE_RATMAN_TOOTH = 1636; + private static final int BOOGLE_RATMAN_LEADERS_TOOTH = 1637; + private static final int KLUTOS_LETTER = 1638; + private static final int FOOTPRINT_OF_THIEF = 1639; + private static final int STOLEN_SECRET_BOX = 1640; + private static final int SECRET_BOX = 1641; + // Reward + private static final int FINAL_PASS_CERTIFICATE = 1635; + // Monster + private static final int VUKU_ORC_FIGHTER = 20017; + private static final int BOOGLE_RATMAN = 20389; + private static final int BOOGLE_RATMAN_LEADER = 20390; + // Misc + private static final int MIN_LEVEL = 18; + + public Q00418_PathOfTheArtisan() + { + super(418); + addStartNpc(BLACKSMITH_SILVERA); + addTalkId(BLACKSMITH_SILVERA, BLACKSMITH_PINTER, BLACKSMITH_KLUTO, IRON_GATES_LOCKIRIN, WAREHOUSE_KEEPER_RYDEL, MINERAL_TRADER_HITCHI, RAILROAD_WORKER_OBI); + addKillId(VUKU_ORC_FIGHTER, BOOGLE_RATMAN, BOOGLE_RATMAN_LEADER); + registerQuestItems(SILVERYS_RING, PASS_1ST_CERTIFICATE, PASS_2ND_CERTIFICATE, BOOGLE_RATMAN_TOOTH, BOOGLE_RATMAN_LEADERS_TOOTH, KLUTOS_LETTER, FOOTPRINT_OF_THIEF, STOLEN_SECRET_BOX, SECRET_BOX); + } + + @Override + public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, false); + if (qs == null) + { + return null; + } + + String htmltext = null; + switch (event) + { + case "ACCEPT": + { + if (player.getClassId() == ClassId.DWARVEN_FIGHTER) + { + if (player.getLevel() >= MIN_LEVEL) + { + if (hasQuestItems(player, FINAL_PASS_CERTIFICATE)) + { + htmltext = "30527-04.htm"; + } + else + { + htmltext = "30527-05.htm"; + } + } + else + { + htmltext = "30527-03.htm"; + } + } + else if (player.getClassId() == ClassId.ARTISAN) + { + htmltext = "30527-02a.htm"; + } + else + { + htmltext = "30527-02.htm"; + } + break; + } + case "30527-06.htm": + { + qs.startQuest(); + giveItems(player, SILVERYS_RING, 1); + htmltext = event; + break; + } + case "30527-08b.html": + { + takeItems(player, SILVERYS_RING, 1); + takeItems(player, BOOGLE_RATMAN_TOOTH, -1); + takeItems(player, BOOGLE_RATMAN_LEADERS_TOOTH, -1); + giveItems(player, PASS_1ST_CERTIFICATE, 1); + qs.setCond(3, true); + htmltext = event; + break; + } + case "30527-08c.html": + { + takeItems(player, SILVERYS_RING, 1); + takeItems(player, BOOGLE_RATMAN_TOOTH, -1); + takeItems(player, BOOGLE_RATMAN_LEADERS_TOOTH, -1); + qs.setMemoState(10); + qs.setCond(8, true); + htmltext = event; + break; + } + case "30298-02.html": + case "30317-02.html": + case "30317-03.html": + case "30317-05.html": + case "30317-06.html": + case "30317-11.html": + case "30531-02.html": + case "30531-03.html": + case "30531-04.html": + case "31956-02.html": + case "31956-03.html": + case "32052-02.html": + case "32052-03.html": + case "32052-04.html": + case "32052-05.html": + case "32052-06.html": + case "32052-10.html": + case "32052-11.html": + case "32052-12.html": + { + htmltext = event; + break; + } + case "30298-03.html": + { + if (hasQuestItems(player, KLUTOS_LETTER)) + { + takeItems(player, KLUTOS_LETTER, 1); + giveItems(player, FOOTPRINT_OF_THIEF, 1); + qs.setCond(5, true); + htmltext = event; + } + break; + } + case "30298-06.html": + { + if (hasQuestItems(player, FOOTPRINT_OF_THIEF, STOLEN_SECRET_BOX)) + { + giveItems(player, PASS_2ND_CERTIFICATE, 1); + takeItems(player, FOOTPRINT_OF_THIEF, 1); + takeItems(player, STOLEN_SECRET_BOX, 1); + giveItems(player, SECRET_BOX, 1); + qs.setCond(7, true); + htmltext = event; + } + break; + } + case "30317-04.html": + { + giveItems(player, KLUTOS_LETTER, 1); + qs.setCond(4, true); + htmltext = event; + break; + } + case "30317-07.html": + { + giveItems(player, KLUTOS_LETTER, 1); + qs.setCond(4); + htmltext = event; + break; + } + case "30317-10.html": + { + if (hasQuestItems(player, PASS_2ND_CERTIFICATE, SECRET_BOX)) + { + giveAdena(player, 163800, true); + giveItems(player, FINAL_PASS_CERTIFICATE, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 320534, 32452); + } + else if (level == 19) + { + addExpAndSp(player, 456128, 30150); + } + else + { + addExpAndSp(player, 591724, 36848); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = event; + } + break; + } + case "30317-12.html": + { + if (hasQuestItems(player, PASS_2ND_CERTIFICATE, SECRET_BOX)) + { + giveAdena(player, 81900, true); + giveItems(player, FINAL_PASS_CERTIFICATE, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 160267, 11726); + } + else if (level == 19) + { + addExpAndSp(player, 228064, 15075); + } + else + { + addExpAndSp(player, 295862, 18424); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = event; + } + break; + } + case "30531-05.html": + { + if (qs.isMemoState(101)) + { + giveAdena(player, 81900, true); + giveItems(player, FINAL_PASS_CERTIFICATE, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 160267, 11726); + } + else if (level == 19) + { + addExpAndSp(player, 228064, 15075); + } + else + { + addExpAndSp(player, 295862, 18424); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = event; + } + break; + } + case "31956-04.html": + { + if (qs.isMemoState(201)) + { + giveAdena(player, 81900, true); + giveItems(player, FINAL_PASS_CERTIFICATE, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 160267, 11726); + } + else if (level == 19) + { + addExpAndSp(player, 228064, 15075); + } + else + { + addExpAndSp(player, 295862, 18424); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = event; + } + break; + } + case "31963-02.html": + case "31963-06.html": + { + if (qs.isMemoState(100)) + { + htmltext = event; + } + break; + } + case "31963-03.html": + { + if (qs.isMemoState(100)) + { + qs.setMemoState(101); + qs.setCond(10, true); + htmltext = event; + } + break; + } + case "31963-05.html": + { + if (qs.isMemoState(100)) + { + qs.setMemoState(102); + qs.setCond(11, true); + htmltext = event; + } + break; + } + case "31963-07.html": + { + if (qs.isMemoState(100)) + { + qs.setMemoState(201); + qs.setCond(12, true); + htmltext = event; + } + break; + } + case "31963-09.html": + { + if (qs.isMemoState(100)) + { + qs.setMemoState(202); + htmltext = event; + } + break; + } + case "31963-10.html": + { + if (qs.isMemoState(202)) + { + giveAdena(player, 81900, true); + giveItems(player, FINAL_PASS_CERTIFICATE, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 160267, 11726); + } + else if (level == 19) + { + addExpAndSp(player, 228064, 15075); + } + else + { + addExpAndSp(player, 295862, 18424); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = event; + } + break; + } + case "32052-07.html": + { + if (qs.isMemoState(10)) + { + qs.setMemoState(100); + qs.setCond(9, true); + htmltext = event; + } + break; + } + case "32052-13.html": + { + if (qs.isMemoState(102)) + { + giveAdena(player, 81900, true); + giveItems(player, FINAL_PASS_CERTIFICATE, 1); + final int level = player.getLevel(); + if (level >= 20) + { + addExpAndSp(player, 160267, 11726); + } + else if (level == 19) + { + addExpAndSp(player, 228064, 15075); + } + else + { + addExpAndSp(player, 295862, 18424); + } + qs.exitQuest(false, true); + player.sendPacket(new SocialAction(player.getObjectId(), 3)); + saveGlobalQuestVar("1ClassQuestFinished", "1"); + htmltext = event; + } + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true)) + { + switch (npc.getId()) + { + case VUKU_ORC_FIGHTER: + { + if (hasQuestItems(killer, FOOTPRINT_OF_THIEF) && !hasQuestItems(killer, STOLEN_SECRET_BOX)) + { + if (getRandom(10) < 2) + { + giveItems(killer, STOLEN_SECRET_BOX, 1); + qs.setCond(6, true); + } + } + break; + } + case BOOGLE_RATMAN: + { + if (hasQuestItems(killer, SILVERYS_RING) && (getQuestItemsCount(killer, BOOGLE_RATMAN_TOOTH) < 10)) + { + if (getRandom(10) < 7) + { + if (getQuestItemsCount(killer, BOOGLE_RATMAN_TOOTH) == 9) + { + giveItems(killer, BOOGLE_RATMAN_TOOTH, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (getQuestItemsCount(killer, BOOGLE_RATMAN_LEADERS_TOOTH) >= 2) + { + qs.setCond(2); + } + } + else + { + giveItems(killer, BOOGLE_RATMAN_TOOTH, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + } + break; + } + case BOOGLE_RATMAN_LEADER: + { + if (hasQuestItems(killer, SILVERYS_RING) && (getQuestItemsCount(killer, BOOGLE_RATMAN_LEADERS_TOOTH) < 2)) + { + if (getRandom(10) < 5) + { + if (getQuestItemsCount(killer, BOOGLE_RATMAN_LEADERS_TOOTH) == 1) + { + giveItems(killer, BOOGLE_RATMAN_LEADERS_TOOTH, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (getQuestItemsCount(killer, BOOGLE_RATMAN_TOOTH) >= 10) + { + qs.setCond(2); + } + } + } + else + { + giveItems(killer, BOOGLE_RATMAN_LEADERS_TOOTH, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + final QuestState qs = getQuestState(player, true); + String htmltext = getNoQuestMsg(player); + if (qs.isCreated() || qs.isCompleted()) + { + if (npc.getId() == BLACKSMITH_SILVERA) + { + htmltext = "30527-01.htm"; + } + } + else if (qs.isStarted()) + { + switch (npc.getId()) + { + case BLACKSMITH_SILVERA: + { + if (hasQuestItems(player, SILVERYS_RING) && ((getQuestItemsCount(player, BOOGLE_RATMAN_TOOTH) + getQuestItemsCount(player, BOOGLE_RATMAN_LEADERS_TOOTH)) < 12)) + { + htmltext = "30527-07.html"; + } + else if (hasQuestItems(player, SILVERYS_RING) && (getQuestItemsCount(player, BOOGLE_RATMAN_TOOTH) >= 10) && (getQuestItemsCount(player, BOOGLE_RATMAN_LEADERS_TOOTH) >= 2)) + { + htmltext = "30527-08a.html"; + } + else if (hasQuestItems(player, PASS_1ST_CERTIFICATE)) + { + htmltext = "30527-09.html"; + } + else if (!hasQuestItems(player, PASS_1ST_CERTIFICATE) && qs.isMemoState(10)) + { + htmltext = "30527-09a.html"; + } + break; + } + case BLACKSMITH_PINTER: + { + if (hasQuestItems(player, PASS_1ST_CERTIFICATE, KLUTOS_LETTER)) + { + htmltext = "30298-01.html"; + } + else if (hasQuestItems(player, PASS_1ST_CERTIFICATE, FOOTPRINT_OF_THIEF) && !hasQuestItems(player, STOLEN_SECRET_BOX)) + { + htmltext = "30298-04.html"; + } + else if (hasQuestItems(player, PASS_1ST_CERTIFICATE, FOOTPRINT_OF_THIEF, STOLEN_SECRET_BOX)) + { + htmltext = "30298-05.html"; + } + else if (hasQuestItems(player, PASS_1ST_CERTIFICATE, PASS_2ND_CERTIFICATE, SECRET_BOX)) + { + htmltext = "30298-07.html"; + } + break; + } + case BLACKSMITH_KLUTO: + { + if (hasQuestItems(player, PASS_1ST_CERTIFICATE) && !hasAtLeastOneQuestItem(player, FOOTPRINT_OF_THIEF, KLUTOS_LETTER, PASS_2ND_CERTIFICATE, SECRET_BOX)) + { + htmltext = "30317-01.html"; + } + else if (hasQuestItems(player, PASS_1ST_CERTIFICATE) && hasAtLeastOneQuestItem(player, KLUTOS_LETTER, FOOTPRINT_OF_THIEF)) + { + htmltext = "30317-08.html"; + } + else if (hasQuestItems(player, PASS_1ST_CERTIFICATE, PASS_2ND_CERTIFICATE, SECRET_BOX)) + { + htmltext = "30317-09.html"; + } + break; + } + case IRON_GATES_LOCKIRIN: + { + if (qs.isMemoState(101)) + { + htmltext = "30531-01.html"; + } + break; + } + case WAREHOUSE_KEEPER_RYDEL: + { + if (qs.isMemoState(201)) + { + htmltext = "31956-01.html"; + } + break; + } + case MINERAL_TRADER_HITCHI: + { + switch (qs.getMemoState()) + { + case 100: + { + htmltext = "31963-01.html"; + break; + } + case 101: + { + htmltext = "31963-04.html"; + break; + } + case 102: + { + htmltext = "31963-06a.html"; + break; + } + case 201: + { + htmltext = "31963-08.html"; + break; + } + case 202: + { + htmltext = "31963-11.html"; + break; + } + } + break; + } + case RAILROAD_WORKER_OBI: + { + switch (qs.getMemoState()) + { + case 10: + { + htmltext = "32052-01.html"; + break; + } + case 100: + { + htmltext = "32052-08.html"; + break; + } + case 102: + { + htmltext = "32052-09.html"; + break; + } + } + break; + } + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_Classic/dist/game/data/scripts/quests/QuestMasterHandler.java index 6d015b8bb0..ee8ef916ae 100644 --- a/L2J_Mobius_Classic/dist/game/data/scripts/quests/QuestMasterHandler.java +++ b/L2J_Mobius_Classic/dist/game/data/scripts/quests/QuestMasterHandler.java @@ -1,50 +1,282 @@ -/* - * 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; - -import java.util.logging.Level; -import java.util.logging.Logger; - -import quests.Q00255_Tutorial.Q00255_Tutorial; - -/** - * @author NosBit - */ -public class QuestMasterHandler -{ - private static final Logger _log = Logger.getLogger(QuestMasterHandler.class.getName()); - - private static final Class[] QUESTS = - { - Q00255_Tutorial.class, - }; - - public static void main(String[] args) - { - for (Class quest : QUESTS) - { - try - { - quest.newInstance(); - } - catch (Exception e) - { - _log.log(Level.SEVERE, QuestMasterHandler.class.getSimpleName() + ": Failed loading " + quest.getSimpleName() + ":", e); - } - } - } -} +/* + * 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; + +import java.util.logging.Level; +import java.util.logging.Logger; + +import quests.Q00001_LettersOfLove.Q00001_LettersOfLove; +import quests.Q00002_WhatWomenWant.Q00002_WhatWomenWant; +import quests.Q00003_WillTheSealBeBroken.Q00003_WillTheSealBeBroken; +import quests.Q00004_LongLiveThePaagrioLord.Q00004_LongLiveThePaagrioLord; +import quests.Q00005_MinersFavor.Q00005_MinersFavor; +import quests.Q00101_SwordOfSolidarity.Q00101_SwordOfSolidarity; +import quests.Q00102_SeaOfSporesFever.Q00102_SeaOfSporesFever; +import quests.Q00103_SpiritOfCraftsman.Q00103_SpiritOfCraftsman; +import quests.Q00104_SpiritOfMirrors.Q00104_SpiritOfMirrors; +import quests.Q00105_SkirmishWithOrcs.Q00105_SkirmishWithOrcs; +import quests.Q00106_ForgottenTruth.Q00106_ForgottenTruth; +import quests.Q00107_MercilessPunishment.Q00107_MercilessPunishment; +import quests.Q00108_JumbleTumbleDiamondFuss.Q00108_JumbleTumbleDiamondFuss; +import quests.Q00151_CureForFever.Q00151_CureForFever; +import quests.Q00152_ShardsOfGolem.Q00152_ShardsOfGolem; +import quests.Q00153_DeliverGoods.Q00153_DeliverGoods; +import quests.Q00154_SacrificeToTheSea.Q00154_SacrificeToTheSea; +import quests.Q00155_FindSirWindawood.Q00155_FindSirWindawood; +import quests.Q00156_MillenniumLove.Q00156_MillenniumLove; +import quests.Q00157_RecoverSmuggledGoods.Q00157_RecoverSmuggledGoods; +import quests.Q00158_SeedOfEvil.Q00158_SeedOfEvil; +import quests.Q00159_ProtectTheWaterSource.Q00159_ProtectTheWaterSource; +import quests.Q00160_NerupasRequest.Q00160_NerupasRequest; +import quests.Q00161_FruitOfTheMotherTree.Q00161_FruitOfTheMotherTree; +import quests.Q00162_CurseOfTheUndergroundFortress.Q00162_CurseOfTheUndergroundFortress; +import quests.Q00163_LegacyOfThePoet.Q00163_LegacyOfThePoet; +import quests.Q00164_BloodFiend.Q00164_BloodFiend; +import quests.Q00165_ShilensHunt.Q00165_ShilensHunt; +import quests.Q00166_MassOfDarkness.Q00166_MassOfDarkness; +import quests.Q00167_DwarvenKinship.Q00167_DwarvenKinship; +import quests.Q00168_DeliverSupplies.Q00168_DeliverSupplies; +import quests.Q00169_OffspringOfNightmares.Q00169_OffspringOfNightmares; +import quests.Q00170_DangerousSeduction.Q00170_DangerousSeduction; +import quests.Q00211_TrialOfTheChallenger.Q00211_TrialOfTheChallenger; +import quests.Q00212_TrialOfDuty.Q00212_TrialOfDuty; +import quests.Q00213_TrialOfTheSeeker.Q00213_TrialOfTheSeeker; +import quests.Q00214_TrialOfTheScholar.Q00214_TrialOfTheScholar; +import quests.Q00215_TrialOfThePilgrim.Q00215_TrialOfThePilgrim; +import quests.Q00216_TrialOfTheGuildsman.Q00216_TrialOfTheGuildsman; +import quests.Q00217_TestimonyOfTrust.Q00217_TestimonyOfTrust; +import quests.Q00218_TestimonyOfLife.Q00218_TestimonyOfLife; +import quests.Q00219_TestimonyOfFate.Q00219_TestimonyOfFate; +import quests.Q00220_TestimonyOfGlory.Q00220_TestimonyOfGlory; +import quests.Q00221_TestimonyOfProsperity.Q00221_TestimonyOfProsperity; +import quests.Q00222_TestOfTheDuelist.Q00222_TestOfTheDuelist; +import quests.Q00223_TestOfTheChampion.Q00223_TestOfTheChampion; +import quests.Q00224_TestOfSagittarius.Q00224_TestOfSagittarius; +import quests.Q00225_TestOfTheSearcher.Q00225_TestOfTheSearcher; +import quests.Q00226_TestOfTheHealer.Q00226_TestOfTheHealer; +import quests.Q00227_TestOfTheReformer.Q00227_TestOfTheReformer; +import quests.Q00228_TestOfMagus.Q00228_TestOfMagus; +import quests.Q00229_TestOfWitchcraft.Q00229_TestOfWitchcraft; +import quests.Q00230_TestOfTheSummoner.Q00230_TestOfTheSummoner; +import quests.Q00231_TestOfTheMaestro.Q00231_TestOfTheMaestro; +import quests.Q00232_TestOfTheLord.Q00232_TestOfTheLord; +import quests.Q00233_TestOfTheWarSpirit.Q00233_TestOfTheWarSpirit; +import quests.Q00255_Tutorial.Q00255_Tutorial; +import quests.Q00257_TheGuardIsBusy.Q00257_TheGuardIsBusy; +import quests.Q00258_BringWolfPelts.Q00258_BringWolfPelts; +import quests.Q00259_RequestFromTheFarmOwner.Q00259_RequestFromTheFarmOwner; +import quests.Q00260_OrcHunting.Q00260_OrcHunting; +import quests.Q00261_CollectorsDream.Q00261_CollectorsDream; +import quests.Q00262_TradeWithTheIvoryTower.Q00262_TradeWithTheIvoryTower; +import quests.Q00263_OrcSubjugation.Q00263_OrcSubjugation; +import quests.Q00264_KeenClaws.Q00264_KeenClaws; +import quests.Q00265_BondsOfSlavery.Q00265_BondsOfSlavery; +import quests.Q00266_PleasOfPixies.Q00266_PleasOfPixies; +import quests.Q00267_WrathOfVerdure.Q00267_WrathOfVerdure; +import quests.Q00271_ProofOfValor.Q00271_ProofOfValor; +import quests.Q00272_WrathOfAncestors.Q00272_WrathOfAncestors; +import quests.Q00273_InvadersOfTheHolyLand.Q00273_InvadersOfTheHolyLand; +import quests.Q00274_SkirmishWithTheWerewolves.Q00274_SkirmishWithTheWerewolves; +import quests.Q00275_DarkWingedSpies.Q00275_DarkWingedSpies; +import quests.Q00276_TotemOfTheHestui.Q00276_TotemOfTheHestui; +import quests.Q00277_GatekeepersOffering.Q00277_GatekeepersOffering; +import quests.Q00291_RevengeOfTheRedbonnet.Q00291_RevengeOfTheRedbonnet; +import quests.Q00292_BrigandsSweep.Q00292_BrigandsSweep; +import quests.Q00293_TheHiddenVeins.Q00293_TheHiddenVeins; +import quests.Q00294_CovertBusiness.Q00294_CovertBusiness; +import quests.Q00295_DreamingOfTheSkies.Q00295_DreamingOfTheSkies; +import quests.Q00296_TarantulasSpiderSilk.Q00296_TarantulasSpiderSilk; +import quests.Q00297_GatekeepersFavor.Q00297_GatekeepersFavor; +import quests.Q00303_CollectArrowheads.Q00303_CollectArrowheads; +import quests.Q00306_CrystalOfFireAndIce.Q00306_CrystalOfFireAndIce; +import quests.Q00313_CollectSpores.Q00313_CollectSpores; +import quests.Q00316_DestroyPlagueCarriers.Q00316_DestroyPlagueCarriers; +import quests.Q00317_CatchTheWind.Q00317_CatchTheWind; +import quests.Q00319_ScentOfDeath.Q00319_ScentOfDeath; +import quests.Q00320_BonesTellTheFuture.Q00320_BonesTellTheFuture; +import quests.Q00324_SweetestVenom.Q00324_SweetestVenom; +import quests.Q00325_GrimCollector.Q00325_GrimCollector; +import quests.Q00326_VanquishRemnants.Q00326_VanquishRemnants; +import quests.Q00327_RecoverTheFarmland.Q00327_RecoverTheFarmland; +import quests.Q00328_SenseForBusiness.Q00328_SenseForBusiness; +import quests.Q00329_CuriosityOfADwarf.Q00329_CuriosityOfADwarf; +import quests.Q00331_ArrowOfVengeance.Q00331_ArrowOfVengeance; +import quests.Q00333_HuntOfTheBlackLion.Q00333_HuntOfTheBlackLion; +import quests.Q00369_CollectorOfJewels.Q00369_CollectorOfJewels; +import quests.Q00370_AnElderSowsSeeds.Q00370_AnElderSowsSeeds; +import quests.Q00401_PathOfTheWarrior.Q00401_PathOfTheWarrior; +import quests.Q00402_PathOfTheHumanKnight.Q00402_PathOfTheHumanKnight; +import quests.Q00403_PathOfTheRogue.Q00403_PathOfTheRogue; +import quests.Q00404_PathOfTheHumanWizard.Q00404_PathOfTheHumanWizard; +import quests.Q00405_PathOfTheCleric.Q00405_PathOfTheCleric; +import quests.Q00406_PathOfTheElvenKnight.Q00406_PathOfTheElvenKnight; +import quests.Q00407_PathOfTheElvenScout.Q00407_PathOfTheElvenScout; +import quests.Q00408_PathOfTheElvenWizard.Q00408_PathOfTheElvenWizard; +import quests.Q00409_PathOfTheElvenOracle.Q00409_PathOfTheElvenOracle; +import quests.Q00410_PathOfThePalusKnight.Q00410_PathOfThePalusKnight; +import quests.Q00411_PathOfTheAssassin.Q00411_PathOfTheAssassin; +import quests.Q00412_PathOfTheDarkWizard.Q00412_PathOfTheDarkWizard; +import quests.Q00413_PathOfTheShillienOracle.Q00413_PathOfTheShillienOracle; +import quests.Q00414_PathOfTheOrcRaider.Q00414_PathOfTheOrcRaider; +import quests.Q00415_PathOfTheOrcMonk.Q00415_PathOfTheOrcMonk; +import quests.Q00416_PathOfTheOrcShaman.Q00416_PathOfTheOrcShaman; +import quests.Q00417_PathOfTheScavenger.Q00417_PathOfTheScavenger; +import quests.Q00418_PathOfTheArtisan.Q00418_PathOfTheArtisan; + +/** + * @author NosBit + */ +public class QuestMasterHandler +{ + private static final Logger _log = Logger.getLogger(QuestMasterHandler.class.getName()); + + private static final Class[] QUESTS = + { + Q00001_LettersOfLove.class, + Q00002_WhatWomenWant.class, + Q00003_WillTheSealBeBroken.class, + Q00004_LongLiveThePaagrioLord.class, + Q00005_MinersFavor.class, + Q00101_SwordOfSolidarity.class, + Q00102_SeaOfSporesFever.class, + Q00103_SpiritOfCraftsman.class, + Q00104_SpiritOfMirrors.class, + Q00105_SkirmishWithOrcs.class, + Q00106_ForgottenTruth.class, + Q00107_MercilessPunishment.class, + Q00108_JumbleTumbleDiamondFuss.class, + Q00151_CureForFever.class, + Q00152_ShardsOfGolem.class, + Q00153_DeliverGoods.class, + Q00154_SacrificeToTheSea.class, + Q00155_FindSirWindawood.class, + Q00156_MillenniumLove.class, + Q00157_RecoverSmuggledGoods.class, + Q00158_SeedOfEvil.class, + Q00159_ProtectTheWaterSource.class, + Q00160_NerupasRequest.class, + Q00161_FruitOfTheMotherTree.class, + Q00162_CurseOfTheUndergroundFortress.class, + Q00163_LegacyOfThePoet.class, + Q00164_BloodFiend.class, + Q00165_ShilensHunt.class, + Q00166_MassOfDarkness.class, + Q00167_DwarvenKinship.class, + Q00168_DeliverSupplies.class, + Q00169_OffspringOfNightmares.class, + Q00170_DangerousSeduction.class, + Q00211_TrialOfTheChallenger.class, + Q00212_TrialOfDuty.class, + Q00213_TrialOfTheSeeker.class, + Q00214_TrialOfTheScholar.class, + Q00215_TrialOfThePilgrim.class, + Q00216_TrialOfTheGuildsman.class, + Q00217_TestimonyOfTrust.class, + Q00218_TestimonyOfLife.class, + Q00219_TestimonyOfFate.class, + Q00220_TestimonyOfGlory.class, + Q00221_TestimonyOfProsperity.class, + Q00222_TestOfTheDuelist.class, + Q00223_TestOfTheChampion.class, + Q00224_TestOfSagittarius.class, + Q00225_TestOfTheSearcher.class, + Q00226_TestOfTheHealer.class, + Q00227_TestOfTheReformer.class, + Q00228_TestOfMagus.class, + Q00229_TestOfWitchcraft.class, + Q00230_TestOfTheSummoner.class, + Q00231_TestOfTheMaestro.class, + Q00232_TestOfTheLord.class, + Q00233_TestOfTheWarSpirit.class, + Q00255_Tutorial.class, + Q00257_TheGuardIsBusy.class, + Q00258_BringWolfPelts.class, + Q00259_RequestFromTheFarmOwner.class, + Q00260_OrcHunting.class, + Q00261_CollectorsDream.class, + Q00262_TradeWithTheIvoryTower.class, + Q00263_OrcSubjugation.class, + Q00264_KeenClaws.class, + Q00265_BondsOfSlavery.class, + Q00266_PleasOfPixies.class, + Q00267_WrathOfVerdure.class, + Q00271_ProofOfValor.class, + Q00272_WrathOfAncestors.class, + Q00273_InvadersOfTheHolyLand.class, + Q00274_SkirmishWithTheWerewolves.class, + Q00275_DarkWingedSpies.class, + Q00276_TotemOfTheHestui.class, + Q00277_GatekeepersOffering.class, + Q00291_RevengeOfTheRedbonnet.class, + Q00292_BrigandsSweep.class, + Q00293_TheHiddenVeins.class, + Q00294_CovertBusiness.class, + Q00295_DreamingOfTheSkies.class, + Q00296_TarantulasSpiderSilk.class, + Q00297_GatekeepersFavor.class, + Q00303_CollectArrowheads.class, + Q00306_CrystalOfFireAndIce.class, + Q00313_CollectSpores.class, + Q00316_DestroyPlagueCarriers.class, + Q00317_CatchTheWind.class, + Q00319_ScentOfDeath.class, + Q00320_BonesTellTheFuture.class, + Q00324_SweetestVenom.class, + Q00325_GrimCollector.class, + Q00326_VanquishRemnants.class, + Q00327_RecoverTheFarmland.class, + Q00328_SenseForBusiness.class, + Q00329_CuriosityOfADwarf.class, + Q00331_ArrowOfVengeance.class, + Q00333_HuntOfTheBlackLion.class, + Q00369_CollectorOfJewels.class, + Q00370_AnElderSowsSeeds.class, + Q00401_PathOfTheWarrior.class, + Q00402_PathOfTheHumanKnight.class, + Q00403_PathOfTheRogue.class, + Q00404_PathOfTheHumanWizard.class, + Q00405_PathOfTheCleric.class, + Q00406_PathOfTheElvenKnight.class, + Q00407_PathOfTheElvenScout.class, + Q00408_PathOfTheElvenWizard.class, + Q00409_PathOfTheElvenOracle.class, + Q00410_PathOfThePalusKnight.class, + Q00411_PathOfTheAssassin.class, + Q00412_PathOfTheDarkWizard.class, + Q00413_PathOfTheShillienOracle.class, + Q00414_PathOfTheOrcRaider.class, + Q00415_PathOfTheOrcMonk.class, + Q00416_PathOfTheOrcShaman.class, + Q00417_PathOfTheScavenger.class, + Q00418_PathOfTheArtisan.class, + }; + + public static void main(String[] args) + { + for (Class quest : QUESTS) + { + try + { + quest.newInstance(); + } + catch (Exception e) + { + _log.log(Level.SEVERE, QuestMasterHandler.class.getSimpleName() + ": Failed loading " + quest.getSimpleName() + ":", e); + } + } + } +}