extends Area2D var speed = 100 var damage = 1 var player : CharacterBody2D func _ready() -> void: player = get_parent().get_node("Player") func _physics_process(delta: float) -> void: var motion = -(position - player.position).normalized() * speed var dist = (position - player.position).length() self.position += motion * delta * min(1, dist/(motion.length()*delta)) if(self.overlaps_body(player)): player.hurt(damage, self.position-player.position)