diff --git a/spine-godot/spine_godot/SpineAnimation.cpp b/spine-godot/spine_godot/SpineAnimation.cpp index ed54d460a..c1b31a6e8 100644 --- a/spine-godot/spine_godot/SpineAnimation.cpp +++ b/spine-godot/spine_godot/SpineAnimation.cpp @@ -48,7 +48,11 @@ void SpineAnimation::_bind_methods() { String SpineAnimation::get_name() { SPINE_CHECK(get_spine_object(), "") String name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + name = String::utf8(get_spine_object()->getName().buffer()); +#else name.parse_utf8(get_spine_object()->getName().buffer()); +#endif return name; } diff --git a/spine-godot/spine_godot/SpineAnimationTrack.cpp b/spine-godot/spine_godot/SpineAnimationTrack.cpp index a6965bbd3..018067a0f 100644 --- a/spine-godot/spine_godot/SpineAnimationTrack.cpp +++ b/spine-godot/spine_godot/SpineAnimationTrack.cpp @@ -40,9 +40,14 @@ #ifdef TOOLS_ENABLED #include "editor/editor_node.h" +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) +#include "editor/animation/animation_player_editor_plugin.h" +#include "editor/animation/animation_tree_editor_plugin.h" +#else #include "editor/plugins/animation_player_editor_plugin.h" #include "editor/plugins/animation_tree_editor_plugin.h" #endif +#endif void SpineAnimationTrack::_bind_methods() { ClassDB::bind_method(D_METHOD("set_animation_name", "animation_name"), &SpineAnimationTrack::set_animation_name); @@ -251,7 +256,11 @@ Ref SpineAnimationTrack::create_animation(spine::Animation *animation Ref animation_ref; INSTANTIATE(animation_ref); String name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + name = String::utf8(animation->getName().buffer()); +#else name.parse_utf8(animation->getName().buffer()); +#endif animation_ref->set_name(name + (loop ? "" : "_looped")); #if VERSION_MAJOR > 3 // animation_ref->set_loop(!loop); @@ -301,7 +310,11 @@ void SpineAnimationTrack::update_animation_state(const Variant &variant_sprite) auto current_entry = animation_state->getCurrent(track_index); bool should_set_mix = mix_duration >= 0; String other_name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + if (current_entry) other_name = String::utf8(current_entry->getAnimation()->getName().buffer()); +#else if (current_entry) other_name.parse_utf8(current_entry->getAnimation()->getName().buffer()); +#endif bool should_set_animation = !current_entry || (animation_name != other_name || current_entry->getLoop() != loop); if (should_set_animation) { @@ -428,7 +441,11 @@ void SpineAnimationTrack::update_animation_state(const Variant &variant_sprite) auto current_entry = animation_state->getCurrent(track_index); bool should_set_mix = mix_duration >= 0; String other_name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + if (current_entry) other_name = String::utf8(current_entry->getAnimation()->getName().buffer()); +#else if (current_entry) other_name.parse_utf8(current_entry->getAnimation()->getName().buffer()); +#endif bool should_set_animation = !current_entry || (animation_name != other_name || current_entry->getLoop() != loop) || animation_changed; animation_changed = false; diff --git a/spine-godot/spine_godot/SpineAtlasResource.cpp b/spine-godot/spine_godot/SpineAtlasResource.cpp index ca0ea381a..5a1c774a5 100644 --- a/spine-godot/spine_godot/SpineAtlasResource.cpp +++ b/spine-godot/spine_godot/SpineAtlasResource.cpp @@ -51,9 +51,13 @@ #ifdef SPINE_GODOT_EXTENSION #include #else +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) +#include "editor/file_system/editor_file_system.h" +#else #include "editor/editor_file_system.h" #endif #endif +#endif #include @@ -143,7 +147,11 @@ public: void load(spine::AtlasPage &page, const spine::String &path) override { String fixed_path; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + fixed_path = String::utf8(path.buffer()); +#else fixed_path.parse_utf8(path.buffer()); +#endif bool is_resource = fix_path(fixed_path); import_image_resource(fixed_path); diff --git a/spine-godot/spine_godot/SpineAttachment.cpp b/spine-godot/spine_godot/SpineAttachment.cpp index a0b97ff6f..b6e91929d 100644 --- a/spine-godot/spine_godot/SpineAttachment.cpp +++ b/spine-godot/spine_godot/SpineAttachment.cpp @@ -42,7 +42,11 @@ SpineAttachment::~SpineAttachment() { String SpineAttachment::get_attachment_name() { SPINE_CHECK(get_spine_object(), "") String name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + name = String::utf8(get_spine_object()->getName().buffer()); +#else name.parse_utf8(get_spine_object()->getName().buffer()); +#endif return name; } diff --git a/spine-godot/spine_godot/SpineBoneData.cpp b/spine-godot/spine_godot/SpineBoneData.cpp index 0dfcdf157..228464d60 100644 --- a/spine-godot/spine_godot/SpineBoneData.cpp +++ b/spine-godot/spine_godot/SpineBoneData.cpp @@ -69,7 +69,11 @@ int SpineBoneData::get_index() { String SpineBoneData::get_bone_name() { SPINE_CHECK(get_spine_object(), "") String name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + name = String::utf8(get_spine_object()->getName().buffer()); +#else name.parse_utf8(get_spine_object()->getName().buffer()); +#endif return name; } diff --git a/spine-godot/spine_godot/SpineConstraintData.cpp b/spine-godot/spine_godot/SpineConstraintData.cpp index b97e0961e..0336d101f 100644 --- a/spine-godot/spine_godot/SpineConstraintData.cpp +++ b/spine-godot/spine_godot/SpineConstraintData.cpp @@ -42,7 +42,11 @@ void SpineConstraintData::_bind_methods() { String SpineConstraintData::get_constraint_name() { SPINE_CHECK(get_spine_object(), "") String name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + name = String::utf8(get_spine_object()->getName().buffer()); +#else name.parse_utf8(get_spine_object()->getName().buffer()); +#endif return name; } diff --git a/spine-godot/spine_godot/SpineEventData.cpp b/spine-godot/spine_godot/SpineEventData.cpp index 2ab921618..a0845f89d 100644 --- a/spine-godot/spine_godot/SpineEventData.cpp +++ b/spine-godot/spine_godot/SpineEventData.cpp @@ -49,7 +49,11 @@ void SpineEventData::_bind_methods() { String SpineEventData::get_event_name() { SPINE_CHECK(get_spine_object(), "") String name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + name = String::utf8(get_spine_object()->getName().buffer()); +#else name.parse_utf8(get_spine_object()->getName().buffer()); +#endif return name; } diff --git a/spine-godot/spine_godot/SpineSkeletonDataResource.cpp b/spine-godot/spine_godot/SpineSkeletonDataResource.cpp index 050bd2563..3042a7398 100644 --- a/spine-godot/spine_godot/SpineSkeletonDataResource.cpp +++ b/spine-godot/spine_godot/SpineSkeletonDataResource.cpp @@ -396,7 +396,11 @@ void SpineSkeletonDataResource::get_animation_names(Vector &animation_na for (size_t i = 0; i < animations.size(); ++i) { auto animation = animations[i]; String name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + name = String::utf8(animation->getName().buffer()); +#else name.parse_utf8(animation->getName().buffer()); +#endif animation_names.push_back(name); } } @@ -413,7 +417,11 @@ void SpineSkeletonDataResource::get_skin_names(Vector &skin_names) const for (size_t i = 0; i < skins.size(); ++i) { auto skin = skins[i]; String name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + name = String::utf8(skin->getName().buffer()); +#else name.parse_utf8(skin->getName().buffer()); +#endif skin_names.push_back(name); } } @@ -430,7 +438,11 @@ void SpineSkeletonDataResource::get_slot_names(Vector &slot_names) { for (size_t i = 0; i < slots.size(); ++i) { auto slot = slots[i]; String name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + name = String::utf8(slot->getName().buffer()); +#else name.parse_utf8(slot->getName().buffer()); +#endif slot_names.push_back(name); } } @@ -447,7 +459,11 @@ void SpineSkeletonDataResource::get_bone_names(Vector &bone_names) { for (size_t i = 0; i < bones.size(); ++i) { auto bone = bones[i]; String name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + name = String::utf8(bone->getName().buffer()); +#else name.parse_utf8(bone->getName().buffer()); +#endif bone_names.push_back(name); } } @@ -632,7 +648,11 @@ SpineSkeletonDataResource::find_physics_constraint( String SpineSkeletonDataResource::get_skeleton_name() const { SPINE_CHECK(skeleton_data, "") String name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + name = String::utf8(skeleton_data->getName().buffer()); +#else name.parse_utf8(skeleton_data->getName().buffer()); +#endif return name; } diff --git a/spine-godot/spine_godot/SpineSkin.cpp b/spine-godot/spine_godot/SpineSkin.cpp index 915f2bc90..4271f2fe4 100644 --- a/spine-godot/spine_godot/SpineSkin.cpp +++ b/spine-godot/spine_godot/SpineSkin.cpp @@ -125,7 +125,11 @@ Array SpineSkin::find_attachments_for_slot(int slot_index) { String SpineSkin::get_name() { SPINE_CHECK(get_spine_object(), "") String name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + name = String::utf8(get_spine_object()->getName().buffer()); +#else name.parse_utf8(get_spine_object()->getName().buffer()); +#endif return name; } diff --git a/spine-godot/spine_godot/SpineSlotData.cpp b/spine-godot/spine_godot/SpineSlotData.cpp index 077b38d9e..96e55bbac 100644 --- a/spine-godot/spine_godot/SpineSlotData.cpp +++ b/spine-godot/spine_godot/SpineSlotData.cpp @@ -54,7 +54,11 @@ int SpineSlotData::get_index() { String SpineSlotData::get_name() { SPINE_CHECK(get_spine_object(), String("")) String name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + name = String::utf8(get_spine_object()->getName().buffer()); +#else name.parse_utf8(get_spine_object()->getName().buffer()); +#endif return name; } diff --git a/spine-godot/spine_godot/SpineSprite.cpp b/spine-godot/spine_godot/SpineSprite.cpp index ce479e291..eb96bb111 100644 --- a/spine-godot/spine_godot/SpineSprite.cpp +++ b/spine-godot/spine_godot/SpineSprite.cpp @@ -1229,7 +1229,11 @@ void SpineSprite::draw() { Vector hover_text_lines; if (hovered_slot) { String name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + name = String::utf8(hovered_slot->getData().getName().buffer()); +#else name.parse_utf8(hovered_slot->getData().getName().buffer()); +#endif hover_text_lines.push_back(String("Slot: ") + name); } @@ -1239,7 +1243,11 @@ void SpineSprite::draw() { draw_bone(hovered_bone, Color(debug_bones_color.r, debug_bones_color.g, debug_bones_color.b, 1)); debug_bones_thickness = thickness; String name; +#if (VERSION_MAJOR >= 4 && VERSION_MINOR >= 5) + name = String::utf8(hovered_bone->getData().getName().buffer()); +#else name.parse_utf8(hovered_bone->getData().getName().buffer()); +#endif hover_text_lines.push_back(String("Bone: ") + name); }