From 7f9f5fa4440c237c7116ad0ada6b72d0e7cc8781 Mon Sep 17 00:00:00 2001 From: wangguan <wangguan@kt007.com> Date: Thu, 03 Dec 2020 10:22:46 +0800 Subject: [PATCH] Merge branch 'master' of http://172.16.1.52:8090/r/GemBattle --- Assets/Scripts/TowerDefense/UI/TextMoveDoTween.cs | 74 ++++++++++++++++++------------------ 1 files changed, 37 insertions(+), 37 deletions(-) diff --git a/Assets/Scripts/TowerDefense/UI/TextMoveDoTween.cs b/Assets/Scripts/TowerDefense/UI/TextMoveDoTween.cs index 380573b..ea38f0b 100644 --- a/Assets/Scripts/TowerDefense/UI/TextMoveDoTween.cs +++ b/Assets/Scripts/TowerDefense/UI/TextMoveDoTween.cs @@ -1,6 +1,5 @@ using Core.Utilities; using DG.Tweening; -using System; using TMPro; using UnityEngine; using UnityEngine.UI; @@ -13,17 +12,6 @@ public Image CritWord; - // Start is called before the first frame update - void Start() - { - - } - - // Update is called once per frame - void Update() - { - } - private float scaleOffect = 1.5f; /// <summary> @@ -34,21 +22,35 @@ /// <param name="text"></param> public void moveBloodText(float x, float y, string text, bool crit = false) { - // 先设置Text的位置到一个标准位置 + // // 先设置Text的位置到一个标准位置 + // Vector3 pos = bloodText.transform.position; + // pos.x = x; + // pos.y = y; + // pos.z = 0; + // bloodText.transform.position = pos; + + // Vector3 sval = bloodText.transform.localScale; + // sval.x = 1.0f; + // sval.y = 1.0f; + // sval.z = 1.0f; + // bloodText.transform.localScale = sval * scaleOffect; + + // bloodText.text = text; + // this.TextMove(bloodText, crit); + Vector3 pos = bloodText.transform.position; pos.x = x; pos.y = y; pos.z = 0; bloodText.transform.position = pos; - Vector3 sval = bloodText.transform.localScale; - sval.x = 1.0f; - sval.y = 1.0f; - sval.z = 1.0f; - bloodText.transform.localScale = sval * scaleOffect; - - bloodText.text = text; - this.TextMove(bloodText, crit); + Sequence sequence = DOTween.Sequence(); + bloodText.color = new Color(1f, 1f, 1f, 0.8f); + sequence.Join(DOTween.To(() => bloodText.transform.position, (Vector3 v) => bloodText.transform.position = v, + new Vector3(bloodText.transform.position.x + 20, bloodText.transform.position.y + 80, bloodText.transform.position.z), 0.2f)); + sequence.Append(DOTween.To(() => bloodText.color, (Color v) => bloodText.color = v, new Color(1f, 1f, 1f, 1f), 0.2f).SetEase(Ease.OutQuart)); + sequence.Append(DOTween.To(() => bloodText.color, (Color v) => bloodText.color = v, new Color(1f, 1f, 1f, 0f), 0.3f).SetDelay(0.5f)); + sequence.AppendCallback(() => { DestroyWord(); }); } /// <summary> @@ -58,38 +60,36 @@ /// <param name="y"></param> public void FloatSlowDownWord(float x, float y) { - // 先设置Text的位置到一个标准位置 Vector3 pos = SlowDownWord.transform.position; pos.x = x; pos.y = y; pos.z = 0; SlowDownWord.transform.position = pos; - Vector3 sval = SlowDownWord.transform.localScale; - sval.x = 1.0f; - sval.y = 1.0f; - sval.z = 1.0f; - SlowDownWord.transform.localScale = sval * scaleOffect; - - WordMove(SlowDownWord); + Sequence sequence = DOTween.Sequence(); + SlowDownWord.color = new Color(1f, 1f, 1f, 0.8f); + sequence.Join(DOTween.To(() => SlowDownWord.transform.position, (Vector3 v) => SlowDownWord.transform.position = v, + new Vector3(SlowDownWord.transform.position.x + 50 + UnityEngine.Random.Range(-15, 15), SlowDownWord.transform.position.y + 50 + UnityEngine.Random.Range(-15, 15), SlowDownWord.transform.position.z), 0.2f)); + sequence.Append(DOTween.To(() => SlowDownWord.color, (Color v) => SlowDownWord.color = v, new Color(1f, 1f, 1f, 1f), 0.2f).SetEase(Ease.OutQuart)); + sequence.Append(DOTween.To(() => SlowDownWord.color, (Color v) => SlowDownWord.color = v, new Color(1f, 1f, 1f, 0f), 0.3f).SetDelay(0.5f)); + sequence.AppendCallback(() => { DestroyWord(); }); } public void FloatCritWord(float x, float y) { - // 先设置Text的位置到一个标准位置 Vector3 pos = CritWord.transform.position; pos.x = x; pos.y = y; pos.z = 0; CritWord.transform.position = pos; - Vector3 sval = CritWord.transform.localScale; - sval.x = 1.0f; - sval.y = 1.0f; - sval.z = 1.0f; - CritWord.transform.localScale = sval * scaleOffect; - - WordMove(CritWord, true); + Sequence sequence = DOTween.Sequence(); + CritWord.color = new Color(1f, 1f, 1f, 0.8f); + sequence.Join(DOTween.To(() => CritWord.transform.position, (Vector3 v) => CritWord.transform.position = v, + new Vector3(CritWord.transform.position.x + 65, CritWord.transform.position.y + 25, CritWord.transform.position.z), 0.2f)); + sequence.Append(DOTween.To(() => CritWord.color, (Color v) => CritWord.color = v, new Color(1f, 1f, 1f, 1f), 0.2f).SetEase(Ease.OutQuart)); + sequence.Append(DOTween.To(() => CritWord.color, (Color v) => CritWord.color = v, new Color(1f, 1f, 1f, 0f), 0.3f).SetDelay(0.5f)); + sequence.AppendCallback(() => { DestroyWord(); }); } private void WordMove(Graphic graphic, bool crit = false) -- Gitblit v1.9.1