Skip to content
Snippets Groups Projects
Commit 764e283d authored by Zoey76's avatar Zoey76
Browse files

BETA: Adding two missing quests:

	* The Call of Antharas (903)
	* The Call of Valakas (906)
	* Minor typo fix in Dragon Trophy - Valakas (907) quest.

'''Note:''' High Five feature.
parent 8f03f0ec
No related branches found
No related tags found
No related merge requests found
Showing
with 462 additions and 1 deletion
<html><body>Watcher of Antharas Theodric:<br>
You have a <font color="LEVEL">Portal Stone</font>... it means that you are one of the few who can challenge Antharas.<br>
Do you want to hear something interesting about Antharas's underlings, the Tarask Dragon and Behemoth Dragon?<br>
<a action="bypass -h Quest Q00903_TheCallOfAntharas 30755-05.htm">Ask about Antharas's underlings.</a>
</body></html>
\ No newline at end of file
<html><body>Watcher of Antharas Theodric:<br>
Thank you for obtaining the Tarask Dragon and Behemoth Dragon leathers.<br>
If you obtain them again, bring them to me.<br>
(This quest can be completed only once a day. This quest gets initialized everyday at 6:30 am.)
</body></html>
\ No newline at end of file
<html><body>Watcher of Antharas Theodric:<br>
You are not qualified to hear my request...<br>
(Only characters above level 83 can undertake this quest.)
</body></html>
\ No newline at end of file
<html><body>Watcher of Antharas Theodric:<br>
The fact that you don't have the <font color="LEVEL">Portal Stone</font> means you did not satisfy the minimum requirement for this request.<br>
If you really want to hear my request, you must first be recognized by <font color="LEVEL">Gabrielle</font> in Giran Village.
</body></html>
\ No newline at end of file
<html><body>Watcher of Antharas Theodric:<br>
The leather from these beasts contains a mysterious power of the land dragon Antharas. Why is this interesting? Imagine the possibilities... Antharas leather jackets... or boots... well maybe nothing quite so silly but you get the idea.<br>
I would love to have some of their hides in order to test out my theory.<br>
If you happen to fight Antharas and kill these beasts would you bring me their leather? I would be willing to compensate you for your efforts.<br>
<a action="bypass -h Quest Q00903_TheCallOfAntharas 30755-06.html">Agree to help.</a>
</body></html>
\ No newline at end of file
<html><body>Watcher of Antharas Theodric:<br>
Thank you sir! Please let me know once you have obtained the leather from these beasts.
</body></html>
\ No newline at end of file
<html><body>Watcher of Antharas Theodric:<br>
Very kind of you sir! And here is you rewa-wait a second. You don't any of the items I have requested. Very sneaky of you sir... very sneaky. Come back when you have Behemoth Dragon Leather and Tarask Dragon Leather.
</body></html>
\ No newline at end of file
<html><body>Watcher of Antharas Theodric:<br>
Hmmm... leather from the Tarask and Behemoth dragons? Let's see... yes these do appear to contain the power Antharas in these hides. I appreciate your time in gathering these for me. Now give me a moment...<br>
Here, this scroll is made from the same leather you have collected from me. It allows you to teleport instantly to the Heart of Warding.<br>
While you should have no need for it now, when the time comes for you to face Antharas again this should save you some leg work.
</body></html>
\ No newline at end of file
/*
* Copyright (C) 2004-2013 L2J Server
*
* This file is part of L2J Server.
*
* L2J Server 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 Server 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.Q00903_TheCallOfAntharas;
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.QuestState.QuestType;
import com.l2jserver.gameserver.model.quest.State;
import com.l2jserver.gameserver.util.Util;
/**
* The Call of Antharas (903)
* @author Zoey76
*/
public class Q00903_TheCallOfAntharas extends Quest
{
// NPC
private static final int THEODRIC = 30755;
// Monsters
private static final int BEHEMOTH_DRAGON = 29069;
private static final int TARASK_DRAGON = 29190;
// Items
private static final int TARASK_DRAGONS_LEATHER_FRAGMENT = 21991;
private static final int BEHEMOTH_DRAGON_LEATHER = 21992;
private static final int SCROLL_ANTHARAS_CALL = 21897;
private static final int PORTAL_STONE = 3865;
// Misc
private static final int MIN_LEVEL = 83;
private Q00903_TheCallOfAntharas(int questId, String name, String descr)
{
super(questId, name, descr);
addStartNpc(THEODRIC);
addTalkId(THEODRIC);
addKillId(BEHEMOTH_DRAGON, TARASK_DRAGON);
registerQuestItems(TARASK_DRAGONS_LEATHER_FRAGMENT, BEHEMOTH_DRAGON_LEATHER);
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
final QuestState st = player.getQuestState(getName());
if (st == null)
{
return null;
}
String htmltext = null;
if (player.getLevel() >= MIN_LEVEL)
{
switch (event)
{
case "30755-05.htm":
{
if ((player.getLevel() >= MIN_LEVEL) && st.hasQuestItems(PORTAL_STONE))
{
htmltext = event;
}
break;
}
case "30755-06.html":
{
if ((player.getLevel() >= MIN_LEVEL) && st.hasQuestItems(PORTAL_STONE))
{
st.startQuest();
htmltext = event;
}
break;
}
}
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
final QuestState st = player.getQuestState(getName());
if (st == null)
{
return getNoQuestMsg(player);
}
String htmltext = getNoQuestMsg(player);
switch (st.getState())
{
case State.CREATED:
{
if (player.getLevel() < MIN_LEVEL)
{
htmltext = "30755-03.html";
}
else if (!st.hasQuestItems(PORTAL_STONE))
{
htmltext = "30755-04.html";
}
else
{
htmltext = "30755-01.htm";
}
break;
}
case State.STARTED:
{
switch (st.getCond())
{
case 1:
{
htmltext = "30755-07.html";
break;
}
case 2:
{
st.giveItems(SCROLL_ANTHARAS_CALL, 1);
st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
st.exitQuest(QuestType.DAILY, true);
htmltext = "30755-08.html";
break;
}
}
break;
}
case State.COMPLETED:
{
if (!st.isNowAvailable())
{
htmltext = "30755-02.html";
}
else
{
st.setState(State.CREATED);
if (player.getLevel() < MIN_LEVEL)
{
htmltext = "30755-03.html";
}
else if (!st.hasQuestItems(PORTAL_STONE))
{
htmltext = "30755-04.html";
}
else
{
htmltext = "30755-01.htm";
}
}
break;
}
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance killer, boolean isPet)
{
final QuestState st = killer.getQuestState(getName());
if ((st != null) && Util.checkIfInRange(1500, npc, killer, false))
{
switch (npc.getNpcId())
{
case BEHEMOTH_DRAGON:
{
st.giveItems(BEHEMOTH_DRAGON_LEATHER, 1);
st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
break;
}
case TARASK_DRAGON:
{
st.giveItems(TARASK_DRAGONS_LEATHER_FRAGMENT, 1);
st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
break;
}
}
if (st.hasQuestItems(BEHEMOTH_DRAGON_LEATHER) && st.hasQuestItems(TARASK_DRAGONS_LEATHER_FRAGMENT))
{
st.setCond(2, true);
}
}
return super.onKill(npc, killer, isPet);
}
public static void main(String[] args)
{
new Q00903_TheCallOfAntharas(903, Q00903_TheCallOfAntharas.class.getSimpleName(), "The Call of Antharas");
}
}
<html><body>Watcher of Valakas Klein:<br>
Is it hot in here or is it just me? Ha, that one never gets old... well, maybe a little. As you probably know this path leads to the lair of Valakas.<br>
Oh how many have come and became one with the flame that fills these halls...<br>
Valakas calls and those brave souls answer. Not like you though. Destiny has brought you here to face and defeat Valakas.<br>
But Valakas has guardians... do you know about the Lavasaurus Alpha?<br>
<a action="bypass -h Quest Q00906_TheCallOfValakas 31540-05.htm">"No, but I think I've got time for a history lesson."</a></body></html>
\ No newline at end of file
<html><body>Watcher of Valakas Klein:<br>
Thank you for bringing back a Lavasaurus Alpha fragment.<br>
If you obtain them again, bring them to me.<br>
(This quest can be completed only once a day. This quest gets initialized everyday at 6:30 am.)
</body></html>
\ No newline at end of file
<html><body>Watcher of Valakas Klein:<br>
You are not qualified to hear my request...<br>
(Only characters above level 83 can undertake this quest.)
</body></html>
\ No newline at end of file
<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 request.<br>
If you really want to hear my request, you must first obtain a <font color="LEVEL">Vacualite Floating Stone</font>.
</body></html>
\ No newline at end of file
<html><body>Watcher of Valakas Klein:<br>
Would you believe that the Lavasaurus never used to exist? The Lavasaurus Alpha was the very first Lavasaurus ever created by Valakas here in the Forge of the Gods.<br>
Valakas created it to protect his lair. Created using a piece of Valakas's own energy.<br>
Now, that is a bit of information worth having. If you could bring me a piece of the Lavasaurus Alpha I bet I could make you an item that would aid you in your attack against Valakas.<br>
<a action="bypass -h Quest Q00906_TheCallOfValakas 31540-06.html">Agree to gather the fragment.</a>
</body></html>
\ No newline at end of file
<html><body>Watcher of Valakas Klein:<br>
Excellent! I await your return with the Lavasaurus Alpha fragment. I'll be right here... as always. Won't move a step. Never have. In fact I haven't been outside this cave for who knows how long. Is Heine still around? It is? I swear one day the ocean is going to swallow that place.
</body></html>
\ No newline at end of file
<html><body>Watcher of Valakas Klein:<br>
Watch me pull a Lavasaurus Alpha fragment out of my hat. Ta-da! What? I don't have a Lavasaurus Alpha? What a coincidence, neither do you.<br>
Quit wasting my time... it's... valuable? Come talk to me when you have a Lavasaurus Alpha fragment.
</body></html>
\ No newline at end of file
<html><body>Watcher of Valakas Klein:<br>
Would you look at that... a real Lavasaurus Alpha fragment.<br>
Give me a moment while I add this to the pile of Lavasaurus Alpha fragments all the other adventurers brought me... what? Oh, that's right. I said I would make you something with it.<br>
Well, I've got to be honest here... I didn't think you, or any of the others, would actually be successful. What little magic I was able to extract I can put into small objects, such as this scroll. This will bring you back here any time in an instant... but don't expect much more out of it.<br>
Why would you want to come back here? I don't know... maybe because Valakas seems to come back to life every couple of weeks.<br>
I need people like you so I can stay in business.
</body></html>
\ No newline at end of file
/*
* Copyright (C) 2004-2013 L2J Server
*
* This file is part of L2J Server.
*
* L2J Server 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 Server 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.Q00906_TheCallOfValakas;
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.QuestState.QuestType;
import com.l2jserver.gameserver.model.quest.State;
import com.l2jserver.gameserver.util.Util;
/**
* The Call of Valakas (906)
* @author Zoey76
*/
public class Q00906_TheCallOfValakas extends Quest
{
// NPC
private static final int KLEIN = 31540;
// Monster
private static final int LAVASAURUS_ALPHA = 29029;
// Items
private static final int LAVASAURUS_ALPHA_FRAGMENT = 21993;
private static final int SCROLL_VALAKAS_CALL = 21895;
private static final int VACUALITE_FLOATING_STONE = 7267;
// Misc
private static final int MIN_LEVEL = 83;
private Q00906_TheCallOfValakas(int questId, String name, String descr)
{
super(questId, name, descr);
addStartNpc(KLEIN);
addTalkId(KLEIN);
addKillId(LAVASAURUS_ALPHA);
registerQuestItems(LAVASAURUS_ALPHA_FRAGMENT);
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
final QuestState st = player.getQuestState(getName());
if (st == null)
{
return null;
}
String htmltext = null;
if (player.getLevel() >= MIN_LEVEL)
{
switch (event)
{
case "31540-05.htm":
{
if ((player.getLevel() >= MIN_LEVEL) && st.hasQuestItems(VACUALITE_FLOATING_STONE))
{
htmltext = event;
}
break;
}
case "31540-06.html":
{
if ((player.getLevel() >= MIN_LEVEL) && st.hasQuestItems(VACUALITE_FLOATING_STONE))
{
st.startQuest();
htmltext = event;
}
break;
}
}
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
final QuestState st = player.getQuestState(getName());
if (st == null)
{
return getNoQuestMsg(player);
}
String htmltext = getNoQuestMsg(player);
switch (st.getState())
{
case State.CREATED:
{
if (player.getLevel() < MIN_LEVEL)
{
htmltext = "31540-03.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:
{
htmltext = "31540-07.html";
break;
}
case 2:
{
st.giveItems(SCROLL_VALAKAS_CALL, 1);
st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
st.exitQuest(QuestType.DAILY, true);
htmltext = "31540-08.html";
break;
}
}
break;
}
case State.COMPLETED:
{
if (!st.isNowAvailable())
{
htmltext = "31540-02.html";
}
else
{
st.setState(State.CREATED);
if (player.getLevel() < MIN_LEVEL)
{
htmltext = "31540-03.html";
}
else if (!st.hasQuestItems(VACUALITE_FLOATING_STONE))
{
htmltext = "31540-04.html";
}
else
{
htmltext = "31540-01.htm";
}
}
break;
}
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance killer, boolean isPet)
{
final QuestState st = killer.getQuestState(getName());
if ((st != null) && Util.checkIfInRange(1500, npc, killer, false))
{
st.giveItems(LAVASAURUS_ALPHA_FRAGMENT, 1);
st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
st.setCond(2, true);
}
return super.onKill(npc, killer, isPet);
}
public static void main(String[] args)
{
new Q00906_TheCallOfValakas(906, Q00906_TheCallOfValakas.class.getSimpleName(), "The Call of Valakas");
}
}
......@@ -38,7 +38,7 @@ public class Q00907_DragonTrophyValakas extends Quest
private static final int VALAKAS = 29028;
// Items
private static final int MEDAL_OF_GLORY = 21874;
private static final int VACUALITE_FLOATING_STONE = 3865;
private static final int VACUALITE_FLOATING_STONE = 7267;
// Misc
private static final int MIN_LEVEL = 84;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment