Fixed quest fixed Basic Mission Isle of Souls (567).

Contributed by Dmitri.
This commit is contained in:
MobiusDevelopment 2020-01-17 08:45:49 +00:00
parent 888438fb0c
commit d3a484ffeb
60 changed files with 284 additions and 360 deletions

View File

@ -1,4 +0,0 @@
<html><body>Teleport Device:<br>
(According to Gatekeeper Bella, in order to reach the <font color="LEVEL">Altar of Evil</font>, you need to go to the <font color="LEVEL">Bloody Swampland</font>Go there and look for <font color="LEVEL">Lapathia</font>a Mystic of Dark Arts.)<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_showTeleportsHunting">"Check Teleport List."</Button>
</body></html>

View File

@ -1,5 +1,4 @@
<html><body>Gatekeeper Bella:<br>
There's no Gatekeeper in the Dark Elf Village. In the past, there had been a Gatekeeper, however, now, due to a tragic accident, there is only a <font color="LEVEL">Teleport Device</font>.<br>
Anyway, there's no other option. Go and check the missions.<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_showTeleports">"Check Teleport List."</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Gatekeeper Bella:<br>
There's no Gatekeeper in the Dark Elf Village. In the past, there had been a Gatekeeper, however, now, due to a tragic accident, there is only a <font color="LEVEL">Teleport Device</font>.<br>
Anyway, there's no other option. Go and check the missions.<br>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Gatekeeper Elisa:<br>
You want to know how to go to the Altar of Evil? It must be because of your mission from the Adventure Guild! Alright, I'll tell you.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 30848-02.html">"Go on."</Button>
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Gatekeeper Elisa:<br>
The <font color="LEVEL">Altar of Evil</font> is a Hunting Zone that can be accessed by the Dark Elf Village. But, there is no direct channel to teleport from the Town of Aden to the Dark Elf Village. So, you'll have to go somewhere that has teleporting routes to the Dark Elf Village.<br>
You should go to the <font color="LEVEL">Town of Gludio</font>. Once you get there, ask <font color="LEVEL">Gatekeeper Bella</font> about how to teleport. For now, why don't you just focus on getting to the <font color="LEVEL">Town of Gludio</font>.<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_showTeleports">"Check Teleport List."</Button>
</body></html>

View File

@ -1,4 +1,5 @@
<html><body>Black Wizard Lapathia:<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>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 33780-02.html">"Go on."</Button>
</body></html>

View File

@ -1,5 +1,4 @@
<html><body>Black Wizard Lapathia:<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.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 33780-04.html">"Thank you for your kindness."</Button>
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

@ -1,6 +1,5 @@
<html><body>Black Wizard Lapathia:<br>
You can use the scroll now or later. Just don't forget to <font color="LEVEL">pack enough Scrolls of Escape once you retum to town</font>.<br>
You can easily buy Scrolls of Escape at stores. Be safe until we meet again.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls usescroll">"I'll use the Scroll of Escape."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls keepscroll">"I'll keep the scroll and use it later."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 33780-05.html">"Go on."</Button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Black Wizard Lapathia:<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 Q00567_BasicMissionIsleOfSouls usescroll">"Go on Aden."</Button>
</body></html>

View File

@ -2,5 +2,4 @@
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.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-05.html">"Receive the mission."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-09.html">"Hear the explanation again."</Button>
</body></html>

View File

@ -1,3 +1,4 @@
<html><body>Adventure Guildsman Penny:<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>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-06.html">"Yes, I did."</Button>
</body></html>

View File

@ -1,3 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
Thanks, you've done a great job! I'm sure eveyone in the Adventure Guild will know your name now. If there is another opportunity, we'd love for you to help us again. Good luck and farewell!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-08.html">"Yes, I did."</Button>
</body></html>

View File

@ -1,4 +1,5 @@
<html><body>Adventure Guildsman Penny:<br>
I'm sure the Gatekeeper of the town, <font color="LEVEL">Gatekeeper Elise</font>, could give you a better explanation. Go to her and ask how you can go to the <font color="LEVEL">Altar of Evil</font>. She's very friendly so don't be shy.<br>
If you anive successfully, meet the black wizard, Lapathia, and ask about the mission.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-10.html">"Yes, I did."</Button>
</body></html>

View File

