diff --git a/.gitignore b/.gitignore index 94e55fb..d7db51f 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ builtins /utils/runtime/build /utils/runtime/*.zip bob.jar +/.editor_settings \ No newline at end of file diff --git a/defold-spine/plugins/lib/arm64-osx/libSpineExt.dylib b/defold-spine/plugins/lib/arm64-osx/libSpineExt.dylib index 25b1cc8..909d4d3 100644 Binary files a/defold-spine/plugins/lib/arm64-osx/libSpineExt.dylib and b/defold-spine/plugins/lib/arm64-osx/libSpineExt.dylib differ diff --git a/defold-spine/plugins/lib/x86_64-linux/libSpineExt.so b/defold-spine/plugins/lib/x86_64-linux/libSpineExt.so index e0d9b33..e4d1f8c 100644 Binary files a/defold-spine/plugins/lib/x86_64-linux/libSpineExt.so and b/defold-spine/plugins/lib/x86_64-linux/libSpineExt.so differ diff --git a/defold-spine/plugins/lib/x86_64-osx/libSpineExt.dylib b/defold-spine/plugins/lib/x86_64-osx/libSpineExt.dylib index 2bbdb9b..227cc68 100644 Binary files a/defold-spine/plugins/lib/x86_64-osx/libSpineExt.dylib and b/defold-spine/plugins/lib/x86_64-osx/libSpineExt.dylib differ diff --git a/defold-spine/plugins/lib/x86_64-win32/libSpineExt.dll b/defold-spine/plugins/lib/x86_64-win32/libSpineExt.dll index 5b7d55a..3568da6 100644 Binary files a/defold-spine/plugins/lib/x86_64-win32/libSpineExt.dll and b/defold-spine/plugins/lib/x86_64-win32/libSpineExt.dll differ diff --git a/defold-spine/plugins/share/pluginSpineExt.jar b/defold-spine/plugins/share/pluginSpineExt.jar index 6baed89..703a739 100644 Binary files a/defold-spine/plugins/share/pluginSpineExt.jar and b/defold-spine/plugins/share/pluginSpineExt.jar differ diff --git a/defold-spine/pluginsrc/com/defold/bob/pipeline/SpineSceneBuilder.java b/defold-spine/pluginsrc/com/defold/bob/pipeline/SpineSceneBuilder.java index 1f9483f..65b326b 100644 --- a/defold-spine/pluginsrc/com/defold/bob/pipeline/SpineSceneBuilder.java +++ b/defold-spine/pluginsrc/com/defold/bob/pipeline/SpineSceneBuilder.java @@ -8,6 +8,10 @@ import com.dynamo.bob.fs.IResource; import com.dynamo.bob.pipeline.BuilderUtil; import com.dynamo.spine.proto.Spine.SpineSceneDesc; +import com.dynamo.bob.pipeline.Spine; + +import java.io.IOException; +import java.nio.Buffer; @ProtoParams(srcClass = SpineSceneDesc.class, messageClass = SpineSceneDesc.class) @BuilderParams(name="SpineScene", inExts=".spinescene", outExt=".spinescenec") @@ -32,4 +36,27 @@ protected SpineSceneDesc.Builder transform(Task task, IResource resource, SpineS return builder; } + + @Override + public void build(Task task) throws CompileExceptionError, IOException { + super.build(task); + + IResource testurec = null; + IResource spinejsonc = null; + for (IResource input: task.getInputs()) { + String path = input.getPath(); + if (path.endsWith("texturesetc")) { + testurec = input; + } + else if (path.endsWith("spinejsonc")) { + spinejsonc = input; + } + } + try { + Spine.SPINE_LoadFileFromBuffer(spinejsonc.getContent(), spinejsonc.getPath(), testurec.getContent(), testurec.getPath()); + } + catch (Spine.SpineException e) { + throw new CompileExceptionError(task.getInputs().get(0), -1, e.getMessage()); + } + } }