diff --git a/Assets/Scripts/Interaction/ChanraoTuibuHandler.cs b/Assets/Scripts/Interaction/ChanraoTuibuHandler.cs index e9f5cc7..0430cd6 100644 --- a/Assets/Scripts/Interaction/ChanraoTuibuHandler.cs +++ b/Assets/Scripts/Interaction/ChanraoTuibuHandler.cs @@ -63,6 +63,7 @@ public class ChanraoTuibuHandler : MonoBehaviour public void PerformClick() { + if (!_isBlinking) return; // 防止重复点击 Debug.Log($"[ChanraoTuibu] {name} 被点击"); ActionHistory.Push(ActionHistory.ActionType.ChanraoTuibu, this); _isBlinking = false; diff --git a/Assets/Scripts/Interaction/PingClickHandler.cs b/Assets/Scripts/Interaction/PingClickHandler.cs index 715d715..8968509 100644 --- a/Assets/Scripts/Interaction/PingClickHandler.cs +++ b/Assets/Scripts/Interaction/PingClickHandler.cs @@ -58,6 +58,7 @@ public class PingClickHandler : MonoBehaviour public void PerformClick() { + if (!_isBlinking) return; // 防止重复点击 foreach (var c in Object.FindObjectsOfType()) { if (!c.enabled) continue; @@ -125,6 +126,7 @@ public class PingClickHandler : MonoBehaviour public void ReEnableBorder() { _isBlinking = true; if (_outlineMesh != null) { _outlineMesh.enabled = true; StopAllCoroutines(); StartCoroutine(BlinkOutline()); } } public void UndoSecondClick() { + if (chanraoObject != null) chanraoObject.SetActive(false); ShowSelf(); _modelShown = true; _isBlinking = false; diff --git a/Assets/Scripts/Interaction/TouchPositionHandler.cs b/Assets/Scripts/Interaction/TouchPositionHandler.cs index 9be1cd0..c1ae74d 100644 --- a/Assets/Scripts/Interaction/TouchPositionHandler.cs +++ b/Assets/Scripts/Interaction/TouchPositionHandler.cs @@ -58,6 +58,7 @@ public class TouchPositionHandler : MonoBehaviour private void OnMouseDown() { + if (_meshRenderer == null || !_meshRenderer.enabled) return; // 防止重复点击 Debug.Log($"[TouchPosition] {name}: 被点击"); if (womanObject != null && targetPosition != null)