From bae136ea1c672982dea5a48d46ebfe1a70b64346 Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期五, 02 十一月 2018 13:48:31 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts

---
 System/BetterItemGet/BetterEquipGetModel.cs |   41 +++++++++++++++++++++++++++++++++++++++--
 1 files changed, 39 insertions(+), 2 deletions(-)

diff --git a/System/BetterItemGet/BetterEquipGetModel.cs b/System/BetterItemGet/BetterEquipGetModel.cs
index fe95c7d..383a201 100644
--- a/System/BetterItemGet/BetterEquipGetModel.cs
+++ b/System/BetterItemGet/BetterEquipGetModel.cs
@@ -27,6 +27,8 @@
             modelInterface.RefreshGetBetterEquipEvent += OnGetBetterEquip;
             playerPack.RefreshPackAct += OnPackageRefresh;
             playerPack.RefreshItemCountAct += OnPackageItemRefresh;
+            KnapsackTimeCDMgr.Instance.RefresCoolTimeAct += UpdateCoolTime;
+            ParseConfig();
         }
 
         public override void UnInit()
@@ -34,6 +36,7 @@
             modelInterface.RefreshGetBetterEquipEvent -= OnGetBetterEquip;
             playerPack.RefreshPackAct -= OnPackageRefresh;
             playerPack.RefreshItemCountAct -= OnPackageItemRefresh;
+            KnapsackTimeCDMgr.Instance.RefresCoolTimeAct -= UpdateCoolTime;
         }
 
         public void OnBeforePlayerDataInitialize()
@@ -57,6 +60,22 @@
 
         }
         #endregion
+
+        private void UpdateCoolTime(string guid)
+        {
+            ItemModel _equip = null;
+            if (TryGetBetterEquip(guid,out _equip))
+            {
+                var coolData = KnapsackTimeCDMgr.Instance.GetItemCoolById(guid);
+                bool isCoolEnd = coolData == null || coolData.GetRemainTime() <= 0 ? true : false;
+                if(isCoolEnd)
+                {
+                    PackSendQuestMgr.Instance.SendPutOnQuest(ItemWinBtnType.putOn,guid);
+                    ReportConfirmBetterEquip(guid);
+                }
+            }
+        }
+
         public bool TryGetBetterEquip(string _guid, out ItemModel _equip)
         {
             return betterEquipModels.TryGetValue(_guid, out _equip);
@@ -147,9 +166,10 @@
                         {
                             showEquipRefreshEvent();
                         }
-                        if(betterModel.chinItemModel.ItemColor < 3)
+
+                        if(CheckIsAutoEquip(betterModel))
                         {
-                          
+                            KnapsackTimeCDMgr.Instance.Register(betterModel.itemInfo.ItemGUID, betterModel.itemId, autoEquipCoolTime);
                         }
                     }
                 }
@@ -162,8 +182,20 @@
                     }
                 }
             }
+        }
 
+        private bool CheckIsAutoEquip(ItemModel itemModel)
+        {
+            if (itemModel == null) return false;
 
+            int playerLv = PlayerDatas.Instance.baseData.LV;
+            if (playerLv > autoEquipLvLimit) return false;
+
+            if (itemModel.chinItemModel.ItemColor < 3)
+            {
+                return true;
+            }
+            return false;
         }
 
         IEnumerator Co_DelayRefreshBetterEquip(string _guid)
@@ -174,6 +206,11 @@
             {
                 showEquipRefreshEvent();
             }
+            var betterModel = playerPack.GetItemModelByGUID(_guid);
+            if (CheckIsAutoEquip(betterModel))
+            {
+                KnapsackTimeCDMgr.Instance.Register(betterModel.itemInfo.ItemGUID, betterModel.itemId, autoEquipCoolTime);
+            }
         }
 
         private void OnPackageRefresh(PackType _packType)

--
Gitblit v1.8.0