This commit is contained in:
ww-rm
2025-03-20 23:49:45 +08:00
parent d9190e9418
commit abb06726f0
3 changed files with 10 additions and 6 deletions

View File

@@ -129,8 +129,8 @@ namespace SpineRuntime38 {
if (skeletonData.hash.Length == 0) skeletonData.hash = null; if (skeletonData.hash.Length == 0) skeletonData.hash = null;
skeletonData.version = input.ReadString(); skeletonData.version = input.ReadString();
if (skeletonData.version.Length == 0) skeletonData.version = null; if (skeletonData.version.Length == 0) skeletonData.version = null;
if ("3.8.75" == skeletonData.version) //if ("3.8.75" == skeletonData.version)
throw new Exception("Unsupported skeleton data, please export with a newer version of Spine."); // throw new Exception("Unsupported skeleton data, please export with a newer version of Spine.");
skeletonData.x = input.ReadFloat(); skeletonData.x = input.ReadFloat();
skeletonData.y = input.ReadFloat(); skeletonData.y = input.ReadFloat();
skeletonData.width = input.ReadFloat(); skeletonData.width = input.ReadFloat();

View File

@@ -100,8 +100,8 @@ namespace SpineRuntime38 {
var skeletonMap = (Dictionary<string, Object>)root["skeleton"]; var skeletonMap = (Dictionary<string, Object>)root["skeleton"];
skeletonData.hash = (string)skeletonMap["hash"]; skeletonData.hash = (string)skeletonMap["hash"];
skeletonData.version = (string)skeletonMap["spine"]; skeletonData.version = (string)skeletonMap["spine"];
if ("3.8.75" == skeletonData.version) //if ("3.8.75" == skeletonData.version)
throw new Exception("Unsupported skeleton data, please export with a newer version of Spine."); // throw new Exception("Unsupported skeleton data, please export with a newer version of Spine.");
skeletonData.x = GetFloat(skeletonMap, "x", 0); skeletonData.x = GetFloat(skeletonMap, "x", 0);
skeletonData.y = GetFloat(skeletonMap, "y", 0); skeletonData.y = GetFloat(skeletonMap, "y", 0);
skeletonData.width = GetFloat(skeletonMap, "width", 0); skeletonData.width = GetFloat(skeletonMap, "width", 0);

View File

@@ -51,7 +51,9 @@ namespace SpineViewer.Spine.Implementations.SkeletonConverter
{ {
JsonObject skeleton = []; JsonObject skeleton = [];
skeleton["hash"] = reader.ReadString(); skeleton["hash"] = reader.ReadString();
skeleton["spine"] = reader.ReadString(); var version = reader.ReadString();
if (version == "3.8.75") version = "3.8.76"; // replace 3.8.75 to another version to avoid detection in official runtime
skeleton["spine"] = version;
skeleton["x"] = reader.ReadFloat(); skeleton["x"] = reader.ReadFloat();
skeleton["y"] = reader.ReadFloat(); skeleton["y"] = reader.ReadFloat();
skeleton["width"] = reader.ReadFloat(); skeleton["width"] = reader.ReadFloat();
@@ -842,7 +844,9 @@ namespace SpineViewer.Spine.Implementations.SkeletonConverter
{ {
JsonObject skeleton = root["skeleton"].AsObject(); JsonObject skeleton = root["skeleton"].AsObject();
writer.WriteString((string)skeleton["hash"]); writer.WriteString((string)skeleton["hash"]);
writer.WriteString((string)skeleton["spine"]); var version = (string)skeleton["spine"];
if (version == "3.8.75") version = "3.8.76"; // replace 3.8.75 to another version to avoid detection in official runtime
writer.WriteString(version);
if (skeleton.TryGetPropertyValue("x", out var x)) writer.WriteFloat((float)x); else writer.WriteFloat(0); if (skeleton.TryGetPropertyValue("x", out var x)) writer.WriteFloat((float)x); else writer.WriteFloat(0);
if (skeleton.TryGetPropertyValue("y", out var y)) writer.WriteFloat((float)y); else writer.WriteFloat(0); if (skeleton.TryGetPropertyValue("y", out var y)) writer.WriteFloat((float)y); else writer.WriteFloat(0);
if (skeleton.TryGetPropertyValue("width", out var width)) writer.WriteFloat((float)width); else writer.WriteFloat(0); if (skeleton.TryGetPropertyValue("width", out var width)) writer.WriteFloat((float)width); else writer.WriteFloat(0);