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); }
public static CMD_ChipReinforcementAnimation Create(GameObject parent, GameWebAPI.RespDataMA_ChipM.Chip data, Action <int> callback = null) { CMD_ChipReinforcementAnimation cmd_ChipReinforcementAnimation = GUIMain.ShowCommonDialog(callback, "CMD_Chip_LvUP", null) as CMD_ChipReinforcementAnimation; cmd_ChipReinforcementAnimation.SetParam(data); return(cmd_ChipReinforcementAnimation); }
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); }