Fixed quest 985 and 578 discrepancies.

This commit is contained in:
MobiusDevelopment 2020-04-25 22:15:55 +00:00
parent 2ba03ae802
commit 6acb6101ca
54 changed files with 154 additions and 926 deletions

View File

@ -1,5 +0,0 @@
<html><body>Histie:<br>
What brings you to such a dangerous place?<br>
You shouldn't be here. Go back.<br>
(Only characters above Lv. 85-89.)
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
Huh? Are you an ally?<br>
That seal... Isn't it Elikia's? Well I guess you are an ally.<br>
Did Elikia send you?<br>
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-02.htm">"Yes."</Button>
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
Elikia must have been in a hurry. <br>
Well, I'm doing fine. Of course I didn't completly recover from my time with the Embryo, but I should be able to carry out my revenge soon.<br>
Elise is pretty talented. I was able to recover thanks to her.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-03.htm">"Revenge?"</Button>
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
Why are you talking to me?<br>
I don't know you... Don't you even try to trick me.<br>
(Quest may only be undertaken by characters with the Blackbird Seal.)
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-04.htm">"Revenge?"</Button>
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
We have to get our revenge!<br>
They dared set up a trap for me, and made me rely on Elise! Unforgivable!<br>
Won't you help me get my revenge?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-05.htm">"How can I help?"</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Travelers Guild asks to destroy monsters in the Blood Marsh and on the Altar of Evil.<br>
Hunting objectives: all monsters in these locations.<br>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Travelers Guild asks to destroy <font color="LEVEL">200</font> monsters in the Blood Marsh and on the Altar of Evil.<br>
Hunting objectives: all monsters in these locations.
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Histie:<br>
Not enough. You think this is enough to honor our name?<br>
Kill <font color="LEVEL">200 Atelia Passionate Soldiers, Atelia Elite Captains, Atelia High Pirests, and Fortress Dark Wizards</font>.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-08.html">"I know."</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Already done? Great!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-09.html">"I know."</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Great! No wonder Elikia sent you here.<br>
But this isn't enough. I'll stay here until I'm satisfied. Elikia and Leona might be worried about me, so can you tell them I'm alright? Here's a letter. They'll know I'm safe with this.
</body></html>

View File

@ -1,179 +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.Q00985_AdventureGuildsSpecialRequestLv1;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.gameserver.enums.QuestSound;
import org.l2jmobius.gameserver.enums.QuestType;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
/**
* Adventure Guilds Special Request Lv1 (985)
* @author Dmitri
*/
public class Q00985_AdventureGuildsSpecialRequestLv1 extends Quest
{
// NPCs
private static final int ADVENTURE_GUILDSMAN = 33946;
// Monsters
private static final int[] MONSTERS =
{
24458, // Vampire Swamp Warrior
24457, // Swamp Vampire Rogue
24460, // Swamp Vampire Shooter
24459, // Swamp Vampire Wizard
24454, // Berserker of Fate
24455, // Prophet of Doom
24453, // Servant of Fate
24452, // Soldier of Fate
};
// Misc
private static final int MIN_LEVEL = 85;
private static final int MAX_LEVEL = 89;
private static final boolean PARTY_QUEST = true;
// Reward
private static final int RUNE_WIND_RESISTANCE_RING = 14599;
public Q00985_AdventureGuildsSpecialRequestLv1()
{
super(985);
addStartNpc(ADVENTURE_GUILDSMAN);
addTalkId(ADVENTURE_GUILDSMAN);
addKillId(MONSTERS);
addCondLevel(MIN_LEVEL, MAX_LEVEL, "33946-00.htm");
}
@Override
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
{
String htmltext = null;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return htmltext;
}
switch (event)
{
case "33946-02.htm":
case "33946-03.htm":
case "33946-04.htm":
case "33946-08.html":
{
htmltext = event;
break;
}
case "33946-05.htm":
{
qs.startQuest();
htmltext = event;
break;
}
case "33946-09.html":
{
giveItems(player, RUNE_WIND_RESISTANCE_RING, 1);
addExpAndSp(player, 2108117571L, 2529741);
qs.exitQuest(QuestType.DAILY, true);
htmltext = event;
break;
}
}
return htmltext;
}
@Override
public String onTalk(Npc npc, PlayerInstance player)
{
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
switch (qs.getState())
{
case State.CREATED:
{
htmltext = "33946-01.htm";
break;
}
case State.STARTED:
{
if (qs.isCond(1))
{
htmltext = "33946-06.html";
}
else
{
htmltext = "33946-07.html";
}
break;
}
case State.COMPLETED:
{
if (qs.isNowAvailable())
{
qs.setState(State.CREATED);
htmltext = "33946-01.htm";
}
else
{
htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
}
break;
}
}
return htmltext;
}
@Override
public String onKill(Npc npc, PlayerInstance killer, boolean isSummon)
{
final QuestState qs = PARTY_QUEST ? getRandomPartyMemberState(killer, -1, 3, npc) : getQuestState(killer, false);
if ((qs != null) && qs.isCond(1))
{
final int killedGhosts = qs.getInt("AncientGhosts") + 1;
qs.set("AncientGhosts", killedGhosts);
playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
if (killedGhosts >= 200)
{
qs.setCond(2, true);
}
sendNpcLogList(killer);
}
return super.onKill(npc, killer, isSummon);
}
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
holder.add(new NpcLogListHolder(NpcStringId.DEFEAT_MONSTER.getId(), true, qs.getInt("AncientGhosts")));
return holder;
}
return super.getNpcLogList(player);
}
}

