diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-01.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-01.htm new file mode 100644 index 0000000000..3ab3fe567e --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-01.htm @@ -0,0 +1,6 @@ +Merchant Radia:
+Welcome! How can I help you? You're not here to propose to me, are you?
+Just kidding! Don't tell me you thought I was serious.
+Oh, you're here for Leikar's order? I'm sorry, but it's not here yet. Can you actually go to the Town of Gludio to check with Varan? The shipment is way late.
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-02.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-02.html new file mode 100644 index 0000000000..486ac14d7f --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-02.html @@ -0,0 +1,3 @@ +Merchant Radia:
+Leikar's order isn't ready because the materials haven't arrived yet. You'll need to check back later. (You must be Lv. 85 or above to start this quest.) + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-03.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-03.htm new file mode 100644 index 0000000000..f944a9e5b5 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-03.htm @@ -0,0 +1,3 @@ +Merchant Radia:
+I would've checked with Varan myself if I wasn't so busy. Go ask him why the materials aren't here yet. + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-04.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-04.html new file mode 100644 index 0000000000..eebb022a88 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-04.html @@ -0,0 +1,3 @@ +Merchant Radia:
+What are you still doing here? If you want the order, you'll have to check with Varan and find out where the materials are! + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-05.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-05.html new file mode 100644 index 0000000000..d1f6b6974c --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-05.html @@ -0,0 +1,5 @@ +Merchant Radia:
+Welcome back! So what did Varan say?
+What? Doesn't look possible to close the deal? Seriously?
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-06.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-06.html new file mode 100644 index 0000000000..1b484c123b --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-06.html @@ -0,0 +1,3 @@ +Merchant Radia:
+Well then, I guess we'll have to look elsewhere. Do you think you could go to Ralford in Oren Castle's Ivory Tower? He can probably get what I need. I have means of contacting him, so I'll tell him to be expecting you. + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-07.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-07.html new file mode 100644 index 0000000000..9082c12b72 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-07.html @@ -0,0 +1,3 @@ +Merchant Radia:
+Please go to Ralford at the Ivory Tower. I can't make you what you need unless I have the supplies. + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-08.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-08.html new file mode 100644 index 0000000000..51187efaed --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-08.html @@ -0,0 +1,4 @@ +Merchant Radia:
+Oh, you're back with all of them! Here, let me have them.
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-09.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-09.html new file mode 100644 index 0000000000..8a2d116e5c --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-09.html @@ -0,0 +1,3 @@ +Armor Trader Radia:
+You haven't heard from Ralford? I need spidersilk, 420 Armor Fragments (Low Grade) and 750 Accessory Gems (Low Grade). Please hurry. + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-10.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-10.html new file mode 100644 index 0000000000..352b6a3b7d --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-10.html @@ -0,0 +1,4 @@ +Merchant Radia:
+Yes, your fabric is ready! Let me get it for you.
+Here it is! Isn't it nice? You can really make something nice with this. Have a safe journey! + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-11.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-11.html new file mode 100644 index 0000000000..52eff99751 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30088-11.html @@ -0,0 +1,3 @@ +Merchant Radia:
+Didn't Ralford tell you? I need 420 Low-grade Armor Fragments, 750 Low-grade Accessory Gems, and Spider Silk. Please, retrieve them! + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-01.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-01.html new file mode 100644 index 0000000000..d512370545 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-01.html @@ -0,0 +1,4 @@ +Trader Ralford:
+Hello there! I understand you're looking for Spidersilk, Armor Fragments, and Accessory Gems? I'm afraid we're out. You can probably buy leftovers from most travelers, but as for Spidersilk... well, I can make it myself. Will you help me?
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-02.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-02.html new file mode 100644 index 0000000000..deac322337 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-02.html @@ -0,0 +1,3 @@ +Trader Ralford:
+If you go to place called Cruma Marshlands, you'll find some Marsh Spiders. I need 10 Spinnerets from them. If you bring those, I'll make you some spidersilk. + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-03.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-03.html new file mode 100644 index 0000000000..60943de378 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-03.html @@ -0,0 +1,4 @@ +Trader Ralford:
+This isn't enough. I need more Spinnerests.
+You can get them from Marsh Spiders in the Cruma Marshlands. + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-04.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-04.html new file mode 100644 index 0000000000..a735fc86da --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-04.html @@ -0,0 +1,4 @@ +Trader Ralford:
+Wonderful! Give me the Spinneret and I'll make spidersilk for you.
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-05.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-05.html new file mode 100644 index 0000000000..9ae9673c15 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-05.html @@ -0,0 +1,4 @@ +Trader Ralford:
+Thank you. Just wait here a moment...
+Here's the Spider Silk you requested. Radia had actually asked for other materials as well, but you seem capable of finding enough. She needs 420 Low-grade Armor Fragments and 750 Low-grade Accessory Gems. Easy enough for you, right? + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-06.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-06.html new file mode 100644 index 0000000000..6410b8beed --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30165-06.html @@ -0,0 +1,3 @@ +Trader Ralford:
+Radia needs 420 Low-grade Armor Fragments, 750 Low-grade Accessory Gems, and Spider Silk. Deliver them to her you've collected them all. + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30294-01.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30294-01.html new file mode 100644 index 0000000000..3ae1e90886 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30294-01.html @@ -0,0 +1,4 @@ +Trader Varan:
+Ah, you mean Radia's order? Well, I haven't gotten the materials yet. The goods she wants have been rather scarce of late, making them difficult to obtain.
+ + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30294-02.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30294-02.html new file mode 100644 index 0000000000..34419bc24f --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30294-02.html @@ -0,0 +1,3 @@ +Trader Varan:
+Tell her I'm sorry I couldn't fill the order on time, and that I accept responsibility for the breach of Contract. + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30294-03.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30294-03.html new file mode 100644 index 0000000000..a9970f0472 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/30294-03.html @@ -0,0 +1,3 @@ +Trader Varan:
+Please tell Radia that I won't make a mistake like this again. + \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/Q00034_InSearchOfCloth.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/Q00034_InSearchOfCloth.java new file mode 100644 index 0000000000..9fbbc4ca36 --- /dev/null +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00034_InSearchOfCloth/Q00034_InSearchOfCloth.java @@ -0,0 +1,269 @@ +/* + * 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.Q00034_InSearchOfCloth; + +import org.l2jmobius.gameserver.enums.QuestSound; +import org.l2jmobius.gameserver.model.actor.Npc; +import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; +import org.l2jmobius.gameserver.model.quest.Quest; +import org.l2jmobius.gameserver.model.quest.QuestState; +import org.l2jmobius.gameserver.model.quest.State; + +/** + * In Search of Cloth (34) + * @URL https://l2wiki.com/In_Search_of_Cloth + * @author malyelfik + */ +public class Q00034_InSearchOfCloth extends Quest +{ + // NPCs + private static final int RADIA = 30088; + private static final int RALFORD = 30165; + private static final int VARAN = 30294; + // Monsters + private static final int MARSH_SPIDER = 20233; + // Items + private static final int ARMOR_FRAGMENT_LOW_GRADE = 36551; + private static final int ACCESSORY_GEM_LOW_GRADE = 36556; + private static final int MYSTERIOUS_CLOTH = 7076; + private static final int SKEIN_OF_YARN = 7161; + private static final int SPINNERET = 7528; + // Misc + private static final int MIN_LEVEL = 85; + private static final int SPINNERET_COUNT = 10; + private static final int ARMOR_FRAGMENT_COUNT = 420; + private static final int ACCESSORY_GEM_COUNT = 750; + + public Q00034_InSearchOfCloth() + { + super(34); + addStartNpc(RADIA); + addTalkId(RADIA, RALFORD, VARAN); + addKillId(MARSH_SPIDER); + addCondMinLevel(MIN_LEVEL, "30088-02.html"); + registerQuestItems(SKEIN_OF_YARN, SPINNERET); + } + + @Override + public String onAdvEvent(String event, Npc npc, PlayerInstance player) + { + final QuestState st = getQuestState(player, false); + if (st == null) + { + return null; + } + + String htmltext = event; + switch (event) + { + case "30088-03.htm": + { + st.startQuest(); + break; + } + case "30294-02.html": + { + if (st.isCond(1)) + { + st.setCond(2, true); + } + break; + } + case "30088-06.html": + { + if (st.isCond(2)) + { + st.setCond(3, true); + } + break; + } + case "30165-02.html": + { + if (st.isCond(3)) + { + st.setCond(4, true); + } + break; + } + case "30165-05.html": + { + if (st.isCond(5)) + { + if (getQuestItemsCount(player, SPINNERET) < SPINNERET_COUNT) + { + return getNoQuestMsg(player); + } + takeItems(player, SPINNERET, SPINNERET_COUNT); + giveItems(player, SKEIN_OF_YARN, 1); + st.setCond(6, true); + } + break; + } + case "30088-10.html": + { + if (st.isCond(6)) + { + if ((getQuestItemsCount(player, ARMOR_FRAGMENT_LOW_GRADE) >= ARMOR_FRAGMENT_COUNT) && (getQuestItemsCount(player, ACCESSORY_GEM_LOW_GRADE) >= ACCESSORY_GEM_COUNT) && hasQuestItems(player, SKEIN_OF_YARN)) + { + if ((player.getLevel() >= MIN_LEVEL)) + { + takeItems(player, SKEIN_OF_YARN, 1); + takeItems(player, ARMOR_FRAGMENT_LOW_GRADE, ARMOR_FRAGMENT_COUNT); + takeItems(player, ACCESSORY_GEM_LOW_GRADE, ACCESSORY_GEM_COUNT); + giveItems(player, MYSTERIOUS_CLOTH, 1); + st.exitQuest(false, true); + } + else + { + htmltext = getNoQuestLevelRewardMsg(player); + } + } + else + { + htmltext = "30088-11.html"; + } + } + break; + } + default: + { + htmltext = null; + break; + } + } + return htmltext; + } + + @Override + public String onKill(Npc npc, PlayerInstance player, boolean isSummon) + { + final QuestState st = getQuestState(player, false); + final PlayerInstance member = getRandomPartyMember(player, 4); + + if ((st != null) && (st.isCond(4)) && (member != null) && getRandomBoolean()) + { + giveItems(member, SPINNERET, 1); + if (getQuestItemsCount(member, SPINNERET) >= SPINNERET_COUNT) + { + st.setCond(5, true); + } + else + { + playSound(member, QuestSound.ITEMSOUND_QUEST_ITEMGET); + } + } + return super.onKill(npc, player, isSummon); + } + + @Override + public String onTalk(Npc npc, PlayerInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState st = getQuestState(player, true); + + switch (st.getState()) + { + case State.CREATED: + { + if (npc.getId() == RADIA) + { + htmltext = "30088-01.htm"; + break; + } + } + case State.STARTED: + { + switch (npc.getId()) + { + case RADIA: + { + switch (st.getCond()) + { + case 1: + { + htmltext = "30088-04.html"; + break; + } + case 2: + { + htmltext = "30088-05.html"; + break; + } + case 3: + { + htmltext = "30088-07.html"; + break; + } + case 6: + { + htmltext = ((getQuestItemsCount(player, ARMOR_FRAGMENT_LOW_GRADE) >= ARMOR_FRAGMENT_COUNT) && (getQuestItemsCount(player, ACCESSORY_GEM_LOW_GRADE) >= ACCESSORY_GEM_COUNT)) ? "30088-08.html" : "30088-09.html"; + break; + } + } + break; + } + case VARAN: + { + if (st.isCond(1)) + { + htmltext = "30294-01.html"; + } + else if (st.isCond(2)) + { + htmltext = "30294-03.html"; + } + break; + } + case RALFORD: + { + switch (st.getCond()) + { + case 3: + { + htmltext = "30165-01.html"; + break; + } + case 4: + { + htmltext = "30165-03.html"; + break; + } + case 5: + { + htmltext = "30165-04.html"; + break; + } + case 6: + { + htmltext = "30165-06.html"; + break; + } + } + break; + } + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(player); + break; + } + } + return htmltext; + } +} \ No newline at end of file diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java index 176211fa3f..1994893eed 100644 --- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java @@ -26,6 +26,7 @@ import quests.Q00017_LightAndDarkness.Q00017_LightAndDarkness; import quests.Q00031_SecretBuriedInTheSwamp.Q00031_SecretBuriedInTheSwamp; import quests.Q00032_AnObviousLie.Q00032_AnObviousLie; import quests.Q00033_MakeAPairOfDressShoes.Q00033_MakeAPairOfDressShoes; +import quests.Q00034_InSearchOfCloth.Q00034_InSearchOfCloth; import quests.Q00035_FindGlitteringJewelry.Q00035_FindGlitteringJewelry; import quests.Q00036_MakeASewingKit.Q00036_MakeASewingKit; import quests.Q00037_MakeFormalWear.Q00037_MakeFormalWear; @@ -442,6 +443,7 @@ public class QuestMasterHandler Q00031_SecretBuriedInTheSwamp.class, Q00032_AnObviousLie.class, Q00033_MakeAPairOfDressShoes.class, + Q00034_InSearchOfCloth.class, Q00035_FindGlitteringJewelry.class, Q00036_MakeASewingKit.class, Q00037_MakeFormalWear.class,