コード例 #1
0
    public static CMD_ChipReinforcementModal Create(GameWebAPI.RespDataCS_ChipListLogic.UserChipList data, Action <int> callback = null)
    {
        CMD_ChipReinforcementModal cmd_ChipReinforcementModal = GUIMain.ShowCommonDialog(callback, "CMD_ChipReinforcedModal", null) as CMD_ChipReinforcementModal;

        cmd_ChipReinforcementModal.SetParam(data);
        return(cmd_ChipReinforcementModal);
    }
コード例 #2
0
    public static GameWebAPI.ChipEquipLogic RequestAPIChipEquip(GameWebAPI.ReqDataCS_ChipEquipLogic equip, Action <int> callBack = null)
    {
        return(new GameWebAPI.ChipEquipLogic
        {
            SetSendData = delegate(GameWebAPI.ReqDataCS_ChipEquipLogic param)
            {
                param.act = equip.act;
                param.dispNum = equip.dispNum;
                param.type = equip.type;
                param.userChipId = equip.userChipId;
                param.userMonsterId = equip.userMonsterId;
            },
            OnReceived = delegate(GameWebAPI.RespDataCS_ChipEquipLogic resData)
            {
                if (resData.resultCode == 1)
                {
                    GameWebAPI.RespDataCS_ChipListLogic.UserChipList userChip = ChipDataMng.GetUserChip(equip.userChipId);
                    userChip.userChipId = equip.userChipId;
                    userChip.userMonsterId = ((equip.GetActEnum() != GameWebAPI.ReqDataCS_ChipEquipLogic.ACT.ATTACH) ? 0 : equip.userMonsterId);
                    MonsterData userMonster = ClassSingleton <MonsterUserDataMng> .Instance.GetUserMonster(equip.userMonsterId.ToString());

                    userMonster.GetChipEquip().UpdateEquipList(equip);
                    if (equip.GetActEnum() == GameWebAPI.ReqDataCS_ChipEquipLogic.ACT.REMOVE)
                    {
                        Singleton <UserDataMng> .Instance.UpdateUserItemNum(7, -1);
                    }
                    ClassSingleton <MonsterUserDataMng> .Instance.UpdateUserMonsterData(resData.userMonster);
                }
                if (callBack != null)
                {
                    callBack(resData.resultCode);
                }
            }
        });
    }
コード例 #3
0
 private GameWebAPI.RespDataCS_ChipListLogic.UserChipList[] SetGashaResult(GameWebAPI.RespDataGA_ExecChip gashaResult, int playCount)
 {
     UserHomeInfo.dirtyMyPage = true;
     GameWebAPI.RespDataCS_ChipListLogic.UserChipList[] array = new GameWebAPI.RespDataCS_ChipListLogic.UserChipList[gashaResult.userAssetList.Length];
     for (int i = 0; i < array.Length; i++)
     {
         int num  = 0;
         int num2 = 0;
         if (int.TryParse(gashaResult.userAssetList[i].assetValue, out num) && int.TryParse(gashaResult.userAssetList[i].userAssetId, out num2))
         {
             array[i] = new GameWebAPI.RespDataCS_ChipListLogic.UserChipList
             {
                 chipId        = num,
                 userChipId    = num2,
                 userMonsterId = 0
             };
         }
         global::Debug.Assert(null != array[i], string.Concat(new object[]
         {
             "ガシャ排出された強化チップのIDが不正です:chipId=",
             num,
             ", userChipId=",
             num2
         }));
     }
     ChipDataMng.AddUserChipList(array);
     base.UpdateUserAssetsInventory(playCount);
     base.UpdateGashaInfo(playCount);
     return(array);
 }
