diff --git a/Assets/Scripts/Animation/OpeningFlowController.cs b/Assets/Scripts/Animation/OpeningFlowController.cs index c2166ea..bd0dcef 100644 --- a/Assets/Scripts/Animation/OpeningFlowController.cs +++ b/Assets/Scripts/Animation/OpeningFlowController.cs @@ -88,14 +88,18 @@ public class OpeningFlowController : MonoBehaviour { Debug.Log("[OpeningFlow] PlayOpeningFlow() 被调用"); - // 重置场景(支持重复播放) - if (_manAnimator != null) { _manAnimator.gameObject.SetActive(true); _manAnimator.SetBool("IsStart", false); _manAnimator.SetBool("IsFull", false); } + if (_manAnimator != null) + { + _manAnimator.gameObject.SetActive(true); + _manAnimator.SetBool("IsStart", false); + _manAnimator.SetBool("IsFull", false); + _manAnimator.Play("manIdle", 0, 0f); + } if (_man2Object != null) _man2Object.SetActive(true); if (_womanObject != null) _womanObject.SetActive(false); if (_manInjuryObject != null) _manInjuryObject.SetActive(false); if (_blackScreenPanel != null) _blackScreenPanel.SetActive(false); - // 用名字找主摄像机(Camera.main 在主摄像机关闭后返回 null) var mainCamGo = GameObject.Find("Main Camera"); if (mainCamGo != null) { var c = mainCamGo.GetComponent(); if (c != null) c.enabled = true; } var cam2Go = GameObject.Find("camera2"); diff --git a/Assets/Scripts/Interaction/TouchPositionHandler.cs b/Assets/Scripts/Interaction/TouchPositionHandler.cs index e55af60..f8f5331 100644 --- a/Assets/Scripts/Interaction/TouchPositionHandler.cs +++ b/Assets/Scripts/Interaction/TouchPositionHandler.cs @@ -54,4 +54,13 @@ public class TouchPositionHandler : MonoBehaviour Debug.Log($"[TouchPosition] {name} → {nextTouchObject.name} 显示"); } } + + + private void OnEnable() + { + _meshRenderer = GetComponent(); + if (_meshRenderer != null) _meshRenderer.enabled = true; + StopAllCoroutines(); + StartCoroutine(BlinkMesh()); + } } diff --git a/Assets/Scripts/UI/PageController.cs b/Assets/Scripts/UI/PageController.cs index 7478ce9..620babc 100644 --- a/Assets/Scripts/UI/PageController.cs +++ b/Assets/Scripts/UI/PageController.cs @@ -381,7 +381,7 @@ public class PageController : MonoBehaviour if (cam2Go != null) { var c = cam2Go.GetComponent(); if (c != null) c.enabled = false; } var manAnim = man != null ? man.GetComponent() : null; - if (manAnim != null) { manAnim.SetBool("IsStart", false); manAnim.SetBool("IsFull", false); } + if (manAnim != null) { manAnim.SetBool("IsStart", false); manAnim.SetBool("IsFull", false); manAnim.Play("manIdle", 0, 0f); } ShowPage(Page.Home); }