class_name State extends Node # Emits on state completion signal finished(next_state_path: String, data: Dictionary) # Called by StateMachine on unhandled input func handle_input(_event: InputEvent) -> void: pass # Main update loop func update(_delta: float) -> void: pass # Physics update loop func physics_update(_delta: float) -> void: pass # Called by StateMachine on state change. Data contains arbitrary data to initialize state. func enter(previous_state_path: String, data := {}) -> void: pass # Called by StateMachine before state change. Should be used for cleanup. func exit() -> void: pass