コード例 #4
0
    private void Send(GameWebAPI.RespDataCS_ChipListLogic.UserChipList baseChip)
    {
        RestrictionInput.StartLoad(RestrictionInput.LoadType.SMALL_IMAGE_MASK_ON);
        int userChipId = baseChip.userChipId;

        GameWebAPI.RespDataMA_ChipM.Chip baseMaterChip = ChipDataMng.GetChipMainData(baseChip);
        int num = baseMaterChip.needChip.ToInt32();

        int[] array = null;
        if (num > 0)
        {
            array = new int[num];
            int num2 = 0;
            foreach (GameWebAPI.RespDataCS_ChipListLogic.UserChipList userChipList2 in ChipDataMng.userChipData.userChipList)
            {
                if (userChipId != userChipList2.userChipId && userChipList2.chipId == baseChip.chipId && userChipList2.userMonsterId == 0)
                {
                    array[num2] = userChipList2.userChipId;
                    num2++;
                    if (num2 >= array.Length)
                    {
                        break;
                    }
                }
            }
        }
        Action callback = delegate()
        {
            GameWebAPI.RespDataCS_ChipListLogic.UserChipList[] array2 = this.ConvertChipList(ChipDataMng.userChipData);
            this.chipList.ReAllBuild(array2, false, false);
            this.chipList.SetShortTouchCallback(new Action <GUIListChipParts.Data>(this.OnShortTouchChip));
            this.chipList.SetLongTouchCallback(new Action <GUIListChipParts.Data>(this.OnLongTouchChip));
            this.messageLabel.gameObject.SetActive(array2.Count <GameWebAPI.RespDataCS_ChipListLogic.UserChipList>() == 0);
            this.listCountLabel.text = string.Format(StringMaster.GetString("SystemFraction"), ChipDataMng.userChipData.userChipList.Length, DataMng.Instance().RespDataUS_PlayerInfo.playerInfo.chipLimitMax);
            GameWebAPI.RespDataMA_ChipM.Chip chipEnhancedData = ChipDataMng.GetChipEnhancedData(baseMaterChip.chipId);
            CMD_ChipReinforcementAnimation.Create(this.gameObject, chipEnhancedData, null);
        };
        int            resultCode = 0;
        APIRequestTask task       = ChipDataMng.RequestAPIChipFusion(baseChip.userChipId, array, delegate(int res)
        {
            resultCode = res;
        });

        AppCoroutine.Start(task.Run(delegate
        {
            if (resultCode == 1)
            {
                callback();
            }
            else
            {
                string @string = StringMaster.GetString("SystemDataMismatchTitle");
                string message = string.Format(StringMaster.GetString("ChipDataMismatchMesage"), resultCode);
                AlertManager.ShowModalMessage(delegate(int modal)
                {
                }, @string, message, AlertManager.ButtonActionType.Close, false);
            }
            RestrictionInput.EndLoad();
        }, null, null), false);
    }
コード例 #5
0
 public static GameWebAPI.RespDataCS_ChipListLogic.UserChipList GetUserChip(int userChipId)
 {
     global::Debug.Assert(null != ChipDataMng.userChipData, "所持チップ情報がNULL (userChipData)");
     global::Debug.Assert(null != ChipDataMng.userChipData.userChipList, "所持チップ一覧がNULL (userChipData.userChipList)");
     GameWebAPI.RespDataCS_ChipListLogic.UserChipList userChipList = ChipDataMng.userChipData.userChipList.FirstOrDefault((GameWebAPI.RespDataCS_ChipListLogic.UserChipList c) => c.userChipId == userChipId);
     global::Debug.Assert(null != userChipList, "所持していないユーザーチップID (" + userChipId + ")");
     return(userChipList);
 }
コード例 #6
0
 public static GameWebAPI.RespDataMA_ChipM.Chip GetChipMainData(GameWebAPI.RespDataCS_ChipListLogic.UserChipList userChip)
 {
     GameWebAPI.RespDataMA_ChipM.Chip chip = null;
     ChipDataMng.GetDictionaryChipM().TryGetValue(userChip.chipId, out chip);
     chip = ChipDataMng.SetChipIconPath(chip);
     chip = ChipDataMng.SetChipSellPrice(chip);
     return(chip);
 }
