Addition of quests 10423, 10899, 10900 and 10901.

Contributed by Dmitri.
This commit is contained in:
MobiusDevelopment 2020-01-27 13:33:35 +00:00
parent a58a2e11f9
commit 6d89220f21
118 changed files with 1961 additions and 386 deletions

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
In order to take on this mission, you must first build more trust with us.<br>
<font color="LEVEL">(Only characters with faction level 5 or above with the Blackbird Clan may undertake this quest.)</font><br>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
Your're the one that Hephah has sent, right? If not, you should go meet Herphah and receive a mission from her before you continue. If you think it doesn't matter, I can continue anyway. Do you want me to continue?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-02.htm">"Sure, no problem!"</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
Herphah wants you to do some missions, and I'll chose an appropriate mission depending on your relationship with us at the Adventure Guild.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-03.htm">"Go on."</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
Your mission is to assist with the task at the Altar of Evil. If successful, our Adventure Guild will give you additional rewards on top of the mission payment and your relationship with our faction will grow even stronger.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-04.htm">"Alright."</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
You've already leamed everything you need to know about the mission. By that I mean, how to go to the Altar of Evil. You should be able to start the mission right away without further explanation.<br>
But if you want to listen to the explanation again, I'd be happy to tell you.
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Erda:<br>
Good choice. Now, go to <font color="LEVEL">Black Wizard Lapathia</font> at the <font color="LEVEL">Altar of Evil</font> and do the mission that she gives you. When the mission is done, come back to me.<br>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Erda:<br>
I asked the Adventure Guild to send an adventurer but didn't expect they would send you. I'd like to see how good you are.<br>
<font color="LEVEL">(To do "Basic Mission: Isle of Souls," you must do "Uncover the Secret" and "More Aggressive Operation" through Black Wizard Lapathia.)</font><br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-07.html">"Go on."</Button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Erda:<br>
You completed all the missions I gave you, meaning that you also completed those of the Adventure Guildsman. Are you going back to the Town of Aden? How?<br>
Don't tell me you're going to walk all the way up there. I know a better way.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-08.html">"Go on."</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
When setting out for a joumey, veteran adventurers always pack <font color="LEVEL">Scrolls of Escape</font>, it teleports the user immediately to the closest village or to the check point.<br>
If you have these useful items, you can move easily after hunting or when you are far away from the village. Since you've been a great help to me, I'll give you the scroll that can teleport you directly to the Town of Aden.
</body></html>

View File

