[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,6 +170,7 @@ namespace Spine.Unity.Examples {
if (skinName != "") if (skinName != "")
skin = skeletonData.FindSkin(skinName); skin = skeletonData.FindSkin(skinName);
if (skin != null)
skin.SetAttachment(slotIndex, att.Name, att); skin.SetAttachment(slotIndex, att.Name, att);
return att; return att;

View File

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

View File

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

View File

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