コード例 #1
0
    /// <summary>
    /// ユニット進化実行
    /// </summary>
    private void EvolveUnit()
    {
        //素材
        List <long> partsList = new List <long>();

        for (int i = 0; i < m_UnitMaterialPanel.MaterialList.Count; i++)
        {
            if (m_UnitMaterialPanel.MaterialList[i].m_UniqueId != 0)
            {
                partsList.Add(m_UnitMaterialPanel.MaterialList[i].m_UniqueId);
            }
        }

        //----------------------------------------
        // 演出用に通信処理を行う前の情報を保持しておく
        //----------------------------------------
        {
            MainMenuParam.m_EvolveBaseBefore = new PacketStructUnit();
            MainMenuParam.m_EvolveBaseBefore.Copy(m_BaseUnit);

            MainMenuParam.m_EvolveParts.Release();
            for (int i = 0; i < partsList.Count; i++)
            {
                if (partsList[i] == 0)
                {
                    continue;
                }

                PacketStructUnit _unit = UserDataAdmin.Instance.SearchChara(partsList[i]);
                if (_unit == null)
                {
                    continue;
                }

                PacketStructUnit cUnit = new PacketStructUnit();
                cUnit.Copy(_unit);
                MainMenuParam.m_EvolveParts.Add(cUnit);
            }
        }

        ButtonBlocker.Instance.Block(MainMenuDefine.UNIT_DECIDE_BUTTON_BLOCK_TAG);
        //ユニット進化送信
        ServerDataUtilSend.SendPacketAPI_Evolve_Unit(
            m_BaseUnit.unique_id
            , partsList.ToArray()
            , m_CharaEvol.fix_id
            , m_CharaEvol.unit_id_after
            , (MainMenuParam.m_BeginnerBoost != null) ? (int)MainMenuParam.m_BeginnerBoost.fix_id : 0)
        .setSuccessAction(_data =>
        {
            resultSuccess(_data);
        })
        .setErrorAction(_data =>
        {
#if BUILD_TYPE_DEBUG
            Debug.Log("request Error : " + _data.m_PacketCode.ToString());
#endif
            AndroidBackKeyManager.Instance.EnableBackKey();
            buttonUnlock();
        })
        .SendStart();
    }