private void OnLvlUpBtnClick(GameObject go) { if (this.IsAnimationing) { return; } PetDataEx curPetDataEx = this.mBaseScene.CurPetDataEx; if (curPetDataEx != null) { if (Globals.Instance.Player.Data.Level <= curPetDataEx.Data.Level) { GameUIManager.mInstance.ShowMessageTipByKey("petTrainTxt4", 0f, 0f); return; } bool flag = true; for (int i = 0; i < 5; i++) { if (!this.mTunShiItems[i].IsItemEmpty()) { flag = false; break; } } if (flag) { GameUIManager.mInstance.ShowMessageTipByKey("petTrainTxt6", 0f, 0f); return; } this.CurNeedMoney = 0; for (int j = 0; j < 5; j++) { this.CurNeedMoney += (int)this.mTunShiItems[j].GetCurPetExpMoney(); } if (Tools.MoneyNotEnough(ECurrencyType.ECurrencyT_Money, this.CurNeedMoney, 0)) { return; } this.mBaseScene.SetOldAttrNum(); MC2S_PetLevelup mC2S_PetLevelup = new MC2S_PetLevelup(); mC2S_PetLevelup.PetID = curPetDataEx.Data.ID; for (int k = 0; k < 5; k++) { if (this.mTunShiItemDatas[k] != null && this.mTunShiItemDatas[k].Data.ID != 0uL) { mC2S_PetLevelup.Pets.Add(this.mTunShiItemDatas[k].Data.ID); } } Globals.Instance.CliSession.Send(402, mC2S_PetLevelup); } }
private void HandlePetLevelupCmd(CommandParser.Command param) { int num = 0; int.TryParse(param.GetParam(1), out num); long itemID = 0L; long.TryParse(param.GetParam(2), out itemID); int count = 0; int.TryParse(param.GetParam(3), out count); long num2 = 0L; long.TryParse(param.GetParam(4), out num2); int num3 = 0; int.TryParse(param.GetParam(5), out num3); MC2S_PetLevelup mC2S_PetLevelup = new MC2S_PetLevelup(); SocketDataEx socket = Globals.Instance.Player.TeamSystem.GetSocket(num); if (socket == null) { global::Debug.LogFormat("pet is empty, slot = {0}", new object[] { num }); } PetDataEx pet = socket.GetPet(); if (pet != null) { mC2S_PetLevelup.PetID = pet.Data.ID; ItemUpdate itemUpdate = new ItemUpdate(); itemUpdate.ItemID = (ulong)itemID; itemUpdate.Count = count; Globals.Instance.CliSession.Send(402, mC2S_PetLevelup); } }
public void OnLvlUp5BtnClick(GameObject go) { if (this.IsAnimationing) { return; } PetDataEx curPetDataEx = this.mBaseScene.CurPetDataEx; LopetDataEx curLopetDataEx = this.mBaseScene.CurLopetDataEx; if (curPetDataEx != null) { if (Globals.Instance.Player.Data.Level <= curPetDataEx.Data.Level) { Globals.Instance.EffectSoundMgr.Play("ui/ui_001"); GameUIManager.mInstance.ShowMessageTipByKey("petTrainTxt4", 0f, 0f); return; } if (Tools.MoneyNotEnough(ECurrencyType.ECurrencyT_Money, this.CurNeedMoney, 0)) { return; } this.SetItemIsUse(); for (int i = 0; i < this.mItemNum; i++) { this.mHasItem[i] = !this.mLvlupItems[i].IsItemEmpty(); } long num = 0L; int num2 = (int)(curPetDataEx.GetMaxExp() - curPetDataEx.Data.Exp); for (int j = 0; j < this.mItemNum; j++) { num += this.mLvlupItems[j].GetTotalExpNum(); if (num >= (long)num2) { this.mBaseScene.SetOldAttrNum(); MC2S_PetLevelup mC2S_PetLevelup = new MC2S_PetLevelup(); mC2S_PetLevelup.PetID = curPetDataEx.Data.ID; mC2S_PetLevelup.Flag = true; Globals.Instance.CliSession.Send(402, mC2S_PetLevelup); break; } } if (num < (long)num2) { GameUIManager.mInstance.ShowMessageTipByKey("petTrainTxt5", 0f, 0f); } } else if (curLopetDataEx != null) { if ((long)GameConst.GetInt32(240) <= (long)((ulong)curLopetDataEx.Data.Level)) { Globals.Instance.EffectSoundMgr.Play("ui/ui_001"); GameUIManager.mInstance.ShowMessageTipByKey("Lopet4", 0f, 0f); return; } if (Tools.MoneyNotEnough(ECurrencyType.ECurrencyT_Money, this.CurNeedMoney, 0)) { return; } this.SetItemIsUse(); for (int k = 0; k < this.mItemNum; k++) { this.mHasItem[k] = !this.mLvlupItems[k].IsItemEmpty(); } long num3 = 0L; int num4 = (int)(curLopetDataEx.GetMaxExp() - curLopetDataEx.Data.Exp); for (int l = 0; l < this.mItemNum; l++) { num3 += this.mLvlupItems[l].GetTotalExpNum(); if (num3 >= (long)num4) { this.mBaseScene.SetOldAttrNum(); MC2S_LopetLevelup mC2S_LopetLevelup = new MC2S_LopetLevelup(); mC2S_LopetLevelup.LopetID = curLopetDataEx.Data.ID; mC2S_LopetLevelup.Level = 5; Globals.Instance.CliSession.Send(1062, mC2S_LopetLevelup); break; } } if (num3 < (long)num4) { GameUIManager.mInstance.ShowMessageTipByKey("Lopet5", 0f, 0f); } } }