using Ai; using UnityEngine; namespace Player { public class RotateTowardsEnemy : MonoBehaviour { [SerializeField] private TargetClosestEnemy _targeting; [SerializeField] private MainCharacter _character; [SerializeField] private Transform _rotatingTransform; private void Update() { if (_character && _character.IsDead || _character && _character.GetState() != CharacterState.DEFAULT) { transform.localEulerAngles = Vector3.zero; return; } var targetPosition = _targeting != null ? _targeting.ClosestPosition() : transform.forward; var heading = targetPosition - transform.position; var direction = _targeting != null && AiController.Instance.TargetingEnemies.Count > 0 ? heading / heading.magnitude : transform.forward; transform.forward = direction; } private void OnValidate() { if (_rotatingTransform == null) _rotatingTransform = transform; } } }