Compare commits
14 Commits
05a28f5adb
...
a67f38b862
Author | SHA1 | Date |
---|---|---|
|
a67f38b862 | |
|
765f863504 | |
|
27a6b2021b | |
|
834f194b6c | |
|
9653ffcb9a | |
|
21a944e23f | |
|
75582896bb | |
|
a4b4165725 | |
|
9a14f52869 | |
|
17872e7048 | |
|
f7a63ca673 | |
|
691208016c | |
|
db827a8d30 | |
|
360e24c330 |
|
@ -121,7 +121,8 @@ LimboAI can be used as either a C++ module or as a GDExtension shared library. G
|
|||
|
||||
## Contributing
|
||||
|
||||
Contributions are welcome! Please open issues for bug reports, feature requests, or code changes. Keep the minor versions backward-compatible when submitting pull requests.
|
||||
Contributions are welcome! Please open issues for bug reports, feature requests, or code changes.
|
||||
For detailed guidelines on contributing to code or documentation, check out our [Contributing](https://limboai.readthedocs.io/en/latest/getting-started/contributing.html) page.
|
||||
|
||||
If you have an idea for a behavior tree task or a feature that could be useful in a variety of projects, open an issue to discuss it.
|
||||
|
||||
|
|
|
@ -0,0 +1,70 @@
|
|||
.. _contributing:
|
||||
|
||||
Contributing
|
||||
============
|
||||
|
||||
We target the latest stable version of the Godot Engine for development until a
|
||||
third beta or a release candidate of an upcoming Godot release becomes available.
|
||||
If you want to contribute to the project, please ensure that you are using the
|
||||
corresponding Godot version.
|
||||
|
||||
We follow the `Godot code style guidelines <https://docs.godotengine.org/en/stable/contributing/development/code_style_guidelines.html#doc-code-style-guidelines>`_.
|
||||
Please use ``clang-format`` to maintain consistent styling. You can install
|
||||
``pre-commit`` hooks for Git using ``pre-commit install`` to automate this process.
|
||||
|
||||
Please keep the minor versions backward-compatible when submitting pull requests.
|
||||
|
||||
We support building LimboAI as a module for the Godot Engine and as a GDExtension library.
|
||||
Make sure your contribution is compatible with both. Our CI workflow will verify
|
||||
that your changes can be compiled in both configurations.
|
||||
|
||||
Compiling as module of the Godot Engine
|
||||
---------------------------------------
|
||||
|
||||
1. Clone the Godot Engine repository.
|
||||
2. Switch to the latest stable tag.
|
||||
3. Clone the LimboAI repository into the ``modules/limboai`` directory.
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
git clone https://github.com/godotengine/godot.git
|
||||
git checkout 4.3-stable # Replace "4.3-stable" with the latest stable tag
|
||||
git clone https://github.com/limbonaut/limboai modules/limboai
|
||||
|
||||
Consult the `Godot Engine documentation <https://docs.godotengine.org/en/stable/contributing/development/compiling/index.html>`_
|
||||
for detailed instructions on building the engine.
|
||||
|
||||
**Unit tests** can be compiled using the ``tests=yes`` build option. To execute them,
|
||||
run the compiled Godot binary with the ``--test --tc="*[LimboAI]*"`` command-line options.
|
||||
|
||||
Compiling as GDExtension library
|
||||
--------------------------------
|
||||
|
||||
You'll need the SCons build tool and a C++ compiler. See also `Compiling <https://docs.godotengine.org/en/stable/contributing/development/compiling/index.html>`_.
|
||||
Run ``scons target=editor`` to build the plugin library for your current platform.
|
||||
|
||||
- SCons will automatically clone the ``godot-cpp`` repository if it doesn't already exist in the ``limboai/godot-cpp`` directory.
|
||||
- By default, built targets are placed in the demo project: ``demo/addons/limboai/bin/``.
|
||||
|
||||
Check ``scons -h`` for other options and targets.
|
||||
|
||||
Contributing to the documentation
|
||||
---------------------------------
|
||||
|
||||
Online documentation is created using `Sphinx <https://www.sphinx-doc.org/en/master/>`_.
|
||||
Source files are located in the ``doc/source`` directory in RST format and can
|
||||
be built locally with ``sphinx-build``. See the
|
||||
`Sphinx documentation <https://www.sphinx-doc.org/en/master/tutorial/getting-started.html>`_
|
||||
for more details.
|
||||
|
||||
Class documentation resides in XML files within the ``doc_classes/`` directory.
|
||||
If you create a new class or modify an existing one, you can run the compiled
|
||||
Godot binary with the ``--doctool`` option in the root of the Godot source code
|
||||
to generate the missing XML files or sections within those files in the class documentation.
|
||||
After editing the XML files, please run the compiled editor binary with the ``--doctool``
|
||||
option again to update and tidy up the XML files.
|
||||
|
||||
Sphinx RST files for the class documentation are generated from
|
||||
XML files using the Godot script ``make_rst.py`` and stored in the ``doc/source/classes`` directory.
|
||||
This process is performed using our own script ``gdextension/update_rst.sh``. RST files
|
||||
in ``doc/source/classes`` should not be edited manually.
|
|
@ -197,7 +197,7 @@ Let's illustrate this with a practical code example:
|
|||
func _idle_update(delta: float) -> void:
|
||||
var dir: Vector2 = Input.get_vector(
|
||||
&"ui_left", &"ui_right", &"ui_up", &"ui_down")
|
||||
if dir.is_zero_approx():
|
||||
if not dir.is_zero_approx():
|
||||
hsm.dispatch(&"movement_started")
|
||||
|
||||
|
||||
|
|
|
@ -85,6 +85,7 @@ Creating your own behavior trees
|
|||
getting-started/gdextension
|
||||
getting-started/c-sharp
|
||||
getting-started/featured-classes
|
||||
getting-started/contributing
|
||||
|
||||
.. toctree::
|
||||
:hidden:
|
||||
|
|
|
@ -297,7 +297,7 @@ public:
|
|||
#ifdef LIMBOAI_MODULE
|
||||
bool has_main_screen() const override { return true; }
|
||||
|
||||
virtual String get_name() const override { return "LimboAI"; }
|
||||
virtual String get_plugin_name() const override { return "LimboAI"; }
|
||||
virtual void make_visible(bool p_visible) override;
|
||||
virtual void edit(Object *p_object) override;
|
||||
virtual bool handles(Object *p_object) const override;
|
||||
|
|
|
@ -404,6 +404,9 @@ String LimboUtility::get_property_hint_text(PropertyHint p_hint) const {
|
|||
case PROPERTY_HINT_ONESHOT: {
|
||||
return "ONESHOT";
|
||||
}
|
||||
case PROPERTY_HINT_NO_NODEPATH: {
|
||||
return "NO_NODEPATH";
|
||||
}
|
||||
case PROPERTY_HINT_LOCALE_ID: {
|
||||
return "LOCALE_ID";
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue