diff --git a/Assets/Scripts/Units/UnitMovementHandler.cs b/Assets/Scripts/Units/UnitMovementHandler.cs index 8c4e825..ec3d529 100644 --- a/Assets/Scripts/Units/UnitMovementHandler.cs +++ b/Assets/Scripts/Units/UnitMovementHandler.cs @@ -5,7 +5,7 @@ using Sirenix.OdinInspector; using Unity.Netcode; namespace Reset.Units{ - public class UnitMovementHandler : UnitComponent{ + public class UnitMovementHandler : UnitComponent { [ShowInInspector, InlineProperty, HideLabel, FoldoutGroup("Resolved Movement", expanded: true)] public ResolvedMovement resolvedMovement; @@ -20,7 +20,7 @@ namespace Reset.Units{ // References private CharacterController controller; private PlayerControls controls; - private LockOnManager lockOnManager; + private IUnitTargetProvider targetProvider; // Movement Data [ShowInInspector, PropertyOrder(2), FoldoutGroup("Movement Data", expanded: true), InlineProperty, HideLabel] public UnitMovementData data = new(); @@ -31,7 +31,7 @@ namespace Reset.Units{ void Awake(){ controller = GetComponent(); controls = GetComponent(); - lockOnManager = GetComponent(); + targetProvider = GetComponent(); InitAllSettings(); } @@ -143,7 +143,7 @@ namespace Reset.Units{ // Just look at target case PlayerFacingDirection.TowardsTarget: // Look directly at the target - if (lockOnManager.mainTarget == null) { + if (targetProvider.UnitTarget == null) { Debug.LogError("Trying to rotate towards a target but there is no target. Forcing rotation to Static and continuing"); data.facingDirection.Value = PlayerFacingDirection.Static; data.facingDirection.currentValue = PlayerFacingDirection.Static; @@ -152,7 +152,7 @@ namespace Reset.Units{ break; } - targetRotation = Quaternion.LookRotation(transform.position.DirectionTo(lockOnManager.mainTarget.gameObject.transform.position)); + targetRotation = Quaternion.LookRotation(transform.position.DirectionTo(targetProvider.UnitTarget.transform.position)); break; case PlayerFacingDirection.Momentum: // Look towards the current direction the agent is moving @@ -391,6 +391,7 @@ namespace Reset.Units{ public void OverwriteDirectionFromInput(Vector2 value, float priority, float speed = Mathf.Infinity){ // Old Debug.LogError("Using an old movement command! Switch to one of the new alternatives!"); } + } }