Removed quests that no longer exist.

This commit is contained in:
MobiusDev 2016-07-17 12:48:32 +00:00
parent aefcebc5e0
commit edcefadfed
53 changed files with 0 additions and 1293 deletions

View File

@ -20,7 +20,6 @@ import java.util.HashMap;
import java.util.Map;
import com.l2jmobius.gameserver.enums.QuestSound;
import com.l2jmobius.gameserver.instancemanager.QuestManager;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.quest.Quest;
@ -28,7 +27,6 @@ import com.l2jmobius.gameserver.model.quest.QuestState;
import com.l2jmobius.gameserver.model.quest.State;
import quests.Q00140_ShadowFoxPart2.Q00140_ShadowFoxPart2;
import quests.Q00998_FallenAngelSelect.Q00998_FallenAngelSelect;
/**
* Shadow Fox - 3 (141)
@ -107,12 +105,6 @@ public class Q00141_ShadowFoxPart3 extends Quest
addExpAndSp(player, 278005, 17058);
}
st.exitQuest(false, true);
final Quest q = QuestManager.getInstance().getQuest(Q00998_FallenAngelSelect.class.getSimpleName());
if (q != null)
{
q.newQuestState(player).setState(State.STARTED);
}
break;
default:
htmltext = null;

View File

@ -1,5 +0,0 @@
<html><body>Jerian:<br>
Hm... Are you here to face Ranku and Demon Prince?<br>
You may want to listen to what I have to say.<br>
<a action="bypass -h Quest Q00279_TargetOfOpportunity 32302-03.htm">Listen carefully.</a>
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Jerian:<br>
Hm... Are you here to face Ranku and Demon Prince?<br>
Trust me, if I were you, I'd improve myself a little more first. Call it a little friendly advice on the house.<br>
(Only characters level 82 or above can take this quest.)
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Jerian:<br>
The <font color="LEVEL">Teleport Device</font> was created in order to transport visitors up to Ranku and Demon Prince instantly. It may sound strange, but it works rather well.<br>
<a action="bypass -h Quest Q00279_TargetOfOpportunity 32302-04.htm">"So there is a way to move up the tower quickly."</a>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Jerian:<br>
Yes, there is a way to break through the Force Field. You need to defeat four particular beasts in a particular order to harness their aura and fool the Tower of Infinitum into believing you to be one of its denizens.<br>
<a action="bypass -h Quest Q00279_TargetOfOpportunity 32302-05.html">Continue listening.</a>
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Jerian:<br>
Alright, here's what you need to do. Defeat the <font color="LEVEL">Cosmic Scout, Cosmic Watcher, Cosmic Priest, and Cosmic Lord</font>. You will pick up a <font color="LEVEL">fragment of their essence</font> after defeating them. Assemble these parts and you will have a Seal Breaker, a stone that will allow you to travel directly to Ranku and Demon Prince by fooling the Tower's Seal into thinking you a devil.<br>
Bring the parts to me and I can convert them. Do you wish to enter now?<br>
<a action="bypass -h Quest Q00279_TargetOfOpportunity enter">"Yes, let me go inside."</a>
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Jerian:<br>
Defeat the <font color="LEVEL">Cosmic Scout, Cosmic Watcher, Cosmic Priest, and Cosmic Lord</font>. You will pick up a <font color="LEVEL">fragment of their essence</font> after defeating them. Assemble these parts and you will have a Seal Breaker, a stone that will allow you to travel directly to Ranku and Demon Prince by fooling the Tower's Seal into thinking you a devil.<br>
Bring the parts to me and I can convert them.<br>
<a action="bypass -h Quest Q00279_TargetOfOpportunity enter">"Yes, let me go inside."</a>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Jerian:<br>
I hope you didn't come all the way back to me just to assemble the Seal Breaker. Ah well, you're here and I don't mind the visit, company is always pleasant. Give me the fragments and I'll make you a Seal Breaker.<br>
<a action="bypass -h Quest Q00279_TargetOfOpportunity 32302-08.html">Hand over the fragments.</a>
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Jerian:<br>
Wait a moment, please...<br>
<font color="LEVEL">(As Jerian chants a spell you've never heard, the four fragments begin to float in the air rotating around one another until coming together in a bright flash. When the light fades, you see a red and blue stone floating back into Jerian's hands. It is a complete Seal Breaker.)</font><br>
Here, it is complete. Remember though, you can only use it once. When you pass through the Force Field, it will shatter.<br>
Good bye and good luck.
</body></html>

View File

@ -1,157 +0,0 @@
/*
* This file is part of the L2J Mobius project.
*
* This program 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.
*
* This program 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.Q00279_TargetOfOpportunity;
import java.util.Arrays;
import com.l2jmobius.Config;
import com.l2jmobius.gameserver.enums.QuestSound;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.quest.Quest;
import com.l2jmobius.gameserver.model.quest.QuestState;
import com.l2jmobius.gameserver.model.quest.State;
/**
* Target of Opportunity (279)
* @author GKR
*/
public final class Q00279_TargetOfOpportunity extends Quest
{
// NPCs
private static final int JERIAN = 32302;
private static final int[] MONSTERS =
{
22373,
22374,
22375,
22376
};
// Items
private static final int[] SEAL_COMPONENTS =
{
15517,
15518,
15519,
15520
};
private static final int[] SEAL_BREAKERS =
{
15515,
15516
};
public Q00279_TargetOfOpportunity()
{
super(279);
addStartNpc(JERIAN);
addTalkId(JERIAN);
addKillId(MONSTERS);
registerQuestItems(SEAL_COMPONENTS);
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
final String htmltext = event;
final QuestState st = getQuestState(player, false);
if ((st == null) || (player.getLevel() < 82))
{
return getNoQuestMsg(player);
}
if (event.equalsIgnoreCase("32302-05.html"))
{
st.startQuest();
st.set("progress", "1");
}
else if (event.equalsIgnoreCase("32302-08.html") && (st.getInt("progress") == 1) && hasQuestItems(player, SEAL_COMPONENTS[0]) && hasQuestItems(player, SEAL_COMPONENTS[1]) && hasQuestItems(player, SEAL_COMPONENTS[2]) && hasQuestItems(player, SEAL_COMPONENTS[3]))
{
giveItems(player, SEAL_BREAKERS[0], 1);
giveItems(player, SEAL_BREAKERS[1], 1);
st.exitQuest(true, true);
}
return htmltext;
}
@Override
public final String onKill(L2Npc npc, L2PcInstance player, boolean isSummon)
{
final L2PcInstance pl = getRandomPartyMember(player, "progress", "1");
final int idx = Arrays.binarySearch(MONSTERS, npc.getId());
if ((pl == null) || (idx < 0))
{
return null;
}
final QuestState st = getQuestState(pl, false);
if (getRandom(1000) < (int) (311 * Config.RATE_QUEST_DROP))
{
if (!hasQuestItems(pl, SEAL_COMPONENTS[idx]))
{
giveItems(pl, SEAL_COMPONENTS[idx], 1);
if (haveAllExceptThis(st, idx))
{
st.setCond(2, true);
}
else
{
playSound(pl, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
}
return null;
}
@Override
public final String onTalk(L2Npc npc, L2PcInstance player)
{
String htmltext = getNoQuestMsg(player);
final QuestState st = getQuestState(player, true);
if (st == null)
{
return htmltext;
}
if (st.getState() == State.CREATED)
{
htmltext = (player.getLevel() >= 82) ? "32302-01.htm" : "32302-02.html";
}
else if ((st.getState() == State.STARTED) && (st.getInt("progress") == 1))
{
htmltext = (hasQuestItems(player, SEAL_COMPONENTS[0]) && hasQuestItems(player, SEAL_COMPONENTS[1]) && hasQuestItems(player, SEAL_COMPONENTS[2]) && hasQuestItems(player, SEAL_COMPONENTS[3])) ? "32302-07.html" : "32302-06.html";
}
return htmltext;
}
private static final boolean haveAllExceptThis(QuestState st, int idx)
{
for (int i = 0; i < SEAL_COMPONENTS.length; i++)
{
if (i == idx)
{
continue;
}
if (!hasQuestItems(st.getPlayer(), SEAL_COMPONENTS[i]))
{
return false;
}
}
return true;
}
}

View File

@ -1,6 +0,0 @@
<html><body>Guard Rath:<br>
The population of lizardmen on the north side of Oren is mysteriously growing. This must be related to the increase in the power of evil since the release of Antharas. There have been wild rumors of ghastly ceremonies held in the forest at night! The lizardmen are most likely under the direct control of Shilen, and these rituals no doubt strengthen the power of Antharas.....<br>
In the midst of all this turmoil, the guild has asked me to make the roads safe for trade! No doubt they feel that their village is threatened.<br>
But this is Oren Territory, and there will be problems if we send regular troops in... The captain has ordered me to mobilize mercenaries to stabilize the area. Will you join us?<br>
<a action="bypass -h Quest Q00300_HuntingLetoLizardman 30126-03.htm">"I'll do it."</a>
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Guard Rath:<br>
The population of lizardmen north of Oren is mysteriously growing. This must be related to the increase in the power of evil since the release of Antharas. There have been wild rumors of ghastly ceremonies held in the forest at night! The lizardmen are most likely under the direct control of Shilen, and these rituals no doubt strengthen the power of Antharas.....<br>
In the midst of all this turmoil, the guild has asked me to make the roads safe for trade! No doubt they feel that their village is threatened.<br>
But this is Oren Territory, and there will be problems if we send regular troops in... The captain has ordered me to mobilize mercenaries to stabilize the area, but I'm afraid you're not up to the job.<br>
(This quest may only be undertaken by characters of level 34 or above.)
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Guard Rath:<br>
Destroy the lizardmen and take their bracelets as proof of your victory.<br>
Kill the <font color="LEVEL">Leto Lizardmen, Leto Lizardman Archers, Leto Lizardman Soldiers, Leto Lizardman Overlords', Leto Lizardman Warriors</font> and so on. Don't attack their shaman! It might cause them to stop the ritual before our investigation is complete. The ritual must not end until our investigation is complete!<br>
The guild had already sent me a reward for 60 bracelets. I'll give it to you as soon as you earn it.
</body></html>

View File

@ -1,3 +0,0 @@
<html><body>Guard Rath:<br>
Please try harder! You must get rid of those filthy lizardmen who threaten trade between Aden and Oren.
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Guard Rath:<br>
You're finished? Good work, but we're not done with those vile creatures yet! I'm sure the plains will be swarming with lizardmen again in a few short weeks. Now, let me count those bracelets.<br>
<a action="bypass -h Quest Q00300_HuntingLetoLizardman 30126-06.html">"They're all there!"</a>
</body></html>

View File

@ -1,3 +0,0 @@
<html><body>Guard Rath:<br>
Feel free to come back and help us anytime! The life of a mercenary may not pay well, but it has its rewards! Please accept this token of our appreciation.
</body></html>

View File

@ -1,3 +0,0 @@
<html><body>Guard Rath:<br>
I don't think so! You haven't brought enough! Bring 60 if you want a reward!
</body></html>

View File

@ -1,182 +0,0 @@
/*
* This file is part of the L2J Mobius project.
*
* This program 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.
*
* This program 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.Q00300_HuntingLetoLizardman;
import java.util.HashMap;
import java.util.Map;
import com.l2jmobius.gameserver.enums.QuestSound;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.holders.ItemHolder;
import com.l2jmobius.gameserver.model.itemcontainer.Inventory;
import com.l2jmobius.gameserver.model.quest.Quest;
import com.l2jmobius.gameserver.model.quest.QuestState;
import com.l2jmobius.gameserver.model.quest.State;
/**
* Hunting Leto Lizardman (300)
* @author ivantotov
*/
public final class Q00300_HuntingLetoLizardman extends Quest
{
// NPCs
private static final int RATH = 30126;
// Items
private static final int BRACELET_OF_LIZARDMAN = 7139;
private static final ItemHolder REWARD_ADENA = new ItemHolder(Inventory.ADENA_ID, 30000);
private static final ItemHolder REWARD_ANIMAL_BONE = new ItemHolder(1872, 50);
private static final ItemHolder REWARD_ANIMAL_SKIN = new ItemHolder(1867, 50);
// Misc
private static final int MIN_LEVEL = 34;
private static final int REQUIRED_BRACELET_COUNT = 60;
// Monsters
private static final Map<Integer, Integer> MOBS_SAC = new HashMap<>();
static
{
MOBS_SAC.put(20577, 360); // Leto Lizardman
MOBS_SAC.put(20578, 390); // Leto Lizardman Archer
MOBS_SAC.put(20579, 410); // Leto Lizardman Soldier
MOBS_SAC.put(20580, 790); // Leto Lizardman Warrior
MOBS_SAC.put(20582, 890); // Leto Lizardman Overlord
}
public Q00300_HuntingLetoLizardman()
{
super(300);
addStartNpc(RATH);
addTalkId(RATH);
addKillId(MOBS_SAC.keySet());
registerQuestItems(BRACELET_OF_LIZARDMAN);
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
final QuestState st = getQuestState(player, false);
if (st == null)
{
return null;
}
String htmltext = null;
switch (event)
{
case "30126-03.htm":
{
if (st.isCreated())
{
st.startQuest();
htmltext = event;
}
break;
}
case "30126-06.html":
{
if (getQuestItemsCount(player, BRACELET_OF_LIZARDMAN) >= REQUIRED_BRACELET_COUNT)
{
takeItems(player, BRACELET_OF_LIZARDMAN, -1);
final int rand = getRandom(1000);
if (rand < 500)
{
giveItems(player, REWARD_ADENA);
}
else if (rand < 750)
{
giveItems(player, REWARD_ANIMAL_SKIN);
}
else if (rand < 1000)
{
giveItems(player, REWARD_ANIMAL_BONE);
}
st.exitQuest(true, true);
htmltext = event;
}
else
{
htmltext = "30126-07.html";
}
break;
}
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon)
{
final L2PcInstance partyMember = getRandomPartyMember(player, 1);
if (partyMember != null)
{
final QuestState st = getQuestState(partyMember, false);
if (st.isCond(1) && (getRandom(1000) < MOBS_SAC.get(npc.getId())))
{
giveItems(partyMember, BRACELET_OF_LIZARDMAN, 1);
if (getQuestItemsCount(partyMember, BRACELET_OF_LIZARDMAN) == REQUIRED_BRACELET_COUNT)
{
st.setCond(2, true);
}
else
{
playSound(partyMember, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
}
return super.onKill(npc, player, 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) ? "30126-01.htm" : "30126-02.htm";
break;
}
case State.STARTED:
{
switch (st.getCond())
{
case 1:
{
htmltext = "30126-04.html";
break;
}
case 2:
{
if (getQuestItemsCount(player, BRACELET_OF_LIZARDMAN) >= REQUIRED_BRACELET_COUNT)
{
htmltext = "30126-05.html";
}
break;
}
}
break;
}
}
return htmltext;
}
}

View File

@ -1,4 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
You do not meet the requirements for taking on this mission.<br>
(Only noblesse characters above level 75 who have completed a third class transfer can undertake this quest.)
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
If you receive a mission involving challenging the Olympiad before you enter the Grand Olympiad, you can receive additional rewards. If you're qualified, why don't you try making the challenge?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00551_OlympiadStarter 31688-03.html">Accept</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00551_OlympiadStarter 31688-02.htm">"Can you tell me more?"</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
There is a reward for entering 10 games. But you will receive a reward by participating in 3 games, then in 5 games. You will also get rewared with the <font color="LEVEL">Medal of Honor</font> if you participate in <font color="LEVEL">5 and 10</font> games.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00551_OlympiadStarter 31688-03.html">Accept</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
The mission has been accepted. Please check to see if there are any other missions. Once preparations are complete, challenge the Olympiad.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h npc_%objectId%_Quest">See other missions.</Button>
</body></html>

View File

@ -1,3 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
Well done. Please come back tomorrow.
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
You have already received the reward for this mission. You should rest before you try again!<br>
(This quest can only be undertaken once a day. This quest resets everyday at 6:30 AM.)
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
You did not fulfil the requirements for receiving a reward.<br>
You must participate in more than 3 Olympiad matches in order to receive a reward. If you participate 5 times, the reward will increase, and if you participate more than 10 times, you will receive the promised ultimate reward.
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
I will give you an incomplete reward. Please remember that once you receive the reward, you cannot take on the mission anymore today. Do you still want to go ahead?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00551_OlympiadStarter 31688-04.html">"Yes please."</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
I will give you an incomplete reward. Please remember that once you receive the reward, you cannot take on the mission anymore today. Do you still want to go ahead?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00551_OlympiadStarter 31688-04.html">"Yes please."</Button>
</body></html>

View File

@ -1,266 +0,0 @@
/*
* This file is part of the L2J Mobius project.
*
* This program 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.
*
* This program 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.Q00551_OlympiadStarter;
import com.l2jmobius.gameserver.enums.QuestType;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.olympiad.CompetitionType;
import com.l2jmobius.gameserver.model.olympiad.Participant;
import com.l2jmobius.gameserver.model.quest.Quest;
import com.l2jmobius.gameserver.model.quest.QuestState;
import com.l2jmobius.gameserver.model.quest.State;
/**
* Olympiad Starter (551)
* @author Gnacik
*/
public class Q00551_OlympiadStarter extends Quest
{
private static final int MANAGER = 31688;
private static final int CERT_3 = 17238;
private static final int CERT_5 = 17239;
private static final int CERT_10 = 17240;
private static final int OLY_CHEST = 17169;
private static final int MEDAL_OF_GLORY = 21874;
public Q00551_OlympiadStarter()
{
super(551);
addStartNpc(MANAGER);
addTalkId(MANAGER);
registerQuestItems(CERT_3, CERT_5, CERT_10);
addOlympiadMatchFinishId();
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return getNoQuestMsg(player);
}
String htmltext = event;
if (event.equalsIgnoreCase("31688-03.html"))
{
qs.startQuest();
}
else if (event.equalsIgnoreCase("31688-04.html"))
{
final long count = getQuestItemsCount(player, CERT_3) + getQuestItemsCount(player, CERT_5);
if (count > 0)
{
giveItems(player, OLY_CHEST, count); // max 2
if (count == 2)
{
giveItems(player, MEDAL_OF_GLORY, 3);
}
qs.exitQuest(QuestType.DAILY, true);
}
else
{
htmltext = getNoQuestMsg(player);
}
}
return htmltext;
}
@Override
public void onOlympiadLose(L2PcInstance loser, CompetitionType type)
{
if (loser == null)
{
return;
}
final QuestState qs = getQuestState(loser, false);
if ((qs == null) || !qs.isStarted())
{
return;
}
final int matches = qs.getInt("matches") + 1;
switch (matches)
{
case 3:
{
if (!hasQuestItems(loser, CERT_3))
{
giveItems(loser, CERT_3, 1);
}
break;
}
case 5:
{
if (!hasQuestItems(loser, CERT_5))
{
giveItems(loser, CERT_5, 1);
}
break;
}
case 10:
{
if (!hasQuestItems(loser, CERT_10))
{
giveItems(loser, CERT_10, 1);
}
break;
}
}
qs.set("matches", String.valueOf(matches));
}
@Override
public void onOlympiadMatchFinish(Participant winner, Participant looser, CompetitionType type)
{
if (winner != null)
{
final L2PcInstance player = winner.getPlayer();
if (player == null)
{
return;
}
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isStarted())
{
final int matches = qs.getInt("matches") + 1;
switch (matches)
{
case 3:
{
if (!hasQuestItems(player, CERT_3))
{
giveItems(player, CERT_3, 1);
}
break;
}
case 5:
{
if (!hasQuestItems(player, CERT_5))
{
giveItems(player, CERT_5, 1);
}
break;
}
case 10:
{
if (!hasQuestItems(player, CERT_10))
{
giveItems(player, CERT_10, 1);
}
break;
}
}
qs.set("matches", String.valueOf(matches));
}
}
if (looser == null)
{
return;
}
final L2PcInstance player = looser.getPlayer();
if (player == null)
{
return;
}
final QuestState qs = getQuestState(player, false);
if ((qs == null) || !qs.isStarted())
{
return;
}
final int matches = qs.getInt("matches") + 1;
switch (matches)
{
case 3:
{
if (!hasQuestItems(player, CERT_3))
{
giveItems(player, CERT_3, 1);
}
break;
}
case 5:
{
if (!hasQuestItems(player, CERT_5))
{
giveItems(player, CERT_5, 1);
}
break;
}
case 10:
{
if (!hasQuestItems(player, CERT_10))
{
giveItems(player, CERT_10, 1);
}
break;
}
}
qs.set("matches", String.valueOf(matches));
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
String htmltext = getNoQuestMsg(player);
final QuestState qs = getQuestState(player, true);
if (qs == null)
{
return htmltext;
}
if ((player.getLevel() < 75) || !player.isNoble())
{
htmltext = "31688-00.htm";
}
else if (qs.isCreated())
{
htmltext = "31688-01.htm";
}
else if (qs.isCompleted())
{
if (qs.isNowAvailable())
{
qs.setState(State.CREATED);
htmltext = (player.getLevel() < 75) || !player.isNoble() ? "31688-00.htm" : "31688-01.htm";
}
else
{
htmltext = "31688-05.html";
}
}
else if (qs.isStarted())
{
final long count = getQuestItemsCount(player, CERT_3) + getQuestItemsCount(player, CERT_5) + getQuestItemsCount(player, CERT_10);
if (count == 3)
{
htmltext = "31688-04.html";
giveItems(player, OLY_CHEST, 4);
giveItems(player, MEDAL_OF_GLORY, 5);
qs.exitQuest(QuestType.DAILY, true);
}
else
{
htmltext = "31688-s" + count + ".html";
}
}
return htmltext;
}
}

View File

@ -1,4 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
You do not meet the requirements for taking on this mission.<br>
(Only noblesse characters above level 75 who have completed a third class transfer can undertake this quest.)
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
While challenging the Olympiad, it is important to widen your level of experience as well. Just by making the challenge, you will receive a small reward. Will you make the challenge?<br>
<a action="bypass -h Quest Q00552_OlympiadVeteran 31688-03.html">Accept</a><br>
<a action="bypass -h Quest Q00552_OlympiadVeteran 31688-02.htm">"Tell me more."</a>
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
Please participate in all the various categories of matches in the Olympiad. If you participate in each of the <font color="LEVEL">non-class battles, class battles, and group battles 5 times</font>, your mission will be complete.<br>
If it is difficult to participate in the three match categories, you can participate in just one category, and you will still receive some reward. If you're still satisfied, you can come to me. But please remember that once you receive the reward, you can't take on the mission again that same day.<br>
<a action="bypass -h Quest Q00552_OlympiadVeteran 31688-03.html">Accept</a>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
The mission has been accepted. Please check to see if there are any other missions. Once preparations are complete, challenge the Olympiad.<br>
<a action="bypass -h npc_%objectId%_Quest">See other missions.</a>
</body></html>

View File

@ -1,3 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
Well done. Please come back tomorrow.
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
You have already received the reward for this mission. You should rest before you try again!<br>
(This quest can only be undertaken once a day. This quest resets everyday at 6:30 AM.)
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
You did not fulfill the requirements for receiving a reward.<br>
you must participate at least 5 times in a non-class battle, class battle, or group battle in order to receive the reward. Of course, if you participate in all three categories, you can expect an even greater reward.
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
I will give you an incomplete reward. Please remember that once you receive the reward, you can't take on the mission again today. Still want the reward?<br>
<a action="bypass -h Quest Q00552_OlympiadVeteran 31688-04.html">"Yes."</a>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Grand Olympiad Manager:<br>
I will give you an incomplete reward. Please remember that once you receive the reward, you cannot take on the mission anymore today. Do you still want to go ahead?<br>
<a action="bypass -h Quest Q00552_OlympiadVeteran 31688-04.html">"Yes please."</a>
</body></html>

View File

@ -1,208 +0,0 @@
/*
* This file is part of the L2J Mobius project.
*
* This program 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.
*
* This program 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.Q00552_OlympiadVeteran;
import com.l2jmobius.gameserver.enums.QuestType;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.olympiad.CompetitionType;
import com.l2jmobius.gameserver.model.olympiad.Participant;
import com.l2jmobius.gameserver.model.quest.Quest;
import com.l2jmobius.gameserver.model.quest.QuestState;
import com.l2jmobius.gameserver.model.quest.State;
/**
* Olympiad Veteran (552)
* @author lion
*/
public class Q00552_OlympiadVeteran extends Quest
{
// NPC
private static final int MANAGER = 31688;
// Items
private static final int TEAM_EVENT_CERTIFICATE = 17241;
private static final int CLASS_FREE_BATTLE_CERTIFICATE = 17242;
private static final int CLASS_BATTLE_CERTIFICATE = 17243;
private static final int OLY_CHEST = 17169;
public Q00552_OlympiadVeteran()
{
super(552);
addStartNpc(MANAGER);
addTalkId(MANAGER);
registerQuestItems(TEAM_EVENT_CERTIFICATE, CLASS_FREE_BATTLE_CERTIFICATE, CLASS_BATTLE_CERTIFICATE);
addOlympiadMatchFinishId();
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
final QuestState st = getQuestState(player, false);
if (st == null)
{
return getNoQuestMsg(player);
}
String htmltext = event;
if (event.equalsIgnoreCase("31688-03.html"))
{
st.startQuest();
}
else if (event.equalsIgnoreCase("31688-04.html"))
{
final long count = getQuestItemsCount(player, TEAM_EVENT_CERTIFICATE) + getQuestItemsCount(player, CLASS_FREE_BATTLE_CERTIFICATE) + getQuestItemsCount(player, CLASS_BATTLE_CERTIFICATE);
if (count > 0)
{
giveItems(player, OLY_CHEST, count);
st.exitQuest(QuestType.DAILY, true);
}
else
{
htmltext = getNoQuestMsg(player); // missing items
}
}
return htmltext;
}
@Override
public void onOlympiadMatchFinish(Participant winner, Participant looser, CompetitionType type)
{
if (winner != null)
{
final L2PcInstance player = winner.getPlayer();
if (player == null)
{
return;
}
final QuestState st = getQuestState(player, false);
if ((st != null) && st.isStarted())
{
int matches;
switch (type)
{
case CLASSED:
{
matches = st.getInt("classed") + 1;
st.set("classed", String.valueOf(matches));
if ((matches == 5) && !hasQuestItems(player, CLASS_BATTLE_CERTIFICATE))
{
giveItems(player, CLASS_BATTLE_CERTIFICATE, 1);
}
break;
}
case NON_CLASSED:
{
matches = st.getInt("nonclassed") + 1;
st.set("nonclassed", String.valueOf(matches));
if ((matches == 5) && !hasQuestItems(player, CLASS_FREE_BATTLE_CERTIFICATE))
{
giveItems(player, CLASS_FREE_BATTLE_CERTIFICATE, 1);
}
break;
}
}
}
}
if (looser != null)
{
final L2PcInstance player = looser.getPlayer();
if (player == null)
{
return;
}
final QuestState st = getQuestState(player, false);
if ((st != null) && st.isStarted())
{
int matches;
switch (type)
{
case CLASSED:
{
matches = st.getInt("classed") + 1;
st.set("classed", String.valueOf(matches));
if (matches == 5)
{
giveItems(player, CLASS_BATTLE_CERTIFICATE, 1);
}
break;
}
case NON_CLASSED:
{
matches = st.getInt("nonclassed") + 1;
st.set("nonclassed", String.valueOf(matches));
if (matches == 5)
{
giveItems(player, CLASS_FREE_BATTLE_CERTIFICATE, 1);
}
break;
}
}
}
}
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
String htmltext = getNoQuestMsg(player);
final QuestState st = getQuestState(player, true);
if (st == null)
{
return htmltext;
}
if ((player.getLevel() < 75) || !player.isNoble())
{
htmltext = "31688-00.htm";
}
else if (st.isCreated())
{
htmltext = "31688-01.htm";
}
else if (st.isCompleted())
{
if (st.isNowAvailable())
{
st.setState(State.CREATED);
htmltext = (player.getLevel() < 75) || !player.isNoble() ? "31688-00.htm" : "31688-01.htm";
}
else
{
htmltext = "31688-05.html";
}
}
else if (st.isStarted())
{
final long count = getQuestItemsCount(player, TEAM_EVENT_CERTIFICATE) + getQuestItemsCount(player, CLASS_FREE_BATTLE_CERTIFICATE) + getQuestItemsCount(player, CLASS_BATTLE_CERTIFICATE);
if (count == 3)
{
htmltext = "31688-04.html";
giveItems(player, OLY_CHEST, 4);
st.exitQuest(QuestType.DAILY, true);
}
else
{
htmltext = "31688-s" + count + ".html";
}
}
return htmltext;
}
}

View File

@ -1,4 +0,0 @@
<html><body>Seed Talisman Manager:<br>
Have you used a Seed Talisman? Its power relies on the user's ability and will, very clever, very impressive. I can tell you how to make them even stronger. Yes?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00943_FillingTheEnergyOfDestruction 33715-02.htm">"What happened?"</Button>
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Seed Talisman Manager:<br>
The Seed Talisman, it cannot be enhanced with just any magic. Because the Talisman's core is so twisted and layered, it can only be fed by something with similar twists.<br1>
You must seek the&nbsp;<font color="LEVEL">Core of Twisted Magic</font>. If you bring me this, yes, I can purify it into usable form. Yes?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00943_FillingTheEnergyOfDestruction 33715-03.htm">"I'll give it a try."</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Seed Talisman Manager:<br>
Yes! Good good, yes. Many monsters carry the&nbsp;<font color="LEVEL">Core of Twisted Magic</font>.<br1>
All you must do is defeat <font color="LEVEL">Istina, Octavis, Baylor, Balok, Ron, Spezion, or Tauti</font>.&nbsp;Any one of them will do, yes yes!
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Seed Talisman Manager:<br>
Bring me the&nbsp;<font color="LEVEL">Core of Twisted Magic</font>, yes?<br1>
All you must do is defeat <font color="LEVEL">Istina, Octavis, Baylor, Balok, Ron, Spezion, or Tauti</font>.&nbsp;Any one of them will do, yes yes!
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Seed Talisman Manager:<br>
Hmm? What is this? A&nbsp;<font color="LEVEL">Core of Twisted Magic</font>! You must want me to purify this, yes yes?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00943_FillingTheEnergyOfDestruction 33715-06.html">"That's what we agreed on."</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Seed Talisman Manager:<br>
Ha! Ah! Here it is! The&nbsp;<font color="LEVEL">Energy of Destruction</font>. This can greatly enhance your Seed Talisman, yes yes, though there is no guarantee, of course. That is up to your destiny!<br1>
I am here always, so come back tomorrow, yes, and visit, yes yes?
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Seed Talisman Manager:<br>
Hmm? What was I saying? Hmm... I'm quite sleepy. Perhaps it is time for my nap....<br>
(This quest can be performed only once a day. Check again tomorrow at 6:30 am.)
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Seed Talisman Manager:<br>
Hmm? I forgot what I was saying. Who are you?<br>
(You must be level 90 or above to start this quest.)
</body></html>

View File

@ -1,154 +0,0 @@
/*
* This file is part of the L2J Mobius project.
*
* This program 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.
*
* This program 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.Q00943_FillingTheEnergyOfDestruction;
import com.l2jmobius.gameserver.enums.QuestType;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.quest.Quest;
import com.l2jmobius.gameserver.model.quest.QuestState;
import com.l2jmobius.gameserver.model.quest.State;
/**
* Filling the Energy of Destruction (943)
* @author St3eT
*/
public final class Q00943_FillingTheEnergyOfDestruction extends Quest
{
// NPCs
private static final int SEED_TALISMAN = 33715;
private static final int[] BOSSES =
{
29195, // Istina (common)
29196, // Istina (extreme)
29194, // Octavis (common)
29212, // Octavis (extreme)
25779, // Spezion (normal)
25867, // Spezion (extreme)
29213, // Baylor
29218, // Balok
25825, // Ron
29236, // Tauti (common)
29237, // Tauti (extreme)
};
// Items
private static final int TWISTED_MAGIC = 35668;
private static final int ENERGY_OF_DESTRUCTION = 35562;
// Misc
private static final int MIN_LEVEL = 90;
public Q00943_FillingTheEnergyOfDestruction()
{
super(943);
addStartNpc(SEED_TALISMAN);
addTalkId(SEED_TALISMAN);
addKillId(BOSSES);
registerQuestItems(TWISTED_MAGIC);
addCondMinLevel(MIN_LEVEL, "33715-08.html");
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
final QuestState st = getQuestState(player, false);
if (st == null)
{
return null;
}
String htmltext = null;
switch (event)
{
case "33715-02.htm":
{
htmltext = event;
break;
}
case "33715-03.htm":
{
st.startQuest();
htmltext = event;
break;
}
case "33715-06.html":
{
st.exitQuest(QuestType.DAILY, true);
giveItems(player, ENERGY_OF_DESTRUCTION, 1);
htmltext = event;
break;
}
}
return htmltext;
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
String htmltext = getNoQuestMsg(player);
final QuestState st = getQuestState(player, true);
if (npc.getId() == SEED_TALISMAN)
{
switch (st.getState())
{
case State.CREATED:
{
htmltext = "33715-01.htm";
break;
}
case State.STARTED:
{
htmltext = st.isCond(1) ? "33715-04.html" : "33715-05.html";
break;
}
case State.COMPLETED:
{
if (st.isNowAvailable())
{
st.setState(State.CREATED);
htmltext = "33715-01.htm";
}
else
{
htmltext = "33715-07.html";
}
break;
}
}
}
return htmltext;
}
@Override
public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon)
{
executeForEachPlayer(player, npc, isSummon, true, true);
return super.onKill(npc, player, isSummon);
}
@Override
public void actionForEachPlayer(L2PcInstance player, L2Npc npc, boolean isSummon)
{
final QuestState st = getQuestState(player, true);
if ((st != null) && st.isCond(1) && (npc.calculateDistance(player, false, false) <= 1500))
{
st.setCond(2, true);
giveItems(player, TWISTED_MAGIC, 1);
}
}
}

View File

@ -1,7 +0,0 @@
<html><body>Warehouse Chief Natools:<br>
Both of these missions are very important.<br>
Not only must they be completed quickly, they also have extensive political ramifications.<br>
I do not think you are yet ready to take on so important a responsibility.<br>
Perhaps with more training and experience...<br>
(Only characters level 38 and above who have completed Shadow Fox - 3 are permitted to undertake either the Fallen Angel - Request of Dusk or the Fallen Angel - Request of Dawn quest.)
</body></html>

View File

@ -1,9 +0,0 @@
<html><body>Warehouse Chief Natools:<br>
In the name of Shadow Fox... You must choose now.<br><br>
Select either the request of the Temple and the Lords of Dawn, or that of the Preachers of the Wilderness and the Revolutionaries of Dusk...<br>
Choose wisely -- once you have made your decision, it cannot be reversed...<br><br>
<a action="bypass -h Quest Q00998_FallenAngelSelect 30894-02.html">"I want to hear about the Lords of Dawn and the Temple again."</a><br>
<a action="bypass -h Quest Q00998_FallenAngelSelect 30894-03.html">"I want to hear about the Revolutionaries of Dusk again."</a><br><br>
<a action="bypass -h Quest Q00998_FallenAngelSelect dawn">"I will accept the request of the Temple and the Lords of Dawn."</a><br>
<a action="bypass -h Quest Q00998_FallenAngelSelect dusk">"I will accept the request of the Revolutionaries of Dusk."</a>
</body></html>

View File

@ -1,9 +0,0 @@
<html><body>Warehouse Chief Natools:<br>
The Temple and the Rulers of Dawn believe that Einhasad created Humans, and that they are her rightful representatives in this world, with the power to issue commands in her name.<br>
They believe that the other gods are inferior to Einhasad, and so their followers should submit to the Temple's leadership in the war against Shilen and the forces of chaos.<br>
Unity and order are their chief concerns, and they take a dim view of diversity and individualism.<br>
In fact, they believe that only through a unified society built on a rigid hierarchy can justice prevail and the weak be truly protected.<br>
Certainly, their argument carries some weight: the weak are daily attacked and exploited, and justice seems but a dream to most...<br>
Ultimately, the Temple and the Rulers of Dawn hope for some sort of reborn empire to bring peace and order to the land...<br>
<a action="bypass -h Quest Q00998_FallenAngelSelect 30894-01.html">"I will make my decision now."</a>
</body></html>

View File

@ -1,10 +0,0 @@
<html><body>Warehouse Chief Natools:<br>
They argue that we should respect diversity....<br>
They believe that all power and all living things are equal on this earth, and that the Temple and the Lords should use their power to protect the powerless.<br>
Instead, they say, the Temple and the Lords simply exploit the people to protect their own interests and vested rights.<br>
They are hypocrites...<br>
The Revolutionaries of Dusk believe that true peace is not artificially imposed on society by a central authority, but rather achieved through a harmonious diversity of powers and races.<br>
They say that Einhasad did not, in fact, create Humans -- that was a myth fabricated by Shunaiman, and the Temple and Lords of Dawn know the truth but are afraid to reveal it...<br>
The Revolutionaries of Dusk are dedicated to finding some crucial piece of evidence that would permanently discredit their foes.<br>
<a action="bypass -h Quest Q00998_FallenAngelSelect 30894-01.html">"I am ready to make my decision..."</a>
</body></html>

View File

@ -1,97 +0,0 @@
/*
* This file is part of the L2J Mobius project.
*
* This program 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.
*
* This program 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.Q00998_FallenAngelSelect;
import com.l2jmobius.gameserver.instancemanager.QuestManager;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.quest.Quest;
import com.l2jmobius.gameserver.model.quest.QuestState;
import com.l2jmobius.gameserver.model.quest.State;
import quests.Q00141_ShadowFoxPart3.Q00141_ShadowFoxPart3;
import quests.Q00142_FallenAngelRequestOfDawn.Q00142_FallenAngelRequestOfDawn;
import quests.Q00143_FallenAngelRequestOfDusk.Q00143_FallenAngelRequestOfDusk;
/**
* Fallen Angel Select (998 - Custom)<br>
* NOTE: This quest is used for start quest 142 or 143
* @author Nono
*/
public class Q00998_FallenAngelSelect extends Quest
{
// NPCs
private static final int NATOOLS = 30894;
// Misc
private static final int MIN_LEVEL = 38;
public Q00998_FallenAngelSelect()
{
super(998);
setIsCustom(true);
addStartNpc(NATOOLS);
addTalkId(NATOOLS);
}
@Override
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
{
final QuestState st = getQuestState(player, false);
if (st == null)
{
return null;
}
switch (event)
{
case "30894-01.html":
case "30894-02.html":
case "30894-03.html":
return event;
case "dawn":
startQuest(Q00142_FallenAngelRequestOfDawn.class.getSimpleName(), player);
break;
case "dusk":
startQuest(Q00143_FallenAngelRequestOfDusk.class.getSimpleName(), player);
break;
}
return null;
}
private void startQuest(String name, L2PcInstance player)
{
final Quest q = QuestManager.getInstance().getQuest(name);
if (q != null)
{
q.newQuestState(player);
q.notifyEvent("30894-01.html", null, player);
player.getQuestState(getName()).setState(State.COMPLETED);
}
}
@Override
public String onTalk(L2Npc npc, L2PcInstance player)
{
final QuestState st = getQuestState(player, true);
final QuestState qs = player.getQuestState(Q00141_ShadowFoxPart3.class.getSimpleName());
if ((st == null) || !st.isStarted())
{
return getNoQuestMsg(player);
}
return ((player.getLevel() >= MIN_LEVEL) && (qs != null) && qs.isCompleted()) ? "30894-01.html" : "30894-00.html";
}
}

View File

@ -92,9 +92,7 @@ import quests.Q00240_ImTheOnlyOneYouCanTrust.Q00240_ImTheOnlyOneYouCanTrust;
import quests.Q00254_LegendaryTales.Q00254_LegendaryTales;
import quests.Q00270_TheOneWhoEndsSilence.Q00270_TheOneWhoEndsSilence;
import quests.Q00278_HomeSecurity.Q00278_HomeSecurity;
import quests.Q00279_TargetOfOpportunity.Q00279_TargetOfOpportunity;
import quests.Q00298_LizardmensConspiracy.Q00298_LizardmensConspiracy;
import quests.Q00300_HuntingLetoLizardman.Q00300_HuntingLetoLizardman;
import quests.Q00307_ControlDeviceOfTheGiants.Q00307_ControlDeviceOfTheGiants;
import quests.Q00310_OnlyWhatRemains.Q00310_OnlyWhatRemains;
import quests.Q00359_ForASleeplessDeadman.Q00359_ForASleeplessDeadman;
@ -138,8 +136,6 @@ import quests.Q00508_AClansReputation.Q00508_AClansReputation;
import quests.Q00509_AClansFame.Q00509_AClansFame;
import quests.Q00510_AClansPrestige.Q00510_AClansPrestige;
import quests.Q00511_AwlUnderFoot.Q00511_AwlUnderFoot;
import quests.Q00551_OlympiadStarter.Q00551_OlympiadStarter;
import quests.Q00552_OlympiadVeteran.Q00552_OlympiadVeteran;
import quests.Q00553_OlympiadUndefeated.Q00553_OlympiadUndefeated;
import quests.Q00617_GatherTheFlames.Q00617_GatherTheFlames;
import quests.Q00618_IntoTheFlame.Q00618_IntoTheFlame;
@ -172,8 +168,6 @@ import quests.Q00904_DragonTrophyAntharas.Q00904_DragonTrophyAntharas;
import quests.Q00905_RefinedDragonBlood.Q00905_RefinedDragonBlood;
import quests.Q00906_TheCallOfValakas.Q00906_TheCallOfValakas;
import quests.Q00907_DragonTrophyValakas.Q00907_DragonTrophyValakas;
import quests.Q00943_FillingTheEnergyOfDestruction.Q00943_FillingTheEnergyOfDestruction;
import quests.Q00998_FallenAngelSelect.Q00998_FallenAngelSelect;
import quests.Q10273_GoodDayToFly.Q10273_GoodDayToFly;
import quests.Q10274_CollectingInTheAir.Q10274_CollectingInTheAir;
import quests.Q10275_ContainingTheAttributePower.Q10275_ContainingTheAttributePower;
@ -417,9 +411,7 @@ public class QuestMasterHandler
Q00254_LegendaryTales.class,
Q00270_TheOneWhoEndsSilence.class,
Q00278_HomeSecurity.class,
Q00279_TargetOfOpportunity.class,
Q00298_LizardmensConspiracy.class,
Q00300_HuntingLetoLizardman.class,
Q00307_ControlDeviceOfTheGiants.class,
Q00310_OnlyWhatRemains.class,
Q00359_ForASleeplessDeadman.class,
@ -463,8 +455,6 @@ public class QuestMasterHandler
Q00509_AClansFame.class,
Q00510_AClansPrestige.class,
Q00511_AwlUnderFoot.class,
Q00551_OlympiadStarter.class,
Q00552_OlympiadVeteran.class,
Q00553_OlympiadUndefeated.class,
Q00617_GatherTheFlames.class,
Q00618_IntoTheFlame.class,
@ -497,8 +487,6 @@ public class QuestMasterHandler
Q00905_RefinedDragonBlood.class,
Q00906_TheCallOfValakas.class,
Q00907_DragonTrophyValakas.class,
Q00943_FillingTheEnergyOfDestruction.class,
Q00998_FallenAngelSelect.class,
Q10273_GoodDayToFly.class,
Q10274_CollectingInTheAir.class,
Q10275_ContainingTheAttributePower.class,