Serhii Snitsaruk
d08273e875
Merge 2e0047bb59
into eaa43020f5
2024-10-13 21:36:29 -03:00
Serhii Snitsaruk
eaa43020f5
Merge pull request #235 from limbonaut/doc-get-var-fix
...
Doc: Clarify `Blackboard.get_var()` and `set_var()`
2024-10-13 12:27:12 -07:00
Serhii Snitsaruk
b5b1ac7289
Doc: Clarify `Blackboard.get_var()` and `set_var()`
2024-10-13 21:04:59 +02:00
Serhii Snitsaruk
ece17d68d9
Merge pull request #234 from limbonaut/doc-fixes
...
GHA: Code style checks for PRs and commits
2024-10-13 12:03:17 -07:00
Serhii Snitsaruk
85787616e7
GHA: Add code style check for PRs and direct commits
2024-10-13 20:43:59 +02:00
Serhii Snitsaruk
11abf36c99
Clang format
2024-10-13 20:25:03 +02:00
Serhii Snitsaruk
19d771fef2
Merge pull request #229 from monxa/tasktree-search
...
Implement Tree Search Functionality with Highlighting and Filtering
2024-10-13 11:18:37 -07:00
Serhii Snitsaruk
2b89d1d23e
Merge pull request #233 from limbonaut/gha-fix-macos-vulkan
...
GHA: Fix Vulkan SDK installation step
2024-10-13 10:48:31 -07:00
Serhii Snitsaruk
6f318b83b8
GHA: Fix Vulkan SDK installation step
2024-10-13 18:25:54 +02:00
Serhii Snitsaruk
7a1b56f9c8
GHA: Switch workflows to Godot 4.3 branch
2024-10-13 17:06:25 +02:00
Alexander Montag
2b86928737
Add tooltip to explain case sensitivity behavior
2024-10-13 07:02:59 +00:00
Alexander Montag
8c557f87f7
Address 2. review for TreeSearch
...
Remove redundant comment
Prune tab_search_context
Fix restore tab on `_tab_closed`
Add break statement
Pass callable by reference in _draw_highlight_item
Refactor _initialize_controls into constructor
Remove redundant if (!line_edit_search)-check
2024-10-13 07:31:35 +02:00
Alexander Montag
6776319472
Implement Tree Search Functionality with Highlighting and Filtering
...
This commit introduces a comprehensive Tree Search feature, including:
- Tree highlighting: Highlights items that match the search query.
- Tree filtering: Filters items so only matches and descendants are
shown.
- Counting descendants: Shows the number of matching items within collapsed branches.
- Jump to next match: on enter.
- (Limbo-)Shortcut: Default CTRL-F.
- Menu entry: Misc->Search Tree.
- Remember separate SearchInfo for each tab.
Key implementation details:
- Optimized performance for large trees
- Implemented recursive filtering for efficiency
- Added UI elements including next/previous match buttons
Development History:
- Initial implementation of highlighting and filtering
- Multiple rounds of performance optimization
- Bug fixes and refactoring for correctness
- UI enhancements and polish
- Code cleanup and style improvements
2024-10-06 06:57:11 +02:00
Serhii Snitsaruk
760af804c0
Merge pull request #230 from limbonaut/fix-docs
...
Fix and update docs
2024-09-30 12:36:57 +02:00
Serhii Snitsaruk
c49e5142a5
Fix and update docs
2024-09-30 11:17:01 +02:00
Serhii Snitsaruk
60a767032e
Merge pull request #226 from limbonaut/fix-hsm-exit-crash
...
Fix invalid access errors on exit in LimboHSM
2024-09-26 16:54:31 +02:00
Serhii Snitsaruk
2e0047bb59
Call both native and script's `_setup()` in BTTask
...
Current behavior is overriding, which is not correct as it's an initializer function.
2024-09-22 14:49:46 +02:00
Serhii Snitsaruk
60142b191d
Fix invalid access crash on exit in LimboHSM
...
Since #131 , `LimboState::_exit()` became a source of potential crashes
if object references are used without a validity check. It's too easy
to miss this, which can lead to game crashing during runtime.
This fix reverts #131 change and proposes alternative approach of
re-activating root HSM upon tree entering if it was previously active.
Note that it's not an ideal solution, as some state will be lost upon
re-parenting: HSM exits and then re-activates and enters its initial state.
2024-09-22 13:57:15 +02:00
Serhii Snitsaruk
134bb3214a
Merge pull request #225 from ydeltastar/remember-last-session
...
Remember loaded `BehaviorTree`s of last session
2024-09-22 13:32:56 +02:00
yds
db7c990f51
Remember loaded BehaviorTrees of last session
2024-09-21 16:23:13 -03:00
Serhii Snitsaruk
08884e6180
Merge pull request #219 from monxa/fix-miscmenu-layout-duplicates
...
Fix duplicate entries in Misc->Layout
2024-09-17 14:42:01 +02:00
Alexander Montag
c2130a7b2f
Fix duplicate entries in Misc->layout
...
Fixes #218
2024-09-17 02:16:47 +02:00
Serhii Snitsaruk
5ddc43fe94
Merge pull request #215 from limbonaut/prefetch-with-base-plan
...
Prefetch nodes set directly in the BehaviorTree's BlackboardPlan
2024-09-15 17:06:55 +02:00
Serhii Snitsaruk
601aed3684
Merge pull request #216 from limbonaut/gha-debug-builds
...
GHA: Add an option to create GDExtension debug builds
2024-09-15 16:23:08 +02:00
Serhii Snitsaruk
0e4c06f3b8
Update class docs
2024-09-15 15:47:22 +02:00
Serhii Snitsaruk
ac2d734122
Use different prefetch root for the base plan in BTPlayer and BTState
2024-09-15 15:47:11 +02:00
Serhii Snitsaruk
1ca1154cd0
Merge pull request #214 from limbonaut/fix-warnings
...
Fix loop variables used as copy
2024-09-15 14:36:36 +02:00
Serhii Snitsaruk
a8a0f24492
BlackboardPlan: Allow passing different prefetch root for the base plan
2024-09-15 14:16:54 +02:00
Serhii Snitsaruk
50e9e570dd
Fix loop variables used as copy
2024-09-15 13:32:58 +02:00
Serhii Snitsaruk
d72c2e0648
Merge pull request #213 from limbonaut/fix-setagentprop-name
...
Fix `BTSetAgentProperty` name generation
2024-09-14 20:23:58 +02:00
Serhii Snitsaruk
da2bc5e3bb
Fix `BTSetAgentProperty` name generation
2024-09-14 19:56:31 +02:00
Serhii Snitsaruk
c4481d8bed
Merge pull request #212 from limbonaut/fix-bbnode-getvalue-crash
...
Fix `BBNode::get_value()` crash with a freed object using GDExtension
2024-09-14 19:49:29 +02:00
Serhii Snitsaruk
689c8fab6f
Fix `BBNode::get_value()` crash with a freed object in GDExtension
...
It may be a bug in GDExtension. I optimized the code, and, as a workaround, removed casting to Object* from Variant. This fixed the issue. The same code worked well using module.
2024-09-14 19:30:28 +02:00
Serhii Snitsaruk
fd0eb34b4e
Merge pull request #211 from limbonaut/fix-bt-for-each
...
Fix `BTForEach` crash if elements are removed from the array during iteration
2024-09-14 17:00:10 +02:00
Serhii Snitsaruk
bfcc2f8e1b
Merge pull request #210 from ydeltastar/multi-select
...
Implement task multiple selection and drag and drop
2024-09-14 16:54:07 +02:00
Serhii Snitsaruk
b8c9db0d44
Fix BTForEach crash if elements are removed from the array during iteration
2024-09-14 16:42:30 +02:00
yds
4df6647a75
Improve multiple drag and drop
2024-09-14 11:22:52 -03:00
Serhii Snitsaruk
d78adabf7c
Bump version to 1.3-dev
2024-09-13 14:13:00 +02:00
yds
1742018696
Preserve selection after drop
2024-09-13 09:04:18 -03:00
yds
a460c7898b
Add drag preview
2024-09-13 09:04:18 -03:00
yds
8ee3688da2
Implement task multiple selection and drag and drop
2024-09-13 09:04:18 -03:00
Serhii Snitsaruk
9032ca0c7b
GHA: Add an option to create GDExtension debug builds
2024-09-09 13:53:42 +02:00
Serhii Snitsaruk
1cb85807dd
Fix mem leaks in the demo
2024-09-09 10:22:32 +02:00
Serhii Snitsaruk
78396708d4
Bump version to 1.2.1
2024-09-05 13:52:42 +02:00
Serhii Snitsaruk
6c86ce566c
Merge pull request #206 from limbonaut/gdextension-print-workaround
...
Override _to_string() to give useful info about objects in GDExtension
2024-09-05 13:48:57 +02:00
Serhii Snitsaruk
16a3bb0273
Override _to_string() to print useful info about objects in GDExtension
2024-09-05 13:39:47 +02:00
Serhii Snitsaruk
ac209e7fc3
Update .gitignore
2024-09-05 11:37:18 +02:00
Serhii Snitsaruk
49b3a0ad6f
Merge pull request #205 from monxa/fix-editor-setting-gdextension
...
Generalize EDITOR_DEF macro to fix potential editor setting issues
2024-09-03 17:18:46 +02:00
Alexander Montag
ad11f401b1
Generalize EDITOR_DEF macro to fix potential editor setting issues
...
This commit provides a generalized solution to ensure editor settings are
properly initialized and available in both module and GDExtension versions.
While #204 fixed the specific issue with 'limbo_ai/editor/layout', this change
aims to prevent similar problems for all editor settings.
In particular, `limbo_ai/editor/prefer_online_documentation` was also not
available.
Changes:
- Updated EDITOR_DEF macro to handle both module and GDExtension cases
- Remove special case for `limbo_ai/editor/layout` in
LimboAiEditorPlugin from earlier fix.
2024-09-03 16:37:54 +02:00
Serhii Snitsaruk
d972b2e7ff
Merge pull request #204 from monxa/fix-editor-setting-gdextension
...
Fix editor setting initialization for GDExtensions
2024-09-03 02:23:28 +02:00