View File

@ -223,7 +223,6 @@ import quests.Q00930_DisparagingThePhantoms.Q00930_DisparagingThePhantoms;
import quests.Q00931_MemoriesOfTheWind.Q00931_MemoriesOfTheWind; import quests.Q00931_MemoriesOfTheWind.Q00931_MemoriesOfTheWind;
import quests.Q00932_SayhasEnergy.Q00932_SayhasEnergy; import quests.Q00932_SayhasEnergy.Q00932_SayhasEnergy;
import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild; import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild;
import quests.Q00985_AdventureGuildsSpecialRequestLv1.Q00985_AdventureGuildsSpecialRequestLv1;
import quests.Q10273_GoodDayToFly.Q10273_GoodDayToFly; import quests.Q10273_GoodDayToFly.Q10273_GoodDayToFly;
import quests.Q10274_CollectingInTheAir.Q10274_CollectingInTheAir; import quests.Q10274_CollectingInTheAir.Q10274_CollectingInTheAir;
import quests.Q10275_ContainingTheAttributePower.Q10275_ContainingTheAttributePower; import quests.Q10275_ContainingTheAttributePower.Q10275_ContainingTheAttributePower;
@ -522,6 +521,7 @@ import quests.not_done.Q00841_ContaminationContainment;
import quests.not_done.Q00843_GiantEvolutionControl; import quests.not_done.Q00843_GiantEvolutionControl;
import quests.not_done.Q00846_BuildingUpStrength; import quests.not_done.Q00846_BuildingUpStrength;
import quests.not_done.Q00929_SeekerRescue; import quests.not_done.Q00929_SeekerRescue;
import quests.not_done.Q00985_AdventureGuildsSpecialRequestLv1;
import quests.not_done.Q00986_AdventureGuildsSpecialRequestLv2; import quests.not_done.Q00986_AdventureGuildsSpecialRequestLv2;
import quests.not_done.Q00987_AdventureGuildsSpecialRequestLv3; import quests.not_done.Q00987_AdventureGuildsSpecialRequestLv3;
import quests.not_done.Q00988_AdventureGuildsSpecialRequestLv4; import quests.not_done.Q00988_AdventureGuildsSpecialRequestLv4;
@ -787,7 +787,7 @@ public class QuestMasterHandler
Q00931_MemoriesOfTheWind.class, Q00931_MemoriesOfTheWind.class,
Q00932_SayhasEnergy.class, Q00932_SayhasEnergy.class,
Q00937_ToReviveTheFishingGuild.class, Q00937_ToReviveTheFishingGuild.class,
Q00985_AdventureGuildsSpecialRequestLv1.class, Q00985_AdventureGuildsSpecialRequestLv1.class, // TODO: Not done.
Q00986_AdventureGuildsSpecialRequestLv2.class, // TODO: Not done. Q00986_AdventureGuildsSpecialRequestLv2.class, // TODO: Not done.
Q00987_AdventureGuildsSpecialRequestLv3.class, // TODO: Not done. Q00987_AdventureGuildsSpecialRequestLv3.class, // TODO: Not done.
Q00988_AdventureGuildsSpecialRequestLv4.class, // TODO: Not done. Q00988_AdventureGuildsSpecialRequestLv4.class, // TODO: Not done.

View File

@ -0,0 +1,36 @@
/*
* 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.not_done;
import org.l2jmobius.Config;
import org.l2jmobius.gameserver.model.quest.Quest;
/**
* @author Mobius
*/
public class Q00985_AdventureGuildsSpecialRequestLv1 extends Quest
{
private static final int START_NPC = 33946;
public Q00985_AdventureGuildsSpecialRequestLv1()
{
super(986);
addStartNpc(START_NPC);
addTalkId(START_NPC);
addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
}
}

View File

