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,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
You're too weak to enter Dragon Valley.<br>
Turn back. There is nothing for you here.<br>
(Only characters level 80 or above may do this quest)
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
Why are you here?<br>
Are you trying to enter Dragon Valley? Don't you know of the terrors in that place?<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-02.html">"I'm strong enough. I'm not afraid."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
How arrogant. But... How sad it would be, if you were all talk. I've seen many like you, you know. All talk; none have proven their strength.<br>
Most people run from the monsters, and those brave enough to fight are soon enough killed.<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-03.html">"I'm different."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
Then prove it! If I told you to defeat the servants of the land dragon known as the <font color="LEVEL">Wings of Sand</font>... would that be possible?<br>
...If you can show me that much strength, you can be compared to... Yes, can be compared to the <font color="LEVEL">Legendary Hero</font>.<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-04.htm">"Legend?"</a>
</body></html>

View File

@@ -0,0 +1,6 @@
<html><body>Watcher of Antharas Gilmore:<br>
Yes. The name of that dark elf is... No, it doesn't really matter what his name was... nor his race.<br>
He proved his strength, and he challenged the land dragon alone even after I warned him. He could not defeat the land dragon Antharas, but his strength was shocking.<br>
When you say you'll prove it, it means you'll challenge this legend.<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-05.html">"And I will."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
Then prove it with your skills, not words! You'll get a <font color="LEVEL">Large Dragon Bone</font> when you defeat the monsters in this region. Bring the bone to one of the <font color="LEVEL">Dragon Votrexes</font> found in many places in the Dragon Valley, You will meet one of the servant of the land dragon.<br>
Kill a <font color="LEVEL">Emerald Horn, Dust Rider, Bleeding Fly, Black Dagger Wing, Shadow Summoner, Spike Slasher, or a Muscle Bomber</font> and bring their <font color="LEVEL">Large Dragon Skull</font>.<br>
Of course, that means you'd have to kill each of them at least once.
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Watcher of Antharas Gilmore:<br>
You have not done all that I asked of you. Remember that you have to have killed seven dragons at least once each. If you haven't killed at least one <font color="LEVEL">Emerald Horn, Dust Rider, Bleeding Fly, Black Dagger Wing, Shadow Summoner, Spike Slasher, and Muscle Bomber</font> each, then you're not done.<br>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
You've brought all the bones I've requested! Excellent.<br>
There's something I have that will suit you, but I'm not sure what will suit you best.<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-08.html">"Let me see?"</a>
</body></html>

View File

@@ -0,0 +1,14 @@
<html><body>Watcher of Antharas Gilmore:<br>
Okay. Choose.<br>
<a action="bypass -h Quest Q00254_LegendaryTales 13467">Vesper Thrower</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 13466">Vesper Singer</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 13465">Vesper Caster</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 13464">Vesper Retributer</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 13463">Vesper Avenger</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 13457">Vesper Cutter</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 13458">Vesper Slasher</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 13459">Vesper Buster</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 13460">Vesper Sharper</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 13461">Vesper Fighter</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 13462">Vesper Stormer</a>
</body></html>

View File

@@ -0,0 +1,4 @@
<html><body>Watcher of Antharas Gilmore:<br>
I will remember your achievements. Your story will become a legend someday!<br>
I hope the item you've selected will add to your story.
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Watcher of Antharas Gilmore:<br>
You must bring 7 Large Dragon Skulls for your reward! Where's the Large Dragon Skull that you promised me?
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
True, unless you've been around for as long as I have it might be new to you and you wouldn't be able to tell where the skull comes from.<br>
Show me ones you've collected.<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-15.html">"Here."</a>
</body></html>

View File

@@ -0,0 +1,11 @@
<html><body>Watcher of Antharas Gilmore:<br>
Hm, I see. You've brought a skull. Okay, then ask away.<br><br>
<a action="bypass -h Quest Q00254_LegendaryTales 25718">"Do I have a Emerald Horn skull?"</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 25719">"Do I have a Dust Rider skull?"</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 25720">"Do I have a Bleeding Fly skull?"</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 25721">"Do I have a Black Dagger Wyrm skull?"</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 25722">"Do I have a Shadow Summoner skull?"</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 25723">"Do I have a Spike Slasher skull?"</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 25724">"Do I have a Muscle Bomber skull?"</a><br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-20.html">"No thanks. Goodbye."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
No, the skull contains a certain characteristic that this one does not have. I can say that this is not their skull.<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-15.html">"What about others skulls I have?"</a><br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-20.html">"Goodbye."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
Nope, you do not have any skulls that match theirs.<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-15.html">"What about others skulls I have?"</a><br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-20.html">"Goodbye."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
Hmmm... it doesn't look like you have any dragon skulls that look like this creature. Are you sure you killed the right one?<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-15.html">"What about others skulls I have?"</a><br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-20.html">"Wow, my mistake. Guess that would help. Bye."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
No, it does not look like you have this dragon skull.<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-15.html">"What about others skulls I have?"</a><br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-20.html">"Goodbye."</a>
</body></html>

