extends StateMachine enum States {IDLE, RANDOMMOVEMENT, FEEDING, FLEEING} # Called when the node enters the scene tree for the first time. func _ready() -> void: super() await owner.ready func transition_to_next_state(target: int, data: Dictionary = {}) -> void: match target: States.IDLE: _transition_to_next_state("Idle", data) States.RANDOMMOVEMENT: _transition_to_next_state("RandomMovement", data) States.FEEDING: _transition_to_next_state("Feeding", data) States.FLEEING: _transition_to_next_state("Fleeing", data) _: push_error("Trying to transition to unknown state {target}")