player script:
class_name Player
extends CharacterBody3D
const SPEED = 4
const ACCEL_SPEED = 11
const DECCEL_SPEED = 11
const JUMP_VELOCITY = 5
@onready var state_machine = $State_Machine
var input_dir : Vector2
var direction :Vector3
func _ready() -> void:
state_machine.init(self)
func _process(delta: float) -> void:
state_machine.process_frame(delta)
$Label.text = state_machine.current_state.name
func _physics_process(delta: float) -> void:
state_machine.process_physics(delta)
input_dir = Input.get_vector("left", "right", "forward", "backward")
direction = (transform.basis * Vector3(input_dir.x, 0, input_dir.y)).normalized()
func _unhandled_input(event: InputEvent) -> void:
state_machine.process_input(event)