예제 #1
0
    private void sendQuestRetire()
    {
        m_PageSwitchNext = false;
        m_QuestId        = SceneGoesParam.Instance.m_SceneGoesParamToMainMenuRetire.m_QuestID;
        bool is_auto_play = SceneGoesParam.Instance.m_SceneGoesParamToMainMenuRetire.m_IsUsedAutoPlay;

        m_QuestMaster = MasterDataUtil.GetQuest2ParamFromID(m_QuestId);
        if (m_QuestMaster != null)
        {
            m_AreaMaster = MasterFinder <MasterDataArea> .Instance.Find((int)m_QuestMaster.area_id);
        }

        //--------------------------------
        // ローカルセーブにあるリザルト情報を破棄
        //--------------------------------
        LocalSaveManager.Instance.SaveFuncGoesToMenuRetire(null);

        switch (MasterDataUtil.GetQuestType(m_QuestId))
        {
        case MasterDataDefineLabel.QuestType.NORMAL:
        {
            ServerDataUtilSend.SendPacketAPI_QuestRetire(m_QuestId, is_auto_play)
            .setSuccessAction(_data =>
                {
                    resultSuccess(_data);
                })
            .setErrorAction(_data =>
                {
                    resultError(_data);
                })
            .SendStart();
        }
        break;

        case MasterDataDefineLabel.QuestType.CHALLENGE:
        {
            ServerDataUtilSend.SendPacketAPI_ChallengeQuestRetire(m_QuestId, is_auto_play)
            .setSuccessAction(_data =>
                {
                    resultSuccess(_data);
                })
            .setErrorAction(_data =>
                {
                    resultError(_data);
                })
            .SendStart();
        }
        break;

        default:
            //Home画面へ
            m_PageSwitchNext = true;
            break;
        }
    }