diff --git a/spine-csharp/src/EventData.cs b/spine-csharp/src/EventData.cs index 522cfe8a6..23e38b4de 100644 --- a/spine-csharp/src/EventData.cs +++ b/spine-csharp/src/EventData.cs @@ -39,7 +39,8 @@ namespace Spine { public string Name { get { return name; } } public int Int { get; set; } public float Float { get; set; } - public string String { get; set; } + public string @String { get; set; } + public string AudioPath { get; set; } public EventData (string name) { if (name == null) throw new ArgumentNullException("name", "name cannot be null."); diff --git a/spine-csharp/src/SkeletonBinary.cs b/spine-csharp/src/SkeletonBinary.cs index bbb17efdc..5402df094 100644 --- a/spine-csharp/src/SkeletonBinary.cs +++ b/spine-csharp/src/SkeletonBinary.cs @@ -151,8 +151,12 @@ namespace Spine { if (nonessential) { skeletonData.fps = ReadFloat(input); + skeletonData.imagesPath = ReadString(input); - if (skeletonData.imagesPath.Length == 0) skeletonData.imagesPath = null; + if (string.IsNullOrEmpty(skeletonData.imagesPath)) skeletonData.imagesPath = null; + + skeletonData.audioPath = ReadString(input); + if (string.IsNullOrEmpty(skeletonData.audioPath)) skeletonData.audioPath = null; } // Bones. @@ -280,6 +284,7 @@ namespace Spine { data.Int = ReadVarint(input, false); data.Float = ReadFloat(input); data.String = ReadString(input); + data.AudioPath = ReadString(input); skeletonData.events.Add(data); } diff --git a/spine-csharp/src/SkeletonData.cs b/spine-csharp/src/SkeletonData.cs index f9b451640..5a6bf2ecf 100644 --- a/spine-csharp/src/SkeletonData.cs +++ b/spine-csharp/src/SkeletonData.cs @@ -49,7 +49,7 @@ namespace Spine { // Nonessential. internal float fps; - internal string imagesPath; + internal string imagesPath, audioPath; public string Name { get { return name; } set { name = value; } } @@ -79,7 +79,12 @@ namespace Spine { /// The Spine version used to export this data, or null. public string Version { get { return version; } set { version = value; } } public string Hash { get { return hash; } set { hash = value; } } + + /// The path to the images directory as defined in Spine. Available only when nonessential data was exported. May be null public string ImagesPath { get { return imagesPath; } set { imagesPath = value; } } + + /// The path to the audio directory defined in Spine. Available only when nonessential data was exported. May be null. + public string AudioPath { get { return audioPath; } set { audioPath = value; } } /// /// The dopesheet FPS in Spine. Available only when nonessential data was exported. diff --git a/spine-csharp/src/SkeletonJson.cs b/spine-csharp/src/SkeletonJson.cs index 848adb4a5..871c6cd2e 100644 --- a/spine-csharp/src/SkeletonJson.cs +++ b/spine-csharp/src/SkeletonJson.cs @@ -104,6 +104,7 @@ namespace Spine { skeletonData.height = GetFloat(skeletonMap, "height", 0); skeletonData.fps = GetFloat(skeletonMap, "fps", 0); skeletonData.imagesPath = GetString(skeletonMap, "images", null); + skeletonData.audioPath = GetString(skeletonMap, "audio", null); } // Bones. @@ -293,6 +294,7 @@ namespace Spine { data.Int = GetInt(entryMap, "int", 0); data.Float = GetFloat(entryMap, "float", 0); data.String = GetString(entryMap, "string", string.Empty); + data.AudioPath = GetString(entryMap, "audio", string.Empty); skeletonData.events.Add(data); } }