From 814ba3ba871e5553bc00e36619b892a88e691090 Mon Sep 17 00:00:00 2001
From: Client_PangDeRong <593317293@qq.com>
Date: 星期六, 18 八月 2018 18:01:16 +0800
Subject: [PATCH] [1885]添加神兽部分功能

---
 System/Dogz/DogzPackWin.cs |   35 +++++++++++++++++++++++++++++++++--
 1 files changed, 33 insertions(+), 2 deletions(-)

diff --git a/System/Dogz/DogzPackWin.cs b/System/Dogz/DogzPackWin.cs
index 7199366..af1316d 100644
--- a/System/Dogz/DogzPackWin.cs
+++ b/System/Dogz/DogzPackWin.cs
@@ -34,7 +34,7 @@
                 return m_DogzModel ?? (m_DogzModel = ModelCenter.Instance.GetModel<DogzModel>());
             }
         }
-
+        PlayerPackModel playerPack { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } }
         DogzPackModel m_Model;
         DogzPackModel model
         {
@@ -58,6 +58,14 @@
 
         protected override void OnPreOpen()
         {
+            dogzModel.RefreshDogzEquipAct += RefreshDogzEquipEvent;
+            playerPack.RefreshItemCountAct += RefreshDogzItemEvent;
+            qualitySort.onSelectSortEvent += RefreshDogzSelectEvent;
+            starSort.onSelectSortEvent += RefreshDogzSelectEvent;
+            dogzModel.SelectDogzItemQuality = 0;
+            dogzModel.SelectDogzItemStart = 0;
+            starSort.SetDefault();
+            qualitySort.SetDefault();
             UpdateDogzEquip();
             UpdateDogzPack();
             starSort.gameObject.SetActive(false);
@@ -70,12 +78,22 @@
 
         protected override void OnPreClose()
         {
+            dogzModel.RefreshDogzEquipAct -= RefreshDogzEquipEvent;
+            playerPack.RefreshItemCountAct -= RefreshDogzItemEvent;
+            qualitySort.onSelectSortEvent -= RefreshDogzSelectEvent;
+            starSort.onSelectSortEvent -= RefreshDogzSelectEvent;
         }
 
         protected override void OnAfterClose()
         {
         }
         #endregion
+
+        private void RefreshDogzEquipEvent(int dogzId)
+        {
+            if (dogzId != dogzModel.presentSelectDogz) return;
+            UpdateDogzEquip();
+        }
 
         private void UpdateDogzEquip()
         {
@@ -102,12 +120,25 @@
             }
         }
 
+
+        private void RefreshDogzSelectEvent(int type)
+        {
+            m_PackController.m_Scorller.RefreshActiveCellViews();
+        }
+
+        private void RefreshDogzItemEvent(PackType type, int index, int id)
+        {
+            if (type != PackType.rptDogzItem || !dogzModel.IsReachSelectCondi(id)) return;
+
+            m_PackController.m_Scorller.RefreshActiveCellViews();
+        }
+
         private void UpdateDogzPack()
         {
             if (m_PackController.GetNumberOfCells(m_PackController.m_Scorller) == 0)
             {
                 m_PackController.Refresh();
-                var _line = model.DogzPackGridCnt / 4;
+                var _line = dogzModel.DogzPackGridCnt / 4;
                 for (int i = 0; i < _line; i++)
                 {
                     m_PackController.AddCell(ScrollerDataType.Header, i);

--
Gitblit v1.8.0