diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/html/item/90243.htm b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/html/item/90243.htm new file mode 100644 index 0000000000..8f2ab5f3e1 --- /dev/null +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/html/item/90243.htm @@ -0,0 +1,9 @@ +Armor Design:
+Requirements.
+I want that armor to look magnificient. And have some dark magic encancing abilities.
+Client: Hierarch Talos.

+Description.
+The armor is crimson-colored, created from the skin of Festering Bat
or Red Eye Bat and reinforced with Old Bone Fragments of a Dark Horror.
+Recommended materials for augmenting it with magical abilities are the Claws of a Zombie Forest Elf Stone Giant.
+Project designer: Payne + \ No newline at end of file diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q10995_MutualBenefit/Q10995_MutualBenefit.java b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q10995_MutualBenefit/Q10995_MutualBenefit.java index 4c79788599..e3cc080440 100644 --- a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q10995_MutualBenefit/Q10995_MutualBenefit.java +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q10995_MutualBenefit/Q10995_MutualBenefit.java @@ -69,6 +69,7 @@ public class Q10995_MutualBenefit extends Quest addCondLevel(MIN_LVL, MAX_LVL, "no-level.html"); addCondRace(Race.DWARF, "no-race.html"); registerQuestItems(BOUNTY_POSTER, BALCK_WOLF_TOOTH, GOBLINS_NAVIGATION_DEVICE, UTUKU_ORC_AMULET, GOBLIN_BRIGANDS_OLD_SWORD, GARUM_WEREWOLF_TAIL, GOBLIN_BRIGAND_LIEUTENANT_NECKLACE); + setQuestNameNpcStringId(NpcStringId.LV_2_20_MUTUAL_BENEFIT); } @Override diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11000_MoonKnight/Q11000_MoonKnight.java b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11000_MoonKnight/Q11000_MoonKnight.java index 4c9903a041..2d4f1851c0 100644 --- a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11000_MoonKnight/Q11000_MoonKnight.java +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11000_MoonKnight/Q11000_MoonKnight.java @@ -30,6 +30,7 @@ import com.l2jmobius.gameserver.model.events.impl.character.player.OnPlayerPress 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.TutorialShowHtml; import com.l2jmobius.gameserver.network.serverpackets.TutorialShowQuestionMark; @@ -82,6 +83,7 @@ public class Q11000_MoonKnight extends Quest addKillId(OL_MAHUM_THIEF, TUREK_ORC_COMMANDER, TUREK_ORC_INVADER); addCondLevel(MIN_LVL, MAX_LVL, "no_level.html"); registerQuestItems(MOLD, AMORA_RECEIPT, ARMOR_TRADE_CONTRACT, TUREK_ORC_ORDER, TUREK_ORC_INVADER_HEAD); + setQuestNameNpcStringId(NpcStringId.MOON_KNIGHT); } @Override diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11001_TombsOfAncestors/Q11001_TombsOfAncestors.java b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11001_TombsOfAncestors/Q11001_TombsOfAncestors.java index 05f477081b..2daddd623b 100644 --- a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11001_TombsOfAncestors/Q11001_TombsOfAncestors.java +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11001_TombsOfAncestors/Q11001_TombsOfAncestors.java @@ -67,6 +67,7 @@ public class Q11001_TombsOfAncestors extends Quest addCondLevel(MIN_LVL, MAX_LVL, "no-level.html"); addCondRace(Race.HUMAN, "no-race.html"); registerQuestItems(HUNTERS_MEMO, WOLF_PELT, ORC_AMULET, WEREWOLFS_FANG, BROKEN_SWORD); + setQuestNameNpcStringId(NpcStringId.LV_2_20_TOMBS_OF_ANCESTORS); } @Override diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11002_HelpWithTempleRestoration/Q11002_HelpWithTempleRestoration.java b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11002_HelpWithTempleRestoration/Q11002_HelpWithTempleRestoration.java index ea1efa0b56..7c683dd815 100644 --- a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11002_HelpWithTempleRestoration/Q11002_HelpWithTempleRestoration.java +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11002_HelpWithTempleRestoration/Q11002_HelpWithTempleRestoration.java @@ -66,6 +66,7 @@ public class Q11002_HelpWithTempleRestoration extends Quest addCondLevel(MIN_LVL, MAX_LVL, "no-level.html"); // Custom addCondRace(Race.HUMAN, "no-race.html"); // Custom registerQuestItems(INVENTORY_BOOK, WOODEN_POLE, WOODEN_DOOR_PANEL, STONE_POWDER); + setQuestNameNpcStringId(NpcStringId.LV_11_20_HELP_WITH_TEMPLE_RESTORATION); } @Override diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11007_NoiseInWoods/Q11007_NoiseInWoods.java b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11007_NoiseInWoods/Q11007_NoiseInWoods.java index d7e4f82fdd..d573b656ba 100644 --- a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11007_NoiseInWoods/Q11007_NoiseInWoods.java +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11007_NoiseInWoods/Q11007_NoiseInWoods.java @@ -67,6 +67,7 @@ public class Q11007_NoiseInWoods extends Quest addCondLevel(MIN_LVL, MAX_LVL, "no-level.html"); addCondRace(Race.ELF, "no-race.html"); registerQuestItems(MARK_OF_SECURITY, TAIL_OF_A_GRAY_WOLF, GOBLINS_PACK_OF_KNICKKNACKS, KABBO_ORC_STURDY_AMULET, MUSHROOM_SPORE_POWDER); + setQuestNameNpcStringId(NpcStringId.LV_2_20_NOISE_IN_WOODS); } @Override diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11013_ShilensHunt/Q11013_ShilensHunt.java b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11013_ShilensHunt/Q11013_ShilensHunt.java index 5f124c2ff0..52f6b9d64e 100644 --- a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11013_ShilensHunt/Q11013_ShilensHunt.java +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11013_ShilensHunt/Q11013_ShilensHunt.java @@ -69,6 +69,7 @@ public class Q11013_ShilensHunt extends Quest addCondLevel(MIN_LVL, MAX_LVL, ""); addCondRace(Race.DARK_ELF, ""); registerQuestItems(HUNTING_PLAN, WOLF_TAIL, GOBLIN_POISONOUS_DART, IMP_WING, FUNGUS_JUICE, BALOR_ORC_FANG); + setQuestNameNpcStringId(NpcStringId.LV_2_20_SHILEN_S_HUNT); } @Override diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30136-01.htm b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30136-01.htm new file mode 100644 index 0000000000..8b39f5aa28 --- /dev/null +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30136-01.htm @@ -0,0 +1,4 @@ +Trader Payne:
+So you're here on the instructions of Hierarch Talos? Looking for materials to make a new set of armor? Hmm... I understand.
+Here's the Design of the Armor that I want to create. It shows how it's going to look like and lists all required ingredients. May I ask you to collect all these ingredients for me?
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30136-01a.html b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30136-01a.html new file mode 100644 index 0000000000..aac72be337 --- /dev/null +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30136-01a.html @@ -0,0 +1,3 @@ +Trader Payne:
+Hmm... What you've brought is no enough for a full set of armor... I need more materials. Will you bring them? + \ No newline at end of file diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30136-02.html b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30136-02.html new file mode 100644 index 0000000000..584c05e93b --- /dev/null +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30136-02.html @@ -0,0 +1,5 @@ +Trader Payne:
+I see you brought all what's needed. Now we have to take measurements. Whose measurements? Why, yours of course! Or did you think that Talos sent you to me for no reason? Choose the armor that suits you.
+
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30136-03.html b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30136-03.html new file mode 100644 index 0000000000..5efdb41f2b --- /dev/null +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30136-03.html @@ -0,0 +1,5 @@ +Trader Payne:
+This set of armor suits you very much! I hope it will protect you during your adventures.
+By the way, I have a request for you. I'm designing a new model of shield together with Grocer Vollodos, and we plan to put in on sale. I worked on the structural design, and Vollodos promised to come up with ideas for decoration and reinforce the finished product, but there haven't been any news from him for a while. Could you visit him and ask about his progress?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30136-04.html b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30136-04.html new file mode 100644 index 0000000000..cea684bdcc --- /dev/null +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30136-04.html @@ -0,0 +1,5 @@ +Trader Payne:
+Excellent! Can you feel how well it fits? I hope it will protect you during your adventures.
+By the way, I have a request for you. I'm designing a new model of shield together with Grocer Vollodos, and we plan to put in on sale. I worked on the structural design, and Vollodos promised to come up with ideas for decoration and reinforce the finished product, but there haven't been any news from him for a while. Could you visit him and ask about his progress?
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30141-01.html b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30141-01.html new file mode 100644 index 0000000000..1eff8157d0 --- /dev/null +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30141-01.html @@ -0,0 +1,4 @@ +Tetrarch Talos:
+I charged Payne with a job of mine. But he said that doing it alone will take him a lot of time. Could you help him?
+