View File

@@ -0,0 +1,3 @@
<html><body>Watcher of Antharas Gilmore:<br>
I hope you finish your hunt safe and sound. You should talk to me again if you have any other questions.
</body></html>

View File

@@ -0,0 +1,11 @@
<html><body>Watcher of Antharas Gilmore:<br>
Ask away! What do you want to know about?<br><br>
<a action="bypass -h Quest Q00254_LegendaryTales 25718">"Do I have a Emerald Horn skull?"</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 25719">"Do I have a Dust Rider skull?"</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 25720">"Do I have a Bleeding Fly skull?"</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 25721">"Do I have a Black Dagger Wyrm skull?"</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 25722">"Do I have a Shadow Summoner skull?"</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 25723">"Do I have a Spike Slasher skull?"</a><br1>
<a action="bypass -h Quest Q00254_LegendaryTales 25724">"Do I have a Muscle Bomber skull?"</a><br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-20.html">"No thanks. Goodbye."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
That's right, you got it! This dragon skull is definitely from an <font color="LEVEL">Emerald Horn</font>.<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-21.html">"Are there others?"</a><br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-20.html">"Goodbye."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
Hm, yes this Dragon Skull is definitely from a <font color="LEVEL">Dust Rider</font>. You have done well.<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-21.html">"Are there more?"</a><br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-20.html">"Goodbye."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
The skull of the <font color="LEVEL">Bleeding Fly</font>?! Correct, you know it well!<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-21.html">"What about the other skulls?"</a><br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-20.html">"Goodbye."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
You think this skull is from a <font color="LEVEL">Black Dagger Wing</font>? You're correct!<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-21.html">"What about the other skulls?"</a><br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-20.html">"Goodbye."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
Correct! You can clearly see the characteristics of the <font color="LEVEL">Shadow Summoner</font> in this skull.<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-21.html">"What about the other skulls?"</a><br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-20.html">"Goodbye."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
Ah, a <font color="LEVEL">Spike Slasher</font> skull! You know it well. That's right.<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-21.html">"What about the other Dragon Skulls?"</a><br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-20.html">"Goodbye."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
Yes, you're correct! The skull you showed me is of the <font color="LEVEL">Muscle Bomber</font>.<br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-21.html">"What about the other skulls?"</a><br>
<a action="bypass -h Quest Q00254_LegendaryTales 30754-20.html">"Goodbye."</a>
</body></html>

View File

@@ -0,0 +1,5 @@
<html><body>Watcher of Antharas Gilmore:<br>
I remember you!<br>
If you continue on, your stories will be remembered!<br>
(This quest has been completed already)
</body></html>

View File

