From dc7922d80c1d133b6261b8af1d521567d2c0a35d Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期四, 30 十月 2025 16:51:39 +0800
Subject: [PATCH] Merge branch 'master' of http://mobile.secondworld.net.cn:10010/r/Project_SG_scripts
---
Main/System/Message/WaitCallBack.cs | 271 ++++++++++++++++++++++++++---------------------------
1 files changed, 134 insertions(+), 137 deletions(-)
diff --git a/Main/System/Message/WaitCallBack.cs b/Main/System/Message/WaitCallBack.cs
index 5b19d3d..8174851 100644
--- a/Main/System/Message/WaitCallBack.cs
+++ b/Main/System/Message/WaitCallBack.cs
@@ -2,170 +2,167 @@
using System.Collections.Generic;
using UnityEngine;
-namespace CJ.Wait
+/// <summary>
+/// 寤惰繜鍑犵鎵ц浜嬩欢
+/// </summary>
+public class WaitCallBack : MonoBehaviour
{
+ internal float waitTime = 2.0f;
+
+ public bool doOnAwake = false;
/// <summary>
- /// 寤惰繜鍑犵鎵ц浜嬩欢
+ /// 鏃堕棿鍒拌揪鍥炶皟
/// </summary>
- public class WaitCallBack : MonoBehaviour
+ public Action<Component> OnCompelete;
+ /// <summary>
+ /// 姣忓抚鍥炶皟
+ /// </summary>
+ public Action<Component> OnWait;
+
+ internal static Dictionary<GameObject, WaitCallBack> waitDic = new Dictionary<GameObject, WaitCallBack>();
+
+ private float m_Time = 0;
+
+ private bool start = false;
+
+ private Component m_Comp;
+
+ private void Awake()
{
- internal float waitTime = 2.0f;
-
- public bool doOnAwake = false;
- /// <summary>
- /// 鏃堕棿鍒拌揪鍥炶皟
- /// </summary>
- public Action<Component> OnCompelete;
- /// <summary>
- /// 姣忓抚鍥炶皟
- /// </summary>
- public Action<Component> OnWait;
-
- internal static Dictionary<GameObject, WaitCallBack> waitDic = new Dictionary<GameObject, WaitCallBack>();
-
- private float m_Time = 0;
-
- private bool start = false;
-
- private Component m_Comp;
-
- private void Awake()
+ if (doOnAwake)
{
- if (doOnAwake)
- {
- Play();
- }
- }
-
- private void OnDisable()
- {
- Stop();
- }
-
- private void Update()
- {
- if (start)
- {
- m_Time += Time.deltaTime;
- if (m_Time >= waitTime)
- {
- Stop();
- if (OnCompelete != null)
- OnCompelete(m_Comp);
- }
- if (OnWait != null && start)
- OnWait(m_Comp);
- }
- }
-
- internal void Play()
- {
- start = true;
- }
-
- internal void Restart()
- {
- m_Time = 0;
Play();
- }
-
- internal void Stop()
- {
- m_Time = 0;
- start = false;
- }
-
- internal void Pause()
- {
- start = false;
- }
-
- private void OnDestroy()
- {
- if (waitDic.ContainsKey(gameObject))
- {
- waitDic.Remove(gameObject);
- }
- }
-
- internal void AddWaitDic(Component go)
- {
- m_Comp = go;
- waitDic.Add(go.gameObject, this);
}
}
- public static class Helper
+ private void OnDisable()
{
- public static void DoWaitStart(this Component go)
- {
- if (GetWait(go) == null)
- return;
- GetWait(go).Play();
- }
+ Stop();
+ }
- public static void OnWaitCompelete(this Component go, Action<Component> func)
+ private void Update()
+ {
+ if (start)
{
- WaitCallBack wait = GetWait(go);
- if (wait == null)
- return;
- wait.OnCompelete = func;
+ m_Time += Time.deltaTime;
+ if (m_Time >= waitTime)
+ {
+ Stop();
+ if (OnCompelete != null)
+ OnCompelete(m_Comp);
+ }
+ if (OnWait != null && start)
+ OnWait(m_Comp);
}
+ }
- public static void OnWait(this Component go, Action<Component> func)
+ internal void Play()
+ {
+ start = true;
+ }
+
+ internal void Restart()
+ {
+ m_Time = 0;
+ Play();
+ }
+
+ internal void Stop()
+ {
+ m_Time = 0;
+ start = false;
+ }
+
+ internal void Pause()
+ {
+ start = false;
+ }
+
+ private void OnDestroy()
+ {
+ if (waitDic.ContainsKey(gameObject))
{
- WaitCallBack wait = GetWait(go);
- if (wait == null)
- return;
- wait.OnWait = func;
+ waitDic.Remove(gameObject);
}
+ }
- public static void DoWaitRestart(this Component go)
- {
- if (GetWait(go) == null)
- return;
- GetWait(go).Restart();
- }
+ internal void AddWaitDic(Component go)
+ {
+ m_Comp = go;
+ waitDic.Add(go.gameObject, this);
+ }
+}
- public static void DoWaitStop(this Component go)
- {
- if (GetWait(go) == null)
- return;
- GetWait(go).Stop();
- }
+public static class Helper
+{
+ public static void DoWaitStart(this Component go)
+ {
+ if (GetWait(go) == null)
+ return;
+ GetWait(go).Play();
+ }
- public static void DoWaitPause(this Component go)
- {
- if (GetWait(go) == null)
- return;
- GetWait(go).Pause();
- }
+ public static void OnWaitCompelete(this Component go, Action<Component> func)
+ {
+ WaitCallBack wait = GetWait(go);
+ if (wait == null)
+ return;
+ wait.OnCompelete = func;
+ }
- public static WaitCallBack GetWait(Component go)
+ public static void OnWait(this Component go, Action<Component> func)
+ {
+ WaitCallBack wait = GetWait(go);
+ if (wait == null)
+ return;
+ wait.OnWait = func;
+ }
+
+ public static void DoWaitRestart(this Component go)
+ {
+ if (GetWait(go) == null)
+ return;
+ GetWait(go).Restart();
+ }
+
+ public static void DoWaitStop(this Component go)
+ {
+ if (GetWait(go) == null)
+ return;
+ GetWait(go).Stop();
+ }
+
+ public static void DoWaitPause(this Component go)
+ {
+ if (GetWait(go) == null)
+ return;
+ GetWait(go).Pause();
+ }
+
+ public static WaitCallBack GetWait(Component go)
+ {
+ WaitCallBack wait = null;
+ if (go == null)
+ return null;
+ WaitCallBack.waitDic.TryGetValue(go.gameObject, out wait);
+ if (wait == null)
{
- WaitCallBack wait = null;
- if (go == null)
- return null;
- WaitCallBack.waitDic.TryGetValue(go.gameObject, out wait);
+ wait = go.GetComponent<WaitCallBack>();
if (wait == null)
{
- wait = go.GetComponent<WaitCallBack>();
- if (wait == null)
- {
- wait = go.gameObject.AddComponent<WaitCallBack>();
- }
- wait.AddWaitDic(go);
+ wait = go.gameObject.AddComponent<WaitCallBack>();
}
- return wait;
+ wait.AddWaitDic(go);
}
+ return wait;
+ }
- public static void SetWait(this Component comp, float time)
+ public static void SetWait(this Component comp, float time)
+ {
+ WaitCallBack wait = GetWait(comp);
+ if (wait != null)
{
- WaitCallBack wait = GetWait(comp);
- if (wait != null)
- {
- wait.waitTime = time;
- }
+ wait.waitTime = time;
}
}
}
--
Gitblit v1.8.0