+ \ No newline at end of file diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30141-02.htm b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30141-02.htm new file mode 100644 index 0000000000..e7fb86118a --- /dev/null +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30141-02.htm @@ -0,0 +1,4 @@ +Tetrarch Talos:
+That's a great idea! He plans to create a new set of armor, but he doesn't have enough materials. Your job is to get those materials, and Payne will do the rest.
+Right now he is at the store that sells weapons and armor. Go to him.
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30141-02a.html b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30141-02a.html new file mode 100644 index 0000000000..b720db8f40 --- /dev/null +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/30141-02a.html @@ -0,0 +1,3 @@ +Tetrarch Talos:
+Go to Payne, hurry. tell him that I sent you, and he will explain your task.
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/Q11014_SurpriseGift.java b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/Q11014_SurpriseGift.java new file mode 100644 index 0000000000..47da23c41d --- /dev/null +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/Q11014_SurpriseGift.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.Q11014_SurpriseGift; + +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; +import com.l2jmobius.gameserver.network.serverpackets.ExShowScreenMessage; + +/** + * Surprise Gift (11014) + * @author Stayway + */ +public class Q11014_SurpriseGift extends Quest +{ + // NPCs + private static final int TALOS = 30141; + private static final int PAYNE = 30136; + // Items + private static final int ZOMBIE_FOREST_ELF_TOOTH = 90244; + private static final int BAT_SKIN = 90245; + private static final int STONE_GIANTS_SHINY_ROCK = 90246; + private static final int OLD_BONE_FRAGMENT = 90247; + private static final int ARMOR_DESIGN = 90243; + // Rewards + private static final int WARRIORS_ARMOR = 90306; + private static final int WARRIORS_GAITERS = 90307; + private static final int MEDIUMS_TUNIC = 90308; + private static final int MEDIUMS_STOCKINGS = 90309; + private static final int RING_NOVICE = 29497; + // Monsters + private static final int ZOMBIE_FOREST_ELF = 20015; + private static final int ZOMBIE_FOREST_ELF_RESEARCHER = 20020; + private static final int RED_EYE_BAT = 20392; + private static final int FESTERING_BAT = 20433; + private static final int GIANT_STONE_SOLDIER = 20379; + private static final int GIANT_STONE_GUARDIAN = 20380; + private static final int DARK_HORROR = 20105; + // Misc + private static final int MIN_LVL = 11; + private static final int MAX_LVL = 20; + + public Q11014_SurpriseGift() + { + super(11014); + addStartNpc(TALOS); + addTalkId(PAYNE, TALOS); + addKillId(ZOMBIE_FOREST_ELF, ZOMBIE_FOREST_ELF_RESEARCHER, FESTERING_BAT, RED_EYE_BAT, GIANT_STONE_GUARDIAN, GIANT_STONE_SOLDIER, DARK_HORROR); + addCondLevel(MIN_LVL, MAX_LVL, "no-level.html"); // Custom + addCondRace(Race.DARK_ELF, "no-race.html"); // Custom + registerQuestItems(ARMOR_DESIGN, ZOMBIE_FOREST_ELF_TOOTH, BAT_SKIN, STONE_GIANTS_SHINY_ROCK, OLD_BONE_FRAGMENT); + setQuestNameNpcStringId(NpcStringId.LV_11_20_SURPRISE_GIFT); + } + + @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 "30141-02.htm": + { + qs.startQuest(); + htmltext = event; + break; + } + case "reward1": + { + if (qs.isCond(6)) + { + takeItems(player, ARMOR_DESIGN, 1); + takeItems(player, ZOMBIE_FOREST_ELF_TOOTH, 10); + takeItems(player, BAT_SKIN, 10); + takeItems(player, STONE_GIANTS_SHINY_ROCK, 10); + takeItems(player, OLD_BONE_FRAGMENT, 20); + giveItems(player, WARRIORS_ARMOR, 1); + giveItems(player, WARRIORS_GAITERS, 1); + giveItems(player, RING_NOVICE, 2); + addExpAndSp(player, 80000, 0); + qs.exitQuest(false, true); + htmltext = "30136-03.html"; + } + break; + } + case "reward2": + { + if (qs.isCond(6)) + { + takeItems(player, ARMOR_DESIGN, 1); + takeItems(player, ZOMBIE_FOREST_ELF_TOOTH, 10); + takeItems(player, BAT_SKIN, 10); + takeItems(player, STONE_GIANTS_SHINY_ROCK, 10); + takeItems(player, OLD_BONE_FRAGMENT, 20); + giveItems(player, MEDIUMS_TUNIC, 1); + giveItems(player, MEDIUMS_STOCKINGS, 1); + giveItems(player, RING_NOVICE, 2); + addExpAndSp(player, 80000, 0); + qs.exitQuest(false, true); + htmltext = "30136-04.html"; + } + break; + } + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance talker) + { + final QuestState qs = getQuestState(talker, true); + String htmltext = getNoQuestMsg(talker); + switch (qs.getState()) + { + case State.CREATED: + { + if (npc.getId() == TALOS) + { + htmltext = "30141-01.html"; + } + break; + } + case State.STARTED: + { + if (npc.getId() == TALOS) + { + if (qs.isCond(1)) + { + htmltext = "30141-02a.html"; + } + break; + } + else if (npc.getId() == PAYNE) + { + switch (qs.getCond()) + { + case 1: + { + htmltext = "30136-01.htm"; + qs.setCond(2, true); + showOnScreenMsg(talker, NpcStringId.GO_HUNTING_AND_KILL_ZOMBIE_FOREST_ELVES_AND_ZOMBIE_FOREST_ELF_RESEARCHERS, ExShowScreenMessage.TOP_CENTER, 10000); + giveItems(talker, ARMOR_DESIGN, 1); + break; + } + case 2: + { + htmltext = "30136-01a.html"; + break; + } + case 6: + { + htmltext = "30136-02.html"; + break; + } + } + } + break; + } + case State.COMPLETED: + { + htmltext = getAlreadyCompletedMsg(talker); + break; + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + if (qs != null) + { + switch (npc.getId()) + { + case ZOMBIE_FOREST_ELF: + case ZOMBIE_FOREST_ELF_RESEARCHER: + { + if (qs.isCond(2) && (getQuestItemsCount(killer, ZOMBIE_FOREST_ELF_TOOTH) < 10)) + { + if (getRandom(100) < 85) + { + giveItems(killer, ZOMBIE_FOREST_ELF_TOOTH, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (getQuestItemsCount(killer, ZOMBIE_FOREST_ELF_TOOTH) >= 10) + { + showOnScreenMsg(killer, NpcStringId.YOU_HAVE_KILLED_ENOUGH_ZOMBIE_FOREST_ELVES_AND_ZOMBIE_FOREST_ELF_RESEARCHERS_N_GO_HUNTING_AND_KILL_FESTERING_BATS_AND_RED_EYE_BATS, ExShowScreenMessage.TOP_CENTER, 10000); + qs.setCond(3); + } + } + } + break; + } + case FESTERING_BAT: + case RED_EYE_BAT: + { + if (qs.isCond(3) && (getQuestItemsCount(killer, BAT_SKIN) < 10)) + { + if (getRandom(100) < 85) + { + giveItems(killer, BAT_SKIN, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if (getQuestItemsCount(killer, BAT_SKIN) >= 10) + { + showOnScreenMsg(killer, NpcStringId.YOU_HAVE_KILLED_ENOUGH_FESTERING_BATS_AND_RED_EYE_BATS_N_GO_HUNTING_AND_KILL_STONE_GIANT_SOLDIERS_AND_STONE_GIANT_GUARDIANS, ExShowScreenMessage.TOP_CENTER, 10000); + qs.setCond(4); + } + } + } + break; + } + case GIANT_STONE_SOLDIER: + case GIANT_STONE_GUARDIAN: + { + if (qs.isCond(4) && (getQuestItemsCount(killer, STONE_GIANTS_SHINY_ROCK) < 10)) + { + if (getRandom(100) < 85) + { + giveItems(killer, STONE_GIANTS_SHINY_ROCK, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, STONE_GIANTS_SHINY_ROCK) >= 10)) + { + showOnScreenMsg(killer, NpcStringId.YOU_HAVE_KILLED_ENOUGH_STONE_GIANT_SOLDIERS_AND_STONE_GIANT_GUARDIANS_N_GO_HUNTING_AND_KILL_DARK_HORRORS, ExShowScreenMessage.TOP_CENTER, 10000); + qs.setCond(5); + } + } + } + break; + } + case DARK_HORROR: + { + if (qs.isCond(5) && (getQuestItemsCount(killer, OLD_BONE_FRAGMENT) < 20)) + { + if (getRandom(100) < 90) + { + giveItems(killer, OLD_BONE_FRAGMENT, 1); + playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE); + if ((getQuestItemsCount(killer, OLD_BONE_FRAGMENT) >= 20)) + { + showOnScreenMsg(killer, NpcStringId.YOU_HAVE_KILLED_ENOUGH_DARK_HORRORS_NRETURN_TO_ARMOR_MERCHANT_PAYNE, ExShowScreenMessage.TOP_CENTER, 10000); + qs.setCond(6); + } + } + } + break; + } + } + } + return super.onKill(npc, killer, isSummon); + } +} \ No newline at end of file diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/no-level.html b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/no-level.html new file mode 100644 index 0000000000..5a69038bb7 --- /dev/null +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/no-level.html @@ -0,0 +1,4 @@ +Tetrarch Talos:
+You ought to gain more experience. Come back later.
+(This quest is available to characters of Level 11 or higher.)
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/no-race.html b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/no-race.html new file mode 100644 index 0000000000..e1b9e80f85 --- /dev/null +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11014_SurpriseGift/no-race.html @@ -0,0 +1,4 @@ +Tetrarch Talos:
+You are not a Dark Elf. Get the hell out! +(This quest is available to Dark Elfs only.)
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11019_TribalBenefit/Q11019_TribalBenefit.java b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11019_TribalBenefit/Q11019_TribalBenefit.java index 6cb5d57010..673f463eaf 100644 --- a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11019_TribalBenefit/Q11019_TribalBenefit.java +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/Q11019_TribalBenefit/Q11019_TribalBenefit.java @@ -68,6 +68,7 @@ public class Q11019_TribalBenefit extends Quest addCondLevel(MIN_LVL, MAX_LVL, "no-level.html"); addCondRace(Race.ORC, "no-race.html"); registerQuestItems(TRIBAL_CHRONICLE, KASHA_WOLF_FUR, ASHES_OF_ANCESTORS, IMP_NECKLACE, MOUNTAIN_FUNGUS_SPORES, MARAKU_WEREWOLF_CLAW, EYE_OF_SEER_TEARS); + setQuestNameNpcStringId(NpcStringId.LV_2_20_TRIBAL_BENEFIT); } @Override diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/QuestMasterHandler.java index 152b1dafb2..834fc4bff7 100644 --- a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/QuestMasterHandler.java +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/scripts/quests/QuestMasterHandler.java @@ -153,6 +153,7 @@ import quests.Q11001_TombsOfAncestors.Q11001_TombsOfAncestors; import quests.Q11002_HelpWithTempleRestoration.Q11002_HelpWithTempleRestoration; import quests.Q11007_NoiseInWoods.Q11007_NoiseInWoods; import quests.Q11013_ShilensHunt.Q11013_ShilensHunt; +import quests.Q11014_SurpriseGift.Q11014_SurpriseGift; import quests.Q11019_TribalBenefit.Q11019_TribalBenefit; /** @@ -298,6 +299,7 @@ public class QuestMasterHandler Q11002_HelpWithTempleRestoration.class, Q11007_NoiseInWoods.class, Q11013_ShilensHunt.class, + Q11014_SurpriseGift.class, Q11019_TribalBenefit.class, }; diff --git a/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/spawns/DarkElfTerritory/DarkElfTerritory.xml b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/spawns/DarkElfTerritory/DarkElfTerritory.xml new file mode 100644 index 0000000000..49e89f52a2 --- /dev/null +++ b/L2J_Mobius_Classic_2.0_Zaken/dist/game/data/spawns/DarkElfTerritory/DarkElfTerritory.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + +