fix: 摔倒动画后增加停留缓冲,避免动作未完成就黑幕转场\n\n- 新增 _fallHoldDuration 字段(默认1.5s),Inspector 可调\n- Step3 manfull 2.1s 播完后 wait _fallHoldDuration 再进黑幕
This commit is contained in:
@@ -91,7 +91,6 @@ public class OpeningFlowController : MonoBehaviour
|
||||
yield return new WaitForSeconds(_idleDuration);
|
||||
|
||||
// Step 2: man 投篮动画 Shoot (3.15s)
|
||||
// 先确保 IsFull=false(因为 Idle→Shoot 过渡条件需要 IsFull=false)
|
||||
Debug.Log("[OpeningFlow] Step2: man Shoot 动画开始");
|
||||
if (_manAnimator != null)
|
||||
{
|
||||
@@ -107,14 +106,20 @@ public class OpeningFlowController : MonoBehaviour
|
||||
Debug.LogWarning("[OpeningFlow] _manAnimator 为空,跳过 Step2");
|
||||
}
|
||||
|
||||
// Step 3: man 摔倒动画 manfull (2.1s)
|
||||
// Step 3: man 摔倒动画 manfull,等待动画播完 + 停留缓冲
|
||||
Debug.Log("[OpeningFlow] Step3: man Fall 动画开始");
|
||||
if (_manAnimator != null)
|
||||
{
|
||||
_manAnimator.SetBool("IsFull", true);
|
||||
Debug.Log("[OpeningFlow] man IsFull=true, 触发 manfull");
|
||||
|
||||
// 等待 manfull 动画播放完成(2.1s)
|
||||
yield return new WaitForSeconds(2.1f);
|
||||
Debug.Log("[OpeningFlow] Step3: man Fall 动画结束");
|
||||
|
||||
// 摔倒后停留缓冲,让玩家看清摔倒结果
|
||||
Debug.Log($"[OpeningFlow] Step3: 摔倒后停留缓冲 {_fallHoldDuration}s");
|
||||
yield return new WaitForSeconds(_fallHoldDuration);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -196,4 +201,7 @@ public class OpeningFlowController : MonoBehaviour
|
||||
if (toAlpha <= 0.01f)
|
||||
_blackScreenPanel.SetActive(false);
|
||||
}
|
||||
|
||||
|
||||
[SerializeField] private float _fallHoldDuration = 1.5f;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user