Install Asset
Install via Godot
To maintain one source of truth, Godot Asset Library is just a mirror of the old asset library so you can download directly on Godot via the integrated asset library browser




Quick Information

state machine without node for godot 3/4Documentation in the repository: https://github.com/lowlevel-1989/object_state_machine# Changelog## [0.7.2] - 2023-03-10### Changed- Fix Version plugin## [0.7.1] - 2023-03-10### Added- Debug Comming Soon### Changed- Fix remote debug## [0.7.0] - 2023-03-04### Added- Graphical state machine for the reference model### Changed- KinematicBody2D platform demo for Godot v3 (update)- CharacterBody2D platform demo for Godot v4 (update)## [0.6.1] - 2023-02-28### Changed- KinematicBody2D platform demo for Godot v3 (update)- CharacterBody2D platform demo for Godot v4 (update)## [0.6.0] - 2023-02-28### Added- LICENSE- README.md- support Godot v3- KinematicBody2D platform demo for Godot v3- CharacterBody2D platform demo for Godot v4- new node -> node_state_machine- new method -> void StateAbstract::confirm_transition()- new method -> void StateAbstract::create(name : String)- new method -> void StateMachine::create(name : String)### Changed- plugin.gd -> commend for support godot v3, default support v4
Object State Machine 0.7.2
- Install directly from Godot Asset Library
or
Download this respository, move
lowlevel-1989/object_state_machine
to your{project_dir}
Enable it from Project -> Settings -> Plugin
Getting Started
NodeStateMachine
- To create a state machine add the NodeStateMachine to the desired object as shown in the demo.
Class StateAbstract, abstract class that allows to define the different states
to define a new state you must create a class from the StateAbstract class and define its behavior.
Public methods
- void StateAbstract::create(owner·:·Node,·state_machine·:·StateMachine)
- Node StateAbstract::get_owner()
- void StateAbstract::transition_to(state:·StateAbstract)
- String StateAbstract::get_name()
- bool StateAbstract::is_class_state_machine()
- bool StateAbstract::is_class_state()
virtual methods
- void StateAbstract::_enter()
- void StateAbstract::_exit()
- void StateAbstract::_input(event : InputEvent)
- void StateAbstract::_process(delta : float)
- void StateAbstract::_physics_process(delta : float)
- void StateAbstract::_integrate_forces(state : Object)
- void StateAbstract::_confirm_transition()
private methods
- void StateAbstract::_set_name()
Class StateMachine
in charge of administering the states.
signals
- transitioned(current : StateAbstract, next : StateAbstract)
Public methods
- void StateMachine::create(name : String)
- void StateMachine::set_init_state(state : StateAbstract)
- void StateMachine::transition_debug_enable()
- void StateMachine::transition_debug_disable()
- StateAbstract StateMachine::get_current_state()
- StateAbstract StateMachine::get_prev_state()
- void StateMachine::transition_to(state : StateAbstract)
- void StateMachine::input(event : InputEvent)
- void StateMachine::process(delta : float)
- void StateMachine::physics_process(delta : float)
- void StateMachine::integrate_forces(state : Object)
- bool StateMachine::is_class_state_machine()
- bool StateMachine::is_class_state()
state machine without node for godot 3/4
Documentation in the repository: https://github.com/lowlevel-1989/object_state_machine
# Changelog
## [0.7.2] - 2023-03-10
### Changed
- Fix Version plugin
## [0.7.1] - 2023-03-10
### Added
- Debug Comming Soon
### Changed
- Fix remote debug
## [0.7.0] - 2023-03-04
### Added
- Graphical state machine for the reference model
### Changed
- KinematicBody2D platform demo for Godot v3 (update)
- CharacterBody2D platform demo for Godot v4 (update)
## [0.6.1] - 2023-02-28
### Changed
- KinematicBody2D platform demo for Godot v3 (update)
- CharacterBody2D platform demo for Godot v4 (update)
## [0.6.0] - 2023-02-28
### Added
- LICENSE
- README.md
- support Godot v3
- KinematicBody2D platform demo for Godot v3
- CharacterBody2D platform demo for Godot v4
- new node -> node_state_machine
- new method -> void StateAbstract::confirm_transition()
- new method -> void StateAbstract::create(name : String)
- new method -> void StateMachine::create(name : String)
### Changed
- plugin.gd -> commend for support godot v3, default support v4
Reviews
Quick Information

state machine without node for godot 3/4Documentation in the repository: https://github.com/lowlevel-1989/object_state_machine# Changelog## [0.7.2] - 2023-03-10### Changed- Fix Version plugin## [0.7.1] - 2023-03-10### Added- Debug Comming Soon### Changed- Fix remote debug## [0.7.0] - 2023-03-04### Added- Graphical state machine for the reference model### Changed- KinematicBody2D platform demo for Godot v3 (update)- CharacterBody2D platform demo for Godot v4 (update)## [0.6.1] - 2023-02-28### Changed- KinematicBody2D platform demo for Godot v3 (update)- CharacterBody2D platform demo for Godot v4 (update)## [0.6.0] - 2023-02-28### Added- LICENSE- README.md- support Godot v3- KinematicBody2D platform demo for Godot v3- CharacterBody2D platform demo for Godot v4- new node -> node_state_machine- new method -> void StateAbstract::confirm_transition()- new method -> void StateAbstract::create(name : String)- new method -> void StateMachine::create(name : String)### Changed- plugin.gd -> commend for support godot v3, default support v4