Serhii Snitsaruk
85eda3c804
Tests for per-transition guards
2024-11-01 14:59:10 +01:00
Serhii Snitsaruk
6de8b9e4c4
Merge pull request #227 from limbonaut/fix-bttask-setup-overriding
...
Call both native and script `_setup/_enter/_exit` in BTTask
2024-11-01 06:19:13 -07:00
Serhii Snitsaruk
bbe71bb378
Add transition guards
2024-11-01 14:00:30 +01:00
Serhii Snitsaruk
7feff38d6b
Call both native and script _enter/_exit in BTTask
2024-11-01 13:50:08 +01:00
Serhii Snitsaruk
632e26c922
Call both native and script's `_setup()` in BTTask
...
Current behavior is overriding, which is not correct as it's an initializer function.
2024-11-01 13:42:49 +01:00
Serhii Snitsaruk
106608aca9
Merge pull request #239 from limbonaut/fix-clone-bttask-and-arrays
...
Duplicate `BBParam` instances in typed arrays in `BTTask::clone()`
2024-10-28 09:17:39 -07:00
Serhii Snitsaruk
d5bc62830a
Duplicate BBParam instances inside arrays in `BTTask::clone()`
...
Fixes issue with `CallMethod` arguments being shared between tasks after duplication.
2024-10-28 15:06:29 +01:00
Serhii Snitsaruk
3b15abf2c9
GHA: Fix vulkan sdk in ios packaging
2024-10-19 22:09:03 +02:00
Serhii Snitsaruk
6d049a3701
Merge pull request #237 from limbonaut/gha-ios-vulkan
...
GHA: Fix Vulkan SDK on iOS
2024-10-19 11:35:28 -07:00
Serhii Snitsaruk
65454c36a8
GHA: Fix Vulkan SDK on iOS
2024-10-19 20:04:48 +02:00
Serhii Snitsaruk
e0e15b0ec4
Merge pull request #163 from limbonaut/gha-gdext-ios
...
GHA: Build iOS GDExtension libraries
2024-10-17 06:23:06 -07:00
Serhii Snitsaruk
ee8c773e71
GHA: Build with ios_simulator=yes flag
2024-10-16 14:32:39 +02:00
Serhii Snitsaruk
7f38fe2b8b
GHA: Change iOS arch to arm64 & build simulator libs
2024-10-16 14:32:39 +02:00
Serhii Snitsaruk
500775eb14
Add iOS builds to the GDExtension manifest
2024-10-16 14:32:39 +02:00
Serhii Snitsaruk
1cdde4d5a9
GHA: Add iOS builds to GDExtension workflow
2024-10-16 14:31:56 +02: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
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