diff options
Diffstat (limited to 'Game/States/StateManager.gd')
-rw-r--r-- | Game/States/StateManager.gd | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/Game/States/StateManager.gd b/Game/States/StateManager.gd new file mode 100644 index 0000000..e62cdb4 --- /dev/null +++ b/Game/States/StateManager.gd @@ -0,0 +1,19 @@ +class_name StateManager +extends Node + + +func _ready(): + Client.state = get_child(0) + + +func _input(event: InputEvent) -> void: + Client.state._state_input(event) + + +func set_state(state: Variant): + if state is not State: + state = get_node(state) + + Client.state._state_exit() + Client.state = state + Client.state._state_enter() |