From 045b294b18d7e77a4bc5ea223f7744fd58f3e467 Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期四, 23 八月 2018 18:23:19 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts

---
 System/HappyXB/HappyXBModel.cs |   78 +++++++++++++++++++++++++++++++++++++++
 1 files changed, 78 insertions(+), 0 deletions(-)

diff --git a/System/HappyXB/HappyXBModel.cs b/System/HappyXB/HappyXBModel.cs
index 194da3b..dc4fbab 100644
--- a/System/HappyXB/HappyXBModel.cs
+++ b/System/HappyXB/HappyXBModel.cs
@@ -477,6 +477,7 @@
         /// </summary>
         /// <param name="type"></param>
         /// <param name="index"></param>
+        public event Action<int> StartXBEvent;
         public void SendXBQuest(int type,int index,int costType)
         {
             isXBCoolTime = true;
@@ -485,6 +486,10 @@
             treasure.TreasureIndex = (byte)index;
             treasure.CostType = (byte)costType;
             GameNetSystem.Instance.SendInfo(treasure);
+            if(StartXBEvent != null)
+            {
+                StartXBEvent(index);
+            }
         }
 
         public void SendPutOutXBItem(PackType curType,PackType targetType,int index,int isAll)
@@ -520,6 +525,79 @@
             }
             return true;
         }
+
+        public void SendOneXBQuest(PackType type,int xbType)
+        {
+            var funcSet = GetXBFuncSet(xbType);
+            if (CheckIsEmptyGrid(type))
+            {
+                if (IsHaveOneXBTool(xbType))
+                {
+                    SendXBQuest(xbType, 0, 2);
+                }
+                else
+                {
+                    int xbOneMoney = funcSet.xbPrices[0];
+                    if (UIHelper.GetMoneyCnt(1) >= (ulong)xbOneMoney)
+                    {
+                        SendXBQuest(xbType, 0, 0);
+                    }
+                    else
+                    {
+                        WindowCenter.Instance.Open<RechargeTipWin>();
+                    }
+                }
+            }
+        }
+
+        public void SendXBManyQuest(PackType type, int xbType)
+        {
+            var funcSet = GetXBFuncSet(xbType);
+            if (CheckIsEmptyGrid(type))
+            {
+                int toolCnt = 0;
+                int needToolCnt = 0;
+                if (IsHaveManyXBTool(xbType, out toolCnt, out needToolCnt))
+                {
+                    needToolCnt = needToolCnt - toolCnt;
+                    int needMoney = needToolCnt * funcSet.xbPrices[0];
+                    if (needMoney > 0)
+                    {
+                        ItemConfig itemConfig = Config.Instance.Get<ItemConfig>(funcSet.costToolIds[1]);
+                        ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("HappyXBCostTools", funcSet.costToolNums[1], itemConfig.ItemName, needMoney, needToolCnt), (bool isOk) =>
+                        {
+                            if (isOk)
+                            {
+                                CheckXBManyLimit(needMoney, xbType);
+                            }
+                            return;
+                        });
+                    }
+                    else
+                    {
+                        CheckXBManyLimit(0, xbType);
+                    }
+
+                }
+                else
+                {
+                    CheckXBManyLimit(funcSet.xbPrices[1],xbType);
+                }
+
+            }
+        }
+
+        public void CheckXBManyLimit(int needMoney,int xbtype)
+        {
+            if (UIHelper.GetMoneyCnt(1) >= (ulong)needMoney)
+            {
+                SendXBQuest(xbtype, 1, 2);
+            }
+            else
+            {
+                WindowCenter.Instance.Open<RechargeTipWin>();
+            }
+        }
         #endregion
 
         public bool IsHaveFreeXB(int type)

--
Gitblit v1.8.0