Quest Strange Things Afoot in the Valley (10799).

Contributed by gigilo1968.
This commit is contained in:
MobiusDev 2016-06-18 09:48:00 +00:00
parent ade690af59
commit f71f2e567d
12 changed files with 228 additions and 0 deletions

View File

@ -0,0 +1,4 @@
<html><body>Namo:<br>
I have no business with you.<br>
(Only Ertheia characters can perform this quest.)
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Namo:<br>
I'm sure you know about the dimensional rifts appearing all over Dragon Valley. The dragons have become very much weakened in recent days.<br>
The reduction of the dragons' strength and other dangers to us is a good thing, but there's also a problem. The dragons may be weakened, but there's been activity from them as a group, and this will grow into a huge problem.<br>And that's not all...<br>
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q10799_StrangeThingsAfootInTheValley 33973-02.htm">"What other problems are there?"</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Namo:<br>
Currently, the <font color="LEVEL">dragons</font> are active during the <font color="LEVEL">day</font> while the <font color="LEVEL">Undead</font> are up to no good at <font color="LEVEL">night</font>.<br>On top of that, we don't know which dimensional rifts are connected to which dimensions or what else we'll learn from Dragon Valley and that's a problem.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10799_StrangeThingsAfootInTheValley 33973-03.htm">"Is there a solution to all this?"</Button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Namo:<br>
We don't have any clear answers at the moment.<br>First, you and other Ertheia are to explore deep within Dragon Valley while we will continuously dispatching expeditions to find the reason and investigate current happenings.<br>
But, we can't be just content with this, and are continuously seeking help.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10799_StrangeThingsAfootInTheValley 33973-04.htm">"What kind of help do you need?"</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Namo:<br>
The southern region is generally more dangerous than the north.<br>
So for now, I want to send you to the less dangerous region to reduce the number of dragons and Undead there. On the north side of Dragon Valley, you'll find <font color="LEVEL">Mesmer Dragon, Gargoyle Dragon, Black Dragon, Emerald Dragon, Sand Dragon, Dragonblood Captain, Dragonblood Minion, Cave Servant Archer, Cave Servant Warrior, Metal Cave Servant, Iron Cave Servant, and Headless Knight</font>. You need to slay <font color="LEVEL">100</font> of them.<br>Until we can figure out where they're coming from and how to fix the situation, we're just going to have to try and remove the danger some other way.
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Namo:<br>
I don't think you're done catching all your monsters.
</body></html>

View File

@ -0,0 +1,6 @@
<html><body>Namo:<br>
I think you got all the dragons and Undead.<br>
Thank you. The changes in Dragon Valley were so unusual that everyone was just nervous all the time.<br>
If you were curious about the dimensional rifts in Dragon Valley, you can join us when we go investigating the next time.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10799_StrangeThingsAfootInTheValley 33973-07.html">"Sure, I'll join you."</Button>
</body></html>

View File

@ -0,0 +1,10 @@
<html><body>Namo:<br>
Got it. We're going to start investigating soon. I'll let you know when we start.<br>
Here's your reward for helping. What would you like as your reward?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10799_StrangeThingsAfootInTheValley giveReward_9546">30 Fire Stones</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10799_StrangeThingsAfootInTheValley giveReward_9547">30 Water Stones</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10799_StrangeThingsAfootInTheValley giveReward_9548">30 Earth Stones</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10799_StrangeThingsAfootInTheValley giveReward_9549">30 Wind Stones</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10799_StrangeThingsAfootInTheValley giveReward_9550">30 Dark Stones</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10799_StrangeThingsAfootInTheValley giveReward_9551">30 Holy Stones</Button>
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Namo:<br>
All right, here you go. I'll be giving you other helpful items aside from these. Thank you again for helping me.
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Namo:<br>
I don't trust you.<br>
(Characters must be Lv. 65 or above to perform this quest.)
</body></html>

View File

