Addition of quest The Zero Hour (640).
Author: Sacrifice Source: https://gitlab.com/L2JDevs
This commit is contained in:
parent
0794364c4d
commit
3b0c031157
4
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-00.htm
vendored
Normal file
4
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-00.htm
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Mercenary Kahman:<br>
|
||||
Hate to say it, but you don't have the skills to work with me. Run along before you get hurt!<br>
|
||||
(Only characters of level 66 and above may undertake this quest.)
|
||||
</body></html>
|
4
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-01.htm
vendored
Normal file
4
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-01.htm
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Mercenary Kahman:<br>
|
||||
Welcome back! We'd never have found that Stakato's Nest without your help! Finally, we can quash the unrest! Will you join our assault on the Stakato's?<br><br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 31554-02.htm">"Let's do it"</a>
|
||||
</body></html>
|
3
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-02.htm
vendored
Normal file
3
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-02.htm
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Mercenary Kahman:<br>
|
||||
Perfect! I trust your skills, so I know you'll have our backs. Go to the <font color="LEVEL">Stakato's Nest</font> and kill them! It won't be an easy battle, so bring plenty of supplies with you. Don't forget to collect <font color="LEVEL">Fang of Stakato</font>. Now get going!
|
||||
</body></html>
|
3
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-03.htm
vendored
Normal file
3
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-03.htm
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Mercenary Kahman:<br>
|
||||
What are you doing? There are no cowards in the Golden Ram Mercenaries! Suck it up, soldier, and show us what you're made of! Slaughter the <font color="LEVEL">Spiked Stakato, Spiked Stakato Worker, Spiked Stakato Guard, Male Spiked Stakato, Female Spiked Stakato, Spiked Stakato Sorcerer, Cannibalistic Stakato Leader, Spiked Stakato Soldier, Spiked Stakato Drone, Spiked Stakato Captain, Spiked Stakato Nurse and the Spiked Stakato Shaman.</font>
|
||||
</body></html>
|
4
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-04.htm
vendored
Normal file
4
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-04.htm
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Mercenary Kahman:<br>
|
||||
You showed real bravery in the face of those filthy Stakato's. Victory is ours! Give me your Stakato's Fang and then choose your reward!<br><br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 31554-05.htm">"Here they are!"</a>
|
||||
</body></html>
|
12
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-05.htm
vendored
Normal file
12
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-05.htm
vendored
Normal file
@ -0,0 +1,12 @@
|
||||
<html><body>Mercenary Kahman:<br>
|
||||
Which reward would you like?<br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 1">1 Enria (12 Fang of Stakato)</a><br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 2">1 Asofe (6 Fang of Stakato)</a><br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 3">1 Thons (6 Fang of Stakato)</a><br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 4">10 Varnish of Purity (81 Fang of Stakato)</a><br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 5">5 Synthetic Cokes (33 Fang of Stakato)</a><br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 6">10 Compound Braid (30 Fang of Stakato)</a><br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 7">10 Durable Metal Plate (150 Fang of Stakato)</a><br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 8">10 Mithril Alloy (131 Fang of Stakato)</a><br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 9">5 Oriharukon (123 Fang of Stakato)</a>
|
||||
</body></html>
|
5
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-06.htm
vendored
Normal file
5
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-06.htm
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
<html><body>Mercenary Kahman:<br>
|
||||
Where are the Fangs you said you had? You won't get money for nothing in this business, soldier! Don't even think about insulting the honor of the Golden Ram Mercenaries!<br><br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 31554-07.htm">"I won't! I'll go and fight again"</a><br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 31554-08.htm">"I'm done with this"</a>
|
||||
</body></html>
|
3
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-07.htm
vendored
Normal file
3
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-07.htm
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Mercenary Kahman:<br>
|
||||
Had enough? No? Then get back out here and fight!
|
||||
</body></html>
|
3
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-08.htm
vendored
Normal file
3
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-08.htm
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
<html><body>Mercenary Kahman:<br>
|
||||
Suit yourself. Goodbye.
|
||||
</body></html>
|
6
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-09.htm
vendored
Normal file
6
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-09.htm
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
<html><body>Mercenary Kahman:<br>
|
||||
I gave you your reward. What else do you want?<br><br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 31554-07.htm">"I'll bring more Fangs."</a><br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 31554-05.htm">"I'll looks somewhere else."</a><br>
|
||||
<a action="bypass -h Quest Q00640_TheZeroHour 31554-08.htm">"I'm done with this."</a>
|
||||
</body></html>
|
4
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-10.htm
vendored
Normal file
4
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/31554-10.htm
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
<html><body>Mercenary Kahman:<br>
|
||||
We haven't finished our investigation, so there's nothing for you right now. Come back later!.<br>
|
||||
(Only characters who have completed "In Search of the Nest" can undertake this quest.)
|
||||
</body></html>
|
292
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/Q00640_TheZeroHour.java
vendored
Normal file
292
L2J_Mobius_CT_2.6_HighFive/dist/game/data/scripts/quests/Q00640_TheZeroHour/Q00640_TheZeroHour.java
vendored
Normal file
@ -0,0 +1,292 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package quests.Q00640_TheZeroHour;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
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;
|
||||
|
||||
import quests.Q00109_InSearchOfTheNest.Q00109_InSearchOfTheNest;
|
||||
|
||||
/**
|
||||
* The Zero Hour (640)<br>
|
||||
* @author Sacrifice
|
||||
*/
|
||||
public class Q00640_TheZeroHour extends Quest
|
||||
{
|
||||
// NPCs
|
||||
private static final int KAHMAN = 31554;
|
||||
private static final int[] MONSTERS_TO_HUNT =
|
||||
{
|
||||
22617, // Spiked Stakato
|
||||
22618, // Spiked Stakato Worker
|
||||
22619, // Spiked Stakato Guard
|
||||
22620, // Female Spiked Stakato
|
||||
22621, // Male Spiked Stakato
|
||||
22622, // Male Spiked Stakato
|
||||
22623, // Spiked Stakato Sorcerer
|
||||
22625, // Cannibalistic Stakato Leader
|
||||
22626, // Cannibalistic Stakato Leader
|
||||
22627, // Spiked Stakato Soldier
|
||||
22628, // Spiked Stakato Drone
|
||||
22629, // Spiked Stakato Captain
|
||||
22630, // Spike Stakato Nurse
|
||||
22631, // Spike Stakato Nurse
|
||||
22633 // Spiked Stakato Shaman
|
||||
};
|
||||
// Item
|
||||
private static final int FANG_OF_STAKATO = 8085;
|
||||
// Misc
|
||||
private static final int MIN_LEVEL = 66;
|
||||
|
||||
public Q00640_TheZeroHour()
|
||||
{
|
||||
super(640);
|
||||
addStartNpc(KAHMAN);
|
||||
addTalkId(KAHMAN);
|
||||
addKillId(MONSTERS_TO_HUNT);
|
||||
registerQuestItems(FANG_OF_STAKATO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
String htmltext = null;
|
||||
if (qs == null)
|
||||
{
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
switch (event)
|
||||
{
|
||||
case "31554-02.htm":
|
||||
{
|
||||
qs.startQuest();
|
||||
break;
|
||||
}
|
||||
case "31554-05.htm":
|
||||
{
|
||||
htmltext = "31554-05.htm";
|
||||
break;
|
||||
}
|
||||
case "31554-08.htm":
|
||||
{
|
||||
qs.exitQuest(true, true);
|
||||
break;
|
||||
}
|
||||
case "1":
|
||||
{
|
||||
if (getQuestItemsCount(player, FANG_OF_STAKATO) >= 12)
|
||||
{
|
||||
takeItems(player, FANG_OF_STAKATO, 12);
|
||||
rewardItems(player, 4042, 1); // Enria
|
||||
htmltext = "31554-09.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "31554-07.htm";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "2":
|
||||
{
|
||||
if (getQuestItemsCount(player, FANG_OF_STAKATO) >= 6)
|
||||
{
|
||||
takeItems(player, FANG_OF_STAKATO, 6);
|
||||
rewardItems(player, 4043, 1); // Asofe
|
||||
htmltext = "31554-09.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "31554-07.htm";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "3":
|
||||
{
|
||||
if (getQuestItemsCount(player, FANG_OF_STAKATO) >= 6)
|
||||
{
|
||||
takeItems(player, FANG_OF_STAKATO, 6);
|
||||
rewardItems(player, 4044, 1); // Thons
|
||||
htmltext = "31554-09.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "31554-07.htm";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "4":
|
||||
{
|
||||
if (getQuestItemsCount(player, FANG_OF_STAKATO) >= 81)
|
||||
{
|
||||
takeItems(player, FANG_OF_STAKATO, 81);
|
||||
rewardItems(player, 1887, 10); // Varnish of Purity
|
||||
htmltext = "31554-09.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "31554-07.htm";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "5":
|
||||
{
|
||||
if (getQuestItemsCount(player, FANG_OF_STAKATO) >= 33)
|
||||
{
|
||||
takeItems(player, FANG_OF_STAKATO, 33);
|
||||
rewardItems(player, 1888, 5); // Synthetic Cokes
|
||||
htmltext = "31554-09.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "31554-07.htm";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "6":
|
||||
{
|
||||
if (getQuestItemsCount(player, FANG_OF_STAKATO) >= 30)
|
||||
{
|
||||
takeItems(player, FANG_OF_STAKATO, 30);
|
||||
rewardItems(player, 1889, 10); // Compound Braid
|
||||
htmltext = "31554-09.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "31554-07.htm";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "7":
|
||||
{
|
||||
if (getQuestItemsCount(player, FANG_OF_STAKATO) >= 150)
|
||||
{
|
||||
takeItems(player, FANG_OF_STAKATO, 150);
|
||||
rewardItems(player, 5550, 10); // Durable Metal Plate
|
||||
htmltext = "31554-09.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "31554-07.htm";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "8":
|
||||
{
|
||||
if (getQuestItemsCount(player, FANG_OF_STAKATO) >= 131)
|
||||
{
|
||||
takeItems(player, FANG_OF_STAKATO, 131);
|
||||
rewardItems(player, 1890, 10); // Mithril Alloy
|
||||
htmltext = "31554-09.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "31554-07.htm";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "9":
|
||||
{
|
||||
if (getQuestItemsCount(player, FANG_OF_STAKATO) >= 123)
|
||||
{
|
||||
takeItems(player, FANG_OF_STAKATO, 123);
|
||||
rewardItems(player, 1893, 5); // Oriharukon
|
||||
htmltext = "31554-09.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "31554-07.htm";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(Npc npc, PlayerInstance talker)
|
||||
{
|
||||
final QuestState qs = getQuestState(talker, true);
|
||||
String htmlText = getNoQuestMsg(talker);
|
||||
|
||||
switch (qs.getState())
|
||||
{
|
||||
case State.CREATED:
|
||||
{
|
||||
if (talker.getLevel() >= MIN_LEVEL)
|
||||
{
|
||||
final QuestState questState2 = qs.getPlayer().getQuestState(Q00109_InSearchOfTheNest.class.getSimpleName());
|
||||
if ((questState2 != null) && (questState2.getState() == State.COMPLETED))
|
||||
{
|
||||
htmlText = "31554-01.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmlText = "31554-10.htm";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
htmlText = "31554-00.htm";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case State.STARTED:
|
||||
{
|
||||
if (qs.isCond(1))
|
||||
{
|
||||
if (getQuestItemsCount(talker, FANG_OF_STAKATO) >= 1)
|
||||
{
|
||||
htmlText = "31554-04.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmlText = "31554-03.htm";
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmlText;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(Npc npc, PlayerInstance killer, boolean isSummon)
|
||||
{
|
||||
final PlayerInstance partyMember = getRandomPartyMemberState(killer, State.STARTED);
|
||||
if (partyMember == null)
|
||||
{
|
||||
return super.onKill(npc, killer, isSummon);
|
||||
}
|
||||
|
||||
if (partyMember.getQuestState(Q00640_TheZeroHour.class.getSimpleName()) == null)
|
||||
{
|
||||
return super.onKill(npc, killer, isSummon);
|
||||
}
|
||||
|
||||
giveItems(partyMember, FANG_OF_STAKATO, (long) Config.RATE_QUEST_DROP);
|
||||
playSound(partyMember, QuestSound.ITEMSOUND_QUEST_ITEMGET);
|
||||
|
||||
return super.onKill(npc, killer, isSummon);
|
||||
}
|
||||
}
|
@ -437,6 +437,7 @@ import quests.Q00636_TruthBeyond.Q00636_TruthBeyond;
|
||||
import quests.Q00637_ThroughOnceMore.Q00637_ThroughOnceMore;
|
||||
import quests.Q00638_SeekersOfTheHolyGrail.Q00638_SeekersOfTheHolyGrail;
|
||||
import quests.Q00639_GuardiansOfTheHolyGrail.Q00639_GuardiansOfTheHolyGrail;
|
||||
import quests.Q00640_TheZeroHour.Q00640_TheZeroHour;
|
||||
import quests.Q00641_AttackSailren.Q00641_AttackSailren;
|
||||
import quests.Q00642_APowerfulPrimevalCreature.Q00642_APowerfulPrimevalCreature;
|
||||
import quests.Q00643_RiseAndFallOfTheElrokiTribe.Q00643_RiseAndFallOfTheElrokiTribe;
|
||||
@ -953,6 +954,7 @@ public class QuestMasterHandler
|
||||
Q00637_ThroughOnceMore.class,
|
||||
Q00638_SeekersOfTheHolyGrail.class,
|
||||
Q00639_GuardiansOfTheHolyGrail.class,
|
||||
Q00640_TheZeroHour.class,
|
||||
Q00641_AttackSailren.class,
|
||||
Q00642_APowerfulPrimevalCreature.class,
|
||||
Q00643_RiseAndFallOfTheElrokiTribe.class,
|
||||
|
Loading…
Reference in New Issue
Block a user