From f4f07847775c12b338d8bccedbbabc067dc1ae2c Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期六, 18 八月 2018 14:34:26 +0800
Subject: [PATCH] Merge branch '法宝、法宝魂修改'

---
 System/Treasure/TreasureMeridianBehaviour.cs |   74 +++++++++++++------------------------
 1 files changed, 26 insertions(+), 48 deletions(-)

diff --git a/System/Treasure/TreasureMeridianBehaviour.cs b/System/Treasure/TreasureMeridianBehaviour.cs
index bf82b31..e6db53b 100644
--- a/System/Treasure/TreasureMeridianBehaviour.cs
+++ b/System/Treasure/TreasureMeridianBehaviour.cs
@@ -84,21 +84,18 @@
             {
                 m_TreasureLevelUpWin.OnLineStepComplete -= OnLineStepComplete;
             }
-            FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
         }
 
         private void OnStageClick()
         {
-            if (m_TreasureStage != null
-                && m_TreasureStage.unlockType != TreasureStageUnlock.Property)
+            if (m_TreasureStage != null&&  m_TreasureStage.unlockType != TreasureStageUnlock.Property)
             {
-                if (m_TreasureStage.unlockType == TreasureStageUnlock.Privilege)
+                if (m_TreasureStage.unlockType == TreasureStageUnlock.Item)
                 {
-                    if (!FuncOpen.Instance.IsFuncOpen(126))
-                    {
-                        FuncOpen.Instance.ProcessorFuncErrorTip(126);
-                        return;
-                    }
+                    var item = m_TreasureStage.item;
+                    ItemAttrData itemAttrData = new ItemAttrData(item.id, true, (ulong)item.count, -1, item.bind ? 1 : 0);
+                    ModelCenter.Instance.GetModel<ItemTipsModel>().SetItemTipsModel(itemAttrData);
+                    return;
                 }
                 model.selectedStage = m_TreasureStage.stage;
                 if (!WindowCenter.Instance.CheckOpen<TreasureStageTipWin>())
@@ -120,8 +117,6 @@
             m_TreasureLevelUpWin = _win;
             m_TreasureLevelUpWin.OnLineStepComplete -= OnLineStepComplete;
             m_TreasureLevelUpWin.OnLineStepComplete += OnLineStepComplete;
-            FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
-            FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
             stageIndex = _stageIndex;
             if (model.TryGetTreasure(model.selectedTreasure, out m_Treasure))
             {
@@ -158,6 +153,7 @@
                                 m_Icon.SetSprite(GeneralConfig.Instance.propertyIconDict[_key]);
                             }
                         }
+                        m_Icon.SetNativeSize();
                         break;
                     case TreasureStageUnlock.Skill:
                         var _skillId = m_TreasureStage.GetSkill(PlayerDatas.Instance.baseData.Job);
@@ -166,6 +162,7 @@
                         m_Descs[0].color = m_Treasure.id == 104 ? UIHelper.GetUIColor(TextColType.NavyYellow) : UIHelper.s_LightYellow;
                         m_Descs[0].gameObject.SetActive(true);
                         m_Icon.SetSprite(_skillCfg.IconName);
+                        m_Icon.SetNativeSize();
                         break;
                     case TreasureStageUnlock.Func:
                         var _funcCfg = ConfigManager.Instance.GetTemplate<FuncOpenLVConfig>(m_TreasureStage.func);
@@ -173,47 +170,24 @@
                         m_Descs[0].color = UIHelper.s_LightYellow;
                         m_Descs[0].gameObject.SetActive(true);
                         m_Icon.SetSprite(_funcCfg.Icon);
+                        m_Icon.SetNativeSize();
                         break;
-                    case TreasureStageUnlock.Privilege:
+                    case TreasureStageUnlock.Item:
                         m_Descs[0].gameObject.SetActive(true);
                         m_Descs[0].color = UIHelper.s_LightYellow;
-                        var _privilegeCfg = ConfigManager.Instance.GetTemplate<TreasurePrivilegeConfig>(m_TreasureStage.privilege);
-                        if (FuncOpen.Instance.IsFuncOpen(126))
-                        {
-                            m_Icon.SetSprite(_privilegeCfg.Icon);
-                            m_Descs[0].text = _privilegeCfg.Name;
-                        }
-                        else
-                        {
-                            m_Icon.SetSprite("UnKnowIcon");
-                            m_Descs[0].text = string.Empty;
-                        }
+                        var itemConfig = ConfigManager.Instance.GetTemplate<ItemConfig>(m_TreasureStage.item.id);
+                        m_Icon.SetSprite(itemConfig.IconKey);
+                        m_Descs[0].text = itemConfig.ItemName;
+                        m_Icon.SetNativeSize();
                         break;
-                }
-                m_Icon.SetNativeSize();
-            }
-        }
-
-        private void OnFuncStateChangeEvent(int _id)
-        {
-            if (_id != 126)
-            {
-                return;
-            }
-            if (m_TreasureStage != null && m_TreasureStage.unlockType == TreasureStageUnlock.Privilege)
-            {
-                var _privilegeCfg = ConfigManager.Instance.GetTemplate<TreasurePrivilegeConfig>(m_TreasureStage.privilege);
-                if (FuncOpen.Instance.IsFuncOpen(126))
-                {
-                    m_Icon.SetSprite(_privilegeCfg.Icon);
-                    m_Icon.SetNativeSize();
-                    m_Descs[0].text = _privilegeCfg.Name;
-                }
-                else
-                {
-                    m_Icon.SetSprite("UnKnowIcon");
-                    m_Icon.SetNativeSize();
-                    m_Descs[0].text = string.Empty;
+                    case TreasureStageUnlock.Treasure:
+                        m_Descs[0].gameObject.SetActive(true);
+                        m_Descs[0].color = UIHelper.s_LightYellow;
+                        var treasureConfig = ConfigManager.Instance.GetTemplate<TreasureConfig>(m_TreasureStage.treasure);
+                        m_Icon.SetSprite(treasureConfig.Icon);
+                        m_Descs[0].text = treasureConfig.Name;
+                        m_Icon.rectTransform.sizeDelta = new Vector2(86, 86);
+                        break;
                 }
             }
         }
@@ -325,6 +299,10 @@
 
         public void RequestSfx()
         {
+            if (m_Treasure == null)
+            {
+                return;
+            }
             var _stage = model.GetTreasureStageShow(m_Treasure.id);
             PlayLineSfx(m_Treasure.stage < m_TreasureStage.stage || _stage == m_TreasureStage.stage ? 4 : 2);
             RequestStateSfx();

--
Gitblit v1.8.0