extends CharacterBody2D var target : CharacterBody2D var speed : int var projectile_damage : int func _physics_process(_delta: float): if !is_instance_valid(target): queue_free() else: _move_projectile() func _on_area_2d_body_entered(body: Node2D): if "Crawler" in body.name: body.deal_damage(projectile_damage) queue_free() func _move_projectile(): var pos : Vector2 pos = target.global_position velocity = global_position.direction_to(pos) * speed look_at(pos) move_and_slide()