From 1f38c2062f6da6cf0b5a12ecb5717f9351b01aee Mon Sep 17 00:00:00 2001 From: MobiusDev <8391001+MobiusDevelopment@users.noreply.github.com> Date: Sun, 7 Aug 2016 17:59:58 +0000 Subject: [PATCH] Quest Assassination of the Varka Silenos Chief (10422). Contributed by Stayway. --- .../data/scripts/quests/MissingQuests.txt | 1 - .../33853-01.htm | 4 + .../33853-02.htm | 4 + .../33853-03.htm | 4 + .../33853-04.html | 3 + .../33853-05.html | 4 + .../33853-06.html | 11 ++ .../33853-07.html | 5 + .../33853-08.html | 4 + .../33853-09.htm | 4 + ...2_AssassinationOfTheVarkaSilenosChief.java | 151 ++++++++++++++++++ .../scripts/quests/QuestMasterHandler.java | 2 + 12 files changed, 196 insertions(+), 1 deletion(-) create mode 100644 trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-01.htm create mode 100644 trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-02.htm create mode 100644 trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-03.htm create mode 100644 trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-04.html create mode 100644 trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-05.html create mode 100644 trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-06.html create mode 100644 trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-07.html create mode 100644 trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-08.html create mode 100644 trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-09.htm create mode 100644 trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/Q10422_AssassinationOfTheVarkaSilenosChief.java diff --git a/trunk/dist/game/data/scripts/quests/MissingQuests.txt b/trunk/dist/game/data/scripts/quests/MissingQuests.txt index cf4092f45a..c3e76012cc 100644 --- a/trunk/dist/game/data/scripts/quests/MissingQuests.txt +++ b/trunk/dist/game/data/scripts/quests/MissingQuests.txt @@ -94,7 +94,6 @@ 10380 The Executioner's Execution 10388 Conspiracy Behind Doors 10389 The Voice of Authority -10422 Assassination of the Varka Silenos Chief 10424 Kekropus' Letter: Belos' Whereabouts (8/9) 10425 The Ketra Orc Supporters 10426 Assassination of the Ketra Orc Commander diff --git a/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-01.htm b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-01.htm new file mode 100644 index 0000000000..ae4194d217 --- /dev/null +++ b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-01.htm @@ -0,0 +1,4 @@ +Giant's Minion Hansen:
+Since you assassinated their commander, security's been tight around here. But we won't give up!
+ + \ No newline at end of file diff --git a/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-02.htm b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-02.htm new file mode 100644 index 0000000000..e2c30d2bf9 --- /dev/null +++ b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-02.htm @@ -0,0 +1,4 @@ +Giant's Minion Hansen:
+I know it will be dangerous, but we have no other choice. We have to assassinate their chief. If they lose their chief on top of their commander, they will fall into chaos. So, I bet Kampf will show up this time.
+ + \ No newline at end of file diff --git a/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-03.htm b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-03.htm new file mode 100644 index 0000000000..7fa7d45f28 --- /dev/null +++ b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-03.htm @@ -0,0 +1,4 @@ +Giant's Minion Hansen:
+Hey, watch it! Of course, it won't be easy to assassinate the chief of the Varka Silenoses. But I believe you can pull it off.
+ + \ No newline at end of file diff --git a/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-04.html b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-04.html new file mode 100644 index 0000000000..5a59cae136 --- /dev/null +++ b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-04.html @@ -0,0 +1,3 @@ +Giant's Minion Hansen:
+Let me explain again. Find and kill Varka's Chief Horus here in the Varka Silenos Barracks and report back to me. + \ No newline at end of file diff --git a/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-05.html b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-05.html new file mode 100644 index 0000000000..da7c206268 --- /dev/null +++ b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-05.html @@ -0,0 +1,4 @@ +Giant's Minion Hansen:
+You haven't finished the mission yet.
+Let me explain again. Find and kill Varka's Chief Horus here in the Varka Silenos Barracks and report back to me. + \ No newline at end of file diff --git a/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-06.html b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-06.html new file mode 100644 index 0000000000..5feaad45be --- /dev/null +++ b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-06.html @@ -0,0 +1,11 @@ +Giant's Minion Hansen:
+So you killed Varka's Commander Mos, and still no Kampf, huh.
+This is troubling, but at least you did get rid of Mos. That probably dealt a blow to the Embryo and Varka Silenos alliance.
+Allow me to pay you for your work. Which color would you like?
+ + + + + + + \ No newline at end of file diff --git a/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-07.html b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-07.html new file mode 100644 index 0000000000..e1472634d7 --- /dev/null +++ b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-07.html @@ -0,0 +1,5 @@ +Giant's Minion Hansen:
+Thank you for your hard work. Our greatest headache is gone!
. +Of course, we'll keep close eyes on Embryo. They'll be back for sure with a new plot, I'm sure.
+I'll be sure to let Kekropus know of your role in these dealings. You will always be honored among us! + \ No newline at end of file diff --git a/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-08.html b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-08.html new file mode 100644 index 0000000000..9970ef6880 --- /dev/null +++ b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-08.html @@ -0,0 +1,4 @@ +Giant's Minion Hansen:
+I don't trust you.
+(Ertheia classes cannot perform this quest.) + \ No newline at end of file diff --git a/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-09.htm b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-09.htm new file mode 100644 index 0000000000..4dba7f036d --- /dev/null +++ b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/33853-09.htm @@ -0,0 +1,4 @@ +Giant's Minion Hansen:
+I don't think it's time to act quite yet.
+(This quest may only be undertaken by a Fighter class character of level 76 to 80 who has completed the quest "Assassination Of The VarkaSilenos Commander".) + \ No newline at end of file diff --git a/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/Q10422_AssassinationOfTheVarkaSilenosChief.java b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/Q10422_AssassinationOfTheVarkaSilenosChief.java new file mode 100644 index 0000000000..83fdd25119 --- /dev/null +++ b/trunk/dist/game/data/scripts/quests/Q10422_AssassinationOfTheVarkaSilenosChief/Q10422_AssassinationOfTheVarkaSilenosChief.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.Q10422_AssassinationOfTheVarkaSilenosChief; + +import com.l2jmobius.gameserver.enums.CategoryType; +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 quests.Q10421_AssassinationOfTheVarkaSilenosCommander.Q10421_AssassinationOfTheVarkaSilenosCommander; + +/** + * Assassination of the Varka Silenos Chief (10422) + * @author Stayway + */ +public final class Q10422_AssassinationOfTheVarkaSilenosChief extends Quest +{ + // NPCs + private static final int HANSEN = 33853; + private static final int CHIEF_HORUS = 27503; + private static final int KAMPF = 27516; + // Items + private static final int EAS = 26353; // Scroll: Enchant Armor (S-grade) + // Misc + private static final int MIN_LEVEL = 76; + private static final int MAX_LEVEL = 80; + + public Q10422_AssassinationOfTheVarkaSilenosChief() + { + super(10422); + addStartNpc(HANSEN); + addTalkId(HANSEN); + addKillId(CHIEF_HORUS); + addSpawnId(KAMPF); + addCondNotRace(Race.ERTHEIA, "33853-08.html"); + addCondInCategory(CategoryType.FIGHTER_GROUP, "33853-09.htm"); + addCondMinLevel(MIN_LEVEL, "33853-09.htm"); + addCondMaxLevel(MAX_LEVEL, "33853-09.htm"); + addCondCompletedQuest(Q10421_AssassinationOfTheVarkaSilenosCommander.class.getSimpleName(), "33853-09.htm"); + } + + @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 "33853-02.htm": + case "33853-04.html": + { + htmltext = event; + break; + } + case "33853-03.htm": + { + st.startQuest(); + htmltext = event; + break; + } + case "reward_9546": + case "reward_9547": + case "reward_9548": + case "reward_9549": + case "reward_9550": + case "reward_9551": + { + if (st.isCond(2)) + { + final int stoneId = Integer.parseInt(event.replaceAll("reward_", "")); + st.exitQuest(false, true); + giveItems(player, stoneId, 15); + giveItems(player, EAS, 2); + giveStoryQuestReward(player, 30); + if ((player.getLevel() >= MIN_LEVEL) && (player.getLevel() <= MAX_LEVEL)) + { + addExpAndSp(player, 7_665_840, 1839); + } + htmltext = "33853-07.html"; + } + break; + } + } + return htmltext; + } + + @Override + public String onTalk(L2Npc npc, L2PcInstance player) + { + String htmltext = getNoQuestMsg(player); + final QuestState qs = getQuestState(player, true); + + if (npc.getId() == HANSEN) + { + if (qs.getState() == State.CREATED) + { + htmltext = "33853-01.htm"; + } + else if (qs.getState() == State.STARTED) + { + if (qs.isCond(1)) + { + htmltext = "33853-05.html"; + } + else if (qs.isCond(2)) + { + htmltext = "33853-06.html"; + } + } + } + return htmltext; + } + + @Override + public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon) + { + final QuestState qs = getQuestState(killer, false); + + if ((qs != null) && qs.isCond(1)) + { + qs.setCond(2, true); + } + if ((qs != null) && qs.isCond(2)) + { + addSpawn(KAMPF, 105626, -43053, -1721, 0, true, 60000); + } + return super.onKill(npc, killer, isSummon); + } +} \ No newline at end of file diff --git a/trunk/dist/game/data/scripts/quests/QuestMasterHandler.java b/trunk/dist/game/data/scripts/quests/QuestMasterHandler.java index 82a720d7bd..90743c7b63 100644 --- a/trunk/dist/game/data/scripts/quests/QuestMasterHandler.java +++ b/trunk/dist/game/data/scripts/quests/QuestMasterHandler.java @@ -277,6 +277,7 @@ import quests.Q10415_KekropusLetterWithWisdom.Q10415_KekropusLetterWithWisdom; import quests.Q10416_InSearchOfTheEyeOfArgos.Q10416_InSearchOfTheEyeOfArgos; import quests.Q10417_DaimonTheWhiteEyed.Q10417_DaimonTheWhiteEyed; import quests.Q10421_AssassinationOfTheVarkaSilenosCommander.Q10421_AssassinationOfTheVarkaSilenosCommander; +import quests.Q10422_AssassinationOfTheVarkaSilenosChief.Q10422_AssassinationOfTheVarkaSilenosChief; import quests.Q10442_TheAnnihilatedPlains1.Q10442_TheAnnihilatedPlains1; import quests.Q10445_AnImpendingThreat.Q10445_AnImpendingThreat; import quests.Q10450_ADarkAmbition.Q10450_ADarkAmbition; @@ -635,6 +636,7 @@ public class QuestMasterHandler Q10416_InSearchOfTheEyeOfArgos.class, Q10417_DaimonTheWhiteEyed.class, Q10421_AssassinationOfTheVarkaSilenosCommander.class, + Q10422_AssassinationOfTheVarkaSilenosChief.class, Q10442_TheAnnihilatedPlains1.class, Q10445_AnImpendingThreat.class, Q10450_ADarkAmbition.class,