This commit is contained in:
7
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-01.htm
vendored
Normal file
7
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-01.htm
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
<html><body>Guard Beltkam:<br>
|
||||
My family all lost their lives to <font color="LEVEL">Antharas the Land Dragon.</font> My mother and younger sister perished ten years ago, when many southern villages in Giran burned to the ground in the heat of Antharas' rampage. Then, three years ago, when the land dragon extermination force was formed at the lord's command, my father and older brother were recruited as soldiers, sent to the Dragon Valley, and eventually died meaningless deaths.<br>
|
||||
I swore an oath before my family graves that I would slay that great evil creature. Everyone holds me back, saying that it is a futile effort, but I will definitely bring Antharas down. It's the only way I know to bring peace to my family's spirits.<br>
|
||||
I have prepared diligently during this past year for my revenge. I consulted with many mercenaries, and I even researched documents relating to the dragon in the Ivory Tower's library. The dwarf bounty hunter "Terrin Wymslayer," who is a famous dragon hunter, especially gave me many words of advice. I finally came to the conclusion that <font color="LEVEL">arrows</font> were the most effective weapons.<br>
|
||||
Now, then. I do not mind telling you of my troubles, but I cannot ask you to help me in this endeavor, at least not as you are now. One day, perhaps, I may be in your debt.<br>
|
||||
(Only characters above level 32 are permitted to take on this quest.)
|
||||
</body></html>
|
||||
7
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-02.htm
vendored
Normal file
7
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-02.htm
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
<html><body>Guard Beltkam:<br>
|
||||
I lost my whole family to <font color="LEVEL">Antharas the Land Dragon.</font> My mother and younger sister perished ten years ago, when many southern villages in Giran burned to the ground in the heat of Antharas' rampage. Then, three years ago, when the land dragon extermination force was formed at the lord's command, my father and older brother were recruited as soldiers, sent to the Dragon Valley, and eventually died meaningless deaths.<br>
|
||||
I swore an oath before my family graves that I would slay that great evil creature. Everyone holds me back, saying that it is a futile effort, but I will definitely bring Antharas down. Don't you think that's the only way to bring peace to the spirits of my family?<br>
|
||||
I have prepared diligently during this past year for my revenge. I consulted with many mercenaries, and I even researched documents relating to the dragon in the Ivory Tower's library. The dwarf bounty hunter "Terrin Wymslayer," who is a famous dragon hunter, especially gave me many words of advice. I finally came to the conclusion that <font color="LEVEL">arrows</font> were the most effective weapons.<br>
|
||||
For the past six months, I have repledged my oath of revenge every day, while working to forge an arrow that will kill Antharas. But the ingredients needed to create the arrow are all difficult to obtain. That is why I must frequently ask travelers like you to collect these ingredients for me. Can I also ask this favor of you?<br>
|
||||
<a action="bypass -h Quest Q00331_ArrowOfVengeance 30125-03.htm">Say that you will help him.</a>
|
||||
</body></html>
|
||||
5
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-03.htm
vendored
Normal file
5
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-03.htm
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<html><body>Guard Belton:<br>
|
||||
I am not foolish enough to think that I can avenge the death of my family alone. I have received the aid of many, and will continue to ask favors of those like yourself.<br>
|
||||
The materials you must find for me are the <font color="LEVEL">Silver Feathers of a Harpy, Wyrm Teeth</font> and the <font color="LEVEL">venom from a Medusa</font>. The Harpy's Feathers are used to make the fletching for the arrows, while the Wyrm Teeth will be used for arrowheads. They say that if one applies the venomous poison of the Medusa on the tip of the arrow and dries it properly, the poison will retain its effects for many years.<br>
|
||||
As soon as you have obtained these three materials, bring them to me, for I will give you a reward for each. I've inherited quite a fortune from my deceased parents, so be confident that your reward will be grand. I have no use material things as avenging my family is all I know now.
|
||||
</body></html>
|
||||
6
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-04.html
vendored
Normal file
6
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-04.html
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
<html><body>Guard Belton:<br>
|
||||
You've come back empty-handed. Did you not promise to bring me harpy's <font color="LEVEL">Silver Feathers, the teeth of a Wyrm</font> and the <font color="LEVEL">venom of a medusa</font>?<br>
|
||||
As soon as you obtain these three materials, bring them to me. I will reward you for each that you bring back. I've inherited quite a fortune from my deceased parents, so don't worry about the reward. Please don't quit, help me.<br>
|
||||
<a action="bypass -h Quest Q00331_ArrowOfVengeance 30125-6.html">Say you will quit</a><br>
|
||||
<a action="bypass -h Quest Q00331_ArrowOfVengeance 30125-7.html">Say you will collect the materials</a>
|
||||
</body></html>
|
||||
6
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-05.html
vendored
Normal file
6
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-05.html
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
<html><body>Guard Belton:<br>
|
||||
I'm feeling an exceptionally strong longing for my family today. But I cannot risk falling into my fancies and having my determination shaken or my will for revenge weakened. Every day as I make arrows, sharpen the teeth of the wyrms, and put feathers on my arrows, I think of my dead family. And as I apply the poison of the medusa on the end of the arrowhead, I curse Antharas.<br>
|
||||
Now, shall we take a look at the materials you have brought? Good. This should be enough material to make arrows for a few days. As promised, I will reward you according to the number of materials you have brought me. This should be enough, I presume? If you are not planning to leave any time soon, could you help me some more? I beg you!<br>
|
||||
<a action="bypass -h Quest Q00331_ArrowOfVengeance 30125-6.html">Say you will quit</a><br>
|
||||
<a action="bypass -h Quest Q00331_ArrowOfVengeance 30125-7.html">Say you will continue</a>
|
||||
</body></html>
|
||||
4
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-06.html
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-06.html
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Guard Belton:<br>
|
||||
I understand. This revenge is mine alone, anyway. I cannot rely on the kindness of others forever.<br>
|
||||
Are you planning to leave again? Then I guess this is goodbye. But a person's future is not certain. Perhaps I may be the one to come to your aid later. Or I may be slain by Antharas without having fulfilled my revenge, and meet my family in the afterlife. The laws of the gods and of fate are truly mysterious.
|
||||
</body></html>
|
||||
3
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-07.html
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/30125-07.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Guard Belton:<br>
|
||||
Then please continue your efforts. I am certain that my revenge will be complete, thanks to those like you who have come to my aid. The gods control our fates, but I believe that if the will is strong enough and the conviction steadfast, the gods will be moved and allow one's fate to be reforged. One day I will surely shoot an arrow into the heart of Antharas!
|
||||
</body></html>
|
||||
166
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/Q00331_ArrowOfVengeance.java
vendored
Normal file
166
trunk/dist/game/data/scripts/quests/Q00331_ArrowOfVengeance/Q00331_ArrowOfVengeance.java
vendored
Normal file
@@ -0,0 +1,166 @@
|
||||
/*
|
||||
* 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.Q00331_ArrowOfVengeance;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
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;
|
||||
|
||||
/**
|
||||
* Arrow for Vengeance (331)
|
||||
* @author xban1x
|
||||
*/
|
||||
public class Q00331_ArrowOfVengeance extends Quest
|
||||
{
|
||||
// NPCs
|
||||
private static final int BELTON = 30125;
|
||||
// Items
|
||||
private static final int HARPY_FEATHER = 1452;
|
||||
private static final int MEDUSA_VENOM = 1453;
|
||||
private static final int WYRMS_TOOTH = 1454;
|
||||
// Monster
|
||||
private static final Map<Integer, Integer> MONSTERS = new HashMap<>();
|
||||
static
|
||||
{
|
||||
MONSTERS.put(20145, 59); // Harpy
|
||||
MONSTERS.put(20158, 61); // Medusa
|
||||
MONSTERS.put(20176, 60); // Wyrm
|
||||
}
|
||||
// Misc
|
||||
private static final int MIN_LVL = 32;
|
||||
private static final int HARPY_FEATHER_ADENA = 78;
|
||||
private static final int MEDUSA_VENOM_ADENA = 88;
|
||||
private static final int WYRMS_TOOTH_ADENA = 92;
|
||||
private static final int BONUS = 3100;
|
||||
private static final int BONUS_COUNT = 10;
|
||||
|
||||
public Q00331_ArrowOfVengeance()
|
||||
{
|
||||
super(331, Q00331_ArrowOfVengeance.class.getSimpleName(), "Arrow for Vengeance");
|
||||
addStartNpc(BELTON);
|
||||
addTalkId(BELTON);
|
||||
addKillId(MONSTERS.keySet());
|
||||
registerQuestItems(HARPY_FEATHER, MEDUSA_VENOM, WYRMS_TOOTH);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState st = getQuestState(player, false);
|
||||
String htmltext = null;
|
||||
if (st != null)
|
||||
{
|
||||
switch (event)
|
||||
{
|
||||
case "30125-03.htm":
|
||||
{
|
||||
st.startQuest();
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "30125-06.html":
|
||||
{
|
||||
st.exitQuest(true, true);
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
case "30125-07.html":
|
||||
{
|
||||
htmltext = event;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onTalk(L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState st = getQuestState(player, true);
|
||||
String htmltext = getNoQuestMsg(player);
|
||||
if (st != null)
|
||||
{
|
||||
switch (st.getState())
|
||||
{
|
||||
case State.CREATED:
|
||||
{
|
||||
htmltext = player.getLevel() < MIN_LVL ? "30125-01.htm" : "30125-02.htm";
|
||||
break;
|
||||
}
|
||||
case State.STARTED:
|
||||
{
|
||||
final long harpyFeathers = st.getQuestItemsCount(HARPY_FEATHER);
|
||||
final long medusaVenoms = st.getQuestItemsCount(MEDUSA_VENOM);
|
||||
final long wyrmsTeeth = st.getQuestItemsCount(WYRMS_TOOTH);
|
||||
if ((harpyFeathers + medusaVenoms + wyrmsTeeth) > 0)
|
||||
{
|
||||
st.giveAdena(((harpyFeathers * HARPY_FEATHER_ADENA) + (medusaVenoms * MEDUSA_VENOM_ADENA) + (wyrmsTeeth * WYRMS_TOOTH_ADENA) + ((harpyFeathers + medusaVenoms + wyrmsTeeth) >= BONUS_COUNT ? BONUS : 0)), true);
|
||||
takeItems(player, -1, HARPY_FEATHER, MEDUSA_VENOM, WYRMS_TOOTH);
|
||||
htmltext = "30125-05.html";
|
||||
}
|
||||
else
|
||||
{
|
||||
htmltext = "30125-04.html";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(L2Npc npc, L2PcInstance player, boolean isPet)
|
||||
{
|
||||
final QuestState st = getQuestState(player, false);
|
||||
if (st != null)
|
||||
{
|
||||
if (getRandom(100) < MONSTERS.get(npc.getId()))
|
||||
{
|
||||
switch (npc.getId())
|
||||
{
|
||||
case 20145:
|
||||
{
|
||||
st.giveItems(HARPY_FEATHER, 1);
|
||||
break;
|
||||
}
|
||||
case 20158:
|
||||
{
|
||||
st.giveItems(MEDUSA_VENOM, 1);
|
||||
break;
|
||||
}
|
||||
case 20176:
|
||||
{
|
||||
st.giveItems(WYRMS_TOOTH, 1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
|
||||
}
|
||||
}
|
||||
return super.onKill(npc, player, isPet);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user