@ -1,5 +0,0 @@
<html><body>Histie:<br>
What brings you to such a dangerous place?<br>
You shouldn't be here. Go back.<br>
(Only characters above Lv. 85-89.)
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
Huh? Are you an ally?<br>
That seal... Isn't it Elikia's? Well I guess you are an ally.<br>
Did Elikia send you?<br>
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-02.htm">"Yes."</Button>
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
Elikia must have been in a hurry. <br>
Well, I'm doing fine. Of course I didn't completly recover from my time with the Embryo, but I should be able to carry out my revenge soon.<br>
Elise is pretty talented. I was able to recover thanks to her.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-03.htm">"Revenge?"</Button>
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
Why are you talking to me?<br>
I don't know you... Don't you even try to trick me.<br>
(Quest may only be undertaken by characters with the Blackbird Seal.)
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-04.htm">"Revenge?"</Button>
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
We have to get our revenge!<br>
They dared set up a trap for me, and made me rely on Elise! Unforgivable!<br>
Won't you help me get my revenge?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-05.htm">"How can I help?"</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Travelers Guild asks to destroy monsters in the Blood Marsh and on the Altar of Evil.<br>
Hunting objectives: all monsters in these locations.<br>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Travelers Guild asks to destroy <font color="LEVEL">200</font> monsters in the Blood Marsh and on the Altar of Evil.<br>
Hunting objectives: all monsters in these locations.
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Histie:<br>
Not enough. You think this is enough to honor our name?<br>
Kill <font color="LEVEL">200 Atelia Passionate Soldiers, Atelia Elite Captains, Atelia High Pirests, and Fortress Dark Wizards</font>.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-08.html">"I know."</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Already done? Great!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-09.html">"I know."</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Great! No wonder Elikia sent you here.<br>
But this isn't enough. I'll stay here until I'm satisfied. Elikia and Leona might be worried about me, so can you tell them I'm alright? Here's a letter. They'll know I'm safe with this.
</body></html>

View File

@ -1,179 +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.Q00985_AdventureGuildsSpecialRequestLv1;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.gameserver.enums.QuestSound;
import org.l2jmobius.gameserver.enums.QuestType;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
/**
* Adventure Guilds Special Request Lv1 (985)
* @author Dmitri
*/
public class Q00985_AdventureGuildsSpecialRequestLv1 extends Quest
{
// NPCs
private static final int ADVENTURE_GUILDSMAN = 33946;
// Monsters
private static final int[] MONSTERS =
{
24458, // Vampire Swamp Warrior
24457, // Swamp Vampire Rogue
24460, // Swamp Vampire Shooter
24459, // Swamp Vampire Wizard
24454, // Berserker of Fate
24455, // Prophet of Doom
24453, // Servant of Fate
24452, // Soldier of Fate
};
// Misc
private static final int MIN_LEVEL = 85;
private static final int MAX_LEVEL = 89;
private static final boolean PARTY_QUEST = true;
// Reward
private static final int RUNE_WIND_RESISTANCE_RING = 14599;
public Q00985_AdventureGuildsSpecialRequestLv1()
{
super(985);
addStartNpc(ADVENTURE_GUILDSMAN);
addTalkId(ADVENTURE_GUILDSMAN);
addKillId(MONSTERS);
addCondLevel(MIN_LEVEL, MAX_LEVEL, "33946-00.htm");
}
@Override
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
{
String htmltext = null;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return htmltext;
}
switch (event)
{
case "33946-02.htm":
case "33946-03.htm":
case "33946-04.htm":
case "33946-08.html":
{
htmltext = event;
break;
}
case "33946-05.htm":
{
qs.startQuest();
htmltext = event;
break;
}
case "33946-09.html":
{
giveItems(player, RUNE_WIND_RESISTANCE_RING, 1);
addExpAndSp(player, 2108117571L, 2529741);
qs.exitQuest(QuestType.DAILY, true);
htmltext = event;
break;
}
}
return htmltext;
}
@Override
public String onTalk(Npc npc, PlayerInstance player)
{
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
switch (qs.getState())
{
case State.CREATED:
{
htmltext = "33946-01.htm";
break;
}
case State.STARTED:
{
if (qs.isCond(1))
{
htmltext = "33946-06.html";
}
else
{
htmltext = "33946-07.html";
}
break;
}
case State.COMPLETED:
{
if (qs.isNowAvailable())
{
qs.setState(State.CREATED);
htmltext = "33946-01.htm";
}
else
{
htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
}
break;
}
}
return htmltext;
}
@Override
public String onKill(Npc npc, PlayerInstance killer, boolean isSummon)
{
final QuestState qs = PARTY_QUEST ? getRandomPartyMemberState(killer, -1, 3, npc) : getQuestState(killer, false);
if ((qs != null) && qs.isCond(1))
{
final int killedGhosts = qs.getInt("AncientGhosts") + 1;
qs.set("AncientGhosts", killedGhosts);
playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
if (killedGhosts >= 200)
{
qs.setCond(2, true);
}
sendNpcLogList(killer);
}
return super.onKill(npc, killer, isSummon);
}
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
holder.add(new NpcLogListHolder(NpcStringId.DEFEAT_MONSTER.getId(), true, qs.getInt("AncientGhosts")));
return holder;
}
return super.getNpcLogList(player);
}
}

