Merge pull request #177 from limbonaut/hide-update-mode

Hide `update_mode` property for non-root HSMs
This commit is contained in:
Serhii Snitsaruk 2024-07-31 15:26:45 +02:00 committed by GitHub
commit 09185211ff
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 16 additions and 4 deletions

View File

@ -15,6 +15,7 @@ dest_files=["res://.godot/imported/junction_bold.otf-4db2200a8b1a6423bafe2a4e7c7
Rendering=null Rendering=null
antialiasing=1 antialiasing=1
generate_mipmaps=false generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false multichannel_signed_distance_field=false
msdf_pixel_range=8 msdf_pixel_range=8
msdf_size=48 msdf_size=48

View File

@ -15,6 +15,7 @@ dest_files=["res://.godot/imported/knewave_regular.ttf-955953b059f713782c7b07e66
Rendering=null Rendering=null
antialiasing=1 antialiasing=1
generate_mipmaps=false generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false multichannel_signed_distance_field=false
msdf_pixel_range=8 msdf_pixel_range=8
msdf_size=48 msdf_size=48

View File

@ -234,18 +234,18 @@ unique_name_in_owner = true
custom_minimum_size = Vector2(0, 140) custom_minimum_size = Vector2(0, 140)
layout_mode = 2 layout_mode = 2
size_flags_vertical = 3 size_flags_vertical = 3
theme_override_font_sizes/bold_italics_font_size = 20
theme_override_font_sizes/italics_font_size = 20
theme_override_font_sizes/mono_font_size = 20
theme_override_font_sizes/normal_font_size = 20 theme_override_font_sizes/normal_font_size = 20
theme_override_font_sizes/bold_font_size = 20 theme_override_font_sizes/bold_font_size = 20
theme_override_font_sizes/italics_font_size = 20
theme_override_font_sizes/bold_italics_font_size = 20
theme_override_font_sizes/mono_font_size = 20
bbcode_enabled = true bbcode_enabled = true
text = "[b]Behavior Trees[/b] are composed of tasks that represent specific actions or decision-making rules. Tasks can be broadly categorized into two main types: control tasks and leaf tasks. Control tasks determine the execution flow within the tree. They include Sequence, Selector, and Invert. Leaf tasks represent specific actions to perform, like moving or attacking, or conditions that need to be checked. The BTTask class provides the foundation for various building blocks of the Behavior Trees. BT tasks can share data with the help of the Blackboard." text = "[b]Behavior Trees[/b] are composed of tasks that represent specific actions or decision-making rules. Tasks can be broadly categorized into two main types: control tasks and leaf tasks. Control tasks determine the execution flow within the tree. They include Sequence, Selector, and Invert. Leaf tasks represent specific actions to perform, like moving or attacking, or conditions that need to be checked. The BTTask class provides the foundation for various building blocks of the Behavior Trees. BT tasks can share data with the help of the Blackboard."
fit_content = true fit_content = true
[node name="CodePopup" type="PopupPanel" parent="UI Layer/Control"] [node name="CodePopup" type="PopupPanel" parent="UI Layer/Control"]
unique_name_in_owner = true unique_name_in_owner = true
position = Vector2i(135, 60) position = Vector2i(0, 60)
size = Vector2i(1024, 708) size = Vector2i(1024, 708)
visible = true visible = true

View File

@ -253,6 +253,13 @@ void LimboHSM::_initialize(Node *p_agent, const Ref<Blackboard> &p_blackboard) {
} }
} }
void LimboHSM::_validate_property(PropertyInfo &p_property) const {
if (p_property.name == LW_NAME(update_mode) && !is_root()) {
// Hide update_mode for non-root HSMs.
p_property.usage = PROPERTY_USAGE_NONE;
}
}
void LimboHSM::_notification(int p_what) { void LimboHSM::_notification(int p_what) {
switch (p_what) { switch (p_what) {
case NOTIFICATION_POST_ENTER_TREE: { case NOTIFICATION_POST_ENTER_TREE: {

View File

@ -64,6 +64,7 @@ protected:
static void _bind_methods(); static void _bind_methods();
void _notification(int p_what); void _notification(int p_what);
void _validate_property(PropertyInfo &p_property) const;
virtual void _initialize(Node *p_agent, const Ref<Blackboard> &p_blackboard) override; virtual void _initialize(Node *p_agent, const Ref<Blackboard> &p_blackboard) override;
virtual bool _dispatch(const StringName &p_event, const Variant &p_cargo = Variant()) override; virtual bool _dispatch(const StringName &p_event, const Variant &p_cargo = Variant()) override;

View File

@ -156,6 +156,7 @@ LimboStringNames::LimboStringNames() {
Tools = SN("Tools"); Tools = SN("Tools");
Tree = SN("Tree"); Tree = SN("Tree");
TripleBar = SN("TripleBar"); TripleBar = SN("TripleBar");
update_mode = SN("update_mode");
update_task = SN("update_task"); update_task = SN("update_task");
update_tree = SN("update_tree"); update_tree = SN("update_tree");
updated = SN("updated"); updated = SN("updated");

View File

@ -173,6 +173,7 @@ public:
StringName Tools; StringName Tools;
StringName Tree; StringName Tree;
StringName TripleBar; StringName TripleBar;
StringName update_mode;
StringName update_task; StringName update_task;
StringName update_tree; StringName update_tree;
StringName updated; StringName updated;