From b244eb8549529ddfdf966ac869617ce3d29bee70 Mon Sep 17 00:00:00 2001
From: Client_PangDeRong <593317293@qq.com>
Date: 星期四, 24 一月 2019 10:43:33 +0800
Subject: [PATCH] 5930 子 【开发】【1.5.100】诛仙装备开发 / 【前端】【1.5.100】诛仙装备开发

---
 System/JadeDynastyKnapSack/JadeDynastyItemBeh.cs          |    2 
 System/KnapSack/Logic/PackSendQuestMgr.cs                 |   29 +++---
 System/KnapSack/Logic/PackModelInterface.cs               |   15 ++-
 System/KnapSack/Logic/ItemTipsModel.cs                    |  118 +++++++++++++++++++++++++++++
 System/JadeDynastyKnapSack/JadeDynastyEquipGetPathsWin.cs |    9 +-
 System/JadeDynastyKnapSack/JadeDynastyEquipBeh.cs         |    9 +
 6 files changed, 155 insertions(+), 27 deletions(-)

diff --git a/System/JadeDynastyKnapSack/JadeDynastyEquipBeh.cs b/System/JadeDynastyKnapSack/JadeDynastyEquipBeh.cs
index cc13df4..6dfefe8 100644
--- a/System/JadeDynastyKnapSack/JadeDynastyEquipBeh.cs
+++ b/System/JadeDynastyKnapSack/JadeDynastyEquipBeh.cs
@@ -33,9 +33,9 @@
         public void SetDisplay()
         {
             bool islock = equipModel.IsLockEquipPlace((int)equipType);
+            nameText.gameObject.SetActive(true);
             nameText.text = Language.Get(equipType.ToString());
             lockText.gameObject.SetActive(false);
-            nameText.gameObject.SetActive(false);
             lockObj.SetActive(islock);
             equipBtn.RemoveAllListeners();
             itemCell.cellBtn.RemoveAllListeners();
@@ -50,8 +50,13 @@
                 itemCell.gameObject.SetActive(itemModel != null);
                 if (itemModel != null)
                 {
+                    nameText.gameObject.SetActive(false);
                     itemCell.Init(itemModel);
                     itemCell.cellBtn.AddListener(() => { ClickItemCell(itemModel); });
+                }
+                else
+                {
+                    equipBtn.AddListener(ClickEquipBtn);
                 }
             }
         }
@@ -85,7 +90,7 @@
             if (item == null) return;
 
             tipsModel.SetItemTipsModel(item.packType,item.itemInfo.ItemGUID,false);
-            tipsModel.SetPutOnTipsBtn(tipsModel.curAttrData);
+            tipsModel.SetJadeDynastyPutOnTipsBtn(tipsModel.curAttrData);
             tipsModel.ShowUICtrl();
         }
     }
diff --git a/System/JadeDynastyKnapSack/JadeDynastyEquipGetPathsWin.cs b/System/JadeDynastyKnapSack/JadeDynastyEquipGetPathsWin.cs
index 8ce2a5d..dda551b 100644
--- a/System/JadeDynastyKnapSack/JadeDynastyEquipGetPathsWin.cs
+++ b/System/JadeDynastyKnapSack/JadeDynastyEquipGetPathsWin.cs
@@ -74,10 +74,11 @@
 
         private void UpdatePath()
         {
-            int towerLayer = 0;
-            bool isLock = equipModel.TryGetLockTowerLayer(equipModel.targetEquipPlace,out towerLayer);
+            bool isLock = equipModel.IsLockEquipPlace(equipModel.targetEquipPlace);
             if(isLock)
             {
+                int towerLayer = 0;
+                equipModel.TryGetLockTowerLayer(equipModel.targetEquipPlace,out towerLayer);
                 for (int i = 0; i < paths.Count; i++)
                 {
                     var path = paths[i];
@@ -134,8 +135,8 @@
                     pathText.text = pathConfig.name;
                     pathBtn.AddListener(()=>
                     {
-                        WindowJumpMgr.Instance.WindowJumpTo((JumpUIType)pathConfig.OpenpanelId);
                         WindowCenter.Instance.CloseImmediately<JadeDynastyEquipGetPathsWin>();
+                        WindowJumpMgr.Instance.WindowJumpTo((JumpUIType)pathConfig.OpenpanelId);
                     });
                 }
                 else
@@ -143,8 +144,8 @@
                     pathText.text = Language.Get("JadeDynastyEquip2",towerLayer);
                     pathBtn.AddListener(() =>
                     {
-                        WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.JadeDynastyTower288);
                         WindowCenter.Instance.CloseImmediately<JadeDynastyEquipGetPathsWin>();
+                        WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.JadeDynastyTower288);
                     });
                 }
             }