@ -0,0 +1,202 @@
/*
* 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.Q10423_EmbryoStrongholdRaid;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.commons.util.CommonUtil;
import org.l2jmobius.gameserver.enums.QuestSound;
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;
/**
* Embryo Stronghold Raid (10423)
* @URL https://l2wiki.com/Embryo_Stronghold_Raid
* @author Dmitri
*/
public class Q10423_EmbryoStrongholdRaid extends Quest
{
// NPCs
private static final int ERDA = 34319;
// Monsters
private static final int[] MOBS =
{
26199, // Sampson
26200, // Hanson
26201, // Grom
26202, // Medvez
26203, // Zigatan
26204, // Hunchback Kwai
26205, // Cornix
26206, // Caranix
26207, // Jonadan
26208, // Demien
26209, // Berg
26210, // Tarku
26211, // Tarpin
26212, // Embryo Safe Vault
26213, // Embryo Secret Vault
26214, // Sakum
26215, // Crazy Typhoon
26216, // Cursed Haren
26217, // Flynt
26218, // Harp
26219, // Maliss
26220, // Isadora
26221, // Whitra
26222, // Bletra
26223, // Upgraded Siege Tank
26224, // Vegima
26225, // Varonia
26226, // Aronia
26227, // Odd
26228, // Even
26229 // Nemertess
};
// Rewards
private static final int SUPERIOR_GIANTS_CODEX = 46151; // Superior Giant's Codex - Mastery Chapter 1
// Misc
private static final int MIN_LEVEL = 100;
public Q10423_EmbryoStrongholdRaid()
{
super(10423);
addStartNpc(ERDA);
addTalkId(ERDA);
addKillId(MOBS);
addCondMinLevel(MIN_LEVEL, "34319-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 "34319-02.htm":
case "34319-03.htm":
case "34319-07.html":
{
htmltext = event;
break;
}
case "34319-04.htm":
{
qs.startQuest();
htmltext = event;
break;
}
case "34319-08.html":
{
if (qs.isCond(2))
{
giveItems(player, SUPERIOR_GIANTS_CODEX, 1);
addExpAndSp(player, 29682570651L, 71108570);
qs.exitQuest(false, 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 = "34319-01.htm";
break;
}
case State.STARTED:
{
if (qs.isCond(1))
{
htmltext = "34319-05.html";
}
else
{
htmltext = "34319-06.html";
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
return htmltext;
}
@Override
public String onKill(Npc npc, PlayerInstance player, boolean isSummon)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
int killedEmbryo = qs.getInt("killed_" + MOBS[0]);
if (CommonUtil.contains(MOBS, npc.getId()))
{
if (killedEmbryo < 30)
{
killedEmbryo++;
qs.set("killed_" + MOBS[0], killedEmbryo);
playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
if (killedEmbryo == 30)
{
qs.setCond(2, true);
}
}
return super.onKill(npc, player, isSummon);
}
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isStarted() && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
holder.add(new NpcLogListHolder(NpcStringId.DEFEAT_EMBRYO_OFFICER, qs.getInt("killed_" + MOBS[0])));
return holder;
}
return super.getNpcLogList(player);
}
}

View File

@ -333,6 +333,7 @@ import quests.Q10419_KekropusLetterKampfsWhereabouts.Q10419_KekropusLetterKampfs
import quests.Q10420_TheVarkaSilenosSupporters.Q10420_TheVarkaSilenosSupporters;
import quests.Q10421_AssassinationOfTheVarkaSilenosCommander.Q10421_AssassinationOfTheVarkaSilenosCommander;
import quests.Q10422_AssassinationOfTheVarkaSilenosChief.Q10422_AssassinationOfTheVarkaSilenosChief;
import quests.Q10423_EmbryoStrongholdRaid.Q10423_EmbryoStrongholdRaid;
import quests.Q10424_KekropusLetterBelosWhereabouts.Q10424_KekropusLetterBelosWhereabouts;
import quests.Q10425_TheKetraOrcSupporters.Q10425_TheKetraOrcSupporters;
import quests.Q10426_AssassinationOfTheKetraOrcCommander.Q10426_AssassinationOfTheKetraOrcCommander;
@ -882,7 +883,7 @@ public class QuestMasterHandler
Q10420_TheVarkaSilenosSupporters.class,
Q10421_AssassinationOfTheVarkaSilenosCommander.class,
Q10422_AssassinationOfTheVarkaSilenosChief.class,
Q10423_EmbryoStrongholdRaid.class, // TODO: Not done.
Q10423_EmbryoStrongholdRaid.class,
Q10424_KekropusLetterBelosWhereabouts.class,
Q10425_TheKetraOrcSupporters.class,
Q10426_AssassinationOfTheKetraOrcCommander.class,

View File

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

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
In order to take on this mission, you must first build more trust with us.<br>
<font color="LEVEL">(Only characters with faction level 5 or above with the Blackbird Clan may undertake this quest.)</font><br>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
Your're the one that Hephah has sent, right? If not, you should go meet Herphah and receive a mission from her before you continue. If you think it doesn't matter, I can continue anyway. Do you want me to continue?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-02.htm">"Sure, no problem!"</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
Herphah wants you to do some missions, and I'll chose an appropriate mission depending on your relationship with us at the Adventure Guild.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-03.htm">"Go on."</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
Your mission is to assist with the task at the Altar of Evil. If successful, our Adventure Guild will give you additional rewards on top of the mission payment and your relationship with our faction will grow even stronger.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-04.htm">"Alright."</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
You've already leamed everything you need to know about the mission. By that I mean, how to go to the Altar of Evil. You should be able to start the mission right away without further explanation.<br>
But if you want to listen to the explanation again, I'd be happy to tell you.
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Erda:<br>
Good choice. Now, go to <font color="LEVEL">Black Wizard Lapathia</font> at the <font color="LEVEL">Altar of Evil</font> and do the mission that she gives you. When the mission is done, come back to me.<br>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Erda:<br>
I asked the Adventure Guild to send an adventurer but didn't expect they would send you. I'd like to see how good you are.<br>
<font color="LEVEL">(To do "Basic Mission: Isle of Souls," you must do "Uncover the Secret" and "More Aggressive Operation" through Black Wizard Lapathia.)</font><br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-07.html">"Go on."</Button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Erda:<br>
You completed all the missions I gave you, meaning that you also completed those of the Adventure Guildsman. Are you going back to the Town of Aden? How?<br>
Don't tell me you're going to walk all the way up there. I know a better way.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-08.html">"Go on."</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
When setting out for a joumey, veteran adventurers always pack <font color="LEVEL">Scrolls of Escape</font>, it teleports the user immediately to the closest village or to the check point.<br>
If you have these useful items, you can move easily after hunting or when you are far away from the village. Since you've been a great help to me, I'll give you the scroll that can teleport you directly to the Town of Aden.
</body></html>

View File

@ -0,0 +1,202 @@
/*
* 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.Q10423_EmbryoStrongholdRaid;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.commons.util.CommonUtil;
import org.l2jmobius.gameserver.enums.QuestSound;
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;
/**
* Embryo Stronghold Raid (10423)
* @URL https://l2wiki.com/Embryo_Stronghold_Raid
* @author Dmitri
*/
public class Q10423_EmbryoStrongholdRaid extends Quest
{
// NPCs
private static final int ERDA = 34319;
// Monsters
private static final int[] MOBS =
{
26199, // Sampson
26200, // Hanson
26201, // Grom
26202, // Medvez
26203, // Zigatan
26204, // Hunchback Kwai
26205, // Cornix
26206, // Caranix
26207, // Jonadan
26208, // Demien
26209, // Berg
26210, // Tarku
26211, // Tarpin
26212, // Embryo Safe Vault
26213, // Embryo Secret Vault
26214, // Sakum
26215, // Crazy Typhoon
26216, // Cursed Haren
26217, // Flynt
26218, // Harp
26219, // Maliss
26220, // Isadora
26221, // Whitra
26222, // Bletra
26223, // Upgraded Siege Tank
26224, // Vegima
26225, // Varonia
26226, // Aronia
26227, // Odd
26228, // Even
26229 // Nemertess
};
// Rewards
private static final int SUPERIOR_GIANTS_CODEX = 46151; // Superior Giant's Codex - Mastery Chapter 1
// Misc
private static final int MIN_LEVEL = 100;
public Q10423_EmbryoStrongholdRaid()
{
super(10423);
addStartNpc(ERDA);
addTalkId(ERDA);
addKillId(MOBS);
addCondMinLevel(MIN_LEVEL, "34319-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 "34319-02.htm":
case "34319-03.htm":
case "34319-07.html":
{
htmltext = event;
break;
}
case "34319-04.htm":
{
qs.startQuest();
htmltext = event;
break;
}
case "34319-08.html":
{
if (qs.isCond(2))
{
giveItems(player, SUPERIOR_GIANTS_CODEX, 1);
addExpAndSp(player, 29682570651L, 71108570);
qs.exitQuest(false, 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 = "34319-01.htm";
break;
}
case State.STARTED:
{
if (qs.isCond(1))
{
htmltext = "34319-05.html";
}
else
{
htmltext = "34319-06.html";
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
return htmltext;
}
@Override
public String onKill(Npc npc, PlayerInstance player, boolean isSummon)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
int killedEmbryo = qs.getInt("killed_" + MOBS[0]);
if (CommonUtil.contains(MOBS, npc.getId()))
{
if (killedEmbryo < 30)
{
killedEmbryo++;
qs.set("killed_" + MOBS[0], killedEmbryo);
playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
if (killedEmbryo == 30)
{
qs.setCond(2, true);
}
}
return super.onKill(npc, player, isSummon);
}
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isStarted() && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
holder.add(new NpcLogListHolder(NpcStringId.DEFEAT_EMBRYO_OFFICER, qs.getInt("killed_" + MOBS[0])));
return holder;
}
return super.getNpcLogList(player);
}
}

View File

@ -292,6 +292,7 @@ import quests.Q10419_KekropusLetterKampfsWhereabouts.Q10419_KekropusLetterKampfs
import quests.Q10420_TheVarkaSilenosSupporters.Q10420_TheVarkaSilenosSupporters;
import quests.Q10421_AssassinationOfTheVarkaSilenosCommander.Q10421_AssassinationOfTheVarkaSilenosCommander;
import quests.Q10422_AssassinationOfTheVarkaSilenosChief.Q10422_AssassinationOfTheVarkaSilenosChief;
import quests.Q10423_EmbryoStrongholdRaid.Q10423_EmbryoStrongholdRaid;
import quests.Q10424_KekropusLetterBelosWhereabouts.Q10424_KekropusLetterBelosWhereabouts;
import quests.Q10425_TheKetraOrcSupporters.Q10425_TheKetraOrcSupporters;
import quests.Q10426_AssassinationOfTheKetraOrcCommander.Q10426_AssassinationOfTheKetraOrcCommander;
@ -800,7 +801,7 @@ public class QuestMasterHandler
Q10420_TheVarkaSilenosSupporters.class,
Q10421_AssassinationOfTheVarkaSilenosCommander.class,
Q10422_AssassinationOfTheVarkaSilenosChief.class,
Q10423_EmbryoStrongholdRaid.class, // TODO: Not done.
Q10423_EmbryoStrongholdRaid.class,
Q10424_KekropusLetterBelosWhereabouts.class,
Q10425_TheKetraOrcSupporters.class,
Q10426_AssassinationOfTheKetraOrcCommander.class,

View File

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

View File

@ -153,7 +153,6 @@
10356 Blacksmith's Soul-awakening Weapon - 2
10373 Exploring the Dimension - Sealing the Dimension
10418 The Immortal Pirate King
10423 Embryo Stronghold Ambush
10454 Final Embryo Apostle
10457 Kefensis' Illusion
10535 Blacksmith's Soul-awakening Weapon - 3
@ -206,7 +205,4 @@
10889 Savior's Path - Fallen Emperor's Throne
10890 Savior's Path - Fall of Etina
10893 End of Twisted Fate
10895 Restrain Queen Krosha
10899 Veteran Adventurer
10900 Path to Strength
10901 A Model Adventurer
10895 Restrain Queen Krosha

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
In order to take on this mission, you must first build more trust with us.<br>
<font color="LEVEL">(Only characters with faction level 5 or above with the Blackbird Clan may undertake this quest.)</font><br>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
Your're the one that Hephah has sent, right? If not, you should go meet Herphah and receive a mission from her before you continue. If you think it doesn't matter, I can continue anyway. Do you want me to continue?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-02.htm">"Sure, no problem!"</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
Herphah wants you to do some missions, and I'll chose an appropriate mission depending on your relationship with us at the Adventure Guild.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-03.htm">"Go on."</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
Your mission is to assist with the task at the Altar of Evil. If successful, our Adventure Guild will give you additional rewards on top of the mission payment and your relationship with our faction will grow even stronger.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-04.htm">"Alright."</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
You've already leamed everything you need to know about the mission. By that I mean, how to go to the Altar of Evil. You should be able to start the mission right away without further explanation.<br>
But if you want to listen to the explanation again, I'd be happy to tell you.
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Erda:<br>
Good choice. Now, go to <font color="LEVEL">Black Wizard Lapathia</font> at the <font color="LEVEL">Altar of Evil</font> and do the mission that she gives you. When the mission is done, come back to me.<br>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Erda:<br>
I asked the Adventure Guild to send an adventurer but didn't expect they would send you. I'd like to see how good you are.<br>
<font color="LEVEL">(To do "Basic Mission: Isle of Souls," you must do "Uncover the Secret" and "More Aggressive Operation" through Black Wizard Lapathia.)</font><br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-07.html">"Go on."</Button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Erda:<br>
You completed all the missions I gave you, meaning that you also completed those of the Adventure Guildsman. Are you going back to the Town of Aden? How?<br>
Don't tell me you're going to walk all the way up there. I know a better way.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-08.html">"Go on."</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
When setting out for a joumey, veteran adventurers always pack <font color="LEVEL">Scrolls of Escape</font>, it teleports the user immediately to the closest village or to the check point.<br>
If you have these useful items, you can move easily after hunting or when you are far away from the village. Since you've been a great help to me, I'll give you the scroll that can teleport you directly to the Town of Aden.
</body></html>

View File

@ -0,0 +1,202 @@
/*
* 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.Q10423_EmbryoStrongholdRaid;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.commons.util.CommonUtil;
import org.l2jmobius.gameserver.enums.QuestSound;
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;
/**
* Embryo Stronghold Raid (10423)
* @URL https://l2wiki.com/Embryo_Stronghold_Raid
* @author Dmitri
*/
public class Q10423_EmbryoStrongholdRaid extends Quest
{
// NPCs
private static final int ERDA = 34319;
// Monsters
private static final int[] MOBS =
{
26199, // Sampson
26200, // Hanson
26201, // Grom
26202, // Medvez
26203, // Zigatan
26204, // Hunchback Kwai
26205, // Cornix
26206, // Caranix
26207, // Jonadan
26208, // Demien
26209, // Berg
26210, // Tarku
26211, // Tarpin
26212, // Embryo Safe Vault
26213, // Embryo Secret Vault
26214, // Sakum
26215, // Crazy Typhoon
26216, // Cursed Haren
26217, // Flynt
26218, // Harp
26219, // Maliss
26220, // Isadora
26221, // Whitra
26222, // Bletra
26223, // Upgraded Siege Tank
26224, // Vegima
26225, // Varonia
26226, // Aronia
26227, // Odd
26228, // Even
26229 // Nemertess
};
// Rewards
private static final int SUPERIOR_GIANTS_CODEX = 46151; // Superior Giant's Codex - Mastery Chapter 1
// Misc
private static final int MIN_LEVEL = 100;
public Q10423_EmbryoStrongholdRaid()
{
super(10423);
addStartNpc(ERDA);
addTalkId(ERDA);
addKillId(MOBS);
addCondMinLevel(MIN_LEVEL, "34319-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 "34319-02.htm":
case "34319-03.htm":
case "34319-07.html":
{
htmltext = event;
break;
}
case "34319-04.htm":
{
qs.startQuest();
htmltext = event;
break;
}
case "34319-08.html":
{
if (qs.isCond(2))
{
giveItems(player, SUPERIOR_GIANTS_CODEX, 1);
addExpAndSp(player, 29682570651L, 71108570);
qs.exitQuest(false, 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 = "34319-01.htm";
break;
}
case State.STARTED:
{
if (qs.isCond(1))
{
htmltext = "34319-05.html";
}
else
{
htmltext = "34319-06.html";
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
return htmltext;
}
@Override
public String onKill(Npc npc, PlayerInstance player, boolean isSummon)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
int killedEmbryo = qs.getInt("killed_" + MOBS[0]);
if (CommonUtil.contains(MOBS, npc.getId()))
{
if (killedEmbryo < 30)
{
killedEmbryo++;
qs.set("killed_" + MOBS[0], killedEmbryo);
playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
if (killedEmbryo == 30)
{
qs.setCond(2, true);
}
}
return super.onKill(npc, player, isSummon);
}
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isStarted() && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
holder.add(new NpcLogListHolder(NpcStringId.DEFEAT_EMBRYO_OFFICER, qs.getInt("killed_" + MOBS[0])));
return holder;
}
return super.getNpcLogList(player);
}
}

View File

@ -105,7 +105,7 @@ public class Q10898_TowardAGoal extends Quest
{
case PENNY:
{
if ((qs.isCond(1)) && (player.getFactionLevel(Faction.ADVENTURE_GUILD) >= 2))
if ((qs.isCond(1)) && (player.getFactionLevel(Faction.ADVENTURE_GUILD) >= 3))
{
final QuestState st = player.getQuestState("Q00682_TheStrongInTheClosedSpace");
if ((st != null) && st.isCompleted())

View File

@ -0,0 +1,4 @@
<html><body>Penny:<br>
In order to take on this mission, you must first build more trust with us.<br>
<font color="LEVEL">(before you take the quest you need to complete the quest <font color="LEVEL">Toward A Goal</font> faction ADVENTURE GUILD.)</font><br>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
what a good day to die!? hello wanderer. You are still on the hero’s path, I see it!. I think you could help me !? and prove that you are the best hero of Aden!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10899_VeteranAdventurer 34413-02.htm">"what happened?"</button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Adventure Guildsman Penny:<br>
the fact is that true evil breaks out and threatens our world. I have a request for you hero!.<br>
but listen to me first.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10899_VeteranAdventurer 34413-03.htm">"of course I'm listening!"</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
There is a special request for a special fee, to deal with terrible monsters. The guild will pay you generously, since few people can cope with this task.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10899_VeteranAdventurer 34413-04.htm">"keep going."</Button>
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Adventure Guildsman Penny:<br>
Penny from Adventurers Guild in Aden wants you to reach amity level 4 with the guild. Keep on completing the The Strong in the Closed Space <font color="LEVEL">The Strong in the Closed Space</font> daily quest, until you’ve reached the necessary level of amity.
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Adventure Guildsman Penny:<br>
Penny from Adventurers Guild in Aden wants you to reach amity level 4 with the guild. Keep on completing the The Strong in the Closed Space <font color="LEVEL">The Strong in the Closed Space</font> daily quest, until you’ve reached the necessary level of amity.
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
I congratulate you, you have completed the task and defeated powerful Monsters. Get the hero your honestly deserved reward.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10899_VeteranAdventurer 34413-07.html">"Yes, I did."</Button>
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Adventure Guildsman Penny:<br>
We hope this is not our last meeting and we can constantly cooperate with you a great hero.
</body></html>

View File

@ -0,0 +1,128 @@
/*
* 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.Q10899_VeteranAdventurer;
import org.l2jmobius.gameserver.enums.Faction;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State;
import quests.Q10898_TowardAGoal.Q10898_TowardAGoal;
/**
* Veteran Adventurer (10899)
* @URL https://l2wiki.com/Veteran_Adventurer
* @author Dmitri
*/
public class Q10899_VeteranAdventurer extends Quest
{
// NPCs
private static final int PENNY = 34413;
// Misc
private static final int MIN_LEVEL = 100;
public Q10899_VeteranAdventurer()
{
super(10899);
addStartNpc(PENNY);
addTalkId(PENNY);
addCondMinLevel(MIN_LEVEL, "nolevel.html");
addCondCompletedQuest(Q10898_TowardAGoal.class.getSimpleName(), "34413-00.htm");
}
@Override
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return null;
}
String htmltext = null;
switch (event)
{
case "34413-02.htm":
case "34413-03.htm":
{
htmltext = event;
break;
}
case "34413-04.htm":
{
qs.startQuest();
htmltext = event;
break;
}
case "34413-07.html":
{
// Rewards
addExpAndSp(player, 62290620000L, 62290620);
addFactionPoints(player, Faction.ADVENTURE_GUILD, 100); // add FP points to ADVENTURE_GUILD Faction
qs.exitQuest(false, 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 = "34413-01.htm";
break;
}
case State.STARTED:
{
if ((qs.isCond(1)) && (player.getFactionLevel(Faction.ADVENTURE_GUILD) >= 4))
{
final QuestState st = player.getQuestState("Q00682_TheStrongInTheClosedSpace");
if ((st != null) && st.isCompleted())
{
qs.setCond(2, true);
htmltext = "34413-06.html";
}
else
{
htmltext = "34413-05.html";
}
}
if (qs.isCond(2))
{
htmltext = "34413-06.html";
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
return htmltext;
}
}

View File

@ -0,0 +1,4 @@
<html><body>Penny:<br>
I don't understand why someone like you is interested in this mission?<br>
(Only characters above Lv.100+.)
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Penny:<br>
In order to take on this mission, you must first build more trust with us.<br>
<font color="LEVEL">(before you take the quest you need to complete the quest <font color="LEVEL">Veteran Adventurer</font> faction ADVENTURE GUILD.)</font><br>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
what a good day to die!? hello wanderer. You are still on the hero’s path, I see it!. I think you could help me !? and prove that you are the best hero of Aden!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10900_PathToStrength 34413-02.htm">"what happened?"</button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Adventure Guildsman Penny:<br>
the fact is that true evil breaks out and threatens our world. I have a request for you hero!.<br>
but listen to me first.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10900_PathToStrength 34413-03.htm">"of course I'm listening!"</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
There is a special request for a special fee, to deal with terrible monsters. The guild will pay you generously, since few people can cope with this task.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10900_PathToStrength 34413-04.htm">"keep going."</Button>
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Adventure Guildsman Penny:<br>
Penny from Adventurers Guild in Aden wants you to reach amity level 5 with the guild. Keep on completing the The Strong in the Closed Space <font color="LEVEL">The Strong in the Closed Space</font> daily quest, until you’ve reached the necessary level of amity.
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Adventure Guildsman Penny:<br>
Penny from Adventurers Guild in Aden wants you to reach amity level 5 with the guild. Keep on completing the The Strong in the Closed Space <font color="LEVEL">The Strong in the Closed Space</font> daily quest, until you’ve reached the necessary level of amity.
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
I congratulate you, you have completed the task and defeated powerful Monsters. Get the hero your honestly deserved reward.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10900_PathToStrength 34413-07.html">"Yes, I did."</Button>
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Adventure Guildsman Penny:<br>
We hope this is not our last meeting and we can constantly cooperate with you a great hero.
</body></html>

View File

@ -0,0 +1,129 @@
/*
* 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.Q10900_PathToStrength;
import org.l2jmobius.gameserver.enums.Faction;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State;
import quests.Q10899_VeteranAdventurer.Q10899_VeteranAdventurer;
/**
* Veteran Adventurer (10900)
* @URL https://l2wiki.com/Path_to_Strength
* @author Dmitri
*/
public class Q10900_PathToStrength extends Quest
{
// NPCs
private static final int PENNY = 34413;
// Misc
private static final int MIN_LEVEL = 100;
public Q10900_PathToStrength()
{
super(10900);
addStartNpc(PENNY);
addTalkId(PENNY);
addCondMinLevel(MIN_LEVEL, "nolevel.html");
addCondCompletedQuest(Q10899_VeteranAdventurer.class.getSimpleName(), "34413-00.htm");
}
@Override
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return null;
}
String htmltext = null;
switch (event)
{
case "34413-02.htm":
case "34413-03.htm":
{
htmltext = event;
break;
}
case "34413-04.htm":
{
qs.startQuest();
htmltext = event;
break;
}
case "34413-07.html":
{
// Rewards
addExpAndSp(player, 83054160000L, 83054160);
addFactionPoints(player, Faction.ADVENTURE_GUILD, 100); // add FP points to ADVENTURE_GUILD Faction
qs.exitQuest(false, 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 = "34413-01.htm";
break;
}
case State.STARTED:
{
if ((qs.isCond(1)) && (player.getFactionLevel(Faction.ADVENTURE_GUILD) >= 5))
{
final QuestState st = player.getQuestState("Q00682_TheStrongInTheClosedSpace");
if ((st != null) && st.isCompleted())
{
qs.setCond(2, true);
htmltext = "34413-06.html";
}
else
{
htmltext = "34413-05.html";
}
}
if (qs.isCond(2))
{
htmltext = "34413-06.html";
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
return htmltext;
}
}

View File

@ -0,0 +1,4 @@
<html><body>Penny:<br>
I don't understand why someone like you is interested in this mission?<br>
(Only characters above Lv.100+.)
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Penny:<br>
In order to take on this mission, you must first build more trust with us.<br>
<font color="LEVEL">(before you take the quest you need to complete the quest <font color="LEVEL">Path to Strength</font> faction ADVENTURE GUILD.)</font><br>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
what a good day to die!? hello wanderer. You are still on the hero’s path, I see it!. I think you could help me !? and prove that you are the best hero of Aden!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10901_AModelAdventurer 34413-02.htm">"what happened?"</button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Adventure Guildsman Penny:<br>
the fact is that true evil breaks out and threatens our world. I have a request for you hero!.<br>
but listen to me first.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10901_AModelAdventurer 34413-03.htm">"of course I'm listening!"</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
There is a special request for a special fee, to deal with terrible monsters. The guild will pay you generously, since few people can cope with this task.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10901_AModelAdventurer 34413-04.htm">"keep going."</Button>
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Adventure Guildsman Penny:<br>
Penny from Adventurers Guild in Aden wants you to reach amity level 6 with the guild. Keep on completing the The Strong in the Closed Space <font color="LEVEL">The Strong in the Closed Space</font> daily quest, until you’ve reached the necessary level of amity.
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Adventure Guildsman Penny:<br>
Penny from Adventurers Guild in Aden wants you to reach amity level 6 with the guild. Keep on completing the The Strong in the Closed Space <font color="LEVEL">The Strong in the Closed Space</font> daily quest, until you’ve reached the necessary level of amity.
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
I congratulate you, you have completed the task and defeated powerful Monsters. Get the hero your honestly deserved reward.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10901_AModelAdventurer 34413-07.html">"Yes, I did."</Button>
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Adventure Guildsman Penny:<br>
We hope this is not our last meeting and we can constantly cooperate with you a great hero.
</body></html>

View File

@ -0,0 +1,132 @@
/*
* 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.Q10901_AModelAdventurer;
import org.l2jmobius.gameserver.enums.Faction;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State;
import quests.Q10900_PathToStrength.Q10900_PathToStrength;
/**
* A Model Adventurer (10901)
* @URL https://l2wiki.com/A_Model_Adventurer
* @author Dmitri
*/
public class Q10901_AModelAdventurer extends Quest
{
// NPCs
private static final int PENNY = 34413;
// Misc
private static final int MIN_LEVEL = 100;
// Rewards
private static final int RUNE_STONE = 39738; // Reward Item: Rune Stone
public Q10901_AModelAdventurer()
{
super(10901);
addStartNpc(PENNY);
addTalkId(PENNY);
addCondMinLevel(MIN_LEVEL, "nolevel.html");
addCondCompletedQuest(Q10900_PathToStrength.class.getSimpleName(), "34413-00.htm");
}
@Override
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return null;
}
String htmltext = null;
switch (event)
{
case "34413-02.htm":
case "34413-03.htm":
{
htmltext = event;
break;
}
case "34413-04.htm":
{
qs.startQuest();
htmltext = event;
break;
}
case "34413-07.html":
{
// Rewards
addExpAndSp(player, 103817700000L, 103817700);
addFactionPoints(player, Faction.ADVENTURE_GUILD, 100); // add FP points to ADVENTURE_GUILD Faction
giveItems(player, RUNE_STONE, 1);
qs.exitQuest(false, 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 = "34413-01.htm";
break;
}
case State.STARTED:
{
if ((qs.isCond(1)) && (player.getFactionLevel(Faction.ADVENTURE_GUILD) >= 6))
{
final QuestState st = player.getQuestState("Q00682_TheStrongInTheClosedSpace");
if ((st != null) && st.isCompleted())
{
qs.setCond(2, true);
htmltext = "34413-06.html";
}
else
{
htmltext = "34413-05.html";
}
}
if (qs.isCond(2))
{
htmltext = "34413-06.html";
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
return htmltext;
}
}

View File

@ -0,0 +1,4 @@
<html><body>Penny:<br>
I don't understand why someone like you is interested in this mission?<br>
(Only characters above Lv.100+.)
</body></html>

View File

@ -292,6 +292,7 @@ import quests.Q10419_KekropusLetterKampfsWhereabouts.Q10419_KekropusLetterKampfs
import quests.Q10420_TheVarkaSilenosSupporters.Q10420_TheVarkaSilenosSupporters;
import quests.Q10421_AssassinationOfTheVarkaSilenosCommander.Q10421_AssassinationOfTheVarkaSilenosCommander;
import quests.Q10422_AssassinationOfTheVarkaSilenosChief.Q10422_AssassinationOfTheVarkaSilenosChief;
import quests.Q10423_EmbryoStrongholdRaid.Q10423_EmbryoStrongholdRaid;
import quests.Q10424_KekropusLetterBelosWhereabouts.Q10424_KekropusLetterBelosWhereabouts;
import quests.Q10425_TheKetraOrcSupporters.Q10425_TheKetraOrcSupporters;
import quests.Q10426_AssassinationOfTheKetraOrcCommander.Q10426_AssassinationOfTheKetraOrcCommander;
@ -455,6 +456,9 @@ import quests.Q10892_RevengeOneStepAtATime.Q10892_RevengeOneStepAtATime;
import quests.Q10896_VisitTheAdventureGuild.Q10896_VisitTheAdventureGuild;
import quests.Q10897_ShowYourAbility.Q10897_ShowYourAbility;
import quests.Q10898_TowardAGoal.Q10898_TowardAGoal;
import quests.Q10899_VeteranAdventurer.Q10899_VeteranAdventurer;
import quests.Q10900_PathToStrength.Q10900_PathToStrength;
import quests.Q10901_AModelAdventurer.Q10901_AModelAdventurer;
import quests.custom.Q00529_RegularBarrierMaintenance.Q00529_RegularBarrierMaintenance;
import quests.custom.Q00560_HowToOvercomeFear.Q00560_HowToOvercomeFear;
import quests.custom.Q00589_ASecretChange.Q00589_ASecretChange;
@ -822,7 +826,7 @@ public class QuestMasterHandler
Q10420_TheVarkaSilenosSupporters.class,
Q10421_AssassinationOfTheVarkaSilenosCommander.class,
Q10422_AssassinationOfTheVarkaSilenosChief.class,
Q10423_EmbryoStrongholdRaid.class, // TODO: Not done.
Q10423_EmbryoStrongholdRaid.class,
Q10424_KekropusLetterBelosWhereabouts.class,
Q10425_TheKetraOrcSupporters.class,
Q10426_AssassinationOfTheKetraOrcCommander.class,
@ -1041,9 +1045,9 @@ public class QuestMasterHandler
Q10896_VisitTheAdventureGuild.class,
Q10897_ShowYourAbility.class,
Q10898_TowardAGoal.class,
Q10899_VeteranAdventurer.class, // TODO: Not done.
Q10900_PathToStrength.class, // TODO: Not done.
Q10901_AModelAdventurer.class, // TODO: Not done.
Q10899_VeteranAdventurer.class,
Q10900_PathToStrength.class,
Q10901_AModelAdventurer.class,
};
public static void main(String[] args)

View File

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

View File

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

View File

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

View File

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

View File

@ -149,7 +149,6 @@
10356 Blacksmiths Soul - 2
10373 Exploring the Dimension - Sealing the Dimension
10418 The Immortal Pirate King
10423 Embryo Stronghold Raid
10454 Final Embryo Apostle
10457 Kefensis' Illusion
10514 New Path to Glory
@ -193,10 +192,6 @@
10889 Savior's Path - Fallen Emperor's Throne
10890 Savior's Path - Fall of Etina
10893 End of Twisted Fate
10899 Veteran Adventurer
10900 Path to Strength
10901 A Model Adventurer
11024 Path of Destiny - Beginning
11028 Wind of Destiny - Encounter
11029 Wind of Destiny - Promise
11030 Wind of Destiny - Choice

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
In order to take on this mission, you must first build more trust with us.<br>
<font color="LEVEL">(Only characters with faction level 5 or above with the Blackbird Clan may undertake this quest.)</font><br>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
Your're the one that Hephah has sent, right? If not, you should go meet Herphah and receive a mission from her before you continue. If you think it doesn't matter, I can continue anyway. Do you want me to continue?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-02.htm">"Sure, no problem!"</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
Herphah wants you to do some missions, and I'll chose an appropriate mission depending on your relationship with us at the Adventure Guild.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-03.htm">"Go on."</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
Your mission is to assist with the task at the Altar of Evil. If successful, our Adventure Guild will give you additional rewards on top of the mission payment and your relationship with our faction will grow even stronger.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-04.htm">"Alright."</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
You've already leamed everything you need to know about the mission. By that I mean, how to go to the Altar of Evil. You should be able to start the mission right away without further explanation.<br>
But if you want to listen to the explanation again, I'd be happy to tell you.
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Erda:<br>
Good choice. Now, go to <font color="LEVEL">Black Wizard Lapathia</font> at the <font color="LEVEL">Altar of Evil</font> and do the mission that she gives you. When the mission is done, come back to me.<br>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Erda:<br>
I asked the Adventure Guild to send an adventurer but didn't expect they would send you. I'd like to see how good you are.<br>
<font color="LEVEL">(To do "Basic Mission: Isle of Souls," you must do "Uncover the Secret" and "More Aggressive Operation" through Black Wizard Lapathia.)</font><br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-07.html">"Go on."</Button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Erda:<br>
You completed all the missions I gave you, meaning that you also completed those of the Adventure Guildsman. Are you going back to the Town of Aden? How?<br>
Don't tell me you're going to walk all the way up there. I know a better way.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10423_EmbryoStrongholdRaid 34319-08.html">"Go on."</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Erda:<br>
When setting out for a joumey, veteran adventurers always pack <font color="LEVEL">Scrolls of Escape</font>, it teleports the user immediately to the closest village or to the check point.<br>
If you have these useful items, you can move easily after hunting or when you are far away from the village. Since you've been a great help to me, I'll give you the scroll that can teleport you directly to the Town of Aden.
</body></html>

View File

@ -0,0 +1,202 @@
/*
* 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.Q10423_EmbryoStrongholdRaid;
import java.util.HashSet;
import java.util.Set;
import org.l2jmobius.commons.util.CommonUtil;
import org.l2jmobius.gameserver.enums.QuestSound;
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;
/**
* Embryo Stronghold Raid (10423)
* @URL https://l2wiki.com/Embryo_Stronghold_Raid
* @author Dmitri
*/
public class Q10423_EmbryoStrongholdRaid extends Quest
{
// NPCs
private static final int ERDA = 34319;
// Monsters
private static final int[] MOBS =
{
26199, // Sampson
26200, // Hanson
26201, // Grom
26202, // Medvez
26203, // Zigatan
26204, // Hunchback Kwai
26205, // Cornix
26206, // Caranix
26207, // Jonadan
26208, // Demien
26209, // Berg
26210, // Tarku
26211, // Tarpin
26212, // Embryo Safe Vault
26213, // Embryo Secret Vault
26214, // Sakum
26215, // Crazy Typhoon
26216, // Cursed Haren
26217, // Flynt
26218, // Harp
26219, // Maliss
26220, // Isadora
26221, // Whitra
26222, // Bletra
26223, // Upgraded Siege Tank
26224, // Vegima
26225, // Varonia
26226, // Aronia
26227, // Odd
26228, // Even
26229 // Nemertess
};
// Rewards
private static final int SUPERIOR_GIANTS_CODEX = 46151; // Superior Giant's Codex - Mastery Chapter 1
// Misc
private static final int MIN_LEVEL = 100;
public Q10423_EmbryoStrongholdRaid()
{
super(10423);
addStartNpc(ERDA);
addTalkId(ERDA);
addKillId(MOBS);
addCondMinLevel(MIN_LEVEL, "34319-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 "34319-02.htm":
case "34319-03.htm":
case "34319-07.html":
{
htmltext = event;
break;
}
case "34319-04.htm":
{
qs.startQuest();
htmltext = event;
break;
}
case "34319-08.html":
{
if (qs.isCond(2))
{
giveItems(player, SUPERIOR_GIANTS_CODEX, 1);
addExpAndSp(player, 29682570651L, 71108570);
qs.exitQuest(false, 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 = "34319-01.htm";
break;
}
case State.STARTED:
{
if (qs.isCond(1))
{
htmltext = "34319-05.html";
}
else
{
htmltext = "34319-06.html";
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
return htmltext;
}
@Override
public String onKill(Npc npc, PlayerInstance player, boolean isSummon)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isCond(1))
{
int killedEmbryo = qs.getInt("killed_" + MOBS[0]);
if (CommonUtil.contains(MOBS, npc.getId()))
{
if (killedEmbryo < 30)
{
killedEmbryo++;
qs.set("killed_" + MOBS[0], killedEmbryo);
playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
if (killedEmbryo == 30)
{
qs.setCond(2, true);
}
}
return super.onKill(npc, player, isSummon);
}
@Override
public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if ((qs != null) && qs.isStarted() && qs.isCond(1))
{
final Set<NpcLogListHolder> holder = new HashSet<>();
holder.add(new NpcLogListHolder(NpcStringId.DEFEAT_EMBRYO_OFFICER, qs.getInt("killed_" + MOBS[0])));
return holder;
}
return super.getNpcLogList(player);
}
}

View File

@ -105,7 +105,7 @@ public class Q10898_TowardAGoal extends Quest
{
case PENNY:
{
if ((qs.isCond(1)) && (player.getFactionLevel(Faction.ADVENTURE_GUILD) >= 2))
if ((qs.isCond(1)) && (player.getFactionLevel(Faction.ADVENTURE_GUILD) >= 3))
{
final QuestState st = player.getQuestState("Q00682_TheStrongInTheClosedSpace");
if ((st != null) && st.isCompleted())

View File

@ -0,0 +1,4 @@
<html><body>Penny:<br>
In order to take on this mission, you must first build more trust with us.<br>
<font color="LEVEL">(before you take the quest you need to complete the quest <font color="LEVEL">Toward A Goal</font> faction ADVENTURE GUILD.)</font><br>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
what a good day to die!? hello wanderer. You are still on the heros path, I see it!. I think you could help me !? and prove that you are the best hero of Aden!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10899_VeteranAdventurer 34413-02.htm">"what happened?"</button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Adventure Guildsman Penny:<br>
the fact is that true evil breaks out and threatens our world. I have a request for you hero!.<br>
but listen to me first.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10899_VeteranAdventurer 34413-03.htm">"of course I'm listening!"</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
There is a special request for a special fee, to deal with terrible monsters. The guild will pay you generously, since few people can cope with this task.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10899_VeteranAdventurer 34413-04.htm">"keep going."</Button>
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Adventure Guildsman Penny:<br>
Penny from Adventurers Guild in Aden wants you to reach amity level 4 with the guild. Keep on completing the The Strong in the Closed Space <font color="LEVEL">The Strong in the Closed Space</font> daily quest, until youve reached the necessary level of amity.
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Adventure Guildsman Penny:<br>
Penny from Adventurers Guild in Aden wants you to reach amity level 4 with the guild. Keep on completing the The Strong in the Closed Space <font color="LEVEL">The Strong in the Closed Space</font> daily quest, until youve reached the necessary level of amity.
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
I congratulate you, you have completed the task and defeated powerful Monsters. Get the hero your honestly deserved reward.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10899_VeteranAdventurer 34413-07.html">"Yes, I did."</Button>
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Adventure Guildsman Penny:<br>
We hope this is not our last meeting and we can constantly cooperate with you a great hero.
</body></html>

View File

@ -0,0 +1,128 @@
/*
* 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.Q10899_VeteranAdventurer;
import org.l2jmobius.gameserver.enums.Faction;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State;
import quests.Q10898_TowardAGoal.Q10898_TowardAGoal;
/**
* Veteran Adventurer (10899)
* @URL https://l2wiki.com/Veteran_Adventurer
* @author Dmitri
*/
public class Q10899_VeteranAdventurer extends Quest
{
// NPCs
private static final int PENNY = 34413;
// Misc
private static final int MIN_LEVEL = 100;
public Q10899_VeteranAdventurer()
{
super(10899);
addStartNpc(PENNY);
addTalkId(PENNY);
addCondMinLevel(MIN_LEVEL, "nolevel.html");
addCondCompletedQuest(Q10898_TowardAGoal.class.getSimpleName(), "34413-00.htm");
}
@Override
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
{
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
return null;
}
String htmltext = null;
switch (event)
{
case "34413-02.htm":
case "34413-03.htm":
{
htmltext = event;
break;
}
case "34413-04.htm":
{
qs.startQuest();
htmltext = event;
break;
}
case "34413-07.html":
{
// Rewards
addExpAndSp(player, 62290620000L, 62290620);
addFactionPoints(player, Faction.ADVENTURE_GUILD, 100); // add FP points to ADVENTURE_GUILD Faction
qs.exitQuest(false, 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 = "34413-01.htm";
break;
}
case State.STARTED:
{
if ((qs.isCond(1)) && (player.getFactionLevel(Faction.ADVENTURE_GUILD) >= 4))
{
final QuestState st = player.getQuestState("Q00682_TheStrongInTheClosedSpace");
if ((st != null) && st.isCompleted())
{
qs.setCond(2, true);
htmltext = "34413-06.html";
}
else
{
htmltext = "34413-05.html";
}
}
if (qs.isCond(2))
{
htmltext = "34413-06.html";
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
return htmltext;
}
}

View File

@ -0,0 +1,4 @@
<html><body>Penny:<br>
I don't understand why someone like you is interested in this mission?<br>
(Only characters above Lv.100+.)
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Penny:<br>
In order to take on this mission, you must first build more trust with us.<br>
<font color="LEVEL">(before you take the quest you need to complete the quest <font color="LEVEL">Veteran Adventurer</font> faction ADVENTURE GUILD.)</font><br>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
what a good day to die!? hello wanderer. You are still on the heros path, I see it!. I think you could help me !? and prove that you are the best hero of Aden!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10900_PathToStrength 34413-02.htm">"what happened?"</button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Adventure Guildsman Penny:<br>
the fact is that true evil breaks out and threatens our world. I have a request for you hero!.<br>
but listen to me first.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10900_PathToStrength 34413-03.htm">"of course I'm listening!"</button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
There is a special request for a special fee, to deal with terrible monsters. The guild will pay you generously, since few people can cope with this task.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10900_PathToStrength 34413-04.htm">"keep going."</Button>
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Adventure Guildsman Penny:<br>
Penny from Adventurers Guild in Aden wants you to reach amity level 5 with the guild. Keep on completing the The Strong in the Closed Space <font color="LEVEL">The Strong in the Closed Space</font> daily quest, until youve reached the necessary level of amity.
</body></html>

View File

@ -0,0 +1,3 @@
<html><body>Adventure Guildsman Penny:<br>
Penny from Adventurers Guild in Aden wants you to reach amity level 5 with the guild. Keep on completing the The Strong in the Closed Space <font color="LEVEL">The Strong in the Closed Space</font> daily quest, until youve reached the necessary level of amity.
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
I congratulate you, you have completed the task and defeated powerful Monsters. Get the hero your honestly deserved reward.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10900_PathToStrength 34413-07.html">"Yes, I did."</Button>
</body></html>

Some files were not shown because too many files have changed in this diff Show More