Wilson E. Alvarez
c4597c1cbd
Fix forbidden comparisons between Ref and nullptr.
...
Necessary when compiling with strict_checks=yes.
Due to upstream change:
df29cc696f
2024-12-18 17:42:10 -05:00
Serhii Snitsaruk
08d8fcdf92
Don't show binding/mapping for hidden variables
2024-11-15 18:50:42 +01:00
Serhii Snitsaruk
51878e4b6e
Limit a variable to either binding or mapping, but not both at once
2024-11-15 18:15:40 +01:00
Serhii Snitsaruk
008702b1e4
Fix template compilation
2024-11-11 11:43:26 +01:00
Serhii Snitsaruk
6e8c22d598
Clean up & strengthen code
2024-11-11 10:24:14 +01:00
Serhii Snitsaruk
0b3b11a383
Enable binding in BehaviorTree-owned blackboard plan
2024-11-11 10:13:41 +01:00
Serhii Snitsaruk
ea671dd54b
Improve binding presentation within inspector, fix compilation issues
2024-11-11 09:49:01 +01:00
Serhii Snitsaruk
bc7f677810
Specialized inspector property editor for NodePath
2024-11-11 08:24:54 +01:00
Serhii Snitsaruk
057d4e669c
Bind variables to scene node properties upon runtime Blackboard creation
2024-11-10 19:58:35 +01:00
Serhii Snitsaruk
f600d633a3
Store property bindings in BlackboardPlan
2024-11-10 19:08:56 +01: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
a8a0f24492
BlackboardPlan: Allow passing different prefetch root for the base plan
2024-09-15 14:16:54 +02:00
Serhii Snitsaruk
43035839b1
Don't warn of mismatch between Object & NodePath
2024-08-16 00:44:37 +02:00
Serhii Snitsaruk
cfacd57f15
Warn about type mismatch when populating blackboard
2024-08-15 23:41:39 +02:00
Serhii Snitsaruk
000f9c15d8
Fix BTState overwriting blackboard variables on init
2024-08-15 23:41:36 +02:00
Serhii Snitsaruk
e12beee51e
Fix mapping failing for NodePath variables with prefetch enabled
2024-08-14 20:34:56 +02:00
Serhii Snitsaruk
3ceedbebad
Fix BlackboardPlan arrays shouldn't be shared between instanced agents
...
Variable values are deep copied now using Variant.duplicate(true). Note that currently it doesn't duplicate objects.
2024-07-06 10:04:36 +02:00
Wilson E. Alvarez
d2ca303c5e
Fix List<T> access
...
Due to upstream change:
955d5affa8
2024-06-29 14:52:05 -04:00
Serhii Snitsaruk
29532113c0
Change to typed array in `BlackboardPlan::list_vars`
2024-05-31 11:57:27 +02:00
Serhii Snitsaruk
7ab7a9d098
BlackboardPlan: Improve inspector update while manually typing in mappings
...
Fixes property glitches observed while a map variable is typed in.
2024-05-17 21:54:50 +02:00
Serhii Snitsaruk
dc77ecd2b2
Fix `parent_scope` argument in `create_blackboard` should have a default value
2024-05-17 10:36:25 +02:00
Serhii Snitsaruk
d08018b7b1
BlackboardPlan: Update mapping after variable renamed
...
Currently, only for owned variables, not parent's.
2024-05-17 10:00:12 +02:00
Serhii Snitsaruk
d920060dee
Update class documentation
2024-05-15 20:58:38 +02:00
Serhii Snitsaruk
2718271bb1
Clean up & renames
2024-05-15 20:43:24 +02:00
Serhii Snitsaruk
c6b1a40627
BlackboardPlan: Update inspector upon mapping editing finished
2024-05-15 12:52:50 +02:00
Serhii Snitsaruk
a572613001
BlackboardPlan: Utilize mapping in LimboHSM
...
Also changes how parent plan providing is implemented (used for editor hints).
2024-05-15 11:38:53 +02:00
Serhii Snitsaruk
3b12288ae0
BlackboardPlan: Serialize only non-empty mapping values
2024-05-14 20:25:18 +02:00
Serhii Snitsaruk
a1cdff2e2e
Fix issues with mapping in BTSubtree
2024-05-14 19:47:05 +02:00
Serhii Snitsaruk
0d1e846d93
BlackboardPlan: Use mapping with BTSubtree
2024-05-14 11:39:32 +02:00
Serhii Snitsaruk
2d493a76bd
BlackboardPlan: Improve mapping and serialize
2024-05-14 09:29:56 +02:00
Serhii Snitsaruk
bdfe5f52c2
BlackboardPlan: Implement rudimentary mapping
2024-05-13 23:21:55 +02:00
Serhii Snitsaruk
302de87e32
Prevent using external resources for derived blackboard plans in `BTPlayer` and `BTState`
2024-04-01 15:25:54 +02:00
Serhii Snitsaruk
d48daf2135
BlackboardPlan: Avoid circular references in derived mode
...
If the same plan resource is assigned in BehaviorTree and in BTPlayer, simply use the resource as is. Using the same resource for `BehaviorTree` and `BTPlayer` will disable derived mode, and allow managing from `BTPlayer` . There is a risk of using `NodePath` variables with different scenes: the path may actually be different if node structure is not the same. It will lead to fetching breaking for some of those scenes.
2024-04-01 01:45:40 +02:00
Serhii Snitsaruk
a5aea72a17
Plan: Fix syncing derived plan sometimes fails on var rename
2024-03-25 01:04:07 +01:00
Serhii Snitsaruk
1de6256401
Plan: Don't store unmodified variables in a derived plan
...
Fixes "sticky" old values in a derived plan.
2024-03-25 00:56:08 +01:00
Serhii Snitsaruk
cbd467f97f
Blackboard: Assigning variables via code might have no effect if done before initialization
2024-03-13 22:00:50 +01:00
Serhii Snitsaruk
06ebff7518
Fix includes and build errors
2024-03-12 21:09:28 +01:00
Serhii Snitsaruk
ca6b497019
Sync order of variables in derived `BlackboardPlan`
2024-03-12 17:11:01 +01:00
Serhii Snitsaruk
a6e6b53e18
Improve prefetching
2024-03-12 00:30:38 +01:00
Serhii Snitsaruk
e2edb083ff
When prefetch fails, don't print error if variable is on blackboard
2024-03-11 22:12:44 +01:00
Serhii Snitsaruk
b09006a11b
Fix issues with blackboard plan system
2024-03-11 18:58:40 +01:00
Serhii Snitsaruk
9957ef2ea7
Expose additional `BlackboardPlan` methods for custom tooling
2024-03-08 15:33:28 +01:00
Serhii Snitsaruk
2658060b1c
Move prefetching code into `BlackboardPlan` and add checkbox to the plan editor
2024-03-06 21:28:06 +01:00
Serhii Snitsaruk
4c26583007
Remove "p_" from the argument names in the `ClassDB` bindings
2024-03-04 21:36:16 +01:00
Serhii Snitsaruk
d66f1e83fd
Refactor BlackboardPlan to use StringName
...
Also update demo BTs.
2024-03-04 16:56:57 +01:00
Serhii Snitsaruk
bb6fab7555
API: Expose BlackboardPlan factory methods
2024-03-02 16:06:32 +01:00
Serhii Snitsaruk
2d98a38ada
Fix "Manage" button is sometimes shown for derived plans
2024-02-29 15:45:59 +01:00
Serhii Snitsaruk
95c2496adf
Improve variable synchronization between base and derived blackboard plans
...
When variable is altered in the base plan, values should properly sync to the derived plans if those vars are not altered in the derived plan. Editor QoL improvement.
2024-02-09 13:58:54 +01:00
Serhii Snitsaruk
61ef929411
Editor: Don't allow variables with the same names as Resource props
2024-01-29 10:32:32 +01:00
Serhii Snitsaruk
174810fb34
Editor: Validate var name in BlackboardPlanEditor
2024-01-28 20:15:42 +01:00