NPC related changes.
This commit is contained in:
@@ -1,14 +1,10 @@
|
||||
245 Come to Me
|
||||
353 Power of Darkness
|
||||
480 Another Legacy of Cruma Tower
|
||||
482 Recertification of Value
|
||||
504 Competition for the Bandit Stronghold
|
||||
505 Blood Offering
|
||||
655 A Grand Plan for Taming Wild Beasts
|
||||
665 Great Pirate Zaken's Treasure
|
||||
666 Leona Blackbird's Treasure
|
||||
667 Queen Beora's Legacy
|
||||
668 The Gladiator's Treasure
|
||||
669 High Priest's Treasure
|
||||
670 Turek Orc's Treasure
|
||||
750 Seven Flowers
|
||||
759 The Dwarven Nightmare Continues
|
||||
767 Banishing Evil
|
||||
@@ -21,24 +17,15 @@
|
||||
781 Utilize the Darkness - Seed of Annihilation
|
||||
782 Utilize the Darkness - Seed of Hellfire
|
||||
789 Waiting for Pa'agrio
|
||||
816 Plans to Repair the Stronghold
|
||||
824 Attack the Command Post
|
||||
826 In Search of the Secret Weapon
|
||||
827 Einhasad's Order
|
||||
828 Eva's Blessing
|
||||
829 Maphr's Salvation
|
||||
830 The Way of the Giant's Pawn
|
||||
831 Sayha's Scheme
|
||||
833 Devil's Treasure, Tauti
|
||||
834 Against Dragonclaw
|
||||
835 Pitiable Melisa
|
||||
10352 Legacy of Cruma Tower
|
||||
10357 Altar of Blood that Awakens Destruction
|
||||
10374 That Place Succubus
|
||||
10456 Operation: Rescue
|
||||
10457 Kefensis' Illusion
|
||||
10458 To the Desert Quarry
|
||||
10506 Diana's Request
|
||||
10463 The Soul of a Sword
|
||||
10506 Paddy's Request
|
||||
10507 Paddy's Request
|
||||
10508 Paddy's Request
|
||||
10713 The Hero's Journey: Bloody Swampland
|
||||
10714 The Hero's Journey: Seed of Annihilation
|
||||
10715 The Hero's Journey: Harnak Underground Ruins
|
||||
@@ -66,7 +53,4 @@
|
||||
10805 The Dimensional Warp, Part 5
|
||||
10806 The Dimensional Warp, Part 6
|
||||
10807 The Dimensional Warp, Part 7
|
||||
10809 The Hero's Journey: Blazing Swamp
|
||||
10844 Bloody Battle - Seizing Supplies
|
||||
10845 Bloody Battle - Rescue the Smiths
|
||||
10846 Bloody Battle - Meeting the Commander
|
||||
10809 The Hero's Journey: Blazing Swamp
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Maestro Nikola:<br>
|
||||
Have you given Lorain a great deal of help?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00188_SealRemoval 30621-02.html">Show him a metal piece and explain the situation to him.</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Maestro Nikola:<br>
|
||||
Hmm... This damage is too extensive for me to repair, but I know a person who can do work of this kind.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00188_SealRemoval 30621-03.html">"Who is it? Tell me."</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Maestro Nikola:<br>
|
||||
<font color="LEVEL">Locksmith Dorothy in Heine</font> is the foremost expert for this kind of work. I know it's a long journey, but I think it would be worth your while to go visit her.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00188_SealRemoval 30621-04.html">"I understand. Dorothy, you said?"</Button>
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Maestro Nikola:<br>
|
||||
That's right. <font color="LEVEL">Locksmith Dorothy</font>. I am sure she can help you in this matter.
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Maestro Nikola:<br>
|
||||
Didn't you already tell me that? Go and find <font color="LEVEL">Dorothy</font>.
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Researcher Lorain:<br>
|
||||
Good to see you! I tried to reconstruct these broken metal pieces, but it's beyond my skill. I think we must ask <font color="LEVEL">Nikola</font> for help -- he knows a lot of people, one of whom may be able to repair this. I know I should probably visit him myself, but I'm still a litle worried about the argument we had before. Would you help me?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00188_SealRemoval 30673-03.htm">"You can count on me."</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Researcher Lorain:<br>
|
||||
I've been studying the metal plate you brought me. I'm very pleased that I can continue my research...<br>
|
||||
(Only characters level 41 and above are permitted to undertake this quest.)
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Researcher Lorain:<br>
|
||||
Tell him these metal fragments are actually parts of an ancient recording device, and ask him if he knows how to restore it. If there's a way to do so, I trust you to see that it gets done.
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Researcher Lorain:<br>
|
||||
Did you visit <font color="LEVEL">Nikola</font>? Please find a way to repair these broken metal pieces.
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Locksmith Dorothy:<br>
|
||||
Why have you come to see me?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00188_SealRemoval 30970-02.html">"Nikola thought you might be able to repair these broken metal pieces."</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Locksmith Dorothy:<br>
|
||||
Hmm, this is badly broken. Where did you get it?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00188_SealRemoval 30970-03.html">"I found it on the 2nd floor of Cruma Tower, a place that looked like the Giants' research laboratory."</Button>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Locksmith Dorothy:<br>
|
||||
This might be a recording device... I assume you'd like me to try and repair it so you can recover whatever information it contains?<br>
|
||||
This is going to take some time, but I'll give it my best.<br>
|
||||
Come back later and we'll see what we find.
|
||||
</body></html>
|
||||
@@ -1,185 +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.Q00188_SealRemoval;
|
||||
|
||||
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.Q00184_ArtOfPersuasion.Q00184_ArtOfPersuasion;
|
||||
import quests.Q00185_NikolasCooperation.Q00185_NikolasCooperation;
|
||||
import quests.Q00186_ContractExecution.Q00186_ContractExecution;
|
||||
import quests.Q00187_NikolasHeart.Q00187_NikolasHeart;
|
||||
|
||||
/**
|
||||
* Seal Removal (188)
|
||||
* @author ivantotov
|
||||
*/
|
||||
public final class Q00188_SealRemoval extends Quest
|
||||
{
|
||||
// NPCs
|
||||
private static final int MAESTRO_NIKOLA = 30621;
|
||||
private static final int RESEARCHER_LORAIN = 30673;
|
||||
private static final int DOROTHY_LOCKSMITH = 30970;
|
||||
// Items
|
||||
private static final int LORAINES_CERTIFICATE = 10362;
|
||||
private static final int BROKEN_METAL_PIECES = 10369;
|
||||
// Misc
|
||||
private static final int MIN_LEVEL = 41;
|
||||
private static final int MAX_LEVEL_FOR_EXP_SP = 47;
|
||||
|
||||
public Q00188_SealRemoval()
|
||||
{
|
||||
super(188);
|
||||
addStartNpc(RESEARCHER_LORAIN);
|
||||
addTalkId(RESEARCHER_LORAIN, MAESTRO_NIKOLA, DOROTHY_LOCKSMITH);
|
||||
registerQuestItems(BROKEN_METAL_PIECES);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if (qs == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
String htmltext = null;
|
||||
switch (event)
|
||||
{
|
||||
case "30673-03.htm":
|
||||
{
|
||||
if (qs.isCreated())
|
||||
{
|
||||
qs.startQuest();
|
||||
qs.setMemoState(1);
|
||||
giveItems(player, BROKEN_METAL_PIECES, 1);
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "30621-02.html":
|
||||
{
|
||||
if (qs.isMemoState(1))
|
||||
{
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "30621-03.html":
|
||||
{
|
||||
if (qs.isMemoState(1))
|
||||
{
|
||||
qs.setMemoState(2);
|
||||
qs.setCond(2, true);
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "30621-04.html":
|
||||
{
|
||||
if (qs.isMemoState(2))
|
||||
{
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "30970-02.html":
|
||||
{
|
||||
if (qs.isMemoState(2))
|
||||
{
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "30970-03.html":
|
||||
{
|
||||
if (qs.isMemoState(2))
|
||||
{
|
||||
giveAdena(player, 98583, true);
|
||||
if (player.getLevel() < MAX_LEVEL_FOR_EXP_SP)
|
||||
{
|
||||
addExpAndSp(player, 285935, 18711);
|
||||
}
|
||||
qs.exitQuest(false, true);
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, true);
|
||||
String htmltext = getNoQuestMsg(player);
|
||||
if (qs.isCreated())
|
||||
{
|
||||
if ((npc.getId() == RESEARCHER_LORAIN) && !hasQuestItems(player, LORAINES_CERTIFICATE))
|
||||
{
|
||||
final QuestState q184 = player.getQuestState(Q00184_ArtOfPersuasion.class.getSimpleName());
|
||||
final QuestState q185 = player.getQuestState(Q00185_NikolasCooperation.class.getSimpleName());
|
||||
final QuestState q186 = player.getQuestState(Q00186_ContractExecution.class.getSimpleName());
|
||||
final QuestState q187 = player.getQuestState(Q00187_NikolasHeart.class.getSimpleName());
|
||||
if (((q184 != null) && q184.isCompleted()) || ((q185 != null) && q185.isCompleted() && (q186 == null) && (q187 == null)))
|
||||
{
|
||||
htmltext = (player.getLevel() >= MIN_LEVEL) ? "30673-01.htm" : "30673-02.htm";
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (qs.isStarted())
|
||||
{
|
||||
switch (npc.getId())
|
||||
{
|
||||
case RESEARCHER_LORAIN:
|
||||
{
|
||||
htmltext = "30673-04.html";
|
||||
break;
|
||||
}
|
||||
case MAESTRO_NIKOLA:
|
||||
{
|
||||
if (qs.isMemoState(1))
|
||||
{
|
||||
htmltext = "30621-01.html";
|
||||
}
|
||||
else if (qs.isMemoState(2))
|
||||
{
|
||||
htmltext = "30621-05.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case DOROTHY_LOCKSMITH:
|
||||
{
|
||||
if (qs.isMemoState(2))
|
||||
{
|
||||
htmltext = "30970-01.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (qs.isCompleted() && (npc.getId() == RESEARCHER_LORAIN))
|
||||
{
|
||||
htmltext = getAlreadyCompletedMsg(player);
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Priest Shegfield:<br>
|
||||
How can I help you?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00191_VainConclusion 30068-02.html">"I want to know about the last remaining Cruma."</Button>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Priest Shegfield:<br>
|
||||
Cruma...<br>
|
||||
Where did you hear that name?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00191_VainConclusion 30068-03.html">"It was mentioned in an old record of the Giants we recovered from the ruins of the Tower of Cruma."</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Priest Shegfield:<br>
|
||||
Hmm. Unfortunately, the Cruma are extinct.<br>
|
||||
You know of the ancient war between Elves and Humans? At that time, the Cruma became our greatest ally. But we were overwhelmed by the Humans' sheer numbers and forced to retreat. The Cruma fought a valiant rearguard action, giving us time to reach a safe haven. It was mortally wounded, however, and fell in the place now known as the Sea of Spores. That was the last of its noble kind...
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Priest Shegfield:<br>
|
||||
I already told you about the fate of the Cruma. Your search is in vain, adventurer. I advise you turn your feet onto another path.
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Head Blacksmith Kusto:<br>
|
||||
Long time no see. How is Lorain progressing with her assignment?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00191_VainConclusion 30512-02.html">Explain what has happened.</Button>
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Head Blacksmith Kusto:<br>
|
||||
I see. Hmm... Researching Cruma, eh? Interesting... Although there is nothing to be gained financially from it, unfortunately... But I suppose the research may still have some value, eh? Thank you for your help. Please take this in exchange for what you've done. I will send word later if I need your further help, adventurer. In the meantime, may Maphr thicken your beard and strengthen your sinews!
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Researcher Lorain:<br>
|
||||
You sure took your time! How did it go?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00191_VainConclusion 30673-02.html">Show him the repaired metal plate.</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Researcher Lorain:<br>
|
||||
You decoded it! Amazing...<br>
|
||||
Hmm... experiments concerning the life force... To think that a Cruma may still exist! We must find it. I'm sure that <font color="LEVEL">Priest Shegfield, the Elven priest for the Town of Dion</font>, knows more about this matter. I'm sorry to impose on you further, but I'm reluctant to leave here right now. Would you seek out Shegfield and question him?
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Researcher Lorain:<br>
|
||||
Please visit <font color="LEVEL">Priest Shegfield in the Town of Dion</font> and question him about the whereabouts of the Cruma.
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Researcher Lorain:<br>
|
||||
I see... Well, if the Cruma are extinct, then I suppose we don't need the section concerning it. Thank you for your help, though. Please go report all this to <font color="LEVEL">Kusto</font>. I'm sure that he will reward you for your hard work. Farewell, and may the hammer of Maphr make clear your path!
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Researcher Lorain:<br>
|
||||
Many thanks for your trouble. I suppose there's nothing left for you to do here. Please go report all this to <font color="LEVEL">Kusto</font>. Farewell, and may the hammer of Maphr make clear your path!
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Locksmith Dorothy:<br>
|
||||
Welcome, my young friend! I just now finished the repair work you requested. Do you wish to take the item now?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00191_VainConclusion 30970-03.htm">"Yes, thank you."</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Locksmith Dorothy:<br>
|
||||
I am attempting to repair the metal fragments you brought me. Please wait -- this will take some time.<br>
|
||||
(Only characters level 42 and above are permitted to undertake this quest.)
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Locksmith Dorothy:<br>
|
||||
I also checked the inner workings of the machine in order to make sure everything is functional. Consider that service on the house... but I am going to have to charge you for the other repair costs.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00191_VainConclusion 30970-04.htm">"Perhaps you could send the bill to Nikola?"</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Locksmith Dorothy:<br>
|
||||
Nikola, you say?<br>
|
||||
Yes, I think it would be best to charge Nikola for my time. Farewell and good luck!
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Locksmith Dorothy:<br>
|
||||
The task that brought you here before has already been accomplished. Do you have something else for me?
|
||||
</body></html>
|
||||
@@ -1,219 +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.Q00191_VainConclusion;
|
||||
|
||||
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.Q00188_SealRemoval.Q00188_SealRemoval;
|
||||
|
||||
/**
|
||||
* Vain Conclusion (191)
|
||||
* @author ivantotov
|
||||
*/
|
||||
public final class Q00191_VainConclusion extends Quest
|
||||
{
|
||||
// NPCs
|
||||
private static final int SHEGFIELD = 30068;
|
||||
private static final int HEAD_BLACKSMITH_KUSTO = 30512;
|
||||
private static final int RESEARCHER_LORAIN = 30673;
|
||||
private static final int DOROTHY_LOCKSMITH = 30970;
|
||||
// Items
|
||||
private static final int REPAIRED_METALLOGRAPH = 10371;
|
||||
// Misc
|
||||
private static final int MIN_LEVEL = 42;
|
||||
private static final int MAX_LEVEL_FOR_EXP_SP = 48;
|
||||
|
||||
public Q00191_VainConclusion()
|
||||
{
|
||||
super(191);
|
||||
addStartNpc(DOROTHY_LOCKSMITH);
|
||||
addTalkId(DOROTHY_LOCKSMITH, HEAD_BLACKSMITH_KUSTO, RESEARCHER_LORAIN, SHEGFIELD);
|
||||
registerQuestItems(REPAIRED_METALLOGRAPH);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if (qs == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
String htmltext = null;
|
||||
switch (event)
|
||||
{
|
||||
case "30970-03.htm":
|
||||
{
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "30970-04.htm":
|
||||
{
|
||||
if (qs.isCreated())
|
||||
{
|
||||
qs.startQuest();
|
||||
qs.setMemoState(1);
|
||||
giveItems(player, REPAIRED_METALLOGRAPH, 1);
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "30068-02.html":
|
||||
{
|
||||
if (qs.isMemoState(2))
|
||||
{
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "30068-03.html":
|
||||
{
|
||||
if (qs.isMemoState(2))
|
||||
{
|
||||
qs.setMemoState(3);
|
||||
qs.setCond(3, true);
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "30512-02.html":
|
||||
{
|
||||
if (qs.isMemoState(4))
|
||||
{
|
||||
giveAdena(player, 117327, true);
|
||||
if (player.getLevel() < MAX_LEVEL_FOR_EXP_SP)
|
||||
{
|
||||
addExpAndSp(player, 309467, 20614);
|
||||
}
|
||||
qs.exitQuest(false, true);
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "30673-02.html":
|
||||
{
|
||||
if (qs.isMemoState(1))
|
||||
{
|
||||
qs.setMemoState(2);
|
||||
qs.setCond(2, true);
|
||||
takeItems(player, REPAIRED_METALLOGRAPH, -1);
|
||||
htmltext = event;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, true);
|
||||
String htmltext = getNoQuestMsg(player);
|
||||
if (qs.isCreated())
|
||||
{
|
||||
if (npc.getId() == DOROTHY_LOCKSMITH)
|
||||
{
|
||||
final QuestState q188 = player.getQuestState(Q00188_SealRemoval.class.getSimpleName());
|
||||
if ((q188 != null) && q188.isCompleted())
|
||||
{
|
||||
htmltext = (player.getLevel() >= MIN_LEVEL) ? "30970-01.htm" : "30970-02.htm";
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (qs.isStarted())
|
||||
{
|
||||
switch (npc.getId())
|
||||
{
|
||||
case DOROTHY_LOCKSMITH:
|
||||
{
|
||||
if (qs.getMemoState() >= 1)
|
||||
{
|
||||
htmltext = "30970-05.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case SHEGFIELD:
|
||||
{
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 2:
|
||||
{
|
||||
htmltext = "30068-01.html";
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
htmltext = "30068-04.html";
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case HEAD_BLACKSMITH_KUSTO:
|
||||
{
|
||||
if (qs.isMemoState(4))
|
||||
{
|
||||
htmltext = "30512-01.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
case RESEARCHER_LORAIN:
|
||||
{
|
||||
switch (qs.getCond())
|
||||
{
|
||||
case 1:
|
||||
{
|
||||
htmltext = "30673-01.html";
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
htmltext = "30673-03.html";
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
{
|
||||
qs.setMemoState(4);
|
||||
qs.setCond(4, true);
|
||||
htmltext = "30673-04.html";
|
||||
break;
|
||||
}
|
||||
case 4:
|
||||
{
|
||||
htmltext = "30673-05.html";
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (qs.isCompleted())
|
||||
{
|
||||
if (npc.getId() == DOROTHY_LOCKSMITH)
|
||||
{
|
||||
htmltext = getAlreadyCompletedMsg(player);
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
}
|
||||
@@ -32,7 +32,7 @@ import com.l2jmobius.gameserver.network.NpcStringId;
|
||||
|
||||
/**
|
||||
* Little Wing (420)
|
||||
* @author Pandragon / Stayway (Rework Helios)
|
||||
* @author Pandragon / Stayway
|
||||
*/
|
||||
public final class Q00420_LittleWing extends Quest
|
||||
{
|
||||
@@ -81,19 +81,22 @@ public final class Q00420_LittleWing extends Quest
|
||||
private static final int LETO_WARRIOR = 20580;
|
||||
private static final int[] DELUXE_STONE_BREAKERS =
|
||||
{
|
||||
23566, // Nymph Rose
|
||||
23567, // Nymph Rose
|
||||
23568, // Nymph Lily
|
||||
23569, // Nymph Lily
|
||||
23570, // Nymph Tulip
|
||||
23571, // Nymph Tulip
|
||||
23572, // Nymph Cosmos
|
||||
23573, // Nymph Cosmos
|
||||
23578, // Nymph Guardian
|
||||
23579, // Buoyant Seed
|
||||
23580, // Fluttering Seed
|
||||
23581, // Apherus
|
||||
23582, // Nymph Rose
|
||||
20589, // Fline
|
||||
20590, // Liele
|
||||
20591, // Valley Treant
|
||||
20592, // Satyr
|
||||
20593, // Unicorn
|
||||
20594, // Forest Runner
|
||||
20595, // Fline Elder
|
||||
20596, // Liele Elder
|
||||
20597, // Valley Treant Elder
|
||||
20598, // Satyr Elder
|
||||
20599, // Unicorn Elder
|
||||
27185, // Fairy Tree of Wind (Quest Monster)
|
||||
27186, // Fairy Tree of Star (Quest Monster)
|
||||
27187, // Fairy Tree of Twilight (Quest Monster)
|
||||
27188, // Fairy Tree of Abyss (Quest Monster)
|
||||
27189, // Soul of Tree Guardian (Quest Monster)
|
||||
};
|
||||
// Rewards
|
||||
private static final int DRAGONFLUTE_OF_WIND = 3500;
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
<html><body>Captain Kurtiz:<br>
|
||||
Do you know about <font color="LEVEL">Nightmare Kamaloka</font>? It's a place for those who had to leave their homes, waiting for the right moment to go back.<br>
|
||||
The way to Nightmare Kamaloka is very dangerous and it changes every time, so it's not just for anyone. The reason why people still went though, is because it was a safe place.<br>
|
||||
Most of those people were fugitives or those whose lives were threatened.<br>
|
||||
<button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00760_BlockTheExit 30870-02.htm">"I see."</button>
|
||||
</body></html>
|
||||
@@ -1,6 +0,0 @@
|
||||
<html><body>Captain Kurtiz:<br>
|
||||
Those creatures grew stronger there and whenever the gates opened, they were able to go to the places they wanted.<br>
|
||||
However, when the <font color="LEVEL">Seal of Punishment</font> was released, it affected multiple dimensions. A lot of things were changed because of that impact, and even Nightmare Kamaloka was affected. I'm not sure about the details, but the various paths to Nightmare Kamaloka stopped working.<br>
|
||||
The problem is that the dimensional door is linked to a place near Aden.<br>
|
||||
<button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00760_BlockTheExit 30870-03.htm">"I see..."</button>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Captain Kurtiz:<br>
|
||||
Those creatures in Nightmare Kamaloka have been trying to come out to Aden. That's why we had to plan a battle there. The difference in the dimensions is making it difficult, though. It's because they keep appearing out from the other dimensions, even if we get rid of them.<br>
|
||||
We have to defeat the creatures from each of the dimensions. In order to do that, we need the help of as many adventurers as possible. Thanks for listening to me.<br>
|
||||
<button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00760_BlockTheExit 30870-04.html">"I'll help you."</button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Captain Kurtiz:<br>
|
||||
I'll tell you again. Please don't let them use Aden as an exit. Go to Nightmare Kamaloka and defeat <font color="LEVEL">Tracker Mino, Ill-fated Princess Sola, Fallen Angel Ariar, and Confined Princess Sirra</font>, in that order. Lastly, defeat <font color="LEVEL">Betrayed Dark Rider</font>.<br>
|
||||
The monsters in Nightmare Kamaloka won't be easy to defeat, so make sure to take your friends with you. I won't say thanks until you come back safe and sound.
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Captain Kurtiz:<br>
|
||||
Glad to see you are safe. How's the Nightmare Kamaloka mission going?<br>
|
||||
<button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00760_BlockTheExit 30870-06.html">"I've completed it."</button>
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Captain Kurtiz:<br>
|
||||
Oh, thank you very much! Aden is a safer place now thanks to you. Please help us next time someone tries to invade again. Go and rest up!
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Kurtiz:<br>
|
||||
Please, go away.<br>
|
||||
(This quest is available for characters lvls 99-105.)
|
||||
</body></html>
|
||||
@@ -1,146 +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.Q00760_BlockTheExit;
|
||||
|
||||
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.model.quest.State;
|
||||
|
||||
/**
|
||||
* Block the Exit (760)
|
||||
* @author St3eT
|
||||
*/
|
||||
public final class Q00760_BlockTheExit extends Quest
|
||||
{
|
||||
// NPCs
|
||||
private static final int KURTIZ = 30870;
|
||||
private static final int DARK_RIDER = 26102;
|
||||
// Items
|
||||
private static final int REWARD_BOX = 46560; // Curtiz's Reward Box
|
||||
// Misc
|
||||
private static final int MIN_LEVEL = 99;
|
||||
|
||||
public Q00760_BlockTheExit()
|
||||
{
|
||||
super(760);
|
||||
addStartNpc(KURTIZ);
|
||||
addTalkId(KURTIZ);
|
||||
addKillId(DARK_RIDER);
|
||||
addCondMinLevel(MIN_LEVEL, "30870-07.htm");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState st = getQuestState(player, false);
|
||||
if (st == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
String htmltext = null;
|
||||
switch (event)
|
||||
{
|
||||
case "30870-02.htm":
|
||||
case "30870-03.htm":
|
||||
{
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "30870-04.html":
|
||||
{
|
||||
st.startQuest();
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "30870-06.html":
|
||||
{
|
||||
if (st.isCond(2))
|
||||
{
|
||||
if (player.getLevel() >= MIN_LEVEL)
|
||||
{
|
||||
st.exitQuest(QuestType.DAILY, true);
|
||||
giveItems(player, REWARD_BOX, 1);
|
||||
htmltext = event;
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = getNoQuestLevelRewardMsg(player);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState st = getQuestState(player, true);
|
||||
String htmltext = null;
|
||||
|
||||
switch (st.getState())
|
||||
{
|
||||
case State.CREATED:
|
||||
{
|
||||
htmltext = "30870-01.htm";
|
||||
break;
|
||||
}
|
||||
case State.STARTED:
|
||||
{
|
||||
htmltext = st.isCond(2) ? "30870-05.html" : "30870-04.html";
|
||||
break;
|
||||
}
|
||||
case State.COMPLETED:
|
||||
{
|
||||
if (st.isNowAvailable())
|
||||
{
|
||||
st.setState(State.CREATED);
|
||||
htmltext = "30870-01.htm";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
|
||||
{
|
||||
executeForEachPlayer(killer, npc, isSummon, true, false);
|
||||
return super.onKill(npc, killer, isSummon);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void actionForEachPlayer(L2PcInstance player, L2Npc npc, boolean isSummon)
|
||||
{
|
||||
final QuestState st = getQuestState(player, false);
|
||||
if ((st != null) && st.isCond(1))
|
||||
{
|
||||
st.setCond(2, true);
|
||||
}
|
||||
super.actionForEachPlayer(player, npc, isSummon);
|
||||
}
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Leona Blackbird:<br>
|
||||
The Phantasmal Ridge is one of the most dangerous in Hellbound. If you are not strong enough, it's better for you to not go.<br>
|
||||
(This quest is only available for characters with Lv. 99 or above who have completed the "Elikia's Letter" quest.)
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Fire Dragon Bride Leona Blackbird:<br>
|
||||
@TODO Need retail HTML text<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00783_VestigeOfTheMagicPower 31595-02.htm">"NEXT 1"</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Fire Dragon Bride Leona Blackbird:<br>
|
||||
@TODO Need retail HTML text<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00783_VestigeOfTheMagicPower 31595-03.htm">"NEXT 2"</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Fire Dragon Bride Leona Blackbird:<br>
|
||||
@TODO Need retail HTML text<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00783_VestigeOfTheMagicPower 31595-04.htm">"NEXT 3"</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Fire Dragon Bride Leona Blackbird:<br>
|
||||
@TODO Need retail HTML text<br>
|
||||
Starrt Quest
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Fire Dragon Bride Leona Blackbird:<br>
|
||||
@TODO Need retail HTML text<br>
|
||||
Quest Progress
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Fire Dragon Bride Leona Blackbird:<br>
|
||||
@TODO Need retail HTML text<br>
|
||||
Quest Condition 2
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00783_VestigeOfTheMagicPower 31595-07.html">"NEXT 4"</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Fire Dragon Bride Leona Blackbird:<br>
|
||||
@TODO Need retail HTML text<br>
|
||||
Quest Finish
|
||||
</body></html>
|
||||
@@ -1,192 +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.Q00783_VestigeOfTheMagicPower;
|
||||
|
||||
import com.l2jmobius.gameserver.enums.QuestSound;
|
||||
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.model.quest.State;
|
||||
|
||||
import quests.Q10455_ElikiasLetter.Q10455_ElikiasLetter;
|
||||
|
||||
/**
|
||||
* Vestige of the Magic Power (783)
|
||||
* @URL https://l2wiki.com/Vestige_of_the_Magic_Power
|
||||
* @author Gigi
|
||||
*/
|
||||
public class Q00783_VestigeOfTheMagicPower extends Quest
|
||||
{
|
||||
// NPC's
|
||||
private static final int LEONA_BLACKBIRD = 31595;
|
||||
// Monster's
|
||||
private static final int[] MONSTERS =
|
||||
{
|
||||
23384, // Smaug
|
||||
23385, // Lunatikan
|
||||
23386, // Jabberwok
|
||||
23387, // Kanzaroth
|
||||
23388, // Kandiloth
|
||||
23395, // Garion
|
||||
23396, // Garion Neti
|
||||
23397, // Desert Wendigo
|
||||
23398, // Koraza
|
||||
23399 // Bend Beetle
|
||||
};
|
||||
// Misc
|
||||
private static final int MIN_LEVEL = 99;
|
||||
private static final int HIGH_GRADE_FRAGMENT_OF_CHAOS = 46557;
|
||||
private static final int LEONAS_REWARD_BOX = 46558;
|
||||
private static final int BLOODIED_DEMONIC_TOME = 37893;
|
||||
|
||||
public Q00783_VestigeOfTheMagicPower()
|
||||
{
|
||||
super(783);
|
||||
addStartNpc(LEONA_BLACKBIRD);
|
||||
addTalkId(LEONA_BLACKBIRD);
|
||||
addKillId(MONSTERS);
|
||||
registerQuestItems(HIGH_GRADE_FRAGMENT_OF_CHAOS);
|
||||
addCondMinLevel(MIN_LEVEL, "31595-00.htm");
|
||||
addCondCompletedQuest(Q10455_ElikiasLetter.class.getSimpleName(), "31595-00.htm");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
String htmltext = null;
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if (qs == null)
|
||||
{
|
||||
return getNoQuestMsg(player);
|
||||
}
|
||||
switch (event)
|
||||
{
|
||||
case "31595-02.htm":
|
||||
case "31595-03.htm":
|
||||
{
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "31595-04.htm":
|
||||
{
|
||||
qs.startQuest();
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "31595-07.html":
|
||||
{
|
||||
if ((getQuestItemsCount(player, HIGH_GRADE_FRAGMENT_OF_CHAOS) >= 250) && (getQuestItemsCount(player, HIGH_GRADE_FRAGMENT_OF_CHAOS) < 500))
|
||||
{
|
||||
addExpAndSp(player, 3876316782L, 9303137);
|
||||
giveItems(player, LEONAS_REWARD_BOX, 1);
|
||||
takeItems(player, HIGH_GRADE_FRAGMENT_OF_CHAOS, -1);
|
||||
giveItems(player, BLOODIED_DEMONIC_TOME, 1);
|
||||
qs.exitQuest(QuestType.REPEATABLE, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
else if ((getQuestItemsCount(player, HIGH_GRADE_FRAGMENT_OF_CHAOS) >= 500) && (getQuestItemsCount(player, HIGH_GRADE_FRAGMENT_OF_CHAOS) < 750))
|
||||
{
|
||||
addExpAndSp(player, 7752633564L, 18606274);
|
||||
giveItems(player, LEONAS_REWARD_BOX, 2);
|
||||
takeItems(player, HIGH_GRADE_FRAGMENT_OF_CHAOS, -1);
|
||||
giveItems(player, BLOODIED_DEMONIC_TOME, 1);
|
||||
qs.exitQuest(QuestType.REPEATABLE, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
else if ((getQuestItemsCount(player, HIGH_GRADE_FRAGMENT_OF_CHAOS) >= 750) && (getQuestItemsCount(player, HIGH_GRADE_FRAGMENT_OF_CHAOS) < 1000))
|
||||
{
|
||||
addExpAndSp(player, 11628950346L, 27909411);
|
||||
giveItems(player, LEONAS_REWARD_BOX, 3);
|
||||
takeItems(player, HIGH_GRADE_FRAGMENT_OF_CHAOS, -1);
|
||||
giveItems(player, BLOODIED_DEMONIC_TOME, 1);
|
||||
qs.exitQuest(QuestType.REPEATABLE, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
else if (getQuestItemsCount(player, HIGH_GRADE_FRAGMENT_OF_CHAOS) >= 1000)
|
||||
{
|
||||
addExpAndSp(player, 15505267128L, 37212548);
|
||||
giveItems(player, LEONAS_REWARD_BOX, 4);
|
||||
takeItems(player, HIGH_GRADE_FRAGMENT_OF_CHAOS, -1);
|
||||
giveItems(player, BLOODIED_DEMONIC_TOME, 1);
|
||||
qs.exitQuest(QuestType.REPEATABLE, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
String htmltext = getNoQuestMsg(player);
|
||||
final QuestState qs = getQuestState(player, true);
|
||||
if (qs == null)
|
||||
{
|
||||
return htmltext;
|
||||
}
|
||||
if (npc.getId() == LEONA_BLACKBIRD)
|
||||
{
|
||||
switch (qs.getState())
|
||||
{
|
||||
case State.CREATED:
|
||||
{
|
||||
htmltext = "31595-01.htm";
|
||||
break;
|
||||
}
|
||||
case State.STARTED:
|
||||
{
|
||||
if (qs.isCond(1))
|
||||
{
|
||||
htmltext = "31595-05.html";
|
||||
}
|
||||
else if (qs.isCond(2))
|
||||
{
|
||||
htmltext = "31595-06.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if ((qs != null) && qs.isStarted() && (getQuestItemsCount(player, HIGH_GRADE_FRAGMENT_OF_CHAOS) < 1000))
|
||||
{
|
||||
giveItems(player, HIGH_GRADE_FRAGMENT_OF_CHAOS, 1);
|
||||
if (getQuestItemsCount(player, HIGH_GRADE_FRAGMENT_OF_CHAOS) >= 250)
|
||||
{
|
||||
qs.setCond(2, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
|
||||
}
|
||||
}
|
||||
return super.onKill(npc, player, isSummon);
|
||||
}
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
I don't think you'll be able to complete this mission. You seem passionate, but you don't have enough experience. Please come back when you've become stronger.<br>
|
||||
(Only characters above Lv. 100.)
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
Are you an adventurer? I don't think we've met, but can you help us? I'll make sure to reward you for your efforts!<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-02.htm">"Yes?"</Button>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-04.html">"This isn't the first time we've met."</Button>
|
||||
</body></html>
|
||||
@@ -1,6 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
Ah, adventurer! There you are again. How about helping us some more? <br>
|
||||
What do you say? If you don't remember what the mission was, I can tell you again.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-01.htm">"Please tell me about the mission again."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-05.htm">"I know what I've got to do."</Button>
|
||||
</body></html>
|
||||
@@ -1,6 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
Adventurer! Good to see you. Since you've helped us so much already, how about helping us some more? <br>
|
||||
What do you say? If you don't remember what the mission was, I can tell you again.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-01.htm">"Please tell me about the mission again."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-05.htm">"I know what I've got to do."</Button>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
I've been waiting for you, adventurer. Well since you are here now, will you listen to me? I know I can trust you, but if you complete this mission, we'll become better allies and your pockets will get heavier. What do you say? Or do you need me to explain the mission again?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-01.htm">"Please tell me about the mission again."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-05.htm">"I know what I've got to do."</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
We're investigating the area around the Garden of Spirits. However, we are being threatened by the spirits there. That's why we must do something.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-03.htm">"What is it?"</Button>
|
||||
</body></html>
|
||||
@@ -1,6 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
We know of a way to defeat those spirits, at least temporarily. <br>
|
||||
I'll make sure to reward you if you do this mission. And each time you complete the mission, I'll give you an item that will prove our trust.<br>
|
||||
You can prove the level of trust between us. The higher the level, the better the rewards. Also, I'll be able to give you top secret missions. However, these marks do disappear with time, so in order to keep our trust, you must continue doing missions from time to time.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-05.htm">"Alright."</Button>
|
||||
</body></html>
|
||||
@@ -1,6 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
This isn't the first time we've met? You've completed a mission before? I see... Well, I don't really have a good memory.<br>
|
||||
If you have completed a mission before, then that means you must have a Mark of Trust. What? You don't have one?<br>
|
||||
Then you are either a liar, or you haven't been here in a long time. My trust is something you must continously try to maintain. Will you listen to me?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-01.htm">"Yes, tell me about the mission."</Button>
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
Alright. Here's the mission. Hunt the <font color="LEVEL">Kerberos Leger, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and the Fury Kerberos Nero</font>, and collect their <font color="LEVEL">Mutated Spirit's Souls</font> as proof.<br>You can get rewards only if you bring at least 200. Of course, you'll get more rewards if you bring more.
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
Like I said, you need to bring back at least <font color="LEVEL">200 Mutated Spirit's Souls</font>. Of course, it would be better if you can bring more.
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
You want to finish already? Well, I can still give you a reward... But it won't be something good. Of course I'll give you a Mark of Trust since you helped us... Are you sure?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-08.html">"I'll keep hunting, then."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-09.html">"Yes, I'm sure."</Button>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
You want to finish already? Well, I can still give you a reward... But it won't be something good. Are you sure? <br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-08.html">"I'll keep hunting, then."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-09a.html">"Yes, I'm sure."</Button>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
You want to finish already? Well, I can still give you a reward... But it won't be something good. Are you sure? <br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-08.html">"I'll keep hunting, then."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-09b.html">"Yes, I'm sure."</Button>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
You want to finish already? Well, I can still give you a reward... But it won't be something good. Are you sure?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-08.html">"I'll keep hunting, then."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-09c.html">"Yes, I'm sure."</Button>
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
Good idea. The more Mutated Spirit's Souls you bring, the more safely we can investigate, and the better reward you will get.
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
Since it's your first time, I'll give you a reward and an item that will prove the trust between us. Here you go. We'll exchange this Mark of Trust (Low-grade) for a higher level one if you keep helping us. If you don't help us for a long time, it will disappear. Please keep that in mind.
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
You completed the mission! <br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-10a.html">"I did my best."</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
You completed the mission! <br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-10b.html">"I did my best."</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
You completed the mission! <br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00790_ObtainingFerinsTrust 34055-10c.html">"I did my best."</Button>
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><head><body>Master Cyphona:<br>
|
||||
Here's your reward. We'll be able to maintain our trust. As long as you don't forget about us, that is.
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
Here's your reward, I'll remember how you've helped us all those times. Here's a higher level Mark of Trust. Thank you for all of your help.
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Master Cyphona:<br>
|
||||
Here's your reward for helping us. Although you didn't get all the Marks, I still remember how you helped us. I have no doubt the trust between us has deepened even more.
|
||||
</body></html>
|
||||
@@ -1,361 +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.Q00790_ObtainingFerinsTrust;
|
||||
|
||||
import com.l2jmobius.Config;
|
||||
import com.l2jmobius.gameserver.enums.QuestSound;
|
||||
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.model.quest.State;
|
||||
|
||||
/**
|
||||
* Obtaining Ferin's Trust (00790)
|
||||
* @URL https://l2wiki.com/Obtaining_Ferin%27s_Trust
|
||||
* @author Gigi
|
||||
*/
|
||||
public class Q00790_ObtainingFerinsTrust extends Quest
|
||||
{
|
||||
// NPCs
|
||||
private static final int CYPHONA = 34055;
|
||||
// Monsters
|
||||
private static final int[] MONSTERS =
|
||||
{
|
||||
23550, // Kerberos Lager
|
||||
23551, // Kerberos Fort
|
||||
23552, // Kerberos Nero
|
||||
23553, // Fury Sylph Barrena
|
||||
23555, // Fury Sylph Temptress
|
||||
23556, // Fury Sylph Purka
|
||||
23557, // Fury Kerberos Leger
|
||||
23558 // Fury Kerberos Nero
|
||||
};
|
||||
// Misc
|
||||
private static final int MIN_LEVEL = 100;
|
||||
// Item's
|
||||
private static final int MARK_OF_TRUST_LOW_GRADE = 45840;
|
||||
private static final int MARK_OF_TRUST_MID_GRADE = 45843;
|
||||
private static final int MARK_OF_TRUST_HIGH_GRADE = 45848;
|
||||
private static final int MUTATAED_SPIRITS_SOUL = 45849;
|
||||
private static final int BSOE = 1538;
|
||||
private static final int ELEXIR_OF_LIFE_R = 30357;
|
||||
private static final int ELEXIR_OF_MIND_R = 30358;
|
||||
private static final int ELEXIR_OF_CP_R = 30359;
|
||||
private static final int FERINS_REWARD_BOX = 46165;
|
||||
private static final int SUPERIOR_GIANTS_CODEX = 46150;
|
||||
|
||||
public Q00790_ObtainingFerinsTrust()
|
||||
{
|
||||
super(790);
|
||||
addStartNpc(CYPHONA);
|
||||
addTalkId(CYPHONA);
|
||||
addKillId(MONSTERS);
|
||||
registerQuestItems(MUTATAED_SPIRITS_SOUL);
|
||||
addCondMinLevel(MIN_LEVEL, "34055-00.htm");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
String htmltext = null;
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if (qs == null)
|
||||
{
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
switch (event)
|
||||
{
|
||||
case "34055-01.htm":
|
||||
case "34055-02.htm":
|
||||
case "34055-03.htm":
|
||||
case "34055-04.html":
|
||||
case "34055-08.html":
|
||||
case "34055-09a.html":
|
||||
case "34055-09b.html":
|
||||
case "34055-09c.html":
|
||||
{
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34055-05.htm":
|
||||
{
|
||||
qs.startQuest();
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34055-09.html":
|
||||
{
|
||||
giveItems(player, MARK_OF_TRUST_LOW_GRADE, 1);
|
||||
qs.exitQuest(QuestType.REPEATABLE, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34055-10a.html":
|
||||
{
|
||||
if ((getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) >= 200) && (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) < 400))
|
||||
{
|
||||
giveAdena(player, 119773, true);
|
||||
addExpAndSp(player, 5932440000L, 14237820);
|
||||
if (getRandom(100) < 20)
|
||||
{
|
||||
giveItems(player, FERINS_REWARD_BOX, 1);
|
||||
}
|
||||
}
|
||||
else if ((getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) >= 400) && (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) < 600))
|
||||
{
|
||||
giveAdena(player, 239546, true);
|
||||
addExpAndSp(player, 11864880000L, 28475640);
|
||||
if (getRandom(100) < 40)
|
||||
{
|
||||
giveItems(player, FERINS_REWARD_BOX, 1);
|
||||
}
|
||||
}
|
||||
else if ((getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) >= 600) && (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) < 800))
|
||||
{
|
||||
giveAdena(player, 359319, true);
|
||||
addExpAndSp(player, 17797320000L, 42713460);
|
||||
if (getRandom(100) < 60)
|
||||
{
|
||||
giveItems(player, FERINS_REWARD_BOX, 1);
|
||||
}
|
||||
}
|
||||
else if ((getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) >= 800) && (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) < 1000))
|
||||
{
|
||||
giveAdena(player, 479091, true);
|
||||
addExpAndSp(player, 23729760000L, 56951280);
|
||||
if (getRandom(100) < 80)
|
||||
{
|
||||
giveItems(player, FERINS_REWARD_BOX, 1);
|
||||
}
|
||||
}
|
||||
else if (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) >= 1000)
|
||||
{
|
||||
giveAdena(player, 598864, true);
|
||||
addExpAndSp(player, 29662200000L, 71189100);
|
||||
giveItems(player, FERINS_REWARD_BOX, 1);
|
||||
}
|
||||
giveItems(player, MARK_OF_TRUST_MID_GRADE, 1);
|
||||
giveItems(player, BSOE, 1);
|
||||
giveItems(player, ELEXIR_OF_LIFE_R, 5);
|
||||
giveItems(player, ELEXIR_OF_MIND_R, 5);
|
||||
giveItems(player, ELEXIR_OF_CP_R, 5);
|
||||
qs.exitQuest(QuestType.REPEATABLE, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34055-10b.html":
|
||||
{
|
||||
if ((getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) >= 200) && (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) < 400))
|
||||
{
|
||||
giveAdena(player, 119773, true);
|
||||
addExpAndSp(player, 5932440000L, 14237820);
|
||||
if (getRandom(100) < 20)
|
||||
{
|
||||
giveItems(player, FERINS_REWARD_BOX, 1);
|
||||
}
|
||||
}
|
||||
else if ((getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) >= 400) && (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) < 600))
|
||||
{
|
||||
giveAdena(player, 239546, true);
|
||||
addExpAndSp(player, 11864880000L, 28475640);
|
||||
if (getRandom(100) < 40)
|
||||
{
|
||||
giveItems(player, FERINS_REWARD_BOX, 1);
|
||||
}
|
||||
}
|
||||
else if ((getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) >= 600) && (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) < 800))
|
||||
{
|
||||
giveAdena(player, 359319, true);
|
||||
addExpAndSp(player, 17797320000L, 42713460);
|
||||
if (getRandom(100) < 60)
|
||||
{
|
||||
giveItems(player, FERINS_REWARD_BOX, 1);
|
||||
}
|
||||
}
|
||||
else if ((getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) >= 800) && (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) < 1000))
|
||||
{
|
||||
giveAdena(player, 479091, true);
|
||||
addExpAndSp(player, 23729760000L, 56951280);
|
||||
if (getRandom(100) < 80)
|
||||
{
|
||||
giveItems(player, FERINS_REWARD_BOX, 1);
|
||||
}
|
||||
}
|
||||
else if (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) >= 1000)
|
||||
{
|
||||
giveAdena(player, 598864, true);
|
||||
addExpAndSp(player, 29662200000L, 71189100);
|
||||
giveItems(player, FERINS_REWARD_BOX, 1);
|
||||
}
|
||||
giveItems(player, MARK_OF_TRUST_HIGH_GRADE, 1);
|
||||
giveItems(player, BSOE, 1);
|
||||
giveItems(player, ELEXIR_OF_LIFE_R, 5);
|
||||
giveItems(player, ELEXIR_OF_MIND_R, 5);
|
||||
giveItems(player, ELEXIR_OF_CP_R, 5);
|
||||
qs.exitQuest(QuestType.REPEATABLE, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34055-10c.html":
|
||||
{
|
||||
if ((getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) >= 200) && (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) < 400))
|
||||
{
|
||||
addExpAndSp(player, 5932440000L, 14237820);
|
||||
giveItems(player, FERINS_REWARD_BOX, 1);
|
||||
if (getRandom(100) < 1)
|
||||
{
|
||||
giveItems(player, SUPERIOR_GIANTS_CODEX, 1);
|
||||
}
|
||||
}
|
||||
else if ((getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) >= 400) && (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) < 600))
|
||||
{
|
||||
addExpAndSp(player, 11864880000L, 28475640);
|
||||
giveItems(player, FERINS_REWARD_BOX, getRandom(1, 2));
|
||||
if (getRandom(100) < 9)
|
||||
{
|
||||
giveItems(player, SUPERIOR_GIANTS_CODEX, 1);
|
||||
}
|
||||
}
|
||||
else if ((getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) >= 600) && (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) < 800))
|
||||
{
|
||||
addExpAndSp(player, 17797320000L, 42713460);
|
||||
giveItems(player, FERINS_REWARD_BOX, 2);
|
||||
if (getRandom(100) < 20)
|
||||
{
|
||||
giveItems(player, SUPERIOR_GIANTS_CODEX, 1);
|
||||
}
|
||||
}
|
||||
else if ((getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) >= 800) && (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) < 1000))
|
||||
{
|
||||
addExpAndSp(player, 23729760000L, 56951280);
|
||||
giveItems(player, FERINS_REWARD_BOX, getRandom(2, 3));
|
||||
if (getRandom(100) < 25)
|
||||
{
|
||||
giveItems(player, SUPERIOR_GIANTS_CODEX, 1);
|
||||
}
|
||||
}
|
||||
else if (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) >= 1000)
|
||||
{
|
||||
addExpAndSp(player, 29662200000L, 71189100);
|
||||
giveItems(player, FERINS_REWARD_BOX, 3);
|
||||
if (getRandom(100) < 33)
|
||||
{
|
||||
giveItems(player, SUPERIOR_GIANTS_CODEX, 1);
|
||||
}
|
||||
}
|
||||
qs.exitQuest(QuestType.REPEATABLE, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, true);
|
||||
String htmltext = getNoQuestMsg(player);
|
||||
|
||||
switch (qs.getState())
|
||||
{
|
||||
case State.CREATED:
|
||||
{
|
||||
if (!hasQuestItems(player, MARK_OF_TRUST_LOW_GRADE) && !hasQuestItems(player, MARK_OF_TRUST_MID_GRADE) && !hasQuestItems(player, MARK_OF_TRUST_HIGH_GRADE))
|
||||
{
|
||||
htmltext = "34055-01.htm";
|
||||
break;
|
||||
}
|
||||
else if (hasQuestItems(player, MARK_OF_TRUST_LOW_GRADE) && !hasQuestItems(player, MARK_OF_TRUST_MID_GRADE) && !hasQuestItems(player, MARK_OF_TRUST_HIGH_GRADE))
|
||||
{
|
||||
htmltext = "34055-01a.htm";
|
||||
break;
|
||||
}
|
||||
else if (hasQuestItems(player, MARK_OF_TRUST_MID_GRADE) && hasQuestItems(player, MARK_OF_TRUST_MID_GRADE) && !hasQuestItems(player, MARK_OF_TRUST_HIGH_GRADE))
|
||||
{
|
||||
htmltext = "34055-01b.htm";
|
||||
break;
|
||||
}
|
||||
else if (hasQuestItems(player, MARK_OF_TRUST_HIGH_GRADE) && hasQuestItems(player, MARK_OF_TRUST_MID_GRADE) && hasQuestItems(player, MARK_OF_TRUST_HIGH_GRADE))
|
||||
{
|
||||
htmltext = "34055-01c.htm";
|
||||
break;
|
||||
}
|
||||
}
|
||||
case State.STARTED:
|
||||
{
|
||||
if (qs.isCond(1))
|
||||
{
|
||||
htmltext = "34055-06.html";
|
||||
}
|
||||
else if (qs.isCond(2))
|
||||
{
|
||||
if (!hasQuestItems(player, MARK_OF_TRUST_LOW_GRADE) && !hasQuestItems(player, MARK_OF_TRUST_MID_GRADE) && !hasQuestItems(player, MARK_OF_TRUST_HIGH_GRADE))
|
||||
{
|
||||
htmltext = "34055-07.html";
|
||||
break;
|
||||
}
|
||||
else if (hasQuestItems(player, MARK_OF_TRUST_LOW_GRADE) && !hasQuestItems(player, MARK_OF_TRUST_MID_GRADE) && !hasQuestItems(player, MARK_OF_TRUST_HIGH_GRADE))
|
||||
{
|
||||
htmltext = "34055-07a.html";
|
||||
break;
|
||||
}
|
||||
else if (hasQuestItems(player, MARK_OF_TRUST_MID_GRADE) && hasQuestItems(player, MARK_OF_TRUST_MID_GRADE) && !hasQuestItems(player, MARK_OF_TRUST_HIGH_GRADE))
|
||||
{
|
||||
htmltext = "34055-07b.html";
|
||||
break;
|
||||
}
|
||||
else if (hasQuestItems(player, MARK_OF_TRUST_HIGH_GRADE) && hasQuestItems(player, MARK_OF_TRUST_MID_GRADE) && hasQuestItems(player, MARK_OF_TRUST_HIGH_GRADE))
|
||||
{
|
||||
htmltext = "34055-07c.html";
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon)
|
||||
{
|
||||
executeForEachPlayer(player, npc, isSummon, true, false);
|
||||
return super.onKill(npc, player, isSummon);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void actionForEachPlayer(L2PcInstance player, L2Npc npc, boolean isSummon)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if ((qs != null) && player.isInsideRadius(npc, Config.ALT_PARTY_RANGE, true, true) && (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) < 1000))
|
||||
{
|
||||
giveItems(player, MUTATAED_SPIRITS_SOUL, 1);
|
||||
if (getQuestItemsCount(player, MUTATAED_SPIRITS_SOUL) == 200)
|
||||
{
|
||||
qs.setCond(2, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Shadai's Disciple Kaysia:<br>
|
||||
I'm grateful you want to help, but you will need to get a little stronger to help me.<br>
|
||||
(This quest is for characters Lv. 101 and higher who have completed the "Deep Inside Atelia Fortress" quest.)
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Shadai's Disciple Kaysia:<br>
|
||||
Oh! Are you here to help me?<br>
|
||||
I think rumor has spread that I'm in need of help. You heard about that too, right?<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00817_BlackAteliaResearch 34051-02.htm">"Yes, I did."</Button>
|
||||
</body></html>
|
||||
@@ -1,6 +0,0 @@
|
||||
<html><body>Shadai's Disciple Kaysia:<br>
|
||||
Remember Kelbim?<br>
|
||||
I did some research on the <font color="LEVEL">Kelbim's Armor Piece</font> you brought back, but it wasn't enough.<br>
|
||||
I will need some other materials... Do you think you can help me?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00817_BlackAteliaResearch 34051-03.htm">"What do you need?"</Button>
|
||||
</body></html>
|
||||
@@ -1,6 +0,0 @@
|
||||
<html><body>Shadai's Disciple Kaysia:<br>
|
||||
Will you really help me? Thank you!<br>
|
||||
I need <font color="LEVEL">Black Atelia Powder</font> now. We have no idea how the Atelia was changed, and Kelbim's Armor Piece isn't enough to find that out.<br>
|
||||
We will need something else, but defeating Kelbim alone won't be enough.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00817_BlackAteliaResearch 34051-04.htm">"What do you need?"</Button>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Shadai's Disciple Kaysia:<br>
|
||||
I'm glad you understand.<br>
|
||||
I heard that Kelbim calls on his pawns. I'm sure that dealing with them will also help us understand how the Atelia transforms.<br>
|
||||
I heard that <font color="LEVEL">Guardian Sinistra, Guardian Destra, and Kelbim's Clone</font> are summoned. Please get the <font color="LEVEL">Black Atelia Powder</font> from them.
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Shadai's Disciple Kaysia:<br>
|
||||
Are you still working on it? When you go defeat Kelbim, make sure to defeat his pawns <font color="LEVEL">Guardian Sinistra, Guardian Destra, and Kelbim's Clone</font>, and get the <font color="LEVEL">Black Atelia Powder</font> from them.<br>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Shadai's Disciple Kaysia:<br>
|
||||
Oh! Is that <font color="LEVEL">Black Atelia Powder</font>?<br>
|
||||
It seems so familiar, but it's still different. Can I have it?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00817_BlackAteliaResearch 34051-07.html">"Here you go."</Button>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Shadai's Disciple Kaysia:<br>
|
||||
Thank you!<br>
|
||||
Please try to get me another one if you ever go back to the Atelia Castle!<br>
|
||||
I will make sure to reward you.
|
||||
</body></html>
|
||||
@@ -1,135 +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.Q00817_BlackAteliaResearch;
|
||||
|
||||
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.model.quest.State;
|
||||
|
||||
import quests.Q10841_DeepInsideAteliaFortress.Q10841_DeepInsideAteliaFortress;
|
||||
|
||||
/**
|
||||
* Black Atelia Research (817)
|
||||
* @URL https://l2wiki.com/Black_Atelia_Research
|
||||
* @author Gigi
|
||||
*/
|
||||
public final class Q00817_BlackAteliaResearch extends Quest
|
||||
{
|
||||
// NPC
|
||||
private static final int KAYSYA = 34051;
|
||||
private static final int[] BOSS =
|
||||
{
|
||||
23603, // Guardian Sinistra
|
||||
23604, // Guardian Destra
|
||||
26128, // Kelbim's Clone
|
||||
};
|
||||
// Items
|
||||
private static final int BLACK_ATELIA_POWDER = 46145;
|
||||
private static final int HARDENER_POUCH_R = 32779;
|
||||
// Misc
|
||||
private static final int MIN_LEVEL = 101;
|
||||
|
||||
public Q00817_BlackAteliaResearch()
|
||||
{
|
||||
super(817);
|
||||
addStartNpc(KAYSYA);
|
||||
addTalkId(KAYSYA);
|
||||
addKillId(BOSS);
|
||||
registerQuestItems(BLACK_ATELIA_POWDER);
|
||||
addCondMinLevel(MIN_LEVEL, "34051-00.htm");
|
||||
addCondCompletedQuest(Q10841_DeepInsideAteliaFortress.class.getSimpleName(), "34051-00.htm");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
String htmltext = null;
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if (qs == null)
|
||||
{
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
switch (event)
|
||||
{
|
||||
case "34051-02.htm":
|
||||
case "34051-03.htm":
|
||||
{
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34051-04.htm":
|
||||
{
|
||||
qs.startQuest();
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "34051-07.html":
|
||||
{
|
||||
giveItems(player, HARDENER_POUCH_R, 1);
|
||||
addExpAndSp(player, 3631150845L, 8714700);
|
||||
qs.exitQuest(QuestType.REPEATABLE, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, true);
|
||||
String htmltext = getNoQuestMsg(player);
|
||||
|
||||
switch (qs.getState())
|
||||
{
|
||||
case State.CREATED:
|
||||
{
|
||||
htmltext = "34051-01.htm";
|
||||
break;
|
||||
}
|
||||
case State.STARTED:
|
||||
{
|
||||
if (qs.isCond(1))
|
||||
{
|
||||
htmltext = "34051-05.html";
|
||||
}
|
||||
else if (qs.isCond(2) && hasQuestItems(player, BLACK_ATELIA_POWDER))
|
||||
{
|
||||
htmltext = "34051-06.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
|
||||
{
|
||||
final QuestState qs = getRandomPartyMemberState(killer, 1, 5, npc);
|
||||
if ((qs != null) && qs.isCond(1) && giveItemRandomly(killer, BLACK_ATELIA_POWDER, 1, 1, 0.6, true))
|
||||
{
|
||||
qs.setCond(2, true);
|
||||
}
|
||||
return super.onKill(npc, killer, isSummon);
|
||||
}
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Fairy Mimyu:<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. 100.)
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Fairy Mimyu:<br>
|
||||
All the fairies in the Enchanted Valley disappeared. No one's left.<br>
|
||||
Oh, me? Well, I meant everyone but me disappeared. It's not like I was shunned by my race or anything. Isn't it strange? But that's not all.<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00823_DisappearedRaceNewFairy 30747-02.htm">"What else?"</Button>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Fairy Mimyu:<br>
|
||||
I've been going around looking for other fairies, but I ran into some fairies that I had never seen before!<br>
|
||||
It's not like I know everyone within our race, but I have seriously never seen them before.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00823_DisappearedRaceNewFairy 30747-03.htm">"What do you mean?"</Button>
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Fairy Mimyu:<br>
|
||||
I think I ran into the Nymphs... I don't think they've ever come into the continent, but that certainly doesn't mean that they don't exist.<br>The <font color="LEVEL">Nymphs</font> are over there, but I ran into some trouble...<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00823_DisappearedRaceNewFairy 30747-04.htm">"What happened?"</Button>
|
||||
</body></html>
|
||||
@@ -1,6 +0,0 @@
|
||||
<html><body>Fairy Mimyu:<br>
|
||||
We can't communicate at all. They certainly look like fairies, but they even tried to attack me.<br>
|
||||
Do you have any idea of how scared I was? I escaped as fast as I could.<br>
|
||||
At least it looks like they can't come into the center here because of Timiniel's influence... So, are you going to help me?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00823_DisappearedRaceNewFairy 30747-05.htm">"Alright."</Button>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Fairy Mimyu:<br>
|
||||
If the Nymphs are really fairies, I might be able to find out what happened in the Enchanted Valley with just a few clues. Please collect something that I could use as clues from the Nymphs.<br>
|
||||
Please defeat the <font color="LEVEL">Nymph Rose, Nymph Lily, Nymph Tulip, Nymph Cosmos, and the Nymph Guardians</font> and bring the <font color="LEVEL">Nymph Stamens</font>. I'll need at least <font color="LEVEL">300</font> to find out anything from them. The more you bring, the better.<br>
|
||||
I won't forget to reward you.
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Fairy Mimyu:<br>
|
||||
What? This isn't enough.<br>
|
||||
Please defeat the <font color="LEVEL">Nymph Rose, Nymph Lily, Nimph Tulip, Nymph Cosmos, and the Nymph Guardians</font> and bring at least <font color="LEVEL">300 Nymph Stamens</font>.
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Fairy Mimyu:<br>
|
||||
Did you collect everything? This should be enough to find out some information. I believe the Nymphs are flower fairies. So they must leave something in the stamen. If I can investigate the stamen, I should be able to find out some information. Of course, the more you bring back, the more research I can do. What do you say?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00823_DisappearedRaceNewFairy 30747-10.html">"I'm done for today."</Button>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00823_DisappearedRaceNewFairy 30747-09.html">"I'll get some more."</Button>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Fairy Mimyu:<br>
|
||||
Wow! You collected all these? Great!<br>
|
||||
I'll make sure to reward you for your efforts. <br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00823_DisappearedRaceNewFairy 30747-10.html">"Here you go."</Button>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Fairy Mimyu:<br>
|
||||
You'll get more? Thank you!<br>
|
||||
I was thinking this wasn't enough, but I didn't want to bother you.<br>
|
||||
Well, I'll reward you as much as you help me!
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Fairy Mimyu:<br>
|
||||
Thank you. This isn't that much, but I should be able to find out at least some information.<br>
|
||||
Well, here's your reward. Also, if you have time, come back tomorrow to get more clues! I get clues and you get more rewards. Sounds great, right?
|
||||
</body></html>
|
||||
@@ -1,4 +0,0 @@
|
||||
<html><body>Fairy Mimyu:<br>
|
||||
If you have time, come back tomorrow to get more clues! I get clues and you get more rewards. Sounds great, right?<br>
|
||||
(You can only undertake this quest once a day. It resets every day at 6:30 AM.)
|
||||
</body></html>
|
||||
@@ -1,191 +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.Q00823_DisappearedRaceNewFairy;
|
||||
|
||||
import com.l2jmobius.gameserver.enums.QuestSound;
|
||||
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.model.quest.State;
|
||||
|
||||
/**
|
||||
* Disappeared Race, New Fairy (00823)
|
||||
* @URL https://l2wiki.com/Disappeared_Race,_New_Fairy
|
||||
* @author Gigi
|
||||
*/
|
||||
public class Q00823_DisappearedRaceNewFairy extends Quest
|
||||
{
|
||||
// NPCs
|
||||
private static final int MIMYU = 30747;
|
||||
// Monsters
|
||||
private static final int[] MONSTERS =
|
||||
{
|
||||
23566, // Nymph Rose
|
||||
23567, // Nymph Rose
|
||||
23568, // Nymph Lily
|
||||
23569, // Nymph Lily
|
||||
23570, // Nymph Tulip
|
||||
23571, // Nymph Tulip
|
||||
23572, // Nymph Cosmos
|
||||
23573, // Nymph Cosmos
|
||||
23578 // Nymph Guardian
|
||||
};
|
||||
// Item's
|
||||
private static final int NYMPH_STAMEN = 46258;
|
||||
private static final int MIMIUS_REWARD_BOX = 46259;
|
||||
// Misc
|
||||
private static final int MIN_LEVEL = 100;
|
||||
|
||||
public Q00823_DisappearedRaceNewFairy()
|
||||
{
|
||||
super(823);
|
||||
addStartNpc(MIMYU);
|
||||
addTalkId(MIMYU);
|
||||
addKillId(MONSTERS);
|
||||
registerQuestItems(NYMPH_STAMEN);
|
||||
addCondMinLevel(MIN_LEVEL, "30747-00.htm");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
String htmltext = null;
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if (qs == null)
|
||||
{
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
switch (event)
|
||||
{
|
||||
case "30747-02.htm":
|
||||
case "30747-03.htm":
|
||||
case "30747-04.htm":
|
||||
case "30747-09.html":
|
||||
{
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "30747-05.htm":
|
||||
{
|
||||
qs.startQuest();
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "30747-10.html":
|
||||
{
|
||||
if ((getQuestItemsCount(player, NYMPH_STAMEN) >= 300) && (getQuestItemsCount(player, NYMPH_STAMEN) < 600))
|
||||
{
|
||||
addExpAndSp(player, 3045319200L, 7308474);
|
||||
giveItems(player, MIMIUS_REWARD_BOX, 1);
|
||||
}
|
||||
else if ((getQuestItemsCount(player, NYMPH_STAMEN) >= 600) && (getQuestItemsCount(player, NYMPH_STAMEN) < 900))
|
||||
{
|
||||
addExpAndSp(player, 6090638400L, 14617495);
|
||||
giveItems(player, MIMIUS_REWARD_BOX, 2);
|
||||
}
|
||||
else if ((getQuestItemsCount(player, NYMPH_STAMEN) >= 900) && (getQuestItemsCount(player, NYMPH_STAMEN) < 1200))
|
||||
{
|
||||
addExpAndSp(player, 9135957600L, 21926243);
|
||||
giveItems(player, MIMIUS_REWARD_BOX, 3);
|
||||
}
|
||||
else if ((getQuestItemsCount(player, NYMPH_STAMEN) >= 1200) && (getQuestItemsCount(player, NYMPH_STAMEN) < 1500))
|
||||
{
|
||||
addExpAndSp(player, 12181276800L, 29233986);
|
||||
giveItems(player, MIMIUS_REWARD_BOX, 4);
|
||||
}
|
||||
else if ((getQuestItemsCount(player, NYMPH_STAMEN) >= 1500) && (getQuestItemsCount(player, NYMPH_STAMEN) < 1800))
|
||||
{
|
||||
addExpAndSp(player, 15226596000L, 36542370);
|
||||
giveItems(player, MIMIUS_REWARD_BOX, 5);
|
||||
}
|
||||
else if (getQuestItemsCount(player, NYMPH_STAMEN) >= 1800)
|
||||
{
|
||||
addExpAndSp(player, 18271915200L, 43852486);
|
||||
giveItems(player, MIMIUS_REWARD_BOX, 6);
|
||||
}
|
||||
qs.exitQuest(QuestType.DAILY, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, true);
|
||||
String htmltext = getNoQuestMsg(player);
|
||||
|
||||
switch (qs.getState())
|
||||
{
|
||||
case State.COMPLETED:
|
||||
{
|
||||
if (!qs.isNowAvailable())
|
||||
{
|
||||
htmltext = "30747-11.html";
|
||||
break;
|
||||
}
|
||||
qs.setState(State.CREATED);
|
||||
}
|
||||
case State.CREATED:
|
||||
{
|
||||
htmltext = "30747-01.htm";
|
||||
break;
|
||||
}
|
||||
case State.STARTED:
|
||||
{
|
||||
if (qs.isCond(1))
|
||||
{
|
||||
htmltext = "30747-06.html";
|
||||
}
|
||||
else if (qs.isCond(2) && (getQuestItemsCount(player, NYMPH_STAMEN) < 1800))
|
||||
{
|
||||
htmltext = "30747-07.html";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "30747-08.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon)
|
||||
{
|
||||
final QuestState qs = getQuestState(player, false);
|
||||
if ((qs != null) && (qs.getCond() > 0) && (getQuestItemsCount(player, NYMPH_STAMEN) < 1800))
|
||||
{
|
||||
giveItems(player, NYMPH_STAMEN, 1);
|
||||
if (getQuestItemsCount(player, NYMPH_STAMEN) == 300)
|
||||
{
|
||||
qs.setCond(2, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
|
||||
}
|
||||
}
|
||||
return super.onKill(npc, player, isSummon);
|
||||
}
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
<html><body>Mystic Tavern Owner Settlen:<br>
|
||||
Welcome! Welcome to the Mystic Tavern, where you'll find great food, drinks, and stories!<br>
|
||||
This place is a little out of th way, so we weren't sure how many people would actually visit us. But thank you for visiting us like this.<br>
|
||||
Now I'll tell you about the things we've prepared. Hahaha!<br>
|
||||
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q10297_GrandOpeningComeToOurPub 34180-02.htm">"What do you have?"</Button>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Mystic Tavern Owner Settlen:<br>
|
||||
No need to be so hasty. But of course, it's no fun to do all hte talk. How about you go around to meet everyone here?<br>
|
||||
First, talk to my lovely daughter, <font color="LEVEL">Lollia</font>. A lot of things about our tavern got started thanks to her.<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10297_GrandOpeningComeToOurPub 34180-03.htm">"Lollia?"</Button>
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Mystic Tavern Owner Settlen:<br>
|
||||
Lollia is my only daughter. You should go talk to her while you are here. Hahaha.<br>
|
||||
We had her very late. She's precious to us. She's also very smart and kind... It was Lollia's idea to start telling stories to our customers.<br>
|
||||
Lollia's helping out a lot in the tavern, and she's also getting ready to meet new customers. Make sure to go to talk to her!
|
||||
</body></html>
|
||||
@@ -1,3 +0,0 @@
|
||||
<html><body>Mystic Tavern Owner Settlen:<br>
|
||||
Lollia is very excited to meet new customers, so make sure to talk to her while you are here.
|
||||
</body></html>
|
||||
@@ -1,5 +0,0 @@
|
||||
<html><body>Mystic Tavern Owner Settlen:<br>
|
||||
I'm not sure how you head about this place, but it's dangerous here.<br>
|
||||
Come visit us again once you get stronger.<br>
|
||||
(Only characters above Lv. 99.)
|
||||
</body></html>
|
||||
@@ -1,6 +0,0 @@
|
||||
<html><body>Madame Lailly:<br>
|
||||
Isn't Lupia cute?<br>
|
||||
If someone wakes you up from your sweet dreams, come find me. I'll take you into the dream world again.<br>
|
||||
Isn't our tavern great?<br>
|
||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10297_GrandOpeningComeToOurPub 34181-02.html">"Yes, it is."</Button>
|
||||
</body></html>
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user