コード例 #7
0
    private static int ComparerRarityOrderByDesc(GameWebAPI.RespDataCS_ChipListLogic.UserChipList x, GameWebAPI.RespDataCS_ChipListLogic.UserChipList y)
    {
        GameWebAPI.RespDataMA_ChipM.Chip chipMainData  = ChipDataMng.GetChipMainData(x);
        GameWebAPI.RespDataMA_ChipM.Chip chipMainData2 = ChipDataMng.GetChipMainData(y);
        int num  = chipMainData.rank.ToInt32();
        int num2 = chipMainData2.rank.ToInt32();
        int num3 = num2 - num;

        return((num3 != 0) ? num3 : (y.chipId - x.chipId));
    }
コード例 #8
0
 public ChipClientSlotInfo(GameWebAPI.RespDataCS_MonsterSlotInfoListLogic.SlotInfo slotInfo)
 {
     this.monsterSlotInfo = slotInfo;
     this.equipList       = new List <ChipClientEquip>();
     if (slotInfo.equip != null)
     {
         for (int i = 0; i < slotInfo.equip.Length; i++)
         {
             GameWebAPI.RespDataCS_ChipListLogic.UserChipList userChip = ChipDataMng.GetUserChip(slotInfo.equip[i].userChipId);
             this.equipList.Add(new ChipClientEquip(slotInfo.equip[i], userChip.chipId));
         }
     }
 }
コード例 #9
0
    public static APIRequestTask RequestAPIChipFusion(int baseUserChipId, int[] materialChipIds, Action <int> onCompleted)
    {
        GameWebAPI.ChipFusionLogic chipFusionLogic = new GameWebAPI.ChipFusionLogic
        {
            SetSendData = delegate(GameWebAPI.ReqDataCS_ChipFusionLogic param)
            {
                param.baseChip     = baseUserChipId;
                param.materialChip = materialChipIds;
            }
        };
        APIRequestTask task = new APIRequestTask(chipFusionLogic, true);

        chipFusionLogic.OnReceived = delegate(GameWebAPI.RespDataCS_ChipFusionLogic resData)
        {
            if (resData.resultCode == 1)
            {
                List <GameWebAPI.RespDataCS_ChipListLogic.UserChipList> list = ChipDataMng.userChipData.userChipList.ToList <GameWebAPI.RespDataCS_ChipListLogic.UserChipList>();
                int[] materialChipIds2 = materialChipIds;
                for (int i = 0; i < materialChipIds2.Length; i++)
                {
                    int materialChip = materialChipIds2[i];
                    list.RemoveAll((GameWebAPI.RespDataCS_ChipListLogic.UserChipList c) => c.userChipId == materialChip);
                }
                ChipDataMng.userChipData.userChipList = list.ToArray();
                GameWebAPI.RespDataCS_ChipListLogic.UserChipList userChipInfo = ChipDataMng.GetUserChip(baseUserChipId);
                userChipInfo.chipId = resData.userChip.chipId;
                if (userChipInfo.userMonsterId != 0)
                {
                    ChipClientSlotInfo slotInfo        = ChipDataMng.userChipSlotData.GetSlotInfo(userChipInfo.userMonsterId.ToString());
                    ChipClientEquip    chipClientEquip = slotInfo.FindChipEquip(baseUserChipId);
                    chipClientEquip.chipId = resData.userChip.chipId;
                    TaskBase task = task;
                    GameWebAPI.RequestMonsterList requestMonsterList = new GameWebAPI.RequestMonsterList();
                    requestMonsterList.SetSendData = delegate(GameWebAPI.ReqDataUS_GetMonsterList param)
                    {
                        param.userMonsterIds = new int[]
                        {
                            userChipInfo.userMonsterId
                        };
                    };
                    requestMonsterList.OnReceived = delegate(GameWebAPI.RespDataUS_GetMonsterList response)
                    {
                        ClassSingleton <MonsterUserDataMng> .Instance.UpdateUserMonsterData(response.userMonsterList);
                    };
                    task.Add(new APIRequestTask(requestMonsterList, true));
                }
            }
            onCompleted(resData.resultCode);
        };
        return(task);
    }
コード例 #10
0
        public void RemoveChipData(string userMonsterIdList, bool delete = true)
        {
            ChipClientSlotInfo slotInfo = this.GetSlotInfo(userMonsterIdList);

            foreach (ChipClientEquip chipClientEquip in slotInfo.GetChipEquip())
            {
                GameWebAPI.RespDataCS_ChipListLogic.UserChipList userChip = ChipDataMng.GetUserChip(chipClientEquip.userChipId);
                userChip.resetUserMonsterID();
            }
            if (delete)
            {
                this.DeleteMonsterSlot(userMonsterIdList);
            }
        }