View File

@ -245,7 +245,6 @@ import quests.Q00930_DisparagingThePhantoms.Q00930_DisparagingThePhantoms;
import quests.Q00931_MemoriesOfTheWind.Q00931_MemoriesOfTheWind; import quests.Q00931_MemoriesOfTheWind.Q00931_MemoriesOfTheWind;
import quests.Q00932_SayhasEnergy.Q00932_SayhasEnergy; import quests.Q00932_SayhasEnergy.Q00932_SayhasEnergy;
import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild; import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild;
import quests.Q00985_AdventureGuildsSpecialRequestLv1.Q00985_AdventureGuildsSpecialRequestLv1;
import quests.Q10273_GoodDayToFly.Q10273_GoodDayToFly; import quests.Q10273_GoodDayToFly.Q10273_GoodDayToFly;
import quests.Q10274_CollectingInTheAir.Q10274_CollectingInTheAir; import quests.Q10274_CollectingInTheAir.Q10274_CollectingInTheAir;
import quests.Q10282_ToTheSeedOfAnnihilation.Q10282_ToTheSeedOfAnnihilation; import quests.Q10282_ToTheSeedOfAnnihilation.Q10282_ToTheSeedOfAnnihilation;
@ -557,6 +556,7 @@ import quests.not_done.Q00841_ContaminationContainment;
import quests.not_done.Q00843_GiantEvolutionControl; import quests.not_done.Q00843_GiantEvolutionControl;
import quests.not_done.Q00846_BuildingUpStrength; import quests.not_done.Q00846_BuildingUpStrength;
import quests.not_done.Q00929_SeekerRescue; import quests.not_done.Q00929_SeekerRescue;
import quests.not_done.Q00985_AdventureGuildsSpecialRequestLv1;
import quests.not_done.Q00986_AdventureGuildsSpecialRequestLv2; import quests.not_done.Q00986_AdventureGuildsSpecialRequestLv2;
import quests.not_done.Q00987_AdventureGuildsSpecialRequestLv3; import quests.not_done.Q00987_AdventureGuildsSpecialRequestLv3;
import quests.not_done.Q00988_AdventureGuildsSpecialRequestLv4; import quests.not_done.Q00988_AdventureGuildsSpecialRequestLv4;
@ -862,7 +862,7 @@ public class QuestMasterHandler
Q00931_MemoriesOfTheWind.class, Q00931_MemoriesOfTheWind.class,
Q00932_SayhasEnergy.class, Q00932_SayhasEnergy.class,
Q00937_ToReviveTheFishingGuild.class, Q00937_ToReviveTheFishingGuild.class,
Q00985_AdventureGuildsSpecialRequestLv1.class, Q00985_AdventureGuildsSpecialRequestLv1.class, // TODO: Not done.
Q00986_AdventureGuildsSpecialRequestLv2.class, // TODO: Not done. Q00986_AdventureGuildsSpecialRequestLv2.class, // TODO: Not done.
Q00987_AdventureGuildsSpecialRequestLv3.class, // TODO: Not done. Q00987_AdventureGuildsSpecialRequestLv3.class, // TODO: Not done.
Q00988_AdventureGuildsSpecialRequestLv4.class, // TODO: Not done. Q00988_AdventureGuildsSpecialRequestLv4.class, // TODO: Not done.

View File

@ -0,0 +1,36 @@
/*
* 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.not_done;
import org.l2jmobius.Config;
import org.l2jmobius.gameserver.model.quest.Quest;
/**
* @author Mobius
*/
public class Q00985_AdventureGuildsSpecialRequestLv1 extends Quest
{
private static final int START_NPC = 33946;
public Q00985_AdventureGuildsSpecialRequestLv1()
{
super(986);
addStartNpc(START_NPC);
addTalkId(START_NPC);
addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
}
}

View File