diff --git a/System/JadeDynastyKnapSack/JadeDynastyItemBeh.cs b/System/JadeDynastyKnapSack/JadeDynastyItemBeh.cs
index f793382..9b9b577 100644
--- a/System/JadeDynastyKnapSack/JadeDynastyItemBeh.cs
+++ b/System/JadeDynastyKnapSack/JadeDynastyItemBeh.cs
@@ -28,7 +28,7 @@
                 itemCell.cellBtn.AddListener(()=>
                 {
                     tipsModel.SetItemTipsModel(itemModel.packType,itemModel.itemInfo.ItemGUID,false,true);
-                    tipsModel.SetBagTipsBtn(tipsModel.curAttrData);
+                    tipsModel.SetJadeDynastyItemTipsBtn(tipsModel.curAttrData);
                     tipsModel.ShowUICtrl();
                 });
                 UpdatePlayerEffect(itemModel.itemInfo.ItemGUID);
diff --git a/System/KnapSack/Logic/ItemTipsModel.cs b/System/KnapSack/Logic/ItemTipsModel.cs
index 9825af4..75af654 100644
--- a/System/KnapSack/Logic/ItemTipsModel.cs
+++ b/System/KnapSack/Logic/ItemTipsModel.cs
@@ -1075,6 +1075,100 @@
                 }
             }
         }
