少年修仙传客户端代码仓库
Client_PangDeRong
2018-11-02 4d13d089c1dd262499502263c8c627fd19047678
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,18 @@
                    }
                }
            }
        }
        private bool CheckIsAutoEquip(ItemModel itemModel)
        {
            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)