コード例 #1
0
 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);
     }
 }
コード例 #2
0
ファイル: CommandParser.cs プロジェクト: floatyears/Decrypt
 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);
     }
 }
コード例 #3
0
 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);
         }
     }
 }