[unity] Fixed code where a default skin was assumed to exist (which is no longer the case). Fixes an error at SkeletonDataAsset inspector -> show slots -> show attachments. Closes #1453.

This commit is contained in:
Harald Csaszar 2019-08-19 11:48:16 +02:00
parent be77b0c93d
commit a2393e8a12
4 changed files with 13 additions and 9 deletions

View File

@ -170,7 +170,8 @@ namespace Spine.Unity.Examples {
if (skinName != "")
skin = skeletonData.FindSkin(skinName);
skin.SetAttachment(slotIndex, att.Name, att);
if (skin != null)
skin.SetAttachment(slotIndex, att.Name, att);
return att;
}

View File

@ -497,12 +497,15 @@ namespace Spine.Unity.Editor {
using (new SpineInspectorUtility.IndentScope()) {
{
skin.GetAttachments(i, slotAttachments);
if (skin != defaultSkin) {
defaultSkin.GetAttachments(i, slotAttachments);
defaultSkin.GetAttachments(i, defaultSkinAttachments);
} else {
defaultSkin.GetAttachments(i, defaultSkinAttachments);
}
if (defaultSkin != null) {
if (skin != defaultSkin) {
defaultSkin.GetAttachments(i, slotAttachments);
defaultSkin.GetAttachments(i, defaultSkinAttachments);
}
else {
defaultSkin.GetAttachments(i, defaultSkinAttachments);
}
}
}
for (int a = 0; a < slotAttachments.Count; a++) {

View File

@ -582,7 +582,7 @@ namespace Spine.Unity.Editor {
attachmentTable.Add(skeleton.Slots.Items[i], attachments);
// Add skin attachments.
skin.GetAttachments(i, attachments);
if (notDefaultSkin) // Add default skin attachments.
if (notDefaultSkin && defaultSkin != null) // Add default skin attachments.
defaultSkin.GetAttachments(i, attachments);
}

View File

@ -58,7 +58,7 @@ namespace Spine.Unity.AttachmentTools {
var defaultSkin = skeleton.data.DefaultSkin;
var activeSkin = skeleton.skin;
if (includeDefaultSkin)
if (includeDefaultSkin && defaultSkin != null)
defaultSkin.CopyTo(newSkin, true, cloneAttachments, cloneMeshesAsLinked);
if (activeSkin != null)