@ -1,5 +0,0 @@
<html><body>Histie:<br>
What brings you to such a dangerous place?<br>
You shouldn't be here. Go back.<br>
(Only characters above Lv. 85-89.)
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
Huh? Are you an ally?<br>
That seal... Isn't it Elikia's? Well I guess you are an ally.<br>
Did Elikia send you?<br>
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-02.htm">"Yes."</Button>
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
Elikia must have been in a hurry. <br>
Well, I'm doing fine. Of course I didn't completly recover from my time with the Embryo, but I should be able to carry out my revenge soon.<br>
Elise is pretty talented. I was able to recover thanks to her.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-03.htm">"Revenge?"</Button>
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
Why are you talking to me?<br>
I don't know you... Don't you even try to trick me.<br>
(Quest may only be undertaken by characters with the Blackbird Seal.)
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-04.htm">"Revenge?"</Button>
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
We have to get our revenge!<br>
They dared set up a trap for me, and made me rely on Elise! Unforgivable!<br>
Won't you help me get my revenge?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-05.htm">"How can I help?"</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Travelers Guild asks to destroy monsters in the Blood Marsh and on the Altar of Evil.<br>
Hunting objectives: all monsters in these locations.<br>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Travelers Guild asks to destroy <font color="LEVEL">200</font> monsters in the Blood Marsh and on the Altar of Evil.<br>
Hunting objectives: all monsters in these locations.
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Histie:<br>
Not enough. You think this is enough to honor our name?<br>
Kill <font color="LEVEL">200 Atelia Passionate Soldiers, Atelia Elite Captains, Atelia High Pirests, and Fortress Dark Wizards</font>.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-08.html">"I know."</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Already done? Great!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-09.html">"I know."</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Great! No wonder Elikia sent you here.<br>
But this isn't enough. I'll stay here until I'm satisfied. Elikia and Leona might be worried about me, so can you tell them I'm alright? Here's a letter. They'll know I'm safe with this.
</body></html>

View File

@ -1,179 +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.Q00985_AdventureGuildsSpecialRequestLv1;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.gameserver.enums.QuestSound;
import org.l2jmobius.gameserver.enums.QuestType;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
/**
* Adventure Guilds Special Request Lv1 (985)
* @author Dmitri
*/
public class Q00985_AdventureGuildsSpecialRequestLv1 extends Quest
{
// NPCs
private static final int ADVENTURE_GUILDSMAN = 33946;
// Monsters
private static final int[] MONSTERS =
{
24458, // Vampire Swamp Warrior
24457, // Swamp Vampire Rogue
24460, // Swamp Vampire Shooter
24459, // Swamp Vampire Wizard
24454, // Berserker of Fate
24455, // Prophet of Doom
24453, // Servant of Fate
24452, // Soldier of Fate
};
// Misc
private static final int MIN_LEVEL = 85;
private static final int MAX_LEVEL = 89;
private static final boolean PARTY_QUEST = true;
// Reward
private static final int RUNE_WIND_RESISTANCE_RING = 14599;
public Q00985_AdventureGuildsSpecialRequestLv1()
{
super(985);
addStartNpc(ADVENTURE_GUILDSMAN);
addTalkId(ADVENTURE_GUILDSMAN);
addKillId(MONSTERS);
addCondLevel(MIN_LEVEL, MAX_LEVEL, "33946-00.htm");
}
@Override
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
{
String htmltext = null;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return htmltext;
}
switch (event)
{
case "33946-02.htm":
case "33946-03.htm":
case "33946-04.htm":
case "33946-08.html":
{
htmltext = event;
break;
}
case "33946-05.htm":
{
qs.startQuest();
htmltext = event;
break;
}
case "33946-09.html":
{
giveItems(player, RUNE_WIND_RESISTANCE_RING, 1);
addExpAndSp(player, 2108117571L, 2529741);
qs.exitQuest(QuestType.DAILY, true);
htmltext = event;
break;
}
}
return htmltext;
}
@Override
public String onTalk(Npc npc, PlayerInstance player)
{
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
switch (qs.getState())
{
case State.CREATED:
{
htmltext = "33946-01.htm";
break;
}
case State.STARTED:
{
if (qs.isCond(1))
{
htmltext = "33946-06.html";
}
else
{
htmltext = "33946-07.html";
}
break;
}
case State.COMPLETED:
{
if (qs.isNowAvailable())
{
qs.setState(State.CREATED);
htmltext = "33946-01.htm";
}
else
{
htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
}
break;
}
}
return htmltext;
}
@Override
public String onKill(Npc npc, PlayerInstance killer, boolean isSummon)
{
final QuestState qs = PARTY_QUEST ? getRandomPartyMemberState(killer, -1, 3, npc) : getQuestState(killer, false);
if ((qs != null) && qs.isCond(1))
{
final int killedGhosts = qs.getInt("AncientGhosts") + 1;
qs.set("AncientGhosts", killedGhosts);
playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
if (killedGhosts >= 200)
{
qs.setCond(2, true);
}
sendNpcLogList(killer);
}
return super.onKill(npc, killer, isSummon);
}
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
holder.add(new NpcLogListHolder(NpcStringId.DEFEAT_MONSTER.getId(), true, qs.getInt("AncientGhosts")));
return holder;
}
return super.getNpcLogList(player);
}
}

View File

