Updated quest 10824.
Contributed by Dmitri.
This commit is contained in:
parent
a007531506
commit
0e744d4f5b
@ -1,5 +1,7 @@
|
||||
<html><body>Merlot:<br>
|
||||
I would like you to go into the other dimension and participate in the <font color="LEVEL">Dimensional Raid</font> to defeat those monsters. I'm sure someone who can protect the world like that will go on to do greater things and acquire greater powers.<br>
|
||||
When you defeat monsters in the other dimension, you'll get a <font color="LEVEL">Mark of Advance</font>. Get <font color="LEVEL">3</font> of these and bring them back to me. You need to keep in mind that each time you participate in the <font color="LEVEL">Dimensional Raid</font> you will only get <font color="LEVEL">1 Mark of Advance</font>. <br> <br> <br>
|
||||
Also, remember that I can only open the gate on certain days. I can send you there on <font color="LEVEL">Saturdays when there are no Dimensional Castle Sieges, between 19:00~22:00</font>. Just come find me during those times.
|
||||
Also, remember that I can only open the gate on certain days. I can send you there on <font color="LEVEL">Saturdays when there are no Dimensional Castle Sieges, between 19:00~22:00</font>. Just come find me during those times.<br><br>
|
||||
Or Defeat any monsters in <font color="LEVEL">Enchanted Valley</font> and <font color="LEVEL">Atelia Refinery</font>, you need to get Proof of Preparation Proof of Preparation — 20000 pcs.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10824_ConfrontingTheGreatestDanger 34018-11.htm">"kill item 20,000 monsters !?."</Button>
|
||||
</body></html>
|
@ -1,4 +1,6 @@
|
||||
<html><body>Merlot:<br>
|
||||
Please participate in the <font color="LEVEL">Dimensional Raid</font> to prevent those monsters from influencing this place, and collect <font color="LEVEL">3 Marks of Advance</font>. You can only get 1 Mark each time you participate in the Dimensional Raid, so you must participate 3 times in order to pass my test.<br>
|
||||
You may teleport to another dimension <font color="LEVEL">only on Saturdays when there are no Dimensional Sieges between 19:00-22:00</font>. Don't forget this last part.
|
||||
Or Defeat any monsters in <font color="LEVEL">Enchanted Valley</font> and <font color="LEVEL">Atelia Refinery</font>, you need to get Proof of Preparation Proof of Preparation — 20000 pcs.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10824_ConfrontingTheGreatestDanger 34018-11.htm">"kill item 20,000 monsters !?."</Button>
|
||||
</body></html>
|
@ -0,0 +1,4 @@
|
||||
<html><body>Merlot:<br>
|
||||
You need to get Proof of Preparation - 20000 pcs. from monsters - <font color="LEVEL">Devil Warrior, Devil Nightmare, Devil Varos, Devil Sinist, Devil Guardian, Death Rogue, Death Shooter, Death Warrior, Death Sorcerer, Death Pondus, Demonic Warrior, Demonic Wizard, Demonic Weiss, Demonic Keras, Demonic Archer</font> in <font color="LEVEL">Atelia Refinery</font> or <font color="LEVEL">Nymph Astra, Nymph Lily, Nymph rose, Nymph Tulip, Afros, Nymph Sentinel</font> in <font color="LEVEL">Enchanted Valley</font>.<br>
|
||||
How to get Proof of Preparation - 20,000 pcs. from monsters, come to me and get a reward.
|
||||
</body></html>
|
@ -0,0 +1,5 @@
|
||||
<html><body>Merlot:<br>
|
||||
You've compelted it! Great!<br>
|
||||
We won't need to worry about the monsters from the other dimension.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10824_ConfrontingTheGreatestDanger 34018-13.html">"No doubt about it."</Button>
|
||||
</body></html>
|
@ -0,0 +1,4 @@
|
||||
<html><body>Merlot:<br>
|
||||
Thank you. I'll give you a certificate now.<br>
|
||||
You have successfully obtained Proof of Preparation - 20,000 pcs. from monsters.
|
||||
</body></html>
|
@ -0,0 +1,4 @@
|
||||
<html><body>Merlot:<br>
|
||||
Thank you. I'll give you a certificate now.<br>
|
||||
It looks like you've completed all the other tests as well! You can go see Lionel now.
|
||||
</body></html>
|
@ -16,11 +16,16 @@
|
||||
*/
|
||||
package quests.Q10824_ConfrontingTheGreatestDanger;
|
||||
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.commons.util.CommonUtil;
|
||||
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.holders.ItemHolder;
|
||||
import org.l2jmobius.gameserver.model.quest.Quest;
|
||||
import org.l2jmobius.gameserver.model.quest.QuestState;
|
||||
import org.l2jmobius.gameserver.model.quest.State;
|
||||
import org.l2jmobius.gameserver.util.Util;
|
||||
|
||||
import quests.Q10823_ExaltedOneWhoShattersTheLimit.Q10823_ExaltedOneWhoShattersTheLimit;
|
||||
|
||||
@ -38,6 +43,45 @@ public class Q10824_ConfrontingTheGreatestDanger extends Quest
|
||||
private static final int KURTIZ_CERTIFICATE = 46057;
|
||||
private static final int MAMMON_CERTIFICATE = 45635;
|
||||
private static final int GUSTAV_CERTIFICATE = 45636;
|
||||
private static final int PROOF_OF_PREPARATION = 80824;
|
||||
private static final ItemHolder LIONEL_HUNTERS_LIST_PART_3 = new ItemHolder(45637, 1);
|
||||
// Boss
|
||||
private static final int[] BOSS =
|
||||
{
|
||||
25745, // test
|
||||
25747 // test
|
||||
};
|
||||
// Mobs
|
||||
private static final int[] MONSTERS =
|
||||
{
|
||||
// Atelia Refinery
|
||||
24150, // Devil Warrior
|
||||
24149, // Devil Nightmare
|
||||
24153, // Devil Varos
|
||||
24152, // Devil Sinist
|
||||
24151, // Devil Guardian
|
||||
24144, // Death Rogue
|
||||
24145, // Death Shooter
|
||||
24146, // Death Warrior
|
||||
24147, // Death Sorcerer
|
||||
24148, // Death Pondus
|
||||
24155, // Demonic Warrior
|
||||
24154, // Demonic Wizard
|
||||
24158, // Demonic Weiss
|
||||
24157, // Demonic Keras
|
||||
24156, // Demonic Archer
|
||||
// Raider's Crossroads Mobs
|
||||
23572, // Nymph Astra
|
||||
23573, // Nymph Astra
|
||||
23568, // Nymph Lily
|
||||
23569, // Nymph Lily
|
||||
23566, // Nymph rose
|
||||
23567, // Nymph rose
|
||||
23570, // Nymph Tulip
|
||||
23571, // Nymph Tulip
|
||||
23581, // Afros
|
||||
23578 // Nymph Sentinel
|
||||
};
|
||||
// Rewards
|
||||
private static final int MERLOT_SERTIFICATE = 46056;
|
||||
private static final int SPELLBOOK_BLESSING_OF_THE_EXALTED = 45926;
|
||||
@ -49,9 +93,10 @@ public class Q10824_ConfrontingTheGreatestDanger extends Quest
|
||||
super(10824);
|
||||
addStartNpc(MERLOT);
|
||||
addTalkId(MERLOT);
|
||||
addKillId(MONSTERS);
|
||||
addCondMinLevel(MIN_LEVEL, "34018-02.html");
|
||||
addCondStartedQuest(Q10823_ExaltedOneWhoShattersTheLimit.class.getSimpleName(), "34018-03.html");
|
||||
registerQuestItems(MARK_OF_ADVANCE);
|
||||
registerQuestItems(MARK_OF_ADVANCE, PROOF_OF_PREPARATION);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -63,11 +108,11 @@ public class Q10824_ConfrontingTheGreatestDanger extends Quest
|
||||
{
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
switch (event)
|
||||
{
|
||||
case "34018-04.htm":
|
||||
case "34018-05.htm":
|
||||
case "34018-07.html":
|
||||
{
|
||||
htmltext = event;
|
||||
break;
|
||||
@ -78,9 +123,18 @@ public class Q10824_ConfrontingTheGreatestDanger extends Quest
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34018-11.htm":
|
||||
{
|
||||
if (qs.isCond(1))
|
||||
{
|
||||
qs.setCond(3, true);
|
||||
}
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34018-09.html":
|
||||
{
|
||||
if (qs.isCond(1) && (getQuestItemsCount(player, MARK_OF_ADVANCE) >= 3))
|
||||
if (qs.isCond(2))
|
||||
{
|
||||
if ((player.getLevel() >= MIN_LEVEL))
|
||||
{
|
||||
@ -92,7 +146,33 @@ public class Q10824_ConfrontingTheGreatestDanger extends Quest
|
||||
{
|
||||
htmltext = event;
|
||||
}
|
||||
takeItems(player, MARK_OF_ADVANCE, 3);
|
||||
takeItems(player, MARK_OF_ADVANCE, -3);
|
||||
giveItems(player, MERLOT_SERTIFICATE, 1);
|
||||
giveItems(player, SPELLBOOK_BLESSING_OF_THE_EXALTED, 1);
|
||||
qs.exitQuest(false, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = getNoQuestLevelRewardMsg(player);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "34018-13.html":
|
||||
{
|
||||
if (qs.isCond(4))
|
||||
{
|
||||
if ((player.getLevel() >= MIN_LEVEL))
|
||||
{
|
||||
if (hasQuestItems(player, KURTIZ_CERTIFICATE, MAMMON_CERTIFICATE, GUSTAV_CERTIFICATE))
|
||||
{
|
||||
htmltext = "34018-14.html";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = event;
|
||||
}
|
||||
takeItems(player, PROOF_OF_PREPARATION, -20000);
|
||||
giveItems(player, MERLOT_SERTIFICATE, 1);
|
||||
giveItems(player, SPELLBOOK_BLESSING_OF_THE_EXALTED, 1);
|
||||
qs.exitQuest(false, true);
|
||||
@ -118,20 +198,38 @@ public class Q10824_ConfrontingTheGreatestDanger extends Quest
|
||||
{
|
||||
case State.CREATED:
|
||||
{
|
||||
htmltext = "34018-01.htm";
|
||||
if (hasItem(player, LIONEL_HUNTERS_LIST_PART_3))
|
||||
{
|
||||
htmltext = "34018-01.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "noItem.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case State.STARTED:
|
||||
{
|
||||
if (getQuestItemsCount(player, MARK_OF_ADVANCE) >= 3)
|
||||
{
|
||||
htmltext = "34018-08.html";
|
||||
}
|
||||
else
|
||||
if (qs.isCond(1))
|
||||
{
|
||||
htmltext = "34018-07.html";
|
||||
break;
|
||||
}
|
||||
else if (qs.isCond(2))
|
||||
{
|
||||
htmltext = "34018-08.html";
|
||||
break;
|
||||
}
|
||||
else if (qs.isCond(3))
|
||||
{
|
||||
htmltext = "34018-11.htm";
|
||||
break;
|
||||
}
|
||||
else if (qs.isCond(4))
|
||||
{
|
||||
htmltext = "34018-12.html";
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case State.COMPLETED:
|
||||
{
|
||||
@ -141,6 +239,37 @@ public class Q10824_ConfrontingTheGreatestDanger extends Quest
|
||||
}
|
||||
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(3) && player.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE) && CommonUtil.contains(MONSTERS, npc.getId()))
|
||||
{
|
||||
giveItems(player, PROOF_OF_PREPARATION, 1);
|
||||
playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
|
||||
|
||||
if (getQuestItemsCount(player, PROOF_OF_PREPARATION) >= 20000)
|
||||
{
|
||||
qs.setCond(4, true);
|
||||
}
|
||||
}
|
||||
else if ((qs != null) && qs.isCond(1) && player.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE) && CommonUtil.contains(BOSS, npc.getId()))
|
||||
{
|
||||
giveItems(player, MARK_OF_ADVANCE, 1);
|
||||
playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
|
||||
|
||||
if (getQuestItemsCount(player, MARK_OF_ADVANCE) >= 3)
|
||||
{
|
||||
qs.setCond(2, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
// TODO: Dimensional Raid - https://l2wiki.com/Dimensional_Raid
|
||||
}
|
@ -0,0 +1,4 @@
|
||||
<html><body>Merlot:<br>
|
||||
I don't know how you found your way here, but I can't do anything for you if you haven't talked to Lionel Hunter.<br>
|
||||
(You don't meet the requirements for proceed with this quest. You need Lionel Hunter's Mission List - Part 3 in your inventory.)
|
||||
</body></html>
|
Loading…
Reference in New Issue
Block a user