From dcbbe82ceca921e73e1789ae87ea8ac6a59c7bff Mon Sep 17 00:00:00 2001 From: wangguan <wangguan@kt007.com> Date: Thu, 17 Dec 2020 15:54:41 +0800 Subject: [PATCH] 增加技能特效 --- Assets/Scripts/TowerDefense/UI/EndlessTowerGridOpen.cs | 39 +++++++++++++++++++++++++++++++++++++++ 1 files changed, 39 insertions(+), 0 deletions(-) diff --git a/Assets/Scripts/TowerDefense/UI/EndlessTowerGridOpen.cs b/Assets/Scripts/TowerDefense/UI/EndlessTowerGridOpen.cs index b93333c..5ff5507 100644 --- a/Assets/Scripts/TowerDefense/UI/EndlessTowerGridOpen.cs +++ b/Assets/Scripts/TowerDefense/UI/EndlessTowerGridOpen.cs @@ -5,6 +5,7 @@ using TowerDefense.Towers.Placement; using UnityEngine; using UnityEngine.UI; +using DG.Tweening; /// <summary> /// 当前类用于开启新的TowerPlacementGrid,用于无尽模式。当前类附加在对应的购买开启按钮上。 @@ -40,6 +41,41 @@ bWaitOpen = false; } + /// <summary> + /// Subscribe to the level manager + /// </summary> + protected virtual void OnEnable() + { + if (EndlessLevelManager.instanceExists) + EndlessLevelManager.instance.Currency.currencyChanged += OnCurrencyChanged; + } + + /// <summary> + /// Unsubscribe from the level manager + /// </summary> + protected virtual void OnDisable() + { + if (EndlessLevelManager.instanceExists) + EndlessLevelManager.instance.Currency.currencyChanged -= OnCurrencyChanged; + } + + private void OnCurrencyChanged() + { + CheckCurrencyEnough(); + } + + public void CheckCurrencyEnough() + { + int result; + int.TryParse(cashText.text.ToString(), out result); + int current = EndlessLevelManager.instance.Currency.currentCurrency; + + if (current >= result) + cashText.color = new Color(1f, 1f, 1f); + else + cashText.color = new Color(0.5f, 0.5f, 0.5f); + } + public void SetBuyBtnInfo(int x, int y, TowerPlacementGridEndless tpg) { gridX = x; @@ -72,6 +108,9 @@ if (EndlessLevelManager.instance.Currency.currentCurrency < cashToOpen) { AudioSourceManager.Ins.Play(AudioEnum.UIDisable); + cashText.color = new Color(218f / 255f, 32f / 255f, 32f / 255f); + DOTween.To(() => cashText.color, (Color v) => cashText.color = v, cashText.color, 0.2f) + .OnComplete(CheckCurrencyEnough); return; } -- Gitblit v1.9.1