extends Area2D
var target = null setget tar
signal target
func tar(tget):
emit_signal("target", tget)
func _physics_process(_delta):
if !target or not is_instance_valid(target):
find_target()
func find_target():
var units = get_overlapping_areas()
if units.size() > 0:
var closest = units[0]
for unit in units:
if (
position.distance_to(unit.global_position)
< position.distance_to(closest.global_position)
):
closest = unit
self.target = closest
else:
self.target = null