extends CharacterBody3D @onready var enemy_hit_box: Area3D = $EnemyHitBox @onready var player_detector: Area3D = $PlayerDetector @onready var healthcomponent: HealthComponent = $Healthcomponent @onready var enemy_mover_follow: NavigationAgent3D = $EnemyMoverFollow @onready var collision_shape_3d: CollisionShape3D = $CollisionShape3D #@onready var navigation_agent_3d: NavigationAgent3D = $NavigationAgent3D #@export var target : Node3D #@export var MAX_SPEED := 2.0 # #func set_target(new_target: Node3D): #target = new_target # #func _physics_process(delta: float) -> void: # #if is_instance_valid(target): #navigation_agent_3d.set_target_position(target.global_position) #var next_path_position = navigation_agent_3d.get_next_path_position() ##next_path_position.y = global_position.y #var dir = global_position.direction_to(next_path_position) #var new_velocity = dir*MAX_SPEED #look_at(next_path_position) #navigation_agent_3d.set_velocity(new_velocity) # ##if global_position.distance_to(target.global_position) < 2: ##queue_free() # #else: #velocity = lerp(velocity, Vector3.ZERO, .1) # # #func _on_navigation_agent_3d_velocity_computed(safe_velocity: Vector3) -> void: #velocity = velocity.move_toward(safe_velocity, .25) #move_and_slide() func _on_healthcomponent_start_dying() -> void: #enemy_hit_box.monitoring = false #enemy_hit_box.monitorable = false #collision_shape_3d.disabled = true get_tree().create_timer(1).timeout.connect(queue_free)