@ -0,0 +1,178 @@
/*
* 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.Q10799_StrangeThingsAfootInTheValley;
import java.util.HashSet;
import java.util.Set;
import com.l2jmobius.gameserver.enums.QuestSound;
import com.l2jmobius.gameserver.enums.Race;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import com.l2jmobius.gameserver.model.quest.Quest;
import com.l2jmobius.gameserver.model.quest.QuestState;
import com.l2jmobius.gameserver.model.quest.State;
import com.l2jmobius.gameserver.network.NpcStringId;
/**
* Strange Things Afoot in the Valley (10799)
* @URL https://l2wiki.com/Strange_Things_Afoot_in_the_Valley
* @author Gigi
*/
public class Q10799_StrangeThingsAfootInTheValley extends Quest
{
// NPCs
private static final int NAMO = 33973;
// Monsters
private static final int[] MONSTERS =
{
23423, // Mesmer Dragon
23424, // Gargoyle Dragon
23425, // Black Dragon
23427, // Sand Dragon
23428, // Captain Dragonblood
23429, // Minion Dragonblood
23436, // Cave Servant Archer
23437, // Cave Servant Warrior
23438, // Metallic Cave Servant
23439, // Iron Cave Servant
23440, // Headless Knight
23447 // Gust Spiral
};
// Items
private static final int EAS = 960;
// Misc
private static final int MIN_LEVEL = 76;
private static final int MAX_LEVEL = 85;
private static final String KILL_COUNT_VAR = "KillCount";
public Q10799_StrangeThingsAfootInTheValley()
{
super(10799);
addStartNpc(NAMO);
addTalkId(NAMO);
addKillId(MONSTERS);
addCondRace(Race.ERTHEIA, "33973-00.htm");
addCondLevel(MIN_LEVEL, MAX_LEVEL, "33973-09.htm");
}
@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 "33973-02.htm":
case "33973-03.htm":
case "33973-07.html":
{
break;
}
case "33973-04.htm":
{
qs.startQuest();
break;
}
default:
{
if (event.startsWith("giveReward_") && qs.isCond(2) && (player.getLevel() >= MIN_LEVEL))
{
final int itemId = Integer.parseInt(event.replace("giveReward_", ""));
qs.exitQuest(false, true);
giveStoryQuestReward(player, 196);
giveItems(player, EAS, 10);
giveItems(player, itemId, 30);
addExpAndSp(player, 76658400, 18398);
htmltext = "33973-08.html";
}
}
}
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 = "33973-01.htm";
break;
}
case State.STARTED:
{
htmltext = (qs.isCond(1)) ? "33973-05.html" : "33973-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))
{
int count = qs.getInt(KILL_COUNT_VAR);
qs.set(KILL_COUNT_VAR, ++count);
if (count >= 100)
{
qs.setCond(2, true);
}
else
{
sendNpcLogList(killer);
playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
return super.onKill(npc, killer, isSummon);
}
@Override
public Set<NpcLogListHolder> getNpcLogList(L2PcInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
final int killCount = qs.getInt(KILL_COUNT_VAR);
if (killCount > 0)
{
final Set<NpcLogListHolder> holder = new HashSet<>();
holder.add(new NpcLogListHolder(NpcStringId.KILL_MONSTERS_IN_THE_DRAGON_VALLEY, killCount));
return holder;
}
}
return super.getNpcLogList(player);
}
}

View File

@ -319,6 +319,7 @@ import quests.Q10792_LettersFromTheQueenForestOfTheDead.Q10792_LettersFromTheQue
import quests.Q10793_SaveTheSouls.Q10793_SaveTheSouls;
import quests.Q10795_LettersFromTheQueenWallOfAgros.Q10795_LettersFromTheQueenWallOfAgros;
import quests.Q10798_LettersFromTheQueenDragonValley.Q10798_LettersFromTheQueenDragonValley;
import quests.Q10799_StrangeThingsAfootInTheValley.Q10799_StrangeThingsAfootInTheValley;
import quests.Q10811_ExaltedOneWhoFacesTheLimit.Q10811_ExaltedOneWhoFacesTheLimit;
import quests.Q10812_FacingSadness.Q10812_FacingSadness;
import quests.Q10813_ForGlory.Q10813_ForGlory;
@ -634,6 +635,7 @@ public class QuestMasterHandler
Q10793_SaveTheSouls.class,
Q10795_LettersFromTheQueenWallOfAgros.class,
Q10798_LettersFromTheQueenDragonValley.class,
Q10799_StrangeThingsAfootInTheValley.class,
Q10811_ExaltedOneWhoFacesTheLimit.class,
Q10812_FacingSadness.class,
Q10813_ForGlory.class,