+
+        public void SetJadeDynastyItemTipsBtn(ItemAttrData attrData)
+        {
+            if (attrData == null) return;
+
+            bool isOverdue = modelInterface.IsOverdue(attrData.guid, attrData.itemId, attrData.useDataDict);
+            if (attrData.itemConfig.CanSell == 1)
+            {
+                attrData.SetTipsFuncBtn(ItemWinBtnType.sell, (ItemWinBtnType, ItemAttrData) => { PackSendQuestMgr.Instance.SendSellQuest(ItemWinBtnType.sell, attrData); });
+            }
+            List<int> dismantleReturnlist = attrData.GetUseDataModel((int)ItemUseDataKey.Def_IudetItemDecompound);
+            if (dismantleReturnlist != null && dismantleReturnlist.Count > 0)
+            {
+                attrData.SetTipsFuncBtn(ItemWinBtnType.dismantle, (ItemWinBtnType, ItemAttrData) => { PackSendQuestMgr.Instance.SendDismantleQuest(ItemWinBtnType.dismantle, attrData); });
+            }
+
+            if (!isOverdue)
+            {
+                if (attrData.itemConfig.JumpComposeCondi != null && attrData.itemConfig.JumpComposeCondi.Length > 0)
+                {
+                    attrData.SetTipsFuncBtn(ItemWinBtnType.compose, (ItemWinBtnType, ItemAttrData) => {
+                        int jumpId = 0;
+                        bool isUnlock = ModelCenter.Instance.GetModel<ComposeWinModel>().CheckComposeItemById(attrData.itemId, out jumpId);
+                        if (isUnlock)
+                        {
+                            PackSendQuestMgr.Instance.ClickComposeBtn(ItemWinBtnType.compose, jumpId);
+                        }
+                    });
+                }
+
+                if (attrData.itemConfig.Type == 25 && attrData.itemConfig.Effect1 == 225)
+                {
+                    attrData.SetTipsFuncBtn(ItemWinBtnType.inlay, (ItemWinBtnType, ItemAttrData) => { PackSendQuestMgr.Instance.ClickInlayBtn(ItemWinBtnType.inlay, attrData.guid); });
+                }
+
+                if (attrData.itemConfig.CanTrade == 1 && attrData.isBind == 0)
+                {
+                    attrData.SetTipsFuncBtn(ItemWinBtnType.putAway, (ItemWinBtnType, ItemAttrData) => { PackSendQuestMgr.Instance.SendPutAwayQuest(ItemWinBtnType.putAway, attrData.guid); });
+                }
+            }
+
+            if (attrData.count > 1)
+            {
+                attrData.SetTipsFuncBtn(ItemWinBtnType.split, (ItemWinBtnType, ItemAttrData) => { PackSendQuestMgr.Instance.OnClickSplitBtn(ItemWinBtnType.split, attrData.guid); });
+            }
+
+            if (!isOverdue)
+            {
+                switch (attrData.winType)
+                {
+                    case ItemWinType.equipWin:
+                        attrData.SetTipsFuncBtn(ItemWinBtnType.putOn, (ItemWinBtnType, ItemAttrData) => { PackSendQuestMgr.Instance.SendPutOnQuest(ItemWinBtnType.putOn, attrData.guid); });
+                        break;
+                }
+
+                if (attrData.itemConfig.UseTag == 1)
+                {
+                    attrData.SetTipsFuncBtn(ItemWinBtnType.makeUse, (ItemWinBtnType, ItemAttrData) => { PackSendQuestMgr.Instance.SendUseItemQuest(ItemWinBtnType.makeUse, attrData.index); });
+                }
+            }
+
+            for (int i = 0; i < ItemRenewalIds.Length; i++)
+            {
+                if (ItemRenewalIds[i] == attrData.itemId)
+                {
+                    if (isOverdue)
+                    {
+                        attrData.SetTipsFuncBtn(ItemWinBtnType.renewal, (ItemWinBtnType, ItemAttrData) => { PackSendQuestMgr.Instance.SendRenewalQuest(ItemWinBtnType.renewal, attrData.guid); });
+                    }
+                }
+            }
+
+            for (int i = 0; i < tryPutOnEquipIds.Length; i++)
+            {
+                if (tryPutOnEquipIds[i] == attrData.itemId)
+                {
+                    if (PlayerDatas.Instance.baseData.coinPointTotal <= 0)
+                    {
+                        attrData.SetTipsFuncBtn(ItemWinBtnType.renewal, (ItemWinBtnType, ItemAttrData) => { WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.FirstRecharge); });
+                    }
+                }
+            }
+        }
+
+        public void SetJadeDynastyPutOnTipsBtn(ItemAttrData attrData)
+        {
+            if (attrData == null) return;
+
+            RoleEquipType equipType = (RoleEquipType)attrData.itemConfig.EquipPlace;
+
+            attrData.SetTipsFuncBtn(ItemWinBtnType.putOff, (ItemWinBtnType, ItemAttrData) => {
+                PackSendQuestMgr.Instance.SendPutOffQuest(ItemWinBtnType.putOff, attrData.guid);
+            });
+        }
         #endregion
 
         #region 璁剧疆鑾峰彇閫斿緞鍒楄〃
@@ -1480,6 +1574,18 @@
                 case 9:
                 case 10:
                 case 12:
+                case 121:
+                case 122:
+                case 123:
+                case 124:
+                case 125:
+                case 126:
+                case 127:
+                case 128:
+                case 129:
+                case 130:
+                case 131:
+                case 132:
                     idlist.Sort(CompareLegendAttrType);
                     break;
                 case 101:
@@ -1634,6 +1740,18 @@
                         case 9:
                         case 10:
                         case 12:
