Serhii Snitsaruk
0ea8b9932c
Debugger: Implement selective tree update in BehaviorTreeView
...
Flame graph showed performance bottleneck with recreating and redrawing the whole tree each frame.
This commit should improve debugger performance by a good margin.
2024-02-17 11:43:31 +01:00
Wilson E. Alvarez
1711cb6b87
Fix crash upon increasing TypedArray<BBVariant> size
...
Needed after upstream patch:
db7175458a
2024-02-16 10:46:42 -05:00
Serhii Snitsaruk
654eda1c65
Better error handling when resolving _generate_name
2024-02-10 15:05:50 +01:00
Serhii Snitsaruk
d38e6f97f1
Editor: Implement Cut-Copy-Paste
...
Resolves #14
2024-02-08 17:16:26 +01:00
Serhii Snitsaruk
6405f9031b
Fix shortcuts not working in the module version
...
Resolves #27
2024-02-07 12:36:59 +01:00
Serhii Snitsaruk
16840057a1
Editor: More space and align to right for BehaviorTreeView timings
2024-02-06 15:44:25 +01:00
Serhii Snitsaruk
a353e561de
Editor: More space for timings in BehaviorTreeView
2024-02-06 14:54:18 +01:00
Serhii Snitsaruk
d0c7d98fc4
Editor: Clip content in BehaviorTreeView
2024-02-04 16:23:15 +01:00
Serhii Snitsaruk
8dc645c9a7
Fix issues and update docs for BehaviorTreeData/View
2024-02-03 17:53:12 +01:00
Serhii Snitsaruk
c5b92aa676
Expose BehaviorTreeView for tools and in-game use
2024-02-03 16:59:51 +01:00
Serhii Snitsaruk
3e32051791
Editor: Remember collapsed items in task tree
2024-02-02 16:46:26 +01:00
Serhii Snitsaruk
b4ab521e0f
Editor: Improve tooltips in the property editors
2024-01-29 10:26:13 +01:00
Serhii Snitsaruk
ee0795269d
Editor: Fix issues with property editors & remove old docs
2024-01-29 10:16:24 +01:00
Serhii Snitsaruk
656bc169b0
Editor: Scroll to focus when adding a var in Blackboard Plan editor
2024-01-28 22:25:31 +01:00
Serhii Snitsaruk
c44648c69c
Fix nullptr crash
2024-01-28 22:00:47 +01:00
Serhii Snitsaruk
011040e46f
Editor: Distinguish private variables in the inspector
2024-01-28 21:58:18 +01:00
Serhii Snitsaruk
87a1687c74
BlackboardPlanEditor: Focus on added var and autofill name
2024-01-28 21:03:22 +01:00
Serhii Snitsaruk
174810fb34
Editor: Validate var name in BlackboardPlanEditor
2024-01-28 20:15:42 +01:00
Serhii Snitsaruk
7ac1bc2dec
Use variable property editor within the param property editor
2024-01-28 19:24:59 +01:00
Serhii Snitsaruk
73f51f23ef
Implement BB variable property editor
2024-01-28 17:49:38 +01:00
Serhii Snitsaruk
a6717ec76d
Editor: Show only relevant hints for the chosen variant type in the Blackboard Plan editor
2024-01-26 16:47:45 +01:00
Serhii Snitsaruk
761b211740
Editor: Mark behavior tree as dirty when blackboard plan changes
2024-01-26 16:47:26 +01:00
Serhii Snitsaruk
f912f0acc4
Usability improvements
2024-01-25 22:58:21 +01:00
Serhii Snitsaruk
5fee89b00b
Make blackboard improvements compatible with GDExtension
2024-01-25 19:46:27 +01:00
Serhii Snitsaruk
8155c2764a
Refactoring and clean up
2024-01-25 14:35:48 +01:00
Serhii Snitsaruk
06052332b2
BlackboardPlanEditor: Fixes and clean up
2024-01-25 11:08:35 +01:00
Serhii Snitsaruk
15e0323919
Implement BlackboardPlan editor
2024-01-24 23:11:09 +01:00
Serhii Snitsaruk
390d4a9385
New and improved workaround for the missing ClassDB::add_virtual_method
2024-01-17 22:46:48 +01:00
Serhii Snitsaruk
c5be3a725f
Editor: Links to "Creating custom tasks" doc page in the editor
2024-01-17 15:51:24 +01:00
Serhii Snitsaruk
27d3ec7555
Editor: Show alert about editing project settings in GDExtension
2024-01-17 15:17:22 +01:00
Serhii Snitsaruk
dc8dcf9d71
Add action banner if native method override warning is set to Error
2024-01-17 14:49:43 +01:00
Serhii Snitsaruk
17a480ed19
Utilize space better with BBParam property editor
...
For types that need more space, the bottom editor will be used instead. In effect also for string parameters with @export_multiline.
2024-01-15 21:57:31 +01:00
Serhii Snitsaruk
61790085cc
Fix editor shortcuts not working
2024-01-14 23:50:35 +01:00
Serhii Snitsaruk
80781db7cd
Fix compilation issues related to open_doc_*()
2024-01-14 16:54:08 +01:00
Serhii Snitsaruk
cbbc0b0135
Link to online docs in the code
2024-01-13 22:40:27 +01:00
Serhii Snitsaruk
f546e285b7
Refactor and clean up the code
2024-01-13 17:10:42 +01:00
Serhii Snitsaruk
21b5053b72
Rename window wrapper
2024-01-11 15:38:29 +01:00
Serhii Snitsaruk
52f218e6b9
Don't compile editor classes into template builds
2024-01-11 11:22:02 +01:00
Serhii Snitsaruk
e6c87be723
Fix various bugs and unit tests
2024-01-11 00:31:42 +01:00
Serhii Snitsaruk
0e37d3dfa3
Fix module compilation
2024-01-10 22:45:42 +01:00
Serhii Snitsaruk
ac3da5ab90
Handle resource reloading (or for GDExtension - don't)
2024-01-10 20:00:04 +01:00
Serhii Snitsaruk
8e9cc74857
Fix: User icons are not showing in the task palette
2024-01-10 19:16:43 +01:00
Serhii Snitsaruk
59537138bc
Fix: Create script template not working as expected
2024-01-10 15:23:04 +01:00
Serhii Snitsaruk
a8dc78765b
Restore icons
2024-01-10 01:17:09 +01:00
Serhii Snitsaruk
960f04b0ab
Fix Forward button icon and crash
2024-01-10 00:02:24 +01:00
Serhii Snitsaruk
c1d0353798
Don't show "Open debugger" in GDExtension
2024-01-09 21:59:09 +01:00
Serhii Snitsaruk
a9a38bbffb
Port debugger
2024-01-09 21:47:22 +01:00
Serhii Snitsaruk
d1030b877c
Project config file macro
2024-01-09 15:23:02 +01:00
Serhii Snitsaruk
59a8ab97d8
chore: Rename macro LSNAME to LW_NAME
2024-01-09 13:42:54 +01:00
Serhii Snitsaruk
9645baeb30
Port LimboAI plugin and editor
2024-01-09 13:34:24 +01:00
Serhii Snitsaruk
bb346ef5f2
Port TaskTree
2024-01-07 21:20:51 +01:00
Serhii Snitsaruk
97daa29eda
Port TaskPalette
...
Not even sure if it works, since I need other bits before I test it.
2024-01-07 17:33:05 +01:00
Serhii Snitsaruk
73497b1908
Port ModSwitchButton
2024-01-07 13:45:27 +01:00
Serhii Snitsaruk
f9ad9cc794
Port ActionBanner
2024-01-07 13:36:59 +01:00
Serhii Snitsaruk
3d86a76db9
Port BehaviorTreeView
2024-01-07 06:51:34 +01:00
Serhii Snitsaruk
0767c0eee1
Port BTPlayer and LimboDebugger (game-side part)
2024-01-07 02:40:51 +01:00
Serhii Snitsaruk
3f61204961
Open BehaviorTree in the BT editor when its property is clicked in the inspector
2023-12-18 15:49:20 +01:00
Serhii Snitsaruk
35f1dabe93
Editor: Add "Extract Subtree" action
...
Supports undo-redo, but it doesn't remove the newly created file automatically.
2023-12-17 15:24:38 +01:00
Serhii Snitsaruk
a2a2ba1f7b
TaskPalette: Shift+Click to add task after the selected and on the same level as the selected task.
2023-12-17 14:26:38 +01:00
Serhii Snitsaruk
c20e0dfc2d
Don't focus on buttons in Task Palette
2023-12-17 13:59:03 +01:00
Serhii Snitsaruk
9abf8a084f
Fix debugger's "elapsed" column not always has enough space for decimals
...
Closes #5 .
2023-12-16 11:12:47 +01:00
Serhii Snitsaruk
ed72784766
Add a header label for "Change Type" popup
2023-12-14 23:51:48 +01:00
Serhii Snitsaruk
08a8ef9c77
Disable some task palette functionality when it is in dialog mode
2023-12-14 23:38:02 +01:00
Serhii Snitsaruk
f94aca4433
Add "Change Type" popup and menu action
2023-12-14 23:18:44 +01:00
Serhii Snitsaruk
fb8585282d
Debugger: Add the resource header control with a path to the BehaviorTree for the currently debugged instance.
2023-12-12 23:37:28 +01:00
Serhii Snitsaruk
dfa332490a
Add object(resource) support for variant param editor
2023-12-10 16:32:41 +01:00
Serhii Snitsaruk
678df76c65
Hide type choice when editing variable name
2023-12-10 15:58:57 +01:00
Serhii Snitsaruk
2fc5732ed8
Fix param type button not updated when property is reset
2023-12-10 15:50:03 +01:00
Serhii Snitsaruk
949583a6b4
Change type choice position, appearance and tooltip
2023-12-10 14:51:52 +01:00
Serhii Snitsaruk
106abe0b5a
Add support for variant param editing and fix bug with ModeSwitchButton
2023-12-10 14:35:28 +01:00
Serhii Snitsaruk
7bce63fbcb
Remove separation in param editor
2023-12-09 21:28:20 +01:00
Serhii Snitsaruk
91ed8bfe3d
Implement mode switch button for BB parameters
2023-12-09 19:31:51 +01:00
Serhii Snitsaruk
b4bef31df5
Add property editor for blackboard parameters
2023-12-08 21:56:14 +01:00
Serhii Snitsaruk
60012d984b
Fix drag & drop position in the same branch
...
Also, refactor get_child_index() into get_index().
2023-11-22 13:05:55 +01:00
Serhii Snitsaruk
52a8dc2a0b
Merge branch 'godot42'
2023-10-30 10:26:40 +01:00
Serhii Snitsaruk
dca3ba38c0
Fix error when trying to add fav task while no BT is edited
2023-10-29 13:45:32 +01:00
Serhii Snitsaruk
f9f930133f
Fix Script includes
2023-10-28 13:09:03 +02:00
Serhii Snitsaruk
bf91be1ff1
Fix StyleBoxFlat includes
2023-10-28 13:08:26 +02:00
Serhii Snitsaruk
2b13c24277
Add "Introduction" menu item linking to BehaviorTree doc
2023-10-24 15:44:18 +02:00
Serhii Snitsaruk
0c325e3660
Increase help tooltip maximum characters to 1400
2023-09-28 13:57:27 +02:00
Serhii Snitsaruk
953d98f89c
Add probability icon
2023-09-26 16:28:53 +02:00
Serhii Snitsaruk
b5a44c0807
Fix BTProbabilitySelector showing probability for comments
2023-09-26 16:28:47 +02:00
Serhii Snitsaruk
27254581a4
Fix Probability popup stuck with ghost value
2023-09-26 11:10:23 +02:00
Serhii Snitsaruk
1df821fdfa
Allow editing weight as percent in Probability popup
2023-09-25 22:36:37 +02:00
Serhii Snitsaruk
52a70fdee5
Add editor support for BTProbabilitySelector
2023-09-25 18:07:26 +02:00
Serhii Snitsaruk
22d82d7c02
Fix "Edit Script" in task palette not switching workspace
2023-09-20 10:32:38 +02:00
Serhii Snitsaruk
e7687d7a57
Update demo and remove debug prints
2023-09-19 15:29:29 +02:00
Serhii Snitsaruk
9a4fd8ad12
Update script template
2023-09-19 15:29:29 +02:00
Serhii Snitsaruk
97eee2a801
Fix not registering BT instance with debugger when BTPlayer is removed and then added to SceneTree
2023-09-09 13:37:09 +02:00
Serhii Snitsaruk
a625173786
Cache theme items at LimboDebuggerPluggin
2023-08-29 12:54:38 +02:00
Serhii Snitsaruk
8dd61357da
Cache theme items in TaskPalette
2023-08-29 12:44:40 +02:00
Serhii Snitsaruk
235d596e59
Cache theme items in LimboAIEditor
2023-08-29 12:44:40 +02:00
Serhii Snitsaruk
e794436c69
Cache theme items in TaskTree
2023-08-29 12:44:40 +02:00
Serhii Snitsaruk
4ff1b874f3
Assign "bold" font to tasks with custom name set in BT debugger
...
Also, fixes resources used without Ref in debugger view.
2023-08-29 12:44:31 +02:00
Serhii Snitsaruk
5a0ff91658
Fix task disappearing on drag & drop
2023-08-28 16:22:44 +02:00
Serhii Snitsaruk
df92ea02f0
Remove hard-coded BTComment from toolbar and add it to favorite default instead
2023-08-28 13:23:25 +02:00
Serhii Snitsaruk
e73d4b0959
TaskPalette: Remember filter settings in a project config.
...
Also, fixes ConfigFile usage without Ref.
2023-08-28 11:39:56 +02:00
Serhii Snitsaruk
60f1d12246
Add: Filter button pressed state reflects filter settings
2023-08-27 12:22:49 +02:00
Serhii Snitsaruk
8341396640
Fixes to filter popup and task palette
2023-08-26 19:42:17 +02:00
Serhii Snitsaruk
a601d44517
TaskPalette filter: Add background for category list
2023-08-26 16:57:18 +02:00
Serhii Snitsaruk
62f964474c
Filter tasks in TaskPalette by category and type
2023-08-26 15:41:11 +02:00
Serhii Snitsaruk
0bd60bae88
Extract TaskTree code
2023-08-26 10:24:08 +02:00
Serhii Snitsaruk
cff4626b2d
Extract TaskPanel code => TaskPalette
2023-08-26 10:08:01 +02:00
Serhii Snitsaruk
2ffcbf0565
Add `LimboTaskDB` to handle task categories and scanning user tasks
2023-08-25 17:32:46 +02:00
Serhii Snitsaruk
f489744755
Fix: Pressing keys after editor starts result in errors printed.
...
"scene/main/node.cpp:1748 - Parameter "p_node" is null."
2023-08-23 16:32:02 +02:00
Serhii Snitsaruk
067f73e11e
Add documentation tooltips for tasks in the panel
2023-08-23 13:06:18 +02:00
Serhii Snitsaruk
2fdcff4886
Show tasks without category in "Uncategorized" section
2023-08-22 15:20:24 +02:00
Serhii Snitsaruk
e2d596d44a
Show warning banner when favorite task is not found
2023-08-22 14:43:45 +02:00
Serhii Snitsaruk
24678e4332
Implement ActionBanner class for actionable editor alerts
2023-08-22 12:20:09 +02:00
Serhii Snitsaruk
4942173e5b
Implement "User task folder doesn't exist" warning
2023-08-21 18:17:34 +02:00
Serhii Snitsaruk
b33b0c6993
Add "Refresh" button to TaskPanel
2023-08-21 15:51:18 +02:00
Serhii Snitsaruk
00ed65f0fb
Use ProjectSettings path for script templates
2023-08-21 15:27:30 +02:00
Serhii Snitsaruk
4cabbc6082
Implement "Misc->Create Script Template"
2023-08-21 14:57:34 +02:00
Serhii Snitsaruk
1cb3b64a29
Add "Misc>Project Settings..." menu option
2023-08-21 11:51:19 +02:00
Serhii Snitsaruk
79c71d06f5
Add global shortcut for "Open Debugger" menu option
2023-08-20 11:49:33 +02:00
Serhii Snitsaruk
2afdb4bc95
Add "Open Debugger" menu option and "Misc" menu
2023-08-20 11:34:13 +02:00
Serhii Snitsaruk
e851011678
Rename dialog now says "Edit comment" for comments
2023-08-19 13:12:24 +02:00
Serhii Snitsaruk
0ae2b6869a
Don't count BTComment tasks for configuration warnings
2023-08-19 12:20:18 +02:00
Serhii Snitsaruk
a717a3ed8f
Add BTComment task
2023-08-18 21:38:28 +02:00
Serhii Snitsaruk
107b94fad6
Emphasize tasks with custom name set
2023-08-18 18:53:55 +02:00
Serhii Snitsaruk
5c3445236f
Implement: Add/Remove task favorites
...
Favorite tasks are tasks selected to be shown on the toolbar.
Order can be edited in the project settings.
2023-08-18 13:24:53 +02:00
Serhii Snitsaruk
b3dedc737e
Add a popup menu for tasks in the TaskPanel
...
Adds such menu items (similar to task popup menu):
- Edit Script
- Open Documentation
2023-08-17 18:14:24 +02:00
Serhii Snitsaruk
985c4812f3
Editor: Add "Open Documentation" popup menu option
2023-08-17 15:29:12 +02:00
Serhii Snitsaruk
a2b123a9be
Editor: Add "Edit Script" popup menu option
2023-08-17 11:41:40 +02:00
Serhii Snitsaruk
03d5de1482
Add keyboard shortcuts for most editor actions
2023-08-16 16:07:04 +02:00
Serhii Snitsaruk
8d89f80d6b
Handle theme change in the LimboAI editor
...
Also fixes warning: "Attempting to access theme items too early".
2023-08-16 11:19:51 +02:00
Serhii Snitsaruk
13f5eb1f71
Reorganize BT tasks
2023-08-15 17:49:13 +02:00
Serhii Snitsaruk
21c65541bf
Refactor BTTask.get_configuration_warnings()
2023-08-15 17:06:07 +02:00
Serhii Snitsaruk
e2b0bd91e2
Debugger: Add making debugger window floating
2023-08-02 12:13:00 +02:00
Serhii Snitsaruk
6699fa0627
Fix errors with compiling on windows
2023-07-29 09:40:38 +02:00
Serhii Snitsaruk
62e07e4395
Add MIT license - LimboAI is now Open Source!
2023-07-22 19:41:01 +02:00
Serhii Snitsaruk
d2eede3f76
Fix shadowing members in the module
2023-07-20 20:10:02 +02:00
Serhii Snitsaruk
5dc002098f
Reorganize files and sort includes
2023-07-20 18:35:36 +02:00
Serhii Snitsaruk
1a1a9cb57d
Don't compile debugger plugin for non-tools builds
2023-04-16 11:30:31 +02:00
Serhii Snitsaruk
2156a2e31c
Fix support for user script class icons
2023-04-16 08:26:47 +02:00
Serhii Snitsaruk
9abfeadc21
Implement basics of behavior tree debugger
2023-04-13 12:46:48 +02:00
Serhii Snitsaruk
9344bce9b1
Update and improve class documentation
2023-04-11 09:02:16 +02:00
Serhii Snitsaruk
ec2fd2b143
Fix drag&drop broken
2023-04-06 23:54:56 +02:00
Serhii Snitsaruk
eeac45b91f
Fix latest API issues
2023-03-02 15:41:01 +01:00
Serhii Snitsaruk
48f8918811
Add UndoRedo support for the BT editor
2022-12-22 13:19:39 +01:00
Serhii Snitsaruk
8f1824fd9e
Refactor LimboAI editor
2022-12-19 12:38:40 +01:00
Serhii Snitsaruk
ef7480b054
Fix editor crash related to bt resource reloading
2022-12-19 10:29:46 +01:00
Serhii Snitsaruk
d5088a9f20
Implement pascal case auto naming for tasks without _generate_name()
2022-12-17 21:18:11 +01:00
Serhii Snitsaruk
36bae84125
Fix rename dialog broken
2022-12-17 13:39:37 +01:00
Serhii Snitsaruk
c574334f6e
Cleanup and optimizations
2022-12-15 19:23:03 +01:00
Serhii Snitsaruk
d861a52833
Add placeholder text for filter edit
2022-12-15 18:44:42 +01:00
Serhii Snitsaruk
3d1873e329
Fix popup menu getting bad position
2022-12-15 18:29:22 +01:00
Serhii Snitsaruk
dbc9a7ad31
Add mostly minimal changes in order to compile and run with godot 4
2022-12-15 14:33:03 +01:00
Serhii Snitsaruk
71201a7389
Add placeholder text to rename dialog
2022-11-23 21:19:23 +01:00
Serhii Snitsaruk
fe2cf00c6c
Add task rename dialog
2022-11-23 16:25:32 +01:00