Addition of quests 665, 666, 668, 10454 and 10846.
Contributed by Dmitri.
This commit is contained in:
@@ -66,7 +66,6 @@
|
||||
10748 Mysterious Suggestion - 1
|
||||
10749 Mysterious Suggestion - 2
|
||||
10845 Bloody Battle - Rescue the Smiths
|
||||
10846 Bloody Battle - Meeting the Commander
|
||||
10848 Trials before the Battle
|
||||
10853 To Weaken the Giants
|
||||
10854 To Seize the Fortress
|
||||
|
@@ -0,0 +1,5 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
The Enchanted Valley has changed, so it's very dangerous.<br>
|
||||
I don't think you are supposed to be here yet. Come back when you get stronger.<br>
|
||||
(Only characters above Lv. 101, quest Complete Bloody Battle - Seizing Supplies and fraction KingdomΞ<6D>οΏ½ΞΏΞ<CE8F>Β½Ξ<C2BD>’Β²Ξ<C2B2>οΏ½Ξ’Β²Ξ<C2B2>Β²Ξ²β€<CEB2>¬οΞ<CE8F>Β½Ξ<C2BD>’Β¬Ξ<C2AC>οΏ½Ξ’Β²Ξ<C2B2>Β²Ξ²β€<CEB2>¬οΞ<CE8F>Β½Ξ<C2BD>�†s Royal Guard amity level 2 or above.)
|
||||
</body></html>
|
@@ -0,0 +1,6 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
Ah, adventurer! There you are again. How about helping us some more? if you do, you can deepen the mutual trust with us and Ferin.<br>
|
||||
What do you say? if you don't remember what to do, I can tell you again.
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies 34235-02.htm">"Please tell me again."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies select_mission">"I know what I should do."</Button>
|
||||
</body></html>
|
@@ -0,0 +1,4 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
We've begun an investigation in the Garden of Spirits starting from here. However, we are being threatened by the spirits there, so something must be done.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies 34235-03.htm">"What is it you need to do?"</Button>
|
||||
</body></html>
|
@@ -0,0 +1,6 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
We know of a way to defeat those spirits, at least temporarily. This way, we'll be able to put the spirits at rest, even if it's just for a little while.<br>
|
||||
Of course, we will give you a reward for your help. And there is one more thing. While you are helping us, you'll build trust with us. The more we trust you, the more rewards we will give you, and there are some secret missions that we only give to those we trust.<br>
|
||||
That's about it.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies select_mission">"Yes, sure."</Button>
|
||||
</body></html>
|
@@ -0,0 +1,9 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
Good. Let me tell you what to do. Just choose the mission that you are capable of doing.<br>
|
||||
Basic Mission - Collect <font color="LEVEL">40</font> Mutated Spirit's Souls.<br1>
|
||||
Intermediate Mission - Collect <font color="LEVEL">80</font> Mutated Spirit's Souls.<br1>
|
||||
Advanced Mission - Collect <font color="LEVEL">120</font> Mutated Spirit's Souls.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies 34235-06.html">"I'll take the basic mission."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies 34235-05.html"><font color="A62F31">"I'll take the intermediate mission."</font></Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies 34235-05a.html"><font color="A62F31">"I'll take the advanced mission."</font></Button>
|
||||
</body></html>
|
@@ -0,0 +1,9 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
Good. Let me tell you what to do. Just choose the mission that you are capable of doing.<br>
|
||||
Basic Mission - Collect <font color="LEVEL">40</font> Mutated Spirit's Souls.<br1>
|
||||
Intermediate Mission - Collect <font color="LEVEL">80</font> Mutated Spirit's Souls.<br1>
|
||||
Advanced Mission - Collect <font color="LEVEL">120</font> Mutated Spirit's Souls.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies 34235-06.html">"I'll take the basic mission."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies 34235-06a.html">"I'll take the intermediate mission."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies 34235-05a.html"><font color="A62F31">"I'll take the advanced mission."</font></Button>
|
||||
</body></html>
|
@@ -0,0 +1,9 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
Good. Let me tell you what to do. Just choose the mission that you are capable of doing.<br>
|
||||
Basic Mission - Collect <font color="LEVEL">40</font> Mutated Spirit's Souls.<br1>
|
||||
Intermediate Mission - Collect <font color="LEVEL">80</font> Mutated Spirit's Souls.<br1>
|
||||
Advanced Mission - Collect <font color="LEVEL">120</font> Mutated Spirit's Souls.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies 34235-06.html">"I'll take the basic mission."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies 34235-06a.html">"I'll take the intermediate mission."</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies 34235-06b.html">"I'll take the advanced mission."</Button>
|
||||
</body></html>
|
@@ -0,0 +1,3 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
Your Unworldly Visitors Faction Level Must be 5 or above may undertake this mission.
|
||||
</body></html>
|
@@ -0,0 +1,3 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
Your Unworldly Visitors Faction Level Must be 8 or above may undertake this mission.
|
||||
</body></html>
|
@@ -0,0 +1,6 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
You have chosen the basic mission to collect 40 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.<br>
|
||||
Are you sure you want to proceed with this mission?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies 34235-07.html">"Yes, I've made my decision."</Button>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies return">"Let me reconsider."</Button>
|
||||
</body></html>
|
@@ -0,0 +1,6 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
You have chosen the intermediate mission to collect 80 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.<br>
|
||||
Are you sure you want to proceed with this mission?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Q00845_SabotageTheEmbryoSupplies 34235-07a.html">"Yes, I've made my decision."</Button>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Q00845_SabotageTheEmbryoSupplies return">"Let me reconsider."</Button>
|
||||
</body></html>
|
@@ -0,0 +1,6 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
You have chosen the advanced mission to collect 120 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.<br>
|
||||
Are you sure you want to proceed with this mission?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies 34235-07b.html">"Yes, I've made my decision."</Button>
|
||||
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies return">"Let me reconsider."</Button>
|
||||
</body></html>
|
@@ -0,0 +1,4 @@
|
||||
<html><body>Fairy Mimyu:<br>
|
||||
Good. Left me explain the details. Go to the <font color="LEVEL">Garden of Spirits</font>, defeat the <font color="LEVEL">Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero</font>, and put them to rest.<br>
|
||||
As evidence, please bring back <font color="LEVEL">40 Mutated Spirit's Souls</font>. It should be manageable.
|
||||
</body></html>
|
@@ -0,0 +1,4 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
Good. Left me explain the details. Go to the <font color="LEVEL">Garden of Spirits</font>, defeat the <font color="LEVEL">Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero</font>, and put them to rest.<br>
|
||||
As evidence, please bring back <font color="LEVEL">80 Mutated Spirit's Souls</font>. It should be manageable.
|
||||
</body></html>
|
@@ -0,0 +1,4 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
Good. Left me explain the details. Go to the <font color="LEVEL">Garden of Spirits</font>, defeat the <font color="LEVEL">Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero</font>, and put them to rest.<br>
|
||||
As evidence, please bring back <font color="LEVEL">120 Mutated Spirit's Souls</font>. It should be manageable.
|
||||
</body></html>y></html>
|
@@ -0,0 +1,3 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
Go to the <font color="LEVEL">Garden of Spirits</font> and defeat all type monsters until you collect <font color="LEVEL">40 Mutated Spirit's Souls</font>.
|
||||
</body></html>
|
@@ -0,0 +1,3 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
Go to the <font color="LEVEL">Garden of Spirits</font> and defeat all type monsters until you collect <font color="LEVEL">80 Mutated Spirit's Souls</font>.
|
||||
</body></html>
|
@@ -0,0 +1,3 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
Go to the <font color="LEVEL">Garden of Spirits</font> and defeat all type monsters until you collect <font color="LEVEL">120 Mutated Spirit's Souls</font>.
|
||||
</body></html>
|
@@ -0,0 +1,5 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
Toy have collected all of the Mutated Spirit's Souls. You have completed the mission successfully.<br>
|
||||
I would like to congratulate you on completing the mission. Here's your reward. If you have a Faction Amity Token, I can give You more rewards.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00845_SabotageTheEmbryoSupplies 34235-10.html">"I did my best to earn your trust."</Button>
|
||||
</body></html>
|
@@ -0,0 +1,4 @@
|
||||
<html><body>Logart van Dyke:<br>
|
||||
Here is your reward. This will also help to improve the trust between you and us at the Unworldly Visitors.<br>
|
||||
As long as you don't forget us, that is. We thank you for your hard work.
|
||||
</body></html>
|
@@ -0,0 +1,356 @@
|
||||
/*
|
||||
* 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.Q00845_SabotageTheEmbryoSupplies;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.enums.Faction;
|
||||
import org.l2jmobius.gameserver.enums.QuestType;
|
||||
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.Q10844_BloodyBattleSeizingSupplies.Q10844_BloodyBattleSeizingSupplies;
|
||||
|
||||
/**
|
||||
* Sabotage the Embryo Supplies (845)
|
||||
* @URL https://l2wiki.com/Sabotage_the_Embryo_Supplies
|
||||
* @author Dmitri
|
||||
*/
|
||||
public class Q00845_SabotageTheEmbryoSupplies extends Quest
|
||||
{
|
||||
// NPCs
|
||||
private static final int LOGART_VAN_DYKE = 34235;
|
||||
// Monsters
|
||||
private static final int[] MONSTERS =
|
||||
{
|
||||
23589, //
|
||||
23507, //
|
||||
23506, //
|
||||
23505, //
|
||||
23508, //
|
||||
23537, //
|
||||
23538, //
|
||||
23509, //
|
||||
23512, //
|
||||
23511 //
|
||||
};
|
||||
// Items
|
||||
private static final int EMBRYO_SUPPLIES = 47197;
|
||||
// Rewards
|
||||
private static final int BASIC_SUPPLY_BOX = 47175; // Kingdom's Royal Guard Basic Supply Box Atelia Fortress
|
||||
private static final int INTERMEDIATE_SUPPLY_BOX = 47176; // Kingdom's Royal Guard Intermediate Supply Box Atelia Fortress
|
||||
private static final int ADVANCED_SUPPLY_BOX = 47177; // Kingdom's Royal Guard Advanced Supply Box Atelia Fortress
|
||||
// Misc
|
||||
private static final int MIN_LEVEL = 101;
|
||||
|
||||
public Q00845_SabotageTheEmbryoSupplies()
|
||||
{
|
||||
super(845);
|
||||
addStartNpc(LOGART_VAN_DYKE);
|
||||
addTalkId(LOGART_VAN_DYKE);
|
||||
addKillId(MONSTERS);
|
||||
registerQuestItems(EMBRYO_SUPPLIES);
|
||||
addCondMinLevel(MIN_LEVEL, "34235-00.htm");
|
||||
addCondCompletedQuest(Q10844_BloodyBattleSeizingSupplies.class.getSimpleName(), "34235-00.htm");
|
||||
addFactionLevel(Faction.KINGDOM_ROYAL_GUARDS, 2, "34235-00.htm");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
|
||||
{
|
||||
String htmltext = null;
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if (qs == null)
|
||||
{
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
switch (event)
|
||||
{
|
||||
case "34235-02.htm":
|
||||
case "34235-03.htm":
|
||||
case "34235-04.htm":
|
||||
case "34235-04a.htm":
|
||||
case "34235-04b.htm":
|
||||
case "34235-06.html":
|
||||
case "34235-06a.html":
|
||||
case "34235-06b.html":
|
||||
{
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "select_mission":
|
||||
{
|
||||
qs.startQuest();
|
||||
if ((player.getFactionLevel(Faction.KINGDOM_ROYAL_GUARDS) >= 5) && (player.getFactionLevel(Faction.KINGDOM_ROYAL_GUARDS) < 8))
|
||||
{
|
||||
htmltext = "34235-04a.htm";
|
||||
break;
|
||||
}
|
||||
else if (player.getFactionLevel(Faction.KINGDOM_ROYAL_GUARDS) >= 8)
|
||||
{
|
||||
htmltext = "34235-04b.htm";
|
||||
break;
|
||||
}
|
||||
htmltext = "34235-04.htm";
|
||||
break;
|
||||
}
|
||||
case "return":
|
||||
{
|
||||
if ((player.getFactionLevel(Faction.KINGDOM_ROYAL_GUARDS) >= 5) && (player.getFactionLevel(Faction.KINGDOM_ROYAL_GUARDS) < 8))
|
||||
{
|
||||
htmltext = "34235-04a.htm";
|
||||
break;
|
||||
}
|
||||
else if (player.getFactionLevel(Faction.KINGDOM_ROYAL_GUARDS) >= 8)
|
||||
{
|
||||
htmltext = "34235-04b.htm";
|
||||
break;
|
||||
}
|
||||
htmltext = "34235-04.htm";
|
||||
break;
|
||||
}
|
||||
case "34235-07.html":
|
||||
{
|
||||
qs.setCond(2, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34235-07a.html":
|
||||
{
|
||||
qs.setCond(3, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34235-07b.html":
|
||||
{
|
||||
qs.setCond(4, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34235-10.html":
|
||||
{
|
||||
final int chance = getRandom(100);
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 5:
|
||||
{
|
||||
if ((getQuestItemsCount(player, EMBRYO_SUPPLIES) == 40) && (player.getLevel() >= MIN_LEVEL))
|
||||
{
|
||||
if (chance < 2)
|
||||
{
|
||||
giveItems(player, ADVANCED_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 20)
|
||||
{
|
||||
giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 100)
|
||||
{
|
||||
giveItems(player, BASIC_SUPPLY_BOX, 1);
|
||||
}
|
||||
addExpAndSp(player, 18155754360L, 18155700);
|
||||
addFactionPoints(player, Faction.KINGDOM_ROYAL_GUARDS, 100);
|
||||
qs.exitQuest(QuestType.DAILY, true);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = getNoQuestLevelRewardMsg(player);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 6:
|
||||
{
|
||||
if ((getQuestItemsCount(player, EMBRYO_SUPPLIES) == 80) && (player.getLevel() >= MIN_LEVEL))
|
||||
{
|
||||
if (chance < 2)
|
||||
{
|
||||
giveItems(player, ADVANCED_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 20)
|
||||
{
|
||||
giveItems(player, BASIC_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 100)
|
||||
{
|
||||
giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
|
||||
}
|
||||
addExpAndSp(player, 36311508720L, 36311400);
|
||||
addFactionPoints(player, Faction.KINGDOM_ROYAL_GUARDS, 200);
|
||||
qs.exitQuest(QuestType.DAILY, true);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = getNoQuestLevelRewardMsg(player);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 7:
|
||||
{
|
||||
if ((getQuestItemsCount(player, EMBRYO_SUPPLIES) == 120) && (player.getLevel() >= MIN_LEVEL))
|
||||
{
|
||||
if (chance < 2)
|
||||
{
|
||||
giveItems(player, BASIC_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 20)
|
||||
{
|
||||
giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
|
||||
}
|
||||
else if (chance < 100)
|
||||
{
|
||||
giveItems(player, ADVANCED_SUPPLY_BOX, 1);
|
||||
}
|
||||
addExpAndSp(player, 54467263080L, 54467100);
|
||||
addFactionPoints(player, Faction.KINGDOM_ROYAL_GUARDS, 300);
|
||||
qs.exitQuest(QuestType.DAILY, true);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = getNoQuestLevelRewardMsg(player);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(Npc npc, PlayerInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, true);
|
||||
String htmltext = getNoQuestMsg(player);
|
||||
|
||||
switch (qs.getState())
|
||||
{
|
||||
case State.CREATED:
|
||||
{
|
||||
htmltext = "34235-01.htm";
|
||||
// fallthrough?
|
||||
}
|
||||
case State.STARTED:
|
||||
{
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 1:
|
||||
{
|
||||
if ((player.getFactionLevel(Faction.KINGDOM_ROYAL_GUARDS) >= 5) && (player.getFactionLevel(Faction.KINGDOM_ROYAL_GUARDS) < 8))
|
||||
{
|
||||
htmltext = "34235-04a.htm";
|
||||
break;
|
||||
}
|
||||
else if (player.getFactionLevel(Faction.KINGDOM_ROYAL_GUARDS) >= 8)
|
||||
{
|
||||
htmltext = "34235-04b.htm";
|
||||
break;
|
||||
}
|
||||
htmltext = "34235-04.htm";
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
htmltext = "34235-08.html";
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
htmltext = "34235-08a.html";
|
||||
break;
|
||||
}
|
||||
case 4:
|
||||
{
|
||||
htmltext = "34235-08b.html";
|
||||
break;
|
||||
}
|
||||
case 5:
|
||||
case 6:
|
||||
case 7:
|
||||
{
|
||||
htmltext = "34235-09.html";
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case State.COMPLETED:
|
||||
{
|
||||
if (!qs.isNowAvailable())
|
||||
{
|
||||
htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
|
||||
}
|
||||
else
|
||||
{
|
||||
qs.setState(State.CREATED);
|
||||
htmltext = "34235-01.htm";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(Npc npc, PlayerInstance player, boolean isSummon)
|
||||
{
|
||||
executeForEachPlayer(player, npc, isSummon, true, false);
|
||||
return super.onKill(npc, player, isSummon);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void actionForEachPlayer(PlayerInstance player, Npc npc, boolean isSummon)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if ((qs != null) && (qs.getCond() > 1) && player.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE))
|
||||
{
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 2:
|
||||
{
|
||||
if (giveItemRandomly(player, npc, EMBRYO_SUPPLIES, 1, 40, 0.5, true))
|
||||
{
|
||||
qs.setCond(5, true);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
if (giveItemRandomly(player, npc, EMBRYO_SUPPLIES, 1, 80, 0.5, true))
|
||||
{
|
||||
qs.setCond(6, true);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 4:
|
||||
{
|
||||
if (giveItemRandomly(player, npc, EMBRYO_SUPPLIES, 1, 120, 0.5, true))
|
||||
{
|
||||
qs.setCond(7, true);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,4 @@
|
||||
<html><body>Hurak:<br>
|
||||
I do not believe our paths are meant to cross here. Perhaps later down the road.<br>
|
||||
(This quest can only be undertaken by characters with Lv. 101 or higher whose faction level with the Kingdom's Royal Guard is 4 or higher and Complete quest: Bloody Battle - Rescue the Smiths.)
|
||||
</body></html>
|
@@ -0,0 +1,5 @@
|
||||
<html><body>Hurak:<br>
|
||||
It's been a while since we've found the Atelia Fortress.<br>
|
||||
In that time though, the fortress has become more structured, which worries me.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10846_BloodyBattleMeetingTheCommander 34064-02.htm">"What's the problem?"</Button>
|
||||
</body></html>
|
@@ -0,0 +1,4 @@
|
||||
<html><body>Hurak:<br>
|
||||
We have to make sure no issues arise here until Leona comes back from Hellbound. We aren't doing so well, though.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10846_BloodyBattleMeetingTheCommander 34064-03.htm">"What happened?"</Button>
|
||||
</body></html>
|
@@ -0,0 +1,5 @@
|
||||
<html><body>Hurak:<br>
|
||||
The Atelia Fortress is more structured now.<br>
|
||||
Until recently, they didn't have the means to get supplies or train soldiers when they isolated themselves, but now they can do all that within.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10846_BloodyBattleMeetingTheCommander 34064-04.htm">"How is that possible?"</Button>
|
||||
</body></html>
|
@@ -0,0 +1,5 @@
|
||||
<html><body>Hurak:<br>
|
||||
According to the information we got from the clan members inside the fortress, they are building different facilities on each floor.<br>
|
||||
I've asked Leona for reinforcements, but they are not doing so great either. We need people who can help us. Do you think you can do it?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10846_BloodyBattleMeetingTheCommander 34064-05.htm">"Sure, I'll help."</Button>
|
||||
</body></html>
|
@@ -0,0 +1,4 @@
|
||||
<html><body>Hurak:<br>
|
||||
Glad to hear you'll be helping us. Devianne has already infiltrated the fortress and is in contact with our clan members.<br>
|
||||
First, go find <font color="LEVEL">Glenkinchie</font> in the first stronghold. Anyone inside the fortress should be able to help you more than me.
|
||||
</body></html>
|
@@ -0,0 +1,4 @@
|
||||
<html><body>Hurak:<br>
|
||||
Devianne has already infiltrated the fortress, but you'll need to find out where she is from the people who are inside.<br>
|
||||
First, go find <font color="LEVEL">Glenkinchie</font> in the first stronghold. Anyone inside the fortress should be able to help you more than me.
|
||||
</body></html>
|
@@ -0,0 +1,5 @@
|
||||
<html><body>Devianne:<br>
|
||||
Elikia said someone would come find me. I guess that was you? The fortress is becoming more systemized by the way, which worries me.<br>
|
||||
We are not ready yet, and the Embryo are already expanding their forces.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10846_BloodyBattleMeetingTheCommander 34323-02.html">"Did you find out anything?"</Button>
|
||||
</body></html>
|
@@ -0,0 +1,7 @@
|
||||
<html><body>Devianne:<br>
|
||||
I found just a while ago that the fortress is becoming more systemized.<br>
|
||||
They've built a supply base, and I saw that they are distributing supplies to the soldiers within the fortress. I would love to go and destroy their supply base...<br>
|
||||
Recently, I met Devianne, and she told me about the commander of the fortress.<br>
|
||||
She said to create uproars around the fortress to stop the flow of their work inside... Do you think you can help me?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10846_BloodyBattleMeetingTheCommander 34323-03.html">"How can I help?"</Button>
|
||||
</body></html>
|
@@ -0,0 +1,5 @@
|
||||
<html><body>Devianne:<br>
|
||||
It's not that difficult. You must have seen the <font color="LEVEL">supply boxes</font> laying around. They started getting supplies regularly, but they are still not organized.<br>
|
||||
Please open those <font color="LEVEL">supply boxes</font> and get me the <font color="LEVEL">supplies</font>. Don't just open any box though. There are some <font color="LEVEL">traps</font> that could make it very dangerous.<br>
|
||||
Oh, and one more thing! If you <font color="LEVEL">defeat</font> the <font color="LEVEL">Quartermasters</font>, the <font color="LEVEL">soldiers will be affected</font>, making it easier to steal their supplies.
|
||||
</body></html>
|
@@ -0,0 +1,161 @@
|
||||
/*
|
||||
* 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.Q10846_BloodyBattleMeetingTheCommander;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.Faction;
|
||||
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;
|
||||
|
||||
/**
|
||||
* Bloody Battle - Meeting the Commander (10846)
|
||||
* @URL https://l2wiki.com/Bloody_Battle_-_Meeting_the_Commander
|
||||
* @author Dmitri
|
||||
*/
|
||||
public class Q10846_BloodyBattleMeetingTheCommander extends Quest
|
||||
{
|
||||
// NPCs
|
||||
private static final int HURAK = 34064;
|
||||
private static final int DEVIANNE = 34323;
|
||||
// MiniBoss
|
||||
private static final int BURNSTEIN = 26136; // Burnstein
|
||||
// Item
|
||||
private static final int RUNE_STONE = 39738;
|
||||
private static final int SCROLL_OF_ESCAPE_BLACKBIRD_CAMPSITE = 46158;
|
||||
// Misc
|
||||
private static final int MIN_LEVEL = 101;
|
||||
|
||||
public Q10846_BloodyBattleMeetingTheCommander()
|
||||
{
|
||||
super(10846);
|
||||
addStartNpc(HURAK);
|
||||
addTalkId(HURAK, DEVIANNE);
|
||||
addKillId(BURNSTEIN);
|
||||
addCondMinLevel(MIN_LEVEL, "34064-00.htm");
|
||||
// addCondCompletedQuest(Q10845_BloodyBattleRescueTheSmiths.class.getSimpleName(), "34064-00.htm");
|
||||
addFactionLevel(Faction.KINGDOM_ROYAL_GUARDS, 4, "34064-00.htm");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
|
||||
{
|
||||
String htmltext = null;
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if (qs == null)
|
||||
{
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
switch (event)
|
||||
{
|
||||
case "34064-04.htm":
|
||||
case "34064-03.htm":
|
||||
case "34064-02.htm":
|
||||
case "34323-02.html":
|
||||
{
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34064-05.htm":
|
||||
{
|
||||
qs.startQuest();
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34323-03.html":
|
||||
{
|
||||
if (qs.isCond(2))
|
||||
{
|
||||
giveItems(player, RUNE_STONE, 1);
|
||||
giveItems(player, SCROLL_OF_ESCAPE_BLACKBIRD_CAMPSITE, 1);
|
||||
addExpAndSp(player, 7262301690L, 17429400);
|
||||
qs.exitQuest(false, true);
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(Npc npc, PlayerInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, true);
|
||||
String htmltext = getNoQuestMsg(player);
|
||||
|
||||
switch (qs.getState())
|
||||
{
|
||||
case State.CREATED:
|
||||
{
|
||||
if (npc.getId() == HURAK)
|
||||
{
|
||||
htmltext = "34064-01.htm";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case State.STARTED:
|
||||
{
|
||||
switch (npc.getId())
|
||||
{
|
||||
case HURAK:
|
||||
{
|
||||
if (qs.isCond(1))
|
||||
{
|
||||
htmltext = "34064-06.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case DEVIANNE:
|
||||
{
|
||||
if (qs.isCond(2))
|
||||
{
|
||||
htmltext = "34323-01.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case State.COMPLETED:
|
||||
{
|
||||
htmltext = getAlreadyCompletedMsg(player);
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(Npc npc, PlayerInstance player, boolean isSummon)
|
||||
{
|
||||
executeForEachPlayer(player, npc, isSummon, true, false);
|
||||
return super.onKill(npc, player, isSummon);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void actionForEachPlayer(PlayerInstance player, Npc npc, boolean isSummon)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if ((qs != null) && qs.isCond(1))
|
||||
{
|
||||
qs.setCond(2, true);
|
||||
}
|
||||
}
|
||||
}
|
@@ -199,6 +199,7 @@ import quests.Q00833_DevilsTreasureTauti.Q00833_DevilsTreasureTauti;
|
||||
import quests.Q00835_PitiableMelisa.Q00835_PitiableMelisa;
|
||||
import quests.Q00842_CaptiveDemons.Q00842_CaptiveDemons;
|
||||
import quests.Q00844_GiantsTreasure.Q00844_GiantsTreasure;
|
||||
import quests.Q00845_SabotageTheEmbryoSupplies.Q00845_SabotageTheEmbryoSupplies;
|
||||
import quests.Q00901_HowLavasaurusesAreMade.Q00901_HowLavasaurusesAreMade;
|
||||
import quests.Q00902_ReclaimOurEra.Q00902_ReclaimOurEra;
|
||||
import quests.Q00903_TheCallOfAntharas.Q00903_TheCallOfAntharas;
|
||||
@@ -474,6 +475,7 @@ import quests.Q10840_TimeToRecover.Q10840_TimeToRecover;
|
||||
import quests.Q10841_DeepInsideAteliaFortress.Q10841_DeepInsideAteliaFortress;
|
||||
import quests.Q10843_AnomalyInTheEnchantedValley.Q10843_AnomalyInTheEnchantedValley;
|
||||
import quests.Q10844_BloodyBattleSeizingSupplies.Q10844_BloodyBattleSeizingSupplies;
|
||||
import quests.Q10846_BloodyBattleMeetingTheCommander.Q10846_BloodyBattleMeetingTheCommander;
|
||||
import quests.Q10849_TrialsForAdaptation.Q10849_TrialsForAdaptation;
|
||||
import quests.Q10851_ElvenBotany.Q10851_ElvenBotany;
|
||||
import quests.Q10852_TheMotherTreeRevivalProject.Q10852_TheMotherTreeRevivalProject;
|
||||
@@ -503,7 +505,6 @@ import quests.not_done.Q00839_RequestFromTheUnworldlyVisitors;
|
||||
import quests.not_done.Q00840_RequestFromTheKingdomsRoyalGuard;
|
||||
import quests.not_done.Q00841_ContaminationContainment;
|
||||
import quests.not_done.Q00843_GiantEvolutionControl;
|
||||
import quests.not_done.Q00845_SabotageTheEmbryoSupplies;
|
||||
import quests.not_done.Q00846_BuildingUpStrength;
|
||||
import quests.not_done.Q00910_RedLibraRequestLv1;
|
||||
import quests.not_done.Q00911_RedLibraRequestLv2;
|
||||
@@ -523,7 +524,6 @@ import quests.not_done.Q10506_DianasRequest;
|
||||
import quests.not_done.Q10748_MysteriousSuggestion1;
|
||||
import quests.not_done.Q10749_MysteriousSuggestion2;
|
||||
import quests.not_done.Q10845_BloodyBattleRescueTheSmiths;
|
||||
import quests.not_done.Q10846_BloodyBattleMeetingTheCommander;
|
||||
import quests.not_done.Q10848_TrialsBeforeTheBattle;
|
||||
import quests.not_done.Q10853_ToWeakenTheGiants;
|
||||
import quests.not_done.Q10854_ToSeizeTheFortress;
|
||||
@@ -743,7 +743,7 @@ public class QuestMasterHandler
|
||||
Q00842_CaptiveDemons.class,
|
||||
Q00843_GiantEvolutionControl.class, // TODO: Not done.
|
||||
Q00844_GiantsTreasure.class,
|
||||
Q00845_SabotageTheEmbryoSupplies.class, // TODO: Not done.
|
||||
Q00845_SabotageTheEmbryoSupplies.class,
|
||||
Q00846_BuildingUpStrength.class, // TODO: Not done.
|
||||
Q00901_HowLavasaurusesAreMade.class,
|
||||
Q00902_ReclaimOurEra.class,
|
||||
@@ -1038,7 +1038,7 @@ public class QuestMasterHandler
|
||||
Q10843_AnomalyInTheEnchantedValley.class,
|
||||
Q10844_BloodyBattleSeizingSupplies.class,
|
||||
Q10845_BloodyBattleRescueTheSmiths.class, // TODO: Not done.
|
||||
Q10846_BloodyBattleMeetingTheCommander.class, // TODO: Not done.
|
||||
Q10846_BloodyBattleMeetingTheCommander.class,
|
||||
Q10848_TrialsBeforeTheBattle.class, // TODO: Not done.
|
||||
Q10849_TrialsForAdaptation.class,
|
||||
Q10851_ElvenBotany.class,
|
||||
|
@@ -1,36 +0,0 @@
|
||||
/*
|
||||
* 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.not_done;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.model.quest.Quest;
|
||||
|
||||
/**
|
||||
* @author Mobius
|
||||
*/
|
||||
public class Q00845_SabotageTheEmbryoSupplies extends Quest
|
||||
{
|
||||
private static final int START_NPC = 34235;
|
||||
|
||||
public Q00845_SabotageTheEmbryoSupplies()
|
||||
{
|
||||
super(845);
|
||||
addStartNpc(START_NPC);
|
||||
addTalkId(START_NPC);
|
||||
addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
|
||||
}
|
||||
}
|
@@ -1,36 +0,0 @@
|
||||
/*
|
||||
* 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.not_done;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.gameserver.model.quest.Quest;
|
||||
|
||||
/**
|
||||
* @author Mobius
|
||||
*/
|
||||
public class Q10846_BloodyBattleMeetingTheCommander extends Quest
|
||||
{
|
||||
private static final int START_NPC = 34064;
|
||||
|
||||
public Q10846_BloodyBattleMeetingTheCommander()
|
||||
{
|
||||
super(10846);
|
||||
addStartNpc(START_NPC);
|
||||
addTalkId(START_NPC);
|
||||
addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user