@ -221,7 +221,6 @@ import quests.Q00930_DisparagingThePhantoms.Q00930_DisparagingThePhantoms;
import quests.Q00931_MemoriesOfTheWind.Q00931_MemoriesOfTheWind; import quests.Q00931_MemoriesOfTheWind.Q00931_MemoriesOfTheWind;
import quests.Q00932_SayhasEnergy.Q00932_SayhasEnergy; import quests.Q00932_SayhasEnergy.Q00932_SayhasEnergy;
import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild; import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild;
import quests.Q00985_AdventureGuildsSpecialRequestLv1.Q00985_AdventureGuildsSpecialRequestLv1;
import quests.Q10282_ToTheSeedOfAnnihilation.Q10282_ToTheSeedOfAnnihilation; import quests.Q10282_ToTheSeedOfAnnihilation.Q10282_ToTheSeedOfAnnihilation;
import quests.Q10283_RequestOfIceMerchant.Q10283_RequestOfIceMerchant; import quests.Q10283_RequestOfIceMerchant.Q10283_RequestOfIceMerchant;
import quests.Q10284_AcquisitionOfDivineSword.Q10284_AcquisitionOfDivineSword; import quests.Q10284_AcquisitionOfDivineSword.Q10284_AcquisitionOfDivineSword;
@ -515,6 +514,7 @@ import quests.not_done.Q00841_ContaminationContainment;
import quests.not_done.Q00843_GiantEvolutionControl; import quests.not_done.Q00843_GiantEvolutionControl;
import quests.not_done.Q00846_BuildingUpStrength; import quests.not_done.Q00846_BuildingUpStrength;
import quests.not_done.Q00929_SeekerRescue; import quests.not_done.Q00929_SeekerRescue;
import quests.not_done.Q00985_AdventureGuildsSpecialRequestLv1;
import quests.not_done.Q00986_AdventureGuildsSpecialRequestLv2; import quests.not_done.Q00986_AdventureGuildsSpecialRequestLv2;
import quests.not_done.Q00987_AdventureGuildsSpecialRequestLv3; import quests.not_done.Q00987_AdventureGuildsSpecialRequestLv3;
import quests.not_done.Q00988_AdventureGuildsSpecialRequestLv4; import quests.not_done.Q00988_AdventureGuildsSpecialRequestLv4;
@ -804,7 +804,7 @@ public class QuestMasterHandler
Q00931_MemoriesOfTheWind.class, Q00931_MemoriesOfTheWind.class,
Q00932_SayhasEnergy.class, Q00932_SayhasEnergy.class,
Q00937_ToReviveTheFishingGuild.class, Q00937_ToReviveTheFishingGuild.class,
Q00985_AdventureGuildsSpecialRequestLv1.class, Q00985_AdventureGuildsSpecialRequestLv1.class, // TODO: Not done.
Q00986_AdventureGuildsSpecialRequestLv2.class, // TODO: Not done. Q00986_AdventureGuildsSpecialRequestLv2.class, // TODO: Not done.
Q00987_AdventureGuildsSpecialRequestLv3.class, // TODO: Not done. Q00987_AdventureGuildsSpecialRequestLv3.class, // TODO: Not done.
Q00988_AdventureGuildsSpecialRequestLv4.class, // TODO: Not done. Q00988_AdventureGuildsSpecialRequestLv4.class, // TODO: Not done.

View File

@ -0,0 +1,36 @@
/*
* 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.not_done;
import org.l2jmobius.Config;
import org.l2jmobius.gameserver.model.quest.Quest;
/**
* @author Mobius
*/
public class Q00985_AdventureGuildsSpecialRequestLv1 extends Quest
{
private static final int START_NPC = 33946;
public Q00985_AdventureGuildsSpecialRequestLv1()
{
super(986);
addStartNpc(START_NPC);
addTalkId(START_NPC);
addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
}
}

View File

@ -1,3 +1,3 @@
<html><body>Quartermaster:<br> <html><body>Quartermaster:<br>
Complete Aden Vanguard Quartermaster’s daily quest. The necessary quest: <font color="LEVEL">The Fallen King's Men</font>. Complete Aden Vanguard Quartermaster's daily quest. The necessary quest: <font color="LEVEL">The Fallen King's Men</font>.
</body></html> </body></html>

View File

@ -1,3 +1,3 @@
<html><body>Quartermaster:<br> <html><body>Quartermaster:<br>
Complete Aden Vanguard Quartermaster’s daily quest. The necessary quest: <font color="LEVEL">The Fallen King's Men</font>. Complete Aden Vanguard Quartermaster's daily quest. The necessary quest: <font color="LEVEL">The Fallen King's Men</font>.
</body></html> </body></html>

View File

