Quest In This Quiet Place (489).

Contributed by gigilo1968.
This commit is contained in:
MobiusDev
2016-04-28 20:26:20 +00:00
parent 3c486e6993
commit 7af31aa563
10 changed files with 177 additions and 0 deletions

View File

@@ -0,0 +1,4 @@
<html><body>Priest Bastian:<br>
Welcome! You brought the exact amount that was requested. Thanks to you, the peace in this place can be maintainde. <br>
Here is the reward that I mentioned. Goodbye.
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Adventurers' Guide:<br>
Hear ye! Hear ye!<br>
All adventurers planning to visit the <font color="LEVEL">Shrine of Loyalty</font> should listen to this important information. Though it was once widely visited by Aden's warriors and mages, increased monster activity has drastically reduced the number of visitors. This situation is something that Priest Bastian wishes remedied as soon as possible.<br>Any persons willing to help should see me for further details.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00489_InThisQuietPlace 32327-02.htm">"Tell me more!"</Button>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Adventurers' Guide:<br>
<font color="LEVEL">Grave Scarabs, Scavenger Scarabs, Grave Ants, Scavenger Ants, Shrine Knights and Shrine Royal Guards</font> have infested the Shrine of Loyalty.<br>
But it's never that simple, right? Some of them are infused with <font color="LEVEL">Traces of Evil Spirit</font>, possibly as many as <font color="LEVEL">700</font>! But no one would agree to kill that many, so if you can collect <font color="LEVEL">77</font> of them for now, I'm authorized to give a reward.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00489_InThisQuietPlace 32327-03.htm">"What will you do with them?"</Button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Adventurers' Guide:<br>
Me? Nothing. I'm not that kind of guide. <font color="LEVEL">Priest Bastian</font> in the <font color="LEVEL">Town of Goddard</font> is the knowledgeable one. He will take the samples and pay you for your time. Will you take the mission?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00489_InThisQuietPlace 32327-04.htm">"Yes."</Button>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Adventurers' Guide:<br>
Excellent. Now to review the mission...<br>
Kill <font color="LEVEL">Grave Scarabs, Scavenger Scarabs, Grave Ants, Scavenger Ants, Shrine Knights and Shrine Royal Guards</font> and collect <font color="LEVEL">77 Traces of Evil Spirit</font>. Then take them to <font color="LEVEL">Priest Bastian in the Town of Goddard</font>.
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Adventurers' Guide:<br>
One more time:<br>
Go to the Shrine of Loyalty and kill <font color="LEVEL">Grave Scarabs, Scavenger Scarabs, Grave Ants, Scavenger Ants, Shrine Knights and Shrine Royal Guards</font>. Bring <font color="LEVEL">77 Traces of Evil Spirit</font> to <font color="LEVEL">Priest Bastian in the Town of Goddard</font>, who will pay you for your time.
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Adventurers' Guide:<br>
You already did what I asked today, remember?<br>
Thanks, but I don't need anything else right now.<br>
(You can only undertake this quest once a day. It resets every day at 6:30 AM.)
</body></html>

View File

