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>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>

View 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>

View 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>

View 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>

View 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>

View 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>

View 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>

View 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>

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.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;
}
}