@@ -0,0 +1,253 @@
/*
* 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.Q00254_LegendaryTales;
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;
/**
* Legendary Tales (254)
* @author nonom
*/
public class Q00254_LegendaryTales extends Quest
{
// NPC
private static final int GILMORE = 30754;
// Monsters
public enum Bosses
{
EMERALD_HORN(25718),
DUST_RIDER(25719),
BLEEDING_FLY(25720),
BLACK_DAGGER(25721),
SHADOW_SUMMONER(25722),
SPIKE_SLASHER(25723),
MUSCLE_BOMBER(25724);
private final int _bossId;
private final int _mask;
private Bosses(int bossId)
{
_bossId = bossId;
_mask = 1 << ordinal();
}
public int getId()
{
return _bossId;
}
public int getMask()
{
return _mask;
}
public static Bosses valueOf(int npcId)
{
for (Bosses val : values())
{
if (val.getId() == npcId)
{
return val;
}
}
return null;
}
}
// @formatter:off
private static final int[] MONSTERS =
{
Bosses.EMERALD_HORN.getId(), Bosses.DUST_RIDER.getId(), Bosses.BLEEDING_FLY.getId(),
Bosses.BLACK_DAGGER.getId(), Bosses.SHADOW_SUMMONER.getId(), Bosses.SPIKE_SLASHER.getId(),
Bosses.MUSCLE_BOMBER.getId()
};
// @formatter:on
// Items
private static final int LARGE_DRAGON_SKULL = 17249;
// Misc
private static final int MIN_LEVEL = 80;
public Q00254_LegendaryTales()
{
super(254, Q00254_LegendaryTales.class.getSimpleName(), "Legendary Tales");
addStartNpc(GILMORE);
addTalkId(GILMORE);
addKillId(MONSTERS);
registerQuestItems(LARGE_DRAGON_SKULL);
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
String htmltext = getNoQuestMsg(player);
final QuestState st = getQuestState(player, true);
if (st == null)
{
return htmltext;
}
switch (st.getState())
{
case State.CREATED:
htmltext = (player.getLevel() < MIN_LEVEL) ? "30754-00.htm" : "30754-01.htm";
break;
case State.STARTED:
long count = getQuestItemsCount(player, LARGE_DRAGON_SKULL);
if (st.isCond(1))
{
htmltext = ((count > 0) ? "30754-14.htm" : "30754-06.html");
}
else if (st.isCond(2))
{
htmltext = ((count < 7) ? "30754-12.htm" : "30754-07.html");
}
break;
case State.COMPLETED:
htmltext = "30754-29.html";
break;
}
return htmltext;
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
String htmltext = getNoQuestMsg(player);
final QuestState st = getQuestState(player, false);
if (st == null)
{
return htmltext;
}
switch (event)
{
case "30754-05.html":
st.startQuest();
case "30754-02.html":
case "30754-03.html":
case "30754-04.htm":
case "30754-08.html":
case "30754-15.html":
case "30754-20.html":
case "30754-21.html":
htmltext = event;
break;
case "25718": // Emerald Horn
htmltext = (checkMask(st, Bosses.EMERALD_HORN) ? "30754-22.html" : "30754-16.html");
break;
case "25719": // Dust Rider
htmltext = (checkMask(st, Bosses.DUST_RIDER) ? "30754-23.html" : "30754-17.html");
break;
case "25720": // Bleeding Fly
htmltext = (checkMask(st, Bosses.BLEEDING_FLY) ? "30754-24.html" : "30754-18.html");
break;
case "25721": // Black Dagger Wing
htmltext = (checkMask(st, Bosses.BLACK_DAGGER) ? "30754-25.html" : "30754-19.html");
break;
case "25722": // Shadow Summoner
htmltext = (checkMask(st, Bosses.SHADOW_SUMMONER) ? "30754-26.html" : "30754-16.html");
break;
case "25723": // Spike Slasher
htmltext = (checkMask(st, Bosses.SPIKE_SLASHER) ? "30754-27.html" : "30754-17.html");
break;
case "25724": // Muscle Bomber
htmltext = (checkMask(st, Bosses.MUSCLE_BOMBER) ? "30754-28.html" : "30754-18.html");
break;
case "13467": // Vesper Thrower
case "13466": // Vesper Singer
case "13465": // Vesper Caster
case "13464": // Vesper Retributer
case "13463": // Vesper Avenger
case "13457": // Vesper Cutter
case "13458": // Vesper Slasher
case "13459": // Vesper Buster
case "13460": // Vesper Sharper
case "13461": // Vesper Fighter
case "13462": // Vesper Stormer
if (st.isCond(2) && (getQuestItemsCount(player, LARGE_DRAGON_SKULL) >= 7))
{
htmltext = "30754-09.html";
rewardItems(player, Integer.parseInt(event), 1);
st.exitQuest(false, true);
}
break;
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance player, boolean isPet)
{
if (player.isInParty())
{
for (L2PcInstance partyMember : player.getParty().getMembers())
{
actionForEachPlayer(partyMember, npc, false);
}
}
else
{
actionForEachPlayer(player, npc, false);
}
return super.onKill(npc, player, isPet);
}
@Override
public void actionForEachPlayer(L2PcInstance player, L2Npc npc, boolean isSummon)
{
final QuestState st = player.getQuestState(Q00254_LegendaryTales.class.getSimpleName());
if ((st != null) && st.isCond(1))
{
int raids = st.getInt("raids");
Bosses boss = Bosses.valueOf(npc.getId());
if (!checkMask(st, boss))
{
st.set("raids", raids | boss.getMask());
st.giveItems(LARGE_DRAGON_SKULL, 1);
if (st.getQuestItemsCount(LARGE_DRAGON_SKULL) < 7)
{
st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
else
{
st.setCond(2, true);
}
}
}
}
private static boolean checkMask(QuestState qs, Bosses boss)
{
int pos = boss.getMask();
return ((qs.getInt("raids") & pos) == pos);
}
}