@ -1,5 +0,0 @@
<html><body>Histie:<br>
What brings you to such a dangerous place?<br>
You shouldn't be here. Go back.<br>
(Only characters above Lv. 85-89.)
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
Huh? Are you an ally?<br>
That seal... Isn't it Elikia's? Well I guess you are an ally.<br>
Did Elikia send you?<br>
<Button ALIGN=LEFT ICON="Normal" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-02.htm">"Yes."</Button>
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
Elikia must have been in a hurry. <br>
Well, I'm doing fine. Of course I didn't completly recover from my time with the Embryo, but I should be able to carry out my revenge soon.<br>
Elise is pretty talented. I was able to recover thanks to her.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-03.htm">"Revenge?"</Button>
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
Why are you talking to me?<br>
I don't know you... Don't you even try to trick me.<br>
(Quest may only be undertaken by characters with the Blackbird Seal.)
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-04.htm">"Revenge?"</Button>
</body></html>

View File

@ -1,6 +0,0 @@
<html><body>Histie:<br>
We have to get our revenge!<br>
They dared set up a trap for me, and made me rely on Elise! Unforgivable!<br>
Won't you help me get my revenge?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-05.htm">"How can I help?"</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Travelers Guild asks to destroy monsters in the Blood Marsh and on the Altar of Evil.<br>
Hunting objectives: all monsters in these locations.<br>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Travelers Guild asks to destroy <font color="LEVEL">200</font> monsters in the Blood Marsh and on the Altar of Evil.<br>
Hunting objectives: all monsters in these locations.
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Histie:<br>
Not enough. You think this is enough to honor our name?<br>
Kill <font color="LEVEL">200 Atelia Passionate Soldiers, Atelia Elite Captains, Atelia High Pirests, and Fortress Dark Wizards</font>.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-08.html">"I know."</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Already done? Great!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00985_AdventureGuildsSpecialRequestLv1 33946-09.html">"I know."</Button>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Histie:<br>
Great! No wonder Elikia sent you here.<br>
But this isn't enough. I'll stay here until I'm satisfied. Elikia and Leona might be worried about me, so can you tell them I'm alright? Here's a letter. They'll know I'm safe with this.
</body></html>

View File

@ -1,179 +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.Q00985_AdventureGuildsSpecialRequestLv1;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.gameserver.enums.QuestSound;
import org.l2jmobius.gameserver.enums.QuestType;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.holders.NpcLogListHolder;
import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State;
import org.l2jmobius.gameserver.network.NpcStringId;
/**
* Adventure Guilds Special Request Lv1 (985)
* @author Dmitri
*/
public class Q00985_AdventureGuildsSpecialRequestLv1 extends Quest
{
// NPCs
private static final int ADVENTURE_GUILDSMAN = 33946;
// Monsters
private static final int[] MONSTERS =
{
24458, // Vampire Swamp Warrior
24457, // Swamp Vampire Rogue
24460, // Swamp Vampire Shooter
24459, // Swamp Vampire Wizard
24454, // Berserker of Fate
24455, // Prophet of Doom
24453, // Servant of Fate
24452, // Soldier of Fate
};
// Misc
private static final int MIN_LEVEL = 85;
private static final int MAX_LEVEL = 89;
private static final boolean PARTY_QUEST = true;
// Reward
private static final int RUNE_WIND_RESISTANCE_RING = 14599;
public Q00985_AdventureGuildsSpecialRequestLv1()
{
super(985);
addStartNpc(ADVENTURE_GUILDSMAN);
addTalkId(ADVENTURE_GUILDSMAN);
addKillId(MONSTERS);
addCondLevel(MIN_LEVEL, MAX_LEVEL, "33946-00.htm");
}
@Override
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
{
String htmltext = null;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return htmltext;
}
switch (event)
{
case "33946-02.htm":
case "33946-03.htm":
case "33946-04.htm":
case "33946-08.html":
{
htmltext = event;
break;
}
case "33946-05.htm":
{
qs.startQuest();
htmltext = event;
break;
}
case "33946-09.html":
{
giveItems(player, RUNE_WIND_RESISTANCE_RING, 1);
addExpAndSp(player, 2108117571L, 2529741);
qs.exitQuest(QuestType.DAILY, true);
htmltext = event;
break;
}
}
return htmltext;
}
@Override
public String onTalk(Npc npc, PlayerInstance player)
{
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
switch (qs.getState())
{
case State.CREATED:
{
htmltext = "33946-01.htm";
break;
}
case State.STARTED:
{
if (qs.isCond(1))
{
htmltext = "33946-06.html";
}
else
{
htmltext = "33946-07.html";
}
break;
}
case State.COMPLETED:
{
if (qs.isNowAvailable())
{
qs.setState(State.CREATED);
htmltext = "33946-01.htm";
}
else
{
htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
}
break;
}
}
return htmltext;
}
@Override
public String onKill(Npc npc, PlayerInstance killer, boolean isSummon)
{
final QuestState qs = PARTY_QUEST ? getRandomPartyMemberState(killer, -1, 3, npc) : getQuestState(killer, false);
if ((qs != null) && qs.isCond(1))
{
final int killedGhosts = qs.getInt("AncientGhosts") + 1;
qs.set("AncientGhosts", killedGhosts);
playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
if (killedGhosts >= 200)
{
qs.setCond(2, true);
}
sendNpcLogList(killer);
}
return super.onKill(npc, killer, isSummon);
}
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
holder.add(new NpcLogListHolder(NpcStringId.DEFEAT_MONSTER.getId(), true, qs.getInt("AncientGhosts")));
return holder;
}
return super.getNpcLogList(player);
}
}

