diff --git a/spine-godot/example/examples/11-bone-node/bone-node.tscn b/spine-godot/example/examples/11-bone-node/bone-node.tscn index 16e237913..28508144b 100644 --- a/spine-godot/example/examples/11-bone-node/bone-node.tscn +++ b/spine-godot/example/examples/11-bone-node/bone-node.tscn @@ -10,11 +10,13 @@ script = ExtResource( 1 ) position = Vector2( 63, 549 ) scale = Vector2( 0.278096, 0.278096 ) skeleton_data_res = ExtResource( 2 ) +preview_animation = "hoverboard" +preview_frame = true +preview_time = 0.0 [node name="HoverboardCenterBone" type="SpineBoneNode" parent="SpineSprite"] position = Vector2( -6.26196, -111.618 ) rotation = -0.0046904 -scale = Vector2( 1, 1 ) bone_name = "hoverboard-controller" bone_mode = 1 @@ -34,7 +36,6 @@ cast_to = Vector2( 0, 1000 ) [node name="HipBone" type="SpineBoneNode" parent="SpineSprite"] position = Vector2( -36.9481, -338.198 ) rotation = 3.14072 -scale = Vector2( 1, 1 ) bone_name = "hip" bone_mode = 1 diff --git a/spine-godot/spine_godot/SpineSprite.cpp b/spine-godot/spine_godot/SpineSprite.cpp index 182b931aa..ff827a253 100644 --- a/spine-godot/spine_godot/SpineSprite.cpp +++ b/spine-godot/spine_godot/SpineSprite.cpp @@ -269,7 +269,7 @@ void SpineSprite::_get_property_list(List* list) const { PropertyInfo preview_anim_property; preview_anim_property.name = "preview_animation"; preview_anim_property.type = Variant::STRING; - preview_anim_property.usage = PROPERTY_USAGE_EDITOR; + preview_anim_property.usage = PROPERTY_USAGE_EDITOR | PROPERTY_USAGE_STORAGE; preview_anim_property.hint_string = String(",").join(animation_names); preview_anim_property.hint = PROPERTY_HINT_ENUM; list->push_back(preview_anim_property); @@ -277,13 +277,13 @@ void SpineSprite::_get_property_list(List* list) const { PropertyInfo preview_frame_property; preview_frame_property.name = "preview_frame"; preview_frame_property.type = Variant::BOOL; - preview_frame_property.usage = PROPERTY_USAGE_EDITOR; + preview_frame_property.usage = PROPERTY_USAGE_EDITOR | PROPERTY_USAGE_STORAGE; list->push_back(preview_frame_property); PropertyInfo preview_time_property; preview_time_property.name = "preview_time"; preview_time_property.type = VARIANT_FLOAT; - preview_time_property.usage = PROPERTY_USAGE_EDITOR; + preview_time_property.usage = PROPERTY_USAGE_EDITOR | PROPERTY_USAGE_STORAGE; float animation_duration = 0; if (!EMPTY(preview_animation) && preview_animation != "-- Empty --") { auto animation = skeleton_data_res->find_animation(preview_animation); @@ -330,6 +330,7 @@ bool SpineSprite::_set(const StringName& property, const Variant& value) { if (property == "preview_animation") { preview_animation = value; update_preview_animation(this, preview_animation, preview_frame, preview_time); + NOTIFY_PROPERTY_LIST_CHANGED(); return true; }