コード例 #11
0
        public static int GetNumberExceptProtectedAssets(MasterDataMng.AssetCategory category, string assetsValue)
        {
            int num = -1;

            if (category != MasterDataMng.AssetCategory.MONSTER)
            {
                if (category != MasterDataMng.AssetCategory.CHIP)
                {
                    num = UserInventory.GetNumber(category, assetsValue);
                }
                else if (ChipDataMng.userChipData != null && ChipDataMng.userChipData.userChipList != null)
                {
                    if (string.IsNullOrEmpty(assetsValue) || "0" == assetsValue)
                    {
                        num = 0;
                        for (int i = 0; i < ChipDataMng.userChipData.userChipList.Length; i++)
                        {
                            if (ChipDataMng.userChipData.userChipList[i].userMonsterId == 0)
                            {
                                num++;
                            }
                        }
                    }
                    else
                    {
                        int num2 = 0;
                        if (int.TryParse(assetsValue, out num2))
                        {
                            num = 0;
                            for (int j = 0; j < ChipDataMng.userChipData.userChipList.Length; j++)
                            {
                                GameWebAPI.RespDataCS_ChipListLogic.UserChipList userChipList = ChipDataMng.userChipData.userChipList[j];
                                if (userChipList.chipId == num2 && userChipList.userMonsterId == 0)
                                {
                                    num++;
                                }
                            }
                        }
                    }
                }
            }
            else
            {
                Debug.LogError("未実装");
            }
            Debug.Assert(-1 != num, "アセット所持数の取得に失敗.");
            return(num);
        }
コード例 #12
0
    public void SetParam(GameWebAPI.RespDataCS_ChipListLogic.UserChipList data)
    {
        this.userChip = data;
        GameWebAPI.RespDataMA_ChipM.Chip prevMaterChip = ChipDataMng.GetChipMainData(this.userChip.chipId.ToString());
        this.prevReinforcementInfo.name.text        = prevMaterChip.name;
        this.prevReinforcementInfo.description.text = prevMaterChip.detail;
        this.prevReinforcementInfo.chipIcon.SetData(prevMaterChip, -1, -1);
        GameWebAPI.RespDataMA_ChipM.Chip chipEnhancedData = ChipDataMng.GetChipEnhancedData(this.userChip.chipId.ToString());
        this.nextReinforcementInfo.name.text        = chipEnhancedData.name;
        this.nextReinforcementInfo.description.text = chipEnhancedData.detail;
        this.nextReinforcementInfo.chipIcon.SetData(chipEnhancedData, -1, -1);
        int num = prevMaterChip.needChip.ToInt32();

        foreach (ChipIcon chipIcon in this.consumptionInfo.chipIcons)
        {
            chipIcon.SetActive(false);
        }
        for (int j = 0; j < num; j++)
        {
            this.consumptionInfo.chipIcons[j].SetActive(true);
            this.consumptionInfo.chipIcons[j].SetData(prevMaterChip, -1, -1);
        }
        GameWebAPI.RespDataCS_ChipListLogic userChipData = ChipDataMng.userChipData;
        int  num2 = userChipData.userChipList.Count((GameWebAPI.RespDataCS_ChipListLogic.UserChipList x) => this.userChip.userChipId != x.userChipId && x.chipId.ToString() == prevMaterChip.chipId && x.userMonsterId <= 0);
        bool flag = num2 >= num;

        if (flag)
        {
            this.consumptionInfo.message.text  = StringMaster.GetString("ChipReinforcementModal-05");
            this.consumptionInfo.message.color = ConstValue.DEFAULT_COLOR;
            this.EnableDecisionButton(true);
        }
        else
        {
            for (int k = 0; k < num; k++)
            {
                bool flag2 = k >= num2;
                this.consumptionInfo.chipIcons[k].SetSelectColor(flag2);
                this.consumptionInfo.chipIcons[k].SetSelectRankColor(flag2);
            }
            this.consumptionInfo.message.text  = StringMaster.GetString("ChipReinforcementModal-06");
            this.consumptionInfo.message.color = Color.red;
            this.EnableDecisionButton(false);
        }
    }
