Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/c08oprkiua/moduleassistant
Helper tool for making engine modules in Godot 4 (and 3, ish)
https://github.com/c08oprkiua/moduleassistant
cpp gdscript godot godot-cpp godot-module godot3 godot4 tools
Last synced: about 2 months ago
JSON representation
Helper tool for making engine modules in Godot 4 (and 3, ish)
- Host: GitHub
- URL: https://github.com/c08oprkiua/moduleassistant
- Owner: c08oprkiua
- License: gpl-3.0
- Created: 2024-01-03T03:49:48.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-07-06T07:17:59.000Z (6 months ago)
- Last Synced: 2024-07-06T08:31:52.606Z (6 months ago)
- Topics: cpp, gdscript, godot, godot-cpp, godot-module, godot3, godot4, tools
- Language: GDScript
- Homepage:
- Size: 41.9 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ModuleAssistant
### USE THIS AT YOUR (CODE'S) OWN RISK!!!
Helper tool for making engine modules in Godot 4 and 3.
This is a little thingamabob I initially made in an evening to automate all the set, get, and bind functions needed to register variables in Godot C++ modules. I figured this would be a one-and-done project, yet I keep returning to it to add things I want/need as I work on modules, so we'll see where it goes in the future.
## Features
* Generates set, get, and binding functions for variables
* Can generate several different types of variables at once (when using static typing)
## Usage
### Variable Helper
This generates all the base code needed to register a variable to the ClassDB API in Godot.* List your variables, separating them by commas.
* Any spaces will be deleted (ex: "My var 1, my var 2" will translate to `Myvar1` and `myvar2`)
* You can type your variables with GDScript/Python syntax (ex: `my_float:float`), and that will be used instead of the default type.
* In much the same way, you can set initializing values, such as `my_var_3 = 3`.
* If no default variable type is set, it will default to "Variant". If no class is specified, it will give an error and not generate.
* There are not and will not be validity checks on types or initialization values, so if you make a typo, or generate something invalid due to your inputs, that's on you. Luckily, you can always fix it and re-run the generator :P
When the C++ code is generated, it will show up in the preview tabs on the right side. Here, you can make any necessary edits that you may see fit to do. If you want to export that text to a file, click the save button. Then, press the button for opening the output folder, and the folder where the saved files are written to will be opened in your file explorer, defaulting to the user directory of Godot.
## Issues
##### Note: I may or *may not* address these
* No dedicated function binding generator.
* The GDScript to C++ converter is currently not done. Even when it eventually is, what it will output will probably have to be manually tweaked/added to before it is proper, usable code.