修复skin索引顺序问题

This commit is contained in:
ww-rm
2025-05-06 19:11:46 +08:00
parent 1ea4586360
commit 3c91f335fc
2 changed files with 20 additions and 13 deletions

View File

@@ -1319,7 +1319,6 @@ namespace SpineViewer.Spine.Implementations.SkeletonConverter
}
JsonArray ik = root["ik"].AsArray();
writer.WriteVarInt(ik.Count);
int flag = 0;
for (int i = 0, n = ik.Count; i < n; i++)
{
JsonObject data = ik[i].AsObject();
@@ -1432,16 +1431,20 @@ namespace SpineViewer.Spine.Implementations.SkeletonConverter
}
JsonArray skins = root["skins"].AsArray();
for (int i = 0; i < skins.Count; i++)
foreach (JsonObject sk in skins)
{
var name = (string)skins[i]["name"];
if (name == "default" && i != 0)
if ((string)sk["name"] == "default")
{
skin2idx[(string)skins[0]["name"]] = skin2idx.Count;
skin2idx["default"] = 0;
continue;
break;
}
}
foreach (JsonObject sk in skins)
{
if ((string)sk["name"] != "default")
{
skin2idx["default"] = skin2idx.Count;
}
skin2idx[name] = skin2idx.Count;
}
bool hasDefault = false;

View File

@@ -1549,16 +1549,20 @@ namespace SpineViewer.Spine.Implementations.SkeletonConverter
//mix-and-match的full-skins/boy这个skin他的linkedmesh调用了后面的full-skins/boy
JsonArray skins = root["skins"].AsArray();
for (int i = 0; i < skins.Count; i++)
foreach (JsonObject sk in skins)
{
var name = (string)skins[i]["name"];
if (name == "default" && i != 0)
if ((string)sk["name"] == "default")
{
skin2idx[(string)skins[0]["name"]] = skin2idx.Count;
skin2idx["default"] = 0;
continue;
break;
}
}
foreach (JsonObject sk in skins)
{
if ((string)sk["name"] != "default")
{
skin2idx["default"] = skin2idx.Count;
}
skin2idx[name] = skin2idx.Count;
}
bool hasDefault = false;