This commit is contained in:
mobius
2015-01-01 20:02:50 +00:00
parent eeae660458
commit a6a3718849
17894 changed files with 2818932 additions and 0 deletions

View File

@@ -0,0 +1,4 @@
<html><body>Watcher of Valakas Klein:<br>
You again... I thought I gave you a different errand. Or was it someone else?<br>
<a action="bypass -h Quest Q10505_JewelOfValakas 31540-05.htm">"No, you've given me a few things to do."</a>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Watcher of Valakas Klein:<br>
You do not have the ability to hear my request... Please come back after raising your caliber...<br>
(Only characters above level 83 can undertake this quest.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Watcher of Valakas Klein:<br>
Praise unto you for your great achievement in fulfilling my request...<br>
(You have already completed this quest.)
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Watcher of Valakas Klein:<br>
The fact that you don't have the <font color="LEVEL">Vacualite Floating Stone</font> means you did not satisfy the minimum requirement for this mission.<br>
If you really want to hear my request, you must first obtain a <font color="LEVEL">Vacualite Floating Stone</font>.
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Valakas Klein:<br>
Really? Okay... Hmm...<br>
Why don't you take... ah... this <font color="LEVEL">Empty Crystal</font> and... fill it with... the energy of Valakas.<br>
<a action="bypass -h Quest Q10505_JewelOfValakas 31540-06.htm">"Fill the crystal with energy... why?"</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Valakas Klein:<br>
Never you mind, that's why!<br>
You think it is easy coming up with different reasons for you adventurers to go fight Valakas? He's big, bad, evil and scary. You want a reward for killing him then you bring me back a <font color="LEVEL">Crystal filled with the energy of Valakas!</font><br>
<a action="bypass -h Quest Q10505_JewelOfValakas 31540-07.html">"Okay... I'll go fill the crystal with the energy of Valakas"</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Valakas Klein:<br>
Good. Here is the <font color="LEVEL">Empty Crystal</font>.<br>
As always, the same rules apply. Don't go alone, it's dangerous in there, be sure to <font color="LEVEL">gather a large group of skilled adventurers</font>, and try not to die.<br>
Kill the beast, grab the energy, and visit me once you have completed your task.
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Watcher of Valakas Klein:<br>
If you truly defeat the fire dragon, that <font color="LEVEL">Empty Crystal</font> shall be filled with Valakas's energy. Now, please be on your way. I shall be watching you.
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Watcher of Valakas Klein:<br>
Excellent. I can finally make my Valakas Martini. I would share with you, but given your condition of being alive I wouldn't recommend it. It has a killer bite... literally.<br>
Oh, don't look so upset... once you've become undead maybe you can try a sip, but until that time you are just going to have to accept the consolation prize.<br>
The Jewel of Valakas... a one way trip straight to the doorstep of Valakas himself. It will come in handy so you don't have to go through the business just to get there.<br>
Now if you will excuse me... its me time.
</body></html>

View File

@@ -0,0 +1,7 @@
<html><body>Watcher of Valakas Klein:<br>
Praise unto you for your great feat!<br>
You have heard my request.<br>
You have obtained the fire dragon's energy.<br>
But the fire dragon has not fully retreated...<br>
When you go against the beast in earnest, I shall give this to you...
</body></html>

View File

@@ -0,0 +1,172 @@
/*
* Copyright (C) 2004-2014 L2J DataPack
*
* This file is part of L2J DataPack.
*
* L2J DataPack 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.
*
* L2J DataPack 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.Q10505_JewelOfValakas;
import com.l2jserver.gameserver.enums.QuestSound;
import com.l2jserver.gameserver.model.actor.L2Npc;
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
import com.l2jserver.gameserver.model.quest.Quest;
import com.l2jserver.gameserver.model.quest.QuestState;
import com.l2jserver.gameserver.model.quest.State;
import com.l2jserver.gameserver.util.Util;
/**
* Jewel of Valakas (10505)
* @author Zoey76
*/
public class Q10505_JewelOfValakas extends Quest
{
// NPC
private static final int KLEIN = 31540;
// Monster
private static final int VALAKAS = 29028;
// Items
private static final int EMPTY_CRYSTAL = 21906;
private static final int FILLED_CRYSTAL_VALAKAS_ENERGY = 21908;
private static final int JEWEL_OF_VALAKAS = 21896;
private static final int VACUALITE_FLOATING_STONE = 7267;
// Misc
private static final int MIN_LEVEL = 83;
public Q10505_JewelOfValakas()
{
super(10505, Q10505_JewelOfValakas.class.getSimpleName(), "Jewel of Valakas");
addStartNpc(KLEIN);
addTalkId(KLEIN);
addKillId(VALAKAS);
registerQuestItems(EMPTY_CRYSTAL, FILLED_CRYSTAL_VALAKAS_ENERGY);
}
@Override
public void actionForEachPlayer(L2PcInstance player, L2Npc npc, boolean isSummon)
{
final QuestState st = getQuestState(player, false);
if ((st != null) && st.isCond(1) && Util.checkIfInRange(1500, npc, player, false))
{
st.takeItems(EMPTY_CRYSTAL, -1);
st.giveItems(FILLED_CRYSTAL_VALAKAS_ENERGY, 1);
st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
st.setCond(2, true);
}
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
final QuestState st = getQuestState(player, false);
if (st == null)
{
return null;
}
String htmltext = null;
if ((player.getLevel() >= MIN_LEVEL) && st.hasQuestItems(VACUALITE_FLOATING_STONE))
{
switch (event)
{
case "31540-05.htm":
case "31540-06.htm":
{
htmltext = event;
break;
}
case "31540-07.html":
{
st.startQuest();
st.giveItems(EMPTY_CRYSTAL, 1);
htmltext = event;
break;
}
}
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
{
executeForEachPlayer(killer, npc, isSummon, true, true);
return super.onKill(npc, killer, isSummon);
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
QuestState st = getQuestState(player, true);
if (st == null)
{
return getNoQuestMsg(player);
}
String htmltext = getNoQuestMsg(player);
switch (st.getState())
{
case State.CREATED:
{
if (player.getLevel() < MIN_LEVEL)
{
htmltext = "31540-02.html";
}
else if (!st.hasQuestItems(VACUALITE_FLOATING_STONE))
{
htmltext = "31540-04.html";
}
else
{
htmltext = "31540-01.htm";
}
break;
}
case State.STARTED:
{
switch (st.getCond())
{
case 1:
{
if (st.hasQuestItems(EMPTY_CRYSTAL))
{
htmltext = "31540-08.html";
}
else
{
st.giveItems(EMPTY_CRYSTAL, 1);
htmltext = "31540-09.html";
}
break;
}
case 2:
{
st.giveItems(JEWEL_OF_VALAKAS, 1);
st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
st.exitQuest(false, true);
htmltext = "31540-10.html";
break;
}
}
break;
}
case State.COMPLETED:
{
htmltext = "31540-03.html";
break;
}
}
return htmltext;
}
}