From 03942026b95aba9f0af1c637749ad27de399b932 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期二, 11 十一月 2025 22:54:58 +0800
Subject: [PATCH] 0312 优化掉落战力计算卡顿问题
---
Main/System/Tip/PowerAddWin.cs | 64 ++++++++------------------------
1 files changed, 16 insertions(+), 48 deletions(-)
diff --git a/Main/System/Tip/PowerAddWin.cs b/Main/System/Tip/PowerAddWin.cs
index 614f78f..3bd2e58 100644
--- a/Main/System/Tip/PowerAddWin.cs
+++ b/Main/System/Tip/PowerAddWin.cs
@@ -18,18 +18,7 @@
[SerializeField] UIFrame uiFrame;
//[SerializeField] List<PowerUpPosition> powerUpPositions;
- [Header("娣″叆鍙樺ぇ")]
- [SerializeField] Vector3 startVector; //璧峰澶у皬
-
- [SerializeField] float fadeInToBigDuration; //娣″叆鍙樺ぇ鍔ㄧ敾瀹屾垚鏃堕棿
- [SerializeField] Ease fadeInToBigEaseType;
- [SerializeField] Vector3 fadeInToBigVector; //娣″叆鍙樺ぇ鐩爣澶у皬
-
- [Header("娣″叆鍙樺皬")]
- [SerializeField] Vector3 fadeInToSmallVector; //娣″叆鍙樺皬鐩爣澶у皬
-
- [SerializeField] float fadeInToSmallDuration; //娣″叆鍙樺皬鍔ㄧ敾瀹屾垚鏃堕棿
- [SerializeField] Ease fadeInToSmallEaseType;
+
[Header("娣″叆鍚庣Щ鍔ㄥ紑濮嬪墠绛夊緟鏃堕棿/s")]
[SerializeField] float moveStartWaitTime;
@@ -53,17 +42,7 @@
[Header("绉诲姩缁撴潫鍚庢贰鍑哄紑濮嬪墠绛夊緟鏃堕棿/s")]
[SerializeField] float moveEndWaitTime;
- [Header("娣″嚭鍙樺ぇ")]
- [SerializeField] Vector3 fadeOutToBigVector; //娣″嚭鍙樺ぇ鐩爣澶у皬
-
- [SerializeField] float fadeOutToBigDuration; //娣″嚭鍙樺ぇ鍔ㄧ敾瀹屾垚鏃堕棿
- [SerializeField] Ease fadeOutToBigEaseType;
-
- [Header("娣″嚭鍙樺皬")]
- [SerializeField] float fadeOutToSmallDuration; //娣″嚭鍙樺皬鍔ㄧ敾瀹屾垚鏃堕棿
-
- [SerializeField] Ease fadeOutToSmallEaseType;
-
+
[Header("鎴樺姏鏁板瓧浣嶇疆璁$畻鐩稿叧")]
[SerializeField] float txtBaseMultiple; //鍓嶇疆鐨勬垬鍔涙暟瀛楀瓧姣嶈窛绂诲�嶆暟
@@ -108,7 +87,15 @@
PlayerMainDate.Instance.AddPowerEvent -= ResetToWaitMove;
}
+ protected override void OnOpenAnimationComplete()
+ {
+ fadeInEndTime = Time.time;
+ nowState = AnimeState.WaitMove;
+ uiFrame.SetActive(true);
+ uiFrame.SetLoopCount(1);
+ uiFrame.ResetFrame(uiFrameKey);
+ }
#endregion
@@ -125,7 +112,7 @@
nowState = AnimeState.Move;
sequence = DOTween.Sequence();
- sequence.Join(transChange.DOMove(new Vector3(txtBase.rectTransform.position.x, transChange.position.y, transChange.position.z) , moveDuration).SetEase(moveEaseType));
+ sequence.Join(transChange.DOMove(new Vector3(txtBase.rectTransform.position.x, transChange.position.y, transChange.position.z), moveDuration).SetEase(moveEaseType));
sequence.Join(txtChange.DOFade(0f, textFadeDuration).SetEase(textFadeEaseType));
sequence.Join(imgArrow.DOFade(0f, textFadeDuration).SetEase(textFadeEaseType));
@@ -153,9 +140,9 @@
sequence.Append(txtBase.DOText(DisplayBasePowerNum(nowValue), rollTime).SetEase(rollEaseType).OnComplete(() => { SetInitPosition(nowValue, changePower, isAdd); }));
}
}
-#if UNITY_EDITOR
- Debug.Log($"count {i} changeValue {changeValue} nowValue {nowValue} isAdd {isAdd} basePower {basePower} changePower {changePower} nowPower {nowPower} rollTime {rollTime}");
-#endif
+// #if UNITY_EDITOR
+// Debug.Log($"count {i} changeValue {changeValue} nowValue {nowValue} isAdd {isAdd} basePower {basePower} changePower {changePower} nowPower {nowPower} rollTime {rollTime}");
+// #endif
}
sequence.Join(textChangeSequence);
@@ -168,14 +155,9 @@
}
else if (nowState == AnimeState.WaitFadeOut)
{
- if (Time.time - moveEndTime > moveEndWaitTime)
- {
- nowState = AnimeState.FadeOut;
- fadeOutSequence = DOTween.Sequence();
- fadeOutSequence.Append(transZhanLi.DOScale(fadeOutToBigVector, fadeOutToBigDuration).SetEase(fadeOutToBigEaseType));
- fadeOutSequence.Append(transZhanLi.DOScale(startVector, fadeOutToSmallDuration).SetEase(fadeOutToSmallEaseType).OnComplete(CloseWindow));
- }
+ CloseWindow();
}
+
}
private void ResetToFadeIn()
@@ -186,25 +168,12 @@
uiFrame.SetActive(false);
fadeInEndTime = 0;
moveEndTime = 0;
- transZhanLi.transform.localScale = startVector;
CheckPosition();
SetNum();
SetInitPosition(basePower, changePower, isAdd);
ResetColorA();
DisplayNum();
nowState = AnimeState.FadeIn;
- transZhanLi.DOScale(fadeInToBigVector, fadeInToBigDuration).SetEase(fadeInToBigEaseType).OnComplete(() =>
- {
- transZhanLi.DOScale(fadeInToSmallVector, fadeInToSmallDuration).SetEase(fadeInToSmallEaseType).OnComplete(() =>
- {
- fadeInEndTime = Time.time;
- nowState = AnimeState.WaitMove;
-
- uiFrame.SetActive(true);
- uiFrame.SetLoopCount(1);
- uiFrame.ResetFrame(uiFrameKey);
- });
- });
}
private void ResetToWaitMove()
@@ -215,7 +184,6 @@
uiFrame.SetActive(false);
fadeInEndTime = Time.time;
moveEndTime = 0;
- transZhanLi.transform.localScale = fadeInToSmallVector;
SetNum();
SetInitPosition(basePower, changePower, isAdd);
ResetColorA();
--
Gitblit v1.8.0