Edit of asset "Push Down Automata" Accepted
Old/Current | New/Edit | |
---|---|---|
Title | Push Down Automata | Push Down Automata |
Description |
A super easy and flexible PDA implementation. A PDA is basically a finite state machine with a stack. Just add the Machine node and fill in the export options. A relative dependency is a child of the entity. Just type the name of the child in the inspector like so: "AnimationPlayer". A global dependency can be any node, just tap de exported NodePath and select a node. If your Machine node is a child of the entity you can use whichever method you prefer. To add a new state, create a new script that inherits anything. Just use one of the templates. I recommend starting with the tutorial one. For animations to work, just add any dependency of type AnimationPlayer. The state buffer ensures that the stack never grows too large. (Just a buffer_size of 3 should be enough tho) You can reference your dependencies (nodes in the scene tree) by just declaring them in the state script in snake case (e.g. animation_player), just name them in the regular PascalCase convention in the scene tree. Your state names match your script name, just use PascalCase. (e. g. `push_state('Idle')` ) |
A super easy and flexible PDA implementation. A PDA is basically a finite state machine with a stack. Just add the Machine node and fill in the export options. A relative dependency is a child of the entity. Just type the name of the child in the inspector like so: "AnimationPlayer". A global dependency can be any node, just tap de exported NodePath and select a node. If your Machine node is a child of the entity you can use whichever method you prefer. To add a new state, create a new script that inherits anything. Just use one of the templates. I recommend starting with the tutorial one. For animations to work, just add any dependency of type AnimationPlayer. The state buffer ensures that the stack never grows too large. (Just a buffer_size of 3 should be enough tho) You can reference your dependencies (nodes in the scene tree) by just declaring them in the state script in snake case (e.g. animation_player), just name them in the regular PascalCase convention in the scene tree. Your state names match your script name, just use PascalCase. (e. g. `push_state('Idle')` ) |
Category | Tools | Tools |
License | MIT | MIT |
Repository Provider | GitHub | GitHub |
Repository Url | https://github.com/batomow/PushDownAutomata | https://github.com/batomow/PushDownAutomata |
Issues Url | https://github.com/batomow/PushDownAutomata/issues | https://github.com/batomow/PushDownAutomata/issues |
Godot version | Godot 3.3 | Godot 3.3 |
Version String | 1.2 | 1.1 |
Download Commit | 88cf497c6d6e31a0594b97a90373f0422a83d23a | e06fae61b5157e4fdf6cd64a8942e9154a3238d4 |
Download Url (Computed) | https://github.com/batomow/PushDownAutomata/archive/88cf497c6d6e31a0594b97a90373f0422a83d23a.zip | https://github.com/batomow/PushDownAutomata/archive/e06fae61b5157e4fdf6cd64a8942e9154a3238d4.zip |
Icon Url |
https://raw.githubusercontent.com/batomow/PushDownAutomata/main/addons/PushDownAutomata/layer.png
|
https://raw.githubusercontent.com/batomow/PushDownAutomata/main/layer.png
|