You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

17 lines
504 B
GDScript

extends ActionWithTarget
class_name ActionMoveTo
@export var dist_min: float = 0
@export var dist_max: float = 5
func execute(character: Character, target: Character, blackboard: Blackboard) -> int:
var dir: Vector2 = target.pos2D() - character.pos2D()
var dist: float = dir.length()
if (dist > dist_min ) and (dist < dist_max):
character.move_stop()
return SUCCESS
var is_far: bool = dist >= dist_max
character.move_to(dir if is_far else -dir)
return FAILURE