Quests rework.
This commit is contained in:
@@ -16,6 +16,7 @@
|
||||
*/
|
||||
package quests.Q10295_SevenSignsSolinasTomb;
|
||||
|
||||
import com.l2jmobius.gameserver.enums.QuestSound;
|
||||
import com.l2jmobius.gameserver.model.actor.L2Npc;
|
||||
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
|
||||
import com.l2jmobius.gameserver.model.quest.Quest;
|
||||
@@ -35,17 +36,14 @@ public final class Q10295_SevenSignsSolinasTomb extends Quest
|
||||
private static final int TeleportControlDevice2 = 32842;
|
||||
private static final int TombOfTheSaintess = 32843;
|
||||
private static final int SolinasEvilThoughts = 32793;
|
||||
|
||||
private static final int AltarOfHallows_Staff = 32857;
|
||||
private static final int AltarOfHallows_Sword = 32858;
|
||||
private static final int AltarOfHallows_Scroll = 32859;
|
||||
private static final int AltarOfHallows_Shield = 32860;
|
||||
|
||||
private static final int PowerfulDevice_Scroll = 32838;
|
||||
private static final int PowerfulDevice_Shield = 32839;
|
||||
private static final int PowerfulDevice_Sword = 32840;
|
||||
private static final int PowerfulDevice_Staff = 32841;
|
||||
|
||||
// Mobs
|
||||
private static final int[] SOLINAS =
|
||||
{
|
||||
@@ -61,20 +59,19 @@ public final class Q10295_SevenSignsSolinasTomb extends Quest
|
||||
18958,
|
||||
18959
|
||||
};
|
||||
|
||||
// Client Effects
|
||||
private static final int TeleportDeviceEvent = 21100100;
|
||||
private static final int ScrollDeviceEvent = 21100200;
|
||||
private static final int ShieldDeviceEvent = 21100202;
|
||||
private static final int SwordDeviceEvent = 21100204;
|
||||
private static final int StaffDeviceEvent = 21100206;
|
||||
|
||||
// Items
|
||||
private static final int ScrollOfAbstinence = 17228;
|
||||
private static final int ShieldOfSacrifice = 17229;
|
||||
private static final int SwordOfHolySpirit = 17230;
|
||||
private static final int StaffOfBlessing = 17231;
|
||||
|
||||
// Misc
|
||||
private static final int MIN_LEVEL = 81;
|
||||
private static final int[] TALK =
|
||||
{
|
||||
ErissEvilThoughts,
|
||||
@@ -93,9 +90,6 @@ public final class Q10295_SevenSignsSolinasTomb extends Quest
|
||||
PowerfulDevice_Staff
|
||||
};
|
||||
|
||||
// Misc
|
||||
private static final int MIN_LEVEL = 81;
|
||||
|
||||
public Q10295_SevenSignsSolinasTomb()
|
||||
{
|
||||
super(10295, Q10295_SevenSignsSolinasTomb.class.getSimpleName(), "Seven Signs, Solina's Tomb");
|
||||
@@ -119,203 +113,233 @@ public final class Q10295_SevenSignsSolinasTomb extends Quest
|
||||
public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
String htmltext = event;
|
||||
final QuestState st = player.getQuestState(getName());
|
||||
int progress = st.getInt("progress");
|
||||
if ("32792-05.html".equals(event))
|
||||
final QuestState qs = player.getQuestState(getName());
|
||||
int progress = qs.getInt("progress");
|
||||
switch (event)
|
||||
{
|
||||
st.set("cond", "1");
|
||||
st.set("progress", "0");
|
||||
st.setState(State.STARTED);
|
||||
st.playSound("ItemSound.quest_accept");
|
||||
}
|
||||
else if ("32857-02.html".equals(event))
|
||||
{
|
||||
if (st.hasQuestItems(StaffOfBlessing))
|
||||
case "32792-05.html":
|
||||
{
|
||||
htmltext = "32857-03.html";
|
||||
qs.startQuest();
|
||||
qs.set("progress", "0");
|
||||
break;
|
||||
}
|
||||
else
|
||||
case "32857-02.html":
|
||||
{
|
||||
st.giveItems(StaffOfBlessing, 1);
|
||||
progress++;
|
||||
st.set("progress", progress);
|
||||
st.playSound("ItemSound.quest_middle");
|
||||
if (progress == 4)
|
||||
if (hasQuestItems(player, StaffOfBlessing))
|
||||
{
|
||||
openDoor(21100001, player.getInstanceId());
|
||||
openDoor(21100010, player.getInstanceId());
|
||||
openDoor(21100014, player.getInstanceId());
|
||||
openDoor(21100006, player.getInstanceId());
|
||||
htmltext = "32857-03.html";
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
else if ("32858-02.html".equals(event))
|
||||
{
|
||||
if (st.hasQuestItems(SwordOfHolySpirit))
|
||||
{
|
||||
htmltext = "32858-03.html";
|
||||
}
|
||||
else
|
||||
{
|
||||
st.giveItems(SwordOfHolySpirit, 1);
|
||||
progress++;
|
||||
st.set("progress", progress);
|
||||
st.playSound("ItemSound.quest_middle");
|
||||
if (progress == 4)
|
||||
else
|
||||
{
|
||||
openDoor(21100001, player.getInstanceId());
|
||||
openDoor(21100010, player.getInstanceId());
|
||||
openDoor(21100014, player.getInstanceId());
|
||||
openDoor(21100006, player.getInstanceId());
|
||||
giveItems(player, StaffOfBlessing, 1);
|
||||
progress++;
|
||||
qs.set("progress", progress);
|
||||
playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE);
|
||||
if (progress == 4)
|
||||
{
|
||||
openDoor(21100001, player.getInstanceId());
|
||||
openDoor(21100010, player.getInstanceId());
|
||||
openDoor(21100014, player.getInstanceId());
|
||||
openDoor(21100006, player.getInstanceId());
|
||||
}
|
||||
return null;
|
||||
}
|
||||
return null;
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if ("32859-02.html".equals(event))
|
||||
{
|
||||
if (st.hasQuestItems(ScrollOfAbstinence))
|
||||
case "32858-02.html":
|
||||
{
|
||||
htmltext = "32859-03.html";
|
||||
}
|
||||
else
|
||||
{
|
||||
st.giveItems(ScrollOfAbstinence, 1);
|
||||
progress++;
|
||||
st.set("progress", progress);
|
||||
st.playSound("ItemSound.quest_middle");
|
||||
if (progress == 4)
|
||||
if (hasQuestItems(player, SwordOfHolySpirit))
|
||||
{
|
||||
openDoor(21100001, player.getInstanceId());
|
||||
openDoor(21100010, player.getInstanceId());
|
||||
openDoor(21100014, player.getInstanceId());
|
||||
openDoor(21100006, player.getInstanceId());
|
||||
htmltext = "32858-03.html";
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
else if ("32860-02.html".equals(event))
|
||||
{
|
||||
if (st.hasQuestItems(ShieldOfSacrifice))
|
||||
{
|
||||
htmltext = "32860-03.html";
|
||||
}
|
||||
else
|
||||
{
|
||||
st.giveItems(ShieldOfSacrifice, 1);
|
||||
progress++;
|
||||
st.set("progress", progress);
|
||||
st.playSound("ItemSound.quest_middle");
|
||||
if (progress == 4)
|
||||
else
|
||||
{
|
||||
openDoor(21100001, player.getInstanceId());
|
||||
openDoor(21100010, player.getInstanceId());
|
||||
openDoor(21100014, player.getInstanceId());
|
||||
openDoor(21100006, player.getInstanceId());
|
||||
giveItems(player, SwordOfHolySpirit, 1);
|
||||
progress++;
|
||||
qs.set("progress", progress);
|
||||
playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE);
|
||||
if (progress == 4)
|
||||
{
|
||||
openDoor(21100001, player.getInstanceId());
|
||||
openDoor(21100010, player.getInstanceId());
|
||||
openDoor(21100014, player.getInstanceId());
|
||||
openDoor(21100006, player.getInstanceId());
|
||||
}
|
||||
return null;
|
||||
}
|
||||
return null;
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if ("deactivate-17231-21100206-18955".equals(event))
|
||||
{
|
||||
if (st.hasQuestItems(StaffOfBlessing))
|
||||
case "32859-02.html":
|
||||
{
|
||||
st.takeItems(StaffOfBlessing, -1);
|
||||
player.sendPacket(new OnEventTrigger(StaffDeviceEvent, false));
|
||||
addSpawn(18952, 41838, -249630, -6761, 0, false, 0, false, player.getInstanceId());
|
||||
return null;
|
||||
if (hasQuestItems(player, ScrollOfAbstinence))
|
||||
{
|
||||
htmltext = "32859-03.html";
|
||||
}
|
||||
else
|
||||
{
|
||||
giveItems(player, ScrollOfAbstinence, 1);
|
||||
progress++;
|
||||
qs.set("progress", progress);
|
||||
playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE);
|
||||
if (progress == 4)
|
||||
{
|
||||
openDoor(21100001, player.getInstanceId());
|
||||
openDoor(21100010, player.getInstanceId());
|
||||
openDoor(21100014, player.getInstanceId());
|
||||
openDoor(21100006, player.getInstanceId());
|
||||
}
|
||||
return null;
|
||||
}
|
||||
break;
|
||||
}
|
||||
htmltext = "32841-03.html";
|
||||
}
|
||||
else if ("deactivate-17228-21100200-18952".equals(event))
|
||||
{
|
||||
if (st.hasQuestItems(ScrollOfAbstinence))
|
||||
case "32860-02.html":
|
||||
{
|
||||
st.takeItems(ScrollOfAbstinence, -1);
|
||||
player.sendPacket(new OnEventTrigger(ScrollDeviceEvent, false));
|
||||
addSpawn(18953, 45391, -253186, -6761, 0, false, 0, false, player.getInstanceId());
|
||||
return null;
|
||||
if (hasQuestItems(player, ShieldOfSacrifice))
|
||||
{
|
||||
htmltext = "32860-03.html";
|
||||
}
|
||||
else
|
||||
{
|
||||
giveItems(player, ShieldOfSacrifice, 1);
|
||||
progress++;
|
||||
qs.set("progress", progress);
|
||||
playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE);
|
||||
if (progress == 4)
|
||||
{
|
||||
openDoor(21100001, player.getInstanceId());
|
||||
openDoor(21100010, player.getInstanceId());
|
||||
openDoor(21100014, player.getInstanceId());
|
||||
openDoor(21100006, player.getInstanceId());
|
||||
}
|
||||
return null;
|
||||
}
|
||||
break;
|
||||
}
|
||||
htmltext = "32838-03.html";
|
||||
}
|
||||
else if ("deactivate-17230-21100204-18954".equals(event))
|
||||
{
|
||||
if (st.hasQuestItems(SwordOfHolySpirit))
|
||||
case "deactivate-17231-21100206-18955":
|
||||
{
|
||||
st.takeItems(SwordOfHolySpirit, -1);
|
||||
player.sendPacket(new OnEventTrigger(SwordDeviceEvent, false));
|
||||
addSpawn(18955, 45396, -246124, -6761, 0, false, 0, false, player.getInstanceId());
|
||||
return null;
|
||||
if (hasQuestItems(player, StaffOfBlessing))
|
||||
{
|
||||
takeItems(player, StaffOfBlessing, -1);
|
||||
player.sendPacket(new OnEventTrigger(StaffDeviceEvent, false));
|
||||
addSpawn(18952, 41838, -249630, -6761, 0, false, 0, false, player.getInstanceId());
|
||||
return null;
|
||||
}
|
||||
htmltext = "32841-03.html";
|
||||
break;
|
||||
}
|
||||
htmltext = "32840-03.html";
|
||||
}
|
||||
else if ("deactivate-17229-21100202-18953".equals(event))
|
||||
{
|
||||
if (st.hasQuestItems(ShieldOfSacrifice))
|
||||
case "deactivate-17228-21100200-18952":
|
||||
{
|
||||
if (hasQuestItems(player, ScrollOfAbstinence))
|
||||
{
|
||||
takeItems(player, ScrollOfAbstinence, -1);
|
||||
player.sendPacket(new OnEventTrigger(ScrollDeviceEvent, false));
|
||||
addSpawn(18953, 45391, -253186, -6761, 0, false, 0, false, player.getInstanceId());
|
||||
return null;
|
||||
}
|
||||
htmltext = "32838-03.html";
|
||||
break;
|
||||
}
|
||||
case "deactivate-17230-21100204-18954":
|
||||
{
|
||||
if (hasQuestItems(player, SwordOfHolySpirit))
|
||||
{
|
||||
takeItems(player, SwordOfHolySpirit, -1);
|
||||
player.sendPacket(new OnEventTrigger(SwordDeviceEvent, false));
|
||||
addSpawn(18955, 45396, -246124, -6761, 0, false, 0, false, player.getInstanceId());
|
||||
return null;
|
||||
}
|
||||
htmltext = "32840-03.html";
|
||||
break;
|
||||
}
|
||||
case "deactivate-17229-21100202-18953":
|
||||
{
|
||||
if (hasQuestItems(player, ShieldOfSacrifice))
|
||||
{
|
||||
takeItems(player, ShieldOfSacrifice, -1);
|
||||
player.sendPacket(new OnEventTrigger(ShieldDeviceEvent, false));
|
||||
addSpawn(18954, 48912, -249639, -6761, 0, false, 0, false, player.getInstanceId());
|
||||
return null;
|
||||
}
|
||||
htmltext = "32839-03.html";
|
||||
break;
|
||||
}
|
||||
case "32843-02.html":
|
||||
{
|
||||
qs.set("tomb_opened", 1);
|
||||
openDoor(21100101, player.getInstanceId());
|
||||
openDoor(21100102, player.getInstanceId());
|
||||
openDoor(21100103, player.getInstanceId());
|
||||
openDoor(21100104, player.getInstanceId());
|
||||
addSpawn(18956, 56504, -252840, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18956, 56504, -252728, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18956, 56392, -252728, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18956, 56408, -252840, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
|
||||
addSpawn(18957, 55672, -252728, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18957, 55752, -252840, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18957, 55768, -252840, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18957, 55752, -252712, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
|
||||
addSpawn(18958, 55672, -252120, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18958, 55752, -252120, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18958, 55656, -252216, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18958, 55736, -252216, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
|
||||
addSpawn(18959, 56520, -252232, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18959, 56520, -252104, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18959, 56424, -252104, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18959, 56440, -252216, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
return null;
|
||||
}
|
||||
case "32793-04.html":
|
||||
{
|
||||
qs.setCond(2, true);
|
||||
return null;
|
||||
}
|
||||
case "32793-07.html":
|
||||
{
|
||||
qs.setCond(3, true);
|
||||
return null;
|
||||
}
|
||||
case "StartMovie":
|
||||
{
|
||||
player.showQuestMovie(26);
|
||||
openDoor(21100008, player.getInstanceId());
|
||||
openDoor(21100012, player.getInstanceId());
|
||||
openDoor(21100016, player.getInstanceId());
|
||||
openDoor(21100003, player.getInstanceId());
|
||||
openDoor(21100005, player.getInstanceId());
|
||||
openDoor(21100007, player.getInstanceId());
|
||||
openDoor(21100002, player.getInstanceId());
|
||||
openDoor(21100004, player.getInstanceId());
|
||||
openDoor(21100015, player.getInstanceId());
|
||||
openDoor(21100013, player.getInstanceId());
|
||||
openDoor(21100011, player.getInstanceId());
|
||||
openDoor(21100009, player.getInstanceId());
|
||||
player.sendPacket(new OnEventTrigger(TeleportDeviceEvent, true));
|
||||
player.sendPacket(new OnEventTrigger(ScrollDeviceEvent, true));
|
||||
player.sendPacket(new OnEventTrigger(ShieldDeviceEvent, true));
|
||||
player.sendPacket(new OnEventTrigger(SwordDeviceEvent, true));
|
||||
player.sendPacket(new OnEventTrigger(StaffDeviceEvent, true));
|
||||
return null;
|
||||
}
|
||||
case "seal_removed":
|
||||
{
|
||||
qs.set("seal_removed", "1");
|
||||
playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE);
|
||||
player.showQuestMovie(27);
|
||||
return null;
|
||||
}
|
||||
case "open_door":
|
||||
{
|
||||
openDoor(21100018, player.getInstanceId());
|
||||
playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE);
|
||||
return null;
|
||||
}
|
||||
case "NotReady":
|
||||
{
|
||||
st.takeItems(ShieldOfSacrifice, -1);
|
||||
player.sendPacket(new OnEventTrigger(ShieldDeviceEvent, false));
|
||||
addSpawn(18954, 48912, -249639, -6761, 0, false, 0, false, player.getInstanceId());
|
||||
return null;
|
||||
}
|
||||
htmltext = "32839-03.html";
|
||||
}
|
||||
else if ("32843-02.html".equals(event))
|
||||
{
|
||||
st.set("tomb_opened", 1);
|
||||
activateTombGuards(player);
|
||||
return null;
|
||||
}
|
||||
else if ("32793-04.html".equals(event))
|
||||
{
|
||||
st.set("cond", "2");
|
||||
st.playSound("ItemSound.quest_middle");
|
||||
return null;
|
||||
}
|
||||
else if ("32793-07.html".equals(event))
|
||||
{
|
||||
st.set("cond", "3");
|
||||
st.playSound("ItemSound.quest_middle");
|
||||
return null;
|
||||
}
|
||||
else if ("StartMovie".equals(event))
|
||||
{
|
||||
player.showQuestMovie(26);
|
||||
openDoor(21100008, player.getInstanceId());
|
||||
openDoor(21100012, player.getInstanceId());
|
||||
openDoor(21100016, player.getInstanceId());
|
||||
openDoor(21100003, player.getInstanceId());
|
||||
openDoor(21100005, player.getInstanceId());
|
||||
openDoor(21100007, player.getInstanceId());
|
||||
openDoor(21100002, player.getInstanceId());
|
||||
openDoor(21100004, player.getInstanceId());
|
||||
openDoor(21100015, player.getInstanceId());
|
||||
openDoor(21100013, player.getInstanceId());
|
||||
openDoor(21100011, player.getInstanceId());
|
||||
openDoor(21100009, player.getInstanceId());
|
||||
player.sendPacket(new OnEventTrigger(TeleportDeviceEvent, true));
|
||||
player.sendPacket(new OnEventTrigger(ScrollDeviceEvent, true));
|
||||
player.sendPacket(new OnEventTrigger(ShieldDeviceEvent, true));
|
||||
player.sendPacket(new OnEventTrigger(SwordDeviceEvent, true));
|
||||
player.sendPacket(new OnEventTrigger(StaffDeviceEvent, true));
|
||||
return null;
|
||||
}
|
||||
else if ("seal_removed".equals(event))
|
||||
{
|
||||
st.set("seal_removed", "1");
|
||||
st.playSound("ItemSound.quest_middle");
|
||||
player.showQuestMovie(27);
|
||||
return null;
|
||||
}
|
||||
else if ("open_door".equals(event))
|
||||
{
|
||||
openDoor(21100018, player.getInstanceId());
|
||||
st.playSound("ItemSound.quest_middle");
|
||||
return null;
|
||||
}
|
||||
else if ("NotReady".equals(event))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
return htmltext;
|
||||
@@ -325,17 +349,18 @@ public final class Q10295_SevenSignsSolinasTomb extends Quest
|
||||
public String onTalk(L2Npc npc, L2PcInstance player)
|
||||
{
|
||||
String htmltext = getNoQuestMsg(player);
|
||||
final QuestState st = getQuestState(player, true);
|
||||
if (st == null)
|
||||
final QuestState qs = getQuestState(player, true);
|
||||
if (qs == null)
|
||||
{
|
||||
return htmltext;
|
||||
}
|
||||
|
||||
final int cond = st.getCond();
|
||||
final int cond = qs.getCond();
|
||||
final int npcId = npc.getId();
|
||||
switch (st.getState())
|
||||
switch (qs.getState())
|
||||
{
|
||||
case State.CREATED:
|
||||
{
|
||||
final QuestState ToTheMonastery = player.getQuestState(Q10294_SevenSignsToTheMonasteryOfSilence.class.getSimpleName());
|
||||
if ((player.getLevel() >= 81) && ToTheMonastery.isCompleted())
|
||||
{
|
||||
@@ -344,30 +369,31 @@ public final class Q10295_SevenSignsSolinasTomb extends Quest
|
||||
else
|
||||
{
|
||||
htmltext = "32792-00.html";
|
||||
st.exitQuest(true);
|
||||
qs.exitQuest(true);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case State.STARTED:
|
||||
{
|
||||
if (npcId == ErissEvilThoughts)
|
||||
{
|
||||
if ((cond == 1) || (cond == 2))
|
||||
if (qs.isCond(1) || qs.isCond(2))
|
||||
{
|
||||
htmltext = "32792-06.html";
|
||||
}
|
||||
if ((cond == 3) && (player.getLevel() >= MIN_LEVEL))
|
||||
if (qs.isCond(3) && (player.getLevel() >= MIN_LEVEL))
|
||||
{
|
||||
htmltext = "32792-07.html";
|
||||
st.addExpAndSp(125000000, 12500000);
|
||||
addExpAndSp(player, 125000000, 12500000);
|
||||
player.broadcastPacket(new SocialAction(player.getObjectId(), 3));
|
||||
st.exitQuest(false);
|
||||
st.playSound("ItemSound.quest_finish");
|
||||
qs.exitQuest(false, true);
|
||||
}
|
||||
}
|
||||
else if (npcId == Elcadia)
|
||||
{
|
||||
if (cond == 1)
|
||||
if (qs.isCond(1))
|
||||
{
|
||||
if (st.getInt("seal_removed") == 1)
|
||||
if (qs.getInt("seal_removed") == 1)
|
||||
{
|
||||
htmltext = "32785-02.html";
|
||||
}
|
||||
@@ -376,14 +402,14 @@ public final class Q10295_SevenSignsSolinasTomb extends Quest
|
||||
htmltext = "32785-01.html";
|
||||
}
|
||||
}
|
||||
else if (cond == 2)
|
||||
else if (qs.isCond(2))
|
||||
{
|
||||
htmltext = "32785-03.html";
|
||||
}
|
||||
}
|
||||
else if (npcId == TeleportControlDevice1)
|
||||
{
|
||||
if (st.getInt("seal_removed") == 1)
|
||||
if (qs.getInt("seal_removed") == 1)
|
||||
{
|
||||
htmltext = "32837-02.html";
|
||||
}
|
||||
@@ -394,34 +420,34 @@ public final class Q10295_SevenSignsSolinasTomb extends Quest
|
||||
}
|
||||
else if (npcId == TeleportControlDevice2)
|
||||
{
|
||||
if (st.getInt("tomb_opened") == 1)
|
||||
if (qs.getInt("tomb_opened") == 1)
|
||||
{
|
||||
htmltext = "32842-01.html";
|
||||
}
|
||||
}
|
||||
else if (npcId == TombOfTheSaintess)
|
||||
{
|
||||
if (st.getInt("tomb_opened") != 1)
|
||||
if (qs.getInt("tomb_opened") != 1)
|
||||
{
|
||||
htmltext = "32843-01.html";
|
||||
}
|
||||
}
|
||||
else if (npcId == SolinasEvilThoughts)
|
||||
{
|
||||
if (cond == 1)
|
||||
if (qs.isCond(1))
|
||||
{
|
||||
htmltext = "32793-01.html";
|
||||
}
|
||||
else if (cond == 2)
|
||||
else if (qs.isCond(2))
|
||||
{
|
||||
htmltext = "32793-04.html";
|
||||
}
|
||||
else if (cond == 3)
|
||||
else if (qs.isCond(3))
|
||||
{
|
||||
htmltext = "32793-07.html";
|
||||
}
|
||||
}
|
||||
if ((cond == 1) && (st.getInt("seal_removed") != 1))
|
||||
if ((cond == 1) && (qs.getInt("seal_removed") != 1))
|
||||
{
|
||||
if (npcId == AltarOfHallows_Staff)
|
||||
{
|
||||
@@ -457,9 +483,12 @@ public final class Q10295_SevenSignsSolinasTomb extends Quest
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case State.COMPLETED:
|
||||
{
|
||||
htmltext = getNoQuestMsg(player);
|
||||
break;
|
||||
}
|
||||
}
|
||||
return htmltext;
|
||||
}
|
||||
@@ -467,113 +496,85 @@ public final class Q10295_SevenSignsSolinasTomb extends Quest
|
||||
@Override
|
||||
public String onKill(L2Npc npc, L2PcInstance player, boolean isPet)
|
||||
{
|
||||
final QuestState st = player.getQuestState(getName());
|
||||
final int cond = st.getInt("cond");
|
||||
int tomb = st.getInt("tomb");
|
||||
int solina = st.getInt("solina");
|
||||
final QuestState qs = player.getQuestState(getName());
|
||||
int tomb = qs.getInt("tomb");
|
||||
int solina = qs.getInt("solina");
|
||||
final int npcId = npc.getId();
|
||||
if (cond == 1)
|
||||
if (qs.isCond(1))
|
||||
{
|
||||
if (npcId == SOLINAS[0])
|
||||
{
|
||||
solina++;
|
||||
st.set("solina", solina);
|
||||
qs.set("solina", solina);
|
||||
if (solina == 4)
|
||||
{
|
||||
st.startQuestTimer("seal_removed", 1000);
|
||||
qs.startQuestTimer("seal_removed", 1000);
|
||||
}
|
||||
}
|
||||
if (npcId == SOLINAS[1])
|
||||
{
|
||||
solina++;
|
||||
st.set("solina", solina);
|
||||
qs.set("solina", solina);
|
||||
if (solina == 4)
|
||||
{
|
||||
st.startQuestTimer("seal_removed", 1000);
|
||||
qs.startQuestTimer("seal_removed", 1000);
|
||||
}
|
||||
}
|
||||
if (npcId == SOLINAS[2])
|
||||
{
|
||||
solina++;
|
||||
st.set("solina", solina);
|
||||
qs.set("solina", solina);
|
||||
if (solina == 4)
|
||||
{
|
||||
st.startQuestTimer("seal_removed", 1000);
|
||||
qs.startQuestTimer("seal_removed", 1000);
|
||||
}
|
||||
}
|
||||
if (npcId == SOLINAS[3])
|
||||
{
|
||||
solina++;
|
||||
st.set("solina", solina);
|
||||
qs.set("solina", solina);
|
||||
if (solina == 4)
|
||||
{
|
||||
st.startQuestTimer("seal_removed", 1000);
|
||||
qs.startQuestTimer("seal_removed", 1000);
|
||||
}
|
||||
}
|
||||
if (npcId == GUARDIANS[0])
|
||||
{
|
||||
tomb++;
|
||||
st.set("tomb", tomb);
|
||||
qs.set("tomb", tomb);
|
||||
if (tomb == 16)
|
||||
{
|
||||
st.startQuestTimer("open_door", 1000);
|
||||
qs.startQuestTimer("open_door", 1000);
|
||||
}
|
||||
}
|
||||
if (npcId == GUARDIANS[1])
|
||||
{
|
||||
tomb++;
|
||||
st.set("tomb", tomb);
|
||||
qs.set("tomb", tomb);
|
||||
if (tomb == 16)
|
||||
{
|
||||
st.startQuestTimer("open_door", 1000);
|
||||
qs.startQuestTimer("open_door", 1000);
|
||||
}
|
||||
}
|
||||
if (npcId == GUARDIANS[2])
|
||||
{
|
||||
tomb++;
|
||||
st.set("tomb", tomb);
|
||||
qs.set("tomb", tomb);
|
||||
if (tomb == 16)
|
||||
{
|
||||
st.startQuestTimer("open_door", 1000);
|
||||
qs.startQuestTimer("open_door", 1000);
|
||||
}
|
||||
}
|
||||
if (npcId == GUARDIANS[3])
|
||||
{
|
||||
tomb++;
|
||||
st.set("tomb", tomb);
|
||||
qs.set("tomb", tomb);
|
||||
if (tomb == 16)
|
||||
{
|
||||
st.startQuestTimer("open_door", 1000);
|
||||
qs.startQuestTimer("open_door", 1000);
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
private void activateTombGuards(L2PcInstance player)
|
||||
{
|
||||
openDoor(21100101, player.getInstanceId());
|
||||
openDoor(21100102, player.getInstanceId());
|
||||
openDoor(21100103, player.getInstanceId());
|
||||
openDoor(21100104, player.getInstanceId());
|
||||
addSpawn(18956, 56504, -252840, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18956, 56504, -252728, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18956, 56392, -252728, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18956, 56408, -252840, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
|
||||
addSpawn(18957, 55672, -252728, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18957, 55752, -252840, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18957, 55768, -252840, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18957, 55752, -252712, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
|
||||
addSpawn(18958, 55672, -252120, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18958, 55752, -252120, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18958, 55656, -252216, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18958, 55736, -252216, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
|
||||
addSpawn(18959, 56520, -252232, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18959, 56520, -252104, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18959, 56424, -252104, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
addSpawn(18959, 56440, -252216, -6760, 0, false, 0, false, player.getInstanceId());
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user