Exemplo n.º 1
0
    public void OnClickReceiveButton()
    {
#if BUILD_TYPE_DEBUG
        Debug.Log("CALL OnClickReceiveButton:" + gameObject.name);
#endif
        //連打防止
        if (ServerApi.IsExists)
        {
            return;
        }

        if (GlobalMenuManager.Instance.IsPageClosing() == true)
        {
            return;
        }

        if (GlobalMenuManager.Instance.IsCangeTime())
        {
            return;
        }
        SoundUtil.PlaySE(SEID.SE_MENU_OK2);

        ServerDataUtilSend.SendPacketAPI_AchievementOpen(
            new uint[]
        {
            Achievement.fix_id
        },
            null).
        setSuccessAction(
            (_data) =>
        {
            //ユーザー情報更新
            UserDataAdmin.Instance.m_StructPlayer = _data.UpdateStructPlayer <RecvOpenAchievement>(UserDataAdmin.Instance.m_StructPlayer);
            UserDataAdmin.Instance.ConvertPartyAssing();

            RecvOpenAchievementValue result = _data.GetResult <RecvOpenAchievement>().result;
            MissionOneOpenResultMessage(result);
            MissionGroup.SetEnaleReceiveButtonAll(false);
            MissionGroup.Activate();

            // 開封した新規達成アチーブメントを削除
            ResidentParam.DelAchievementClear(result.achievement_opened);
#if BUILD_TYPE_DEBUG
            Debug.LogError("FINISH:" + ((result.achievement_opened != null) ? result.achievement_opened.Length : 0));
#endif
            MainMenuManager.Instance.UpdateUserStatusFromGlobalMenu();
        }).
        setErrorAction(
            (_data) =>
        {
            Debug.LogError("ERROR:" + _data.m_PacketCode);
            MissionGroup.SetEnaleReceiveButtonAll(true);
        }).
        SendStart();
    }
Exemplo n.º 2
0
    public void Initialize()
    {
        m_FilterInfo = new SortDialog.MissionFilterInfo();
        m_FilterInfo.InitParam();

        MissionGroupList.ForEach(g => g.Deactivate());
        ACHIEVEMENT_CATEGORY_TYPE missionGroupType = (CurrentMissionGroup == null) ? ACHIEVEMENT_CATEGORY_TYPE.DAILY : CurrentMissionGroup.missionGroupType;

        if (MainMenuParam.m_AchievementShowData != null)
        {
            //アチーブメント指定がある場合
            missionGroupType = (ACHIEVEMENT_CATEGORY_TYPE)MainMenuParam.m_AchievementShowData.achievement_category_id;
            MainMenuParam.m_AchievementShowData = null;
        }
        else
        {
            //達成したアチーブがあるページを指定
            if (UserDataAdmin.Instance.GetUserFlag(UserDataAdmin.UserFlagType.GlobalMissionDaily) == true)
            {
                missionGroupType = ACHIEVEMENT_CATEGORY_TYPE.DAILY;
            }
            else if (UserDataAdmin.Instance.GetUserFlag(UserDataAdmin.UserFlagType.GlobalMissionEvent) == true)
            {
                missionGroupType = ACHIEVEMENT_CATEGORY_TYPE.EVENT;
            }
            else if (UserDataAdmin.Instance.GetUserFlag(UserDataAdmin.UserFlagType.GlobalMissionNormal) == true)
            {
                missionGroupType = ACHIEVEMENT_CATEGORY_TYPE.NORMAL;
            }
        }
        MissionGroup missionGroup = FindMissionGroup(missionGroupType);

        missionGroup.SetSelectTab();
        missionGroup.Activate(1);

        SetUpButtons();
    }