View File

@ -227,7 +227,6 @@ import quests.Q00930_DisparagingThePhantoms.Q00930_DisparagingThePhantoms;
import quests.Q00931_MemoriesOfTheWind.Q00931_MemoriesOfTheWind; import quests.Q00931_MemoriesOfTheWind.Q00931_MemoriesOfTheWind;
import quests.Q00932_SayhasEnergy.Q00932_SayhasEnergy; import quests.Q00932_SayhasEnergy.Q00932_SayhasEnergy;
import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild; import quests.Q00937_ToReviveTheFishingGuild.Q00937_ToReviveTheFishingGuild;
import quests.Q00985_AdventureGuildsSpecialRequestLv1.Q00985_AdventureGuildsSpecialRequestLv1;
import quests.Q10282_ToTheSeedOfAnnihilation.Q10282_ToTheSeedOfAnnihilation; import quests.Q10282_ToTheSeedOfAnnihilation.Q10282_ToTheSeedOfAnnihilation;
import quests.Q10283_RequestOfIceMerchant.Q10283_RequestOfIceMerchant; import quests.Q10283_RequestOfIceMerchant.Q10283_RequestOfIceMerchant;
import quests.Q10284_AcquisitionOfDivineSword.Q10284_AcquisitionOfDivineSword; import quests.Q10284_AcquisitionOfDivineSword.Q10284_AcquisitionOfDivineSword;
@ -536,6 +535,7 @@ import quests.not_done.Q00841_ContaminationContainment;
import quests.not_done.Q00843_GiantEvolutionControl; import quests.not_done.Q00843_GiantEvolutionControl;
import quests.not_done.Q00846_BuildingUpStrength; import quests.not_done.Q00846_BuildingUpStrength;
import quests.not_done.Q00929_SeekerRescue; import quests.not_done.Q00929_SeekerRescue;
import quests.not_done.Q00985_AdventureGuildsSpecialRequestLv1;
import quests.not_done.Q00986_AdventureGuildsSpecialRequestLv2; import quests.not_done.Q00986_AdventureGuildsSpecialRequestLv2;
import quests.not_done.Q00987_AdventureGuildsSpecialRequestLv3; import quests.not_done.Q00987_AdventureGuildsSpecialRequestLv3;
import quests.not_done.Q00988_AdventureGuildsSpecialRequestLv4; import quests.not_done.Q00988_AdventureGuildsSpecialRequestLv4;
@ -832,7 +832,7 @@ public class QuestMasterHandler
Q00931_MemoriesOfTheWind.class, Q00931_MemoriesOfTheWind.class,
Q00932_SayhasEnergy.class, Q00932_SayhasEnergy.class,
Q00937_ToReviveTheFishingGuild.class, Q00937_ToReviveTheFishingGuild.class,
Q00985_AdventureGuildsSpecialRequestLv1.class, Q00985_AdventureGuildsSpecialRequestLv1.class, // TODO: Not done.
Q00986_AdventureGuildsSpecialRequestLv2.class, // TODO: Not done. Q00986_AdventureGuildsSpecialRequestLv2.class, // TODO: Not done.
Q00987_AdventureGuildsSpecialRequestLv3.class, // TODO: Not done. Q00987_AdventureGuildsSpecialRequestLv3.class, // TODO: Not done.
Q00988_AdventureGuildsSpecialRequestLv4.class, // TODO: Not done. Q00988_AdventureGuildsSpecialRequestLv4.class, // TODO: Not done.

View File

@ -0,0 +1,36 @@
/*
* 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.not_done;
import org.l2jmobius.Config;
import org.l2jmobius.gameserver.model.quest.Quest;
/**
* @author Mobius
*/
public class Q00985_AdventureGuildsSpecialRequestLv1 extends Quest
{
private static final int START_NPC = 33946;
public Q00985_AdventureGuildsSpecialRequestLv1()
{
super(986);
addStartNpc(START_NPC);
addTalkId(START_NPC);
addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
}
}