@@ -0,0 +1,141 @@
/*
* 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.Q00489_InThisQuietPlace;
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.holders.ItemHolder;
import com.l2jmobius.gameserver.model.quest.Quest;
import com.l2jmobius.gameserver.model.quest.QuestState;
/**
* In This Quiet Place (489)
* @URL https://l2wiki.com/In_This_Quiet_Place
* @author Gigi
*/
public class Q00489_InThisQuietPlace extends Quest
{
// NPCs
private static final int ADVANTURES_GUIDE = 32327;
private static final int BASTIAN = 31280;
// MONSTERS
private static final int GRAVE_SCARAB = 21646;
private static final int SCAVENGER_SCARAB = 21647;
private static final int GRAVE_ANT = 21648;
private static final int SCAVANGER_ANT = 21649;
private static final int SHRINE_KNIGHT = 21650;
private static final int SHRINE_ROYAL_GUARD = 21651;
// Items
private static final int TRACE_OF_EVIL_SPIRIT = 19501;
private static final ItemHolder ADENA = new ItemHolder(57, 283800);
// Misc
private static final int MIN_LEVEL = 75;
private static final int MAX_LEVEL = 79;
// Reward
private static final int EXP_REWARD = 19890000;
private static final int SP_REWARD = 4773;
public Q00489_InThisQuietPlace()
{
super(489, Q00489_InThisQuietPlace.class.getSimpleName(), "In This Quiet Place");
addStartNpc(ADVANTURES_GUIDE);
addTalkId(ADVANTURES_GUIDE, BASTIAN);
registerQuestItems(TRACE_OF_EVIL_SPIRIT);
addKillId(GRAVE_SCARAB, SCAVENGER_SCARAB, GRAVE_ANT, SCAVANGER_ANT, SHRINE_KNIGHT, SHRINE_ROYAL_GUARD);
addCondLevel(MIN_LEVEL, MAX_LEVEL, "no_level.html");
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
String htmltext = event;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return getNoQuestMsg(player);
}
switch (event)
{
case "32327-02.htm":
case "32327-03.htm":
{
htmltext = event;
break;
}
case "32327-04.htm":
{
qs.startQuest();
htmltext = event;
break;
}
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
switch (npc.getId())
{
case ADVANTURES_GUIDE:
{
if (qs.isCreated())
{
htmltext = "32327-01.htm";
}
else if (qs.getCond() > 0)
{
htmltext = "32327-05.html";
}
else if (qs.isCompleted() && !qs.isNowAvailable())
{
htmltext = "32327-07.html";
}
break;
}
case BASTIAN:
{
if (qs.isCond(2) && (getQuestItemsCount(player, TRACE_OF_EVIL_SPIRIT) >= 77))
{
takeItems(player, TRACE_OF_EVIL_SPIRIT, -1);
giveItems(player, ADENA);
addExpAndSp(player, EXP_REWARD, SP_REWARD);
qs.exitQuest(QuestType.DAILY, true);
htmltext = "31280-01.html";
}
break;
}
}
return htmltext;
}
@Override
public String onKill(L2Npc monster, L2PcInstance killer, boolean isSummon)
{
final QuestState qs = getQuestState(killer, false);
if ((qs != null) && qs.isCond(1) && giveItemRandomly(killer, monster, TRACE_OF_EVIL_SPIRIT, 1, 77, 0.2, true))
{
qs.setCond(2, true);
}
return super.onKill(monster, killer, isSummon);
}
}

View File

@@ -0,0 +1,3 @@
<html><body>You don't meet level requirements<br>
(Quest available from level 75 - 79)
</body></html>

View File

@@ -135,6 +135,7 @@ import quests.Q00472_ChallengeSteamCorridor.Q00472_ChallengeSteamCorridor;
import quests.Q00473_InTheCoralGarden.Q00473_InTheCoralGarden; import quests.Q00473_InTheCoralGarden.Q00473_InTheCoralGarden;
import quests.Q00485_HotSpringWater.Q00485_HotSpringWater; import quests.Q00485_HotSpringWater.Q00485_HotSpringWater;
import quests.Q00488_WondersOfCaring.Q00488_WondersOfCaring; import quests.Q00488_WondersOfCaring.Q00488_WondersOfCaring;
import quests.Q00489_InThisQuietPlace.Q00489_InThisQuietPlace;
import quests.Q00490_DutyOfTheSurvivor.Q00490_DutyOfTheSurvivor; import quests.Q00490_DutyOfTheSurvivor.Q00490_DutyOfTheSurvivor;
import quests.Q00492_TombRaiders.Q00492_TombRaiders; import quests.Q00492_TombRaiders.Q00492_TombRaiders;
import quests.Q00494_IncarnationOfGreedZellakaGroup.Q00494_IncarnationOfGreedZellakaGroup; import quests.Q00494_IncarnationOfGreedZellakaGroup.Q00494_IncarnationOfGreedZellakaGroup;
@@ -568,6 +569,7 @@ final class QuestMasterHandler
Q10465_SoulFrostSword.class, Q10465_SoulFrostSword.class,
Q10472_WindsOfFate_EncroachingShadows.class, Q10472_WindsOfFate_EncroachingShadows.class,
Q00488_WondersOfCaring.class, Q00488_WondersOfCaring.class,
Q00489_InThisQuietPlace.class,
Q10501_ZakenEmbroideredSoulCloak.class, Q10501_ZakenEmbroideredSoulCloak.class,
Q10502_FreyaEmbroideredSoulCloak.class, Q10502_FreyaEmbroideredSoulCloak.class,
Q10503_FrintezzaEmbroideredSoulCloak.class, Q10503_FrintezzaEmbroideredSoulCloak.class,