From 6e362334cc9cab27a97da00a36765a4b3912d2ab Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期六, 24 十一月 2018 09:58:31 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts

---
 System/Treasure/DemonTreasureWin.cs |   42 ++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 40 insertions(+), 2 deletions(-)

diff --git a/System/Treasure/DemonTreasureWin.cs b/System/Treasure/DemonTreasureWin.cs
index 23615dc..714bf6a 100644
--- a/System/Treasure/DemonTreasureWin.cs
+++ b/System/Treasure/DemonTreasureWin.cs
@@ -59,6 +59,8 @@
 
         public static float expand = 1.05f;
 
+        bool treasureTweening = false;
+
         AnimationStep m_Step = AnimationStep.None;
         AnimationStep step
         {
@@ -72,6 +74,8 @@
                 }
             }
         }
+
+        float timer = 0f;
         #region Built-in
         protected override void BindController()
         {
@@ -87,6 +91,7 @@
         {
             expand = m_Expand;
             m_Step = AnimationStep.None;
+            treasureTweening = false;
         }
 
         protected override void OnActived()
@@ -95,6 +100,7 @@
             model.treasureSelectedEvent += TreasureSelectedEvent;
             model.treasureStateChangeEvent += TreasureStateChangeEvent;
             model.demonTreasureDungeonUpdate += DemonTreasureDungeonUpdate;
+            TreasureBaseWin.allowSelectTreasure += AllowSelectTreasure;
             Display();
 
             Treasure treasure;
@@ -123,13 +129,35 @@
             model.treasureSelectedEvent -= TreasureSelectedEvent;
             model.treasureStateChangeEvent -= TreasureStateChangeEvent;
             model.demonTreasureDungeonUpdate -= DemonTreasureDungeonUpdate;
+            TreasureBaseWin.allowSelectTreasure -= AllowSelectTreasure;
             model.SetTreasureUnlockShow(TreasureCategory.Demon, 0);
+            treasureTweening = false;
         }
 
         protected override void OnAfterClose()
         {
         }
         #endregion
+
+        protected override void LateUpdate()
+        {
+            base.LateUpdate();
+            timer += Time.deltaTime;
+            if (timer > 1f)
+            {
+                timer = 0f;
+                treasureTweening = false;
+            }
+        }
+
+        private bool AllowSelectTreasure(int treasureId)
+        {
+            if (NewBieCenter.Instance.inGuiding || treasureTweening)
+            {
+                return false;
+            }
+            return true;
+        }
 
         private void ViewProperty()
         {
@@ -200,7 +228,12 @@
                 case AnimationStep.None2Collect:
                     m_ContainerDungeons.gameObject.SetActive(true);
                     m_DungeonAlphaTween.Play();
-                    UI3DTreasureSelectStage.Instance.Tween(null);
+                    treasureTweening = true;
+                    timer = 0f;
+                    UI3DTreasureSelectStage.Instance.Tween(()=> 
+                    {
+                        treasureTweening = false;
+                    });
                     m_DescriptionTween.SetStartState();
                     m_NameTween.SetStartState();
                     m_SkillTween.SetStartState();
@@ -209,7 +242,12 @@
                 case AnimationStep.Lock2Collect:
                     m_ContainerDungeons.gameObject.SetActive(true);
                     m_DungeonAlphaTween.Play();
-                    UI3DTreasureSelectStage.Instance.Tween(null);
+                    treasureTweening = true;
+                    timer = 0f;
+                    UI3DTreasureSelectStage.Instance.Tween(() =>
+                    {
+                        treasureTweening = false;
+                    });
                     m_DescriptionTween.Play(true);
                     m_NameTween.Play(true);
                     m_SkillTween.Play(true);

--
Gitblit v1.8.0