@ -35,13 +35,8 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
// NPCs
private static final int PENNY = 34413;
private static final int HESET = 33780;
private static final int ELISA = 30848;
private static final int TAPA = 30499;
private static final int DE_VILLAGE_TELEPORT_DEVICE = 30134;
private static final int TAPOY = 30499;
// Rewards
private static final long EXP = 973202790;
private static final int SP = 973200;
private static final int FP = 260; // Faction points
private static final int SCROLL_OF_ESCAPE_SOUL_ISLAND = 47059;
private static final int SCROLL_OF_ESCAPE_TOWN_OF_ADEN = 48413;
// Misc
@ -54,9 +49,9 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
{
super(567);
addStartNpc(PENNY);
addTalkId(PENNY, HESET, ELISA, TAPA, DE_VILLAGE_TELEPORT_DEVICE);
addTalkId(PENNY, HESET, TAPOY);
addCondLevel(MIN_LEVEL, MAX_LEVEL, "nolevel.html");
addFactionLevel(Faction.ADVENTURE_GUILD, 5, "34413-11.html");
addFactionLevel(Faction.ADVENTURE_GUILD, 5, "34413-00.htm");
}
@Override
@ -75,8 +70,9 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
case "34413-02.htm":
case "34413-03.htm":
case "34413-06.html":
case "34413-07.html":
case "30499-02.html":
case "33780-03.html":
case "33780-02.html":
{
htmltext = event;
break;
@ -87,50 +83,25 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
htmltext = event;
break;
}
case "34413-05.html":
{
qs.setCond(5, true);
htmltext = event;
break;
}
case "34413-09.html":
case "34413-08.html": // PENNY
{
qs.setCond(2, true);
htmltext = event;
break;
}
case "34413-07.html":
{
final StringBuilder str = new StringBuilder("00");
checkQuestCompleted(player, str); // Initialize the array with all quests completed
if (str.indexOf("11") != -1) // verify if all quests completed
{
giveItems(player, SCROLL_OF_ESCAPE_SOUL_ISLAND, 1);
addExpAndSp(player, EXP, SP);
addFactionPoints(player, Faction.ADVENTURE_GUILD, FP); // add FP points to ADVENTURE_GUILD Faction
qs.exitQuest(QuestType.DAILY, true);
htmltext = event;
}
else
{
htmltext = "34413-08.html";
}
break;
}
case "30848-02.html": // ELISA
case "30499-03.html": // TAPOY
{
qs.setCond(3, true);
htmltext = event;
break;
}
case "30499-03.html": // TAPA
case "33780-03.html": // HESET
{
qs.setCond(4, true);
qs.setCond(5, true);
htmltext = event;
break;
}
case "33780-04.html": // HESET
case "33780-05.html": // HESET
{
giveItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, 1);
htmltext = event;
@ -141,12 +112,25 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
// TODO: force player to use item SCROLL_OF_ESCAPE_TOWN_OF_ADEN
player.teleToLocation(TOWN_OF_ADEN); // Town of Aden near Npc Penny - temp solution
takeItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, -1); // remove SOE - temp solution
qs.setCond(8, true);
break;
}
case "keepscroll":
case "34413-10.html":
{
qs.setCond(8, true);
final StringBuilder str = new StringBuilder("00");
checkQuestCompleted(player, str); // Initialize the array with all quests completed
if (str.indexOf("11") != -1) // verify if all quests completed
{
giveItems(player, SCROLL_OF_ESCAPE_SOUL_ISLAND, 1);
addExpAndSp(player, 973202790, 973200);
addFactionPoints(player, Faction.ADVENTURE_GUILD, 260); // add FP points to ADVENTURE_GUILD Faction
qs.exitQuest(QuestType.DAILY, true);
htmltext = event;
}
else
{
htmltext = "34413-08.html";
}
break;
}
}
@ -177,59 +161,61 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
{
if (qs.getCond() == 1)
{
htmltext = "34413-04.htm";
htmltext = "34413-05.html";
}
else if (qs.getCond() == 2)
{
// htmltext = qs.getCond() == 2 ? "34413-10.htm" : "34413-06.html";
htmltext = "33509-10.htm";
}
else if (qs.getCond() == 5)
{
// htmltext = qs.getCond() == 5 ? "34413-08.htm" : "34413-06.html";
htmltext = "34413-08.html";
}
else
else if (qs.getCond() == 6)
{
htmltext = "34413-06.html";
htmltext = "34413-09.html";
}
break;
}
case ELISA:
case TAPOY:
{
htmltext = "30848-01.html";
break;
}
case TAPA:
{
htmltext = "30499-01.html";
break;
}
case DE_VILLAGE_TELEPORT_DEVICE:
{
qs.setCond(5, true);
htmltext = "30134-01.html";
if (qs.getCond() == 2)
{
htmltext = "30499-01.html";
}
else if (qs.getCond() == 3)
{
final QuestState st = player.getQuestState("Q10386_MysteriousJourney");
if ((st != null) && st.isCompleted())
{
qs.setCond(4, true);
htmltext = null;
}
else
{
htmltext = "30499-03.html";
}
}
else if (qs.getCond() == 4)
{
htmltext = "30499-04.html";
}
break;
}
case HESET:
{
if (qs.getCond() == 5)
if (qs.getCond() == 4)
{
qs.setCond(6, true);
htmltext = "33780-01.html";
}
else
else if (qs.getCond() == 5)
{
final StringBuilder str = new StringBuilder("00");
checkQuestCompleted(player, str); // Initialize the array with all quests completed
if (str.indexOf("11") != -1) // verify if all quests completed
{
qs.setCond(7, true);
htmltext = "33780-02.html";
qs.setCond(6, true);
htmltext = "33780-04.html";
}
else
{
htmltext = "33780-01.html";
htmltext = "33780-03.html";
}
}
break;
@ -238,7 +224,6 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
break;
}
case State.COMPLETED:
{
if (qs.isNowAvailable())
{

View File

@ -1,4 +0,0 @@
<html><body>Teleport Device:<br>
(According to Gatekeeper Bella, in order to reach the <font color="LEVEL">Altar of Evil</font>, you need to go to the <font color="LEVEL">Bloody Swampland</font>Go there and look for <font color="LEVEL">Lapathia</font>a Mystic of Dark Arts.)<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_showTeleportsHunting">"Check Teleport List."</Button>
</body></html>

View File

@ -1,5 +1,4 @@
<html><body>Gatekeeper Bella:<br>
There's no Gatekeeper in the Dark Elf Village. In the past, there had been a Gatekeeper, however, now, due to a tragic accident, there is only a <font color="LEVEL">Teleport Device</font>.<br>
Anyway, there's no other option. Go and check the missions.<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_showTeleports">"Check Teleport List."</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Gatekeeper Bella:<br>
There's no Gatekeeper in the Dark Elf Village. In the past, there had been a Gatekeeper, however, now, due to a tragic accident, there is only a <font color="LEVEL">Teleport Device</font>.<br>
Anyway, there's no other option. Go and check the missions.<br>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Gatekeeper Elisa:<br>
You want to know how to go to the Altar of Evil? It must be because of your mission from the Adventure Guild! Alright, I'll tell you.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 30848-02.html">"Go on."</Button>
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Gatekeeper Elisa:<br>
The <font color="LEVEL">Altar of Evil</font> is a Hunting Zone that can be accessed by the Dark Elf Village. But, there is no direct channel to teleport from the Town of Aden to the Dark Elf Village. So, you'll have to go somewhere that has teleporting routes to the Dark Elf Village.<br>
You should go to the <font color="LEVEL">Town of Gludio</font>. Once you get there, ask <font color="LEVEL">Gatekeeper Bella</font> about how to teleport. For now, why don't you just focus on getting to the <font color="LEVEL">Town of Gludio</font>.<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_showTeleports">"Check Teleport List."</Button>
</body></html>

View File

@ -1,4 +1,5 @@
<html><body>Black Wizard Lapathia:<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>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 33780-02.html">"Go on."</Button>
</body></html>

View File

@ -1,5 +1,4 @@
<html><body>Black Wizard Lapathia:<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.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 33780-04.html">"Thank you for your kindness."</Button>
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

@ -1,6 +1,5 @@
<html><body>Black Wizard Lapathia:<br>
You can use the scroll now or later. Just don't forget to <font color="LEVEL">pack enough Scrolls of Escape once you retum to town</font>.<br>
You can easily buy Scrolls of Escape at stores. Be safe until we meet again.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls usescroll">"I'll use the Scroll of Escape."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls keepscroll">"I'll keep the scroll and use it later."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 33780-05.html">"Go on."</Button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Black Wizard Lapathia:<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 Q00567_BasicMissionIsleOfSouls usescroll">"Go on Aden."</Button>
</body></html>

View File

@ -2,5 +2,4 @@
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.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-05.html">"Receive the mission."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-09.html">"Hear the explanation again."</Button>
</body></html>

View File

@ -1,3 +1,4 @@
<html><body>Adventure Guildsman Penny:<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>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-06.html">"Yes, I did."</Button>
</body></html>

View File

@ -1,3 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
Thanks, you've done a great job! I'm sure eveyone in the Adventure Guild will know your name now. If there is another opportunity, we'd love for you to help us again. Good luck and farewell!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-08.html">"Yes, I did."</Button>
</body></html>

View File

@ -1,4 +1,5 @@
<html><body>Adventure Guildsman Penny:<br>
I'm sure the Gatekeeper of the town, <font color="LEVEL">Gatekeeper Elise</font>, could give you a better explanation. Go to her and ask how you can go to the <font color="LEVEL">Altar of Evil</font>. She's very friendly so don't be shy.<br>
If you anive successfully, meet the black wizard, Lapathia, and ask about the mission.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-10.html">"Yes, I did."</Button>
</body></html>

View File

@ -35,13 +35,8 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
// NPCs
private static final int PENNY = 34413;
private static final int HESET = 33780;
private static final int ELISA = 30848;
private static final int TAPA = 30499;
private static final int DE_VILLAGE_TELEPORT_DEVICE = 30134;
private static final int TAPOY = 30499;
// Rewards
private static final long EXP = 973202790;
private static final int SP = 973200;
private static final int FP = 260; // Faction points
private static final int SCROLL_OF_ESCAPE_SOUL_ISLAND = 47059;
private static final int SCROLL_OF_ESCAPE_TOWN_OF_ADEN = 48413;
// Misc
@ -54,9 +49,9 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
{
super(567);
addStartNpc(PENNY);
addTalkId(PENNY, HESET, ELISA, TAPA, DE_VILLAGE_TELEPORT_DEVICE);
addTalkId(PENNY, HESET, TAPOY);
addCondLevel(MIN_LEVEL, MAX_LEVEL, "nolevel.html");
addFactionLevel(Faction.ADVENTURE_GUILD, 5, "34413-11.html");
addFactionLevel(Faction.ADVENTURE_GUILD, 5, "34413-00.htm");
}
@Override
@ -75,8 +70,9 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
case "34413-02.htm":
case "34413-03.htm":
case "34413-06.html":
case "34413-07.html":
case "30499-02.html":
case "33780-03.html":
case "33780-02.html":
{
htmltext = event;
break;
@ -87,50 +83,25 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
htmltext = event;
break;
}
case "34413-05.html":
{
qs.setCond(5, true);
htmltext = event;
break;
}
case "34413-09.html":
case "34413-08.html": // PENNY
{
qs.setCond(2, true);
htmltext = event;
break;
}
case "34413-07.html":
{
final StringBuilder str = new StringBuilder("00");
checkQuestCompleted(player, str); // Initialize the array with all quests completed
if (str.indexOf("11") != -1) // verify if all quests completed
{
giveItems(player, SCROLL_OF_ESCAPE_SOUL_ISLAND, 1);
addExpAndSp(player, EXP, SP);
addFactionPoints(player, Faction.ADVENTURE_GUILD, FP); // add FP points to ADVENTURE_GUILD Faction
qs.exitQuest(QuestType.DAILY, true);
htmltext = event;
}
else
{
htmltext = "34413-08.html";
}
break;
}
case "30848-02.html": // ELISA
case "30499-03.html": // TAPOY
{
qs.setCond(3, true);
htmltext = event;
break;
}
case "30499-03.html": // TAPA
case "33780-03.html": // HESET
{
qs.setCond(4, true);
qs.setCond(5, true);
htmltext = event;
break;
}
case "33780-04.html": // HESET
case "33780-05.html": // HESET
{
giveItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, 1);
htmltext = event;
@ -141,12 +112,25 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
// TODO: force player to use item SCROLL_OF_ESCAPE_TOWN_OF_ADEN
player.teleToLocation(TOWN_OF_ADEN); // Town of Aden near Npc Penny - temp solution
takeItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, -1); // remove SOE - temp solution
qs.setCond(8, true);
break;
}
case "keepscroll":
case "34413-10.html":
{
qs.setCond(8, true);
final StringBuilder str = new StringBuilder("00");
checkQuestCompleted(player, str); // Initialize the array with all quests completed
if (str.indexOf("11") != -1) // verify if all quests completed
{
giveItems(player, SCROLL_OF_ESCAPE_SOUL_ISLAND, 1);
addExpAndSp(player, 973202790, 973200);
addFactionPoints(player, Faction.ADVENTURE_GUILD, 260); // add FP points to ADVENTURE_GUILD Faction
qs.exitQuest(QuestType.DAILY, true);
htmltext = event;
}
else
{
htmltext = "34413-08.html";
}
break;
}
}
@ -177,59 +161,61 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
{
if (qs.getCond() == 1)
{
htmltext = "34413-04.htm";
htmltext = "34413-05.html";
}
else if (qs.getCond() == 2)
{
// htmltext = qs.getCond() == 2 ? "34413-10.htm" : "34413-06.html";
htmltext = "33509-10.htm";
}
else if (qs.getCond() == 5)
{
// htmltext = qs.getCond() == 5 ? "34413-08.htm" : "34413-06.html";
htmltext = "34413-08.html";
}
else
else if (qs.getCond() == 6)
{
htmltext = "34413-06.html";
htmltext = "34413-09.html";
}
break;
}
case ELISA:
case TAPOY:
{
htmltext = "30848-01.html";
break;
}
case TAPA:
{
htmltext = "30499-01.html";
break;
}
case DE_VILLAGE_TELEPORT_DEVICE:
{
qs.setCond(5, true);
htmltext = "30134-01.html";
if (qs.getCond() == 2)
{
htmltext = "30499-01.html";
}
else if (qs.getCond() == 3)
{
final QuestState st = player.getQuestState("Q10386_MysteriousJourney");
if ((st != null) && st.isCompleted())
{
qs.setCond(4, true);
htmltext = null;
}
else
{
htmltext = "30499-03.html";
}
}
else if (qs.getCond() == 4)
{
htmltext = "30499-04.html";
}
break;
}
case HESET:
{
if (qs.getCond() == 5)
if (qs.getCond() == 4)
{
qs.setCond(6, true);
htmltext = "33780-01.html";
}
else
else if (qs.getCond() == 5)
{
final StringBuilder str = new StringBuilder("00");
checkQuestCompleted(player, str); // Initialize the array with all quests completed
if (str.indexOf("11") != -1) // verify if all quests completed
{
qs.setCond(7, true);
htmltext = "33780-02.html";
qs.setCond(6, true);
htmltext = "33780-04.html";
}
else
{
htmltext = "33780-01.html";
htmltext = "33780-03.html";
}
}
break;
@ -238,7 +224,6 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
break;
}
case State.COMPLETED:
{
if (qs.isNowAvailable())
{

View File

@ -1,4 +0,0 @@
<html><body>Teleport Device:<br>
(According to Gatekeeper Bella, in order to reach the <font color="LEVEL">Altar of Evil</font>, you need to go to the <font color="LEVEL">Bloody Swampland</font>Go there and look for <font color="LEVEL">Lapathia</font>a Mystic of Dark Arts.)<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_showTeleportsHunting">"Check Teleport List."</Button>
</body></html>

View File

@ -1,5 +1,4 @@
<html><body>Gatekeeper Bella:<br>
There's no Gatekeeper in the Dark Elf Village. In the past, there had been a Gatekeeper, however, now, due to a tragic accident, there is only a <font color="LEVEL">Teleport Device</font>.<br>
Anyway, there's no other option. Go and check the missions.<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_showTeleports">"Check Teleport List."</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Gatekeeper Bella:<br>
There's no Gatekeeper in the Dark Elf Village. In the past, there had been a Gatekeeper, however, now, due to a tragic accident, there is only a <font color="LEVEL">Teleport Device</font>.<br>
Anyway, there's no other option. Go and check the missions.<br>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Gatekeeper Elisa:<br>
You want to know how to go to the Altar of Evil? It must be because of your mission from the Adventure Guild! Alright, I'll tell you.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 30848-02.html">"Go on."</Button>
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Gatekeeper Elisa:<br>
The <font color="LEVEL">Altar of Evil</font> is a Hunting Zone that can be accessed by the Dark Elf Village. But, there is no direct channel to teleport from the Town of Aden to the Dark Elf Village. So, you'll have to go somewhere that has teleporting routes to the Dark Elf Village.<br>
You should go to the <font color="LEVEL">Town of Gludio</font>. Once you get there, ask <font color="LEVEL">Gatekeeper Bella</font> about how to teleport. For now, why don't you just focus on getting to the <font color="LEVEL">Town of Gludio</font>.<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_showTeleports">"Check Teleport List."</Button>
</body></html>

View File

@ -1,4 +1,5 @@
<html><body>Black Wizard Lapathia:<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>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 33780-02.html">"Go on."</Button>
</body></html>

View File

@ -1,5 +1,4 @@
<html><body>Black Wizard Lapathia:<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.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 33780-04.html">"Thank you for your kindness."</Button>
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

@ -1,6 +1,5 @@
<html><body>Black Wizard Lapathia:<br>
You can use the scroll now or later. Just don't forget to <font color="LEVEL">pack enough Scrolls of Escape once you retum to town</font>.<br>
You can easily buy Scrolls of Escape at stores. Be safe until we meet again.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls usescroll">"I'll use the Scroll of Escape."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls keepscroll">"I'll keep the scroll and use it later."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 33780-05.html">"Go on."</Button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Black Wizard Lapathia:<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 Q00567_BasicMissionIsleOfSouls usescroll">"Go on Aden."</Button>
</body></html>

View File

@ -2,5 +2,4 @@
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.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-05.html">"Receive the mission."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-09.html">"Hear the explanation again."</Button>
</body></html>

View File

@ -1,3 +1,4 @@
<html><body>Adventure Guildsman Penny:<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>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-06.html">"Yes, I did."</Button>
</body></html>

View File

@ -1,3 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
Thanks, you've done a great job! I'm sure eveyone in the Adventure Guild will know your name now. If there is another opportunity, we'd love for you to help us again. Good luck and farewell!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-08.html">"Yes, I did."</Button>
</body></html>

View File

@ -1,4 +1,5 @@
<html><body>Adventure Guildsman Penny:<br>
I'm sure the Gatekeeper of the town, <font color="LEVEL">Gatekeeper Elise</font>, could give you a better explanation. Go to her and ask how you can go to the <font color="LEVEL">Altar of Evil</font>. She's very friendly so don't be shy.<br>
If you anive successfully, meet the black wizard, Lapathia, and ask about the mission.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-10.html">"Yes, I did."</Button>
</body></html>

View File

@ -35,13 +35,8 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
// NPCs
private static final int PENNY = 34413;
private static final int HESET = 33780;
private static final int ELISA = 30848;
private static final int TAPA = 30499;
private static final int DE_VILLAGE_TELEPORT_DEVICE = 30134;
private static final int TAPOY = 30499;
// Rewards
private static final long EXP = 973202790;
private static final int SP = 973200;
private static final int FP = 260; // Faction points
private static final int SCROLL_OF_ESCAPE_SOUL_ISLAND = 47059;
private static final int SCROLL_OF_ESCAPE_TOWN_OF_ADEN = 48413;
// Misc
@ -54,9 +49,9 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
{
super(567);
addStartNpc(PENNY);
addTalkId(PENNY, HESET, ELISA, TAPA, DE_VILLAGE_TELEPORT_DEVICE);
addTalkId(PENNY, HESET, TAPOY);
addCondLevel(MIN_LEVEL, MAX_LEVEL, "nolevel.html");
addFactionLevel(Faction.ADVENTURE_GUILD, 5, "34413-11.html");
addFactionLevel(Faction.ADVENTURE_GUILD, 5, "34413-00.htm");
}
@Override
@ -75,8 +70,9 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
case "34413-02.htm":
case "34413-03.htm":
case "34413-06.html":
case "34413-07.html":
case "30499-02.html":
case "33780-03.html":
case "33780-02.html":
{
htmltext = event;
break;
@ -87,50 +83,25 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
htmltext = event;
break;
}
case "34413-05.html":
{
qs.setCond(5, true);
htmltext = event;
break;
}
case "34413-09.html":
case "34413-08.html": // PENNY
{
qs.setCond(2, true);
htmltext = event;
break;
}
case "34413-07.html":
{
final StringBuilder str = new StringBuilder("00");
checkQuestCompleted(player, str); // Initialize the array with all quests completed
if (str.indexOf("11") != -1) // verify if all quests completed
{
giveItems(player, SCROLL_OF_ESCAPE_SOUL_ISLAND, 1);
addExpAndSp(player, EXP, SP);
addFactionPoints(player, Faction.ADVENTURE_GUILD, FP); // add FP points to ADVENTURE_GUILD Faction
qs.exitQuest(QuestType.DAILY, true);
htmltext = event;
}
else
{
htmltext = "34413-08.html";
}
break;
}
case "30848-02.html": // ELISA
case "30499-03.html": // TAPOY
{
qs.setCond(3, true);
htmltext = event;
break;
}
case "30499-03.html": // TAPA
case "33780-03.html": // HESET
{
qs.setCond(4, true);
qs.setCond(5, true);
htmltext = event;
break;
}
case "33780-04.html": // HESET
case "33780-05.html": // HESET
{
giveItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, 1);
htmltext = event;
@ -141,12 +112,25 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
// TODO: force player to use item SCROLL_OF_ESCAPE_TOWN_OF_ADEN
player.teleToLocation(TOWN_OF_ADEN); // Town of Aden near Npc Penny - temp solution
takeItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, -1); // remove SOE - temp solution
qs.setCond(8, true);
break;
}
case "keepscroll":
case "34413-10.html":
{
qs.setCond(8, true);
final StringBuilder str = new StringBuilder("00");
checkQuestCompleted(player, str); // Initialize the array with all quests completed
if (str.indexOf("11") != -1) // verify if all quests completed
{
giveItems(player, SCROLL_OF_ESCAPE_SOUL_ISLAND, 1);
addExpAndSp(player, 973202790, 973200);
addFactionPoints(player, Faction.ADVENTURE_GUILD, 260); // add FP points to ADVENTURE_GUILD Faction
qs.exitQuest(QuestType.DAILY, true);
htmltext = event;
}
else
{
htmltext = "34413-08.html";
}
break;
}
}
@ -177,59 +161,61 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
{
if (qs.getCond() == 1)
{
htmltext = "34413-04.htm";
htmltext = "34413-05.html";
}
else if (qs.getCond() == 2)
{
// htmltext = qs.getCond() == 2 ? "34413-10.htm" : "34413-06.html";
htmltext = "33509-10.htm";
}
else if (qs.getCond() == 5)
{
// htmltext = qs.getCond() == 5 ? "34413-08.htm" : "34413-06.html";
htmltext = "34413-08.html";
}
else
else if (qs.getCond() == 6)
{
htmltext = "34413-06.html";
htmltext = "34413-09.html";
}
break;
}
case ELISA:
case TAPOY:
{
htmltext = "30848-01.html";
break;
}
case TAPA:
{
htmltext = "30499-01.html";
break;
}
case DE_VILLAGE_TELEPORT_DEVICE:
{
qs.setCond(5, true);
htmltext = "30134-01.html";
if (qs.getCond() == 2)
{
htmltext = "30499-01.html";
}
else if (qs.getCond() == 3)
{
final QuestState st = player.getQuestState("Q10386_MysteriousJourney");
if ((st != null) && st.isCompleted())
{
qs.setCond(4, true);
htmltext = null;
}
else
{
htmltext = "30499-03.html";
}
}
else if (qs.getCond() == 4)
{
htmltext = "30499-04.html";
}
break;
}
case HESET:
{
if (qs.getCond() == 5)
if (qs.getCond() == 4)
{
qs.setCond(6, true);
htmltext = "33780-01.html";
}
else
else if (qs.getCond() == 5)
{
final StringBuilder str = new StringBuilder("00");
checkQuestCompleted(player, str); // Initialize the array with all quests completed
if (str.indexOf("11") != -1) // verify if all quests completed
{
qs.setCond(7, true);
htmltext = "33780-02.html";
qs.setCond(6, true);
htmltext = "33780-04.html";
}
else
{
htmltext = "33780-01.html";
htmltext = "33780-03.html";
}
}
break;
@ -238,7 +224,6 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
break;
}
case State.COMPLETED:
{
if (qs.isNowAvailable())
{

View File

@ -1,4 +0,0 @@
<html><body>Teleport Device:<br>
(According to Gatekeeper Bella, in order to reach the <font color="LEVEL">Altar of Evil</font>, you need to go to the <font color="LEVEL">Bloody Swampland</font>Go there and look for <font color="LEVEL">Lapathia</font>a Mystic of Dark Arts.)<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_showTeleportsHunting">"Check Teleport List."</Button>
</body></html>

View File

@ -1,5 +1,4 @@
<html><body>Gatekeeper Bella:<br>
There's no Gatekeeper in the Dark Elf Village. In the past, there had been a Gatekeeper, however, now, due to a tragic accident, there is only a <font color="LEVEL">Teleport Device</font>.<br>
Anyway, there's no other option. Go and check the missions.<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_showTeleports">"Check Teleport List."</Button>
</body></html>

View File

@ -0,0 +1,4 @@
<html><body>Gatekeeper Bella:<br>
There's no Gatekeeper in the Dark Elf Village. In the past, there had been a Gatekeeper, however, now, due to a tragic accident, there is only a <font color="LEVEL">Teleport Device</font>.<br>
Anyway, there's no other option. Go and check the missions.<br>
</body></html>

View File

@ -1,4 +0,0 @@
<html><body>Gatekeeper Elisa:<br>
You want to know how to go to the Altar of Evil? It must be because of your mission from the Adventure Guild! Alright, I'll tell you.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 30848-02.html">"Go on."</Button>
</body></html>

View File

@ -1,5 +0,0 @@
<html><body>Gatekeeper Elisa:<br>
The <font color="LEVEL">Altar of Evil</font> is a Hunting Zone that can be accessed by the Dark Elf Village. But, there is no direct channel to teleport from the Town of Aden to the Dark Elf Village. So, you'll have to go somewhere that has teleporting routes to the Dark Elf Village.<br>
You should go to the <font color="LEVEL">Town of Gludio</font>. Once you get there, ask <font color="LEVEL">Gatekeeper Bella</font> about how to teleport. For now, why don't you just focus on getting to the <font color="LEVEL">Town of Gludio</font>.<br>
<Button ALIGN=LEFT ICON="TELEPORT" action="bypass -h npc_%objectId%_showTeleports">"Check Teleport List."</Button>
</body></html>

View File

@ -1,4 +1,5 @@
<html><body>Black Wizard Lapathia:<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>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 33780-02.html">"Go on."</Button>
</body></html>

View File

@ -1,5 +1,4 @@
<html><body>Black Wizard Lapathia:<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.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 33780-04.html">"Thank you for your kindness."</Button>
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

@ -1,6 +1,5 @@
<html><body>Black Wizard Lapathia:<br>
You can use the scroll now or later. Just don't forget to <font color="LEVEL">pack enough Scrolls of Escape once you retum to town</font>.<br>
You can easily buy Scrolls of Escape at stores. Be safe until we meet again.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls usescroll">"I'll use the Scroll of Escape."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls keepscroll">"I'll keep the scroll and use it later."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 33780-05.html">"Go on."</Button>
</body></html>

View File

@ -0,0 +1,5 @@
<html><body>Black Wizard Lapathia:<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 Q00567_BasicMissionIsleOfSouls usescroll">"Go on Aden."</Button>
</body></html>

View File

@ -2,5 +2,4 @@
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.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-05.html">"Receive the mission."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-09.html">"Hear the explanation again."</Button>
</body></html>

View File

@ -1,3 +1,4 @@
<html><body>Adventure Guildsman Penny:<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>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-06.html">"Yes, I did."</Button>
</body></html>

View File

@ -1,3 +1,4 @@
<html><body>Adventure Guildsman Penny:<br>
Thanks, you've done a great job! I'm sure eveyone in the Adventure Guild will know your name now. If there is another opportunity, we'd love for you to help us again. Good luck and farewell!<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-08.html">"Yes, I did."</Button>
</body></html>

View File

@ -1,4 +1,5 @@
<html><body>Adventure Guildsman Penny:<br>
I'm sure the Gatekeeper of the town, <font color="LEVEL">Gatekeeper Elise</font>, could give you a better explanation. Go to her and ask how you can go to the <font color="LEVEL">Altar of Evil</font>. She's very friendly so don't be shy.<br>
If you anive successfully, meet the black wizard, Lapathia, and ask about the mission.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q00567_BasicMissionIsleOfSouls 34413-10.html">"Yes, I did."</Button>
</body></html>

View File

@ -35,13 +35,8 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
// NPCs
private static final int PENNY = 34413;
private static final int HESET = 33780;
private static final int ELISA = 30848;
private static final int TAPA = 30499;
private static final int DE_VILLAGE_TELEPORT_DEVICE = 30134;
private static final int TAPOY = 30499;
// Rewards
private static final long EXP = 973202790;
private static final int SP = 973200;
private static final int FP = 260; // Faction points
private static final int SCROLL_OF_ESCAPE_SOUL_ISLAND = 47059;
private static final int SCROLL_OF_ESCAPE_TOWN_OF_ADEN = 48413;
// Misc
@ -54,9 +49,9 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
{
super(567);
addStartNpc(PENNY);
addTalkId(PENNY, HESET, ELISA, TAPA, DE_VILLAGE_TELEPORT_DEVICE);
addTalkId(PENNY, HESET, TAPOY);
addCondLevel(MIN_LEVEL, MAX_LEVEL, "nolevel.html");
addFactionLevel(Faction.ADVENTURE_GUILD, 5, "34413-11.html");
addFactionLevel(Faction.ADVENTURE_GUILD, 5, "34413-00.htm");
}
@Override
@ -75,8 +70,9 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
case "34413-02.htm":
case "34413-03.htm":
case "34413-06.html":
case "34413-07.html":
case "30499-02.html":
case "33780-03.html":
case "33780-02.html":
{
htmltext = event;
break;
@ -87,50 +83,25 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
htmltext = event;
break;
}
case "34413-05.html":
{
qs.setCond(5, true);
htmltext = event;
break;
}
case "34413-09.html":
case "34413-08.html": // PENNY
{
qs.setCond(2, true);
htmltext = event;
break;
}
case "34413-07.html":
{
final StringBuilder str = new StringBuilder("00");
checkQuestCompleted(player, str); // Initialize the array with all quests completed
if (str.indexOf("11") != -1) // verify if all quests completed
{
giveItems(player, SCROLL_OF_ESCAPE_SOUL_ISLAND, 1);
addExpAndSp(player, EXP, SP);
addFactionPoints(player, Faction.ADVENTURE_GUILD, FP); // add FP points to ADVENTURE_GUILD Faction
qs.exitQuest(QuestType.DAILY, true);
htmltext = event;
}
else
{
htmltext = "34413-08.html";
}
break;
}
case "30848-02.html": // ELISA
case "30499-03.html": // TAPOY
{
qs.setCond(3, true);
htmltext = event;
break;
}
case "30499-03.html": // TAPA
case "33780-03.html": // HESET
{
qs.setCond(4, true);
qs.setCond(5, true);
htmltext = event;
break;
}
case "33780-04.html": // HESET
case "33780-05.html": // HESET
{
giveItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, 1);
htmltext = event;
@ -141,12 +112,25 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
// TODO: force player to use item SCROLL_OF_ESCAPE_TOWN_OF_ADEN
player.teleToLocation(TOWN_OF_ADEN); // Town of Aden near Npc Penny - temp solution
takeItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, -1); // remove SOE - temp solution
qs.setCond(8, true);
break;
}
case "keepscroll":
case "34413-10.html":
{
qs.setCond(8, true);
final StringBuilder str = new StringBuilder("00");
checkQuestCompleted(player, str); // Initialize the array with all quests completed
if (str.indexOf("11") != -1) // verify if all quests completed
{
giveItems(player, SCROLL_OF_ESCAPE_SOUL_ISLAND, 1);
addExpAndSp(player, 973202790, 973200);
addFactionPoints(player, Faction.ADVENTURE_GUILD, 260); // add FP points to ADVENTURE_GUILD Faction
qs.exitQuest(QuestType.DAILY, true);
htmltext = event;
}
else
{
htmltext = "34413-08.html";
}
break;
}
}
@ -177,59 +161,61 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
{
if (qs.getCond() == 1)
{
htmltext = "34413-04.htm";
htmltext = "34413-05.html";
}
else if (qs.getCond() == 2)
{
// htmltext = qs.getCond() == 2 ? "34413-10.htm" : "34413-06.html";
htmltext = "33509-10.htm";
}
else if (qs.getCond() == 5)
{
// htmltext = qs.getCond() == 5 ? "34413-08.htm" : "34413-06.html";
htmltext = "34413-08.html";
}
else
else if (qs.getCond() == 6)
{
htmltext = "34413-06.html";
htmltext = "34413-09.html";
}
break;
}
case ELISA:
case TAPOY:
{
htmltext = "30848-01.html";
break;
}
case TAPA:
{
htmltext = "30499-01.html";
break;
}
case DE_VILLAGE_TELEPORT_DEVICE:
{
qs.setCond(5, true);
htmltext = "30134-01.html";
if (qs.getCond() == 2)
{
htmltext = "30499-01.html";
}
else if (qs.getCond() == 3)
{
final QuestState st = player.getQuestState("Q10386_MysteriousJourney");
if ((st != null) && st.isCompleted())
{
qs.setCond(4, true);
htmltext = null;
}
else
{
htmltext = "30499-03.html";
}
}
else if (qs.getCond() == 4)
{
htmltext = "30499-04.html";
}
break;
}
case HESET:
{
if (qs.getCond() == 5)
if (qs.getCond() == 4)
{
qs.setCond(6, true);
htmltext = "33780-01.html";
}
else
else if (qs.getCond() == 5)
{
final StringBuilder str = new StringBuilder("00");
checkQuestCompleted(player, str); // Initialize the array with all quests completed
if (str.indexOf("11") != -1) // verify if all quests completed
{
qs.setCond(7, true);
htmltext = "33780-02.html";
qs.setCond(6, true);
htmltext = "33780-04.html";
}
else
{
htmltext = "33780-01.html";
htmltext = "33780-03.html";
}
}
break;
@ -238,7 +224,6 @@ public class Q00567_BasicMissionIsleOfSouls extends Quest
break;
}
case State.COMPLETED:
{
if (qs.isNowAvailable())
{