From 39001a600fcae2bcf27c225df8752d75fb92fef4 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期五, 31 十月 2025 11:18:26 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.1.20:10010/r/Project_SG_scripts
---
Main/System/Battle/BattleTweenMgr.cs | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 51 insertions(+), 3 deletions(-)
diff --git a/Main/System/Battle/BattleTweenMgr.cs b/Main/System/Battle/BattleTweenMgr.cs
index e36d309..2e72688 100644
--- a/Main/System/Battle/BattleTweenMgr.cs
+++ b/Main/System/Battle/BattleTweenMgr.cs
@@ -7,10 +7,13 @@
{
private BattleField battleField;
+ private float speedRatio => battleField.speedRatio;
+
private List<Tween> tweenList = new List<Tween>();
public void Init(BattleField _battleField)
{
+ Release();
battleField = _battleField;
}
@@ -44,11 +47,56 @@
}
tweenList.Add(tween);
- tween.OnComplete(() =>
- {
+ tween.timeScale = speedRatio;
+ tween.onComplete += () =>
+ {
tweenList.Remove(tween);
- });
+ };
tween.Play();
}
+
+ public void OnKillTween(Tween tween)
+ {
+ tween.Kill();
+ if (tween != null && tweenList.Contains(tween))
+ {
+ tweenList.Remove(tween);
+ }
+ }
+
+ public void HaveRest()
+ {
+ foreach (var tween in tweenList)
+ {
+ if (tween != null && !tween.IsComplete())
+ {
+ tween.Kill();
+ }
+ }
+ tweenList.Clear();
+ }
+
+ public void Release()
+ {
+ foreach (var tween in tweenList)
+ {
+ if (tween != null && !tween.IsComplete())
+ {
+ tween.Kill();
+ }
+ }
+ tweenList.Clear();
+ }
+
+ public void SetSpeedRatio(float ratio)
+ {
+ foreach (var tween in tweenList)
+ {
+ if (tween != null && !tween.IsComplete())
+ {
+ tween.timeScale = speedRatio;
+ }
+ }
+ }
}
\ No newline at end of file
--
Gitblit v1.8.0