Quest The Lost Garden of Spirits (10830).

Contributed by gigilo1968.
This commit is contained in:
MobiusDev
2017-01-06 09:56:38 +00:00
parent f82bdb881f
commit 99513c6507
11 changed files with 177 additions and 2 deletions

View File

@@ -122,7 +122,6 @@
10806 The Dimensional Warp, Part 6 10806 The Dimensional Warp, Part 6
10807 The Dimensional Warp, Part 7 10807 The Dimensional Warp, Part 7
10809 The Hero's Journey: Blazing Swamp 10809 The Hero's Journey: Blazing Swamp
10830 The Lost Garden of Spirits
10831 Unbelievable Sight 10831 Unbelievable Sight
10832 Energy of Sadness and Anger 10832 Energy of Sadness and Anger
10833 Put the Queen of Spirits to Sleep 10833 Put the Queen of Spirits to Sleep

View File

@@ -0,0 +1,4 @@
<html><body>Master Cyphona:<br>
Hm? You want to help? Just go away, that's helping.<br>
(This quest is for characters Lv. 100 and higher who have completed the "In Search of the Cause" quest.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Master Cyphona:<br>
Bad news. I can't convince Ferin. Well, maybe if you can prove your skills... <br>
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q10830_TheLostGardenOfSpirits 34055-02.htm">"Yes?"</Button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Master Cyphona:<br>
Well, if you can prove your skills... It should be okay...<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10830_TheLostGardenOfSpirits 34055-03.htm">"How can I prove my skills to you?"</Button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Master Cyphona:<br>
This is how you can prove your skills. Go to the <font color="LEVEL">Garden of Spirits</font>, kill the unstable spirits, and bring back some items. Will you do this mission? <br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10830_TheLostGardenOfSpirits 34055-04.htm">"Alright."</Button>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Master Cyphona:<br>
Alright. Go to the <font color="LEVEL">Garden of Spirits</font>. Once there, defeat the <font color="LEVEL">Kerberos Liger, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Temptress, Fury Sylph Purka, Fury Kerberos Liger, and the Fury Kerberos Nero</font>, and bring back <font color="LEVEL">100 Unstable Spirit's Energy</font>. We'll be using those items for research.
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Master Cyphona:<br>
You are here to ask about the mission again, huh? Go to the <font color="LEVEL">Garden of Spirits</font>. Once there, defeat the <font color="LEVEL">Kerberos Liger, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Temptress, Fury Sylph Purka, Fury Kerberos Liger, and the Fury Kerberos Nero</font>, and bring back <font color="LEVEL">100 Unstable Spirit's Energy</font>. We'll be using those items for research.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Master Cyphona:<br>
Good to see you back safely. It looks like you've finished the mission. You must be a better warrior than I thought you were.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10830_TheLostGardenOfSpirits 34055-07.html">"Of course!"</Button>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Master Cyphona:<br>
Alright. Here's your reward. I'll have to give this to Magister Belas. As a warrior, there's only so much research I can do. Please go talk to Magister Belas after this. Well, but before that, you must build some trust first.
</body></html>

View File

@@ -0,0 +1,145 @@
/*
* This file is part of the L2J Mobius project.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package quests.Q10830_TheLostGardenOfSpirits;
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.Q10829_InSearchOfTheCause.Q10829_InSearchOfTheCause;
/**
* The Lost Garden of Spirits (10830)
* @URL https://l2wiki.com/The_Lost_Garden_of_Spirits
* @author Gigi
*/
public final class Q10830_TheLostGardenOfSpirits extends Quest
{
// NPC
private static final int CYPHONIA = 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
};
// Items
private static final int UNSTABLE_SPIRITS_ENERGY = 45821;
private static final int SOE = 46158;
// Misc
private static final int MIN_LEVEL = 100;
public Q10830_TheLostGardenOfSpirits()
{
super(10830);
addStartNpc(CYPHONIA);
addTalkId(CYPHONIA);
addKillId(MONSTERS);
registerQuestItems(UNSTABLE_SPIRITS_ENERGY);
addCondMinLevel(MIN_LEVEL, "34055-00.htm");
addCondCompletedQuest(Q10829_InSearchOfTheCause.class.getSimpleName(), "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-02.htm":
case "34055-03.htm":
{
htmltext = event;
break;
}
case "34055-04.htm":
{
qs.startQuest();
htmltext = event;
break;
}
case "34055-07.html":
{
giveItems(player, SOE, 1);
addExpAndSp(player, 5932440000L, 14237820);
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);
switch (qs.getState())
{
case State.CREATED:
{
htmltext = "34055-01.htm";
break;
}
case State.STARTED:
{
if (qs.isCond(1))
{
htmltext = "34055-05.html";
}
else
{
htmltext = "34055-06.html";
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
{
final QuestState qs = getQuestState(killer, false);
if ((qs != null) && qs.isCond(1) && giveItemRandomly(killer, npc, UNSTABLE_SPIRITS_ENERGY, 1, 100, 0.5, true))
{
qs.setCond(2, true);
}
return super.onKill(npc, killer, isSummon);
}
}

View File

@@ -409,6 +409,7 @@ import quests.Q10825_ForVictory.Q10825_ForVictory;
import quests.Q10826_LuckBefittingOfTheStatus.Q10826_LuckBefittingOfTheStatus; import quests.Q10826_LuckBefittingOfTheStatus.Q10826_LuckBefittingOfTheStatus;
import quests.Q10827_StepUpToLead.Q10827_StepUpToLead; import quests.Q10827_StepUpToLead.Q10827_StepUpToLead;
import quests.Q10829_InSearchOfTheCause.Q10829_InSearchOfTheCause; import quests.Q10829_InSearchOfTheCause.Q10829_InSearchOfTheCause;
import quests.Q10830_TheLostGardenOfSpirits.Q10830_TheLostGardenOfSpirits;
/** /**
* @author NosBit * @author NosBit
@@ -808,7 +809,8 @@ public class QuestMasterHandler
Q10825_ForVictory.class, Q10825_ForVictory.class,
Q10826_LuckBefittingOfTheStatus.class, Q10826_LuckBefittingOfTheStatus.class,
Q10827_StepUpToLead.class, Q10827_StepUpToLead.class,
Q10829_InSearchOfTheCause.class Q10829_InSearchOfTheCause.class,
Q10830_TheLostGardenOfSpirits.class
}; };
public static void main(String[] args) public static void main(String[] args)