diff --git a/spine-unity/Assets/spine-unity/SpineAttributes.cs b/spine-unity/Assets/spine-unity/SpineAttributes.cs index 73eeebf4d..667d8eb73 100644 --- a/spine-unity/Assets/spine-unity/SpineAttributes.cs +++ b/spine-unity/Assets/spine-unity/SpineAttributes.cs @@ -85,14 +85,14 @@ public class SpineAttachment : SpineAttributeBase { /// Smart popup menu for Spine Attachments /// /// Filters popup results to only include the current Skin. Only valid when a SkeletonRenderer is the data source. - /// Returns a fully qualified path for an Attachment in the format "Skin/Slot/AttachmentName" + /// Returns a fully qualified path for an Attachment in the format "Skin/Slot/AttachmentName". This path format is only used by the SpineAttachment helper methods like SpineAttachment.GetAttachment and .GetHierarchy. Do not use full path anywhere else in Spine's system. /// Filters popup results to exclude attachments that are not children of Skin Placeholders /// If specified, a locally scoped field with the name supplied by in slotField will be used to limit the popup results to children of a named slot /// If specified, a locally scoped field with the name supplied by in dataField will be used to fill the popup results. /// Valid types are SkeletonDataAsset and SkeletonRenderer (and derivatives) /// If left empty and the script the attribute is applied to is derived from Component, GetComponent() will be called as a fallback. /// - public SpineAttachment(bool currentSkinOnly = true, bool returnAttachmentPath = false, bool placeholdersOnly = false, string slotField = "", string dataField = "") { + public SpineAttachment (bool currentSkinOnly = true, bool returnAttachmentPath = false, bool placeholdersOnly = false, string slotField = "", string dataField = "") { this.currentSkinOnly = currentSkinOnly; this.returnAttachmentPath = returnAttachmentPath; this.placeholdersOnly = placeholdersOnly; @@ -100,11 +100,11 @@ public class SpineAttachment : SpineAttributeBase { this.dataField = dataField; } - public static Hierarchy GetHierarchy(string fullPath) { - return new Hierarchy(fullPath); + public static SpineAttachment.Hierarchy GetHierarchy (string fullPath) { + return new SpineAttachment.Hierarchy(fullPath); } - public static Spine.Attachment GetAttachment(string attachmentPath, Spine.SkeletonData skeletonData) { + public static Spine.Attachment GetAttachment (string attachmentPath, Spine.SkeletonData skeletonData) { var hierarchy = SpineAttachment.GetHierarchy(attachmentPath); if (hierarchy.name == "") return null; @@ -112,16 +112,18 @@ public class SpineAttachment : SpineAttributeBase { return skeletonData.FindSkin(hierarchy.skin).GetAttachment(skeletonData.FindSlotIndex(hierarchy.slot), hierarchy.name); } - public static Spine.Attachment GetAttachment(string attachmentPath, SkeletonDataAsset skeletonDataAsset) { + public static Spine.Attachment GetAttachment (string attachmentPath, SkeletonDataAsset skeletonDataAsset) { return GetAttachment(attachmentPath, skeletonDataAsset.GetSkeletonData(true)); } + /// + /// A struct that represents 3 strings that help identify and locate an attachment in a skeleton. public struct Hierarchy { public string skin; public string slot; public string name; - public Hierarchy(string fullPath) { + public Hierarchy (string fullPath) { string[] chunks = fullPath.Split(new char[]{'/'}, System.StringSplitOptions.RemoveEmptyEntries); if (chunks.Length == 0) { skin = ""; @@ -157,15 +159,11 @@ public class SpineBone : SpineAttributeBase { } public static Spine.Bone GetBone(string boneName, SkeletonRenderer renderer) { - if (renderer.skeleton == null) - return null; - - return renderer.skeleton.FindBone(boneName); + return renderer.skeleton == null ? null : renderer.skeleton.FindBone(boneName); } public static Spine.BoneData GetBoneData(string boneName, SkeletonDataAsset skeletonDataAsset) { var data = skeletonDataAsset.GetSkeletonData(true); - return data.FindBone(boneName); } }