extends EnemyState class_name EnemyStunned @export var wander_distance_max : float = 15.0 @export var time_stunned : float = 5.0 var stun_timer const BODY_TURN_SPEED = 2.0 const TURRET_TURN_SPEED = 6.0 func Enter(): stun_timer = time_stunned clear_points_of_interest() character.stunned_stars.visible = true func Exit(): character.stunned_stars.visible = false func Update(delta): if stun_timer > 0: stun_timer -= delta else: Transitioned.emit(self,"idle") func Physics_Update(delta): #if navigation is finished get new point, otherwise continue on path if character.nav_agent.is_navigation_finished(): get_new_wander_point() else: move_to_nav_point(delta) character.body.rotation.y += delta * BODY_TURN_SPEED character.turret_look.rotation.y += delta * TURRET_TURN_SPEED func get_new_wander_point(): var x = randf_range(-wander_distance_max,wander_distance_max) var z = randf_range(-wander_distance_max,wander_distance_max) move_target = character.global_position + Vector3(x,0,z) character.nav_agent.set_target_position(move_target)