コード例 #13
0
 public static void DeleteUserChipData(List <int> userChipIdList)
 {
     if (ChipDataMng.userChipData != null)
     {
         List <GameWebAPI.RespDataCS_ChipListLogic.UserChipList> list = new List <GameWebAPI.RespDataCS_ChipListLogic.UserChipList>(ChipDataMng.userChipData.userChipList);
         int i;
         for (i = userChipIdList.Count - 1; i >= 0; i--)
         {
             GameWebAPI.RespDataCS_ChipListLogic.UserChipList userChipList = list.SingleOrDefault((GameWebAPI.RespDataCS_ChipListLogic.UserChipList x) => x.userChipId == userChipIdList[i]);
             if (userChipList != null)
             {
                 list.Remove(userChipList);
             }
         }
         ChipDataMng.userChipData.userChipList = list.ToArray();
         ChipDataMng.userChipData.count        = list.Count;
     }
 }
コード例 #14
0
 public void UpdateEquipList(GameWebAPI.ReqDataCS_ChipEquipLogic equip)
 {
     if (equip == null)
     {
         return;
     }
     if (equip.act == 1)
     {
         GameWebAPI.RespDataCS_ChipListLogic.UserChipList userChip = ChipDataMng.GetUserChip(equip.userChipId);
         ChipClientEquip chipClientEquip = new ChipClientEquip(equip, userChip.chipId);
         chipClientEquip.chipId = userChip.chipId;
         this.monsterSlotInfo.AddChipEquip(chipClientEquip);
     }
     else
     {
         this.monsterSlotInfo.DeleteChipEquip(equip.userChipId);
     }
 }
コード例 #15
0
 public void OnTouchChipIcon(ChipSphereIconButton.Parameter parameter, bool doAnimationOff = true)
 {
     if (this.selectedChipParameter == parameter)
     {
         if (this.myMenuType == CMD_ChipSphere.MenuType.Empty || this.myMenuType == CMD_ChipSphere.MenuType.Detail)
         {
             this.HideLoopAnim();
             this.ShowAttachPage(doAnimationOff);
         }
         return;
     }
     if (this.isTouchGuard)
     {
         return;
     }
     this.HideLoopAnim();
     this.selectedChipParameter = parameter;
     if (!parameter.IsEmpty())
     {
         this.currentUserChipList = ChipDataMng.GetUserChip(parameter.userChipId);
     }
     else
     {
         this.currentUserChipList = null;
     }
     this.chipSphereIconButtons[this.oldButtonIndex].SetUnChoose();
     this.chipSphereIconButtons[parameter.buttonNo - 1].SetChoose();
     this.oldButtonIndex = parameter.buttonNo - 1;
     this.myMenuType     = parameter.menuType;
     if (!this.onceAnimFlag)
     {
         this.onceAnimFlag = true;
         this.ChangeStatusRoot(parameter);
     }
     else
     {
         this.cachedParameter = parameter;
         this.isTouchGuard    = true;
         this.MoveAnim();
     }
 }
コード例 #16
0
        public void AddChipEquip(ChipClientEquip chipEquip)
        {
            int num = 0;

            if (chipEquip == null)
            {
                return;
            }
            foreach (ChipClientEquip chipClientEquip in this.equipList)
            {
                if (chipClientEquip.type == chipEquip.type && chipClientEquip.dispNum == chipEquip.dispNum && chipClientEquip.userChipId > 0)
                {
                    num = chipClientEquip.userChipId;
                }
            }
            if (num > 0)
            {
                GameWebAPI.RespDataCS_ChipListLogic.UserChipList userChip = ChipDataMng.GetUserChip(num);
                userChip.resetUserMonsterID();
                this.DeleteChipEquip(num);
            }
            this.equipList.Add(chipEquip);
        }