+                        case 121:
+                        case 122:
+                        case 123:
+                        case 124:
+                        case 125:
+                        case 126:
+                        case 127:
+                        case 128:
+                        case 129:
+                        case 130:
+                        case 131:
+                        case 132:
                             s = GetTextColorByLegendType(GetLegendType(idlist[i]), s);
                             break;
                         case 101:
diff --git a/System/KnapSack/Logic/PackModelInterface.cs b/System/KnapSack/Logic/PackModelInterface.cs
index f326a79..8bab37a 100644
--- a/System/KnapSack/Logic/PackModelInterface.cs
+++ b/System/KnapSack/Logic/PackModelInterface.cs
@@ -463,13 +463,16 @@
                     Equation.Instance.AddKeyValue("AtkSpeedC", 0);
                 }
                 DebugEx.Log("璇勫垎锛�" + Equation.Instance.Eval<double>(_equipGSFormula.Numerical1));
-                if (type == PackType.rptDogzEquip || type == PackType.rptDogzItem)
+                switch(type)
                 {
-                    return Equation.Instance.Eval<int>(_equipGSFormula.Numerical3);
-                }
-                else
-                {
-                    return Equation.Instance.Eval<int>(_equipGSFormula.Numerical1);
+                    case PackType.rptDogzEquip:
+                    case PackType.rptDogzItem:
+                         return Equation.Instance.Eval<int>(_equipGSFormula.Numerical3);
+                    case PackType.rptJadeDynastyItem:
+                    case PackType.rptJadeDynastyEquip:
+                        return Equation.Instance.Eval<int>(_equipGSFormula.Numerical4);
+                    default:
+                        return Equation.Instance.Eval<int>(_equipGSFormula.Numerical1);
                 }
             }
             return 0;
diff --git a/System/KnapSack/Logic/PackSendQuestMgr.cs b/System/KnapSack/Logic/PackSendQuestMgr.cs
index 0f50df8..7a2e804 100644
--- a/System/KnapSack/Logic/PackSendQuestMgr.cs
+++ b/System/KnapSack/Logic/PackSendQuestMgr.cs
@@ -166,20 +166,6 @@
                 }
             }
 
-            if(config.EquipPlace >= (int)RoleEquipType.JadeDynasty_Cloak
-                && config.EquipPlace <= (int)RoleEquipType.JadeDynasty_Sword4)
-            {
-                var jadeDynastyModel = ModelCenter.Instance.GetModel<JadeDynastyEquipModel>();
-                bool islock = jadeDynastyModel.IsLockEquipPlace(config.EquipPlace);
-                isCanPut = !islock;
-                if(islock)
-                {
-                    int towerlayer = 0;
-                    jadeDynastyModel.TryGetLockTowerLayer(config.EquipPlace,out towerlayer);
-                    SysNotifyMgr.Instance.ShowTip("JadeDynastyEquip",towerlayer);
-                }
-            }
-
             if(isCanPut)
             {
                 CheckPutOnPlace();
@@ -570,6 +556,21 @@
                 return;
             }
 
+            if (sendItemModel.chinItemModel.EquipPlace >= (int)RoleEquipType.JadeDynasty_Cloak
+              && sendItemModel.chinItemModel.EquipPlace <= (int)RoleEquipType.JadeDynasty_Sword4)
+            {
+                var jadeDynastyModel = ModelCenter.Instance.GetModel<JadeDynastyEquipModel>();
+                bool islock = jadeDynastyModel.IsLockEquipPlace(sendItemModel.chinItemModel.EquipPlace);
+                if (islock)
+                {
+                    int towerlayer = 0;
+                    jadeDynastyModel.TryGetLockTowerLayer(sendItemModel.chinItemModel.EquipPlace, out towerlayer);
+                    SysNotifyMgr.Instance.ShowTip("JadeDynastyEquip", towerlayer);
+                    return;
+                }
+            }
+
+
             if (sendItemModel != null && sendItemModel.itemInfo.IsBind == 0)
             {
                 ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("JadeDynastyEquip5"),(bool isOk)=>

--
Gitblit v1.8.0