using UnityEngine; using RPG.Movement; using UnityEngine.Rendering; namespace RPG.Combat { public class Fighter : MonoBehaviour { [SerializeField] private float weaponRange = 2f; Transform target; private void Update() { if (target == null) return; if (!GetIsInRange()) { GetComponent().MoveTo(target.position); } else { GetComponent().Stop(); } } private bool GetIsInRange() { return Vector3.Distance(transform.position, target.position) <= weaponRange; } public void Attack(CombatTarget combatTarget) { target = combatTarget.transform; } public void Cancel() { target = null; } } }