Seed of Hellfire quests.

Contributed by hlwrave.
This commit is contained in:
MobiusDev
2016-02-09 10:01:07 +00:00
parent 2ab94e6daf
commit cc24fc452c
96 changed files with 1398 additions and 0 deletions

View File

@@ -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 <http://www.gnu.org/licenses/>.
*/
package quests.Q00754_AssistingTheRebelForces;
import com.l2jmobius.gameserver.enums.QuestType;
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.ExQuestNpcLogList;
import com.l2jmobius.gameserver.util.Util;
/**
* @hlwrave
*/
public class Q00754_AssistingTheRebelForces extends Quest
{
// Items
private static final int REBEL_SUPPLY_BOX = 35549;
private static final int MARK_OF_RESISTANCE = 34909;
// Npcs
private static final int SIZRAK = 33669;
private static final int COMMUNICATION = 33676;
// Monsters
private static final int KUNDA_GUARDIAN = 23224;
private static final int KUNDA_BERSERKER = 23225;
private static final int KUNDA_EXECUTOR = 23226;
// Misc
private static final int MIN_LEVEL = 97;
private static final int KUNDA_GUARDIAN_KILL = 5;
private static final int KUNDA_BERSERKER_KILL = 5;
private static final int KUNDA_EXECUTOR_KILL = 5;
public Q00754_AssistingTheRebelForces()
{
super(754, Q00754_AssistingTheRebelForces.class.getSimpleName(), "Assisting The Rebel Forces");
addStartNpc(SIZRAK);
addTalkId(SIZRAK, COMMUNICATION);
addKillId(KUNDA_GUARDIAN, KUNDA_BERSERKER, KUNDA_EXECUTOR);
addCondMinLevel(MIN_LEVEL, "sofa_sizraku_q0754_05.htm");
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
String htmltext = event;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return getNoQuestMsg(player);
}
if (event.equals("quest_accpted.htm"))
{
qs.startQuest();
qs.set(Integer.toString(KUNDA_GUARDIAN), 0);
qs.set(Integer.toString(KUNDA_BERSERKER), 0);
qs.set(Integer.toString(KUNDA_EXECUTOR), 0);
htmltext = "sofa_sizraku_q0754_04.htm";
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
switch (npc.getId())
{
case SIZRAK:
{
if (qs.isCreated())
{
htmltext = "sofa_sizraku_q0754_01.htm";
}
else if (qs.isCond(0))
{
htmltext = "sofa_sizraku_q0754_03.htm";
}
else if (qs.isCond(1))
{
htmltext = "sofa_sizraku_q0754_07.htm";
}
else if (qs.isCond(2))
{
qs.addExpAndSp(570676680, 261024840);
qs.giveItems(REBEL_SUPPLY_BOX, 1);
qs.giveItems(MARK_OF_RESISTANCE, 1);
qs.exitQuest(QuestType.DAILY, true);
htmltext = "sofa_sizraku_q0754_08.htm";
}
else if (qs.isCompleted())
{
htmltext = "sofa_sizraku_q0754_06.htm";
}
break;
}
case COMMUNICATION:
{
if (qs.isCond(2))
{
qs.getPlayer().addExpAndSp(570676680, 261024840);
qs.giveItems(REBEL_SUPPLY_BOX, 1);
qs.giveItems(MARK_OF_RESISTANCE, 1);
qs.exitQuest(QuestType.DAILY, true);
htmltext = "sofa_sizraku_q0754_08.htm";
}
break;
}
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
{
final QuestState qs = getRandomPartyMemberState(killer, -1, 3, npc);
if ((qs != null) && qs.isCond(1) && Util.checkIfInRange(1500, npc, qs.getPlayer(), false))
{
switch (npc.getId())
{
case KUNDA_GUARDIAN:
{
int kills = qs.getInt(Integer.toString(KUNDA_GUARDIAN));
if (kills < KUNDA_GUARDIAN_KILL)
{
kills++;
qs.set(Integer.toString(KUNDA_GUARDIAN), kills);
}
break;
}
case KUNDA_BERSERKER:
{
int kills = qs.getInt(Integer.toString(KUNDA_BERSERKER));
if (kills < KUNDA_BERSERKER_KILL)
{
kills++;
qs.set(Integer.toString(KUNDA_BERSERKER), kills);
}
break;
}
case KUNDA_EXECUTOR:
{
int kills = qs.getInt(Integer.toString(KUNDA_EXECUTOR));
if (kills < KUNDA_EXECUTOR_KILL)
{
kills++;
qs.set(Integer.toString(KUNDA_EXECUTOR), kills);
}
break;
}
}
final ExQuestNpcLogList log = new ExQuestNpcLogList(getId());
log.addNpc(KUNDA_GUARDIAN, qs.getInt(Integer.toString(KUNDA_GUARDIAN)));
log.addNpc(KUNDA_BERSERKER, qs.getInt(Integer.toString(KUNDA_BERSERKER)));
log.addNpc(KUNDA_EXECUTOR, qs.getInt(Integer.toString(KUNDA_EXECUTOR)));
killer.sendPacket(log);
if ((qs.getInt(Integer.toString(KUNDA_GUARDIAN)) >= KUNDA_GUARDIAN_KILL) && (qs.getInt(Integer.toString(KUNDA_BERSERKER)) >= KUNDA_BERSERKER_KILL) && (qs.getInt(Integer.toString(KUNDA_EXECUTOR)) >= KUNDA_EXECUTOR_KILL))
{
qs.setCond(2);
}
}
return super.onKill(npc, killer, isSummon);
}
}

View File

@@ -0,0 +1,5 @@
<html><body>Sizrak:<br>
You must already know that we are fighting to drive <font color="LEVEL">Tauti</font> and his minions out.<br>
Have you come to help?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00754_AssistingTheRebelForces sofa_sizraku_q0754_03.htm">"I have."</button>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Sizrak:<br>
We're driving <font color="LEVEL">Tauti</font> out, but the fight is not an easy one.<br>
Will you lend us your sword? <br>
<button ALIGN=LEFT ICON="NORMAL" action="bypass -h menu_select?ask=0754&reply=1">"I will!"</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
Excellent! Go to <font color="LEVEL">Seed of Hellfire Level 2</font> and kill <font color="LEVEL">Kundas</font>. Our people... they haven't had much success there. Perhaps your luck is different.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00754_AssistingTheRebelForces quest_accpted.htm">"I'm sure it will be."</button>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Sizrak:<br>
Your confidence is heartening.<br>
You can find the <font color="LEVEL">Kunda</font> at the <font color="LEVEL">Seed of Hellfire Level 2</font>. Go there and kill <font color="LEVEL">5</font> of <font color="LEVEL">Kunda's Guardians</font>, <font color="LEVEL">Kunda's Berserkers</font> and <font color="LEVEL">Kunda's Executors</font>. Five each.<br>
If it is too much trouble to return here, then report back to my <font color="LEVEL">Communications Assistants</font>. They are authorized to speak on my behalf.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
Hmm... I think not. You can't help us at the moment.<br>
(You must be level 97 or above to start this quest.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
I think that's enough for today. Come back tomorrow.<br>
(You can only do this quest once a day. This quest resets at 6:30 AM.)
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Sizrak:<br>
You can find Kundas at the <font color="LEVEL">Seed of Hellfire Level 2</font>. Go now, and with our highest hopes.<br>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Sizrak:<br>
Astounding! This is a great help to our cause! I think you have done enough for us today, but if you wish to return tomorrow, you will always be welcome here!<br>
</body></html>

View File

@@ -0,0 +1,134 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
package quests.Q00755_InNeedOfPetras;
import com.l2jmobius.gameserver.enums.QuestType;
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;
/**
* @hlwrave
*/
public class Q00755_InNeedOfPetras extends Quest
{
// NPCs
private static final int AKU = 33671;
// Monsters
private static final int[] MONSTERS =
{
23213,
23214,
23227,
23228,
23229,
23230,
23215,
23216,
23217,
23218,
23231,
23232,
23233,
23234,
23237,
23219
};
// Items
private static final int AKUS_SUPPLY_BOX = 35550;
private static final int ENERGY_OF_DESTRUCTION = 35562;
private static final int PETRA = 34959;
// Other
private static final int MIN_LEVEL = 97;
public Q00755_InNeedOfPetras()
{
super(755, Q00755_InNeedOfPetras.class.getSimpleName(), "In Need Of Petras");
addStartNpc(AKU);
addTalkId(AKU);
addKillId(MONSTERS);
registerQuestItems(PETRA);
addCondMinLevel(MIN_LEVEL, "sofa_aku_q0755_05.htm");
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
String htmltext = event;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return getNoQuestMsg(player);
}
if (event.equals("sofa_aku_q0755_04.htm"))
{
qs.startQuest();
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
if (qs.isCreated())
{
htmltext = "sofa_aku_q0755_01.htm";
}
else if (qs.isStarted())
{
if (qs.isCond(1))
{
htmltext = "sofa_aku_q0755_07.htm";
}
else if (qs.isCond(2))
{
qs.takeItems(PETRA, -1L);
qs.addExpAndSp(570676680, 26102484);
qs.giveItems(AKUS_SUPPLY_BOX, 1);
qs.giveItems(ENERGY_OF_DESTRUCTION, 1);
qs.exitQuest(QuestType.DAILY, true);
htmltext = "sofa_aku_q0755_08.htm";
}
}
else if (qs.isCompleted())
{
htmltext = "sofa_aku_q0755_06.htm";
}
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.isStarted())
{
if (giveItemRandomly(killer, npc, PETRA, 1, 50, 0.75, true))
{
qs.setCond(2);
}
}
return super.onKill(npc, killer, isSummon);
}
}

View File

@@ -0,0 +1,4 @@
<html><body>Aku:<br>
Hmm? Oh, it's you! I'm so glad you are here. Could you collect <font color="LEVEL">Petra</font> for me again?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00755_InNeedOfPetras sofa_aku_q0755_03.htm">"Sure."</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Aku:<br>
I'm collecting <font color="LEVEL">Petra</font> right now, and I need help. You look like you need something to do, hee! <br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00755_InNeedOfPetras sofa_aku_q0755_03.htm">"Sure, I'll help."</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Aku:<br>
Hee, hat's what I like to hear! Go to <font color="LEVEL">Seed of Hellfire</font> and kill the Zofans. They carry the <font color="LEVEL">Petra</font>.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00755_InNeedOfPetras sofa_aku_q0755_04.htm">"Here I go!"</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Aku:<br>
You can collect <font color="LEVEL">Petra</font> by killing <font color="LEVEL">Beggar Zofan</font>, <font color="LEVEL">Zofan</font>, <font color="LEVEL">Young Zofan</font> and <font color="LEVEL">Engineer Zofan</font>. <font color="LEVEL">50</font> should do it, hee!<br>
Oh yes! You can also give them to <font color="LEVEL">Aku's Minions</font> if it's too hard to bring <font color="LEVEL">Petras</font> all the way back here.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Aku:<br>
Hee! You can't help, you dingbat!<br>
(You must be level 97 or above.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Aku:<br>
That's as much as I can hold, hee! Let's do this again tomorrow.<br>
(You can only do this quest once a day. This quest is reset everyday at 6:30 AM.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Aku:<br>
What? This isn't enough, you dingbat! Bring me more!<br>
You can collect <font color="LEVEL">Petra</font> by killing <font color="LEVEL">Beggar Zofan</font>, <font color="LEVEL">Zofan</font>, <font color="LEVEL">Young Zofan</font> and <font color="LEVEL">Engineer Zofan</font>. Hee!
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Aku:<br>
Hee! That's as much as I can take for today. Let's do this again tomorrow!<br>
</body></html>

View File

@@ -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 <http://www.gnu.org/licenses/>.
*/
package quests.Q00756_TopQualityPetra;
import com.l2jmobius.gameserver.enums.QuestType;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
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.model.quest.State;
/**
* @hlwrave
*/
public class Q00756_TopQualityPetra extends Quest
{
// Npcs
private final int AKU = 33671;
// Items
private final int AKU_MARK = 34910;
private final int TOP_QUALITY_PETRA = 35703;
private final int ZAHAK_PETRA = 35702;
// Other
private static final int MIN_LEVEL = 97;
public Q00756_TopQualityPetra()
{
super(756, Q00756_TopQualityPetra.class.getSimpleName(), "Top Quality Petra");
addTalkId(AKU);
addItemTalkId(ZAHAK_PETRA);
registerQuestItems(TOP_QUALITY_PETRA);
addCondMinLevel(MIN_LEVEL, "sofa_aku_q0755_05.htm");
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
String htmltext = event;
final QuestState qs = getQuestState(player, false);
switch (event)
{
case "petra_of_zahaq_q0756_03.htm":
{
qs.startQuest();
qs.takeItems(ZAHAK_PETRA, 1);
qs.giveItems(TOP_QUALITY_PETRA, 1);
}
case "sofa_aku_q0756_02.htm":
{
qs.takeItems(TOP_QUALITY_PETRA, -1);
qs.addExpAndSp(570676680, 26102484);
qs.giveItems(AKU_MARK, 1);
qs.exitQuest(QuestType.DAILY, true);
}
}
return htmltext;
}
@Override
public String onItemTalk(L2ItemInstance item, L2PcInstance player)
{
String htmltext = getNoQuestMsg(player);
final QuestState qs = getQuestState(player, true);
boolean startQuest = false;
switch (qs.getState())
{
case State.CREATED:
{
startQuest = true;
break;
}
case State.COMPLETED:
{
if (qs.isNowAvailable())
{
qs.setState(State.CREATED);
startQuest = true;
}
break;
}
}
if (startQuest)
{
if (player.getLevel() >= MIN_LEVEL)
{
qs.startQuest();
qs.takeItems(ZAHAK_PETRA, 1);
qs.giveItems(TOP_QUALITY_PETRA, 1);
htmltext = "petra_of_zahaq_q0756_03.htm";
}
else
{
htmltext = "petra_of_zahaq_q0756_02.htm";
}
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
if (qs.isCond(1) && qs.hasQuestItems(TOP_QUALITY_PETRA))
{
htmltext = "sofa_aku_q0756_01.htm";
}
else
{
htmltext = "sofa_aku_q0756_03.htm";
}
return htmltext;
}
}

View File

@@ -0,0 +1,2 @@
<html><body>You do not yet meet the conditions for this quest.
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>(You need permission to confront Petra.)<br>
(This quest is for level 97 or above.)
</body></html>

View File

@@ -0,0 +1,2 @@
<html><body>(<font color="LEVEL">Jahak's Petra</font> is more powerful than expected. Take this <font color="LEVEL">Top Quality Petra</font> to <font color="LEVEL">Aku</font>, though it's probably best not to mention <font color="LEVEL">Jahak</font>.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Aku:<br>
Hee! You can't help, you dingbat!<br>
(You must be level 97 or above.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Aku:<br>
Ooh! This Petra is delightful! Where did you get such high-quality stuff?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00756_TopQualityPetra sofa_aku_q0756_02.htm">"Uh, from the Zofans?"</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Aku:<br>
Ooh, yes? Well, that is rare! But this is fine enough for Lord Tauti himself...<br>
Hee! If you find a <font color="LEVEL">Top Quality Petra</font> like this one again, make sure you bring it to me!
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Aku:<br>
You do not yet meet the conditions for this quest.<br>
</body></html>

View File

@@ -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 <http://www.gnu.org/licenses/>.
*/
package quests.Q10381_ToTheSeedOfHellfire;
import com.l2jmobius.gameserver.enums.QuestType;
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;
/**
* @hlwrave
*/
public class Q10381_ToTheSeedOfHellfire extends Quest
{
// NPCS
private static final int KEUCEREUS = 32548;
private static final int KBALDIR = 32733;
private static final int SIZRAK = 33669;
// Items
private static final int KBALDIRS_LETTER = 34957;
// Misc
private static final int MIN_LEVEL = 97;
public Q10381_ToTheSeedOfHellfire()
{
super(10381, Q10381_ToTheSeedOfHellfire.class.getSimpleName(), "To the Seed of Hellfire");
addStartNpc(KEUCEREUS);
addTalkId(KEUCEREUS, KBALDIR, SIZRAK);
registerQuestItems(KBALDIRS_LETTER);
addCondMinLevel(MIN_LEVEL, "kserth_q10381_04.htm");
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
String htmltext = event;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return getNoQuestMsg(player);
}
switch (event)
{
case "kserth_q10381_03.htm":
{
qs.startQuest();
break;
}
case "kbarldire_q10381_03.htm":
{
qs.setCond(2);
qs.giveItems(KBALDIRS_LETTER, 1);
break;
}
case "sofa_sizraku_q10381_03.htm":
{
qs.takeItems(KBALDIRS_LETTER, -1);
qs.addExpAndSp(951127800, 435041400);
qs.giveItems(57, 3256740);
qs.exitQuest(QuestType.ONE_TIME, true);
break;
}
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
switch (npc.getId())
{
case KEUCEREUS:
{
if (qs.isCreated())
{
htmltext = "kserth_q10381_01.htm";
}
else if (qs.isStarted())
{
htmltext = "kserth_q10381_06.htm";
}
else if (qs.isCompleted())
{
htmltext = "kserth_q10381_05.htm";
}
break;
}
case KBALDIR:
{
if (qs.isCond(1))
{
htmltext = "kbarldire_q10381_01.htm";
}
else if (qs.isCond(2))
{
htmltext = "kbarldire_q10381_04.htm";
}
break;
}
case SIZRAK:
{
if (qs.isCond(2))
{
htmltext = "sofa_sizraku_q10381_01.htm";
}
break;
}
}
return htmltext;
}
}

View File

@@ -0,0 +1,4 @@
<html><body>Commander Kbaldir:<br>
It's you! I've been waiting for you. Right now the insurgent force is secretly working in the <font color="LEVEL">Seed of Hellfire</font>. But they could use your help, if you were willing to give it.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10381_ToTheSeedOfHellfire kbarldire_q10381_02.htm">"Always."</button>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Commander Kbaldir:<br>
Alright!<br>
To get to the <font color="LEVEL">Seed of Hellfire</font>, use a <font color="LEVEL">Flight Device</font>. The nearest <font color="LEVEL">device</font> can be found <font color="LEVEL">by following the road behind me and turning left</font>.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10381_ToTheSeedOfHellfire kbarldire_q10381_03.htm">"Got it."</button>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Commander Kbaldir:<br>
Good. Now hurry and leave for the <font color="LEVEL">Seed of Hellfire</font>. Once there, find <font color="LEVEL">Sizrak</font>. He's a member of the Insurgent force, and will tell you what needs doing.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Commander Kbaldir:<br>
Huh? Why haven't you left for the <font color="LEVEL">Seed of Hellfire</font> yet?<br>
Remember, to get to the <font color="LEVEL">Seed of Hellfire</font>, use a <font color="LEVEL">Flight Device</font>. The nearest <font color="LEVEL">device</font> can be found <font color="LEVEL">by following the road behind me and turning left.</font>.
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Admiral Keucereus:<br>
I have to urgently send a person to the <font color="LEVEL">Seed of Hellfire</font>, but I guess there is nobody except you who I can trust.<br>
Could you go there?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10381_ToTheSeedOfHellfire kserth_q10381_02.htm">"Yes, of course!"</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Admiral Keucereus:<br>
Well answered! Go and see <font color="LEVEL">Commander Kbaldir</font>. He will not only tell you how to go to the <font color="LEVEL">Seed of Hellfire</font>, but also briefly tell you about the situation over there.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10381_ToTheSeedOfHellfire kserth_q10381_03.htm">"I understand."</button>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Admiral Keucereus:<br>
<font color="LEVEL">Commander Kbaldir</font> is in this <font color="LEVEL">Keucereus Alliance Base</font>. Hurry to him!
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Admiral Keucereus:<br>
I'm sorry but I cannot send you there now that I saw your skills. I don't want any more blood on my hands.<br>
(You must be level 97 or above to start this quest.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Admiral Keucereus:<br>
Rest up, friend. You have done well.<br>
(You have already completed this quest.)
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Admiral Keucereus:<br>
Huh? Haven't you left for the <font color="LEVEL">Seed of Hellfire</font> yet? Hurry and go find <font color="LEVEL">Commander Kbaldir</font>. He will tell you how to go to the <font color="LEVEL">Seed of Hellfire</font>.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
Hmm? Do I know you? I'm sorry, I'm busy here and I don't have time for conversation. What? <font color="LEVEL">Keucereus Alliance Base</font> sent you?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10381_ToTheSeedOfHellfire sofa_sizraku_q10381_02.htm">"I have a letter from Kbaldir."</button>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Sizrak:<br>
Do you mind waiting while I read it?<br>
To be honest, I didn't expect <font color="LEVEL">Keucereus Alliance Base</font> to respond to my request for help. Did you come alone?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10381_ToTheSeedOfHellfire sofa_sizraku_q10381_03.htm">"I am just the vanguard."</button>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Sizrak:<br>
Hmm... The vanguard of what, I wonder. Well, perhaps you can help us drive <font color="LEVEL">Tauti</font> out... We've had enough trouble with this already, so more blades will be appreciated.
</body></html>

View File

@@ -0,0 +1,128 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
package quests.Q10382_DayOfLiberation;
import com.l2jmobius.gameserver.enums.QuestType;
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.ExQuestNpcLogList;
import com.l2jmobius.gameserver.util.Util;
import quests.Q10381_ToTheSeedOfHellfire.Q10381_ToTheSeedOfHellfire;
/**
* @hlwrave
*/
public class Q10382_DayOfLiberation extends Quest
{
// NPCs
private static final int SIZRAK = 33669;
private static final int TAUTI = 29236;
// Items
private static final int TAUTIS_BRACELET = 35293;
// Misc
private static final int MIN_LEVEL = 97;
public Q10382_DayOfLiberation()
{
super(10382, Q10382_DayOfLiberation.class.getSimpleName(), "Day of Liberation");
addStartNpc(SIZRAK);
addTalkId(SIZRAK);
addKillId(TAUTI);
addCondMinLevel(MIN_LEVEL, "sofa_sizraku_q10382_04.htm");
addCondCompletedQuest(Q10381_ToTheSeedOfHellfire.class.getSimpleName(), "sofa_sizraku_q10382_05.htm");
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
String htmltext = event;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return getNoQuestMsg(player);
}
switch (event)
{
case "sofa_sizraku_q10382_03.htm":
{
qs.setCond(1);
qs.startQuest();
qs.set(Integer.toString(TAUTI), 0);
break;
}
case "sofa_sizraku_q10382_10.htm":
{
qs.addExpAndSp(951127800, 435041400);
qs.giveItems(57, 3256740);
qs.giveItems(TAUTIS_BRACELET, 1);
qs.exitQuest(QuestType.ONE_TIME, true);
break;
}
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
switch (npc.getId())
{
case SIZRAK:
{
if (qs.isCreated())
{
htmltext = "sofa_sizraku_q10382_01.htm";
}
else if (qs.isStarted())
{
if (qs.isCond(1))
{
htmltext = "sofa_sizraku_q10382_07.htm";
}
else if (qs.isCond(2))
{
htmltext = "sofa_sizraku_q10382_08.htm";
}
}
else if (qs.isCompleted())
{
htmltext = "sofa_sizraku_q10382_06.htm";
}
break;
}
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
{
final QuestState qs = getRandomPartyMemberState(killer, -1, 3, npc);
if ((qs != null) && qs.isStarted() && qs.isCond(1) && Util.checkIfInRange(1500, npc, qs.getPlayer(), false))
{
qs.setCond(2);
}
return super.onKill(npc, killer, isSummon);
}
}

View File

@@ -0,0 +1,5 @@
<html><body>Sizrak:<br>
Now is the time! Go to the <font color="LEVEL">Temple of Tauti</font> and drive <font color="LEVEL">Tauti</font> and his minions out! For the freedom of the <font color="LEVEL">Seed of Hellfire</font>!<br>
Will you fight <font color="LEVEL">Tauti</font> with us?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10382_DayOfLiberation sofa_sizraku_q10382_02.htm">"My blade is at your command!"</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
Good! I will send out the orders. You rally your people--if they exist--and collect <font color="LEVEL">Mark of the Resistance</font>. You'll need them to get into the <font color="LEVEL">Temple of Tauti</font>.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10382_DayOfLiberation sofa_sizraku_q10382_03.htm">"I got it."</button>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Sizrak:<br>
Once you and your troops are prepared, come to me. I will send you there.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
I'm not sure if we should trust you yet. Perhaps later.<br>
(This quest is for players level 97 or above.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
Hmm? Who are you? You came from <font color="LEVEL">Keucereus Alliance Base</font>? Do you have any recommendation? Or, for that matter, proof of who you are? <br>
(You haven't finished the prerequisite quest.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
Thanks to your help, our burden is lightened. We are grateful.<br>
(You have already finished the quest.)
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Sizrak<br>
You have the <font color="LEVEL">Mark of the Resistance</font>? Then I shall send you to the <font color="LEVEL">Temple of Tauti</font>, if you are prepared.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
<font color="LEVEL">Tauti</font> is on the run! You are our savior!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10382_DayOfLiberation sofa_sizraku_q10382_09.htm">"How did your men fare?"</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
Many lives were lost, but their sacrifice was not in vain.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10382_DayOfLiberation sofa_sizraku_q10382_10.htm">"Indeed, it was not."</button>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Sizrak:<br>
This is our independence day. We will remember your role in this!
</body></html>

View File

@@ -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 <http://www.gnu.org/licenses/>.
*/
package quests.Q10383_FergasonsOffer;
import com.l2jmobius.gameserver.enums.QuestType;
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 quests.Q10381_ToTheSeedOfHellfire.Q10381_ToTheSeedOfHellfire;
/**
* @hlwrave
*/
public class Q10383_FergasonsOffer extends Quest
{
// NPCs
private static final int SIZRAK = 33669;
private static final int AKU = 33671;
private static final int FERGASON = 33681;
// Monsters
private static final int[] MONSTERS =
{
23213,
23214,
23215,
23216,
23217,
23218,
23219
};
// Item
private static final int UNSTABLE_PETRA = 34958;
// Misc
private static final int MIN_LEVEL = 97;
public Q10383_FergasonsOffer()
{
super(10383, Q10383_FergasonsOffer.class.getSimpleName(), "Fergasons Offer");
addStartNpc(SIZRAK);
addTalkId(SIZRAK, AKU, FERGASON);
addKillId(MONSTERS);
registerQuestItems(UNSTABLE_PETRA);
addCondMinLevel(MIN_LEVEL, "sofa_sizraku_q10383_04.htm");
addCondCompletedQuest(Q10381_ToTheSeedOfHellfire.class.getSimpleName(), "sofa_sizraku_q10383_07.htm");
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
String htmltext = event;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return getNoQuestMsg(player);
}
switch (event)
{
case "sofa_sizraku_q10383_03.htm":
{
qs.startQuest();
break;
}
case "maestro_ferguson_q10383_04.htm":
{
qs.setCond(2);
break;
}
case "sofa_aku_q10383_03.htm":
{
qs.takeItems(UNSTABLE_PETRA, -1L);
qs.addExpAndSp(951127800, 435041400);
qs.giveItems(57, 3256740);
qs.exitQuest(QuestType.ONE_TIME, true);
break;
}
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
switch (npc.getId())
{
case SIZRAK:
{
if (qs.isCreated())
{
htmltext = "sofa_sizraku_q10383_01.htm";
}
else if (qs.isStarted())
{
htmltext = "sofa_sizraku_q10383_06.htm";
}
else if (qs.isCompleted())
{
htmltext = "sofa_sizraku_q10383_05.htm";
}
break;
}
case FERGASON:
{
if (qs.isCond(1))
{
htmltext = "maestro_ferguson_q10383_01.htm";
}
else if (qs.isCond(2))
{
htmltext = "maestro_ferguson_q10383_05.htm";
}
break;
}
case AKU:
{
if (qs.isCond(1))
{
htmltext = "sofa_aku_q10383_01.htm";
}
else if (qs.isCond(3))
{
htmltext = "sofa_aku_q10383_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.isCond(2) && qs.isStarted())
{
if (giveItemRandomly(killer, npc, UNSTABLE_PETRA, 1, 20, 0.75, true))
{
qs.setCond(3);
}
}
return super.onKill(npc, killer, isSummon);
}
}

View File

@@ -0,0 +1,4 @@
<html><body>Fergason:<br>
You're the outsider that <font color="LEVEL">Sizrak</font> was talking about. It's good to meet you. My name is <font color="LEVEL">Fergason</font>.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10383_FergasonsOffer maestro_ferguson_q10383_02.htm">"Why are you here?"</button>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Fergason:<br>
I came here because I heard the rumor about <font color="LEVEL">Tauti</font> living here. I'm not sure if you know, but <font color="LEVEL">Tauti</font> is one of <font color="LEVEL">Bremnon's</font> weapons, and a brother to <font color="LEVEL">Demonic Sword Zariche</font>. <br>
To catch a glimpse of such a creature... not many have that honor.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10383_FergasonsOffer maestro_ferguson_q10383_03.htm">"Can you actually help with this quest?"</button>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Fergason:<br>
Yes! Of course! What you need to do is collect <font color="LEVEL">Petra</font> and deliver them to <font color="LEVEL">Aku</font>.<br>
<font color="LEVEL">Petra</font> is a biological energy that emanates from <font color="LEVEL">Zofan</font>, found in the <font color="LEVEL">Seed of Hellfire</font>. <font color="LEVEL">Aku</font> is collecting them, and if you help him, he will arrange a meeting with <font color="LEVEL">Tauti</font>.What do you think? Will you try?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10383_FergasonsOffer maestro_ferguson_q10383_04.htm">"Uh. Sure."</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Fergason:<br>
Good! Now, to get <font color="LEVEL">Petra</font>, you must defeat <font color="LEVEL">Beggar Zofan</font>, <font color="LEVEL">Zofan</font>, <font color="LEVEL">Young Zofan</font> and <font color="LEVEL">Engineer Zofan</font>, and take their Petras away. Then you must deliver <font color="LEVEL">20</font> <font color="LEVEL">Unstable Petras</font> to <font color="LEVEL">Aku</font> located on the <font color="LEVEL">1st floor of the Seed of Hellfire in the Southern District</font>.<br>
And one more thing! You can go to the <font color="LEVEL">1st floor of the Seed of Hellfire in the Southern District</font> through <font color="LEVEL">Transportation Assistant</font>!
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Fergason:<br>
To get <font color="LEVEL">Petra</font>, you must defeat <font color="LEVEL">Beggar Zofan</font>, <font color="LEVEL">Zofan</font>, <font color="LEVEL">Young Zofan</font> and <font color="LEVEL">Engineer Zofan</font>, and take their Petras away. Then you must deliver <font color="LEVEL">20</font> <font color="LEVEL">Unstable Petras</font> to <font color="LEVEL">Aku</font> located on the <font color="LEVEL">1st floor of the Seed of Hellfire in the Southern District</font>.<br>
And one more thing! You can go to the <font color="LEVEL">1st floor of the Seed of Hellfire in the Southern District</font> through <font color="LEVEL">Transportation Assistant</font>!
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Aku:<br>
Ooh, more <font color="LEVEL">Petra</font>? Hee, that's not enough, dingbat! Talk to me when you have more!
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Aku:<br>
Hee, this <font color="LEVEL">Petra</font> is all you could find? And what? You want to see <font color="LEVEL">Lord Tauti</font>? Dingbat!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10383_FergasonsOffer sofa_aku_q10383_03.htm">"Wait, that's not fair!"</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Aku:<br>
Hee! Fair! Fair is a <font color="LEVEL">Top Quality Petra</font>, and that is all! Then I will give you <font color="LEVEL">Aku's Mark</font>. <br>
Once you collect enough <font color="LEVEL">Aku's Mark</font>, then you can ask to see <font color="LEVEL">Lord Tauti</font>. Dingbat!
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
I talked to <font color="LEVEL">Fergason</font>, and he seemed to be interested in meeting you. How about it?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10383_FergasonsOffer sofa_sizraku_q10383_02.htm">"Who is Fergason?"</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
He's an outsider, like you, who's given us help He has forged our weapon and refused our pay. He is a true comrade! Go to him.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10383_FergasonsOffer sofa_sizraku_q10383_03.htm">"I think I might."</button>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Sizrak:<br>
<font color="LEVEL">Fergason</font> is here in the <font color="LEVEL">Seed of Hellfire</font>. You'll find him easily enough.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
Hmm... I think not. You can't help us at the moment.<br>
(This quest is for players level 97 or above.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
You have done great things for us, comrade.<br>
(You have already finished the quest.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
You haven't met <font color="LEVEL">Fergason</font> yet?<br>
He's right here in the <font color="LEVEL">Seed of Hellfire</font>. You'll find him easily enough.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Sizrak:<br>
Who are you? You came from <font color="LEVEL">Keucereus Alliance Base</font>? Do you have some sort of proof? Why should I trust you?<br>
(You haven't finished the prerequisite quest.)
</body></html>

View File

@@ -0,0 +1,145 @@
/*
* 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 <http://www.gnu.org/licenses/>.
*/
package quests.Q10384_AnAudienceWithTauti;
import com.l2jmobius.gameserver.enums.QuestType;
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 quests.Q10383_FergasonsOffer.Q10383_FergasonsOffer;
/**
* @hlwrave
*/
public class Q10384_AnAudienceWithTauti extends Quest
{
// NPCs
private static final int FERGASON = 33681;
private static final int AKU = 33671;
// Monsters
private static final int TAUTI = 29237;
// Items
private static final int TAUTIS_FRAGMENT = 34960;
private static final int BOTTLE_OF_TAUTIS_SOUL = 35295;
// Misc
private static final int MIN_LEVEL = 97;
public Q10384_AnAudienceWithTauti()
{
super(10384, Q10384_AnAudienceWithTauti.class.getSimpleName(), "An Audience With Tauti");
addStartNpc(FERGASON);
addTalkId(FERGASON, AKU);
addKillId(TAUTI);
registerQuestItems(TAUTIS_FRAGMENT);
addCondMinLevel(MIN_LEVEL, "maestro_ferguson_q10384_05.htm");
addCondCompletedQuest(Q10383_FergasonsOffer.class.getSimpleName(), "maestro_ferguson_q10384_06.htm");
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
String htmltext = event;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return getNoQuestMsg(player);
}
switch (event)
{
case "maestro_ferguson_q10384_04.htm":
{
qs.startQuest();
break;
}
case "sofa_aku_q10384_02.htm":
{
qs.setCond(2);
break;
}
case "maestro_ferguson_q10384_11.htm":
{
qs.addExpAndSp(951127800, 435041400);
qs.giveItems(57, 3256740);
qs.giveItems(BOTTLE_OF_TAUTIS_SOUL, 1);
qs.exitQuest(QuestType.ONE_TIME, true);
break;
}
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
switch (npc.getId())
{
case FERGASON:
{
if (qs.isCreated())
{
htmltext = "maestro_ferguson_q10384_01.htm";
}
else if (qs.isStarted())
{
if (qs.isCond(1) || qs.isCond(2))
{
htmltext = "maestro_ferguson_q10384_08.htm";
}
else if (qs.isCond(3) && qs.hasQuestItems(TAUTIS_FRAGMENT))
{
htmltext = "maestro_ferguson_q10384_09.htm";
}
}
else if (qs.isCompleted())
{
htmltext = "maestro_ferguson_q10384_07.htm";
}
break;
}
case AKU:
{
if (qs.isStarted())
{
htmltext = "sofa_aku_q10384_01.htm";
}
break;
}
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
{
final QuestState qs = getQuestState(killer, false);
if ((qs != null) && qs.isCond(2))
{
qs.setCond(3);
qs.giveItems(TAUTIS_FRAGMENT, 1);
}
return super.onKill(npc, killer, isSummon);
}
}

View File

@@ -0,0 +1,4 @@
<html><body>Ferguson:<br>
How have you been? Are you getting on with <font color="LEVEL">Aku</font><br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10384_AnAudienceWithTauti maestro_ferguson_q10384_02.htm">"Well enough."</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Ferguson:<br>
Remember, he's the key to meeting <font color="LEVEL">Tauti</font>! That's the most important thing.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10384_AnAudienceWithTauti maestro_ferguson_q10384_03.htm">"I know, I know."</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Ferguson:<br>
Well then, if you do meet <font color="LEVEL">Tauti</font>, please bring me <font color="LEVEL">1</font> of <font color="LEVEL">Tauti's Fragment</font>.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10384_AnAudienceWithTauti maestro_ferguson_q10384_04.htm">"No problem!"</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Fergason:<br>
You need something called <font color="LEVEL">Aku's Mark</font> in order to meet <font color="LEVEL">Tauti</font> through <font color="LEVEL">Aku</font>. I think you should have collected enough number of these. So you should be okay, right? <br>
Don't forget. Kill <font color="LEVEL">Tauti</font> and bring <font color="LEVEL">1</font> <font color="LEVEL">Tauti's Fragment</font> to me.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Fergason:<br>
Hm... You're much too weak for this quest!<br>
(You must be level 97 or above to start this quest.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Ferguson:<br>
Huh? Do we know each other?<br>
(You have not completed the prerequisite quests.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Ferguson:<br>
Hehe. Now I think I can create the best weapons! Hahahah!<br>
(You have already completed this quest.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Ferguson:<br>
You need something called <font color="LEVEL">Aku's Mark</font> in order to meet <font color="LEVEL">Tauti</font> through <font color="LEVEL">Aku</font>. I think you should have collected enough number of these. So you should be okay, right? <br>
Don't forget. Kill <font color="LEVEL">Tauti</font> and bring <font color="LEVEL">1</font> <font color="LEVEL">Tauti's Fragment</font> to me.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Ferguson:<br>
Hahaha! Finally I get the <font color="LEVEL">Tauti's Fragment</font>!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10384_AnAudienceWithTauti maestro_ferguson_q10384_10.htm">"What are you going to do with it?"</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Fergason:<br>
Create the greatest weapon ever made, that's what! These are not simple weapons, but actual living organisms! I have been searching through <font color="LEVEL">Aden</font> for years now, looking for materials like these <font color="LEVEL">Tauti's Fragments</font>! And finally, I have one!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10384_AnAudienceWithTauti maestro_ferguson_q10384_11.htm">"You should... sleep a bit."</button>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Fergason:<br>
Hahaha! No! No sleep for me! Wasted hours! Could be spent crafting! Hahahaha!
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Aku:<br>
Oh, you want to see <font color="LEVEL">Lord Tauti</font>? Hee, okay, I will give you the chance. <font color="LEVEL">Lord Tauti</font> seemed to be interested in you too, after all those <font color="LEVEL">Petras.</font><br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10384_AnAudienceWithTauti sofa_aku_q10384_02.htm">"Send me, please!"</button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Aku:<br>
Someone's in a hurry to see <font color="LEVEL">Lord Tauti</font>! You think it's easy, dingbat?<br>
First! Do you have enough <font color="LEVEL">Aku's Mark</font>s? You must be sure! Be sure! Double-check! And then you must politely ask <font color="LEVEL">"I would like to see Lord Tauti."</font>
</body></html>

View File

@@ -168,6 +168,9 @@ import quests.Q00699_GuardianOfTheSkies.Q00699_GuardianOfTheSkies;
import quests.Q00700_CursedLife.Q00700_CursedLife;
import quests.Q00701_ProofOfExistence.Q00701_ProofOfExistence;
import quests.Q00702_ATrapForRevenge.Q00702_ATrapForRevenge;
import quests.Q00754_AssistingTheRebelForces.Q00754_AssistingTheRebelForces;
import quests.Q00755_InNeedOfPetras.Q00755_InNeedOfPetras;
import quests.Q00756_TopQualityPetra.Q00756_TopQualityPetra;
import quests.Q00757_TriolsMovement.Q00757_TriolsMovement;
import quests.Q00901_HowLavasaurusesAreMade.Q00901_HowLavasaurusesAreMade;
import quests.Q00902_ReclaimOurEra.Q00902_ReclaimOurEra;
@@ -224,6 +227,10 @@ import quests.Q10364_ObligationsOfTheSeeker.Q10364_ObligationsOfTheSeeker;
import quests.Q10365_SeekerEscort.Q10365_SeekerEscort;
import quests.Q10366_RuinsStatusUpdate.Q10366_RuinsStatusUpdate;
import quests.Q10368_RebellionOfMonsters.Q10368_RebellionOfMonsters;
import quests.Q10381_ToTheSeedOfHellfire.Q10381_ToTheSeedOfHellfire;
import quests.Q10382_DayOfLiberation.Q10382_DayOfLiberation;
import quests.Q10383_FergasonsOffer.Q10383_FergasonsOffer;
import quests.Q10384_AnAudienceWithTauti.Q10384_AnAudienceWithTauti;
import quests.Q10388_ConspiracyBehindDoor.Q10388_ConspiracyBehindDoor;
import quests.Q10389_TheVoiceOfAuthority.Q10389_TheVoiceOfAuthority;
import quests.Q10390_KekropusLetter.Q10390_KekropusLetter;
@@ -268,6 +275,7 @@ import quests.Q10764_FreeSpirit.Q10764_FreeSpirit;
import quests.Q10769_LettersFromTheQueen_CrumaTower.Q10769_LettersFromTheQueen_CrumaTower;
import quests.Q10782_LettersFromTheQueen_ForsakenPlains.Q10782_LettersFromTheQueen_ForsakenPlains;
/**
* @author NosBit
*/
@@ -426,6 +434,9 @@ final class QuestMasterHandler
Q00700_CursedLife.class,
Q00701_ProofOfExistence.class,
Q00702_ATrapForRevenge.class,
Q00754_AssistingTheRebelForces.class,
Q00755_InNeedOfPetras.class,
Q00756_TopQualityPetra.class,
Q00757_TriolsMovement.class,
Q00901_HowLavasaurusesAreMade.class,
Q00902_ReclaimOurEra.class,
@@ -482,6 +493,10 @@ final class QuestMasterHandler
Q10365_SeekerEscort.class,
Q10366_RuinsStatusUpdate.class,
Q10368_RebellionOfMonsters.class,
Q10381_ToTheSeedOfHellfire.class,
Q10382_DayOfLiberation.class,
Q10383_FergasonsOffer.class,
Q10384_AnAudienceWithTauti.class,
Q10388_ConspiracyBehindDoor.class,
Q10389_TheVoiceOfAuthority.class,
Q10390_KekropusLetter.class,