コード例 #17
0
 public GameWebAPI.RespDataMA_ChipM.Chip GetChipMainData()
 {
     GameWebAPI.RespDataCS_ChipListLogic.UserChipList userChip = ChipDataMng.GetUserChip(this.userChipId);
     return(ChipDataMng.GetChipMainData(userChip));
 }
コード例 #18
0
 public static GameWebAPI.RespDataMA_ChipM.Chip GetChipData(GameWebAPI.RespDataCS_MonsterSlotInfoListLogic.Equip equip)
 {
     GameWebAPI.RespDataCS_ChipListLogic.UserChipList userChip = ChipDataMng.GetUserChip(equip.userChipId);
     return(ChipDataMng.GetChipMainData(userChip));
 }
コード例 #19
0
 public static GameWebAPI.RespDataMA_ChipEffectM.ChipEffect[] GetChipEffectData(GameWebAPI.RespDataCS_ChipListLogic.UserChipList userChip)
 {
     GameWebAPI.RespDataMA_ChipEffectM.ChipEffect[] result = null;
     ChipDataMng.GetDictionaryChipEffectM().TryGetValue(userChip.chipId, out result);
     return(result);
 }
コード例 #20
0
 private static int ComparerTimeOrderByDesc(GameWebAPI.RespDataCS_ChipListLogic.UserChipList x, GameWebAPI.RespDataCS_ChipListLogic.UserChipList y)
 {
     return(y.userChipId - x.userChipId);
 }
コード例 #21
0
    private void Send(GameWebAPI.RespDataCS_ChipListLogic.UserChipList baseChip)
    {
        this.SetBarrier(true);
        RestrictionInput.StartLoad(RestrictionInput.LoadType.SMALL_IMAGE_MASK_ON);
        int baseChipId = baseChip.userChipId;

        GameWebAPI.RespDataMA_ChipM.Chip baseMaterChip = ChipDataMng.GetChipMainData(baseChip);
        int num = baseMaterChip.needChip.ToInt32();

        int[] array = null;
        if (num > 0)
        {
            array = new int[num];
            int num2 = 0;
            foreach (GameWebAPI.RespDataCS_ChipListLogic.UserChipList userChipList2 in ChipDataMng.userChipData.userChipList)
            {
                if (baseChipId != userChipList2.userChipId && userChipList2.chipId == baseChip.chipId && userChipList2.userMonsterId == 0)
                {
                    array[num2] = userChipList2.userChipId;
                    num2++;
                    if (num2 >= array.Length)
                    {
                        break;
                    }
                }
            }
        }
        Action callback = delegate()
        {
            int num3 = this.selectedChipParameter.ConvertButtonIndex();
            ChipSphereIconButton             chipSphereIconButton = this.chipSphereIconButtons[num3];
            GameWebAPI.RespDataMA_ChipM.Chip chipEnhancedData     = ChipDataMng.GetChipEnhancedData(baseMaterChip.chipId);
            chipSphereIconButton.SetupDetail(this.selectedChipParameter.userChipId, chipEnhancedData);
            chipSphereIconButton.SetupOnlyDetailParams(baseChipId, chipEnhancedData);
            this.chipSphereIconButtons[num3].OnTouch();
            this.RefreshItemCountColor();
            this.RefreshStatus();
            this.RefreshItemNumbers();
            this.RefreshYellowLines();
            CMD_ChipReinforcementAnimation cmd_ChipReinforcementAnimation = CMD_ChipReinforcementAnimation.Create(this.gameObject, chipEnhancedData, delegate(int i)
            {
                this.SetBarrier(false);
            });
            cmd_ChipReinforcementAnimation.transform.Find("ChipLv/Chip").gameObject.AddComponent <AnimationFinishEventTrigger>();
        };
        int            resultCode = 0;
        APIRequestTask task       = ChipDataMng.RequestAPIChipFusion(baseChip.userChipId, array, delegate(int res)
        {
            resultCode = res;
        });

        AppCoroutine.Start(task.Run(delegate
        {
            if (resultCode == 1)
            {
                callback();
            }
            else
            {
                this.SetBarrier(false);
                this.DispErrorModal(resultCode);
            }
            RestrictionInput.EndLoad();
        }, null, null), false);
    }