コード例 #1
0
  @Override
  public boolean onDialogEvent(QuestEnv env) {
    Player player = env.getPlayer();
    QuestState qs = player.getQuestStateList().getQuestState(questId);
    DialogAction dialog = env.getDialog();
    int targetId = env.getTargetId();

    if (qs == null || qs.getStatus() == QuestStatus.NONE) {
      if (targetId == 205579) {
        if (dialog == DialogAction.QUEST_SELECT) {
          return sendQuestDialog(env, 4762);
        } else if (dialog == DialogAction.QUEST_ACCEPT_SIMPLE) {
          QuestService.questTimerStart(env, 780);
          return sendQuestStartDialog(env);
        } else {
          return sendQuestStartDialog(env);
        }
      }
    } else if (qs != null && qs.getStatus() == QuestStatus.START) {
      int var = qs.getQuestVarById(0);
      if (targetId == 205798) {
        if (dialog == DialogAction.QUEST_SELECT) {
          return sendQuestDialog(env, 1011);
        } else if (dialog == DialogAction.SETPRO1) {
          return defaultCloseDialog(env, 0, 1);
        }
      }
      if (targetId == 205799 && var == 1) {
        if (dialog == DialogAction.QUEST_SELECT) {
          return sendQuestDialog(env, 1352);
        } else if (dialog == DialogAction.SETPRO2) {
          return defaultCloseDialog(env, 1, 2);
        }
      }
      if (targetId == 205800 && var == 2) {
        if (dialog == DialogAction.QUEST_SELECT) {
          return sendQuestDialog(env, 1693);
        } else if (dialog == DialogAction.SETPRO3) {
          return defaultCloseDialog(env, 2, 3);
        }
      }
      if (targetId == 205801 && var == 3) {
        if (dialog == DialogAction.QUEST_SELECT) {
          return sendQuestDialog(env, 2034);
        } else if (dialog == DialogAction.SETPRO4) {
          return defaultCloseDialog(env, 3, 4);
        }
      }
      if (targetId == 205579 && var == 4) {
        if (dialog == DialogAction.QUEST_SELECT) {
          return sendQuestDialog(env, 2375);
        } else if (dialog == DialogAction.SETPRO5) {
          return defaultCloseDialog(env, 4, 5);
        }
      }
      if (targetId == 205579 && var == 5) {
        if (dialog == DialogAction.QUEST_SELECT) {
          return sendQuestDialog(env, 2716);
        } else if (dialog == DialogAction.CHECK_USER_HAS_QUEST_ITEM_SIMPLE) {
          return checkQuestItems(env, 5, 6, true, 10002, 10001);
        }
      }
    } else if (qs.getStatus() == QuestStatus.REWARD) {
      if (targetId == 205579) {
        if (dialog == DialogAction.SELECT_QUEST_REWARD) {
          QuestService.questTimerEnd(env);
          return sendQuestDialog(env, 5);
        } else {
          return sendQuestEndDialog(env);
        }
      }
    }
    return false;
  }