This commit is contained in:
5
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-00.htm
vendored
Normal file
5
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-00.htm
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<html><body>Hierarch:<br>
|
||||
We think alike, you and me! Will you join us in our work to make this world a better place? We're making great advances every day, but there are some who are jealous and are trying to interfere with our work...<br>
|
||||
They're keeping us from attaining our goal! You know, we really do need help, but you're not yet up to the task! Come back when you've developed your skills further.<br>
|
||||
(Only characters of level 60 and above may undertake this quest.)
|
||||
</body></html>
|
5
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-01.htm
vendored
Normal file
5
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-01.htm
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<html><body>Hierarch:<br>
|
||||
We think alike, you and me! Will you join us in our work to make this world a better place? We're making great advances every day, but there are some who are jealous and are trying to interfere with our work...<br>
|
||||
They're keeping us from attaining our goal! Will you help us?<br>
|
||||
<a action="bypass -h Quest Q00626_ADarkTwilight 31517-02.htm">I'll help you.</a>
|
||||
</body></html>
|
4
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-02.htm
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-02.htm
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Hierarch:<br>
|
||||
Your passionate resolve is breathtaking!<br>
|
||||
Your job is deceptively simple! You must merely exterminate those execrable servants of Einhasad that infest this altar. They're called the <font color="LEVEL">Eye of Splendor, Flash of Splendor, Blade of Splendor, Wisdom of Splendor, Soul of Splendor, Victory of Splendor, Vengeance of Splendor, Shout of Splendor, Seal of Splendor, Crown of Splendor and Wailing of Splendor</font>. Slaughter them all! As proof of their demise, bring back 300 units of <font color="LEVEL">Blood of Saint</font>, the source of their power.
|
||||
</body></html>
|
3
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-03.html
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-03.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Hierarch:<br>
|
||||
Hey! What are you doing? You promised to help us! Bring justice to those <font color="LEVEL">Eyes of Splendor, Flashes of Splendor, Knife Edges of Splendor, Wisdom of Splendor, Souls of Splendor, Victories of Splendor, Vengeance of Splendor, Shouts of Splendor, Seals of Splendor, Crowns of Splendor and Wailing of Splendor</font>, and don't forget to bring back proof.
|
||||
</body></html>
|
5
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-04.html
vendored
Normal file
5
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-04.html
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<html><body>Hierarch:<br>
|
||||
Have you brought the Blood of Saint?<br>
|
||||
Your success has helped us achieve our goal! We couldn't have done it without you! Now choose your reward!<br>
|
||||
<a action="bypass -h Quest Q00626_ADarkTwilight 31517-05.html">"A reward?"</a>
|
||||
</body></html>
|
5
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-05.html
vendored
Normal file
5
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-05.html
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<html><body>Hierarch:<br>
|
||||
Here you go! Take your pick! Of course, you must first give me 300 units of Blood of Saint. Just put it over there. Now choose your reward!<br>
|
||||
<a action="bypass -h Quest Q00626_ADarkTwilight Exp">Increase Exp and SP</a><br>
|
||||
<a action="bypass -h Quest Q00626_ADarkTwilight Adena">Receive Adena</a>
|
||||
</body></html>
|
3
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-06.html
vendored
Normal file
3
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-06.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
<html><body>Hierarch:<br>
|
||||
You said you brought them, so where are they? Are you some kind of a trickster?
|
||||
</body></html>
|
4
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-07.html
vendored
Normal file
4
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/31517-07.html
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
<html><body>Hierarch:<br>
|
||||
Good choice! I hope you're satisfied!<br>
|
||||
The proofs you brought will be very useful to us. Just wait!
|
||||
</body></html>
|
172
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/Q00626_ADarkTwilight.java
vendored
Normal file
172
trunk/dist/game/data/scripts/quests/Q00626_ADarkTwilight/Q00626_ADarkTwilight.java
vendored
Normal 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.Q00626_ADarkTwilight;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import com.l2jserver.Config;
|
||||
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;
|
||||
|
||||
/**
|
||||
* A Dark Twilight (626)<br>
|
||||
* Original Jython script by disKret.
|
||||
* @author Citizen
|
||||
*/
|
||||
public class Q00626_ADarkTwilight extends Quest
|
||||
{
|
||||
// NPCs
|
||||
private static final int HIERARCH = 31517;
|
||||
// Items
|
||||
private static final int BLOOD_OF_SAINT = 7169;
|
||||
// Monsters
|
||||
private static final Map<Integer, Integer> MONSTERS = new HashMap<>();
|
||||
static
|
||||
{
|
||||
MONSTERS.put(21520, 641); // Eye of Splendor
|
||||
MONSTERS.put(21523, 648); // Flash of Splendor
|
||||
MONSTERS.put(21524, 692); // Blade of Splendor
|
||||
MONSTERS.put(21525, 710); // Blade of Splendor
|
||||
MONSTERS.put(21526, 772); // Wisdom of Splendor
|
||||
MONSTERS.put(21529, 639); // Soul of Splendor
|
||||
MONSTERS.put(21530, 683); // Victory of Splendor
|
||||
MONSTERS.put(21531, 767); // Punishment of Splendor
|
||||
MONSTERS.put(21532, 795); // Shout of Splendor
|
||||
MONSTERS.put(21535, 802); // Signet of Splendor
|
||||
MONSTERS.put(21536, 774); // Crown of Splendor
|
||||
MONSTERS.put(21539, 848); // Wailing of Splendor
|
||||
MONSTERS.put(21540, 880); // Wailing of Splendor
|
||||
MONSTERS.put(21658, 790); // Punishment of Splendor
|
||||
}
|
||||
// Misc
|
||||
private static final int MIN_LEVEL_REQUIRED = 60;
|
||||
private static final int ITEMS_COUNT_REQUIRED = 300;
|
||||
// Rewards
|
||||
private static final int ADENA_COUNT = 100000;
|
||||
private static final int XP_COUNT = 162773;
|
||||
private static final int SP_COUNT = 12500;
|
||||
|
||||
public Q00626_ADarkTwilight()
|
||||
{
|
||||
super(626, Q00626_ADarkTwilight.class.getSimpleName(), "A Dark Twilight");
|
||||
addStartNpc(HIERARCH);
|
||||
addTalkId(HIERARCH);
|
||||
addKillId(MONSTERS.keySet());
|
||||
registerQuestItems(BLOOD_OF_SAINT);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
final QuestState st = getQuestState(player, false);
|
||||
if (st == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
String htmltext = event;
|
||||
switch (event)
|
||||
{
|
||||
case "31517-05.html":
|
||||
break;
|
||||
case "31517-02.htm":
|
||||
st.startQuest();
|
||||
break;
|
||||
case "Exp":
|
||||
if (st.getQuestItemsCount(BLOOD_OF_SAINT) < ITEMS_COUNT_REQUIRED)
|
||||
{
|
||||
return "31517-06.html";
|
||||
}
|
||||
st.addExpAndSp(XP_COUNT, SP_COUNT);
|
||||
st.exitQuest(true, true);
|
||||
htmltext = "31517-07.html";
|
||||
break;
|
||||
case "Adena":
|
||||
if (st.getQuestItemsCount(BLOOD_OF_SAINT) < ITEMS_COUNT_REQUIRED)
|
||||
{
|
||||
return "31517-06.html";
|
||||
}
|
||||
st.giveAdena(ADENA_COUNT, true);
|
||||
st.exitQuest(true, true);
|
||||
htmltext = "31517-07.html";
|
||||
break;
|
||||
default:
|
||||
htmltext = null;
|
||||
break;
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
|
||||
{
|
||||
final L2PcInstance partyMember = getRandomPartyMember(killer, 1);
|
||||
if (partyMember != null)
|
||||
{
|
||||
final QuestState st = getQuestState(partyMember, false);
|
||||
final float chance = (MONSTERS.get(npc.getId()) * Config.RATE_QUEST_DROP);
|
||||
if (getRandom(1000) < chance)
|
||||
{
|
||||
st.giveItems(BLOOD_OF_SAINT, 1);
|
||||
if (st.getQuestItemsCount(BLOOD_OF_SAINT) < ITEMS_COUNT_REQUIRED)
|
||||
{
|
||||
st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
|
||||
}
|
||||
else
|
||||
{
|
||||
st.setCond(2, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
return super.onKill(npc, killer, isSummon);
|
||||
}
|
||||
|
||||
@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_REQUIRED) ? "31517-01.htm" : "31517-00.htm";
|
||||
break;
|
||||
case State.STARTED:
|
||||
switch (st.getCond())
|
||||
{
|
||||
case 1:
|
||||
htmltext = "31517-03.html";
|
||||
break;
|
||||
case 2:
|
||||
htmltext = "31517-04.html";
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user