public void HandleUnitAttack(Transform target) { if (target != null) { DebugHandler.Print($"Player Unit target Aquired! ({target.ToString()})"); aggroTarget = target; aggroUnit = target.gameObject.GetComponentInChildren <UnitStatDisplay>(); hasAggro = true; } }
private void CheckForEnemyTargets() { rangeColliders = Physics.OverlapSphere(transform.position, baseStats.aggroRange); for (int i = 0; i < rangeColliders.Length; i++) { if (rangeColliders[i].gameObject.layer == UnitHandler.instance.pUnitLayer && Vector3.Distance(rangeColliders[i].gameObject.transform.position, transform.position) <= baseStats.aggroRange) { aggroTarget = rangeColliders[i].gameObject.transform; aggroUnit = aggroTarget.gameObject.GetComponentInChildren <UnitStatDisplay>(); hasAggro = true; DebugHandler.Print($"Target aquired distance of ({distance = Vector3.Distance(aggroTarget.position, transform.position)})! {aggroTarget.transform.ToString()}"); break; } } }