@Override public boolean onDialogEvent(final QuestEnv env) { Player player = env.getPlayer(); QuestState qs = player.getQuestStateList().getQuestState(questId); if (qs == null) return false; DialogAction dialog = env.getDialog(); int var = qs.getQuestVarById(0); int targetId = env.getTargetId(); if (qs.getStatus() == QuestStatus.START) { switch (targetId) { case 798928: { // Yulia switch (dialog) { case QUEST_SELECT: { if (var == 0) { return sendQuestDialog(env, 1011); } } case SETPRO1: { return defaultCloseDialog(env, 0, 1); // 1 } } break; } case 798975: { // Sulla switch (dialog) { case QUEST_SELECT: { if (var == 1) { return sendQuestDialog(env, 1352); } else if (var == 6) { return sendQuestDialog(env, 3057); } else if (var == 9) { return sendQuestDialog(env, 4080); } } case SETPRO2: { return defaultCloseDialog(env, 1, 2); // 2 } case SETPRO7: { return defaultCloseDialog(env, 6, 7); // 7 } case SETPRO10: { return defaultCloseDialog(env, 9, 10); // 10 } } break; } case 798981: { // Philon switch (dialog) { case QUEST_SELECT: { if (var == 2) { return sendQuestDialog(env, 1693); } } case SETPRO3: { return defaultCloseDialog(env, 2, 3); // 3 } } break; } case 798513: { // Machiah switch (dialog) { case QUEST_SELECT: { if (var == 7) { return sendQuestDialog(env, 3398); } } case SETPRO8: { return defaultCloseDialog(env, 7, 8); // 8 } } break; } case 798225: { // Pyrrha switch (dialog) { case QUEST_SELECT: { if (var == 8) { return sendQuestDialog(env, 3739); } } case SETPRO9: { return defaultCloseDialog(env, 8, 9); // 9 } } break; } case 798979: { // Gelon switch (dialog) { case QUEST_SELECT: { if (var == 10) { return sendQuestDialog(env, 1608); } } case SETPRO11: { return defaultCloseDialog(env, 10, 11); // 11 } } break; } case 798990: { // Titus switch (dialog) { case QUEST_SELECT: { if (var == 11) { return sendQuestDialog(env, 1949); } } case SETPRO12: { return defaultCloseDialog(env, 11, 12, 182206613, 1, 0, 0); // 12 } } break; } case 730295: { // Drakan Stone Statue switch (dialog) { case QUEST_SELECT: { if (var == 12) { return sendQuestDialog(env, 3995); } } case SETPRO13: { if (var == 12) { if (player.getInventory().getItemCountByItemId(182206613) > 0) { removeQuestItem(env, 182206613, 1); WorldMapInstance newInstance = InstanceService.getNextAvailableInstance(300160000); InstanceService.registerPlayerWithInstance(newInstance, player); TeleportService2.teleportTo( player, 300160000, newInstance.getInstanceId(), 744.761f, 940.3738f, 149.28333f, (byte) 91); return true; } else return sendQuestDialog(env, 10001); } } } break; } case 730229: { // Traveller's Bag if (dialog == DialogAction.USE_OBJECT) { if (var == 15) { return true; // loot } } break; } case 730226: { // Western Petrified Mass if (var == 3 && dialog == DialogAction.USE_OBJECT) { return useQuestObject(env, 3, 4, false, 0); // 4 } break; } case 730227: { // Eastern Petrified Mass if (var == 4 && dialog == DialogAction.USE_OBJECT) { return useQuestObject(env, 4, 5, false, 0); // 5 } break; } case 730228: { // Southern Petrified Mass if (var == 5 && dialog == DialogAction.USE_OBJECT) { return useQuestObject(env, 5, 6, false, 0); // 6 } break; } case 700604: { // Hidden Switch if (var == 13 && dialog == DialogAction.USE_OBJECT) { return useQuestObject(env, 13, 14, false, 0); // 14 } break; } case 700603: { // Hidden Library Exit if (var == 16 && dialog == DialogAction.USE_OBJECT) { TeleportService2.teleportTo( player, 210050000, 349.332f, 1368.0781f, 336.43332f, (byte) 100); return true; } break; } } } else if (qs.getStatus() == QuestStatus.REWARD) { if (targetId == 798928) { // Yulia if (env.getDialog() == DialogAction.USE_OBJECT) { return sendQuestDialog(env, 10002); } else { return sendQuestEndDialog(env); } } } return false; }
@Override public boolean onDialogEvent(QuestEnv env) { Player player = env.getPlayer(); QuestState qs = player.getQuestStateList().getQuestState(questId); if (qs == null) { return false; } int var = qs.getQuestVars().getQuestVars(); int targetId = env.getTargetId(); DialogAction dialog = env.getDialog(); if (qs.getStatus() == QuestStatus.START) { switch (targetId) { case 204182: { // Heimdall switch (dialog) { case QUEST_SELECT: { if (var == 0) { return sendQuestDialog(env, 1011); } } case SETPRO1: { return defaultCloseDialog(env, 0, 1); // 1 } } break; } case 203550: { // Munin switch (dialog) { case QUEST_SELECT: { if (var == 1) { return sendQuestDialog(env, 1352); } else if (var == 10) { return sendQuestDialog(env, 4080); } } case SETPRO2: { return defaultCloseDialog(env, 1, 2); // 2 } case SETPRO10: { return defaultCloseDialog(env, 10, 10, true, false); // reward } } break; } case 790003: { // Urd switch (dialog) { case QUEST_SELECT: { if (var == 2) { return sendQuestDialog(env, 1693); } } case SETPRO3: { return defaultCloseDialog(env, 2, 3); // 3 } } break; } case 790002: { // Verdandi switch (dialog) { case QUEST_SELECT: { if (var == 3) { return sendQuestDialog(env, 2034); } } case SETPRO4: { return defaultCloseDialog(env, 3, 4); // 4 } } break; } case 203546: { // Skuld switch (dialog) { case QUEST_SELECT: { if (var == 4) { return sendQuestDialog(env, 2375); } else if (var == 9) { return sendQuestDialog(env, 3739); } } case SETPRO5: { if (var == 4) { changeQuestStep(env, 4, 95, false); // 95 WorldMapInstance newInstance = InstanceService.getNextAvailableInstance(320070000); InstanceService.registerPlayerWithInstance(newInstance, player); TeleportService2.teleportTo( player, 320070000, newInstance.getInstanceId(), 268.47397f, 251.80275f, 125.8369f); return closeDialogWindow(env); } } case SETPRO9: { changeQuestStep(env, 9, 10, false); // 10 TeleportService2.teleportTo(player, 220010000, 1, 383.0f, 1896.0f, 327.625f); return closeDialogWindow(env); } } break; } case 204264: { // Skuld 2 switch (dialog) { case USE_OBJECT: { if (var == 99 && !isStigmaEquipped(env)) { return sendQuestDialog(env, 3057); } } case QUEST_SELECT: { if (var == 95) { return sendQuestDialog(env, 2716); } else if (var == 96) { return sendQuestDialog(env, 3057); } else if (var == 97) { return sendQuestDialog(env, 3398); } } case SETPRO6: { if (var == 95) { playQuestMovie(env, 156); return closeDialogWindow(env); } } case SELECT_ACTION_3058: { if (var == 96) { if (giveQuestItem(env, getStoneId(player), 1) && !isStigmaEquipped(env)) { long existendStigmaShards = player.getInventory().getItemCountByItemId(141000001); if (existendStigmaShards < 60) { if (!player.getInventory().isFull()) { ItemService.addItem(player, 141000001, 60 - existendStigmaShards); changeQuestStep(env, 96, 99, false); // 99 return sendQuestDialog(env, 3058); } else { return closeDialogWindow(env); } } else { changeQuestStep(env, 96, 99, false); // 99 return sendQuestDialog(env, 3058); } } else { return closeDialogWindow(env); } } else if (var == 99) { return sendQuestDialog(env, 3058); } } case SETPRO7: { if (var == 99) { PacketSendUtility.sendPacket( player, new SM_DIALOG_WINDOW(env.getVisibleObject().getObjectId(), 1)); return true; } } case SETPRO8: { if (var == 97) { changeQuestStep(env, 97, 98, false); // 98 QuestService.addNewSpawn( 320070000, player.getInstanceId(), 204263, 257.5f, 245f, 125f, (byte) 0); return closeDialogWindow(env); } } } break; } } } else if (qs.getStatus() == QuestStatus.REWARD) { if (targetId == 204061) { // Aud return sendQuestEndDialog(env); } } return false; }