From 09bc892c7283df8757a07b646d5af21ddaa263d1 Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期四, 06 十一月 2025 18:22:34 +0800
Subject: [PATCH] 164 天子的考验-客户端
---
Main/System/Tip/ScrollTipDetail.cs | 173 +++++++++++++++++++++++++++++++--------------------------
1 files changed, 93 insertions(+), 80 deletions(-)
diff --git a/Main/System/Tip/ScrollTipDetail.cs b/Main/System/Tip/ScrollTipDetail.cs
index 2454b68..685e7ec 100644
--- a/Main/System/Tip/ScrollTipDetail.cs
+++ b/Main/System/Tip/ScrollTipDetail.cs
@@ -3,88 +3,101 @@
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
- [RequireComponent(typeof(CanvasGroup))]
- public class ScrollTipDetail : MonoBehaviour
+using DG.Tweening;
+[RequireComponent(typeof(CanvasGroup))]
+public class ScrollTipDetail : MonoBehaviour
+{
+
+ RichText text;
+
+ CanvasGroup canvasGroup;
+ [HideInInspector]
+ public ScrollTip.ScrollTipState presentState = ScrollTip.ScrollTipState.Move;
+ private float m_Time = 0;
+ private Vector3 pos = Vector3.zero;
+
+ private float m_TipShowTime;
+ private float m_TipHideTime;
+ private float m_TipDistance;
+
+ private void Awake()
{
+ canvasGroup = GetComponent<CanvasGroup>();
+ text = transform.Find("Text").GetComponent<RichText>();
+ }
- RichText text;
+ public void ShowTip(SystemHintData _hint)
+ {
+ text.SetExtenalData(_hint.extentionData);
+ text.text = _hint.message;
+ }
- CanvasGroup canvasGroup;
- [HideInInspector]
- public ScrollTip.ScrollTipState presentState = ScrollTip.ScrollTipState.Idle;
- private float m_Time = 0;
- private Vector3 pos = Vector3.zero;
+ public void SetTipConfig(float _showTime,float _hideTime,float _dis)
+ {
+ m_TipShowTime = _showTime;
+ m_TipHideTime = _hideTime;
+ m_TipDistance = _dis;
+ }
- private float m_TipShowTime;
- private float m_TipHideTime;
- private float m_TipDistance;
+ public void Play(ScrollTip.ScrollTipState state)
+ {
+ m_Time = 0;
+ canvasGroup.alpha = 1;
+ pos = transform.localPosition;
+ presentState = state;
+ //LateUpdate 鏀规垚dotwweing
+ Sequence tween = DOTween.Sequence();;
+ tween.Append(transform.DOLocalMove(pos.SetY(pos.y + m_TipDistance), ScrollTip.tipMoveTime)).SetEase(Ease.Linear);
+ tween.AppendInterval(m_TipShowTime);
+ tween.Append(canvasGroup.DOFade(0, m_TipHideTime)).SetEase(Ease.Linear);
+ tween.Play();
+ tween.OnComplete(() =>
+ {
+ presentState = ScrollTip.ScrollTipState.None;
+ ScrollTip.Release(this, false);
+ ScrollTip.OnTipComplete();
+ });
+ }
- private void Awake()
- {
- canvasGroup = GetComponent<CanvasGroup>();
- text = transform.Find("Text").GetComponent<RichText>();
- }
-
- public void ShowTip(SystemHintData _hint)
- {
- text.SetExtenalData(_hint.extentionData);
- text.text = _hint.message;
- }
-
- public void SetTipConfig(float _showTime,float _hideTime,float _dis)
- {
- m_TipShowTime = _showTime;
- m_TipHideTime = _hideTime;
- m_TipDistance = _dis;
- }
-
- public void Play(ScrollTip.ScrollTipState state)
- {
- m_Time = 0;
- canvasGroup.alpha = 1;
- pos = transform.localPosition;
- presentState = state;
- }
-
- private void LateUpdate()
- {
- m_Time += Time.deltaTime;
- switch (presentState) {
- case ScrollTip.ScrollTipState.Idle: {
- m_Time = Mathf.Min(m_Time, m_TipShowTime);
- if (m_Time >= m_TipShowTime) {
- m_Time = 0;
- var index = ScrollTip.m_ActiveTips.IndexOf(this);
- if (index == 0) {
- presentState = ScrollTip.ScrollTipState.Hide;
- }
- else {
- presentState = ScrollTip.ScrollTipState.None;
- }
- }
- }
- break;
- case ScrollTip.ScrollTipState.Move: {
- m_Time = Mathf.Min(m_Time, ScrollTip.tipMoveTime);
- transform.localPosition = Vector3.Lerp(pos, pos.SetY(pos.y + m_TipDistance), m_Time / ScrollTip.tipMoveTime);
- if (m_Time >= ScrollTip.tipMoveTime) {
- m_Time = 0;
- presentState = ScrollTip.ScrollTipState.Idle;
- ScrollTip.OnTipComplete();
- }
- }
- break;
- case ScrollTip.ScrollTipState.Hide: {
- m_Time = Mathf.Min(m_Time, m_TipHideTime);
- canvasGroup.alpha = 1 - m_Time / m_TipHideTime;
- if (m_Time >= m_TipHideTime) {
- m_Time = 0;
- presentState = ScrollTip.ScrollTipState.None;
- ScrollTip.Release(this);
- ScrollTip.OnTipComplete();
- }
- }
- break;
- }
- }
- }
\ No newline at end of file
+ // private void LateUpdate()
+ // {
+ // m_Time += Time.deltaTime;
+ // switch (presentState) {
+ // case ScrollTip.ScrollTipState.Idle: {
+ // m_Time = Mathf.Min(m_Time, m_TipShowTime);
+ // if (m_Time >= m_TipShowTime) {
+ // m_Time = 0;
+ // var index = ScrollTip.m_ActiveTips.IndexOf(this);
+ // if (index == 0) {
+ // presentState = ScrollTip.ScrollTipState.Hide;
+ // }
+ // else {
+ // presentState = ScrollTip.ScrollTipState.None;
+ // }
+ // }
+ // }
+ // break;
+ // case ScrollTip.ScrollTipState.Move: {
+ // m_Time = Mathf.Min(m_Time, ScrollTip.tipMoveTime);
+ // transform.localPosition = Vector3.Lerp(pos, pos.SetY(pos.y + m_TipDistance), m_Time / ScrollTip.tipMoveTime);
+ // if (m_Time >= ScrollTip.tipMoveTime) {
+ // m_Time = 0;
+ // presentState = ScrollTip.ScrollTipState.Idle;
+ // ScrollTip.OnTipComplete();
+ // }
+ // }
+ // break;
+ // case ScrollTip.ScrollTipState.Hide: {
+ // m_Time = Mathf.Min(m_Time, m_TipHideTime);
+ // canvasGroup.alpha = 1 - m_Time / m_TipHideTime;
+ // if (m_Time >= m_TipHideTime) {
+ // m_Time = 0;
+ // presentState = ScrollTip.ScrollTipState.None;
+ // ScrollTip.Release(this);
+ // ScrollTip.OnTipComplete();
+ // }
+ // }
+ // break;
+ // }
+ // }
+}
\ No newline at end of file
--
Gitblit v1.8.0