/// <summary> /// OKボタン選択 /// </summary> /// <param name="data"></param> private void OnSelectOk(ChallengeSelect.EventData data) { var requirement_id = data.questMaster.quest_requirement_id; MasterDataQuestRequirement quest_requirement = null; if (requirement_id != 0) { quest_requirement = MasterDataUtil.GetMasterDataQuestRequirementFromID(requirement_id); } //-------------------------------- // ユニット所持数が上限超えてるならクエスト不可 //-------------------------------- if (UserDataAdmin.Instance.m_StructPlayer.total_unit < UserDataAdmin.Instance.m_StructPlayer.unit_list.Length) { openDialogUnitOver(); SoundUtil.PlaySE(SEID.SE_MENU_RET); } else if (quest_requirement != null && quest_requirement.limit_rank > UserDataAdmin.Instance.m_StructPlayer.rank) { //-------------------------------- // ランク制限でクエストに入れない場合 //-------------------------------- openDialogRankLow(); SoundUtil.PlaySE(SEID.SE_MENU_RET); } else if (MainMenuParam.m_QuestStamina != 0 && UserDataAdmin.Instance.m_StructPlayer.stamina_max < MainMenuParam.m_QuestStamina) { //-------------------------------- // スタミナのMAX値が足りずクエストに入れない場合 //-------------------------------- openDialogStaminaLow(); SoundUtil.PlaySE(SEID.SE_MENU_RET); } else if (MainMenuParam.m_QuestTicket != 0 && MainMenuParam.m_QuestTicket > UserDataAdmin.Instance.m_StructPlayer.have_ticket) { //-------------------------------- // チケット対価不足 //-------------------------------- openDialogTicketLow(); SoundUtil.PlaySE(SEID.SE_MENU_RET); } else if (MainMenuParam.m_QuestStamina != 0 && UserDataAdmin.Instance.m_StructPlayer.stamina_max >= data.questMaster.consume_value && MainMenuParam.m_QuestStamina > UserDataAdmin.Instance.m_StructPlayer.stamina_now) { //-------------------------------- // スタミナが足りない場合、スタミナ回復ダイアログを表示 //-------------------------------- PacketStructUseItem item = useRecoverItem(); if (item != null) { openDialogUseItem(item); } else { //-------------------------------- // チップによる回復ルート //-------------------------------- openDialogUseStone(); } SoundUtil.PlaySE(SEID.SE_MENU_RET); } else { //-------------------------------- // 特にエラーなし。次のフローへ //-------------------------------- //成長ボス選択パラメータ設定 MainMenuParam.SetChallengeSelectParam(data.questMaster.fix_id, data.bSkip, (data.bSkip ? data.SkipLevel : data.info.challenge_level)); //成長ボスではMainMenuQuestSelectを経由しないのでAreaCategoryIDをここで設定 MasterDataArea area = MasterDataUtil.GetAreaParamFromID(data.questMaster.area_id); MainMenuParam.m_QuestSelectAreaCateID = (area != null ? area.area_cate_id : 0); MainMenuParam.m_QuestAreaAmendList = m_AreaAmendParam.m_AreaMasterDataAmendList; MainMenuParam.m_QuestSelectAreaID = data.questMaster.area_id; MainMenuParam.m_QuestSelectMissionID = data.questMaster.fix_id; if (MainMenuManager.HasInstance) { MainMenuManager.Instance.AddSwitchRequest(MAINMENU_SEQ.SEQ_QUEST_SELECT_FRIEND, false, false); SoundUtil.PlaySE(SEID.SE_MENU_OK); } } }