@Override public String onTalk(L2Npc npc, L2PcInstance player) { QuestState st = player.getQuestState(qn); String htmltext = getNoQuestMsg(); if (st == null) return htmltext; switch (st.getState()) { case STATE_CREATED: htmltext = (player.getLevel() < 48) ? "30754-01.htm" : "30754-02.htm"; break; case STATE_STARTED: int cond = st.getInt("cond"); switch (npc.getNpcId()) { case GILMORE: if (cond == 1) htmltext = (st.hasQuestItems(ARTICLE_DEAD_HERO)) ? "30754-05.htm" : "30754-09.htm"; else if (cond == 2) htmltext = (st.get("success") != null) ? "30754-16.htm" : "30754-15.htm"; break; default: if (cond == 2) { if (st.get("success") != null) htmltext = npc.getNpcId() + "-02.htm"; else { rewards(st, npc.getNpcId()); htmltext = npc.getNpcId() + "-01.htm"; } } break; } break; } return htmltext; }
@Override public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) { String htmltext = event; QuestState st = player.getQuestState(qn); if (st == null) return htmltext; if (event.equalsIgnoreCase("30623-04.htm")) { if (player.getRace() == Race.Orc) htmltext = "30623-05.htm"; } else if (event.equalsIgnoreCase("30623-07.htm")) { st.setState(STATE_STARTED); st.set("cond", "1"); st.set("cond", "2"); st.playSound(QuestState.SOUND_ACCEPT); st.giveItems(ORDER_GLUDIO, 1); st.giveItems(ORDER_DION, 1); st.giveItems(ORDER_GIRAN, 1); st.giveItems(ORDER_OREN, 1); st.giveItems(ORDER_ADEN, 1); st.giveItems(DIMENSIONAL_DIAMOND, 72); } else if (event.equalsIgnoreCase("30623-16.htm")) { if (st.getInt("cond") == 3) { st.set("cond", "4"); st.playSound(QuestState.SOUND_MIDDLE); st.takeItems(ORDER_GLUDIO, 1); st.takeItems(ORDER_DION, 1); st.takeItems(ORDER_GIRAN, 1); st.takeItems(ORDER_OREN, 1); st.takeItems(ORDER_ADEN, 1); st.takeItems(PUNCHER_SHARD, -1); st.takeItems(NOBLE_ANT_FEELER, -1); st.takeItems(DRONE_CHITIN, -1); st.takeItems(DEAD_SEEKER_FANG, -1); st.takeItems(OVERLORD_NECKLACE, -1); st.takeItems(FETTERED_SOUL_CHAIN, -1); st.takeItems(CHIEF_AMULET, -1); st.takeItems(ENCHANTED_EYE_MEAT, -1); st.takeItems(TAMRIN_ORC_RING, -1); st.takeItems(TAMRIN_ORC_ARROW, -1); st.giveItems(FINAL_ORDER, 1); } } return htmltext; }
@Override public String onTalk(L2Npc npc, L2PcInstance player) { String htmltext = getNoQuestMsg(); QuestState st = player.getQuestState(qn); if (st == null) return htmltext; switch (st.getState()) { case STATE_CREATED: htmltext = (player.getLevel() < 15) ? "30050-01.htm" : "30050-02.htm"; break; case STATE_STARTED: int cond = st.getInt("cond"); switch (npc.getNpcId()) { case ELIAS: if (cond == 1) htmltext = "30050-04.htm"; else if (cond == 2) htmltext = "30050-05.htm"; else if (cond == 3) { htmltext = "30050-06.htm"; st.takeItems(FEVER_MEDICINE, 1); st.giveItems(102, 1); st.playSound(QuestState.SOUND_FINISH); st.exitQuest(false); } break; case YOHANES: if (cond == 2) { htmltext = "30032-01.htm"; st.set("cond", "3"); st.playSound(QuestState.SOUND_MIDDLE); st.takeItems(POISON_SAC, 1); st.giveItems(FEVER_MEDICINE, 1); } else if (cond == 3) htmltext = "30032-02.htm"; break; } break; case STATE_COMPLETED: htmltext = getAlreadyCompletedMsg(); break; } return htmltext; }
@Override public String onTalk(L2Npc npc, L2PcInstance player) { String htmltext = getNoQuestMsg(); QuestState st = player.getQuestState(qn); if (st == null) return htmltext; switch (st.getState()) { case STATE_CREATED: final int classId = player.getClassId().getId(); if (classId != 0x01 && classId != 0x2f && classId != 0x13 && classId != 0x20) htmltext = "30623-02.htm"; else if (player.getLevel() < 39) htmltext = "30623-01.htm"; else htmltext = "30623-03.htm"; break; case STATE_STARTED: int cond = st.getInt("cond"); if (cond == 2) htmltext = "30623-07a.htm"; else if (cond == 3) htmltext = "30623-13.htm"; else if (cond == 4) htmltext = "30623-17.htm"; else if (cond == 5) { htmltext = "30623-18.htm"; st.takeItems(FINAL_ORDER, 1); st.takeItems(EXCURO_SKIN, -1); st.takeItems(KRATOR_SHARD, -1); st.takeItems(GRANDIS_SKIN, -1); st.takeItems(TIMAK_ORC_BELT, -1); st.takeItems(LAKIN_MACE, -1); st.giveItems(MARK_OF_DUELIST, 1); st.rewardExpAndSp(47015, 20000); player.broadcastPacket(new SocialAction(player, 3)); st.playSound(QuestState.SOUND_FINISH); st.exitQuest(false); } break; case STATE_COMPLETED: htmltext = getAlreadyCompletedMsg(); break; } return htmltext; }
@Override public String onTalk(L2Npc npc, L2PcInstance player) { String htmltext = getNoQuestMsg(); QuestState st = player.getQuestState(qn); if (st == null) return htmltext; switch (st.getState()) { case STATE_CREATED: htmltext = (player.getLevel() < 23) ? "32017-02.htm" : "32017-01.htm"; break; case STATE_STARTED: final int cond = st.getInt("cond"); if (cond == 1) htmltext = "32017-04.htm"; else if (cond == 2) htmltext = "32017-05.htm"; break; } return htmltext; }
@Override public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) { String htmltext = event; QuestState st = player.getQuestState(qn); if (st == null) return htmltext; // Manakia if (event.equalsIgnoreCase("30515-03.htm")) { st.setState(STATE_STARTED); st.set("cond", "1"); st.set("condStone", "1"); st.playSound(QuestState.SOUND_ACCEPT); } else if (event.startsWith("30515-06-")) { if (st.getQuestItemsCount(CAVE_BEAST_TOOTH) >= 65 && st.getQuestItemsCount(DEATH_WAVE_LIGHT) >= 65) { htmltext = "30515-06.htm"; st.playSound(QuestState.SOUND_MIDDLE); int[] reward = REWARDS[Integer.parseInt(event.substring(9, 10))]; st.takeItems(CAVE_BEAST_TOOTH, -1); st.takeItems(DEATH_WAVE_LIGHT, -1); st.rewardItems(57, reward[2]); st.giveItems(reward[0], reward[1]); } else htmltext = "30515-07.htm"; } else if (event.equalsIgnoreCase("30515-08.htm")) { st.playSound(QuestState.SOUND_FINISH); st.exitQuest(true); } // Torai else if (event.equalsIgnoreCase("30557-02.htm")) { if (st.getInt("cond") == 2 && st.hasQuestItems(SEALED_MYSTERIOUS_STONE)) { st.set("cond", "3"); st.takeItems(SEALED_MYSTERIOUS_STONE, -1); st.giveItems(MYSTERIOUS_STONE, 1); st.playSound(QuestState.SOUND_MIDDLE); } else htmltext = "30557-03.htm"; } return htmltext; }
@Override public String onTalk(L2Npc npc, L2PcInstance player) { QuestState st = player.getQuestState(qn); String htmltext = getNoQuestMsg(); if (st == null) return htmltext; switch (st.getState()) { case STATE_CREATED: htmltext = (player.getLevel() < 25) ? "30828-00a.htm" : "30828-00.htm"; break; case STATE_STARTED: int cond = st.getInt("cond"); switch (npc.getNpcId()) { case WATERS: if (cond == 1) htmltext = (!st.hasQuestItems(TRIDENT)) ? "30828-01a.htm" : "30828-02.htm"; else if (cond == 2) htmltext = "30828-03a.htm"; else if (cond == 3) htmltext = "30828-04.htm"; else if (cond == 4) htmltext = "30828-05a.htm"; else if (cond == 5) htmltext = "30828-06.htm"; break; case SOPHYA: if (cond == 4) htmltext = "30735-05.htm"; else if (cond == 5) htmltext = "30735-06a.htm"; break; } break; case STATE_COMPLETED: htmltext = getAlreadyCompletedMsg(); break; } return htmltext; }
@Override public String onTalk(L2Npc npc, L2PcInstance player) { String htmltext = getNoQuestMsg(); QuestState st = player.getQuestState(qn); if (st == null) return htmltext; switch (st.getState()) { case STATE_CREATED: htmltext = (player.getLevel() < 56) ? "30515-01.htm" : "30515-02.htm"; break; case STATE_STARTED: final int cond = st.getInt("cond"); switch (npc.getNpcId()) { case MANAKIA: if (!(st.hasQuestItems(SEALED_MYSTERIOUS_STONE))) { if (st.getQuestItemsCount(CAVE_BEAST_TOOTH) >= 65 && st.getQuestItemsCount(DEATH_WAVE_LIGHT) >= 65) htmltext = "30515-05.htm"; else htmltext = "30515-04.htm"; } else { if (cond == 1) { htmltext = "30515-09.htm"; st.set("cond", "2"); st.playSound(QuestState.SOUND_MIDDLE); } else htmltext = "30515-10.htm"; } break; case TORAI: if (cond == 2 && st.hasQuestItems(SEALED_MYSTERIOUS_STONE)) htmltext = "30557-01.htm"; break; } break; } return htmltext; }
@Override public String onTalk(L2Npc npc, L2PcInstance player) { String htmltext = getNoQuestMsg(); QuestState st = player.getQuestState(qn); if (st == null) return htmltext; switch (st.getState()) { case STATE_CREATED: htmltext = (player.getLevel() < 66) ? "31314-02.htm" : "31314-01.htm"; break; case STATE_STARTED: int cond = st.getInt("cond"); switch (npc.getNpcId()) { case DONAL: htmltext = "31314-04.htm"; break; case DAISY: if (cond == 1) htmltext = "31315-01.htm"; else if (cond == 2) htmltext = "31315-03.htm"; break; case ABERCROMBIE: if (cond == 2) htmltext = "31555-01.htm"; break; } break; case STATE_COMPLETED: htmltext = getAlreadyCompletedMsg(); break; } return htmltext; }
@Override public String onKill(L2Npc npc, L2PcInstance player, boolean isPet) { QuestState st = checkPlayerState(player, npc, STATE_STARTED); if (st == null) return null; if (st.getInt("cond") == 2) { switch (npc.getNpcId()) { case PUNCHER: if (st.dropItemsAlways(PUNCHER_SHARD, 1, 10)) if (st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10 && st.getQuestItemsCount(DRONE_CHITIN) >= 10 && st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10 && st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10 && st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10 && st.getQuestItemsCount(CHIEF_AMULET) >= 10 && st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10) st.set("cond", "3"); break; case NOBLE_ANT_LEADER: if (st.dropItemsAlways(NOBLE_ANT_FEELER, 1, 10)) if (st.getQuestItemsCount(PUNCHER_SHARD) >= 10 && st.getQuestItemsCount(DRONE_CHITIN) >= 10 && st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10 && st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10 && st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10 && st.getQuestItemsCount(CHIEF_AMULET) >= 10 && st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10) st.set("cond", "3"); break; case MARSH_STAKATO_DRONE: if (st.dropItemsAlways(DRONE_CHITIN, 1, 10)) if (st.getQuestItemsCount(PUNCHER_SHARD) >= 10 && st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10 && st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10 && st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10 && st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10 && st.getQuestItemsCount(CHIEF_AMULET) >= 10 && st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10) st.set("cond", "3"); break; case DEAD_SEEKER: if (st.dropItemsAlways(DEAD_SEEKER_FANG, 1, 10)) if (st.getQuestItemsCount(PUNCHER_SHARD) >= 10 && st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10 && st.getQuestItemsCount(DRONE_CHITIN) >= 10 && st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10 && st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10 && st.getQuestItemsCount(CHIEF_AMULET) >= 10 && st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10) st.set("cond", "3"); break; case BREKA_ORC_OVERLORD: if (st.dropItemsAlways(OVERLORD_NECKLACE, 1, 10)) if (st.getQuestItemsCount(PUNCHER_SHARD) >= 10 && st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10 && st.getQuestItemsCount(DRONE_CHITIN) >= 10 && st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10 && st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10 && st.getQuestItemsCount(CHIEF_AMULET) >= 10 && st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10) st.set("cond", "3"); break; case FETTERED_SOUL: if (st.dropItemsAlways(FETTERED_SOUL_CHAIN, 1, 10)) if (st.getQuestItemsCount(PUNCHER_SHARD) >= 10 && st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10 && st.getQuestItemsCount(DRONE_CHITIN) >= 10 && st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10 && st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10 && st.getQuestItemsCount(CHIEF_AMULET) >= 10 && st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10) st.set("cond", "3"); break; case LETO_LIZARDMAN_OVERLORD: if (st.dropItemsAlways(CHIEF_AMULET, 1, 10)) if (st.getQuestItemsCount(PUNCHER_SHARD) >= 10 && st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10 && st.getQuestItemsCount(DRONE_CHITIN) >= 10 && st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10 && st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10 && st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10 && st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10) st.set("cond", "3"); break; case ENCHANTED_MONSTEREYE: if (st.dropItemsAlways(ENCHANTED_EYE_MEAT, 1, 10)) if (st.getQuestItemsCount(PUNCHER_SHARD) >= 10 && st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10 && st.getQuestItemsCount(DRONE_CHITIN) >= 10 && st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10 && st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10 && st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10 && st.getQuestItemsCount(CHIEF_AMULET) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10) st.set("cond", "3"); break; case TAMLIN_ORC: if (st.dropItemsAlways(TAMRIN_ORC_RING, 1, 10)) if (st.getQuestItemsCount(PUNCHER_SHARD) >= 10 && st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10 && st.getQuestItemsCount(DRONE_CHITIN) >= 10 && st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10 && st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10 && st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10 && st.getQuestItemsCount(CHIEF_AMULET) >= 10 && st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_ARROW) >= 10) st.set("cond", "3"); break; case TAMLIN_ORC_ARCHER: if (st.dropItemsAlways(TAMRIN_ORC_ARROW, 1, 10)) if (st.getQuestItemsCount(PUNCHER_SHARD) >= 10 && st.getQuestItemsCount(NOBLE_ANT_FEELER) >= 10 && st.getQuestItemsCount(DRONE_CHITIN) >= 10 && st.getQuestItemsCount(DEAD_SEEKER_FANG) >= 10 && st.getQuestItemsCount(OVERLORD_NECKLACE) >= 10 && st.getQuestItemsCount(FETTERED_SOUL_CHAIN) >= 10 && st.getQuestItemsCount(CHIEF_AMULET) >= 10 && st.getQuestItemsCount(ENCHANTED_EYE_MEAT) >= 10 && st.getQuestItemsCount(TAMRIN_ORC_RING) >= 10) st.set("cond", "3"); break; } } else if (st.getInt("cond") == 4) { switch (npc.getNpcId()) { case EXCURO: if (st.dropItemsAlways(EXCURO_SKIN, 1, 3)) if (st.getQuestItemsCount(KRATOR_SHARD) >= 3 && st.getQuestItemsCount(LAKIN_MACE) >= 3 && st.getQuestItemsCount(GRANDIS_SKIN) >= 3 && st.getQuestItemsCount(TIMAK_ORC_BELT) >= 3) st.set("cond", "5"); break; case KRATOR: if (st.dropItemsAlways(KRATOR_SHARD, 1, 3)) if (st.getQuestItemsCount(EXCURO_SKIN) >= 3 && st.getQuestItemsCount(LAKIN_MACE) >= 3 && st.getQuestItemsCount(GRANDIS_SKIN) >= 3 && st.getQuestItemsCount(TIMAK_ORC_BELT) >= 3) st.set("cond", "5"); break; case LAKIN: if (st.dropItemsAlways(LAKIN_MACE, 1, 3)) if (st.getQuestItemsCount(EXCURO_SKIN) >= 3 && st.getQuestItemsCount(KRATOR_SHARD) >= 3 && st.getQuestItemsCount(GRANDIS_SKIN) >= 3 && st.getQuestItemsCount(TIMAK_ORC_BELT) >= 3) st.set("cond", "5"); break; case GRANDIS: if (st.dropItemsAlways(GRANDIS_SKIN, 1, 3)) if (st.getQuestItemsCount(EXCURO_SKIN) >= 3 && st.getQuestItemsCount(KRATOR_SHARD) >= 3 && st.getQuestItemsCount(LAKIN_MACE) >= 3 && st.getQuestItemsCount(TIMAK_ORC_BELT) >= 3) st.set("cond", "5"); break; case TIMAK_ORC_OVERLORD: if (st.dropItemsAlways(TIMAK_ORC_BELT, 1, 3)) if (st.getQuestItemsCount(EXCURO_SKIN) >= 3 && st.getQuestItemsCount(KRATOR_SHARD) >= 3 && st.getQuestItemsCount(LAKIN_MACE) >= 3 && st.getQuestItemsCount(GRANDIS_SKIN) >= 3) st.set("cond", "5"); break; } } return null; }
@Override public String onTalk(L2Npc npc, L2PcInstance player) { QuestState st = player.getQuestState(qn); String htmltext = getNoQuestMsg(); if (st == null) return htmltext; switch (st.getState()) { case STATE_CREATED: if (player.getRace() == Race.Elf) { if (player.getLevel() >= 3) htmltext = "30370-03.htm"; else { htmltext = "30370-02.htm"; st.exitQuest(true); } } else { htmltext = "30370-00.htm"; st.exitQuest(true); } break; case STATE_STARTED: int cond = st.getInt("cond"); switch (npc.getNpcId()) { case NERUPA: if (cond >= 1 && cond <= 3) htmltext = "30370-05.htm"; else if (cond == 4) { if (st.getQuestItemsCount(NIGHTSHADE_LEAF) == 1) { htmltext = "30370-06.htm"; st.playSound(QuestState.SOUND_FINISH); st.takeItems(NIGHTSHADE_LEAF, 1); st.rewardItems(LESSER_HEALING_POTION, 5); st.rewardExpAndSp(1000, 0); st.exitQuest(false); } } break; case UNOREN: if (cond == 1) { st.set("cond", "2"); htmltext = "30147-01.htm"; st.playSound(QuestState.SOUND_MIDDLE); st.takeItems(SILVERY_SPIDERSILK, 1); st.giveItems(UNOS_RECEIPT, 1); } else if (cond == 2) htmltext = "30147-02.htm"; else if (cond == 4) htmltext = "30147-03.htm"; break; case CREAMEES: if (cond == 2) { st.set("cond", "3"); htmltext = "30149-01.htm"; st.takeItems(UNOS_RECEIPT, 1); st.giveItems(CELS_TICKET, 1); st.playSound(QuestState.SOUND_MIDDLE); } else if (cond == 3) htmltext = "30149-02.htm"; else if (cond == 4) htmltext = "30149-03.htm"; break; case JULIA: if (cond == 3) { st.set("cond", "4"); htmltext = "30152-01.htm"; st.takeItems(CELS_TICKET, -1); st.giveItems(NIGHTSHADE_LEAF, 1); st.playSound(QuestState.SOUND_MIDDLE); } else if (cond == 4) htmltext = "30152-02.htm"; break; } break; case STATE_COMPLETED: htmltext = getAlreadyCompletedMsg(); break; } return htmltext; }
@Override public String onTalk(L2Npc npc, L2PcInstance player) { String htmltext = getNoQuestMsg(); QuestState st = player.getQuestState(qn); if (st == null) return htmltext; switch (st.getState()) { case STATE_CREATED: htmltext = (player.getLevel() < 63) ? "31522-03.htm" : "31522-01.htm"; break; case STATE_STARTED: int cond = st.getInt("cond"); switch (npc.getNpcId()) { case MYSTERIOUS_WIZARD: htmltext = "31522-05.htm"; break; case TOMBSTONE: if (cond == 1) htmltext = "31523-01.htm"; else if (cond == 2 || cond == 3) { htmltext = "31523-04.htm"; spawnVonHellmann(st); } else if (cond > 3) htmltext = "31523-04.htm"; break; case VON_HELLMAN: if (cond == 2) htmltext = "31524-01.htm"; else if (cond == 3) htmltext = "31524-07.htm"; else if (cond > 3) htmltext = "31524-07a.htm"; break; case VON_HELLMAN_PAGE: if (cond == 3 || cond == 4) { htmltext = "31525-01.htm"; if (!_vonHellmannPage.isMoving()) { htmltext = "31525-02.htm"; if (cond == 3) { st.set("cond", "4"); st.playSound(QuestState.SOUND_MIDDLE); } } } break; case BROKEN_BOOKSHELF: if (cond == 3 || cond == 4) { htmltext = "31526-01.htm"; if (!_vonHellmannPage.isMoving()) { st.set("cond", "5"); st.playSound(QuestState.SOUND_MIDDLE); if (_vonHellmannPage != null) { _vonHellmannPage.deleteMe(); _vonHellmannPage = null; cancelQuestTimer("pageDespawn", null, player); } if (_vonHellmann != null) { _vonHellmann.deleteMe(); _vonHellmann = null; } } } else if (cond == 5) htmltext = "31526-10.htm"; else if (cond > 5) htmltext = "31526-15.htm"; break; case AGRIPEL: case BENEDICT: case DOMINIC: if ((cond == 6 || cond == 7) && st.hasQuestItems(CROSS_OF_EINHASAD)) { int npcId = npc.getNpcId(); // For cond 6, make checks until cond 7 is activated. if (cond == 6) { int npcId1 = 0, npcId2 = 0; if (npcId == AGRIPEL) { npcId1 = BENEDICT; npcId2 = DOMINIC; } else if (npcId == BENEDICT) { npcId1 = AGRIPEL; npcId2 = DOMINIC; } else if (npcId == DOMINIC) { npcId1 = AGRIPEL; npcId2 = BENEDICT; } if (st.getInt(String.valueOf(npcId1)) == 1 && st.getInt(String.valueOf(npcId2)) == 1) { st.set("cond", "7"); st.playSound(QuestState.SOUND_MIDDLE); } else st.set(String.valueOf(npcId), "1"); } htmltext = npcId + "-01.htm"; } break; case INNOCENTIN: if (cond == 7 && st.hasQuestItems(CROSS_OF_EINHASAD)) htmltext = "31328-01.htm"; break; } break; case STATE_COMPLETED: if (npc.getNpcId() == INNOCENTIN) htmltext = "31328-06.htm"; else htmltext = getAlreadyCompletedMsg(); break; } return htmltext; }