public override IEnumerator Exec(GameWebAPI.GA_Req_ExecGacha playGashaRequestParam, bool isTutorial)
        {
            GameWebAPI.RespDataGA_ExecGacha gashaResult = null;
            int[] userMonsterIdList = null;
            GameWebAPI.RequestGA_GashaExec playGashaRequest = new GameWebAPI.RequestGA_GashaExec
            {
                SetSendData = delegate(GameWebAPI.GA_Req_ExecGacha param)
                {
                    param.gachaId   = playGashaRequestParam.gachaId;
                    param.playCount = playGashaRequestParam.playCount;
                    param.itemCount = playGashaRequestParam.itemCount;
                },
                OnReceived = delegate(GameWebAPI.RespDataGA_ExecGacha response)
                {
                    gashaResult       = response;
                    userMonsterIdList = new int[gashaResult.userMonsterList.Length];
                    for (int i = 0; i < gashaResult.userMonsterList.Length; i++)
                    {
                        int num = 0;
                        if (int.TryParse(gashaResult.userMonsterList[i].userMonsterId, out num))
                        {
                            userMonsterIdList[i] = num;
                        }
                    }
                    this.SetGashaResult(gashaResult, playGashaRequestParam.playCount);
                }
            };
            GameWebAPI.MonsterSlotInfoListLogic monsterSlotRequest = new GameWebAPI.MonsterSlotInfoListLogic
            {
                SetSendData = delegate(GameWebAPI.ReqDataCS_MonsterSlotInfoListLogic param)
                {
                    param.userMonsterId = userMonsterIdList;
                },
                OnReceived = delegate(GameWebAPI.RespDataCS_MonsterSlotInfoListLogic response)
                {
                    ChipDataMng.GetUserChipSlotData().UpdateMonsterSlotList(response.slotInfo);
                    ClassSingleton <MonsterUserDataMng> .Instance.RefreshMonsterSlot(userMonsterIdList);
                }
            };
            RestrictionInput.StartLoad(RestrictionInput.LoadType.LARGE_IMAGE_MASK_ON);
            APIRequestTask task = new APIRequestTask(playGashaRequest, true);

            task.Add(new APIRequestTask(monsterSlotRequest, true));
            yield return(AppCoroutine.Start(task.Run(delegate
            {
                this.SetGashaResultWindow(gashaResult, userMonsterIdList, isTutorial);
                this.SetGashaCutScene(gashaResult, isTutorial);
            }, delegate(Exception noop)
            {
                RestrictionInput.EndLoad();
                GUIManager.CloseAllCommonDialog(null);
            }, null), false));

            yield break;
        }
Ejemplo n.º 2
0
 public IEnumerator GetOpponentMonsterChipSlot(int[] userMonsterIdList)
 {
     GameWebAPI.MonsterSlotInfoListLogic request = new GameWebAPI.MonsterSlotInfoListLogic
     {
         SetSendData = delegate(GameWebAPI.ReqDataCS_MonsterSlotInfoListLogic param)
         {
             param.userMonsterId = userMonsterIdList;
         }
     };
     return(this.httpAPI.RequestOpponentMonsterChipSlot(request, new Action <GameWebAPI.RespDataCS_MonsterSlotInfoListLogic>(this.eventListener.OnReceivedOpponentMonsterChipSlot)));
 }
 public IEnumerator RequestOpponentMonsterChipSlot(GameWebAPI.MonsterSlotInfoListLogic request, Action <GameWebAPI.RespDataCS_MonsterSlotInfoListLogic> onCompleted)
 {
     GameWebAPI.RespDataCS_MonsterSlotInfoListLogic monsterSlotInfoList = null;
     request.OnReceived = delegate(GameWebAPI.RespDataCS_MonsterSlotInfoListLogic response)
     {
         monsterSlotInfoList = response;
     };
     return(request.Run(delegate()
     {
         onCompleted(monsterSlotInfoList);
     }, null, null));
 }
Ejemplo n.º 4
0
    protected IEnumerator GetChipSlotInfo()
    {
        GameWebAPI.RespDataUS_GetMonsterList.UserMonsterList[] monsterList = new GameWebAPI.RespDataUS_GetMonsterList.UserMonsterList[]
        {
            this.GetUserMonsterData()
        };
        GameWebAPI.MonsterSlotInfoListLogic request = ChipDataMng.RequestAPIMonsterSlotInfo(monsterList);
        yield return(AppCoroutine.Start(request.Run(new Action(this.EndSuccess), delegate(Exception noop)
        {
            RestrictionInput.EndLoad();
            this.ClosePanel(true);
        }, null), false));

        yield break;
    }
Ejemplo n.º 5
0
    private void RequestEvolution(EvolutionData.MonsterEvolveData evolutionData, int costCluster)
    {
        RequestList requestList = new RequestList();

        GameWebAPI.RequestMN_MonsterEvolution addRequest = new GameWebAPI.RequestMN_MonsterEvolution
        {
            SetSendData = delegate(GameWebAPI.MN_Req_Evolution param)
            {
                param.userMonsterId = evolutionData.md.userMonster.userMonsterId;
                param.monsterId     = int.Parse(evolutionData.md_next.monsterM.monsterId);
            },
            OnReceived = delegate(GameWebAPI.RespDataMN_EvolutionExec response)
            {
                ClassSingleton <MonsterUserDataMng> .Instance.UpdateUserMonsterData(response.userMonster);

                if (response.IsFirstEvolution())
                {
                    this.execEvolutionReviewStatus = CMD_Evolution.EvolutionReviewStatus.FIRST_EVOLUTION_REVIEW;
                }
                else if (response.IsFirstUltimaEvolution())
                {
                    this.execEvolutionReviewStatus = CMD_Evolution.EvolutionReviewStatus.FIRST_ULTIMA_EVOLUTION_REVIEW;
                }
            }
        };
        requestList.AddRequest(addRequest);
        GameWebAPI.MonsterSlotInfoListLogic addRequest2 = ChipAPIRequest.RequestAPIMonsterSlotInfo(new int[]
        {
            int.Parse(evolutionData.md.userMonster.userMonsterId)
        });
        string beforeModelId  = evolutionData.md.GetMonsterMaster().Group.modelId;
        string beforeGrowStep = evolutionData.md.GetMonsterMaster().Group.growStep;

        requestList.AddRequest(addRequest2);
        AppCoroutine.Start(requestList.Run(delegate()
        {
            this.evolveDataBK = evolutionData;
            this.EndEvolveDo(beforeModelId, beforeGrowStep, costCluster);
        }, delegate(Exception noop)
        {
            RestrictionInput.EndLoad();
        }, null), false);
    }
Ejemplo n.º 6
0
 public static APIRequestTask RequestAPIMonsterSlotInfoList(int[] userMonsterIdList, bool requestRetry = true)
 {
     GameWebAPI.MonsterSlotInfoListLogic request = ChipAPIRequest.RequestAPIMonsterSlotInfo(userMonsterIdList);
     return(new APIRequestTask(request, requestRetry));
 }