Răsfoiți Sursa

Merge branch '3.7-beta' into 3.7-beta-cpp

badlogic 7 ani în urmă
părinte
comite
f12728f0d2
100 a modificat fișierele cu 11852 adăugiri și 2187 ștergeri
  1. 4 3
      .gitignore
  2. 109 20
      examples/alien/export/alien-ess.json
  3. BIN
      examples/alien/export/alien-ess.skel
  4. 164 26
      examples/alien/export/alien-pro.json
  5. BIN
      examples/alien/export/alien-pro.skel
  6. 1 8
      examples/coin/export/coin-pro.json
  7. BIN
      examples/coin/export/coin-pro.skel
  8. 145 24
      examples/dragon/export/dragon-ess.json
  9. BIN
      examples/dragon/export/dragon-ess.skel
  10. 6 3
      examples/export/export.sh
  11. 14 0
      examples/export/runtimes.sh
  12. 100 19
      examples/goblins/export/goblins-ess.json
  13. BIN
      examples/goblins/export/goblins-ess.skel
  14. 127 22
      examples/goblins/export/goblins-pro.json
  15. BIN
      examples/goblins/export/goblins-pro.skel
  16. 1 8
      examples/hero/export/hero-ess.json
  17. BIN
      examples/hero/export/hero-ess.skel
  18. 1 8
      examples/hero/export/hero-pro.json
  19. BIN
      examples/hero/export/hero-pro.skel
  20. 64 15
      examples/owl/export/owl-pro.json
  21. BIN
      examples/owl/export/owl-pro.skel
  22. 1 8
      examples/powerup/export/powerup-ess.json
  23. BIN
      examples/powerup/export/powerup-ess.skel
  24. 1 8
      examples/powerup/export/powerup-pro.json
  25. BIN
      examples/powerup/export/powerup-pro.skel
  26. 343 46
      examples/raptor/export/raptor-pro.json
  27. BIN
      examples/raptor/export/raptor-pro.skel
  28. 1 8
      examples/speedy/export/speedy-ess.json
  29. BIN
      examples/speedy/export/speedy-ess.skel
  30. 118 21
      examples/spineboy/export/spineboy-ess.json
  31. BIN
      examples/spineboy/export/spineboy-ess.skel
  32. 197 42
      examples/spineboy/export/spineboy-pro.json
  33. BIN
      examples/spineboy/export/spineboy-pro.skel
  34. 1 8
      examples/spinosaurus/export/spinosaurus-ess.json
  35. BIN
      examples/spinosaurus/export/spinosaurus-ess.skel
  36. 0 0
      examples/stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.json
  37. BIN
      examples/stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.skel
  38. 8 0
      examples/stretchyman-stretchy-ik/license.txt
  39. 253 36
      examples/stretchyman/export/stretchyman-pro.json
  40. BIN
      examples/stretchyman/export/stretchyman-pro.skel
  41. 1441 261
      examples/tank/export/tank-pro.json
  42. BIN
      examples/tank/export/tank-pro.skel
  43. 118 21
      examples/vine/export/vine-pro.json
  44. BIN
      examples/vine/export/vine-pro.skel
  45. 1 1
      spine-as3/spine-as3-example/.settings/com.powerflasher.fdt.classpath
  46. 1 1
      spine-as3/spine-as3-example/.settings/com.powerflasher.fdt.core.prefs
  47. 51 48
      spine-as3/spine-as3-example/.settings/launch/spine-as3-example.launch
  48. BIN
      spine-as3/spine-as3-example/lib/spine-as3.swc
  49. 118 21
      spine-as3/spine-as3-example/src/spineboy-ess.json
  50. 1 1
      spine-as3/spine-as3/.settings/com.powerflasher.fdt.classpath
  51. 1 1
      spine-as3/spine-as3/.settings/com.powerflasher.fdt.core.prefs
  52. 24 23
      spine-as3/spine-as3/.settings/launch/spine-as3.swc.launch
  53. 3 0
      spine-as3/spine-as3/.settings/org.eclipse.core.resources.prefs
  54. 22 12
      spine-as3/spine-as3/src/spine/IkConstraint.as
  55. 2 1
      spine-as3/spine-as3/src/spine/IkConstraintData.as
  56. 1 0
      spine-as3/spine-as3/src/spine/Skeleton.as
  57. 3 1
      spine-as3/spine-as3/src/spine/SkeletonJson.as
  58. 30 8
      spine-as3/spine-as3/src/spine/animation/IkConstraintTimeline.as
  59. 1 1
      spine-c/spine-c/src/spine/VertexAttachment.c
  60. 1 8
      spine-cocos2d-objc/Resources/coin-pro.json
  61. 127 22
      spine-cocos2d-objc/Resources/goblins-pro.json
  62. 343 46
      spine-cocos2d-objc/Resources/raptor-pro.json
  63. 118 21
      spine-cocos2d-objc/Resources/spineboy-ess.json
  64. 1441 261
      spine-cocos2d-objc/Resources/tank-pro.json
  65. BIN
      spine-cocos2dx/example/Resources/common/coin-pro.skel
  66. 127 22
      spine-cocos2dx/example/Resources/common/goblins-pro.json
  67. 343 46
      spine-cocos2dx/example/Resources/common/raptor-pro.json
  68. 118 21
      spine-cocos2dx/example/Resources/common/spineboy-ess.json
  69. BIN
      spine-cocos2dx/example/Resources/common/tank-pro.skel
  70. 4 2
      spine-cocos2dx/src/spine/SkeletonRenderer.cpp
  71. 1 8
      spine-corona/data/coin-pro.json
  72. 127 22
      spine-corona/data/goblins-pro.json
  73. 64 15
      spine-corona/data/owl-pro.json
  74. 343 46
      spine-corona/data/raptor-pro.json
  75. 118 21
      spine-corona/data/spineboy-ess.json
  76. 253 36
      spine-corona/data/stretchyman-pro.json
  77. 0 0
      spine-corona/data/stretchyman-stretchy-ik.json
  78. 1441 261
      spine-corona/data/tank-pro.json
  79. 118 21
      spine-corona/data/vine-pro.json
  80. 1 8
      spine-libgdx/spine-libgdx-tests/assets/coin/coin-pro.json
  81. BIN
      spine-libgdx/spine-libgdx-tests/assets/coin/coin-pro.skel
  82. 100 19
      spine-libgdx/spine-libgdx-tests/assets/goblins/goblins-ess.json
  83. BIN
      spine-libgdx/spine-libgdx-tests/assets/goblins/goblins-ess.skel
  84. 127 22
      spine-libgdx/spine-libgdx-tests/assets/goblins/goblins-pro.json
  85. BIN
      spine-libgdx/spine-libgdx-tests/assets/goblins/goblins-pro.skel
  86. 343 46
      spine-libgdx/spine-libgdx-tests/assets/raptor/raptor-pro.json
  87. BIN
      spine-libgdx/spine-libgdx-tests/assets/raptor/raptor-pro.skel
  88. 118 21
      spine-libgdx/spine-libgdx-tests/assets/spineboy/spineboy-ess.json
  89. BIN
      spine-libgdx/spine-libgdx-tests/assets/spineboy/spineboy-ess.skel
  90. 197 42
      spine-libgdx/spine-libgdx-tests/assets/spineboy/spineboy-pro.json
  91. BIN
      spine-libgdx/spine-libgdx-tests/assets/spineboy/spineboy-pro.skel
  92. 1 8
      spine-love/data/coin-pro.json
  93. 127 22
      spine-love/data/goblins-pro.json
  94. 343 46
      spine-love/data/raptor-pro.json
  95. 118 21
      spine-love/data/spineboy-ess.json
  96. 253 36
      spine-love/data/stretchyman-pro.json
  97. 0 0
      spine-love/data/stretchyman-stretchy-ik.json
  98. 1441 261
      spine-love/data/tank-pro.json
  99. 118 21
      spine-love/data/vine-pro.json
  100. 1 1
      spine-love/main.lua

+ 4 - 3
.gitignore

@@ -1,4 +1,5 @@
-
+.metadata/
+RemoteSystemsTempFiles/
 target
 *Debug.win32
 *.sdf
@@ -12,12 +13,12 @@ target
 *.user
 .DS_Store
 
-
 .idea/
 build/
-
 cmake-build-debug/
 
+spine-as3/spine-as3/.settings/com.powerflasher.fdt.core.metaDataTags.prefs
+
 spine-c/Debug/*
 
 spine-cpp/Debug/*

+ 109 - 20
examples/alien/export/alien-ess.json

@@ -1,26 +1,91 @@
 {
-"skeleton": {
-	"hash": "1WH+BPDx5fIR5Td0X/LQY1L6yi8",
-	"spine": "3.7.08-beta",
-	"width": 365.79,
-	"height": 391.51,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "1WH+BPDx5fIR5Td0X/LQY1L6yi8", "spine": "3.7.19-beta", "width": 365.79, "height": 391.51, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "x": -8.17, "y": 73.5, "color": "fff200ff" },
-	{ "name": "back-thigh", "parent": "hip", "length": 44.3, "rotation": -54.08, "x": -2.82, "y": -2.64, "color": "ff0008ff" },
-	{ "name": "back-shin", "parent": "back-thigh", "length": 31.17, "rotation": -50.15, "x": 44.3, "y": 0.06, "color": "ff0008ff" },
-	{ "name": "back-foot", "parent": "back-shin", "length": 11.75, "rotation": 91.8, "x": 31.17, "y": 0.09, "color": "ff0008ff" },
-	{ "name": "body", "parent": "hip", "length": 116.25, "rotation": 99.84, "x": -34.28, "y": 4.2, "color": "fff200ff" },
-	{ "name": "head", "parent": "body", "length": 213.84, "rotation": -36.37, "x": 116.32, "y": 1.79, "color": "fff200ff" },
+	{
+		"name": "back-thigh",
+		"parent": "hip",
+		"length": 44.3,
+		"rotation": -54.08,
+		"x": -2.82,
+		"y": -2.64,
+		"color": "ff0008ff"
+	},
+	{
+		"name": "back-shin",
+		"parent": "back-thigh",
+		"length": 31.17,
+		"rotation": -50.15,
+		"x": 44.3,
+		"y": 0.06,
+		"color": "ff0008ff"
+	},
+	{
+		"name": "back-foot",
+		"parent": "back-shin",
+		"length": 11.75,
+		"rotation": 91.8,
+		"x": 31.17,
+		"y": 0.09,
+		"color": "ff0008ff"
+	},
+	{
+		"name": "body",
+		"parent": "hip",
+		"length": 116.25,
+		"rotation": 99.84,
+		"x": -34.28,
+		"y": 4.2,
+		"color": "fff200ff"
+	},
+	{
+		"name": "head",
+		"parent": "body",
+		"length": 213.84,
+		"rotation": -36.37,
+		"x": 116.32,
+		"y": 1.79,
+		"color": "fff200ff"
+	},
 	{ "name": "blown-up-neck", "parent": "head", "x": -6.12, "y": -25.01, "color": "fff200ff" },
 	{ "name": "eye", "parent": "head", "x": 96.48, "y": -75.52, "color": "fff200ff" },
-	{ "name": "front-thigh", "parent": "hip", "length": 52.72, "rotation": -55.89, "x": -42.79, "y": 4.11, "color": "04ff00ff" },
-	{ "name": "front-shin", "parent": "front-thigh", "length": 34.38, "rotation": -45.22, "x": 52.73, "y": 0.06, "color": "04ff00ff" },
-	{ "name": "front-foot", "parent": "front-shin", "length": 13.58, "rotation": 86.84, "x": 34.36, "y": -0.12, "color": "04ff00ff" },
-	{ "name": "front-upper-arm", "parent": "body", "length": 47.09, "rotation": 121.33, "x": 90.9, "y": 42.96, "color": "04ff00ff" },
+	{
+		"name": "front-thigh",
+		"parent": "hip",
+		"length": 52.72,
+		"rotation": -55.89,
+		"x": -42.79,
+		"y": 4.11,
+		"color": "04ff00ff"
+	},
+	{
+		"name": "front-shin",
+		"parent": "front-thigh",
+		"length": 34.38,
+		"rotation": -45.22,
+		"x": 52.73,
+		"y": 0.06,
+		"color": "04ff00ff"
+	},
+	{
+		"name": "front-foot",
+		"parent": "front-shin",
+		"length": 13.58,
+		"rotation": 86.84,
+		"x": 34.36,
+		"y": -0.12,
+		"color": "04ff00ff"
+	},
+	{
+		"name": "front-upper-arm",
+		"parent": "body",
+		"length": 47.09,
+		"rotation": 121.33,
+		"x": 90.9,
+		"y": 42.96,
+		"color": "04ff00ff"
+	},
 	{
 		"name": "front-lower-arm",
 		"parent": "front-upper-arm",
@@ -30,8 +95,24 @@
 		"y": -0.29,
 		"color": "04ff00ff"
 	},
-	{ "name": "highlight", "parent": "eye", "x": 9.42, "y": -12.36, "scaleX": 0.471, "scaleY": 0.471, "color": "fff200ff" },
-	{ "name": "upper-back-arm", "parent": "body", "length": 50.28, "rotation": 172.11, "x": 50.4, "y": -84.36, "color": "ff0008ff" },
+	{
+		"name": "highlight",
+		"parent": "eye",
+		"x": 9.42,
+		"y": -12.36,
+		"scaleX": 0.471,
+		"scaleY": 0.471,
+		"color": "fff200ff"
+	},
+	{
+		"name": "upper-back-arm",
+		"parent": "body",
+		"length": 50.28,
+		"rotation": 172.11,
+		"x": 50.4,
+		"y": -84.36,
+		"color": "ff0008ff"
+	},
 	{
 		"name": "lower-back-arm",
 		"parent": "upper-back-arm",
@@ -41,7 +122,15 @@
 		"y": -0.11,
 		"color": "ff0008ff"
 	},
-	{ "name": "metaljaw", "parent": "root", "length": 75.82, "rotation": -74.86, "x": -37.1, "y": 230.8, "color": "fff200ff" },
+	{
+		"name": "metaljaw",
+		"parent": "root",
+		"length": 75.82,
+		"rotation": -74.86,
+		"x": -37.1,
+		"y": 230.8,
+		"color": "fff200ff"
+	},
 	{ "name": "pupil", "parent": "eye", "color": "fff200ff" },
 	{ "name": "splat", "parent": "root", "x": -11.57, "y": 253.52 }
 ],

BIN
examples/alien/export/alien-ess.skel


+ 164 - 26
examples/alien/export/alien-pro.json

@@ -1,35 +1,116 @@
 {
-"skeleton": {
-	"hash": "/VhvWM4QrF8jLdGHS0wGXOzkNts",
-	"spine": "3.7.08-beta",
-	"width": 368.26,
-	"height": 384.69,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "/VhvWM4QrF8jLdGHS0wGXOzkNts", "spine": "3.7.19-beta", "width": 368.26, "height": 384.69, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "x": -8.17, "y": 73.5, "color": "fff200ff" },
-	{ "name": "back-thigh", "parent": "hip", "length": 44.3, "rotation": -54.08, "x": -2.82, "y": -2.64, "color": "ff0008ff" },
-	{ "name": "back-shin", "parent": "back-thigh", "length": 31.17, "rotation": -50.15, "x": 44.3, "y": 0.06, "color": "ff0008ff" },
-	{ "name": "back-foot", "parent": "back-shin", "length": 11.75, "rotation": 91.8, "x": 31.17, "y": 0.09, "color": "ff0008ff" },
-	{ "name": "body", "parent": "root", "length": 116.25, "rotation": 99.84, "x": -42.45, "y": 77.7, "color": "fff200ff" },
+	{
+		"name": "back-thigh",
+		"parent": "hip",
+		"length": 44.3,
+		"rotation": -54.08,
+		"x": -2.82,
+		"y": -2.64,
+		"color": "ff0008ff"
+	},
+	{
+		"name": "back-shin",
+		"parent": "back-thigh",
+		"length": 31.17,
+		"rotation": -50.15,
+		"x": 44.3,
+		"y": 0.06,
+		"color": "ff0008ff"
+	},
+	{
+		"name": "back-foot",
+		"parent": "back-shin",
+		"length": 11.75,
+		"rotation": 91.8,
+		"x": 31.17,
+		"y": 0.09,
+		"color": "ff0008ff"
+	},
+	{
+		"name": "body",
+		"parent": "root",
+		"length": 116.25,
+		"rotation": 99.84,
+		"x": -42.45,
+		"y": 77.7,
+		"color": "fff200ff"
+	},
 	{ "name": "eye-root", "parent": "root", "color": "fff200ff" },
 	{ "name": "eye", "parent": "eye-root", "rotation": 63.5, "x": 51.29, "y": 236.96, "color": "fff200ff" },
 	{ "name": "eye-highlight", "parent": "eye", "x": 16.4, "y": -5.7, "color": "fff200ff" },
 	{ "name": "eyeball", "parent": "eye", "scaleX": 0.623, "scaleY": 0.623, "color": "fff200ff" },
-	{ "name": "eye-pupil", "parent": "eyeball", "x": 18.46, "y": -41.33, "scaleX": 1.332, "scaleY": 1.332, "color": "fff200ff" },
-	{ "name": "eye-splat", "parent": "root", "x": 256.36, "y": -17.76, "scaleX": -2.33, "scaleY": 1.99, "color": "fff200ff" },
+	{
+		"name": "eye-pupil",
+		"parent": "eyeball",
+		"x": 18.46,
+		"y": -41.33,
+		"scaleX": 1.332,
+		"scaleY": 1.332,
+		"color": "fff200ff"
+	},
+	{
+		"name": "eye-splat",
+		"parent": "root",
+		"x": 256.36,
+		"y": -17.76,
+		"scaleX": -2.33,
+		"scaleY": 1.99,
+		"color": "fff200ff"
+	},
 	{ "name": "eye-stalk-root", "parent": "eyeball", "rotation": -10.63, "x": -75.66, "y": 16.9, "color": "fff200ff" },
-	{ "name": "eye-stalk", "parent": "eye-stalk-root", "length": 16.14, "rotation": 179.1, "x": -9.1, "y": -2.42, "color": "fff200ff" },
+	{
+		"name": "eye-stalk",
+		"parent": "eye-stalk-root",
+		"length": 16.14,
+		"rotation": 179.1,
+		"x": -9.1,
+		"y": -2.42,
+		"color": "fff200ff"
+	},
 	{ "name": "eye-stalk2", "parent": "eye-stalk", "length": 16.14, "x": 16.14, "color": "fff200ff" },
 	{ "name": "eye-stalk3", "parent": "eye-stalk2", "length": 16.14, "x": 16.14, "color": "fff200ff" },
 	{ "name": "eye-stalk4", "parent": "eye-stalk3", "length": 16.14, "x": 16.14, "color": "fff200ff" },
 	{ "name": "eye-veins-controller", "parent": "eyeball", "color": "fff200ff" },
-	{ "name": "front-thigh", "parent": "hip", "length": 52.72, "rotation": -55.89, "x": -42.79, "y": 4.11, "color": "04ff00ff" },
-	{ "name": "front-shin", "parent": "front-thigh", "length": 34.38, "rotation": -45.22, "x": 52.73, "y": 0.06, "color": "04ff00ff" },
-	{ "name": "front-foot", "parent": "front-shin", "length": 13.58, "rotation": 86.84, "x": 34.36, "y": -0.12, "color": "04ff00ff" },
-	{ "name": "front-upper-arm", "parent": "body", "length": 47.09, "rotation": 121.33, "x": 90.9, "y": 42.96, "color": "04ff00ff" },
+	{
+		"name": "front-thigh",
+		"parent": "hip",
+		"length": 52.72,
+		"rotation": -55.89,
+		"x": -42.79,
+		"y": 4.11,
+		"color": "04ff00ff"
+	},
+	{
+		"name": "front-shin",
+		"parent": "front-thigh",
+		"length": 34.38,
+		"rotation": -45.22,
+		"x": 52.73,
+		"y": 0.06,
+		"color": "04ff00ff"
+	},
+	{
+		"name": "front-foot",
+		"parent": "front-shin",
+		"length": 13.58,
+		"rotation": 86.84,
+		"x": 34.36,
+		"y": -0.12,
+		"color": "04ff00ff"
+	},
+	{
+		"name": "front-upper-arm",
+		"parent": "body",
+		"length": 47.09,
+		"rotation": 121.33,
+		"x": 90.9,
+		"y": 42.96,
+		"color": "04ff00ff"
+	},
 	{
 		"name": "front-lower-arm",
 		"parent": "front-upper-arm",
@@ -39,8 +120,24 @@
 		"y": -0.29,
 		"color": "04ff00ff"
 	},
-	{ "name": "head", "parent": "body", "length": 213.84, "rotation": -36.34, "x": 116.68, "y": 2.67, "color": "fff200ff" },
-	{ "name": "upper-back-arm", "parent": "body", "length": 50.28, "rotation": 172.11, "x": 50.4, "y": -84.36, "color": "ff0008ff" },
+	{
+		"name": "head",
+		"parent": "body",
+		"length": 213.84,
+		"rotation": -36.34,
+		"x": 116.68,
+		"y": 2.67,
+		"color": "fff200ff"
+	},
+	{
+		"name": "upper-back-arm",
+		"parent": "body",
+		"length": 50.28,
+		"rotation": 172.11,
+		"x": 50.4,
+		"y": -84.36,
+		"color": "ff0008ff"
+	},
 	{
 		"name": "lower-back-arm",
 		"parent": "upper-back-arm",
@@ -50,8 +147,24 @@
 		"y": -0.11,
 		"color": "ff0008ff"
 	},
-	{ "name": "metaljaw", "parent": "root", "length": 75.82, "rotation": -74.86, "x": -37.1, "y": 230.8, "color": "fff200ff" },
-	{ "name": "splat", "parent": "root", "x": -11.45, "y": 318.24, "scaleX": 0.621, "scaleY": 0.621, "color": "fff200ff" }
+	{
+		"name": "metaljaw",
+		"parent": "root",
+		"length": 75.82,
+		"rotation": -74.86,
+		"x": -37.1,
+		"y": 230.8,
+		"color": "fff200ff"
+	},
+	{
+		"name": "splat",
+		"parent": "root",
+		"x": -11.45,
+		"y": 318.24,
+		"scaleX": 0.621,
+		"scaleY": 0.621,
+		"color": "fff200ff"
+	}
 ],
 "slots": [
 	{ "name": "metaljaw-bg", "bone": "metaljaw", "attachment": "metaljaw" },
@@ -254,10 +367,27 @@
 			"metaljaw": { "x": 85.12, "y": 55.13, "rotation": 64.15, "width": 243, "height": 172 }
 		},
 		"metaljaw-bg": {
-			"metaljaw": { "color": "7a7a7aff", "x": 101.82, "y": 83.41, "scaleX": 0.693, "scaleY": 0.943, "rotation": 66.62, "width": 243, "height": 172 }
+			"metaljaw": {
+				"color": "7a7a7aff",
+				"x": 101.82,
+				"y": 83.41,
+				"scaleX": 0.693,
+				"scaleY": 0.943,
+				"rotation": 66.62,
+				"width": 243,
+				"height": 172
+			}
 		},
 		"splat-bg": {
-			"splat01": { "x": 109.41, "y": 290.86, "scaleX": 1.702, "scaleY": 1.702, "rotation": 7.05, "width": 514, "height": 503 },
+			"splat01": {
+				"x": 109.41,
+				"y": 290.86,
+				"scaleX": 1.702,
+				"scaleY": 1.702,
+				"rotation": 7.05,
+				"width": 514,
+				"height": 503
+			},
 			"splat02": { "x": 75.9, "y": 342.4, "scaleX": 1.746, "scaleY": 1.746, "width": 734, "height": 511 }
 		},
 		"splat-fg": {
@@ -271,7 +401,15 @@
 				"width": 723,
 				"height": 339
 			},
-			"splat01-fg": { "x": 134.75, "y": 95.12, "scaleX": 1.724, "scaleY": 1.724, "rotation": 8.63, "width": 406, "height": 264 }
+			"splat01-fg": {
+				"x": 134.75,
+				"y": 95.12,
+				"scaleX": 1.724,
+				"scaleY": 1.724,
+				"rotation": 8.63,
+				"width": 406,
+				"height": 264
+			}
 		},
 		"upper-back-arm": {
 			"upper-back-arm": { "x": 38.71, "y": 2.9, "rotation": 68.76, "width": 60, "height": 86 }

BIN
examples/alien/export/alien-pro.skel


+ 1 - 8
examples/coin/export/coin-pro.json

@@ -1,12 +1,5 @@
 {
-"skeleton": {
-	"hash": "lfmnIwRt8cjfHaBQWvT0v4odYdY",
-	"spine": "3.7.08-beta",
-	"width": 260,
-	"height": 359.92,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "lfmnIwRt8cjfHaBQWvT0v4odYdY", "spine": "3.7.19-beta", "width": 260, "height": 359.92, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "coin-root", "parent": "root", "y": 300, "color": "ff0000ff" },

BIN
examples/coin/export/coin-pro.skel


+ 145 - 24
examples/dragon/export/dragon-ess.json

@@ -1,21 +1,62 @@
 {
-"skeleton": {
-	"hash": "lv0LmUZo/75fufw/LnAEx8+6j2Y",
-	"spine": "3.7.08-beta",
-	"width": 660.39,
-	"height": 604.09,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "lv0LmUZo/75fufw/LnAEx8+6j2Y", "spine": "3.7.19-beta", "width": 660.39, "height": 604.09, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root", "y": -176.12 },
 	{ "name": "center", "parent": "root", "y": 176.12, "color": "ffe300ff" },
-	{ "name": "back", "parent": "center", "length": 115.38, "rotation": 151.83, "x": 16.04, "y": 27.94, "color": "ffe400ff" },
-	{ "name": "chest", "parent": "center", "length": 31.24, "rotation": 161.7, "x": 52.53, "y": 15.35, "color": "ffe400ff" },
-	{ "name": "neck", "parent": "center", "length": 41.37, "rotation": 39.06, "x": 64.76, "y": 11.98, "color": "ffe400ff" },
-	{ "name": "chin", "parent": "neck", "length": 153.16, "rotation": -69.07, "x": 64.63, "y": -6.99, "color": "ffe400ff" },
-	{ "name": "head", "parent": "neck", "length": 188.84, "rotation": 8.07, "x": 69.96, "y": 2.5, "color": "ffe400ff" },
-	{ "name": "left-front-thigh", "parent": "chest", "length": 67.42, "rotation": 138.94, "x": -45.59, "y": 7.93, "color": "ff0000ff" },
+	{
+		"name": "back",
+		"parent": "center",
+		"length": 115.38,
+		"rotation": 151.83,
+		"x": 16.04,
+		"y": 27.94,
+		"color": "ffe400ff"
+	},
+	{
+		"name": "chest",
+		"parent": "center",
+		"length": 31.24,
+		"rotation": 161.7,
+		"x": 52.53,
+		"y": 15.35,
+		"color": "ffe400ff"
+	},
+	{
+		"name": "neck",
+		"parent": "center",
+		"length": 41.37,
+		"rotation": 39.06,
+		"x": 64.76,
+		"y": 11.98,
+		"color": "ffe400ff"
+	},
+	{
+		"name": "chin",
+		"parent": "neck",
+		"length": 153.16,
+		"rotation": -69.07,
+		"x": 64.63,
+		"y": -6.99,
+		"color": "ffe400ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 188.84,
+		"rotation": 8.07,
+		"x": 69.96,
+		"y": 2.5,
+		"color": "ffe400ff"
+	},
+	{
+		"name": "left-front-thigh",
+		"parent": "chest",
+		"length": 67.42,
+		"rotation": 138.94,
+		"x": -45.59,
+		"y": 7.93,
+		"color": "ff0000ff"
+	},
 	{
 		"name": "left-front-leg",
 		"parent": "left-front-thigh",
@@ -63,7 +104,15 @@
 		"scaleX": 1.135,
 		"color": "ff0000ff"
 	},
-	{ "name": "right-rear-thigh", "parent": "back", "length": 123.47, "rotation": 104.88, "x": 65.31, "y": 59.89, "color": "29ff00ff" },
+	{
+		"name": "right-rear-thigh",
+		"parent": "back",
+		"length": 123.47,
+		"rotation": 104.88,
+		"x": 65.31,
+		"y": 59.89,
+		"color": "29ff00ff"
+	},
 	{
 		"name": "left-rear-thigh",
 		"parent": "right-rear-thigh",
@@ -82,7 +131,15 @@
 		"y": -0.97,
 		"color": "ff0000ff"
 	},
-	{ "name": "left-wing", "parent": "chest", "length": 301.12, "rotation": -75.51, "x": -7.25, "y": -24.66, "color": "ff0000ff" },
+	{
+		"name": "left-wing",
+		"parent": "chest",
+		"length": 301.12,
+		"rotation": -75.51,
+		"x": -7.25,
+		"y": -24.66,
+		"color": "ff0000ff"
+	},
 	{
 		"name": "right-front-thigh",
 		"parent": "chest",
@@ -164,13 +221,69 @@
 		"y": -0.35,
 		"color": "29ff00ff"
 	},
-	{ "name": "right-wing", "parent": "head", "length": 359.5, "rotation": 83.21, "x": -74.68, "y": 20.91, "color": "29ff00ff" },
-	{ "name": "tail1", "parent": "back", "length": 65.65, "rotation": 44.32, "x": 115.38, "y": -0.2, "color": "ffe400ff" },
-	{ "name": "tail2", "parent": "tail1", "length": 54.5, "rotation": 12, "x": 65.65, "y": 0.23, "color": "ffe400ff" },
-	{ "name": "tail3", "parent": "tail2", "length": 41.78, "rotation": 1.8, "x": 54.5, "y": 0.37, "color": "ffe400ff" },
-	{ "name": "tail4", "parent": "tail3", "length": 34.19, "rotation": -1.8, "x": 41.78, "y": 0.16, "color": "ffe400ff" },
-	{ "name": "tail5", "parent": "tail4", "length": 32.33, "rotation": -3.15, "x": 34.19, "y": -0.19, "color": "ffe400ff" },
-	{ "name": "tail6", "parent": "tail5", "length": 80.08, "rotation": -29.55, "x": 32.33, "y": -0.23, "color": "ffe400ff" }
+	{
+		"name": "right-wing",
+		"parent": "head",
+		"length": 359.5,
+		"rotation": 83.21,
+		"x": -74.68,
+		"y": 20.91,
+		"color": "29ff00ff"
+	},
+	{
+		"name": "tail1",
+		"parent": "back",
+		"length": 65.65,
+		"rotation": 44.32,
+		"x": 115.38,
+		"y": -0.2,
+		"color": "ffe400ff"
+	},
+	{
+		"name": "tail2",
+		"parent": "tail1",
+		"length": 54.5,
+		"rotation": 12,
+		"x": 65.65,
+		"y": 0.23,
+		"color": "ffe400ff"
+	},
+	{
+		"name": "tail3",
+		"parent": "tail2",
+		"length": 41.78,
+		"rotation": 1.8,
+		"x": 54.5,
+		"y": 0.37,
+		"color": "ffe400ff"
+	},
+	{
+		"name": "tail4",
+		"parent": "tail3",
+		"length": 34.19,
+		"rotation": -1.8,
+		"x": 41.78,
+		"y": 0.16,
+		"color": "ffe400ff"
+	},
+	{
+		"name": "tail5",
+		"parent": "tail4",
+		"length": 32.33,
+		"rotation": -3.15,
+		"x": 34.19,
+		"y": -0.19,
+		"color": "ffe400ff"
+	},
+	{
+		"name": "tail6",
+		"parent": "tail5",
+		"length": 80.08,
+		"rotation": -29.55,
+		"x": 32.33,
+		"y": -0.23,
+		"color": "ffe400ff"
+	}
 ],
 "slots": [
 	{ "name": "left-rear-leg", "bone": "left-rear-leg", "attachment": "left-rear-leg" },
@@ -232,7 +345,15 @@
 			"front-toe-b": { "x": 26.84, "y": -4.95, "rotation": 109.51, "width": 56, "height": 57 }
 		},
 		"left-front-toe3": {
-			"front-toe-b": { "x": 18.22, "y": -7.22, "scaleX": 0.881, "scaleY": 0.941, "rotation": 99.71, "width": 56, "height": 57 }
+			"front-toe-b": {
+				"x": 18.22,
+				"y": -7.22,
+				"scaleX": 0.881,
+				"scaleY": 0.941,
+				"rotation": 99.71,
+				"width": 56,
+				"height": 57
+			}
 		},
 		"left-front-toe4": {
 			"front-toe-b": { "x": 23.21, "y": -11.69, "scaleX": 0.881, "rotation": 79.89, "width": 56, "height": 57 }

BIN
examples/dragon/export/dragon-ess.skel


+ 6 - 3
examples/export/export.sh

@@ -2,9 +2,12 @@
 set -e
 
 SPINE_EXE="C:/Program Files (x86)/Spine/Spine.com"
-PLATFORM=`uname`
-echo $PLATFORM
-if [[ $PLATFORM == "Darwin" ]]; then
+
+if [ ! -f "$SPINE_EXE" ]; then
+   SPINE_EXE="/mnt/c/Program Files (x86)/Spine/Spine.com"
+fi
+
+if [ ! -f "$SPINE_EXE" ]; then
 	SPINE_EXE="/Applications/Spine/Spine.app/Contents/MacOS/Spine"
 fi
 echo "Spine exe: $SPINE_EXE"

+ 14 - 0
examples/export/runtimes.sh

@@ -106,6 +106,8 @@ cp -f ../stretchyman/export/stretchyman-pro.json ../../spine-corona/data
 cp -f ../stretchyman/export/stretchyman.atlas ../../spine-corona/data
 cp -f ../stretchyman/export/stretchyman.png ../../spine-corona/data
 
+cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.json ../../spine-corona/data
+
 cp -f ../owl/export/owl-pro.json ../../spine-corona/data
 cp -f ../owl/export/owl.atlas ../../spine-corona/data
 cp -f ../owl/export/owl.png ../../spine-corona/data
@@ -140,6 +142,8 @@ cp -f ../stretchyman/export/stretchyman-pro.json ../../spine-love/data
 cp -f ../stretchyman/export/stretchyman.atlas ../../spine-love/data
 cp -f ../stretchyman/export/stretchyman.png ../../spine-love/data
 
+cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.json ../../spine-love/data
+
 echo "spine-sfml-c"
 rm -f ../../spine-sfml/data/*
 cp -f ../coin/export/coin-pro.json ../../spine-sfml/c/data/
@@ -177,6 +181,9 @@ cp -f ../stretchyman/export/stretchyman-pro.skel ../../spine-sfml/c/data/
 cp -f ../stretchyman/export/stretchyman.atlas ../../spine-sfml/c/data/
 cp -f ../stretchyman/export/stretchyman.png ../../spine-sfml/c/data/
 
+cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.json ../../spine-sfml/c/data
+cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.skel ../../spine-sfml/c/data
+
 cp -f ../owl/export/owl-pro.json ../../spine-sfml/c/data/
 cp -f ../owl/export/owl-pro.skel ../../spine-sfml/c/data/
 cp -f ../owl/export/owl.atlas ../../spine-sfml/c/data/
@@ -219,6 +226,9 @@ cp -f ../stretchyman/export/stretchyman-pro.skel ../../spine-sfml/cpp/data/
 cp -f ../stretchyman/export/stretchyman.atlas ../../spine-sfml/cpp/data/
 cp -f ../stretchyman/export/stretchyman.png ../../spine-sfml/cpp/data/
 
+cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.json ../../spine-sfml/cpp/data
+cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.skel ../../spine-sfml/cpp/data
+
 cp -f ../owl/export/owl-pro.json ../../spine-sfml/cpp/data/
 cp -f ../owl/export/owl-pro.skel ../../spine-sfml/cpp/data/
 cp -f ../owl/export/owl.atlas ../../spine-sfml/cpp/data/
@@ -254,6 +264,8 @@ cp -f ../stretchyman/export/stretchyman-pro.json ../../spine-starling/spine-star
 cp -f ../stretchyman/export/stretchyman.atlas ../../spine-starling/spine-starling-example/src/
 cp -f ../stretchyman/export/stretchyman.png ../../spine-starling/spine-starling-example/src/
 
+cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.json ../../spine-starling/spine-starling-example/src/
+
 cp -f ../owl/export/owl-pro.json ../../spine-starling/spine-starling-example/src/
 cp -f ../owl/export/owl.atlas ../../spine-starling/spine-starling-example/src/
 cp -f ../owl/export/owl.png ../../spine-starling/spine-starling-example/src/
@@ -293,6 +305,8 @@ cp -f ../stretchyman/export/stretchyman-pro.json ../../spine-ts/webgl/example/as
 cp -f ../stretchyman/export/stretchyman.atlas ../../spine-ts/webgl/example/assets/
 cp -f ../stretchyman/export/stretchyman.png ../../spine-ts/webgl/example/assets/
 
+cp -f ../stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.json ../../spine-ts/webgl/example/assets/
+
 rm -f ../../spine-ts/canvas/example/assets/*
 cp -f ../spineboy/export/spineboy-ess.json ../../spine-ts/canvas/example/assets/
 cp -f ../spineboy/export/spineboy.atlas ../../spine-ts/canvas/example/assets/

+ 100 - 19
examples/goblins/export/goblins-ess.json

@@ -1,21 +1,62 @@
 {
-"skeleton": {
-	"hash": "2ZytXk25WMQh7xfYd6gBJKXviEA",
-	"spine": "3.7.08-beta",
-	"width": 234.03,
-	"height": 354.91,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "2ZytXk25WMQh7xfYd6gBJKXviEA", "spine": "3.7.19-beta", "width": 234.03, "height": 354.91, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "x": 0.65, "y": 114.41, "color": "ffd300ff" },
-	{ "name": "torso", "parent": "hip", "length": 85.83, "rotation": 93.93, "x": -6.42, "y": 1.98, "color": "ffd300ff" },
-	{ "name": "neck", "parent": "torso", "length": 18.38, "rotation": -1.52, "x": 81.68, "y": -6.35, "color": "ffd300ff" },
-	{ "name": "head", "parent": "neck", "length": 68.29, "rotation": -13.92, "x": 20.94, "y": 11.59, "color": "ffd300ff" },
-	{ "name": "left-shoulder", "parent": "torso", "length": 35.43, "rotation": -156.96, "x": 74.05, "y": -20.39, "color": "ff0000ff" },
-	{ "name": "left-arm", "parent": "left-shoulder", "length": 35.62, "rotation": 28.17, "x": 37.86, "y": -2.35, "color": "ff0000ff" },
-	{ "name": "left-upper-leg", "parent": "hip", "length": 50.4, "rotation": -89.1, "x": 14.45, "y": 2.81, "color": "ff0000ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 85.83,
+		"rotation": 93.93,
+		"x": -6.42,
+		"y": 1.98,
+		"color": "ffd300ff"
+	},
+	{
+		"name": "neck",
+		"parent": "torso",
+		"length": 18.38,
+		"rotation": -1.52,
+		"x": 81.68,
+		"y": -6.35,
+		"color": "ffd300ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 68.29,
+		"rotation": -13.92,
+		"x": 20.94,
+		"y": 11.59,
+		"color": "ffd300ff"
+	},
+	{
+		"name": "left-shoulder",
+		"parent": "torso",
+		"length": 35.43,
+		"rotation": -156.96,
+		"x": 74.05,
+		"y": -20.39,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-arm",
+		"parent": "left-shoulder",
+		"length": 35.62,
+		"rotation": 28.17,
+		"x": 37.86,
+		"y": -2.35,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-upper-leg",
+		"parent": "hip",
+		"length": 50.4,
+		"rotation": -89.1,
+		"x": 14.45,
+		"y": 2.81,
+		"color": "ff0000ff"
+	},
 	{
 		"name": "left-lower-leg",
 		"parent": "left-upper-leg",
@@ -34,11 +75,43 @@
 		"y": -7.61,
 		"color": "ff0000ff"
 	},
-	{ "name": "left-hand", "parent": "left-arm", "length": 11.52, "rotation": 2.7, "x": 35.62, "y": 0.08, "color": "ff0000ff" },
+	{
+		"name": "left-hand",
+		"parent": "left-arm",
+		"length": 11.52,
+		"rotation": 2.7,
+		"x": 35.62,
+		"y": 0.08,
+		"color": "ff0000ff"
+	},
 	{ "name": "pelvis", "parent": "hip", "x": 1.41, "y": -6.58, "color": "ffd300ff" },
-	{ "name": "right-shoulder", "parent": "torso", "length": 37.25, "rotation": 133.89, "x": 76.02, "y": 18.15, "color": "54ff00ff" },
-	{ "name": "right-arm", "parent": "right-shoulder", "length": 36.75, "rotation": 36.33, "x": 37.61, "y": 0.31, "color": "54ff00ff" },
-	{ "name": "right-upper-leg", "parent": "hip", "length": 42.46, "rotation": -97.5, "x": -20.08, "y": -6.84, "color": "54ff00ff" },
+	{
+		"name": "right-shoulder",
+		"parent": "torso",
+		"length": 37.25,
+		"rotation": 133.89,
+		"x": 76.02,
+		"y": 18.15,
+		"color": "54ff00ff"
+	},
+	{
+		"name": "right-arm",
+		"parent": "right-shoulder",
+		"length": 36.75,
+		"rotation": 36.33,
+		"x": 37.61,
+		"y": 0.31,
+		"color": "54ff00ff"
+	},
+	{
+		"name": "right-upper-leg",
+		"parent": "hip",
+		"length": 42.46,
+		"rotation": -97.5,
+		"x": -20.08,
+		"y": -6.84,
+		"color": "54ff00ff"
+	},
 	{
 		"name": "right-lower-leg",
 		"parent": "right-upper-leg",
@@ -57,7 +130,15 @@
 		"y": 0.04,
 		"color": "54ff00ff"
 	},
-	{ "name": "right-hand", "parent": "right-arm", "length": 15.32, "rotation": 2.36, "x": 36.9, "y": 0.35, "color": "54ff00ff" }
+	{
+		"name": "right-hand",
+		"parent": "right-arm",
+		"length": 15.32,
+		"rotation": 2.36,
+		"x": 36.9,
+		"y": 0.35,
+		"color": "54ff00ff"
+	}
 ],
 "slots": [
 	{ "name": "left-shoulder", "bone": "left-shoulder", "attachment": "left-shoulder" },

BIN
examples/goblins/export/goblins-ess.skel


+ 127 - 22
examples/goblins/export/goblins-pro.json

@@ -1,21 +1,62 @@
 {
-"skeleton": {
-	"hash": "GEt0/K+46aqD75ngNEZOztV899k",
-	"spine": "3.7.08-beta",
-	"width": 266.94,
-	"height": 349.61,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "GEt0/K+46aqD75ngNEZOztV899k", "spine": "3.7.19-beta", "width": 266.94, "height": 349.61, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "x": 0.65, "y": 114.41, "color": "ffcf00ff" },
-	{ "name": "torso", "parent": "hip", "length": 85.83, "rotation": 93.93, "x": -6.42, "y": 1.98, "color": "ffcf00ff" },
-	{ "name": "neck", "parent": "torso", "length": 18.38, "rotation": -1.52, "x": 81.68, "y": -6.35, "color": "ffcf00ff" },
-	{ "name": "head", "parent": "neck", "length": 68.29, "rotation": -13.92, "x": 20.94, "y": 11.59, "color": "ffcf00ff" },
-	{ "name": "left-shoulder", "parent": "torso", "length": 35.43, "rotation": -156.96, "x": 74.05, "y": -20.39, "color": "ff0000ff" },
-	{ "name": "left-arm", "parent": "left-shoulder", "length": 35.62, "rotation": 28.17, "x": 37.86, "y": -2.35, "color": "ff0000ff" },
-	{ "name": "left-upper-leg", "parent": "hip", "length": 50.4, "rotation": -89.1, "x": 14.45, "y": 2.81, "color": "ff0000ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 85.83,
+		"rotation": 93.93,
+		"x": -6.42,
+		"y": 1.98,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "neck",
+		"parent": "torso",
+		"length": 18.38,
+		"rotation": -1.52,
+		"x": 81.68,
+		"y": -6.35,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 68.29,
+		"rotation": -13.92,
+		"x": 20.94,
+		"y": 11.59,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "left-shoulder",
+		"parent": "torso",
+		"length": 35.43,
+		"rotation": -156.96,
+		"x": 74.05,
+		"y": -20.39,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-arm",
+		"parent": "left-shoulder",
+		"length": 35.62,
+		"rotation": 28.17,
+		"x": 37.86,
+		"y": -2.35,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-upper-leg",
+		"parent": "hip",
+		"length": 50.4,
+		"rotation": -89.1,
+		"x": 14.45,
+		"y": 2.81,
+		"color": "ff0000ff"
+	},
 	{
 		"name": "left-lower-leg",
 		"parent": "left-upper-leg",
@@ -34,11 +75,43 @@
 		"y": -7.61,
 		"color": "ff0000ff"
 	},
-	{ "name": "left-hand", "parent": "left-arm", "length": 11.52, "rotation": 2.7, "x": 35.62, "y": 0.08, "color": "ff0000ff" },
+	{
+		"name": "left-hand",
+		"parent": "left-arm",
+		"length": 11.52,
+		"rotation": 2.7,
+		"x": 35.62,
+		"y": 0.08,
+		"color": "ff0000ff"
+	},
 	{ "name": "pelvis", "parent": "hip", "x": 1.41, "y": -6.58, "color": "ffcf00ff" },
-	{ "name": "right-shoulder", "parent": "torso", "length": 37.25, "rotation": 133.89, "x": 76.02, "y": 18.15, "color": "62ff00ff" },
-	{ "name": "right-arm", "parent": "right-shoulder", "length": 36.75, "rotation": 36.33, "x": 37.61, "y": 0.31, "color": "62ff00ff" },
-	{ "name": "right-upper-leg", "parent": "hip", "length": 42.46, "rotation": -97.5, "x": -20.08, "y": -6.84, "color": "62ff00ff" },
+	{
+		"name": "right-shoulder",
+		"parent": "torso",
+		"length": 37.25,
+		"rotation": 133.89,
+		"x": 76.02,
+		"y": 18.15,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "right-arm",
+		"parent": "right-shoulder",
+		"length": 36.75,
+		"rotation": 36.33,
+		"x": 37.61,
+		"y": 0.31,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "right-upper-leg",
+		"parent": "hip",
+		"length": 42.46,
+		"rotation": -97.5,
+		"x": -20.08,
+		"y": -6.84,
+		"color": "62ff00ff"
+	},
 	{
 		"name": "right-lower-leg",
 		"parent": "right-upper-leg",
@@ -57,10 +130,42 @@
 		"y": 0.04,
 		"color": "62ff00ff"
 	},
-	{ "name": "right-hand", "parent": "right-arm", "length": 15.32, "rotation": 2.36, "x": 36.9, "y": 0.35, "color": "62ff00ff" },
-	{ "name": "spear1", "parent": "left-hand", "length": 65.07, "rotation": 102.43, "x": 0.48, "y": 17.03, "color": "ffcf00ff" },
-	{ "name": "spear2", "parent": "spear1", "length": 61.42, "rotation": 0.9, "x": 65.06, "y": 0.04, "color": "ffcf00ff" },
-	{ "name": "spear3", "parent": "spear2", "length": 76.8, "rotation": -0.9, "x": 61.89, "y": 0.57, "color": "ffcf00ff" }
+	{
+		"name": "right-hand",
+		"parent": "right-arm",
+		"length": 15.32,
+		"rotation": 2.36,
+		"x": 36.9,
+		"y": 0.35,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "spear1",
+		"parent": "left-hand",
+		"length": 65.07,
+		"rotation": 102.43,
+		"x": 0.48,
+		"y": 17.03,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "spear2",
+		"parent": "spear1",
+		"length": 61.42,
+		"rotation": 0.9,
+		"x": 65.06,
+		"y": 0.04,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "spear3",
+		"parent": "spear2",
+		"length": 76.8,
+		"rotation": -0.9,
+		"x": 61.89,
+		"y": 0.57,
+		"color": "ffcf00ff"
+	}
 ],
 "slots": [
 	{ "name": "left-shoulder", "bone": "left-shoulder", "attachment": "left-shoulder" },

BIN
examples/goblins/export/goblins-pro.skel


+ 1 - 8
examples/hero/export/hero-ess.json

@@ -1,12 +1,5 @@
 {
-"skeleton": {
-	"hash": "Wq8GctlBtla8pdLAXAZM0XauZSA",
-	"spine": "3.7.08-beta",
-	"width": 319.3,
-	"height": 337,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "Wq8GctlBtla8pdLAXAZM0XauZSA", "spine": "3.7.19-beta", "width": 319.3, "height": 337, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "y": 94.89 },

BIN
examples/hero/export/hero-ess.skel


+ 1 - 8
examples/hero/export/hero-pro.json

@@ -1,12 +1,5 @@
 {
-"skeleton": {
-	"hash": "Pp6NDhWtK6+B53oIAqbkNPxtBR8",
-	"spine": "3.7.15-beta",
-	"width": 318.76,
-	"height": 333.69,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "Pp6NDhWtK6+B53oIAqbkNPxtBR8", "spine": "3.7.19-beta", "width": 318.76, "height": 333.69, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "y": 94.89 },

BIN
examples/hero/export/hero-pro.skel


+ 64 - 15
examples/owl/export/owl-pro.json

@@ -1,22 +1,31 @@
 {
-"skeleton": {
-	"hash": "TbihQmOjHQadWT+cp2p48Xive5U",
-	"spine": "3.7.08-beta",
-	"width": 1350.84,
-	"height": 909.41,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "TbihQmOjHQadWT+cp2p48Xive5U", "spine": "3.7.19-beta", "width": 1350.84, "height": 909.41, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
-	{ "name": "branch-1", "parent": "root", "length": 487.04, "rotation": 27.67, "x": -579.3, "y": -239.11, "color": "1a8600ff" },
+	{
+		"name": "branch-1",
+		"parent": "root",
+		"length": 487.04,
+		"rotation": 27.67,
+		"x": -579.3,
+		"y": -239.11,
+		"color": "1a8600ff"
+	},
 	{ "name": "branch-2", "parent": "branch-1", "length": 391.45, "rotation": -30.2, "x": 487.04, "color": "1a8600ff" },
 	{ "name": "owl-base", "parent": "branch-2", "x": 139.77, "y": 56.43, "color": "1697ffff" },
 	{ "name": "body-top-control", "parent": "owl-base", "rotation": 92.53, "x": -3.85, "y": 227.57, "color": "1697ffff" },
 	{ "name": "branch-3", "parent": "branch-2", "length": 231.51, "rotation": 30.15, "x": 391.45, "color": "1a8600ff" },
 	{ "name": "branch-4", "parent": "branch-3", "length": 158.83, "rotation": 38.9, "x": 231.51, "color": "1a8600ff" },
 	{ "name": "branch-5", "parent": "branch-4", "length": 82.96, "rotation": -26.21, "x": 158.83, "color": "1a8600ff" },
-	{ "name": "branch-6", "parent": "branch-5", "length": 105.49, "rotation": 68.78, "x": -79.95, "y": -20.15, "color": "1a8600ff" },
+	{
+		"name": "branch-6",
+		"parent": "branch-5",
+		"length": 105.49,
+		"rotation": 68.78,
+		"x": -79.95,
+		"y": -20.15,
+		"color": "1a8600ff"
+	},
 	{
 		"name": "butt-feathers",
 		"parent": "owl-base",
@@ -29,13 +38,53 @@
 	{ "name": "head", "parent": "body-top-control", "rotation": -90, "x": 51, "y": 0.33, "color": "1697ffff" },
 	{ "name": "control", "parent": "head", "y": 126.66, "color": "1697ffff" },
 	{ "name": "control-back", "parent": "head", "x": 1.74, "y": 75.81, "color": "b500afff" },
-	{ "name": "leaf-1", "parent": "branch-1", "length": 170.88, "rotation": 59.11, "x": 81.78, "y": 61.01, "color": "c61616ff" },
-	{ "name": "leaf-2", "parent": "branch-4", "length": 177.54, "rotation": -74.38, "x": 116.86, "y": -14.04, "color": "c61616ff" },
-	{ "name": "leaf-3", "parent": "branch-3", "length": 206.74, "rotation": -60.2, "x": -15.26, "y": 6.37, "color": "c61616ff" },
-	{ "name": "leaf-4", "parent": "branch-6", "length": 152.22, "rotation": 76.69, "x": 110.99, "y": 4.18, "color": "c61616ff" },
+	{
+		"name": "leaf-1",
+		"parent": "branch-1",
+		"length": 170.88,
+		"rotation": 59.11,
+		"x": 81.78,
+		"y": 61.01,
+		"color": "c61616ff"
+	},
+	{
+		"name": "leaf-2",
+		"parent": "branch-4",
+		"length": 177.54,
+		"rotation": -74.38,
+		"x": 116.86,
+		"y": -14.04,
+		"color": "c61616ff"
+	},
+	{
+		"name": "leaf-3",
+		"parent": "branch-3",
+		"length": 206.74,
+		"rotation": -60.2,
+		"x": -15.26,
+		"y": 6.37,
+		"color": "c61616ff"
+	},
+	{
+		"name": "leaf-4",
+		"parent": "branch-6",
+		"length": 152.22,
+		"rotation": 76.69,
+		"x": 110.99,
+		"y": 4.18,
+		"color": "c61616ff"
+	},
 	{ "name": "leaf-5", "parent": "branch-5", "length": 186.26, "rotation": 40.81, "x": 82.96, "color": "c61616ff" },
 	{ "name": "leaf-6", "parent": "branch-6", "length": 201.94, "rotation": 0.89, "x": 105.49, "color": "c61616ff" },
-	{ "name": "leaf-7", "parent": "branch-1", "length": 155.86, "rotation": 30.39, "x": 214.62, "y": 12.99, "color": "c61616ff" }
+	{
+		"name": "leaf-7",
+		"parent": "branch-1",
+		"length": 155.86,
+		"rotation": 30.39,
+		"x": 214.62,
+		"y": 12.99,
+		"color": "c61616ff"
+	}
 ],
 "slots": [
 	{ "name": "feather-3", "bone": "butt-feathers", "attachment": "feather-3" },

BIN
examples/owl/export/owl-pro.skel


+ 1 - 8
examples/powerup/export/powerup-ess.json

@@ -1,12 +1,5 @@
 {
-"skeleton": {
-	"hash": "VkGIE6Vi5G7QHYZfaGNNFIUZbQ4",
-	"spine": "3.7.08-beta",
-	"width": 413.19,
-	"height": 195.71,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "VkGIE6Vi5G7QHYZfaGNNFIUZbQ4", "spine": "3.7.19-beta", "width": 413.19, "height": 195.71, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "powerup", "parent": "root", "x": 1.48, "y": 134.02 },

BIN
examples/powerup/export/powerup-ess.skel


+ 1 - 8
examples/powerup/export/powerup-pro.json

@@ -1,12 +1,5 @@
 {
-"skeleton": {
-	"hash": "RISj76MQcMjgLoBHrmSC18OCzOA",
-	"spine": "3.7.08-beta",
-	"width": 414.65,
-	"height": 195.19,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "RISj76MQcMjgLoBHrmSC18OCzOA", "spine": "3.7.19-beta", "width": 414.65, "height": 195.19, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "powerup", "parent": "root", "x": 1.48, "y": 134.02 },

BIN
examples/powerup/export/powerup-pro.skel


+ 343 - 46
examples/raptor/export/raptor-pro.json

@@ -1,18 +1,35 @@
 {
-"skeleton": {
-	"hash": "pNFKcFD/5VPCe7+HftjerXAycWk",
-	"spine": "3.7.08-beta",
-	"width": 1296.89,
-	"height": 1055.12,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "pNFKcFD/5VPCe7+HftjerXAycWk", "spine": "3.7.19-beta", "width": 1296.89, "height": 1055.12, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "rotation": 3.16, "x": -136.79, "y": 415.48, "color": "fbff00ff" },
-	{ "name": "torso1", "parent": "hip", "length": 126.26, "rotation": -4.98, "x": 30.04, "y": -0.4, "color": "eaff00ff" },
-	{ "name": "saddle", "parent": "torso1", "length": 50.92, "rotation": 91.8, "x": 25.31, "y": 70.65, "color": "ff7300ff" },
-	{ "name": "spineboy-hip", "parent": "saddle", "length": 0.53, "rotation": 90.02, "x": 81.88, "y": 2.69, "color": "e8ff00ff" },
+	{
+		"name": "torso1",
+		"parent": "hip",
+		"length": 126.26,
+		"rotation": -4.98,
+		"x": 30.04,
+		"y": -0.4,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "saddle",
+		"parent": "torso1",
+		"length": 50.92,
+		"rotation": 91.8,
+		"x": 25.31,
+		"y": 70.65,
+		"color": "ff7300ff"
+	},
+	{
+		"name": "spineboy-hip",
+		"parent": "saddle",
+		"length": 0.53,
+		"rotation": 90.02,
+		"x": 81.88,
+		"y": 2.69,
+		"color": "e8ff00ff"
+	},
 	{
 		"name": "spineboy-torso",
 		"parent": "spineboy-hip",
@@ -22,10 +39,42 @@
 		"y": -2.11,
 		"color": "e8ff00ff"
 	},
-	{ "name": "torso2", "parent": "torso1", "length": 121.2, "rotation": 39.85, "x": 126.26, "y": -0.38, "color": "e9ff00ff" },
-	{ "name": "neck", "parent": "torso2", "length": 70.6, "rotation": 41.38, "x": 121.2, "y": 0.35, "color": "eaff00ff" },
-	{ "name": "head", "parent": "neck", "length": 105.51, "rotation": 9.83, "x": 70.6, "y": 0.04, "color": "eaff00ff" },
-	{ "name": "horn-rear", "parent": "head", "length": 73.78, "rotation": 44.32, "x": 104.76, "y": -242.01, "color": "e07800ff" },
+	{
+		"name": "torso2",
+		"parent": "torso1",
+		"length": 121.2,
+		"rotation": 39.85,
+		"x": 126.26,
+		"y": -0.38,
+		"color": "e9ff00ff"
+	},
+	{
+		"name": "neck",
+		"parent": "torso2",
+		"length": 70.6,
+		"rotation": 41.38,
+		"x": 121.2,
+		"y": 0.35,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 105.51,
+		"rotation": 9.83,
+		"x": 70.6,
+		"y": 0.04,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "horn-rear",
+		"parent": "head",
+		"length": 73.78,
+		"rotation": 44.32,
+		"x": 104.76,
+		"y": -242.01,
+		"color": "e07800ff"
+	},
 	{ "name": "rear-arm-target", "parent": "horn-rear", "rotation": -133.55, "x": 232.68, "y": 245.85, "color": "ff3f00ff" },
 	{
 		"name": "back-arm",
@@ -36,7 +85,15 @@
 		"y": -38.47,
 		"color": "e07800ff"
 	},
-	{ "name": "back-bracer", "parent": "back-arm", "length": 43.69, "rotation": 17.48, "x": 67.22, "y": -0.32, "color": "e07800ff" },
+	{
+		"name": "back-bracer",
+		"parent": "back-arm",
+		"length": 43.69,
+		"rotation": 17.48,
+		"x": 67.22,
+		"y": -0.32,
+		"color": "e07800ff"
+	},
 	{
 		"name": "back-hand",
 		"parent": "back-bracer",
@@ -48,21 +105,85 @@
 		"color": "e07800ff"
 	},
 	{ "name": "spineboy-rear-arm-goal", "parent": "saddle", "x": -30.44, "y": -100.08, "color": "ff3f00ff" },
-	{ "name": "back-thigh", "parent": "spineboy-hip", "length": 71.16, "rotation": 160.75, "x": -9.57, "y": 2.32, "color": "e07800ff" },
-	{ "name": "back-knee", "parent": "back-thigh", "length": 97.17, "rotation": -54.98, "x": 71.16, "y": -0.28, "color": "e07800ff" },
-	{ "name": "neck2", "parent": "spineboy-torso", "length": 32.05, "rotation": -45.23, "x": 113.44, "y": -15.22, "color": "e8ff00ff" },
-	{ "name": "head2", "parent": "neck2", "length": 167.19, "rotation": 11.66, "x": 25.68, "y": -0.77, "color": "e7ff00ff" },
-	{ "name": "bone", "parent": "head2", "length": 39.92, "rotation": -35.23, "x": 166.09, "y": -79.27, "color": "e7ff00ff" },
+	{
+		"name": "back-thigh",
+		"parent": "spineboy-hip",
+		"length": 71.16,
+		"rotation": 160.75,
+		"x": -9.57,
+		"y": 2.32,
+		"color": "e07800ff"
+	},
+	{
+		"name": "back-knee",
+		"parent": "back-thigh",
+		"length": 97.17,
+		"rotation": -54.98,
+		"x": 71.16,
+		"y": -0.28,
+		"color": "e07800ff"
+	},
+	{
+		"name": "neck2",
+		"parent": "spineboy-torso",
+		"length": 32.05,
+		"rotation": -45.23,
+		"x": 113.44,
+		"y": -15.22,
+		"color": "e8ff00ff"
+	},
+	{
+		"name": "head2",
+		"parent": "neck2",
+		"length": 167.19,
+		"rotation": 11.66,
+		"x": 25.68,
+		"y": -0.77,
+		"color": "e7ff00ff"
+	},
+	{
+		"name": "bone",
+		"parent": "head2",
+		"length": 39.92,
+		"rotation": -35.23,
+		"x": 166.09,
+		"y": -79.27,
+		"color": "e7ff00ff"
+	},
 	{ "name": "bone2", "parent": "bone", "length": 47.42, "rotation": 51.8, "x": 39.92, "color": "e7ff00ff" },
-	{ "name": "bone3", "parent": "head2", "length": 45.41, "rotation": -12.34, "x": 179.8, "y": -20.91, "color": "e7ff00ff" },
-	{ "name": "bone4", "parent": "bone3", "length": 43.31, "rotation": 42.01, "x": 44.64, "y": 0.3, "color": "e7ff00ff" },
+	{
+		"name": "bone3",
+		"parent": "head2",
+		"length": 45.41,
+		"rotation": -12.34,
+		"x": 179.8,
+		"y": -20.91,
+		"color": "e7ff00ff"
+	},
+	{
+		"name": "bone4",
+		"parent": "bone3",
+		"length": 43.31,
+		"rotation": 42.01,
+		"x": 44.64,
+		"y": 0.3,
+		"color": "e7ff00ff"
+	},
 	{ "name": "bone5", "parent": "bone4", "length": 44.88, "rotation": 48.8, "x": 43.31, "color": "e7ff00ff" },
 	{ "name": "dust-root", "parent": "root" },
 	{ "name": "dust", "parent": "dust-root", "x": 231.15, "y": -2.15, "scaleX": 2.285, "scaleY": 1.427 },
 	{ "name": "dust2", "parent": "dust-root", "x": -147.58, "y": -2.15, "scaleX": 1.635, "scaleY": 1.021 },
 	{ "name": "dust3", "parent": "dust-root", "x": 429.77, "y": 20.67, "scaleX": 2.285, "scaleY": 1.427 },
 	{ "name": "dust4", "parent": "dust-root", "x": 29.91, "y": 14.02, "scaleX": 1.635, "scaleY": 1.021 },
-	{ "name": "horn-front", "parent": "head", "length": 87.48, "rotation": 49.36, "x": 87.97, "y": -235.15, "color": "15ff00ff" },
+	{
+		"name": "horn-front",
+		"parent": "head",
+		"length": 87.48,
+		"rotation": 49.36,
+		"x": 87.97,
+		"y": -235.15,
+		"color": "15ff00ff"
+	},
 	{ "name": "front-arm-target", "parent": "horn-front", "rotation": -138.6, "x": 294.58, "y": 234.18, "color": "ff3f00ff" },
 	{
 		"name": "front-arm",
@@ -73,14 +194,62 @@
 		"y": 9.79,
 		"color": "14ff00ff"
 	},
-	{ "name": "front-bracer", "parent": "front-arm", "length": 39.85, "rotation": 20.31, "x": 74.52, "y": -0.42, "color": "14ff00ff" },
-	{ "name": "front-arm1", "parent": "torso2", "length": 109.99, "rotation": 224.54, "x": 46.37, "y": -84.62, "color": "15ff00ff" },
-	{ "name": "front-arm2", "parent": "front-arm1", "length": 86.33, "rotation": 105.24, "x": 109.99, "y": 0.2, "color": "15ff00ff" },
+	{
+		"name": "front-bracer",
+		"parent": "front-arm",
+		"length": 39.85,
+		"rotation": 20.31,
+		"x": 74.52,
+		"y": -0.42,
+		"color": "14ff00ff"
+	},
+	{
+		"name": "front-arm1",
+		"parent": "torso2",
+		"length": 109.99,
+		"rotation": 224.54,
+		"x": 46.37,
+		"y": -84.62,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-arm2",
+		"parent": "front-arm1",
+		"length": 86.33,
+		"rotation": 105.24,
+		"x": 109.99,
+		"y": 0.2,
+		"color": "15ff00ff"
+	},
 	{ "name": "front-foot-goal", "parent": "root", "rotation": -0.95, "x": -45.8, "y": -28.67, "color": "ff3f00ff" },
 	{ "name": "front-leg-goal", "parent": "front-foot-goal", "x": -106.06, "y": 115.58, "color": "ff3f00ff" },
-	{ "name": "front-leg1", "parent": "hip", "length": 251.75, "rotation": -51.51, "x": 27.36, "y": -28.28, "color": "15ff00ff" },
-	{ "name": "front-leg2", "parent": "front-leg1", "length": 208.55, "rotation": 261.94, "x": 251.04, "y": 0.16, "color": "15ff00ff" },
-	{ "name": "front-leg3", "parent": "front-leg2", "length": 118.18, "rotation": 85.46, "x": 208.5, "y": -1.64, "color": "15ff00ff" },
+	{
+		"name": "front-leg1",
+		"parent": "hip",
+		"length": 251.75,
+		"rotation": -51.51,
+		"x": 27.36,
+		"y": -28.28,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-leg2",
+		"parent": "front-leg1",
+		"length": 208.55,
+		"rotation": 261.94,
+		"x": 251.04,
+		"y": 0.16,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-leg3",
+		"parent": "front-leg2",
+		"length": 118.18,
+		"rotation": 85.46,
+		"x": 208.5,
+		"y": -1.64,
+		"color": "15ff00ff"
+	},
 	{
 		"name": "front-foot1",
 		"parent": "front-leg3",
@@ -113,7 +282,15 @@
 		"scaleX": 1.155,
 		"color": "15ff00ff"
 	},
-	{ "name": "front-hand", "parent": "front-arm2", "length": 47.56, "rotation": -56.83, "x": 86.33, "y": 0.06, "color": "15ff00ff" },
+	{
+		"name": "front-hand",
+		"parent": "front-arm2",
+		"length": 47.56,
+		"rotation": -56.83,
+		"x": 86.33,
+		"y": 0.06,
+		"color": "15ff00ff"
+	},
 	{
 		"name": "front-hand2",
 		"parent": "front-bracer",
@@ -134,7 +311,15 @@
 		"y": 17.02,
 		"color": "14ff00ff"
 	},
-	{ "name": "lower-leg", "parent": "front-thigh", "length": 111.5, "rotation": -49.62, "x": 77.93, "y": -0.11, "color": "14ff00ff" },
+	{
+		"name": "lower-leg",
+		"parent": "front-thigh",
+		"length": 111.5,
+		"rotation": -49.62,
+		"x": 77.93,
+		"y": -0.11,
+		"color": "14ff00ff"
+	},
 	{
 		"name": "gun",
 		"parent": "spineboy-hip",
@@ -146,16 +331,72 @@
 		"scaleY": 0.816,
 		"color": "ffffffff"
 	},
-	{ "name": "jaw", "parent": "head", "length": 203.76, "rotation": -125.79, "x": 49.11, "y": -68.46, "color": "ffff00ff" },
+	{
+		"name": "jaw",
+		"parent": "head",
+		"length": 203.76,
+		"rotation": -125.79,
+		"x": 49.11,
+		"y": -68.46,
+		"color": "ffff00ff"
+	},
 	{ "name": "jaw-inside", "parent": "jaw", "x": 94.7, "y": 33.64, "color": "ffff00ff" },
-	{ "name": "rear-arm1", "parent": "torso2", "length": 109.56, "rotation": -124.72, "x": 57.05, "y": -95.39, "color": "e07800ff" },
-	{ "name": "rear-arm2", "parent": "rear-arm1", "length": 85.8, "rotation": 123.56, "x": 109.57, "y": -0.01, "color": "e07800ff" },
+	{
+		"name": "rear-arm1",
+		"parent": "torso2",
+		"length": 109.56,
+		"rotation": -124.72,
+		"x": 57.05,
+		"y": -95.39,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-arm2",
+		"parent": "rear-arm1",
+		"length": 85.8,
+		"rotation": 123.56,
+		"x": 109.57,
+		"y": -0.01,
+		"color": "e07800ff"
+	},
 	{ "name": "rear-foot-goal", "parent": "root", "x": 33.44, "y": 30.82, "color": "ff3f00ff" },
 	{ "name": "rear-leg-goal", "parent": "rear-foot-goal", "x": -127.51, "y": 75.99, "color": "ff3f00ff" },
-	{ "name": "rear-leg1", "parent": "hip", "length": 226.28, "rotation": -54.76, "x": 55.19, "y": -71.25, "color": "e07800ff" },
-	{ "name": "rear-leg2", "parent": "rear-leg1", "length": 172.59, "rotation": -92.25, "x": 226.32, "y": 0.23, "color": "e07800ff" },
-	{ "name": "rear-leg3", "parent": "rear-leg2", "length": 103.05, "rotation": 82.82, "x": 172.32, "y": 2.21, "color": "e07800ff" },
-	{ "name": "rear-foot1", "parent": "rear-leg3", "length": 84.51, "rotation": 75.43, "x": 102.38, "y": -0.03, "color": "e07800ff" },
+	{
+		"name": "rear-leg1",
+		"parent": "hip",
+		"length": 226.28,
+		"rotation": -54.76,
+		"x": 55.19,
+		"y": -71.25,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-leg2",
+		"parent": "rear-leg1",
+		"length": 172.59,
+		"rotation": -92.25,
+		"x": 226.32,
+		"y": 0.23,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-leg3",
+		"parent": "rear-leg2",
+		"length": 103.05,
+		"rotation": 82.82,
+		"x": 172.32,
+		"y": 2.21,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-foot1",
+		"parent": "rear-leg3",
+		"length": 84.51,
+		"rotation": 75.43,
+		"x": 102.38,
+		"y": -0.03,
+		"color": "e07800ff"
+	},
 	{
 		"name": "rear-foot2",
 		"parent": "rear-foot1",
@@ -166,7 +407,15 @@
 		"transform": "noRotationOrReflection",
 		"color": "e07800ff"
 	},
-	{ "name": "rear-hand", "parent": "rear-arm2", "length": 45.81, "rotation": -76.28, "x": 85.8, "y": 0.11, "color": "e07800ff" },
+	{
+		"name": "rear-hand",
+		"parent": "rear-arm2",
+		"length": 45.81,
+		"rotation": -76.28,
+		"x": 85.8,
+		"y": 0.11,
+		"color": "e07800ff"
+	},
 	{
 		"name": "saddle-strap-front1",
 		"parent": "saddle",
@@ -204,10 +453,34 @@
 		"y": 0.2,
 		"color": "ff7300ff"
 	},
-	{ "name": "stirrup", "parent": "saddle", "length": 78.17, "rotation": -68.86, "x": -81.94, "y": -103.38, "color": "ff3f00ff" },
-	{ "name": "stirrup-strap1", "parent": "saddle", "length": 43.7, "rotation": -135, "x": -20.38, "y": -29.37, "color": "ff7300ff" },
+	{
+		"name": "stirrup",
+		"parent": "saddle",
+		"length": 78.17,
+		"rotation": -68.86,
+		"x": -81.94,
+		"y": -103.38,
+		"color": "ff3f00ff"
+	},
+	{
+		"name": "stirrup-strap1",
+		"parent": "saddle",
+		"length": 43.7,
+		"rotation": -135,
+		"x": -20.38,
+		"y": -29.37,
+		"color": "ff7300ff"
+	},
 	{ "name": "stirrup-strap2", "parent": "stirrup-strap1", "length": 51.62, "rotation": 9.39, "x": 43.71, "color": "ff7300ff" },
-	{ "name": "tail1", "parent": "hip", "length": 81.26, "rotation": 153.61, "x": -20.87, "y": 6.87, "color": "eaff00ff" },
+	{
+		"name": "tail1",
+		"parent": "hip",
+		"length": 81.26,
+		"rotation": 153.61,
+		"x": -20.87,
+		"y": 6.87,
+		"color": "eaff00ff"
+	},
 	{ "name": "tail2", "parent": "tail1", "length": 81.26, "rotation": 10.42, "x": 81.26, "color": "eaff00ff" },
 	{ "name": "tail3", "parent": "tail2", "length": 65.01, "rotation": 12.18, "x": 81.26, "color": "eaff00ff" },
 	{ "name": "tail4", "parent": "tail3", "length": 65.01, "x": 65.01, "color": "eaff00ff" },
@@ -217,9 +490,33 @@
 	{ "name": "tail8", "parent": "tail7", "length": 54.46, "rotation": 0.97, "x": 63.13, "color": "eaff00ff" },
 	{ "name": "tail9", "parent": "tail8", "length": 49.21, "rotation": -1.29, "x": 54.46, "color": "eaff00ff" },
 	{ "name": "tail10", "parent": "tail9", "length": 45.53, "rotation": 0.36, "x": 49.21, "color": "eaff00ff" },
-	{ "name": "tongue1", "parent": "head", "length": 55.12, "rotation": -129.04, "x": 20.82, "y": -104.75, "color": "ffff00ff" },
-	{ "name": "tongue2", "parent": "tongue1", "length": 44.67, "rotation": 8.93, "x": 55.6, "y": 0.93, "color": "fff200ff" },
-	{ "name": "tongue3", "parent": "tongue2", "length": 43.65, "rotation": 12.86, "x": 44.27, "y": -0.21, "color": "fff200ff" }
+	{
+		"name": "tongue1",
+		"parent": "head",
+		"length": 55.12,
+		"rotation": -129.04,
+		"x": 20.82,
+		"y": -104.75,
+		"color": "ffff00ff"
+	},
+	{
+		"name": "tongue2",
+		"parent": "tongue1",
+		"length": 44.67,
+		"rotation": 8.93,
+		"x": 55.6,
+		"y": 0.93,
+		"color": "fff200ff"
+	},
+	{
+		"name": "tongue3",
+		"parent": "tongue2",
+		"length": 43.65,
+		"rotation": 12.86,
+		"x": 44.27,
+		"y": -0.21,
+		"color": "fff200ff"
+	}
 ],
 "slots": [
 	{ "name": "back-hand", "bone": "back-hand", "attachment": "back-hand" },

BIN
examples/raptor/export/raptor-pro.skel


+ 1 - 8
examples/speedy/export/speedy-ess.json

@@ -1,12 +1,5 @@
 {
-"skeleton": {
-	"hash": "0WWsTwNMw5sqmCBGEaQWE7dbV4g",
-	"spine": "3.7.08-beta",
-	"width": 196.03,
-	"height": 305.44,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "0WWsTwNMw5sqmCBGEaQWE7dbV4g", "spine": "3.7.19-beta", "width": 196.03, "height": 305.44, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "x": -0.03, "y": 51.91 },

BIN
examples/speedy/export/speedy-ess.skel


+ 118 - 21
examples/spineboy/export/spineboy-ess.json

@@ -1,18 +1,27 @@
 {
-"skeleton": {
-	"hash": "0DoQUqP6ATLL322RHY3r98lgFr8",
-	"spine": "3.7.08-beta",
-	"width": 470.72,
-	"height": 731.57,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "0DoQUqP6ATLL322RHY3r98lgFr8", "spine": "3.7.19-beta", "width": 470.72, "height": 731.57, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "dust", "parent": "root", "x": -303.6, "y": 32.64, "scaleX": 1.457 },
 	{ "name": "hip", "parent": "root", "y": 247.47 },
-	{ "name": "torso", "parent": "hip", "length": 127.56, "rotation": 103.82, "x": -1.62, "y": 4.9, "color": "e0da19ff" },
-	{ "name": "front-upper-arm", "parent": "torso", "length": 69.45, "rotation": 168.38, "x": 103.76, "y": 19.33, "color": "00ff04ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 127.56,
+		"rotation": 103.82,
+		"x": -1.62,
+		"y": 4.9,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "front-upper-arm",
+		"parent": "torso",
+		"length": 69.45,
+		"rotation": 168.38,
+		"x": 103.76,
+		"y": 19.33,
+		"color": "00ff04ff"
+	},
 	{
 		"name": "front-bracer",
 		"parent": "front-upper-arm",
@@ -22,19 +31,107 @@
 		"y": -0.68,
 		"color": "00ff04ff"
 	},
-	{ "name": "front-fist", "parent": "front-bracer", "length": 65.39, "rotation": 12.43, "x": 40.57, "y": 0.2, "color": "00ff04ff" },
-	{ "name": "front-thigh", "parent": "hip", "length": 74.81, "rotation": -95.51, "x": -17.46, "y": -11.64, "color": "00ff04ff" },
-	{ "name": "front-shin", "parent": "front-thigh", "length": 128.77, "rotation": -2.21, "x": 78.69, "y": 1.6, "color": "00ff04ff" },
-	{ "name": "front-foot", "parent": "front-shin", "length": 91.34, "rotation": 77.91, "x": 128.76, "y": -0.34, "color": "00ff04ff" },
-	{ "name": "rear-upper-arm", "parent": "torso", "length": 51.94, "rotation": -169.56, "x": 92.36, "y": -19.22, "color": "ff000dff" },
+	{
+		"name": "front-fist",
+		"parent": "front-bracer",
+		"length": 65.39,
+		"rotation": 12.43,
+		"x": 40.57,
+		"y": 0.2,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-thigh",
+		"parent": "hip",
+		"length": 74.81,
+		"rotation": -95.51,
+		"x": -17.46,
+		"y": -11.64,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-shin",
+		"parent": "front-thigh",
+		"length": 128.77,
+		"rotation": -2.21,
+		"x": 78.69,
+		"y": 1.6,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-foot",
+		"parent": "front-shin",
+		"length": 91.34,
+		"rotation": 77.91,
+		"x": 128.76,
+		"y": -0.34,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "rear-upper-arm",
+		"parent": "torso",
+		"length": 51.94,
+		"rotation": -169.56,
+		"x": 92.36,
+		"y": -19.22,
+		"color": "ff000dff"
+	},
 	{ "name": "rear-bracer", "parent": "rear-upper-arm", "length": 34.56, "rotation": 23.15, "x": 51.36, "color": "ff000dff" },
-	{ "name": "gun", "parent": "rear-bracer", "length": 43.11, "rotation": 5.35, "x": 34.42, "y": -0.45, "color": "ff000dff" },
+	{
+		"name": "gun",
+		"parent": "rear-bracer",
+		"length": 43.11,
+		"rotation": 5.35,
+		"x": 34.42,
+		"y": -0.45,
+		"color": "ff000dff"
+	},
 	{ "name": "gun-tip", "parent": "gun", "rotation": 6.83, "x": 201.05, "y": 52.14, "color": "ff000dff" },
-	{ "name": "neck", "parent": "torso", "length": 25.45, "rotation": -31.54, "x": 127.5, "y": -0.31, "color": "e0da19ff" },
-	{ "name": "head", "parent": "neck", "length": 263.58, "rotation": 23.18, "x": 27.66, "y": -0.26, "color": "e0da19ff" },
-	{ "name": "rear-thigh", "parent": "hip", "length": 85.72, "rotation": -72.54, "x": 8.91, "y": -5.63, "color": "ff000dff" },
-	{ "name": "rear-shin", "parent": "rear-thigh", "length": 121.88, "rotation": -19.83, "x": 86.1, "y": -1.33, "color": "ff000dff" },
-	{ "name": "rear-foot", "parent": "rear-shin", "length": 82.57, "rotation": 69.3, "x": 121.46, "y": -0.76, "color": "ff000dff" }
+	{
+		"name": "neck",
+		"parent": "torso",
+		"length": 25.45,
+		"rotation": -31.54,
+		"x": 127.5,
+		"y": -0.31,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 263.58,
+		"rotation": 23.18,
+		"x": 27.66,
+		"y": -0.26,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "rear-thigh",
+		"parent": "hip",
+		"length": 85.72,
+		"rotation": -72.54,
+		"x": 8.91,
+		"y": -5.63,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-shin",
+		"parent": "rear-thigh",
+		"length": 121.88,
+		"rotation": -19.83,
+		"x": 86.1,
+		"y": -1.33,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-foot",
+		"parent": "rear-shin",
+		"length": 82.57,
+		"rotation": 69.3,
+		"x": 121.46,
+		"y": -0.76,
+		"color": "ff000dff"
+	}
 ],
 "slots": [
 	{ "name": "rear-upper-arm", "bone": "rear-upper-arm", "attachment": "rear-upper-arm" },

BIN
examples/spineboy/export/spineboy-ess.skel


+ 197 - 42
examples/spineboy/export/spineboy-pro.json

@@ -1,22 +1,47 @@
 {
-"skeleton": {
-	"hash": "IJd+uV+2SwjUih383rggKnjQ5gw",
-	"spine": "3.7.08-beta",
-	"width": 419.84,
-	"height": 686.08,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "IJd+uV+2SwjUih383rggKnjQ5gw", "spine": "3.7.19-beta", "width": 419.84, "height": 686.08, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root", "rotation": 0.28 },
 	{ "name": "hip", "parent": "root", "y": 247.27 },
 	{ "name": "crosshair", "parent": "root", "x": 1115.23, "y": 565.42, "color": "ff3f00ff" },
-	{ "name": "aim-constraint-target", "parent": "hip", "length": 26.24, "rotation": 19.61, "x": 1.02, "y": 5.62, "color": "abe323ff" },
+	{
+		"name": "aim-constraint-target",
+		"parent": "hip",
+		"length": 26.24,
+		"rotation": 19.61,
+		"x": 1.02,
+		"y": 5.62,
+		"color": "abe323ff"
+	},
 	{ "name": "rear-foot-ik", "parent": "root", "x": 61.91, "y": 0.42, "color": "ff3f00ff" },
 	{ "name": "rear-ankle-ik", "parent": "rear-foot-ik", "x": -33.91, "y": 37.34, "color": "ff3f00ff" },
-	{ "name": "rear-thigh", "parent": "hip", "length": 85.72, "rotation": -72.54, "x": 8.91, "y": -5.63, "color": "ff000dff" },
-	{ "name": "rear-shin", "parent": "rear-thigh", "length": 121.88, "rotation": -19.83, "x": 86.1, "y": -1.33, "color": "ff000dff" },
-	{ "name": "rear-foot", "parent": "rear-shin", "length": 51.58, "rotation": 45.78, "x": 121.46, "y": -0.76, "color": "ff000dff" },
+	{
+		"name": "rear-thigh",
+		"parent": "hip",
+		"length": 85.72,
+		"rotation": -72.54,
+		"x": 8.91,
+		"y": -5.63,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-shin",
+		"parent": "rear-thigh",
+		"length": 121.88,
+		"rotation": -19.83,
+		"x": 86.1,
+		"y": -1.33,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-foot",
+		"parent": "rear-shin",
+		"length": 51.58,
+		"rotation": 45.78,
+		"x": 121.46,
+		"y": -0.76,
+		"color": "ff000dff"
+	},
 	{
 		"name": "back-foot-tip",
 		"parent": "rear-foot",
@@ -55,10 +80,26 @@
 	{ "name": "flare10", "parent": "portal-root", "x": -6.34, "y": -161.57 },
 	{ "name": "front-foot-ik", "parent": "root", "x": -13.53, "y": 0.04, "color": "ff3f00ff" },
 	{ "name": "front-ankle-ik", "parent": "front-foot-ik", "x": -28.4, "y": 29.06, "color": "ff3f00ff" },
-	{ "name": "torso", "parent": "hip", "length": 42.52, "rotation": 103.82, "x": -1.62, "y": 4.9, "color": "e0da19ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 42.52,
+		"rotation": 103.82,
+		"x": -1.62,
+		"y": 4.9,
+		"color": "e0da19ff"
+	},
 	{ "name": "torso2", "parent": "torso", "length": 42.52, "x": 42.52, "color": "e0da19ff" },
 	{ "name": "torso3", "parent": "torso2", "length": 42.52, "x": 42.52, "color": "e0da19ff" },
-	{ "name": "front-upper-arm", "parent": "torso3", "length": 69.45, "rotation": 168.38, "x": 18.72, "y": 19.33, "color": "00ff04ff" },
+	{
+		"name": "front-upper-arm",
+		"parent": "torso3",
+		"length": 69.45,
+		"rotation": 168.38,
+		"x": 18.72,
+		"y": 19.33,
+		"color": "00ff04ff"
+	},
 	{
 		"name": "front-bracer",
 		"parent": "front-upper-arm",
@@ -68,10 +109,42 @@
 		"y": -0.68,
 		"color": "00ff04ff"
 	},
-	{ "name": "front-fist", "parent": "front-bracer", "length": 65.39, "rotation": 12.43, "x": 40.57, "y": 0.2, "color": "00ff04ff" },
-	{ "name": "front-thigh", "parent": "hip", "length": 74.81, "rotation": -95.51, "x": -17.46, "y": -11.64, "color": "00ff04ff" },
-	{ "name": "front-shin", "parent": "front-thigh", "length": 128.77, "rotation": -2.21, "x": 78.69, "y": 1.6, "color": "00ff04ff" },
-	{ "name": "front-foot", "parent": "front-shin", "length": 41.01, "rotation": 51.27, "x": 128.76, "y": -0.34, "color": "00ff04ff" },
+	{
+		"name": "front-fist",
+		"parent": "front-bracer",
+		"length": 65.39,
+		"rotation": 12.43,
+		"x": 40.57,
+		"y": 0.2,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-thigh",
+		"parent": "hip",
+		"length": 74.81,
+		"rotation": -95.51,
+		"x": -17.46,
+		"y": -11.64,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-shin",
+		"parent": "front-thigh",
+		"length": 128.77,
+		"rotation": -2.21,
+		"x": 78.69,
+		"y": 1.6,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-foot",
+		"parent": "front-shin",
+		"length": 41.01,
+		"rotation": 51.27,
+		"x": 128.76,
+		"y": -0.34,
+		"color": "00ff04ff"
+	},
 	{
 		"name": "front-foot-tip",
 		"parent": "front-foot",
@@ -82,32 +155,82 @@
 		"transform": "noRotationOrReflection",
 		"color": "00ff04ff"
 	},
-	{ "name": "rear-upper-arm", "parent": "torso3", "length": 51.94, "rotation": -169.56, "x": 7.32, "y": -19.22, "color": "ff000dff" },
+	{
+		"name": "rear-upper-arm",
+		"parent": "torso3",
+		"length": 51.94,
+		"rotation": -169.56,
+		"x": 7.32,
+		"y": -19.22,
+		"color": "ff000dff"
+	},
 	{ "name": "rear-bracer", "parent": "rear-upper-arm", "length": 34.56, "rotation": 23.15, "x": 51.36, "color": "ff000dff" },
-	{ "name": "gun", "parent": "rear-bracer", "length": 43.11, "rotation": -5.43, "x": 34.42, "y": -0.45, "color": "ff000dff" },
+	{
+		"name": "gun",
+		"parent": "rear-bracer",
+		"length": 43.11,
+		"rotation": -5.43,
+		"x": 34.42,
+		"y": -0.45,
+		"color": "ff000dff"
+	},
 	{ "name": "gun-tip", "parent": "gun", "rotation": 7.1, "x": 200.78, "y": 52.5, "color": "ff0000ff" },
-	{ "name": "neck", "parent": "torso3", "length": 25.45, "rotation": -31.54, "x": 42.46, "y": -0.31, "color": "e0da19ff" },
-	{ "name": "head", "parent": "neck", "length": 131.79, "rotation": 26.1, "x": 27.66, "y": -0.26, "color": "e0da19ff" },
-	{ "name": "hair1", "parent": "head", "length": 47.23, "rotation": -49.1, "x": 149.83, "y": -59.77, "color": "e0da19ff" },
-	{ "name": "hair2", "parent": "hair1", "length": 55.57, "rotation": 50.42, "x": 47.23, "y": 0.19, "color": "e0da19ff" },
-	{ "name": "hair3", "parent": "head", "length": 62.22, "rotation": -32.17, "x": 164.14, "y": 3.68, "color": "e0da19ff" },
-	{ "name": "hair4", "parent": "hair3", "length": 80.28, "rotation": 83.71, "x": 62.22, "y": -0.04, "color": "e0da19ff" },
 	{
-		"name": "hoverboard-thruster-front",
-		"parent": "hoverboard-controller",
-		"rotation": -29.2,
-		"x": 95.77,
-		"y": -2.99,
-		"transform": "noRotationOrReflection"
+		"name": "neck",
+		"parent": "torso3",
+		"length": 25.45,
+		"rotation": -31.54,
+		"x": 42.46,
+		"y": -0.31,
+		"color": "e0da19ff"
 	},
 	{
-		"name": "hoverboard-thruster-rear",
-		"parent": "hoverboard-controller",
-		"rotation": -29.2,
-		"x": -76.47,
-		"y": -4.88,
-		"transform": "noRotationOrReflection"
+		"name": "head",
+		"parent": "neck",
+		"length": 131.79,
+		"rotation": 26.1,
+		"x": 27.66,
+		"y": -0.26,
+		"color": "e0da19ff"
 	},
+	{
+		"name": "hair1",
+		"parent": "head",
+		"length": 47.23,
+		"rotation": -49.1,
+		"x": 149.83,
+		"y": -59.77,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "hair2",
+		"parent": "hair1",
+		"length": 55.57,
+		"rotation": 50.42,
+		"x": 47.23,
+		"y": 0.19,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "hair3",
+		"parent": "head",
+		"length": 62.22,
+		"rotation": -32.17,
+		"x": 164.14,
+		"y": 3.68,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "hair4",
+		"parent": "hair3",
+		"length": 80.28,
+		"rotation": 83.71,
+		"x": 62.22,
+		"y": -0.04,
+		"color": "e0da19ff"
+	},
+	{ "name": "hoverboard-thruster-front", "parent": "hoverboard-controller", "rotation": -29.2, "x": 95.77, "y": -2.99, "transform": "noRotationOrReflection" },
+	{ "name": "hoverboard-thruster-rear", "parent": "hoverboard-controller", "rotation": -29.2, "x": -76.47, "y": -4.88, "transform": "noRotationOrReflection" },
 	{ "name": "hoverglow-front", "parent": "hoverboard-thruster-front", "rotation": 0.17, "x": -1.78, "y": -37.79 },
 	{ "name": "hoverglow-rear", "parent": "hoverboard-thruster-rear", "rotation": 0.17, "x": 1.06, "y": -35.66 },
 	{ "name": "muzzle", "parent": "rear-bracer", "rotation": 3.06, "x": 242.34, "y": 34.26, "color": "ffb900ff" },
@@ -337,7 +460,15 @@
 			"hoverglow-small": { "scaleX": 0.463, "scaleY": 0.813, "rotation": -83.07, "width": 274, "height": 75 }
 		},
 		"exhaust2": {
-			"hoverglow-small": { "x": 0.01, "y": -0.76, "scaleX": 0.421, "scaleY": 0.84, "rotation": -89.25, "width": 274, "height": 75 }
+			"hoverglow-small": {
+				"x": 0.01,
+				"y": -0.76,
+				"scaleX": 0.421,
+				"scaleY": 0.84,
+				"rotation": -89.25,
+				"width": 274,
+				"height": 75
+			}
 		},
 		"exhaust3": {
 			"hoverglow-small": { "scaleX": 0.463, "scaleY": 0.813, "rotation": -83.07, "width": 274, "height": 75 }
@@ -445,10 +576,26 @@
 			"hoverboard-thruster": { "x": 1.1, "y": -6.29, "rotation": 0.17, "width": 60, "height": 64 }
 		},
 		"hoverglow-front": {
-			"hoverglow-small": { "x": 2.13, "y": -2, "scaleX": 0.303, "scaleY": 0.495, "rotation": 0.15, "width": 274, "height": 75 }
+			"hoverglow-small": {
+				"x": 2.13,
+				"y": -2,
+				"scaleX": 0.303,
+				"scaleY": 0.495,
+				"rotation": 0.15,
+				"width": 274,
+				"height": 75
+			}
 		},
 		"hoverglow-rear": {
-			"hoverglow-small": { "x": 1.39, "y": -2.09, "scaleX": 0.303, "scaleY": 0.495, "rotation": 0.61, "width": 274, "height": 75 }
+			"hoverglow-small": {
+				"x": 1.39,
+				"y": -2.09,
+				"scaleX": 0.303,
+				"scaleY": 0.495,
+				"rotation": 0.61,
+				"width": 274,
+				"height": 75
+			}
 		},
 		"mouth": {
 			"mouth-grind": {
@@ -478,7 +625,15 @@
 			"muzzle02": { "x": 187.25, "y": 5.9, "rotation": 0.15, "width": 540, "height": 337 },
 			"muzzle03": { "x": 231.96, "y": 6.02, "rotation": 0.15, "width": 663, "height": 425 },
 			"muzzle04": { "x": 231.96, "y": 6.02, "rotation": 0.15, "width": 596, "height": 358 },
-			"muzzle05": { "x": 293.8, "y": 6.19, "scaleX": 1.187, "scaleY": 1.187, "rotation": 0.15, "width": 538, "height": 299 }
+			"muzzle05": {
+				"x": 293.8,
+				"y": 6.19,
+				"scaleX": 1.187,
+				"scaleY": 1.187,
+				"rotation": 0.15,
+				"width": 538,
+				"height": 299
+			}
 		},
 		"muzzle-glow": {
 			"muzzle-glow": { "width": 198, "height": 198 }

BIN
examples/spineboy/export/spineboy-pro.skel


+ 1 - 8
examples/spinosaurus/export/spinosaurus-ess.json

@@ -1,12 +1,5 @@
 {
-"skeleton": {
-	"hash": "B2ZPp7lIxBrN+g+ALWuTw4IWKYE",
-	"spine": "3.7.08-beta",
-	"width": 1680,
-	"height": 1782.28,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "B2ZPp7lIxBrN+g+ALWuTw4IWKYE", "spine": "3.7.19-beta", "width": 1680, "height": 1782.28, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root", "y": -526.32 },
 	{ "name": "leaves", "parent": "root", "x": -0.17, "y": 1310.1 },

BIN
examples/spinosaurus/export/spinosaurus-ess.skel


Fișier diff suprimat deoarece este prea mare
+ 0 - 0
examples/stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.json


BIN
examples/stretchyman-stretchy-ik/export/stretchyman-stretchy-ik.skel


+ 8 - 0
examples/stretchyman-stretchy-ik/license.txt

@@ -0,0 +1,8 @@
+Copyright (c) 2016, Esoteric Software
+
+The images in this project may be redistributed as long as they are accompanied
+by this license file. The images may not be used for commercial use of any
+kind.
+
+The project file is released into the public domain. It may be used as the basis
+for derivative work.

+ 253 - 36
examples/stretchyman/export/stretchyman-pro.json

@@ -1,19 +1,36 @@
 {
-"skeleton": {
-	"hash": "ow1SbDe4W3rqcAxR3CKSHJ7MUZ4",
-	"spine": "3.7.08-beta",
-	"width": 264.5,
-	"height": 573.31,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "ow1SbDe4W3rqcAxR3CKSHJ7MUZ4", "spine": "3.7.19-beta", "width": 264.5, "height": 573.31, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "x": 28.61, "y": 289.9, "color": "ffbd00ff" },
-	{ "name": "spine1", "parent": "hip", "length": 34.66, "rotation": 86.69, "x": -4.48, "y": 12.66, "color": "ffbd00ff" },
+	{
+		"name": "spine1",
+		"parent": "hip",
+		"length": 34.66,
+		"rotation": 86.69,
+		"x": -4.48,
+		"y": 12.66,
+		"color": "ffbd00ff"
+	},
 	{ "name": "spine2", "parent": "spine1", "length": 41.42, "rotation": 16.48, "x": 34.66, "color": "ffbd00ff" },
-	{ "name": "spine3", "parent": "spine2", "length": 34.45, "rotation": 16.17, "x": 41.42, "y": 0.01, "color": "ffbd00ff" },
-	{ "name": "spine4", "parent": "spine3", "length": 37.53, "rotation": -13.63, "x": 34.45, "y": 0.01, "color": "ffbd00ff" },
+	{
+		"name": "spine3",
+		"parent": "spine2",
+		"length": 34.45,
+		"rotation": 16.17,
+		"x": 41.42,
+		"y": 0.01,
+		"color": "ffbd00ff"
+	},
+	{
+		"name": "spine4",
+		"parent": "spine3",
+		"length": 37.53,
+		"rotation": -13.63,
+		"x": 34.45,
+		"y": 0.01,
+		"color": "ffbd00ff"
+	},
 	{
 		"name": "back-arm1",
 		"parent": "spine4",
@@ -24,12 +41,44 @@
 		"transform": "noScale",
 		"color": "ff0000ff"
 	},
-	{ "name": "back-arm2", "parent": "back-arm1", "length": 34.16, "rotation": 3.11, "x": 31.88, "y": 0.02, "color": "ff0000ff" },
+	{
+		"name": "back-arm2",
+		"parent": "back-arm1",
+		"length": 34.16,
+		"rotation": 3.11,
+		"x": 31.88,
+		"y": 0.02,
+		"color": "ff0000ff"
+	},
 	{ "name": "back-arm3", "parent": "back-arm2", "length": 31.27, "rotation": 9.59, "x": 34.16, "color": "ff0000ff" },
-	{ "name": "back-arm4", "parent": "back-arm3", "length": 33.3, "rotation": 14.61, "x": 32.04, "y": 0.82, "color": "ff0000ff" },
-	{ "name": "back-arm5", "parent": "back-arm4", "length": 37.41, "rotation": 11.31, "x": 33.82, "y": 0.02, "color": "ff0000ff" },
+	{
+		"name": "back-arm4",
+		"parent": "back-arm3",
+		"length": 33.3,
+		"rotation": 14.61,
+		"x": 32.04,
+		"y": 0.82,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-arm5",
+		"parent": "back-arm4",
+		"length": 37.41,
+		"rotation": 11.31,
+		"x": 33.82,
+		"y": 0.02,
+		"color": "ff0000ff"
+	},
 	{ "name": "back-arm-ik-target", "parent": "root", "x": 103.52, "y": 345.27, "color": "ff3f00ff" },
-	{ "name": "back-arm-ik1", "parent": "spine4", "length": 66.57, "rotation": -152.7, "x": 16.34, "y": -4.46, "color": "ff0000ff" },
+	{
+		"name": "back-arm-ik1",
+		"parent": "spine4",
+		"length": 66.57,
+		"rotation": -152.7,
+		"x": 16.34,
+		"y": -4.46,
+		"color": "ff0000ff"
+	},
 	{ "name": "back-arm-ik2", "parent": "back-arm-ik1", "length": 66.01, "rotation": 19.36, "x": 66.57, "color": "ff0000ff" },
 	{
 		"name": "back-foot1",
@@ -59,16 +108,80 @@
 		"transform": "noScale",
 		"color": "ff0000ff"
 	},
-	{ "name": "back-leg1", "parent": "hip", "length": 41, "rotation": -83.66, "x": 10.41, "y": 1.04, "color": "ff0000ff" },
+	{
+		"name": "back-leg1",
+		"parent": "hip",
+		"length": 41,
+		"rotation": -83.66,
+		"x": 10.41,
+		"y": 1.04,
+		"color": "ff0000ff"
+	},
 	{ "name": "back-leg2", "parent": "back-leg1", "length": 41, "rotation": -4.07, "x": 34.57, "color": "ff0000ff" },
-	{ "name": "back-leg3", "parent": "back-leg1", "length": 41, "rotation": -5.24, "x": 81.79, "y": -2.29, "color": "ff0000ff" },
-	{ "name": "back-leg4", "parent": "back-leg1", "length": 41, "rotation": -16.6, "x": 121.21, "y": -11.27, "color": "ff0000ff" },
-	{ "name": "back-leg5", "parent": "back-leg1", "length": 41, "rotation": -32.36, "x": 160.16, "y": -24.86, "color": "ff0000ff" },
-	{ "name": "back-leg6", "parent": "back-leg1", "length": 41, "rotation": -30.76, "x": 197.04, "y": -39.98, "color": "ff0000ff" },
-	{ "name": "back-leg7", "parent": "back-leg1", "length": 41, "rotation": -30.63, "x": 233.19, "y": -57.32, "color": "ff0000ff" },
-	{ "name": "back-leg8", "parent": "back-leg1", "length": 41, "rotation": -33.79, "x": 267.29, "y": -77.39, "color": "ff0000ff" },
+	{
+		"name": "back-leg3",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -5.24,
+		"x": 81.79,
+		"y": -2.29,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-leg4",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -16.6,
+		"x": 121.21,
+		"y": -11.27,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-leg5",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -32.36,
+		"x": 160.16,
+		"y": -24.86,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-leg6",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -30.76,
+		"x": 197.04,
+		"y": -39.98,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-leg7",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -30.63,
+		"x": 233.19,
+		"y": -57.32,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-leg8",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -33.79,
+		"x": 267.29,
+		"y": -77.39,
+		"color": "ff0000ff"
+	},
 	{ "name": "back-leg-ik-target", "parent": "root", "x": 46.15, "y": 8.68, "color": "ff3f00ff" },
-	{ "name": "back-leg-ik1", "parent": "hip", "length": 140.17, "rotation": -88.1, "x": 9.63, "y": -0.38, "color": "ff0000ff" },
+	{
+		"name": "back-leg-ik1",
+		"parent": "hip",
+		"length": 140.17,
+		"rotation": -88.1,
+		"x": 9.63,
+		"y": -0.38,
+		"color": "ff0000ff"
+	},
 	{
 		"name": "back-leg-ik2",
 		"parent": "back-leg-ik1",
@@ -90,8 +203,24 @@
 		"transform": "noScale",
 		"color": "4eff00ff"
 	},
-	{ "name": "front-arm2", "parent": "front-arm1", "length": 35.67, "rotation": -0.44, "x": 38.33, "y": 0.01, "color": "4eff00ff" },
-	{ "name": "front-arm3", "parent": "front-arm2", "length": 32.65, "rotation": 14.45, "x": 35.67, "y": -0.02, "color": "4eff00ff" },
+	{
+		"name": "front-arm2",
+		"parent": "front-arm1",
+		"length": 35.67,
+		"rotation": -0.44,
+		"x": 38.33,
+		"y": 0.01,
+		"color": "4eff00ff"
+	},
+	{
+		"name": "front-arm3",
+		"parent": "front-arm2",
+		"length": 32.65,
+		"rotation": 14.45,
+		"x": 35.67,
+		"y": -0.02,
+		"color": "4eff00ff"
+	},
 	{ "name": "front-arm4", "parent": "front-arm3", "length": 29.18, "rotation": 13.89, "x": 32.65, "color": "4eff00ff" },
 	{
 		"name": "front-arm5",
@@ -103,7 +232,15 @@
 		"color": "4eff00ff"
 	},
 	{ "name": "front-arm-ik", "parent": "root", "x": -92.44, "y": 331.78, "color": "ff3f00ff" },
-	{ "name": "front-arm-ik1", "parent": "spine4", "length": 69.56, "rotation": 117.86, "x": 27.36, "y": 4.22, "color": "50ff00ff" },
+	{
+		"name": "front-arm-ik1",
+		"parent": "spine4",
+		"length": 69.56,
+		"rotation": 117.86,
+		"x": 27.36,
+		"y": 4.22,
+		"color": "50ff00ff"
+	},
 	{ "name": "front-arm-ik2", "parent": "front-arm-ik1", "length": 66.72, "rotation": 20.13, "x": 69.56, "color": "50ff00ff" },
 	{
 		"name": "front-foot1",
@@ -117,16 +254,88 @@
 	},
 	{ "name": "front-foot2", "parent": "front-foot1", "length": 29.12, "rotation": 9.61, "x": 26.3, "color": "50ff00ff" },
 	{ "name": "front-foot3", "parent": "front-foot2", "length": 23.49, "rotation": 8.91, "x": 29.12, "color": "50ff00ff" },
-	{ "name": "front-leg1", "parent": "hip", "length": 37.2, "rotation": -88.97, "x": -23.57, "y": -2, "color": "4fff00ff" },
-	{ "name": "front-leg2", "parent": "front-leg1", "length": 37.2, "rotation": 3.45, "x": 33.75, "y": 0.01, "color": "4fff00ff" },
-	{ "name": "front-leg3", "parent": "front-leg1", "length": 37.2, "rotation": -6.12, "x": 74.4, "y": -1.08, "color": "4fff00ff" },
-	{ "name": "front-leg4", "parent": "front-leg1", "length": 37.2, "rotation": -10.02, "x": 111.4, "y": -5.28, "color": "4fff00ff" },
-	{ "name": "front-leg5", "parent": "front-leg1", "length": 37.2, "rotation": -28.4, "x": 147.76, "y": -14.99, "color": "4fff00ff" },
-	{ "name": "front-leg6", "parent": "front-leg1", "length": 37.2, "rotation": -24.33, "x": 182.41, "y": -27.57, "color": "4fff00ff" },
-	{ "name": "front-leg7", "parent": "front-leg1", "length": 37.2, "rotation": -23, "x": 216.44, "y": -42.55, "color": "4fff00ff" },
-	{ "name": "front-leg8", "parent": "front-leg1", "length": 37.2, "rotation": -31.81, "x": 248.61, "y": -61.03, "color": "4fff00ff" },
+	{
+		"name": "front-leg1",
+		"parent": "hip",
+		"length": 37.2,
+		"rotation": -88.97,
+		"x": -23.57,
+		"y": -2,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg2",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": 3.45,
+		"x": 33.75,
+		"y": 0.01,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg3",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -6.12,
+		"x": 74.4,
+		"y": -1.08,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg4",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -10.02,
+		"x": 111.4,
+		"y": -5.28,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg5",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -28.4,
+		"x": 147.76,
+		"y": -14.99,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg6",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -24.33,
+		"x": 182.41,
+		"y": -27.57,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg7",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -23,
+		"x": 216.44,
+		"y": -42.55,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg8",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -31.81,
+		"x": 248.61,
+		"y": -61.03,
+		"color": "4fff00ff"
+	},
 	{ "name": "front-leg-ik-target", "parent": "root", "x": -37.74, "y": 5.03, "color": "ff3f00ff" },
-	{ "name": "front-leg-ik1", "parent": "hip", "length": 140.67, "rotation": -89.23, "x": -23.99, "y": 1.89, "color": "50ff00ff" },
+	{
+		"name": "front-leg-ik1",
+		"parent": "hip",
+		"length": 140.67,
+		"rotation": -89.23,
+		"x": -23.99,
+		"y": 1.89,
+		"color": "50ff00ff"
+	},
 	{
 		"name": "front-leg-ik2",
 		"parent": "front-leg-ik1",
@@ -136,7 +345,15 @@
 		"y": 0.03,
 		"color": "50ff00ff"
 	},
-	{ "name": "neck1", "parent": "spine4", "length": 13.45, "rotation": -30.66, "x": 38.97, "y": -0.83, "color": "ffbd00ff" },
+	{
+		"name": "neck1",
+		"parent": "spine4",
+		"length": 13.45,
+		"rotation": -30.66,
+		"x": 38.97,
+		"y": -0.83,
+		"color": "ffbd00ff"
+	},
 	{ "name": "neck2", "parent": "neck1", "length": 14.13, "rotation": -11.41, "x": 13.45, "color": "ffbd00ff" },
 	{
 		"name": "head",

BIN
examples/stretchyman/export/stretchyman-pro.skel


+ 1441 - 261
examples/tank/export/tank-pro.json

@@ -1,12 +1,5 @@
 {
-"skeleton": {
-	"hash": "JWZpG/bZaODL9WMrHd/eWznhkD0",
-	"spine": "3.7.08-beta",
-	"width": 7202.61,
-	"height": 1298.88,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "JWZpG/bZaODL9WMrHd/eWznhkD0", "spine": "3.7.19-beta", "width": 7202.61, "height": 1298.88, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "tank-root", "parent": "root", "y": 146.79 },
@@ -44,7 +37,15 @@
 	},
 	{ "name": "machinegun-tip", "parent": "machinegun", "x": 210.43, "y": -12.21 },
 	{ "name": "rock", "parent": "root", "x": -1925.2, "y": 33.17 },
-	{ "name": "smoke-root", "parent": "tank-root", "x": -1200.38, "y": 405.76, "scaleX": -6.5, "scaleY": 6.5, "color": "ff4000ff" },
+	{
+		"name": "smoke-root",
+		"parent": "tank-root",
+		"x": -1200.38,
+		"y": 405.76,
+		"scaleX": -6.5,
+		"scaleY": 6.5,
+		"color": "ff4000ff"
+	},
 	{
 		"name": "smoke1",
 		"parent": "smoke-root",
@@ -318,40 +319,312 @@
 		"color": "e64344ff"
 	},
 	{ "name": "tread2", "parent": "tread", "length": 82, "x": 82, "color": "e64344ff" },
-	{ "name": "tread3", "parent": "tread", "length": 82, "rotation": -8.91, "x": 163.01, "y": -12.61, "color": "e64344ff" },
-	{ "name": "tread4", "parent": "tread", "length": 82, "rotation": -29.27, "x": 234.55, "y": -52.43, "color": "e64344ff" },
-	{ "name": "tread5", "parent": "tread", "length": 82, "rotation": -45.26, "x": 292.26, "y": -110.28, "color": "e64344ff" },
-	{ "name": "tread6", "parent": "tread", "length": 82, "rotation": -15.29, "x": 371.36, "y": -131.76, "color": "e64344ff" },
-	{ "name": "tread7", "parent": "tread", "length": 82, "rotation": -5.49, "x": 452.98, "y": -139.55, "color": "e64344ff" },
-	{ "name": "tread8", "parent": "tread", "length": 82, "rotation": -24.99, "x": 527.31, "y": -173.95, "color": "e64344ff" },
-	{ "name": "tread9", "parent": "tread", "length": 82, "rotation": -5.44, "x": 608.94, "y": -181.68, "color": "e64344ff" },
-	{ "name": "tread10", "parent": "tread", "length": 82, "rotation": 48.85, "x": 662.9, "y": -120.35, "color": "e64344ff" },
-	{ "name": "tread11", "parent": "tread", "length": 82, "rotation": 97.99, "x": 651.5, "y": -39.69, "color": "e64344ff" },
-	{ "name": "tread12", "parent": "tread", "length": 82, "rotation": 113.79, "x": 618.43, "y": 34.83, "color": "e64344ff" },
-	{ "name": "tread13", "parent": "tread", "length": 82, "rotation": 122.96, "x": 573.82, "y": 103.18, "color": "e64344ff" },
-	{ "name": "tread14", "parent": "tread", "length": 82, "rotation": 142.01, "x": 509.19, "y": 153.3, "color": "e64344ff" },
-	{ "name": "tread15", "parent": "tread", "length": 82, "rotation": 157.84, "x": 433.25, "y": 184.02, "color": "e64344ff" },
-	{ "name": "tread16", "parent": "tread", "length": 82, "rotation": 157.37, "x": 357.56, "y": 215.37, "color": "e64344ff" },
-	{ "name": "tread17", "parent": "tread", "length": 82, "rotation": 157.29, "x": 281.92, "y": 246.8, "color": "e64344ff" },
-	{ "name": "tread18", "parent": "tread", "length": 82, "rotation": 157.19, "x": 206.33, "y": 278.38, "color": "e64344ff" },
-	{ "name": "tread19", "parent": "tread", "length": 82, "rotation": 157.14, "x": 130.77, "y": 310.02, "color": "e64344ff" },
-	{ "name": "tread20", "parent": "tread", "length": 82, "rotation": 157.34, "x": 55.1, "y": 341.41, "color": "e64344ff" },
-	{ "name": "tread21", "parent": "tread", "length": 82, "rotation": 158.11, "x": -20.99, "y": 371.77, "color": "e64344ff" },
-	{ "name": "tread22", "parent": "tread", "length": 82, "rotation": 157.99, "x": -97.02, "y": 402.28, "color": "e64344ff" },
-	{ "name": "tread23", "parent": "tread", "length": 82, "rotation": 157.59, "x": -172.83, "y": 433.33, "color": "e64344ff" },
-	{ "name": "tread24", "parent": "tread", "length": 82, "rotation": 156.86, "x": -248.23, "y": 465.34, "color": "e64344ff" },
-	{ "name": "tread25", "parent": "tread", "length": 82, "rotation": 177.94, "x": -330.17, "y": 468.27, "color": "e64344ff" },
-	{ "name": "tread26", "parent": "tread", "length": 82, "rotation": -169.55, "x": -410.81, "y": 453.5, "color": "e64344ff" },
-	{ "name": "tread27", "parent": "tread", "length": 82, "rotation": -163.86, "x": -489.58, "y": 430.86, "color": "e64344ff" },
-	{ "name": "tread28", "parent": "tread", "length": 82, "rotation": -139.13, "x": -551.59, "y": 377.57, "color": "e64344ff" },
-	{ "name": "tread29", "parent": "tread", "length": 82, "rotation": -89.04, "x": -550.21, "y": 296.14, "color": "e64344ff" },
-	{ "name": "tread30", "parent": "tread", "length": 82, "rotation": -38.99, "x": -486.48, "y": 244.89, "color": "e64344ff" },
-	{ "name": "tread31", "parent": "tread", "length": 82, "rotation": -20.04, "x": -409.45, "y": 216.98, "color": "e64344ff" },
-	{ "name": "tread32", "parent": "tread", "length": 82, "rotation": -46.24, "x": -352.74, "y": 158.15, "color": "e64344ff" },
-	{ "name": "tread33", "parent": "tread", "length": 82, "rotation": -27.95, "x": -280.3, "y": 119.98, "color": "e64344ff" },
-	{ "name": "tread34", "parent": "tread", "length": 82, "rotation": 10.46, "x": -199.66, "y": 134.77, "color": "e64344ff" },
-	{ "name": "tread35", "parent": "tread", "length": 82, "rotation": -17.9, "x": -121.63, "y": 109.73, "color": "e64344ff" },
-	{ "name": "tread36", "parent": "tread", "length": 82, "rotation": -36.82, "x": -55.99, "y": 60.92, "color": "fbff00ff" },
+	{
+		"name": "tread3",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -8.91,
+		"x": 163.01,
+		"y": -12.61,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread4",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -29.27,
+		"x": 234.55,
+		"y": -52.43,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread5",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -45.26,
+		"x": 292.26,
+		"y": -110.28,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread6",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -15.29,
+		"x": 371.36,
+		"y": -131.76,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread7",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -5.49,
+		"x": 452.98,
+		"y": -139.55,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread8",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -24.99,
+		"x": 527.31,
+		"y": -173.95,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread9",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -5.44,
+		"x": 608.94,
+		"y": -181.68,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread10",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 48.85,
+		"x": 662.9,
+		"y": -120.35,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread11",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 97.99,
+		"x": 651.5,
+		"y": -39.69,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread12",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 113.79,
+		"x": 618.43,
+		"y": 34.83,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread13",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 122.96,
+		"x": 573.82,
+		"y": 103.18,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread14",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 142.01,
+		"x": 509.19,
+		"y": 153.3,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread15",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.84,
+		"x": 433.25,
+		"y": 184.02,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread16",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.37,
+		"x": 357.56,
+		"y": 215.37,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread17",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.29,
+		"x": 281.92,
+		"y": 246.8,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread18",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.19,
+		"x": 206.33,
+		"y": 278.38,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread19",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.14,
+		"x": 130.77,
+		"y": 310.02,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread20",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.34,
+		"x": 55.1,
+		"y": 341.41,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread21",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 158.11,
+		"x": -20.99,
+		"y": 371.77,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread22",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.99,
+		"x": -97.02,
+		"y": 402.28,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread23",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.59,
+		"x": -172.83,
+		"y": 433.33,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread24",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 156.86,
+		"x": -248.23,
+		"y": 465.34,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread25",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 177.94,
+		"x": -330.17,
+		"y": 468.27,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread26",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -169.55,
+		"x": -410.81,
+		"y": 453.5,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread27",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -163.86,
+		"x": -489.58,
+		"y": 430.86,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread28",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -139.13,
+		"x": -551.59,
+		"y": 377.57,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread29",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -89.04,
+		"x": -550.21,
+		"y": 296.14,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread30",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -38.99,
+		"x": -486.48,
+		"y": 244.89,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread31",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -20.04,
+		"x": -409.45,
+		"y": 216.98,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread32",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -46.24,
+		"x": -352.74,
+		"y": 158.15,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread33",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -27.95,
+		"x": -280.3,
+		"y": 119.98,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread34",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 10.46,
+		"x": -199.66,
+		"y": 134.77,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread35",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -17.9,
+		"x": -121.63,
+		"y": 109.73,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread36",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -36.82,
+		"x": -55.99,
+		"y": 60.92,
+		"color": "fbff00ff"
+	},
 	{ "name": "wheel-mid-center", "parent": "tank-root", "y": -66.21 },
 	{ "name": "tread-collider1", "parent": "wheel-mid-center", "x": -329.58, "y": -85.44, "color": "ff00fbff" },
 	{ "name": "tread-collider2", "parent": "wheel-mid-center", "x": -165.95, "y": -85.44, "color": "ff00fbff" },
@@ -477,62 +750,14 @@
 	{ "name": "wheel-small", "bone": "wheel-small1", "attachment": "wheel-small" },
 	{ "name": "wheel-small2", "bone": "wheel-small2", "attachment": "wheel-small" },
 	{ "name": "wheel-small3", "bone": "wheel-small3", "attachment": "wheel-small" },
-	{
-		"name": "wheel-mid-overlay",
-		"bone": "wheel-mid-root1",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay2",
-		"bone": "wheel-mid-root2",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay3",
-		"bone": "wheel-mid-root3",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay4",
-		"bone": "wheel-mid-root4",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay5",
-		"bone": "wheel-mid-root5",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay6",
-		"bone": "wheel-mid-root6",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-big-overlay1",
-		"bone": "wheel-big-root1",
-		"color": "ffffffe9",
-		"attachment": "wheel-big-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-big-overlay2",
-		"bone": "wheel-big-root2",
-		"color": "ffffffe9",
-		"attachment": "wheel-big-overlay",
-		"blend": "multiply"
-	},
+	{ "name": "wheel-mid-overlay", "bone": "wheel-mid-root1", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay2", "bone": "wheel-mid-root2", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay3", "bone": "wheel-mid-root3", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay4", "bone": "wheel-mid-root4", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay5", "bone": "wheel-mid-root5", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay6", "bone": "wheel-mid-root6", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-big-overlay1", "bone": "wheel-big-root1", "color": "ffffffe9", "attachment": "wheel-big-overlay", "blend": "multiply" },
+	{ "name": "wheel-big-overlay2", "bone": "wheel-big-root2", "color": "ffffffe9", "attachment": "wheel-big-overlay", "blend": "multiply" },
 	{ "name": "treads", "bone": "tank-root", "attachment": "treads" },
 	{ "name": "tread", "bone": "tread", "attachment": "tread" },
 	{ "name": "tread27", "bone": "tread27", "color": "adc9b8ff", "attachment": "tread" },
@@ -714,44 +939,7 @@
 	{
 		"name": "treads",
 		"order": 2,
-		"bones": [
-			"tread",
-			"tread2",
-			"tread3",
-			"tread4",
-			"tread5",
-			"tread6",
-			"tread7",
-			"tread8",
-			"tread9",
-			"tread10",
-			"tread11",
-			"tread12",
-			"tread13",
-			"tread14",
-			"tread15",
-			"tread16",
-			"tread17",
-			"tread18",
-			"tread19",
-			"tread20",
-			"tread21",
-			"tread22",
-			"tread23",
-			"tread24",
-			"tread25",
-			"tread26",
-			"tread27",
-			"tread28",
-			"tread29",
-			"tread30",
-			"tread31",
-			"tread32",
-			"tread33",
-			"tread34",
-			"tread35",
-			"tread36"
-		],
+		"bones": [ "tread", "tread2", "tread3", "tread4", "tread5", "tread6", "tread7", "tread8", "tread9", "tread10", "tread11", "tread12", "tread13", "tread14", "tread15", "tread16", "tread17", "tread18", "tread19", "tread20", "tread21", "tread22", "tread23", "tread24", "tread25", "tread26", "tread27", "tread28", "tread29", "tread30", "tread31", "tread32", "tread33", "tread34", "tread35", "tread36" ],
 		"target": "treads",
 		"rotateMode": "chain"
 	}
@@ -843,232 +1031,1224 @@
 			}
 		},
 		"smoke-puff1-bg": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg10": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg11": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg12": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg13": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg14": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg15": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg16": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg17": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg18": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg2": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg20": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg21": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg22": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg23": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg24": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg25": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg26": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg27": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg3": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg4": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg5": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg6": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg7": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg8": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg9": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-fg": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg10": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg11": {
-			"smoke-puff04-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff04-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg12": {
-			"smoke-puff04-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff04-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg13": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg14": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg15": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg16": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg17": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg18": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg2": {
-			"smoke-puff01-fg": { "x": -1.01, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.82, "y": -0.39, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.82, "y": -0.39, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.82, "y": -0.39, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -1.01,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.82,
+				"y": -0.39,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.82,
+				"y": -0.39,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.82,
+				"y": -0.39,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg20": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg21": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg22": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg23": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg24": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg25": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg26": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg27": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg3": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.02, "y": -0.25, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.115, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.03, "y": -0.43, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.02,
+				"y": -0.25,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.115,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.03,
+				"y": -0.43,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg4": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.63, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.63, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.63, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.63,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.63,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.63,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg5": {
-			"smoke-puff01-fg": { "x": -1.21, "y": -0.08, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.89, "y": -0.04, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.89, "y": -0.04, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.89, "y": -0.04, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -1.21,
+				"y": -0.08,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.89,
+				"y": -0.04,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.89,
+				"y": -0.04,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.89,
+				"y": -0.04,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg6": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.48, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.48, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.48, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.48,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.48,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.48,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg7": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -0.7, "y": -0.36, "scaleX": 0.122, "scaleY": 0.121, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -0.56, "y": -0.15, "scaleX": 0.122, "scaleY": 0.122, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -0.56, "y": -0.15, "scaleX": 0.122, "scaleY": 0.122, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -0.7,
+				"y": -0.36,
+				"scaleX": 0.122,
+				"scaleY": 0.121,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -0.56,
+				"y": -0.15,
+				"scaleX": 0.122,
+				"scaleY": 0.122,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -0.56,
+				"y": -0.15,
+				"scaleX": 0.122,
+				"scaleY": 0.122,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg8": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -0.65, "y": 0.01, "scaleX": 0.123, "scaleY": 0.123, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -0.75, "y": -0.15, "scaleX": 0.121, "scaleY": 0.121, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -0.75, "y": -0.15, "scaleX": 0.121, "scaleY": 0.121, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -0.65,
+				"y": 0.01,
+				"scaleX": 0.123,
+				"scaleY": 0.123,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -0.75,
+				"y": -0.15,
+				"scaleX": 0.121,
+				"scaleY": 0.121,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -0.75,
+				"y": -0.15,
+				"scaleX": 0.121,
+				"scaleY": 0.121,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg9": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.99, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.99, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -0.95, "y": -0.48, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.99,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.99,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -0.95,
+				"y": -0.48,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"tank-body-shadow": {
 			"tank-bottom-shadow": { "x": -11.44, "y": -42.89, "width": 1291, "height": 341 }

BIN
examples/tank/export/tank-pro.skel


+ 118 - 21
examples/vine/export/vine-pro.json

@@ -1,28 +1,125 @@
 {
-"skeleton": {
-	"hash": "XMSifyRDWIo7mCMhHJDVKSi+XxE",
-	"spine": "3.7.08-beta",
-	"width": 227.33,
-	"height": 841.07,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "XMSifyRDWIo7mCMhHJDVKSi+XxE", "spine": "3.7.19-beta", "width": 227.33, "height": 841.07, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
-	{ "name": "vine1", "parent": "root", "length": 74, "rotation": 90, "x": 339.1, "y": -467.15, "color": "f700ffff" },
+	{
+		"name": "vine1",
+		"parent": "root",
+		"length": 74,
+		"rotation": 90,
+		"x": 339.1,
+		"y": -467.15,
+		"color": "f700ffff"
+	},
 	{ "name": "vine2", "parent": "vine1", "length": 74, "x": 74, "color": "f700ffff" },
-	{ "name": "vine3", "parent": "vine1", "length": 74, "rotation": 38.95, "x": 137.97, "y": 47.51, "color": "f700ffff" },
-	{ "name": "vine4", "parent": "vine1", "length": 74, "rotation": 16.68, "x": 214.29, "y": 68.52, "color": "f700ffff" },
-	{ "name": "vine5", "parent": "vine1", "length": 74, "rotation": -21.74, "x": 289.61, "y": 40.93, "color": "f700ffff" },
-	{ "name": "vine6", "parent": "vine1", "length": 74, "rotation": -50.04, "x": 341.13, "y": -15.58, "color": "f700ffff" },
-	{ "name": "vine7", "parent": "vine1", "length": 74, "rotation": -39.26, "x": 402.7, "y": -61.82, "color": "f700ffff" },
-	{ "name": "vine8", "parent": "vine1", "length": 74, "rotation": -6.18, "x": 483.27, "y": -69.84, "color": "f700ffff" },
-	{ "name": "vine9", "parent": "vine1", "length": 74, "rotation": 27.11, "x": 554.26, "y": -36.44, "color": "f700ffff" },
-	{ "name": "vine10", "parent": "vine1", "length": 74, "rotation": 48, "x": 608.63, "y": 19.06, "color": "f700ffff" },
-	{ "name": "vine11", "parent": "vine1", "length": 74, "rotation": 39.71, "x": 670.66, "y": 66.4, "color": "f700ffff" },
-	{ "name": "vine12", "parent": "vine1", "length": 74, "rotation": 10.73, "x": 750.1, "y": 80.23, "color": "f700ffff" },
-	{ "name": "vine13", "parent": "vine1", "length": 74, "rotation": -18.44, "x": 826.07, "y": 56.95, "color": "f700ffff" },
-	{ "name": "vine-control1", "parent": "root", "length": 296.68, "rotation": 88.65, "x": -2.51, "y": 2.55, "color": "ff0004ff" },
+	{
+		"name": "vine3",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 38.95,
+		"x": 137.97,
+		"y": 47.51,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine4",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 16.68,
+		"x": 214.29,
+		"y": 68.52,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine5",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": -21.74,
+		"x": 289.61,
+		"y": 40.93,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine6",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": -50.04,
+		"x": 341.13,
+		"y": -15.58,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine7",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": -39.26,
+		"x": 402.7,
+		"y": -61.82,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine8",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": -6.18,
+		"x": 483.27,
+		"y": -69.84,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine9",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 27.11,
+		"x": 554.26,
+		"y": -36.44,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine10",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 48,
+		"x": 608.63,
+		"y": 19.06,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine11",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 39.71,
+		"x": 670.66,
+		"y": 66.4,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine12",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 10.73,
+		"x": 750.1,
+		"y": 80.23,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine13",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": -18.44,
+		"x": 826.07,
+		"y": 56.95,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine-control1",
+		"parent": "root",
+		"length": 296.68,
+		"rotation": 88.65,
+		"x": -2.51,
+		"y": 2.55,
+		"color": "ff0004ff"
+	},
 	{ "name": "vine-control2", "parent": "vine-control1", "length": 292.6, "rotation": 0.96, "x": 296.68, "color": "ff0004ff" },
 	{ "name": "vine-control3", "parent": "vine-control2", "length": 247.5, "rotation": 0.16, "x": 292.6, "color": "ff0004ff" },
 	{ "name": "vine-control4", "parent": "vine-control3", "length": 212.43, "rotation": 0.5, "x": 247.5, "color": "ff0004ff" }

BIN
examples/vine/export/vine-pro.skel


+ 1 - 1
spine-as3/spine-as3-example/.settings/com.powerflasher.fdt.classpath

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <AS3Classpath>
     <AS3LibraryFolder>lib</AS3LibraryFolder>
-    <AS3Classpath generateProblems="true" sdkBased="true" type="lib" useAsSharedCode="false">frameworks/libs/player/{playerVersion}/playerglobal.swc</AS3Classpath>
+    <AS3Classpath generateProblems="true" sdkBased="true" type="lib" useAsSharedCode="false">frameworks/libs/player/30.0/playerglobal.swc</AS3Classpath>
     <AS3Classpath generateProblems="true" sdkBased="false" type="source" useAsSharedCode="false">src</AS3Classpath>
     <AS3Classpath generateProblems="true" sdkBased="false" type="lib" useAsSharedCode="false">lib/spine-as3.swc</AS3Classpath>
 </AS3Classpath>

+ 1 - 1
spine-as3/spine-as3-example/.settings/com.powerflasher.fdt.core.prefs

@@ -14,7 +14,7 @@ com.powerflasher.fdt.core.PassManifests=true
 com.powerflasher.fdt.core.PassRsls=false
 com.powerflasher.fdt.core.PassSwcs=true
 com.powerflasher.fdt.core.PlatformType=WEB
-com.powerflasher.fdt.core.PlayerVersion=23.0
+com.powerflasher.fdt.core.PlayerVersion=30.0
 com.powerflasher.fdt.core.ProjectTypeHint=Web
 com.powerflasher.fdt.core.Runtime=Flash_Player
 com.powerflasher.fdt.core.SdkName=Flex 4.6.0

+ 51 - 48
spine-as3/spine-as3-example/.settings/launch/spine-as3-example.launch

@@ -1,48 +1,51 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="com.powerflasher.fdt.ui.MxmlcGroup">
-<stringAttribute key="ADL_DESCRIPTOR_FILE" value=""/>
-<stringAttribute key="ADOBE_FLASH_PLAYER_EXECUTABLE" value=""/>
-<booleanAttribute key="ADOBE_FLASH_PLAYER_USE_EXECUTABLE" value="false"/>
-<booleanAttribute key="ADVANCED_TELEMTRY" value="false"/>
-<intAttribute key="AIR_VIEWER_CONF" value="0"/>
-<stringAttribute key="APP_ARGUMENTS" value=""/>
-<stringAttribute key="ARGUMENTS" value="-static-link-runtime-shared-libraries=true&#10;-target-player={playerVersion}&#10;-library-path+=&quot;{flexSDK}/frameworks/locale/en_US&quot;&#10;-default-size=550,400"/>
-<listAttribute key="COMPILER_CONSTANTS"/>
-<stringAttribute key="COMPILER_TECHNOLOGY" value="Flex SDK"/>
-<booleanAttribute key="DISABLE_COMPILE_PROCESS" value="false"/>
-<booleanAttribute key="FORCE_FRESH_COMPILATION" value="false"/>
-<booleanAttribute key="KILL_PREVIOUS_VIEWER" value="true"/>
-<stringAttribute key="LAUNCHER_DEPENDENCIES" value="[Self]"/>
-<stringAttribute key="MAIN_CLASS" value="src/spine/examples/Main.as"/>
-<stringAttribute key="MOBILE_PRESET" value=""/>
-<booleanAttribute key="NEW_WINDOW_EACH_LAUNCH" value="false"/>
-<stringAttribute key="OUTPUT" value="bin/spine-as3-example.swf"/>
-<booleanAttribute key="PASS_CP" value="true"/>
-<booleanAttribute key="PASS_DEFINES" value="true"/>
-<booleanAttribute key="PASS_EXTERNS" value="false"/>
-<booleanAttribute key="PASS_MAIN_CLASS" value="true"/>
-<booleanAttribute key="PASS_MANIFESTS" value="true"/>
-<booleanAttribute key="PASS_RSLS" value="false"/>
-<booleanAttribute key="PASS_SWCS" value="true"/>
-<intAttribute key="PLAYER_HEIGHT" value="400"/>
-<booleanAttribute key="PLAYER_SET_SIZE" value="false"/>
-<intAttribute key="PLAYER_WIDTH" value="550"/>
-<stringAttribute key="POST_COMPILE_ANT" value=""/>
-<stringAttribute key="PREFERRED_BROWSER" value=""/>
-<stringAttribute key="PRE_COMPILE_ANT" value=""/>
-<stringAttribute key="PROJECT_NAME" value="spine-as3-example"/>
-<stringAttribute key="PUBLISHER_ID" value=""/>
-<booleanAttribute key="START_DEBUGGER" value="true"/>
-<booleanAttribute key="START_SWF_ENABLED" value="true"/>
-<stringAttribute key="START_SWF_LOCATION" value="bin/spine-as3-example.swf"/>
-<stringAttribute key="START_SWF_WITH" value="Adobe Flash Player"/>
-<booleanAttribute key="SUPPRESS_EXCEPTION_POPUP" value="false"/>
-<booleanAttribute key="USE_PROJECT_COMPILER_ARGUMENTS" value="false"/>
-<booleanAttribute key="WAITING_DIALOG_PLUGIN" value="false"/>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/spine-as3-example"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="4"/>
-</listAttribute>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="com.powerflasher.fdt.ui.MxmlcGroup">
+<stringAttribute key="ADL_DESCRIPTOR_FILE" value=""/>
+<stringAttribute key="ADOBE_FLASH_PLAYER_EXECUTABLE" value=""/>
+<booleanAttribute key="ADOBE_FLASH_PLAYER_USE_EXECUTABLE" value="false"/>
+<booleanAttribute key="ADVANCED_TELEMTRY" value="false"/>
+<intAttribute key="AIR_VIEWER_CONF" value="0"/>
+<stringAttribute key="APP_ARGUMENTS" value=""/>
+<stringAttribute key="ARGUMENTS" value="-static-link-runtime-shared-libraries=true&#10;-target-player={playerVersion}&#10;-library-path+=&quot;{flexSDK}/frameworks/locale/en_US&quot;&#10;-default-size=550,400"/>
+<listAttribute key="COMPILER_CONSTANTS"/>
+<stringAttribute key="COMPILER_TECHNOLOGY" value="Flex SDK"/>
+<booleanAttribute key="DISABLE_COMPILE_PROCESS" value="false"/>
+<booleanAttribute key="FORCE_FRESH_COMPILATION" value="false"/>
+<booleanAttribute key="FORCE_INCLUDE_TEST_RESOURCES" value="false"/>
+<booleanAttribute key="IGNORE_SWF_LOCATION_PROBLEM" value="false"/>
+<booleanAttribute key="INCLUDE_TEST_RESOURCES" value="false"/>
+<booleanAttribute key="KILL_PREVIOUS_VIEWER" value="true"/>
+<stringAttribute key="LAUNCHER_DEPENDENCIES" value="[Self]"/>
+<stringAttribute key="MAIN_CLASS" value="src/spine/examples/Main.as"/>
+<stringAttribute key="MOBILE_PRESET" value=""/>
+<booleanAttribute key="NEW_WINDOW_EACH_LAUNCH" value="false"/>
+<stringAttribute key="OUTPUT" value="bin/spine-as3-example.swf"/>
+<booleanAttribute key="PASS_CP" value="true"/>
+<booleanAttribute key="PASS_DEFINES" value="true"/>
+<booleanAttribute key="PASS_EXTERNS" value="false"/>
+<booleanAttribute key="PASS_MAIN_CLASS" value="true"/>
+<booleanAttribute key="PASS_MANIFESTS" value="true"/>
+<booleanAttribute key="PASS_RSLS" value="false"/>
+<booleanAttribute key="PASS_SWCS" value="true"/>
+<intAttribute key="PLAYER_HEIGHT" value="400"/>
+<booleanAttribute key="PLAYER_SET_SIZE" value="false"/>
+<intAttribute key="PLAYER_WIDTH" value="550"/>
+<stringAttribute key="POST_COMPILE_ANT" value=""/>
+<stringAttribute key="PREFERRED_BROWSER" value=""/>
+<stringAttribute key="PRE_COMPILE_ANT" value=""/>
+<stringAttribute key="PROJECT_NAME" value="spine-as3-example"/>
+<stringAttribute key="PUBLISHER_ID" value=""/>
+<booleanAttribute key="START_DEBUGGER" value="true"/>
+<booleanAttribute key="START_SWF_ENABLED" value="true"/>
+<stringAttribute key="START_SWF_LOCATION" value="bin/spine-as3-example.swf"/>
+<stringAttribute key="START_SWF_WITH" value="Adobe Flash Player"/>
+<booleanAttribute key="SUPPRESS_EXCEPTION_POPUP" value="false"/>
+<booleanAttribute key="USE_PROJECT_COMPILER_ARGUMENTS" value="true"/>
+<booleanAttribute key="WAITING_DIALOG_PLUGIN" value="false"/>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/spine-as3-example"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="4"/>
+</listAttribute>
+</launchConfiguration>

BIN
spine-as3/spine-as3-example/lib/spine-as3.swc


+ 118 - 21
spine-as3/spine-as3-example/src/spineboy-ess.json

@@ -1,18 +1,27 @@
 {
-"skeleton": {
-	"hash": "0DoQUqP6ATLL322RHY3r98lgFr8",
-	"spine": "3.7.08-beta",
-	"width": 470.72,
-	"height": 731.57,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "0DoQUqP6ATLL322RHY3r98lgFr8", "spine": "3.7.19-beta", "width": 470.72, "height": 731.57, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "dust", "parent": "root", "x": -303.6, "y": 32.64, "scaleX": 1.457 },
 	{ "name": "hip", "parent": "root", "y": 247.47 },
-	{ "name": "torso", "parent": "hip", "length": 127.56, "rotation": 103.82, "x": -1.62, "y": 4.9, "color": "e0da19ff" },
-	{ "name": "front-upper-arm", "parent": "torso", "length": 69.45, "rotation": 168.38, "x": 103.76, "y": 19.33, "color": "00ff04ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 127.56,
+		"rotation": 103.82,
+		"x": -1.62,
+		"y": 4.9,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "front-upper-arm",
+		"parent": "torso",
+		"length": 69.45,
+		"rotation": 168.38,
+		"x": 103.76,
+		"y": 19.33,
+		"color": "00ff04ff"
+	},
 	{
 		"name": "front-bracer",
 		"parent": "front-upper-arm",
@@ -22,19 +31,107 @@
 		"y": -0.68,
 		"color": "00ff04ff"
 	},
-	{ "name": "front-fist", "parent": "front-bracer", "length": 65.39, "rotation": 12.43, "x": 40.57, "y": 0.2, "color": "00ff04ff" },
-	{ "name": "front-thigh", "parent": "hip", "length": 74.81, "rotation": -95.51, "x": -17.46, "y": -11.64, "color": "00ff04ff" },
-	{ "name": "front-shin", "parent": "front-thigh", "length": 128.77, "rotation": -2.21, "x": 78.69, "y": 1.6, "color": "00ff04ff" },
-	{ "name": "front-foot", "parent": "front-shin", "length": 91.34, "rotation": 77.91, "x": 128.76, "y": -0.34, "color": "00ff04ff" },
-	{ "name": "rear-upper-arm", "parent": "torso", "length": 51.94, "rotation": -169.56, "x": 92.36, "y": -19.22, "color": "ff000dff" },
+	{
+		"name": "front-fist",
+		"parent": "front-bracer",
+		"length": 65.39,
+		"rotation": 12.43,
+		"x": 40.57,
+		"y": 0.2,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-thigh",
+		"parent": "hip",
+		"length": 74.81,
+		"rotation": -95.51,
+		"x": -17.46,
+		"y": -11.64,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-shin",
+		"parent": "front-thigh",
+		"length": 128.77,
+		"rotation": -2.21,
+		"x": 78.69,
+		"y": 1.6,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-foot",
+		"parent": "front-shin",
+		"length": 91.34,
+		"rotation": 77.91,
+		"x": 128.76,
+		"y": -0.34,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "rear-upper-arm",
+		"parent": "torso",
+		"length": 51.94,
+		"rotation": -169.56,
+		"x": 92.36,
+		"y": -19.22,
+		"color": "ff000dff"
+	},
 	{ "name": "rear-bracer", "parent": "rear-upper-arm", "length": 34.56, "rotation": 23.15, "x": 51.36, "color": "ff000dff" },
-	{ "name": "gun", "parent": "rear-bracer", "length": 43.11, "rotation": 5.35, "x": 34.42, "y": -0.45, "color": "ff000dff" },
+	{
+		"name": "gun",
+		"parent": "rear-bracer",
+		"length": 43.11,
+		"rotation": 5.35,
+		"x": 34.42,
+		"y": -0.45,
+		"color": "ff000dff"
+	},
 	{ "name": "gun-tip", "parent": "gun", "rotation": 6.83, "x": 201.05, "y": 52.14, "color": "ff000dff" },
-	{ "name": "neck", "parent": "torso", "length": 25.45, "rotation": -31.54, "x": 127.5, "y": -0.31, "color": "e0da19ff" },
-	{ "name": "head", "parent": "neck", "length": 263.58, "rotation": 23.18, "x": 27.66, "y": -0.26, "color": "e0da19ff" },
-	{ "name": "rear-thigh", "parent": "hip", "length": 85.72, "rotation": -72.54, "x": 8.91, "y": -5.63, "color": "ff000dff" },
-	{ "name": "rear-shin", "parent": "rear-thigh", "length": 121.88, "rotation": -19.83, "x": 86.1, "y": -1.33, "color": "ff000dff" },
-	{ "name": "rear-foot", "parent": "rear-shin", "length": 82.57, "rotation": 69.3, "x": 121.46, "y": -0.76, "color": "ff000dff" }
+	{
+		"name": "neck",
+		"parent": "torso",
+		"length": 25.45,
+		"rotation": -31.54,
+		"x": 127.5,
+		"y": -0.31,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 263.58,
+		"rotation": 23.18,
+		"x": 27.66,
+		"y": -0.26,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "rear-thigh",
+		"parent": "hip",
+		"length": 85.72,
+		"rotation": -72.54,
+		"x": 8.91,
+		"y": -5.63,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-shin",
+		"parent": "rear-thigh",
+		"length": 121.88,
+		"rotation": -19.83,
+		"x": 86.1,
+		"y": -1.33,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-foot",
+		"parent": "rear-shin",
+		"length": 82.57,
+		"rotation": 69.3,
+		"x": 121.46,
+		"y": -0.76,
+		"color": "ff000dff"
+	}
 ],
 "slots": [
 	{ "name": "rear-upper-arm", "bone": "rear-upper-arm", "attachment": "rear-upper-arm" },

+ 1 - 1
spine-as3/spine-as3/.settings/com.powerflasher.fdt.classpath

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <AS3Classpath>
     <AS3Classpath generateProblems="true" sdkBased="false" type="source" useAsSharedCode="false">src</AS3Classpath>
-    <AS3Classpath generateProblems="true" sdkBased="true" type="lib" useAsSharedCode="false">frameworks/libs/player/{playerVersion}/playerglobal.swc</AS3Classpath>
+    <AS3Classpath generateProblems="true" sdkBased="true" type="lib" useAsSharedCode="false">frameworks/libs/player/30.0/playerglobal.swc</AS3Classpath>
 </AS3Classpath>

+ 1 - 1
spine-as3/spine-as3/.settings/com.powerflasher.fdt.core.prefs

@@ -14,7 +14,7 @@ com.powerflasher.fdt.core.PassManifests=true
 com.powerflasher.fdt.core.PassRsls=false
 com.powerflasher.fdt.core.PassSwcs=true
 com.powerflasher.fdt.core.PlatformType=WEB
-com.powerflasher.fdt.core.PlayerVersion=23.0
+com.powerflasher.fdt.core.PlayerVersion=30.0
 com.powerflasher.fdt.core.ProjectTypeHint=Web
 com.powerflasher.fdt.core.Runtime=Flash_Player
 com.powerflasher.fdt.core.SdkName=Flex 4.6.0

+ 24 - 23
spine-as3/spine-as3/.settings/launch/spine-as3.swc.launch

@@ -1,23 +1,24 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="com.powerflasher.fdt.ui.CompcGroup">
-<booleanAttribute key="ADVANCED_TELEMTRY" value="false"/>
-<stringAttribute key="ARGUMENTS" value=" -target-player={playerVersion}"/>
-<listAttribute key="COMPILER_CONSTANTS"/>
-<stringAttribute key="COMPILER_TECHNOLOGY" value="Flex SDK"/>
-<booleanAttribute key="FORCE_FRESH_COMPILATION" value="false"/>
-<stringAttribute key="LAUNCHER_DEPENDENCIES" value="[Self]"/>
-<stringAttribute key="MAIN_CLASS" value=""/>
-<stringAttribute key="OUTPUT" value="../spine-as3-example/lib/spine-as3.swc"/>
-<booleanAttribute key="PASS_CP" value="true"/>
-<booleanAttribute key="PASS_DEFINES" value="true"/>
-<booleanAttribute key="PASS_EXTERNS" value="true"/>
-<booleanAttribute key="PASS_MANIFESTS" value="true"/>
-<booleanAttribute key="PASS_SWCS" value="true"/>
-<stringAttribute key="PROJECT_NAME" value="spine-as3"/>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
-<listEntry value="/spine-as3"/>
-</listAttribute>
-<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
-<listEntry value="4"/>
-</listAttribute>
-</launchConfiguration>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="com.powerflasher.fdt.ui.CompcGroup">
+<booleanAttribute key="ADVANCED_TELEMTRY" value="false"/>
+<stringAttribute key="ARGUMENTS" value=" -target-player=30.0"/>
+<listAttribute key="COMPILER_CONSTANTS"/>
+<stringAttribute key="COMPILER_TECHNOLOGY" value="Flex SDK"/>
+<booleanAttribute key="FORCE_FRESH_COMPILATION" value="false"/>
+<booleanAttribute key="INCLUDE_TEST_RESOURCES" value="false"/>
+<stringAttribute key="LAUNCHER_DEPENDENCIES" value="[Self]"/>
+<stringAttribute key="MAIN_CLASS" value=""/>
+<stringAttribute key="OUTPUT" value="../spine-as3-example/lib/spine-as3.swc"/>
+<booleanAttribute key="PASS_CP" value="true"/>
+<booleanAttribute key="PASS_DEFINES" value="true"/>
+<booleanAttribute key="PASS_EXTERNS" value="true"/>
+<booleanAttribute key="PASS_MANIFESTS" value="true"/>
+<booleanAttribute key="PASS_SWCS" value="true"/>
+<stringAttribute key="PROJECT_NAME" value="spine-as3"/>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/spine-as3"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="4"/>
+</listAttribute>
+</launchConfiguration>

+ 3 - 0
spine-as3/spine-as3/.settings/org.eclipse.core.resources.prefs

@@ -1,6 +1,9 @@
 eclipse.preferences.version=1
+encoding//src/spine/IkConstraint.as=UTF-8
+encoding//src/spine/IkConstraintData.as=UTF-8
 encoding//src/spine/Interpolation.as=UTF-8
 encoding//src/spine/MathUtils.as=UTF-8
+encoding//src/spine/Skeleton.as=UTF-8
 encoding//src/spine/SkeletonClipping.as=UTF-8
 encoding//src/spine/SkeletonJson.as=UTF-8
 encoding//src/spine/Triangulator.as=UTF-8

+ 22 - 12
spine-as3/spine-as3/src/spine/IkConstraint.as

@@ -33,8 +33,9 @@ package spine {
 		internal var _data : IkConstraintData;
 		public var bones : Vector.<Bone>;
 		public var target : Bone;
-		public var mix : Number;
 		public var bendDirection : int;
+		public var stretch: Boolean;
+		public var mix : Number;
 
 		public function IkConstraint(data : IkConstraintData, skeleton : Skeleton) {
 			if (data == null) throw new ArgumentError("data cannot be null.");
@@ -42,6 +43,7 @@ package spine {
 			_data = data;
 			mix = data.mix;
 			bendDirection = data.bendDirection;
+			stretch = data.stretch;
 
 			bones = new Vector.<Bone>();
 			for each (var boneData : BoneData in data.bones)
@@ -56,10 +58,10 @@ package spine {
 		public function update() : void {
 			switch (bones.length) {
 				case 1:
-					apply1(bones[0], target.worldX, target.worldY, mix);
+					apply1(bones[0], target.worldX, target.worldY, stretch, mix);
 					break;
 				case 2:
-					apply2(bones[0], bones[1], target.worldX, target.worldY, bendDirection, mix);
+					apply2(bones[0], bones[1], target.worldX, target.worldY, bendDirection, stretch, mix);
 					break;
 			}
 		}
@@ -78,7 +80,7 @@ package spine {
 
 		/** Adjusts the bone rotation so the tip is as close to the target position as possible. The target is specified in the world
 		 * coordinate system. */
-		static public function apply1(bone : Bone, targetX : Number, targetY : Number, alpha : Number) : void {
+		static public function apply1(bone : Bone, targetX : Number, targetY : Number, stretch : Boolean, alpha : Number) : void {
 			if (!bone.appliedValid) bone.updateAppliedTransform();
 			var p : Bone = bone.parent;
 			var id : Number = 1 / (p.a * p.d - p.b * p.c);
@@ -89,20 +91,25 @@ package spine {
 			if (rotationIK > 180)
 				rotationIK -= 360;
 			else if (rotationIK < -180) rotationIK += 360;
-			bone.updateWorldTransformWith(bone.ax, bone.ay, bone.arotation + rotationIK * alpha, bone.ascaleX, bone.ascaleY, bone.ashearX, bone.ashearY);
+			var sx : Number = bone.ascaleX;
+			if (stretch) {
+				var b : Number = bone.data.length * sx, dd : Number = Math.sqrt(tx * tx + ty * ty);
+				if (dd > b && b > 0.0001) sx *= (dd / b - 1) * alpha + 1;
+			}
+			bone.updateWorldTransformWith(bone.ax, bone.ay, bone.arotation + rotationIK * alpha, sx, bone.ascaleY, bone.ashearX, bone.ashearY);
 		}
 
 		/** Adjusts the parent and child bone rotations so the tip of the child is as close to the target position as possible. The
 		 * target is specified in the world coordinate system.
 		 * @param child Any descendant bone of the parent. */
-		static public function apply2(parent : Bone, child : Bone, targetX : Number, targetY : Number, bendDir : int, alpha : Number) : void {
+		static public function apply2(parent : Bone, child : Bone, targetX : Number, targetY : Number, bendDir : int, stretch : Boolean, alpha : Number) : void {
 			if (alpha == 0) {
 				child.updateWorldTransform();
 				return;
 			}
 			if (!parent.appliedValid) parent.updateAppliedTransform();
 			if (!child.appliedValid) child.updateAppliedTransform();
-			var px : Number = parent.ax, py : Number = parent.ay, psx : Number = parent.ascaleX, psy : Number = parent.ascaleY, csx : Number = child.ascaleX;
+			var px : Number = parent.ax, py : Number = parent.ay, psx : Number = parent.ascaleX, sx : Number = psx, psy : Number = parent.ascaleY, csx : Number = child.ascaleX;
 			var os1 : int, os2 : int, s2 : int;
 			if (psx < 0) {
 				psx = -psx;
@@ -138,7 +145,7 @@ package spine {
 			c = pp.c;
 			d = pp.d;
 			var id : Number = 1 / (a * d - b * c), x : Number = targetX - pp.worldX, y : Number = targetY - pp.worldY;
-			var tx : Number = (x * d - y * b) * id - px, ty : Number = (y * a - x * c) * id - py;
+			var tx : Number = (x * d - y * b) * id - px, ty : Number = (y * a - x * c) * id - py, dd : Number = tx * tx + ty * ty;
 			x = cwx - pp.worldX;
 			y = cwy - pp.worldY;
 			var dx : Number = (x * d - y * b) * id - px, dy : Number = (y * a - x * c) * id - py;
@@ -146,10 +153,13 @@ package spine {
 			outer:
 			if (u) {
 				l2 *= psx;
-				var cos : Number = (tx * tx + ty * ty - l1 * l1 - l2 * l2) / (2 * l1 * l2);
+				var cos : Number = (dd - l1 * l1 - l2 * l2) / (2 * l1 * l2);
 				if (cos < -1)
 					cos = -1;
-				else if (cos > 1) cos = 1;
+				else if (cos > 1) {
+					cos = 1;
+					if (stretch && l1 + l2 > 0.0001) sx *= (Math.sqrt(dd) / (l1 + l2) - 1) * alpha + 1;
+				}
 				a2 = Math.acos(cos) * bendDir;
 				a = l1 + l2 * cos;
 				b = l2 * Math.sin(a2);
@@ -157,7 +167,7 @@ package spine {
 			} else {
 				a = psx * l2;
 				b = psy * l2;
-				var aa : Number = a * a, bb : Number = b * b, dd : Number = tx * tx + ty * ty, ta : Number = Math.atan2(ty, tx);
+				var aa : Number = a * a, bb : Number = b * b, ta : Number = Math.atan2(ty, tx);
 				c = bb * l1 * l1 + aa * dd - aa * bb;
 				var c1 : Number = -2 * bb * l1, c2 : Number = bb - aa;
 				d = c1 * c1 - 4 * c2 * c;
@@ -209,7 +219,7 @@ package spine {
 			if (a1 > 180)
 				a1 -= 360;
 			else if (a1 < -180) a1 += 360;
-			parent.updateWorldTransformWith(px, py, rotation + a1 * alpha, parent.ascaleX, parent.ascaleY, 0, 0);
+			parent.updateWorldTransformWith(px, py, rotation + a1 * alpha, sx, parent.ascaleY, 0, 0);
 			rotation = child.arotation;
 			a2 = ((a2 + os) * MathUtils.radDeg - child.ashearX) * s2 + os2 - rotation;
 			if (a2 > 180)

+ 2 - 1
spine-as3/spine-as3/src/spine/IkConstraintData.as

@@ -34,8 +34,9 @@ package spine {
 		public var order : Number;
 		public var bones : Vector.<BoneData> = new Vector.<BoneData>();
 		public var target : BoneData;
-		public var bendDirection : int = 1;
 		public var mix : Number = 1;
+		public var bendDirection : int = 1;
+		public var stretch : Boolean = false;
 
 		public function IkConstraintData(name : String) {
 			if (name == null) throw new ArgumentError("name cannot be null.");

+ 1 - 0
spine-as3/spine-as3/src/spine/Skeleton.as

@@ -291,6 +291,7 @@ package spine {
 
 			for each (var ikConstraint : IkConstraint in ikConstraints) {
 				ikConstraint.bendDirection = ikConstraint._data.bendDirection;
+				ikConstraint.stretch = ikConstraint._data.stretch;
 				ikConstraint.mix = ikConstraint._data.mix;
 			}
 

+ 3 - 1
spine-as3/spine-as3/src/spine/SkeletonJson.as

@@ -158,6 +158,7 @@ package spine {
 				if (!ikConstraintData.target) throw new Error("Target bone not found: " + constraintMap["target"]);
 
 				ikConstraintData.bendDirection = (!constraintMap.hasOwnProperty("bendPositive") || constraintMap["bendPositive"]) ? 1 : -1;
+				ikConstraintData.stretch = (!constraintMap.hasOwnProperty("stretch") || constraintMap["stretch"]);
 				ikConstraintData.mix = constraintMap.hasOwnProperty("mix") ? constraintMap["mix"] : 1;
 
 				skeletonData.ikConstraints.push(ikConstraintData);
@@ -531,7 +532,8 @@ package spine {
 				for each (valueMap in values) {
 					var mix : Number = valueMap.hasOwnProperty("mix") ? valueMap["mix"] : 1;
 					var bendDirection : int = (!valueMap.hasOwnProperty("bendPositive") || valueMap["bendPositive"]) ? 1 : -1;
-					ikTimeline.setFrame(frameIndex, valueMap["time"], mix, bendDirection);
+					var stretch : Boolean = (!valueMap.hasOwnProperty("stretch") || valueMap["stretch"]);
+					ikTimeline.setFrame(frameIndex, valueMap["time"], mix, bendDirection, stretch);
 					readCurve(valueMap, ikTimeline, frameIndex);
 					frameIndex++;
 				}

+ 30 - 8
spine-as3/spine-as3/src/spine/animation/IkConstraintTimeline.as

@@ -34,9 +34,9 @@ package spine.animation {
 	import spine.Skeleton;
 
 	public class IkConstraintTimeline extends CurveTimeline {
-		static public const ENTRIES : int = 3;
-		static internal const PREV_TIME : int = -3, PREV_MIX : int = -2, PREV_BEND_DIRECTION : int = -1;
-		static internal const MIX : int = 1, BEND_DIRECTION : int = 2;
+		static public const ENTRIES : int = 4;
+		static internal const PREV_TIME : int = -4, PREV_MIX : int = -3, PREV_BEND_DIRECTION : int = -2, PREV_STRETCH : int = -1;
+		static internal const MIX : int = 1, BEND_DIRECTION : int = 2, STRETCH : int = 3;
 		public var ikConstraintIndex : int;
 		public var frames : Vector.<Number>; // time, mix, bendDirection, ...
 
@@ -50,11 +50,12 @@ package spine.animation {
 		}
 
 		/** Sets the time, mix and bend direction of the specified keyframe. */
-		public function setFrame(frameIndex : int, time : Number, mix : Number, bendDirection : int) : void {
+		public function setFrame(frameIndex : int, time : Number, mix : Number, bendDirection : int, stretch: Boolean) : void {
 			frameIndex *= ENTRIES;
 			frames[frameIndex] = time;
 			frames[int(frameIndex + MIX)] = mix;
 			frames[int(frameIndex + BEND_DIRECTION)] = bendDirection;
+			frames[int(frameIndex + STRETCH)] = stretch ? 1 : 0;
 		}
 
 		override public function apply(skeleton : Skeleton, lastTime : Number, time : Number, firedEvents : Vector.<Event>, alpha : Number, blend : MixBlend, direction : MixDirection) : void {
@@ -64,10 +65,12 @@ package spine.animation {
 				case MixBlend.setup:
 					constraint.mix = constraint.data.mix;
 					constraint.bendDirection = constraint.data.bendDirection;
+					constraint.stretch = constraint.data.stretch;
 					return;
 				case MixBlend.first:
 					constraint.mix += (constraint.data.mix - constraint.mix) * alpha;
 					constraint.bendDirection = constraint.data.bendDirection;
+					constraint.stretch = constraint.data.stretch;
 				}
 				return;
 			}
@@ -75,10 +78,20 @@ package spine.animation {
 			if (time >= frames[int(frames.length - ENTRIES)]) { // Time is after last frame.
 				if (blend == MixBlend.setup) {
 					constraint.mix = constraint.data.mix + (frames[frames.length + PREV_MIX] - constraint.data.mix) * alpha;
-					constraint.bendDirection = direction == MixDirection.Out ? constraint.data.bendDirection : int(frames[frames.length + PREV_BEND_DIRECTION]);
+					
+					if (direction == MixDirection.Out) {
+						constraint.bendDirection = constraint.data.bendDirection;
+						constraint.stretch = constraint.data.stretch;
+					} else {
+						constraint.bendDirection = int(frames[frames.length + PREV_BEND_DIRECTION]);
+						constraint.stretch = int(frames[frames.length + PREV_STRETCH]) != 0;
+					}					
 				} else {
 					constraint.mix += (frames[frames.length + PREV_MIX] - constraint.mix) * alpha;
-					if (direction == MixDirection.In) constraint.bendDirection = int(frames[frames.length + PREV_BEND_DIRECTION]);
+					if (direction == MixDirection.In) {
+						constraint.bendDirection = int(frames[frames.length + PREV_BEND_DIRECTION]);
+						constraint.stretch = int(frames[frames.length + PREV_STRETCH]) != 0;
+					}
 				}
 				return;
 			}
@@ -91,10 +104,19 @@ package spine.animation {
 
 			if (blend == MixBlend.setup) {
 				constraint.mix = constraint.data.mix + (mix + (frames[frame + MIX] - mix) * percent - constraint.data.mix) * alpha;
-				constraint.bendDirection = direction == MixDirection.Out ? constraint.data.bendDirection : int(frames[frame + PREV_BEND_DIRECTION]);
+				if (direction == MixDirection.Out) {
+					constraint.bendDirection = constraint.data.bendDirection;
+					constraint.stretch = constraint.data.stretch;	
+				} else {
+					constraint.bendDirection = int(frames[frame + PREV_BEND_DIRECTION]);
+					constraint.stretch = int(frames[frame + PREV_STRETCH]) != 0;
+				}				
 			} else {
 				constraint.mix += (mix + (frames[frame + MIX] - mix) * percent - constraint.mix) * alpha;
-				if (direction == MixDirection.In) constraint.bendDirection = int(frames[frame + PREV_BEND_DIRECTION]);
+				if (direction == MixDirection.In) {
+					constraint.bendDirection = int(frames[frame + PREV_BEND_DIRECTION]);
+					constraint.stretch = int(frames[frame + PREV_STRETCH]) != 0;
+				}
 			}
 		}
 	}

+ 1 - 1
spine-c/spine-c/src/spine/VertexAttachment.c

@@ -51,7 +51,7 @@ void spVertexAttachment_computeWorldVertices (spVertexAttachment* self, spSlot*
 	float* vertices;
 	int* bones;
 
-	count = offset + (count >> 1) * stride;
+	count += offset;
 	skeleton = slot->bone->skeleton;
 	deformLength = slot->attachmentVerticesCount;
 	deform = slot->attachmentVertices;

+ 1 - 8
spine-cocos2d-objc/Resources/coin-pro.json

@@ -1,12 +1,5 @@
 {
-"skeleton": {
-	"hash": "lfmnIwRt8cjfHaBQWvT0v4odYdY",
-	"spine": "3.7.08-beta",
-	"width": 260,
-	"height": 359.92,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "lfmnIwRt8cjfHaBQWvT0v4odYdY", "spine": "3.7.19-beta", "width": 260, "height": 359.92, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "coin-root", "parent": "root", "y": 300, "color": "ff0000ff" },

+ 127 - 22
spine-cocos2d-objc/Resources/goblins-pro.json

@@ -1,21 +1,62 @@
 {
-"skeleton": {
-	"hash": "GEt0/K+46aqD75ngNEZOztV899k",
-	"spine": "3.7.08-beta",
-	"width": 266.94,
-	"height": 349.61,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "GEt0/K+46aqD75ngNEZOztV899k", "spine": "3.7.19-beta", "width": 266.94, "height": 349.61, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "x": 0.65, "y": 114.41, "color": "ffcf00ff" },
-	{ "name": "torso", "parent": "hip", "length": 85.83, "rotation": 93.93, "x": -6.42, "y": 1.98, "color": "ffcf00ff" },
-	{ "name": "neck", "parent": "torso", "length": 18.38, "rotation": -1.52, "x": 81.68, "y": -6.35, "color": "ffcf00ff" },
-	{ "name": "head", "parent": "neck", "length": 68.29, "rotation": -13.92, "x": 20.94, "y": 11.59, "color": "ffcf00ff" },
-	{ "name": "left-shoulder", "parent": "torso", "length": 35.43, "rotation": -156.96, "x": 74.05, "y": -20.39, "color": "ff0000ff" },
-	{ "name": "left-arm", "parent": "left-shoulder", "length": 35.62, "rotation": 28.17, "x": 37.86, "y": -2.35, "color": "ff0000ff" },
-	{ "name": "left-upper-leg", "parent": "hip", "length": 50.4, "rotation": -89.1, "x": 14.45, "y": 2.81, "color": "ff0000ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 85.83,
+		"rotation": 93.93,
+		"x": -6.42,
+		"y": 1.98,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "neck",
+		"parent": "torso",
+		"length": 18.38,
+		"rotation": -1.52,
+		"x": 81.68,
+		"y": -6.35,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 68.29,
+		"rotation": -13.92,
+		"x": 20.94,
+		"y": 11.59,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "left-shoulder",
+		"parent": "torso",
+		"length": 35.43,
+		"rotation": -156.96,
+		"x": 74.05,
+		"y": -20.39,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-arm",
+		"parent": "left-shoulder",
+		"length": 35.62,
+		"rotation": 28.17,
+		"x": 37.86,
+		"y": -2.35,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-upper-leg",
+		"parent": "hip",
+		"length": 50.4,
+		"rotation": -89.1,
+		"x": 14.45,
+		"y": 2.81,
+		"color": "ff0000ff"
+	},
 	{
 		"name": "left-lower-leg",
 		"parent": "left-upper-leg",
@@ -34,11 +75,43 @@
 		"y": -7.61,
 		"color": "ff0000ff"
 	},
-	{ "name": "left-hand", "parent": "left-arm", "length": 11.52, "rotation": 2.7, "x": 35.62, "y": 0.08, "color": "ff0000ff" },
+	{
+		"name": "left-hand",
+		"parent": "left-arm",
+		"length": 11.52,
+		"rotation": 2.7,
+		"x": 35.62,
+		"y": 0.08,
+		"color": "ff0000ff"
+	},
 	{ "name": "pelvis", "parent": "hip", "x": 1.41, "y": -6.58, "color": "ffcf00ff" },
-	{ "name": "right-shoulder", "parent": "torso", "length": 37.25, "rotation": 133.89, "x": 76.02, "y": 18.15, "color": "62ff00ff" },
-	{ "name": "right-arm", "parent": "right-shoulder", "length": 36.75, "rotation": 36.33, "x": 37.61, "y": 0.31, "color": "62ff00ff" },
-	{ "name": "right-upper-leg", "parent": "hip", "length": 42.46, "rotation": -97.5, "x": -20.08, "y": -6.84, "color": "62ff00ff" },
+	{
+		"name": "right-shoulder",
+		"parent": "torso",
+		"length": 37.25,
+		"rotation": 133.89,
+		"x": 76.02,
+		"y": 18.15,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "right-arm",
+		"parent": "right-shoulder",
+		"length": 36.75,
+		"rotation": 36.33,
+		"x": 37.61,
+		"y": 0.31,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "right-upper-leg",
+		"parent": "hip",
+		"length": 42.46,
+		"rotation": -97.5,
+		"x": -20.08,
+		"y": -6.84,
+		"color": "62ff00ff"
+	},
 	{
 		"name": "right-lower-leg",
 		"parent": "right-upper-leg",
@@ -57,10 +130,42 @@
 		"y": 0.04,
 		"color": "62ff00ff"
 	},
-	{ "name": "right-hand", "parent": "right-arm", "length": 15.32, "rotation": 2.36, "x": 36.9, "y": 0.35, "color": "62ff00ff" },
-	{ "name": "spear1", "parent": "left-hand", "length": 65.07, "rotation": 102.43, "x": 0.48, "y": 17.03, "color": "ffcf00ff" },
-	{ "name": "spear2", "parent": "spear1", "length": 61.42, "rotation": 0.9, "x": 65.06, "y": 0.04, "color": "ffcf00ff" },
-	{ "name": "spear3", "parent": "spear2", "length": 76.8, "rotation": -0.9, "x": 61.89, "y": 0.57, "color": "ffcf00ff" }
+	{
+		"name": "right-hand",
+		"parent": "right-arm",
+		"length": 15.32,
+		"rotation": 2.36,
+		"x": 36.9,
+		"y": 0.35,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "spear1",
+		"parent": "left-hand",
+		"length": 65.07,
+		"rotation": 102.43,
+		"x": 0.48,
+		"y": 17.03,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "spear2",
+		"parent": "spear1",
+		"length": 61.42,
+		"rotation": 0.9,
+		"x": 65.06,
+		"y": 0.04,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "spear3",
+		"parent": "spear2",
+		"length": 76.8,
+		"rotation": -0.9,
+		"x": 61.89,
+		"y": 0.57,
+		"color": "ffcf00ff"
+	}
 ],
 "slots": [
 	{ "name": "left-shoulder", "bone": "left-shoulder", "attachment": "left-shoulder" },

+ 343 - 46
spine-cocos2d-objc/Resources/raptor-pro.json

@@ -1,18 +1,35 @@
 {
-"skeleton": {
-	"hash": "pNFKcFD/5VPCe7+HftjerXAycWk",
-	"spine": "3.7.08-beta",
-	"width": 1296.89,
-	"height": 1055.12,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "pNFKcFD/5VPCe7+HftjerXAycWk", "spine": "3.7.19-beta", "width": 1296.89, "height": 1055.12, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "rotation": 3.16, "x": -136.79, "y": 415.48, "color": "fbff00ff" },
-	{ "name": "torso1", "parent": "hip", "length": 126.26, "rotation": -4.98, "x": 30.04, "y": -0.4, "color": "eaff00ff" },
-	{ "name": "saddle", "parent": "torso1", "length": 50.92, "rotation": 91.8, "x": 25.31, "y": 70.65, "color": "ff7300ff" },
-	{ "name": "spineboy-hip", "parent": "saddle", "length": 0.53, "rotation": 90.02, "x": 81.88, "y": 2.69, "color": "e8ff00ff" },
+	{
+		"name": "torso1",
+		"parent": "hip",
+		"length": 126.26,
+		"rotation": -4.98,
+		"x": 30.04,
+		"y": -0.4,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "saddle",
+		"parent": "torso1",
+		"length": 50.92,
+		"rotation": 91.8,
+		"x": 25.31,
+		"y": 70.65,
+		"color": "ff7300ff"
+	},
+	{
+		"name": "spineboy-hip",
+		"parent": "saddle",
+		"length": 0.53,
+		"rotation": 90.02,
+		"x": 81.88,
+		"y": 2.69,
+		"color": "e8ff00ff"
+	},
 	{
 		"name": "spineboy-torso",
 		"parent": "spineboy-hip",
@@ -22,10 +39,42 @@
 		"y": -2.11,
 		"color": "e8ff00ff"
 	},
-	{ "name": "torso2", "parent": "torso1", "length": 121.2, "rotation": 39.85, "x": 126.26, "y": -0.38, "color": "e9ff00ff" },
-	{ "name": "neck", "parent": "torso2", "length": 70.6, "rotation": 41.38, "x": 121.2, "y": 0.35, "color": "eaff00ff" },
-	{ "name": "head", "parent": "neck", "length": 105.51, "rotation": 9.83, "x": 70.6, "y": 0.04, "color": "eaff00ff" },
-	{ "name": "horn-rear", "parent": "head", "length": 73.78, "rotation": 44.32, "x": 104.76, "y": -242.01, "color": "e07800ff" },
+	{
+		"name": "torso2",
+		"parent": "torso1",
+		"length": 121.2,
+		"rotation": 39.85,
+		"x": 126.26,
+		"y": -0.38,
+		"color": "e9ff00ff"
+	},
+	{
+		"name": "neck",
+		"parent": "torso2",
+		"length": 70.6,
+		"rotation": 41.38,
+		"x": 121.2,
+		"y": 0.35,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 105.51,
+		"rotation": 9.83,
+		"x": 70.6,
+		"y": 0.04,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "horn-rear",
+		"parent": "head",
+		"length": 73.78,
+		"rotation": 44.32,
+		"x": 104.76,
+		"y": -242.01,
+		"color": "e07800ff"
+	},
 	{ "name": "rear-arm-target", "parent": "horn-rear", "rotation": -133.55, "x": 232.68, "y": 245.85, "color": "ff3f00ff" },
 	{
 		"name": "back-arm",
@@ -36,7 +85,15 @@
 		"y": -38.47,
 		"color": "e07800ff"
 	},
-	{ "name": "back-bracer", "parent": "back-arm", "length": 43.69, "rotation": 17.48, "x": 67.22, "y": -0.32, "color": "e07800ff" },
+	{
+		"name": "back-bracer",
+		"parent": "back-arm",
+		"length": 43.69,
+		"rotation": 17.48,
+		"x": 67.22,
+		"y": -0.32,
+		"color": "e07800ff"
+	},
 	{
 		"name": "back-hand",
 		"parent": "back-bracer",
@@ -48,21 +105,85 @@
 		"color": "e07800ff"
 	},
 	{ "name": "spineboy-rear-arm-goal", "parent": "saddle", "x": -30.44, "y": -100.08, "color": "ff3f00ff" },
-	{ "name": "back-thigh", "parent": "spineboy-hip", "length": 71.16, "rotation": 160.75, "x": -9.57, "y": 2.32, "color": "e07800ff" },
-	{ "name": "back-knee", "parent": "back-thigh", "length": 97.17, "rotation": -54.98, "x": 71.16, "y": -0.28, "color": "e07800ff" },
-	{ "name": "neck2", "parent": "spineboy-torso", "length": 32.05, "rotation": -45.23, "x": 113.44, "y": -15.22, "color": "e8ff00ff" },
-	{ "name": "head2", "parent": "neck2", "length": 167.19, "rotation": 11.66, "x": 25.68, "y": -0.77, "color": "e7ff00ff" },
-	{ "name": "bone", "parent": "head2", "length": 39.92, "rotation": -35.23, "x": 166.09, "y": -79.27, "color": "e7ff00ff" },
+	{
+		"name": "back-thigh",
+		"parent": "spineboy-hip",
+		"length": 71.16,
+		"rotation": 160.75,
+		"x": -9.57,
+		"y": 2.32,
+		"color": "e07800ff"
+	},
+	{
+		"name": "back-knee",
+		"parent": "back-thigh",
+		"length": 97.17,
+		"rotation": -54.98,
+		"x": 71.16,
+		"y": -0.28,
+		"color": "e07800ff"
+	},
+	{
+		"name": "neck2",
+		"parent": "spineboy-torso",
+		"length": 32.05,
+		"rotation": -45.23,
+		"x": 113.44,
+		"y": -15.22,
+		"color": "e8ff00ff"
+	},
+	{
+		"name": "head2",
+		"parent": "neck2",
+		"length": 167.19,
+		"rotation": 11.66,
+		"x": 25.68,
+		"y": -0.77,
+		"color": "e7ff00ff"
+	},
+	{
+		"name": "bone",
+		"parent": "head2",
+		"length": 39.92,
+		"rotation": -35.23,
+		"x": 166.09,
+		"y": -79.27,
+		"color": "e7ff00ff"
+	},
 	{ "name": "bone2", "parent": "bone", "length": 47.42, "rotation": 51.8, "x": 39.92, "color": "e7ff00ff" },
-	{ "name": "bone3", "parent": "head2", "length": 45.41, "rotation": -12.34, "x": 179.8, "y": -20.91, "color": "e7ff00ff" },
-	{ "name": "bone4", "parent": "bone3", "length": 43.31, "rotation": 42.01, "x": 44.64, "y": 0.3, "color": "e7ff00ff" },
+	{
+		"name": "bone3",
+		"parent": "head2",
+		"length": 45.41,
+		"rotation": -12.34,
+		"x": 179.8,
+		"y": -20.91,
+		"color": "e7ff00ff"
+	},
+	{
+		"name": "bone4",
+		"parent": "bone3",
+		"length": 43.31,
+		"rotation": 42.01,
+		"x": 44.64,
+		"y": 0.3,
+		"color": "e7ff00ff"
+	},
 	{ "name": "bone5", "parent": "bone4", "length": 44.88, "rotation": 48.8, "x": 43.31, "color": "e7ff00ff" },
 	{ "name": "dust-root", "parent": "root" },
 	{ "name": "dust", "parent": "dust-root", "x": 231.15, "y": -2.15, "scaleX": 2.285, "scaleY": 1.427 },
 	{ "name": "dust2", "parent": "dust-root", "x": -147.58, "y": -2.15, "scaleX": 1.635, "scaleY": 1.021 },
 	{ "name": "dust3", "parent": "dust-root", "x": 429.77, "y": 20.67, "scaleX": 2.285, "scaleY": 1.427 },
 	{ "name": "dust4", "parent": "dust-root", "x": 29.91, "y": 14.02, "scaleX": 1.635, "scaleY": 1.021 },
-	{ "name": "horn-front", "parent": "head", "length": 87.48, "rotation": 49.36, "x": 87.97, "y": -235.15, "color": "15ff00ff" },
+	{
+		"name": "horn-front",
+		"parent": "head",
+		"length": 87.48,
+		"rotation": 49.36,
+		"x": 87.97,
+		"y": -235.15,
+		"color": "15ff00ff"
+	},
 	{ "name": "front-arm-target", "parent": "horn-front", "rotation": -138.6, "x": 294.58, "y": 234.18, "color": "ff3f00ff" },
 	{
 		"name": "front-arm",
@@ -73,14 +194,62 @@
 		"y": 9.79,
 		"color": "14ff00ff"
 	},
-	{ "name": "front-bracer", "parent": "front-arm", "length": 39.85, "rotation": 20.31, "x": 74.52, "y": -0.42, "color": "14ff00ff" },
-	{ "name": "front-arm1", "parent": "torso2", "length": 109.99, "rotation": 224.54, "x": 46.37, "y": -84.62, "color": "15ff00ff" },
-	{ "name": "front-arm2", "parent": "front-arm1", "length": 86.33, "rotation": 105.24, "x": 109.99, "y": 0.2, "color": "15ff00ff" },
+	{
+		"name": "front-bracer",
+		"parent": "front-arm",
+		"length": 39.85,
+		"rotation": 20.31,
+		"x": 74.52,
+		"y": -0.42,
+		"color": "14ff00ff"
+	},
+	{
+		"name": "front-arm1",
+		"parent": "torso2",
+		"length": 109.99,
+		"rotation": 224.54,
+		"x": 46.37,
+		"y": -84.62,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-arm2",
+		"parent": "front-arm1",
+		"length": 86.33,
+		"rotation": 105.24,
+		"x": 109.99,
+		"y": 0.2,
+		"color": "15ff00ff"
+	},
 	{ "name": "front-foot-goal", "parent": "root", "rotation": -0.95, "x": -45.8, "y": -28.67, "color": "ff3f00ff" },
 	{ "name": "front-leg-goal", "parent": "front-foot-goal", "x": -106.06, "y": 115.58, "color": "ff3f00ff" },
-	{ "name": "front-leg1", "parent": "hip", "length": 251.75, "rotation": -51.51, "x": 27.36, "y": -28.28, "color": "15ff00ff" },
-	{ "name": "front-leg2", "parent": "front-leg1", "length": 208.55, "rotation": 261.94, "x": 251.04, "y": 0.16, "color": "15ff00ff" },
-	{ "name": "front-leg3", "parent": "front-leg2", "length": 118.18, "rotation": 85.46, "x": 208.5, "y": -1.64, "color": "15ff00ff" },
+	{
+		"name": "front-leg1",
+		"parent": "hip",
+		"length": 251.75,
+		"rotation": -51.51,
+		"x": 27.36,
+		"y": -28.28,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-leg2",
+		"parent": "front-leg1",
+		"length": 208.55,
+		"rotation": 261.94,
+		"x": 251.04,
+		"y": 0.16,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-leg3",
+		"parent": "front-leg2",
+		"length": 118.18,
+		"rotation": 85.46,
+		"x": 208.5,
+		"y": -1.64,
+		"color": "15ff00ff"
+	},
 	{
 		"name": "front-foot1",
 		"parent": "front-leg3",
@@ -113,7 +282,15 @@
 		"scaleX": 1.155,
 		"color": "15ff00ff"
 	},
-	{ "name": "front-hand", "parent": "front-arm2", "length": 47.56, "rotation": -56.83, "x": 86.33, "y": 0.06, "color": "15ff00ff" },
+	{
+		"name": "front-hand",
+		"parent": "front-arm2",
+		"length": 47.56,
+		"rotation": -56.83,
+		"x": 86.33,
+		"y": 0.06,
+		"color": "15ff00ff"
+	},
 	{
 		"name": "front-hand2",
 		"parent": "front-bracer",
@@ -134,7 +311,15 @@
 		"y": 17.02,
 		"color": "14ff00ff"
 	},
-	{ "name": "lower-leg", "parent": "front-thigh", "length": 111.5, "rotation": -49.62, "x": 77.93, "y": -0.11, "color": "14ff00ff" },
+	{
+		"name": "lower-leg",
+		"parent": "front-thigh",
+		"length": 111.5,
+		"rotation": -49.62,
+		"x": 77.93,
+		"y": -0.11,
+		"color": "14ff00ff"
+	},
 	{
 		"name": "gun",
 		"parent": "spineboy-hip",
@@ -146,16 +331,72 @@
 		"scaleY": 0.816,
 		"color": "ffffffff"
 	},
-	{ "name": "jaw", "parent": "head", "length": 203.76, "rotation": -125.79, "x": 49.11, "y": -68.46, "color": "ffff00ff" },
+	{
+		"name": "jaw",
+		"parent": "head",
+		"length": 203.76,
+		"rotation": -125.79,
+		"x": 49.11,
+		"y": -68.46,
+		"color": "ffff00ff"
+	},
 	{ "name": "jaw-inside", "parent": "jaw", "x": 94.7, "y": 33.64, "color": "ffff00ff" },
-	{ "name": "rear-arm1", "parent": "torso2", "length": 109.56, "rotation": -124.72, "x": 57.05, "y": -95.39, "color": "e07800ff" },
-	{ "name": "rear-arm2", "parent": "rear-arm1", "length": 85.8, "rotation": 123.56, "x": 109.57, "y": -0.01, "color": "e07800ff" },
+	{
+		"name": "rear-arm1",
+		"parent": "torso2",
+		"length": 109.56,
+		"rotation": -124.72,
+		"x": 57.05,
+		"y": -95.39,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-arm2",
+		"parent": "rear-arm1",
+		"length": 85.8,
+		"rotation": 123.56,
+		"x": 109.57,
+		"y": -0.01,
+		"color": "e07800ff"
+	},
 	{ "name": "rear-foot-goal", "parent": "root", "x": 33.44, "y": 30.82, "color": "ff3f00ff" },
 	{ "name": "rear-leg-goal", "parent": "rear-foot-goal", "x": -127.51, "y": 75.99, "color": "ff3f00ff" },
-	{ "name": "rear-leg1", "parent": "hip", "length": 226.28, "rotation": -54.76, "x": 55.19, "y": -71.25, "color": "e07800ff" },
-	{ "name": "rear-leg2", "parent": "rear-leg1", "length": 172.59, "rotation": -92.25, "x": 226.32, "y": 0.23, "color": "e07800ff" },
-	{ "name": "rear-leg3", "parent": "rear-leg2", "length": 103.05, "rotation": 82.82, "x": 172.32, "y": 2.21, "color": "e07800ff" },
-	{ "name": "rear-foot1", "parent": "rear-leg3", "length": 84.51, "rotation": 75.43, "x": 102.38, "y": -0.03, "color": "e07800ff" },
+	{
+		"name": "rear-leg1",
+		"parent": "hip",
+		"length": 226.28,
+		"rotation": -54.76,
+		"x": 55.19,
+		"y": -71.25,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-leg2",
+		"parent": "rear-leg1",
+		"length": 172.59,
+		"rotation": -92.25,
+		"x": 226.32,
+		"y": 0.23,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-leg3",
+		"parent": "rear-leg2",
+		"length": 103.05,
+		"rotation": 82.82,
+		"x": 172.32,
+		"y": 2.21,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-foot1",
+		"parent": "rear-leg3",
+		"length": 84.51,
+		"rotation": 75.43,
+		"x": 102.38,
+		"y": -0.03,
+		"color": "e07800ff"
+	},
 	{
 		"name": "rear-foot2",
 		"parent": "rear-foot1",
@@ -166,7 +407,15 @@
 		"transform": "noRotationOrReflection",
 		"color": "e07800ff"
 	},
-	{ "name": "rear-hand", "parent": "rear-arm2", "length": 45.81, "rotation": -76.28, "x": 85.8, "y": 0.11, "color": "e07800ff" },
+	{
+		"name": "rear-hand",
+		"parent": "rear-arm2",
+		"length": 45.81,
+		"rotation": -76.28,
+		"x": 85.8,
+		"y": 0.11,
+		"color": "e07800ff"
+	},
 	{
 		"name": "saddle-strap-front1",
 		"parent": "saddle",
@@ -204,10 +453,34 @@
 		"y": 0.2,
 		"color": "ff7300ff"
 	},
-	{ "name": "stirrup", "parent": "saddle", "length": 78.17, "rotation": -68.86, "x": -81.94, "y": -103.38, "color": "ff3f00ff" },
-	{ "name": "stirrup-strap1", "parent": "saddle", "length": 43.7, "rotation": -135, "x": -20.38, "y": -29.37, "color": "ff7300ff" },
+	{
+		"name": "stirrup",
+		"parent": "saddle",
+		"length": 78.17,
+		"rotation": -68.86,
+		"x": -81.94,
+		"y": -103.38,
+		"color": "ff3f00ff"
+	},
+	{
+		"name": "stirrup-strap1",
+		"parent": "saddle",
+		"length": 43.7,
+		"rotation": -135,
+		"x": -20.38,
+		"y": -29.37,
+		"color": "ff7300ff"
+	},
 	{ "name": "stirrup-strap2", "parent": "stirrup-strap1", "length": 51.62, "rotation": 9.39, "x": 43.71, "color": "ff7300ff" },
-	{ "name": "tail1", "parent": "hip", "length": 81.26, "rotation": 153.61, "x": -20.87, "y": 6.87, "color": "eaff00ff" },
+	{
+		"name": "tail1",
+		"parent": "hip",
+		"length": 81.26,
+		"rotation": 153.61,
+		"x": -20.87,
+		"y": 6.87,
+		"color": "eaff00ff"
+	},
 	{ "name": "tail2", "parent": "tail1", "length": 81.26, "rotation": 10.42, "x": 81.26, "color": "eaff00ff" },
 	{ "name": "tail3", "parent": "tail2", "length": 65.01, "rotation": 12.18, "x": 81.26, "color": "eaff00ff" },
 	{ "name": "tail4", "parent": "tail3", "length": 65.01, "x": 65.01, "color": "eaff00ff" },
@@ -217,9 +490,33 @@
 	{ "name": "tail8", "parent": "tail7", "length": 54.46, "rotation": 0.97, "x": 63.13, "color": "eaff00ff" },
 	{ "name": "tail9", "parent": "tail8", "length": 49.21, "rotation": -1.29, "x": 54.46, "color": "eaff00ff" },
 	{ "name": "tail10", "parent": "tail9", "length": 45.53, "rotation": 0.36, "x": 49.21, "color": "eaff00ff" },
-	{ "name": "tongue1", "parent": "head", "length": 55.12, "rotation": -129.04, "x": 20.82, "y": -104.75, "color": "ffff00ff" },
-	{ "name": "tongue2", "parent": "tongue1", "length": 44.67, "rotation": 8.93, "x": 55.6, "y": 0.93, "color": "fff200ff" },
-	{ "name": "tongue3", "parent": "tongue2", "length": 43.65, "rotation": 12.86, "x": 44.27, "y": -0.21, "color": "fff200ff" }
+	{
+		"name": "tongue1",
+		"parent": "head",
+		"length": 55.12,
+		"rotation": -129.04,
+		"x": 20.82,
+		"y": -104.75,
+		"color": "ffff00ff"
+	},
+	{
+		"name": "tongue2",
+		"parent": "tongue1",
+		"length": 44.67,
+		"rotation": 8.93,
+		"x": 55.6,
+		"y": 0.93,
+		"color": "fff200ff"
+	},
+	{
+		"name": "tongue3",
+		"parent": "tongue2",
+		"length": 43.65,
+		"rotation": 12.86,
+		"x": 44.27,
+		"y": -0.21,
+		"color": "fff200ff"
+	}
 ],
 "slots": [
 	{ "name": "back-hand", "bone": "back-hand", "attachment": "back-hand" },

+ 118 - 21
spine-cocos2d-objc/Resources/spineboy-ess.json

@@ -1,18 +1,27 @@
 {
-"skeleton": {
-	"hash": "0DoQUqP6ATLL322RHY3r98lgFr8",
-	"spine": "3.7.08-beta",
-	"width": 470.72,
-	"height": 731.57,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "0DoQUqP6ATLL322RHY3r98lgFr8", "spine": "3.7.19-beta", "width": 470.72, "height": 731.57, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "dust", "parent": "root", "x": -303.6, "y": 32.64, "scaleX": 1.457 },
 	{ "name": "hip", "parent": "root", "y": 247.47 },
-	{ "name": "torso", "parent": "hip", "length": 127.56, "rotation": 103.82, "x": -1.62, "y": 4.9, "color": "e0da19ff" },
-	{ "name": "front-upper-arm", "parent": "torso", "length": 69.45, "rotation": 168.38, "x": 103.76, "y": 19.33, "color": "00ff04ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 127.56,
+		"rotation": 103.82,
+		"x": -1.62,
+		"y": 4.9,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "front-upper-arm",
+		"parent": "torso",
+		"length": 69.45,
+		"rotation": 168.38,
+		"x": 103.76,
+		"y": 19.33,
+		"color": "00ff04ff"
+	},
 	{
 		"name": "front-bracer",
 		"parent": "front-upper-arm",
@@ -22,19 +31,107 @@
 		"y": -0.68,
 		"color": "00ff04ff"
 	},
-	{ "name": "front-fist", "parent": "front-bracer", "length": 65.39, "rotation": 12.43, "x": 40.57, "y": 0.2, "color": "00ff04ff" },
-	{ "name": "front-thigh", "parent": "hip", "length": 74.81, "rotation": -95.51, "x": -17.46, "y": -11.64, "color": "00ff04ff" },
-	{ "name": "front-shin", "parent": "front-thigh", "length": 128.77, "rotation": -2.21, "x": 78.69, "y": 1.6, "color": "00ff04ff" },
-	{ "name": "front-foot", "parent": "front-shin", "length": 91.34, "rotation": 77.91, "x": 128.76, "y": -0.34, "color": "00ff04ff" },
-	{ "name": "rear-upper-arm", "parent": "torso", "length": 51.94, "rotation": -169.56, "x": 92.36, "y": -19.22, "color": "ff000dff" },
+	{
+		"name": "front-fist",
+		"parent": "front-bracer",
+		"length": 65.39,
+		"rotation": 12.43,
+		"x": 40.57,
+		"y": 0.2,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-thigh",
+		"parent": "hip",
+		"length": 74.81,
+		"rotation": -95.51,
+		"x": -17.46,
+		"y": -11.64,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-shin",
+		"parent": "front-thigh",
+		"length": 128.77,
+		"rotation": -2.21,
+		"x": 78.69,
+		"y": 1.6,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-foot",
+		"parent": "front-shin",
+		"length": 91.34,
+		"rotation": 77.91,
+		"x": 128.76,
+		"y": -0.34,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "rear-upper-arm",
+		"parent": "torso",
+		"length": 51.94,
+		"rotation": -169.56,
+		"x": 92.36,
+		"y": -19.22,
+		"color": "ff000dff"
+	},
 	{ "name": "rear-bracer", "parent": "rear-upper-arm", "length": 34.56, "rotation": 23.15, "x": 51.36, "color": "ff000dff" },
-	{ "name": "gun", "parent": "rear-bracer", "length": 43.11, "rotation": 5.35, "x": 34.42, "y": -0.45, "color": "ff000dff" },
+	{
+		"name": "gun",
+		"parent": "rear-bracer",
+		"length": 43.11,
+		"rotation": 5.35,
+		"x": 34.42,
+		"y": -0.45,
+		"color": "ff000dff"
+	},
 	{ "name": "gun-tip", "parent": "gun", "rotation": 6.83, "x": 201.05, "y": 52.14, "color": "ff000dff" },
-	{ "name": "neck", "parent": "torso", "length": 25.45, "rotation": -31.54, "x": 127.5, "y": -0.31, "color": "e0da19ff" },
-	{ "name": "head", "parent": "neck", "length": 263.58, "rotation": 23.18, "x": 27.66, "y": -0.26, "color": "e0da19ff" },
-	{ "name": "rear-thigh", "parent": "hip", "length": 85.72, "rotation": -72.54, "x": 8.91, "y": -5.63, "color": "ff000dff" },
-	{ "name": "rear-shin", "parent": "rear-thigh", "length": 121.88, "rotation": -19.83, "x": 86.1, "y": -1.33, "color": "ff000dff" },
-	{ "name": "rear-foot", "parent": "rear-shin", "length": 82.57, "rotation": 69.3, "x": 121.46, "y": -0.76, "color": "ff000dff" }
+	{
+		"name": "neck",
+		"parent": "torso",
+		"length": 25.45,
+		"rotation": -31.54,
+		"x": 127.5,
+		"y": -0.31,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 263.58,
+		"rotation": 23.18,
+		"x": 27.66,
+		"y": -0.26,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "rear-thigh",
+		"parent": "hip",
+		"length": 85.72,
+		"rotation": -72.54,
+		"x": 8.91,
+		"y": -5.63,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-shin",
+		"parent": "rear-thigh",
+		"length": 121.88,
+		"rotation": -19.83,
+		"x": 86.1,
+		"y": -1.33,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-foot",
+		"parent": "rear-shin",
+		"length": 82.57,
+		"rotation": 69.3,
+		"x": 121.46,
+		"y": -0.76,
+		"color": "ff000dff"
+	}
 ],
 "slots": [
 	{ "name": "rear-upper-arm", "bone": "rear-upper-arm", "attachment": "rear-upper-arm" },

+ 1441 - 261
spine-cocos2d-objc/Resources/tank-pro.json

@@ -1,12 +1,5 @@
 {
-"skeleton": {
-	"hash": "JWZpG/bZaODL9WMrHd/eWznhkD0",
-	"spine": "3.7.08-beta",
-	"width": 7202.61,
-	"height": 1298.88,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "JWZpG/bZaODL9WMrHd/eWznhkD0", "spine": "3.7.19-beta", "width": 7202.61, "height": 1298.88, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "tank-root", "parent": "root", "y": 146.79 },
@@ -44,7 +37,15 @@
 	},
 	{ "name": "machinegun-tip", "parent": "machinegun", "x": 210.43, "y": -12.21 },
 	{ "name": "rock", "parent": "root", "x": -1925.2, "y": 33.17 },
-	{ "name": "smoke-root", "parent": "tank-root", "x": -1200.38, "y": 405.76, "scaleX": -6.5, "scaleY": 6.5, "color": "ff4000ff" },
+	{
+		"name": "smoke-root",
+		"parent": "tank-root",
+		"x": -1200.38,
+		"y": 405.76,
+		"scaleX": -6.5,
+		"scaleY": 6.5,
+		"color": "ff4000ff"
+	},
 	{
 		"name": "smoke1",
 		"parent": "smoke-root",
@@ -318,40 +319,312 @@
 		"color": "e64344ff"
 	},
 	{ "name": "tread2", "parent": "tread", "length": 82, "x": 82, "color": "e64344ff" },
-	{ "name": "tread3", "parent": "tread", "length": 82, "rotation": -8.91, "x": 163.01, "y": -12.61, "color": "e64344ff" },
-	{ "name": "tread4", "parent": "tread", "length": 82, "rotation": -29.27, "x": 234.55, "y": -52.43, "color": "e64344ff" },
-	{ "name": "tread5", "parent": "tread", "length": 82, "rotation": -45.26, "x": 292.26, "y": -110.28, "color": "e64344ff" },
-	{ "name": "tread6", "parent": "tread", "length": 82, "rotation": -15.29, "x": 371.36, "y": -131.76, "color": "e64344ff" },
-	{ "name": "tread7", "parent": "tread", "length": 82, "rotation": -5.49, "x": 452.98, "y": -139.55, "color": "e64344ff" },
-	{ "name": "tread8", "parent": "tread", "length": 82, "rotation": -24.99, "x": 527.31, "y": -173.95, "color": "e64344ff" },
-	{ "name": "tread9", "parent": "tread", "length": 82, "rotation": -5.44, "x": 608.94, "y": -181.68, "color": "e64344ff" },
-	{ "name": "tread10", "parent": "tread", "length": 82, "rotation": 48.85, "x": 662.9, "y": -120.35, "color": "e64344ff" },
-	{ "name": "tread11", "parent": "tread", "length": 82, "rotation": 97.99, "x": 651.5, "y": -39.69, "color": "e64344ff" },
-	{ "name": "tread12", "parent": "tread", "length": 82, "rotation": 113.79, "x": 618.43, "y": 34.83, "color": "e64344ff" },
-	{ "name": "tread13", "parent": "tread", "length": 82, "rotation": 122.96, "x": 573.82, "y": 103.18, "color": "e64344ff" },
-	{ "name": "tread14", "parent": "tread", "length": 82, "rotation": 142.01, "x": 509.19, "y": 153.3, "color": "e64344ff" },
-	{ "name": "tread15", "parent": "tread", "length": 82, "rotation": 157.84, "x": 433.25, "y": 184.02, "color": "e64344ff" },
-	{ "name": "tread16", "parent": "tread", "length": 82, "rotation": 157.37, "x": 357.56, "y": 215.37, "color": "e64344ff" },
-	{ "name": "tread17", "parent": "tread", "length": 82, "rotation": 157.29, "x": 281.92, "y": 246.8, "color": "e64344ff" },
-	{ "name": "tread18", "parent": "tread", "length": 82, "rotation": 157.19, "x": 206.33, "y": 278.38, "color": "e64344ff" },
-	{ "name": "tread19", "parent": "tread", "length": 82, "rotation": 157.14, "x": 130.77, "y": 310.02, "color": "e64344ff" },
-	{ "name": "tread20", "parent": "tread", "length": 82, "rotation": 157.34, "x": 55.1, "y": 341.41, "color": "e64344ff" },
-	{ "name": "tread21", "parent": "tread", "length": 82, "rotation": 158.11, "x": -20.99, "y": 371.77, "color": "e64344ff" },
-	{ "name": "tread22", "parent": "tread", "length": 82, "rotation": 157.99, "x": -97.02, "y": 402.28, "color": "e64344ff" },
-	{ "name": "tread23", "parent": "tread", "length": 82, "rotation": 157.59, "x": -172.83, "y": 433.33, "color": "e64344ff" },
-	{ "name": "tread24", "parent": "tread", "length": 82, "rotation": 156.86, "x": -248.23, "y": 465.34, "color": "e64344ff" },
-	{ "name": "tread25", "parent": "tread", "length": 82, "rotation": 177.94, "x": -330.17, "y": 468.27, "color": "e64344ff" },
-	{ "name": "tread26", "parent": "tread", "length": 82, "rotation": -169.55, "x": -410.81, "y": 453.5, "color": "e64344ff" },
-	{ "name": "tread27", "parent": "tread", "length": 82, "rotation": -163.86, "x": -489.58, "y": 430.86, "color": "e64344ff" },
-	{ "name": "tread28", "parent": "tread", "length": 82, "rotation": -139.13, "x": -551.59, "y": 377.57, "color": "e64344ff" },
-	{ "name": "tread29", "parent": "tread", "length": 82, "rotation": -89.04, "x": -550.21, "y": 296.14, "color": "e64344ff" },
-	{ "name": "tread30", "parent": "tread", "length": 82, "rotation": -38.99, "x": -486.48, "y": 244.89, "color": "e64344ff" },
-	{ "name": "tread31", "parent": "tread", "length": 82, "rotation": -20.04, "x": -409.45, "y": 216.98, "color": "e64344ff" },
-	{ "name": "tread32", "parent": "tread", "length": 82, "rotation": -46.24, "x": -352.74, "y": 158.15, "color": "e64344ff" },
-	{ "name": "tread33", "parent": "tread", "length": 82, "rotation": -27.95, "x": -280.3, "y": 119.98, "color": "e64344ff" },
-	{ "name": "tread34", "parent": "tread", "length": 82, "rotation": 10.46, "x": -199.66, "y": 134.77, "color": "e64344ff" },
-	{ "name": "tread35", "parent": "tread", "length": 82, "rotation": -17.9, "x": -121.63, "y": 109.73, "color": "e64344ff" },
-	{ "name": "tread36", "parent": "tread", "length": 82, "rotation": -36.82, "x": -55.99, "y": 60.92, "color": "fbff00ff" },
+	{
+		"name": "tread3",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -8.91,
+		"x": 163.01,
+		"y": -12.61,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread4",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -29.27,
+		"x": 234.55,
+		"y": -52.43,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread5",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -45.26,
+		"x": 292.26,
+		"y": -110.28,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread6",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -15.29,
+		"x": 371.36,
+		"y": -131.76,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread7",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -5.49,
+		"x": 452.98,
+		"y": -139.55,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread8",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -24.99,
+		"x": 527.31,
+		"y": -173.95,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread9",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -5.44,
+		"x": 608.94,
+		"y": -181.68,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread10",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 48.85,
+		"x": 662.9,
+		"y": -120.35,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread11",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 97.99,
+		"x": 651.5,
+		"y": -39.69,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread12",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 113.79,
+		"x": 618.43,
+		"y": 34.83,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread13",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 122.96,
+		"x": 573.82,
+		"y": 103.18,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread14",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 142.01,
+		"x": 509.19,
+		"y": 153.3,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread15",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.84,
+		"x": 433.25,
+		"y": 184.02,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread16",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.37,
+		"x": 357.56,
+		"y": 215.37,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread17",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.29,
+		"x": 281.92,
+		"y": 246.8,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread18",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.19,
+		"x": 206.33,
+		"y": 278.38,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread19",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.14,
+		"x": 130.77,
+		"y": 310.02,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread20",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.34,
+		"x": 55.1,
+		"y": 341.41,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread21",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 158.11,
+		"x": -20.99,
+		"y": 371.77,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread22",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.99,
+		"x": -97.02,
+		"y": 402.28,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread23",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.59,
+		"x": -172.83,
+		"y": 433.33,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread24",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 156.86,
+		"x": -248.23,
+		"y": 465.34,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread25",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 177.94,
+		"x": -330.17,
+		"y": 468.27,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread26",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -169.55,
+		"x": -410.81,
+		"y": 453.5,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread27",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -163.86,
+		"x": -489.58,
+		"y": 430.86,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread28",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -139.13,
+		"x": -551.59,
+		"y": 377.57,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread29",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -89.04,
+		"x": -550.21,
+		"y": 296.14,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread30",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -38.99,
+		"x": -486.48,
+		"y": 244.89,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread31",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -20.04,
+		"x": -409.45,
+		"y": 216.98,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread32",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -46.24,
+		"x": -352.74,
+		"y": 158.15,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread33",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -27.95,
+		"x": -280.3,
+		"y": 119.98,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread34",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 10.46,
+		"x": -199.66,
+		"y": 134.77,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread35",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -17.9,
+		"x": -121.63,
+		"y": 109.73,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread36",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -36.82,
+		"x": -55.99,
+		"y": 60.92,
+		"color": "fbff00ff"
+	},
 	{ "name": "wheel-mid-center", "parent": "tank-root", "y": -66.21 },
 	{ "name": "tread-collider1", "parent": "wheel-mid-center", "x": -329.58, "y": -85.44, "color": "ff00fbff" },
 	{ "name": "tread-collider2", "parent": "wheel-mid-center", "x": -165.95, "y": -85.44, "color": "ff00fbff" },
@@ -477,62 +750,14 @@
 	{ "name": "wheel-small", "bone": "wheel-small1", "attachment": "wheel-small" },
 	{ "name": "wheel-small2", "bone": "wheel-small2", "attachment": "wheel-small" },
 	{ "name": "wheel-small3", "bone": "wheel-small3", "attachment": "wheel-small" },
-	{
-		"name": "wheel-mid-overlay",
-		"bone": "wheel-mid-root1",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay2",
-		"bone": "wheel-mid-root2",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay3",
-		"bone": "wheel-mid-root3",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay4",
-		"bone": "wheel-mid-root4",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay5",
-		"bone": "wheel-mid-root5",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay6",
-		"bone": "wheel-mid-root6",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-big-overlay1",
-		"bone": "wheel-big-root1",
-		"color": "ffffffe9",
-		"attachment": "wheel-big-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-big-overlay2",
-		"bone": "wheel-big-root2",
-		"color": "ffffffe9",
-		"attachment": "wheel-big-overlay",
-		"blend": "multiply"
-	},
+	{ "name": "wheel-mid-overlay", "bone": "wheel-mid-root1", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay2", "bone": "wheel-mid-root2", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay3", "bone": "wheel-mid-root3", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay4", "bone": "wheel-mid-root4", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay5", "bone": "wheel-mid-root5", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay6", "bone": "wheel-mid-root6", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-big-overlay1", "bone": "wheel-big-root1", "color": "ffffffe9", "attachment": "wheel-big-overlay", "blend": "multiply" },
+	{ "name": "wheel-big-overlay2", "bone": "wheel-big-root2", "color": "ffffffe9", "attachment": "wheel-big-overlay", "blend": "multiply" },
 	{ "name": "treads", "bone": "tank-root", "attachment": "treads" },
 	{ "name": "tread", "bone": "tread", "attachment": "tread" },
 	{ "name": "tread27", "bone": "tread27", "color": "adc9b8ff", "attachment": "tread" },
@@ -714,44 +939,7 @@
 	{
 		"name": "treads",
 		"order": 2,
-		"bones": [
-			"tread",
-			"tread2",
-			"tread3",
-			"tread4",
-			"tread5",
-			"tread6",
-			"tread7",
-			"tread8",
-			"tread9",
-			"tread10",
-			"tread11",
-			"tread12",
-			"tread13",
-			"tread14",
-			"tread15",
-			"tread16",
-			"tread17",
-			"tread18",
-			"tread19",
-			"tread20",
-			"tread21",
-			"tread22",
-			"tread23",
-			"tread24",
-			"tread25",
-			"tread26",
-			"tread27",
-			"tread28",
-			"tread29",
-			"tread30",
-			"tread31",
-			"tread32",
-			"tread33",
-			"tread34",
-			"tread35",
-			"tread36"
-		],
+		"bones": [ "tread", "tread2", "tread3", "tread4", "tread5", "tread6", "tread7", "tread8", "tread9", "tread10", "tread11", "tread12", "tread13", "tread14", "tread15", "tread16", "tread17", "tread18", "tread19", "tread20", "tread21", "tread22", "tread23", "tread24", "tread25", "tread26", "tread27", "tread28", "tread29", "tread30", "tread31", "tread32", "tread33", "tread34", "tread35", "tread36" ],
 		"target": "treads",
 		"rotateMode": "chain"
 	}
@@ -843,232 +1031,1224 @@
 			}
 		},
 		"smoke-puff1-bg": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg10": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg11": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg12": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg13": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg14": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg15": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg16": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg17": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg18": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg2": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg20": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg21": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg22": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg23": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg24": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg25": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg26": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg27": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg3": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg4": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg5": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg6": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg7": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg8": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg9": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-fg": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg10": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg11": {
-			"smoke-puff04-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff04-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg12": {
-			"smoke-puff04-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff04-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg13": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg14": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg15": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg16": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg17": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg18": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg2": {
-			"smoke-puff01-fg": { "x": -1.01, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.82, "y": -0.39, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.82, "y": -0.39, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.82, "y": -0.39, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -1.01,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.82,
+				"y": -0.39,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.82,
+				"y": -0.39,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.82,
+				"y": -0.39,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg20": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg21": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg22": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg23": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg24": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg25": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg26": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg27": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg3": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.02, "y": -0.25, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.115, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.03, "y": -0.43, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.02,
+				"y": -0.25,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.115,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.03,
+				"y": -0.43,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg4": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.63, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.63, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.63, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.63,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.63,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.63,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg5": {
-			"smoke-puff01-fg": { "x": -1.21, "y": -0.08, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.89, "y": -0.04, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.89, "y": -0.04, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.89, "y": -0.04, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -1.21,
+				"y": -0.08,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.89,
+				"y": -0.04,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.89,
+				"y": -0.04,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.89,
+				"y": -0.04,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg6": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.48, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.48, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.48, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.48,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.48,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.48,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg7": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -0.7, "y": -0.36, "scaleX": 0.122, "scaleY": 0.121, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -0.56, "y": -0.15, "scaleX": 0.122, "scaleY": 0.122, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -0.56, "y": -0.15, "scaleX": 0.122, "scaleY": 0.122, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -0.7,
+				"y": -0.36,
+				"scaleX": 0.122,
+				"scaleY": 0.121,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -0.56,
+				"y": -0.15,
+				"scaleX": 0.122,
+				"scaleY": 0.122,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -0.56,
+				"y": -0.15,
+				"scaleX": 0.122,
+				"scaleY": 0.122,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg8": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -0.65, "y": 0.01, "scaleX": 0.123, "scaleY": 0.123, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -0.75, "y": -0.15, "scaleX": 0.121, "scaleY": 0.121, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -0.75, "y": -0.15, "scaleX": 0.121, "scaleY": 0.121, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -0.65,
+				"y": 0.01,
+				"scaleX": 0.123,
+				"scaleY": 0.123,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -0.75,
+				"y": -0.15,
+				"scaleX": 0.121,
+				"scaleY": 0.121,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -0.75,
+				"y": -0.15,
+				"scaleX": 0.121,
+				"scaleY": 0.121,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg9": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.99, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.99, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -0.95, "y": -0.48, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.99,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.99,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -0.95,
+				"y": -0.48,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"tank-body-shadow": {
 			"tank-bottom-shadow": { "x": -11.44, "y": -42.89, "width": 1291, "height": 341 }

BIN
spine-cocos2dx/example/Resources/common/coin-pro.skel


+ 127 - 22
spine-cocos2dx/example/Resources/common/goblins-pro.json

@@ -1,21 +1,62 @@
 {
-"skeleton": {
-	"hash": "GEt0/K+46aqD75ngNEZOztV899k",
-	"spine": "3.7.08-beta",
-	"width": 266.94,
-	"height": 349.61,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "GEt0/K+46aqD75ngNEZOztV899k", "spine": "3.7.19-beta", "width": 266.94, "height": 349.61, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "x": 0.65, "y": 114.41, "color": "ffcf00ff" },
-	{ "name": "torso", "parent": "hip", "length": 85.83, "rotation": 93.93, "x": -6.42, "y": 1.98, "color": "ffcf00ff" },
-	{ "name": "neck", "parent": "torso", "length": 18.38, "rotation": -1.52, "x": 81.68, "y": -6.35, "color": "ffcf00ff" },
-	{ "name": "head", "parent": "neck", "length": 68.29, "rotation": -13.92, "x": 20.94, "y": 11.59, "color": "ffcf00ff" },
-	{ "name": "left-shoulder", "parent": "torso", "length": 35.43, "rotation": -156.96, "x": 74.05, "y": -20.39, "color": "ff0000ff" },
-	{ "name": "left-arm", "parent": "left-shoulder", "length": 35.62, "rotation": 28.17, "x": 37.86, "y": -2.35, "color": "ff0000ff" },
-	{ "name": "left-upper-leg", "parent": "hip", "length": 50.4, "rotation": -89.1, "x": 14.45, "y": 2.81, "color": "ff0000ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 85.83,
+		"rotation": 93.93,
+		"x": -6.42,
+		"y": 1.98,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "neck",
+		"parent": "torso",
+		"length": 18.38,
+		"rotation": -1.52,
+		"x": 81.68,
+		"y": -6.35,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 68.29,
+		"rotation": -13.92,
+		"x": 20.94,
+		"y": 11.59,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "left-shoulder",
+		"parent": "torso",
+		"length": 35.43,
+		"rotation": -156.96,
+		"x": 74.05,
+		"y": -20.39,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-arm",
+		"parent": "left-shoulder",
+		"length": 35.62,
+		"rotation": 28.17,
+		"x": 37.86,
+		"y": -2.35,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-upper-leg",
+		"parent": "hip",
+		"length": 50.4,
+		"rotation": -89.1,
+		"x": 14.45,
+		"y": 2.81,
+		"color": "ff0000ff"
+	},
 	{
 		"name": "left-lower-leg",
 		"parent": "left-upper-leg",
@@ -34,11 +75,43 @@
 		"y": -7.61,
 		"color": "ff0000ff"
 	},
-	{ "name": "left-hand", "parent": "left-arm", "length": 11.52, "rotation": 2.7, "x": 35.62, "y": 0.08, "color": "ff0000ff" },
+	{
+		"name": "left-hand",
+		"parent": "left-arm",
+		"length": 11.52,
+		"rotation": 2.7,
+		"x": 35.62,
+		"y": 0.08,
+		"color": "ff0000ff"
+	},
 	{ "name": "pelvis", "parent": "hip", "x": 1.41, "y": -6.58, "color": "ffcf00ff" },
-	{ "name": "right-shoulder", "parent": "torso", "length": 37.25, "rotation": 133.89, "x": 76.02, "y": 18.15, "color": "62ff00ff" },
-	{ "name": "right-arm", "parent": "right-shoulder", "length": 36.75, "rotation": 36.33, "x": 37.61, "y": 0.31, "color": "62ff00ff" },
-	{ "name": "right-upper-leg", "parent": "hip", "length": 42.46, "rotation": -97.5, "x": -20.08, "y": -6.84, "color": "62ff00ff" },
+	{
+		"name": "right-shoulder",
+		"parent": "torso",
+		"length": 37.25,
+		"rotation": 133.89,
+		"x": 76.02,
+		"y": 18.15,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "right-arm",
+		"parent": "right-shoulder",
+		"length": 36.75,
+		"rotation": 36.33,
+		"x": 37.61,
+		"y": 0.31,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "right-upper-leg",
+		"parent": "hip",
+		"length": 42.46,
+		"rotation": -97.5,
+		"x": -20.08,
+		"y": -6.84,
+		"color": "62ff00ff"
+	},
 	{
 		"name": "right-lower-leg",
 		"parent": "right-upper-leg",
@@ -57,10 +130,42 @@
 		"y": 0.04,
 		"color": "62ff00ff"
 	},
-	{ "name": "right-hand", "parent": "right-arm", "length": 15.32, "rotation": 2.36, "x": 36.9, "y": 0.35, "color": "62ff00ff" },
-	{ "name": "spear1", "parent": "left-hand", "length": 65.07, "rotation": 102.43, "x": 0.48, "y": 17.03, "color": "ffcf00ff" },
-	{ "name": "spear2", "parent": "spear1", "length": 61.42, "rotation": 0.9, "x": 65.06, "y": 0.04, "color": "ffcf00ff" },
-	{ "name": "spear3", "parent": "spear2", "length": 76.8, "rotation": -0.9, "x": 61.89, "y": 0.57, "color": "ffcf00ff" }
+	{
+		"name": "right-hand",
+		"parent": "right-arm",
+		"length": 15.32,
+		"rotation": 2.36,
+		"x": 36.9,
+		"y": 0.35,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "spear1",
+		"parent": "left-hand",
+		"length": 65.07,
+		"rotation": 102.43,
+		"x": 0.48,
+		"y": 17.03,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "spear2",
+		"parent": "spear1",
+		"length": 61.42,
+		"rotation": 0.9,
+		"x": 65.06,
+		"y": 0.04,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "spear3",
+		"parent": "spear2",
+		"length": 76.8,
+		"rotation": -0.9,
+		"x": 61.89,
+		"y": 0.57,
+		"color": "ffcf00ff"
+	}
 ],
 "slots": [
 	{ "name": "left-shoulder", "bone": "left-shoulder", "attachment": "left-shoulder" },

+ 343 - 46
spine-cocos2dx/example/Resources/common/raptor-pro.json

@@ -1,18 +1,35 @@
 {
-"skeleton": {
-	"hash": "pNFKcFD/5VPCe7+HftjerXAycWk",
-	"spine": "3.7.08-beta",
-	"width": 1296.89,
-	"height": 1055.12,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "pNFKcFD/5VPCe7+HftjerXAycWk", "spine": "3.7.19-beta", "width": 1296.89, "height": 1055.12, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "rotation": 3.16, "x": -136.79, "y": 415.48, "color": "fbff00ff" },
-	{ "name": "torso1", "parent": "hip", "length": 126.26, "rotation": -4.98, "x": 30.04, "y": -0.4, "color": "eaff00ff" },
-	{ "name": "saddle", "parent": "torso1", "length": 50.92, "rotation": 91.8, "x": 25.31, "y": 70.65, "color": "ff7300ff" },
-	{ "name": "spineboy-hip", "parent": "saddle", "length": 0.53, "rotation": 90.02, "x": 81.88, "y": 2.69, "color": "e8ff00ff" },
+	{
+		"name": "torso1",
+		"parent": "hip",
+		"length": 126.26,
+		"rotation": -4.98,
+		"x": 30.04,
+		"y": -0.4,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "saddle",
+		"parent": "torso1",
+		"length": 50.92,
+		"rotation": 91.8,
+		"x": 25.31,
+		"y": 70.65,
+		"color": "ff7300ff"
+	},
+	{
+		"name": "spineboy-hip",
+		"parent": "saddle",
+		"length": 0.53,
+		"rotation": 90.02,
+		"x": 81.88,
+		"y": 2.69,
+		"color": "e8ff00ff"
+	},
 	{
 		"name": "spineboy-torso",
 		"parent": "spineboy-hip",
@@ -22,10 +39,42 @@
 		"y": -2.11,
 		"color": "e8ff00ff"
 	},
-	{ "name": "torso2", "parent": "torso1", "length": 121.2, "rotation": 39.85, "x": 126.26, "y": -0.38, "color": "e9ff00ff" },
-	{ "name": "neck", "parent": "torso2", "length": 70.6, "rotation": 41.38, "x": 121.2, "y": 0.35, "color": "eaff00ff" },
-	{ "name": "head", "parent": "neck", "length": 105.51, "rotation": 9.83, "x": 70.6, "y": 0.04, "color": "eaff00ff" },
-	{ "name": "horn-rear", "parent": "head", "length": 73.78, "rotation": 44.32, "x": 104.76, "y": -242.01, "color": "e07800ff" },
+	{
+		"name": "torso2",
+		"parent": "torso1",
+		"length": 121.2,
+		"rotation": 39.85,
+		"x": 126.26,
+		"y": -0.38,
+		"color": "e9ff00ff"
+	},
+	{
+		"name": "neck",
+		"parent": "torso2",
+		"length": 70.6,
+		"rotation": 41.38,
+		"x": 121.2,
+		"y": 0.35,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 105.51,
+		"rotation": 9.83,
+		"x": 70.6,
+		"y": 0.04,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "horn-rear",
+		"parent": "head",
+		"length": 73.78,
+		"rotation": 44.32,
+		"x": 104.76,
+		"y": -242.01,
+		"color": "e07800ff"
+	},
 	{ "name": "rear-arm-target", "parent": "horn-rear", "rotation": -133.55, "x": 232.68, "y": 245.85, "color": "ff3f00ff" },
 	{
 		"name": "back-arm",
@@ -36,7 +85,15 @@
 		"y": -38.47,
 		"color": "e07800ff"
 	},
-	{ "name": "back-bracer", "parent": "back-arm", "length": 43.69, "rotation": 17.48, "x": 67.22, "y": -0.32, "color": "e07800ff" },
+	{
+		"name": "back-bracer",
+		"parent": "back-arm",
+		"length": 43.69,
+		"rotation": 17.48,
+		"x": 67.22,
+		"y": -0.32,
+		"color": "e07800ff"
+	},
 	{
 		"name": "back-hand",
 		"parent": "back-bracer",
@@ -48,21 +105,85 @@
 		"color": "e07800ff"
 	},
 	{ "name": "spineboy-rear-arm-goal", "parent": "saddle", "x": -30.44, "y": -100.08, "color": "ff3f00ff" },
-	{ "name": "back-thigh", "parent": "spineboy-hip", "length": 71.16, "rotation": 160.75, "x": -9.57, "y": 2.32, "color": "e07800ff" },
-	{ "name": "back-knee", "parent": "back-thigh", "length": 97.17, "rotation": -54.98, "x": 71.16, "y": -0.28, "color": "e07800ff" },
-	{ "name": "neck2", "parent": "spineboy-torso", "length": 32.05, "rotation": -45.23, "x": 113.44, "y": -15.22, "color": "e8ff00ff" },
-	{ "name": "head2", "parent": "neck2", "length": 167.19, "rotation": 11.66, "x": 25.68, "y": -0.77, "color": "e7ff00ff" },
-	{ "name": "bone", "parent": "head2", "length": 39.92, "rotation": -35.23, "x": 166.09, "y": -79.27, "color": "e7ff00ff" },
+	{
+		"name": "back-thigh",
+		"parent": "spineboy-hip",
+		"length": 71.16,
+		"rotation": 160.75,
+		"x": -9.57,
+		"y": 2.32,
+		"color": "e07800ff"
+	},
+	{
+		"name": "back-knee",
+		"parent": "back-thigh",
+		"length": 97.17,
+		"rotation": -54.98,
+		"x": 71.16,
+		"y": -0.28,
+		"color": "e07800ff"
+	},
+	{
+		"name": "neck2",
+		"parent": "spineboy-torso",
+		"length": 32.05,
+		"rotation": -45.23,
+		"x": 113.44,
+		"y": -15.22,
+		"color": "e8ff00ff"
+	},
+	{
+		"name": "head2",
+		"parent": "neck2",
+		"length": 167.19,
+		"rotation": 11.66,
+		"x": 25.68,
+		"y": -0.77,
+		"color": "e7ff00ff"
+	},
+	{
+		"name": "bone",
+		"parent": "head2",
+		"length": 39.92,
+		"rotation": -35.23,
+		"x": 166.09,
+		"y": -79.27,
+		"color": "e7ff00ff"
+	},
 	{ "name": "bone2", "parent": "bone", "length": 47.42, "rotation": 51.8, "x": 39.92, "color": "e7ff00ff" },
-	{ "name": "bone3", "parent": "head2", "length": 45.41, "rotation": -12.34, "x": 179.8, "y": -20.91, "color": "e7ff00ff" },
-	{ "name": "bone4", "parent": "bone3", "length": 43.31, "rotation": 42.01, "x": 44.64, "y": 0.3, "color": "e7ff00ff" },
+	{
+		"name": "bone3",
+		"parent": "head2",
+		"length": 45.41,
+		"rotation": -12.34,
+		"x": 179.8,
+		"y": -20.91,
+		"color": "e7ff00ff"
+	},
+	{
+		"name": "bone4",
+		"parent": "bone3",
+		"length": 43.31,
+		"rotation": 42.01,
+		"x": 44.64,
+		"y": 0.3,
+		"color": "e7ff00ff"
+	},
 	{ "name": "bone5", "parent": "bone4", "length": 44.88, "rotation": 48.8, "x": 43.31, "color": "e7ff00ff" },
 	{ "name": "dust-root", "parent": "root" },
 	{ "name": "dust", "parent": "dust-root", "x": 231.15, "y": -2.15, "scaleX": 2.285, "scaleY": 1.427 },
 	{ "name": "dust2", "parent": "dust-root", "x": -147.58, "y": -2.15, "scaleX": 1.635, "scaleY": 1.021 },
 	{ "name": "dust3", "parent": "dust-root", "x": 429.77, "y": 20.67, "scaleX": 2.285, "scaleY": 1.427 },
 	{ "name": "dust4", "parent": "dust-root", "x": 29.91, "y": 14.02, "scaleX": 1.635, "scaleY": 1.021 },
-	{ "name": "horn-front", "parent": "head", "length": 87.48, "rotation": 49.36, "x": 87.97, "y": -235.15, "color": "15ff00ff" },
+	{
+		"name": "horn-front",
+		"parent": "head",
+		"length": 87.48,
+		"rotation": 49.36,
+		"x": 87.97,
+		"y": -235.15,
+		"color": "15ff00ff"
+	},
 	{ "name": "front-arm-target", "parent": "horn-front", "rotation": -138.6, "x": 294.58, "y": 234.18, "color": "ff3f00ff" },
 	{
 		"name": "front-arm",
@@ -73,14 +194,62 @@
 		"y": 9.79,
 		"color": "14ff00ff"
 	},
-	{ "name": "front-bracer", "parent": "front-arm", "length": 39.85, "rotation": 20.31, "x": 74.52, "y": -0.42, "color": "14ff00ff" },
-	{ "name": "front-arm1", "parent": "torso2", "length": 109.99, "rotation": 224.54, "x": 46.37, "y": -84.62, "color": "15ff00ff" },
-	{ "name": "front-arm2", "parent": "front-arm1", "length": 86.33, "rotation": 105.24, "x": 109.99, "y": 0.2, "color": "15ff00ff" },
+	{
+		"name": "front-bracer",
+		"parent": "front-arm",
+		"length": 39.85,
+		"rotation": 20.31,
+		"x": 74.52,
+		"y": -0.42,
+		"color": "14ff00ff"
+	},
+	{
+		"name": "front-arm1",
+		"parent": "torso2",
+		"length": 109.99,
+		"rotation": 224.54,
+		"x": 46.37,
+		"y": -84.62,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-arm2",
+		"parent": "front-arm1",
+		"length": 86.33,
+		"rotation": 105.24,
+		"x": 109.99,
+		"y": 0.2,
+		"color": "15ff00ff"
+	},
 	{ "name": "front-foot-goal", "parent": "root", "rotation": -0.95, "x": -45.8, "y": -28.67, "color": "ff3f00ff" },
 	{ "name": "front-leg-goal", "parent": "front-foot-goal", "x": -106.06, "y": 115.58, "color": "ff3f00ff" },
-	{ "name": "front-leg1", "parent": "hip", "length": 251.75, "rotation": -51.51, "x": 27.36, "y": -28.28, "color": "15ff00ff" },
-	{ "name": "front-leg2", "parent": "front-leg1", "length": 208.55, "rotation": 261.94, "x": 251.04, "y": 0.16, "color": "15ff00ff" },
-	{ "name": "front-leg3", "parent": "front-leg2", "length": 118.18, "rotation": 85.46, "x": 208.5, "y": -1.64, "color": "15ff00ff" },
+	{
+		"name": "front-leg1",
+		"parent": "hip",
+		"length": 251.75,
+		"rotation": -51.51,
+		"x": 27.36,
+		"y": -28.28,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-leg2",
+		"parent": "front-leg1",
+		"length": 208.55,
+		"rotation": 261.94,
+		"x": 251.04,
+		"y": 0.16,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-leg3",
+		"parent": "front-leg2",
+		"length": 118.18,
+		"rotation": 85.46,
+		"x": 208.5,
+		"y": -1.64,
+		"color": "15ff00ff"
+	},
 	{
 		"name": "front-foot1",
 		"parent": "front-leg3",
@@ -113,7 +282,15 @@
 		"scaleX": 1.155,
 		"color": "15ff00ff"
 	},
-	{ "name": "front-hand", "parent": "front-arm2", "length": 47.56, "rotation": -56.83, "x": 86.33, "y": 0.06, "color": "15ff00ff" },
+	{
+		"name": "front-hand",
+		"parent": "front-arm2",
+		"length": 47.56,
+		"rotation": -56.83,
+		"x": 86.33,
+		"y": 0.06,
+		"color": "15ff00ff"
+	},
 	{
 		"name": "front-hand2",
 		"parent": "front-bracer",
@@ -134,7 +311,15 @@
 		"y": 17.02,
 		"color": "14ff00ff"
 	},
-	{ "name": "lower-leg", "parent": "front-thigh", "length": 111.5, "rotation": -49.62, "x": 77.93, "y": -0.11, "color": "14ff00ff" },
+	{
+		"name": "lower-leg",
+		"parent": "front-thigh",
+		"length": 111.5,
+		"rotation": -49.62,
+		"x": 77.93,
+		"y": -0.11,
+		"color": "14ff00ff"
+	},
 	{
 		"name": "gun",
 		"parent": "spineboy-hip",
@@ -146,16 +331,72 @@
 		"scaleY": 0.816,
 		"color": "ffffffff"
 	},
-	{ "name": "jaw", "parent": "head", "length": 203.76, "rotation": -125.79, "x": 49.11, "y": -68.46, "color": "ffff00ff" },
+	{
+		"name": "jaw",
+		"parent": "head",
+		"length": 203.76,
+		"rotation": -125.79,
+		"x": 49.11,
+		"y": -68.46,
+		"color": "ffff00ff"
+	},
 	{ "name": "jaw-inside", "parent": "jaw", "x": 94.7, "y": 33.64, "color": "ffff00ff" },
-	{ "name": "rear-arm1", "parent": "torso2", "length": 109.56, "rotation": -124.72, "x": 57.05, "y": -95.39, "color": "e07800ff" },
-	{ "name": "rear-arm2", "parent": "rear-arm1", "length": 85.8, "rotation": 123.56, "x": 109.57, "y": -0.01, "color": "e07800ff" },
+	{
+		"name": "rear-arm1",
+		"parent": "torso2",
+		"length": 109.56,
+		"rotation": -124.72,
+		"x": 57.05,
+		"y": -95.39,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-arm2",
+		"parent": "rear-arm1",
+		"length": 85.8,
+		"rotation": 123.56,
+		"x": 109.57,
+		"y": -0.01,
+		"color": "e07800ff"
+	},
 	{ "name": "rear-foot-goal", "parent": "root", "x": 33.44, "y": 30.82, "color": "ff3f00ff" },
 	{ "name": "rear-leg-goal", "parent": "rear-foot-goal", "x": -127.51, "y": 75.99, "color": "ff3f00ff" },
-	{ "name": "rear-leg1", "parent": "hip", "length": 226.28, "rotation": -54.76, "x": 55.19, "y": -71.25, "color": "e07800ff" },
-	{ "name": "rear-leg2", "parent": "rear-leg1", "length": 172.59, "rotation": -92.25, "x": 226.32, "y": 0.23, "color": "e07800ff" },
-	{ "name": "rear-leg3", "parent": "rear-leg2", "length": 103.05, "rotation": 82.82, "x": 172.32, "y": 2.21, "color": "e07800ff" },
-	{ "name": "rear-foot1", "parent": "rear-leg3", "length": 84.51, "rotation": 75.43, "x": 102.38, "y": -0.03, "color": "e07800ff" },
+	{
+		"name": "rear-leg1",
+		"parent": "hip",
+		"length": 226.28,
+		"rotation": -54.76,
+		"x": 55.19,
+		"y": -71.25,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-leg2",
+		"parent": "rear-leg1",
+		"length": 172.59,
+		"rotation": -92.25,
+		"x": 226.32,
+		"y": 0.23,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-leg3",
+		"parent": "rear-leg2",
+		"length": 103.05,
+		"rotation": 82.82,
+		"x": 172.32,
+		"y": 2.21,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-foot1",
+		"parent": "rear-leg3",
+		"length": 84.51,
+		"rotation": 75.43,
+		"x": 102.38,
+		"y": -0.03,
+		"color": "e07800ff"
+	},
 	{
 		"name": "rear-foot2",
 		"parent": "rear-foot1",
@@ -166,7 +407,15 @@
 		"transform": "noRotationOrReflection",
 		"color": "e07800ff"
 	},
-	{ "name": "rear-hand", "parent": "rear-arm2", "length": 45.81, "rotation": -76.28, "x": 85.8, "y": 0.11, "color": "e07800ff" },
+	{
+		"name": "rear-hand",
+		"parent": "rear-arm2",
+		"length": 45.81,
+		"rotation": -76.28,
+		"x": 85.8,
+		"y": 0.11,
+		"color": "e07800ff"
+	},
 	{
 		"name": "saddle-strap-front1",
 		"parent": "saddle",
@@ -204,10 +453,34 @@
 		"y": 0.2,
 		"color": "ff7300ff"
 	},
-	{ "name": "stirrup", "parent": "saddle", "length": 78.17, "rotation": -68.86, "x": -81.94, "y": -103.38, "color": "ff3f00ff" },
-	{ "name": "stirrup-strap1", "parent": "saddle", "length": 43.7, "rotation": -135, "x": -20.38, "y": -29.37, "color": "ff7300ff" },
+	{
+		"name": "stirrup",
+		"parent": "saddle",
+		"length": 78.17,
+		"rotation": -68.86,
+		"x": -81.94,
+		"y": -103.38,
+		"color": "ff3f00ff"
+	},
+	{
+		"name": "stirrup-strap1",
+		"parent": "saddle",
+		"length": 43.7,
+		"rotation": -135,
+		"x": -20.38,
+		"y": -29.37,
+		"color": "ff7300ff"
+	},
 	{ "name": "stirrup-strap2", "parent": "stirrup-strap1", "length": 51.62, "rotation": 9.39, "x": 43.71, "color": "ff7300ff" },
-	{ "name": "tail1", "parent": "hip", "length": 81.26, "rotation": 153.61, "x": -20.87, "y": 6.87, "color": "eaff00ff" },
+	{
+		"name": "tail1",
+		"parent": "hip",
+		"length": 81.26,
+		"rotation": 153.61,
+		"x": -20.87,
+		"y": 6.87,
+		"color": "eaff00ff"
+	},
 	{ "name": "tail2", "parent": "tail1", "length": 81.26, "rotation": 10.42, "x": 81.26, "color": "eaff00ff" },
 	{ "name": "tail3", "parent": "tail2", "length": 65.01, "rotation": 12.18, "x": 81.26, "color": "eaff00ff" },
 	{ "name": "tail4", "parent": "tail3", "length": 65.01, "x": 65.01, "color": "eaff00ff" },
@@ -217,9 +490,33 @@
 	{ "name": "tail8", "parent": "tail7", "length": 54.46, "rotation": 0.97, "x": 63.13, "color": "eaff00ff" },
 	{ "name": "tail9", "parent": "tail8", "length": 49.21, "rotation": -1.29, "x": 54.46, "color": "eaff00ff" },
 	{ "name": "tail10", "parent": "tail9", "length": 45.53, "rotation": 0.36, "x": 49.21, "color": "eaff00ff" },
-	{ "name": "tongue1", "parent": "head", "length": 55.12, "rotation": -129.04, "x": 20.82, "y": -104.75, "color": "ffff00ff" },
-	{ "name": "tongue2", "parent": "tongue1", "length": 44.67, "rotation": 8.93, "x": 55.6, "y": 0.93, "color": "fff200ff" },
-	{ "name": "tongue3", "parent": "tongue2", "length": 43.65, "rotation": 12.86, "x": 44.27, "y": -0.21, "color": "fff200ff" }
+	{
+		"name": "tongue1",
+		"parent": "head",
+		"length": 55.12,
+		"rotation": -129.04,
+		"x": 20.82,
+		"y": -104.75,
+		"color": "ffff00ff"
+	},
+	{
+		"name": "tongue2",
+		"parent": "tongue1",
+		"length": 44.67,
+		"rotation": 8.93,
+		"x": 55.6,
+		"y": 0.93,
+		"color": "fff200ff"
+	},
+	{
+		"name": "tongue3",
+		"parent": "tongue2",
+		"length": 43.65,
+		"rotation": 12.86,
+		"x": 44.27,
+		"y": -0.21,
+		"color": "fff200ff"
+	}
 ],
 "slots": [
 	{ "name": "back-hand", "bone": "back-hand", "attachment": "back-hand" },

+ 118 - 21
spine-cocos2dx/example/Resources/common/spineboy-ess.json

@@ -1,18 +1,27 @@
 {
-"skeleton": {
-	"hash": "0DoQUqP6ATLL322RHY3r98lgFr8",
-	"spine": "3.7.08-beta",
-	"width": 470.72,
-	"height": 731.57,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "0DoQUqP6ATLL322RHY3r98lgFr8", "spine": "3.7.19-beta", "width": 470.72, "height": 731.57, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "dust", "parent": "root", "x": -303.6, "y": 32.64, "scaleX": 1.457 },
 	{ "name": "hip", "parent": "root", "y": 247.47 },
-	{ "name": "torso", "parent": "hip", "length": 127.56, "rotation": 103.82, "x": -1.62, "y": 4.9, "color": "e0da19ff" },
-	{ "name": "front-upper-arm", "parent": "torso", "length": 69.45, "rotation": 168.38, "x": 103.76, "y": 19.33, "color": "00ff04ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 127.56,
+		"rotation": 103.82,
+		"x": -1.62,
+		"y": 4.9,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "front-upper-arm",
+		"parent": "torso",
+		"length": 69.45,
+		"rotation": 168.38,
+		"x": 103.76,
+		"y": 19.33,
+		"color": "00ff04ff"
+	},
 	{
 		"name": "front-bracer",
 		"parent": "front-upper-arm",
@@ -22,19 +31,107 @@
 		"y": -0.68,
 		"color": "00ff04ff"
 	},
-	{ "name": "front-fist", "parent": "front-bracer", "length": 65.39, "rotation": 12.43, "x": 40.57, "y": 0.2, "color": "00ff04ff" },
-	{ "name": "front-thigh", "parent": "hip", "length": 74.81, "rotation": -95.51, "x": -17.46, "y": -11.64, "color": "00ff04ff" },
-	{ "name": "front-shin", "parent": "front-thigh", "length": 128.77, "rotation": -2.21, "x": 78.69, "y": 1.6, "color": "00ff04ff" },
-	{ "name": "front-foot", "parent": "front-shin", "length": 91.34, "rotation": 77.91, "x": 128.76, "y": -0.34, "color": "00ff04ff" },
-	{ "name": "rear-upper-arm", "parent": "torso", "length": 51.94, "rotation": -169.56, "x": 92.36, "y": -19.22, "color": "ff000dff" },
+	{
+		"name": "front-fist",
+		"parent": "front-bracer",
+		"length": 65.39,
+		"rotation": 12.43,
+		"x": 40.57,
+		"y": 0.2,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-thigh",
+		"parent": "hip",
+		"length": 74.81,
+		"rotation": -95.51,
+		"x": -17.46,
+		"y": -11.64,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-shin",
+		"parent": "front-thigh",
+		"length": 128.77,
+		"rotation": -2.21,
+		"x": 78.69,
+		"y": 1.6,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-foot",
+		"parent": "front-shin",
+		"length": 91.34,
+		"rotation": 77.91,
+		"x": 128.76,
+		"y": -0.34,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "rear-upper-arm",
+		"parent": "torso",
+		"length": 51.94,
+		"rotation": -169.56,
+		"x": 92.36,
+		"y": -19.22,
+		"color": "ff000dff"
+	},
 	{ "name": "rear-bracer", "parent": "rear-upper-arm", "length": 34.56, "rotation": 23.15, "x": 51.36, "color": "ff000dff" },
-	{ "name": "gun", "parent": "rear-bracer", "length": 43.11, "rotation": 5.35, "x": 34.42, "y": -0.45, "color": "ff000dff" },
+	{
+		"name": "gun",
+		"parent": "rear-bracer",
+		"length": 43.11,
+		"rotation": 5.35,
+		"x": 34.42,
+		"y": -0.45,
+		"color": "ff000dff"
+	},
 	{ "name": "gun-tip", "parent": "gun", "rotation": 6.83, "x": 201.05, "y": 52.14, "color": "ff000dff" },
-	{ "name": "neck", "parent": "torso", "length": 25.45, "rotation": -31.54, "x": 127.5, "y": -0.31, "color": "e0da19ff" },
-	{ "name": "head", "parent": "neck", "length": 263.58, "rotation": 23.18, "x": 27.66, "y": -0.26, "color": "e0da19ff" },
-	{ "name": "rear-thigh", "parent": "hip", "length": 85.72, "rotation": -72.54, "x": 8.91, "y": -5.63, "color": "ff000dff" },
-	{ "name": "rear-shin", "parent": "rear-thigh", "length": 121.88, "rotation": -19.83, "x": 86.1, "y": -1.33, "color": "ff000dff" },
-	{ "name": "rear-foot", "parent": "rear-shin", "length": 82.57, "rotation": 69.3, "x": 121.46, "y": -0.76, "color": "ff000dff" }
+	{
+		"name": "neck",
+		"parent": "torso",
+		"length": 25.45,
+		"rotation": -31.54,
+		"x": 127.5,
+		"y": -0.31,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 263.58,
+		"rotation": 23.18,
+		"x": 27.66,
+		"y": -0.26,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "rear-thigh",
+		"parent": "hip",
+		"length": 85.72,
+		"rotation": -72.54,
+		"x": 8.91,
+		"y": -5.63,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-shin",
+		"parent": "rear-thigh",
+		"length": 121.88,
+		"rotation": -19.83,
+		"x": 86.1,
+		"y": -1.33,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-foot",
+		"parent": "rear-shin",
+		"length": 82.57,
+		"rotation": 69.3,
+		"x": 121.46,
+		"y": -0.76,
+		"color": "ff000dff"
+	}
 ],
 "slots": [
 	{ "name": "rear-upper-arm", "bone": "rear-upper-arm", "attachment": "rear-upper-arm" },

BIN
spine-cocos2dx/example/Resources/common/tank-pro.skel


+ 4 - 2
spine-cocos2dx/src/spine/SkeletonRenderer.cpp

@@ -363,7 +363,8 @@ void SkeletonRenderer::draw (Renderer* renderer, const Mat4& transform, uint32_t
 				triangles.verts = batch->allocateVertices(attachmentVertices->_triangles->vertCount);
 				triangles.vertCount = attachmentVertices->_triangles->vertCount;
 				memcpy(triangles.verts, attachmentVertices->_triangles->verts, sizeof(cocos2d::V3F_C4B_T2F) * attachmentVertices->_triangles->vertCount);
-				attachment->computeWorldVertices(*slot, 0, attachment->getWorldVerticesLength(), (float*)triangles.verts, 0, 6);
+				int vertexSizeInFloats = sizeof(cocos2d::V3F_C4B_T2F) / sizeof(float);
+				spVertexAttachment_computeWorldVertices(SUPER(attachment), slot, 0, attachment->getWorldVerticesLength(), (float*)triangles.verts, 0, vertexSizeInFloats);
 			} else {
 				trianglesTwoColor.indices = attachmentVertices->_triangles->indices;
 				trianglesTwoColor.indexCount = attachmentVertices->_triangles->indexCount;
@@ -372,7 +373,8 @@ void SkeletonRenderer::draw (Renderer* renderer, const Mat4& transform, uint32_t
 				for (int i = 0; i < trianglesTwoColor.vertCount; i++) {
 					trianglesTwoColor.verts[i].texCoords = attachmentVertices->_triangles->verts[i].texCoords;
 				}
-				attachment->computeWorldVertices(*slot, 0,  attachment->getWorldVerticesLength(), (float*)trianglesTwoColor.verts, 0, 7);
+				int vertexSizeInFloats = sizeof(V3F_C4B_C4B_T2F) / sizeof(float);
+				spVertexAttachment_computeWorldVertices(SUPER(attachment), slot, 0, attachment->getWorldVerticesLength(), (float*)trianglesTwoColor.verts, 0, vertexSizeInFloats);
 			}
 
 			color.r = attachment->getColor().r;

+ 1 - 8
spine-corona/data/coin-pro.json

@@ -1,12 +1,5 @@
 {
-"skeleton": {
-	"hash": "lfmnIwRt8cjfHaBQWvT0v4odYdY",
-	"spine": "3.7.08-beta",
-	"width": 260,
-	"height": 359.92,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "lfmnIwRt8cjfHaBQWvT0v4odYdY", "spine": "3.7.19-beta", "width": 260, "height": 359.92, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "coin-root", "parent": "root", "y": 300, "color": "ff0000ff" },

+ 127 - 22
spine-corona/data/goblins-pro.json

@@ -1,21 +1,62 @@
 {
-"skeleton": {
-	"hash": "GEt0/K+46aqD75ngNEZOztV899k",
-	"spine": "3.7.08-beta",
-	"width": 266.94,
-	"height": 349.61,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "GEt0/K+46aqD75ngNEZOztV899k", "spine": "3.7.19-beta", "width": 266.94, "height": 349.61, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "x": 0.65, "y": 114.41, "color": "ffcf00ff" },
-	{ "name": "torso", "parent": "hip", "length": 85.83, "rotation": 93.93, "x": -6.42, "y": 1.98, "color": "ffcf00ff" },
-	{ "name": "neck", "parent": "torso", "length": 18.38, "rotation": -1.52, "x": 81.68, "y": -6.35, "color": "ffcf00ff" },
-	{ "name": "head", "parent": "neck", "length": 68.29, "rotation": -13.92, "x": 20.94, "y": 11.59, "color": "ffcf00ff" },
-	{ "name": "left-shoulder", "parent": "torso", "length": 35.43, "rotation": -156.96, "x": 74.05, "y": -20.39, "color": "ff0000ff" },
-	{ "name": "left-arm", "parent": "left-shoulder", "length": 35.62, "rotation": 28.17, "x": 37.86, "y": -2.35, "color": "ff0000ff" },
-	{ "name": "left-upper-leg", "parent": "hip", "length": 50.4, "rotation": -89.1, "x": 14.45, "y": 2.81, "color": "ff0000ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 85.83,
+		"rotation": 93.93,
+		"x": -6.42,
+		"y": 1.98,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "neck",
+		"parent": "torso",
+		"length": 18.38,
+		"rotation": -1.52,
+		"x": 81.68,
+		"y": -6.35,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 68.29,
+		"rotation": -13.92,
+		"x": 20.94,
+		"y": 11.59,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "left-shoulder",
+		"parent": "torso",
+		"length": 35.43,
+		"rotation": -156.96,
+		"x": 74.05,
+		"y": -20.39,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-arm",
+		"parent": "left-shoulder",
+		"length": 35.62,
+		"rotation": 28.17,
+		"x": 37.86,
+		"y": -2.35,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-upper-leg",
+		"parent": "hip",
+		"length": 50.4,
+		"rotation": -89.1,
+		"x": 14.45,
+		"y": 2.81,
+		"color": "ff0000ff"
+	},
 	{
 		"name": "left-lower-leg",
 		"parent": "left-upper-leg",
@@ -34,11 +75,43 @@
 		"y": -7.61,
 		"color": "ff0000ff"
 	},
-	{ "name": "left-hand", "parent": "left-arm", "length": 11.52, "rotation": 2.7, "x": 35.62, "y": 0.08, "color": "ff0000ff" },
+	{
+		"name": "left-hand",
+		"parent": "left-arm",
+		"length": 11.52,
+		"rotation": 2.7,
+		"x": 35.62,
+		"y": 0.08,
+		"color": "ff0000ff"
+	},
 	{ "name": "pelvis", "parent": "hip", "x": 1.41, "y": -6.58, "color": "ffcf00ff" },
-	{ "name": "right-shoulder", "parent": "torso", "length": 37.25, "rotation": 133.89, "x": 76.02, "y": 18.15, "color": "62ff00ff" },
-	{ "name": "right-arm", "parent": "right-shoulder", "length": 36.75, "rotation": 36.33, "x": 37.61, "y": 0.31, "color": "62ff00ff" },
-	{ "name": "right-upper-leg", "parent": "hip", "length": 42.46, "rotation": -97.5, "x": -20.08, "y": -6.84, "color": "62ff00ff" },
+	{
+		"name": "right-shoulder",
+		"parent": "torso",
+		"length": 37.25,
+		"rotation": 133.89,
+		"x": 76.02,
+		"y": 18.15,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "right-arm",
+		"parent": "right-shoulder",
+		"length": 36.75,
+		"rotation": 36.33,
+		"x": 37.61,
+		"y": 0.31,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "right-upper-leg",
+		"parent": "hip",
+		"length": 42.46,
+		"rotation": -97.5,
+		"x": -20.08,
+		"y": -6.84,
+		"color": "62ff00ff"
+	},
 	{
 		"name": "right-lower-leg",
 		"parent": "right-upper-leg",
@@ -57,10 +130,42 @@
 		"y": 0.04,
 		"color": "62ff00ff"
 	},
-	{ "name": "right-hand", "parent": "right-arm", "length": 15.32, "rotation": 2.36, "x": 36.9, "y": 0.35, "color": "62ff00ff" },
-	{ "name": "spear1", "parent": "left-hand", "length": 65.07, "rotation": 102.43, "x": 0.48, "y": 17.03, "color": "ffcf00ff" },
-	{ "name": "spear2", "parent": "spear1", "length": 61.42, "rotation": 0.9, "x": 65.06, "y": 0.04, "color": "ffcf00ff" },
-	{ "name": "spear3", "parent": "spear2", "length": 76.8, "rotation": -0.9, "x": 61.89, "y": 0.57, "color": "ffcf00ff" }
+	{
+		"name": "right-hand",
+		"parent": "right-arm",
+		"length": 15.32,
+		"rotation": 2.36,
+		"x": 36.9,
+		"y": 0.35,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "spear1",
+		"parent": "left-hand",
+		"length": 65.07,
+		"rotation": 102.43,
+		"x": 0.48,
+		"y": 17.03,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "spear2",
+		"parent": "spear1",
+		"length": 61.42,
+		"rotation": 0.9,
+		"x": 65.06,
+		"y": 0.04,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "spear3",
+		"parent": "spear2",
+		"length": 76.8,
+		"rotation": -0.9,
+		"x": 61.89,
+		"y": 0.57,
+		"color": "ffcf00ff"
+	}
 ],
 "slots": [
 	{ "name": "left-shoulder", "bone": "left-shoulder", "attachment": "left-shoulder" },

+ 64 - 15
spine-corona/data/owl-pro.json

@@ -1,22 +1,31 @@
 {
-"skeleton": {
-	"hash": "TbihQmOjHQadWT+cp2p48Xive5U",
-	"spine": "3.7.08-beta",
-	"width": 1350.84,
-	"height": 909.41,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "TbihQmOjHQadWT+cp2p48Xive5U", "spine": "3.7.19-beta", "width": 1350.84, "height": 909.41, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
-	{ "name": "branch-1", "parent": "root", "length": 487.04, "rotation": 27.67, "x": -579.3, "y": -239.11, "color": "1a8600ff" },
+	{
+		"name": "branch-1",
+		"parent": "root",
+		"length": 487.04,
+		"rotation": 27.67,
+		"x": -579.3,
+		"y": -239.11,
+		"color": "1a8600ff"
+	},
 	{ "name": "branch-2", "parent": "branch-1", "length": 391.45, "rotation": -30.2, "x": 487.04, "color": "1a8600ff" },
 	{ "name": "owl-base", "parent": "branch-2", "x": 139.77, "y": 56.43, "color": "1697ffff" },
 	{ "name": "body-top-control", "parent": "owl-base", "rotation": 92.53, "x": -3.85, "y": 227.57, "color": "1697ffff" },
 	{ "name": "branch-3", "parent": "branch-2", "length": 231.51, "rotation": 30.15, "x": 391.45, "color": "1a8600ff" },
 	{ "name": "branch-4", "parent": "branch-3", "length": 158.83, "rotation": 38.9, "x": 231.51, "color": "1a8600ff" },
 	{ "name": "branch-5", "parent": "branch-4", "length": 82.96, "rotation": -26.21, "x": 158.83, "color": "1a8600ff" },
-	{ "name": "branch-6", "parent": "branch-5", "length": 105.49, "rotation": 68.78, "x": -79.95, "y": -20.15, "color": "1a8600ff" },
+	{
+		"name": "branch-6",
+		"parent": "branch-5",
+		"length": 105.49,
+		"rotation": 68.78,
+		"x": -79.95,
+		"y": -20.15,
+		"color": "1a8600ff"
+	},
 	{
 		"name": "butt-feathers",
 		"parent": "owl-base",
@@ -29,13 +38,53 @@
 	{ "name": "head", "parent": "body-top-control", "rotation": -90, "x": 51, "y": 0.33, "color": "1697ffff" },
 	{ "name": "control", "parent": "head", "y": 126.66, "color": "1697ffff" },
 	{ "name": "control-back", "parent": "head", "x": 1.74, "y": 75.81, "color": "b500afff" },
-	{ "name": "leaf-1", "parent": "branch-1", "length": 170.88, "rotation": 59.11, "x": 81.78, "y": 61.01, "color": "c61616ff" },
-	{ "name": "leaf-2", "parent": "branch-4", "length": 177.54, "rotation": -74.38, "x": 116.86, "y": -14.04, "color": "c61616ff" },
-	{ "name": "leaf-3", "parent": "branch-3", "length": 206.74, "rotation": -60.2, "x": -15.26, "y": 6.37, "color": "c61616ff" },
-	{ "name": "leaf-4", "parent": "branch-6", "length": 152.22, "rotation": 76.69, "x": 110.99, "y": 4.18, "color": "c61616ff" },
+	{
+		"name": "leaf-1",
+		"parent": "branch-1",
+		"length": 170.88,
+		"rotation": 59.11,
+		"x": 81.78,
+		"y": 61.01,
+		"color": "c61616ff"
+	},
+	{
+		"name": "leaf-2",
+		"parent": "branch-4",
+		"length": 177.54,
+		"rotation": -74.38,
+		"x": 116.86,
+		"y": -14.04,
+		"color": "c61616ff"
+	},
+	{
+		"name": "leaf-3",
+		"parent": "branch-3",
+		"length": 206.74,
+		"rotation": -60.2,
+		"x": -15.26,
+		"y": 6.37,
+		"color": "c61616ff"
+	},
+	{
+		"name": "leaf-4",
+		"parent": "branch-6",
+		"length": 152.22,
+		"rotation": 76.69,
+		"x": 110.99,
+		"y": 4.18,
+		"color": "c61616ff"
+	},
 	{ "name": "leaf-5", "parent": "branch-5", "length": 186.26, "rotation": 40.81, "x": 82.96, "color": "c61616ff" },
 	{ "name": "leaf-6", "parent": "branch-6", "length": 201.94, "rotation": 0.89, "x": 105.49, "color": "c61616ff" },
-	{ "name": "leaf-7", "parent": "branch-1", "length": 155.86, "rotation": 30.39, "x": 214.62, "y": 12.99, "color": "c61616ff" }
+	{
+		"name": "leaf-7",
+		"parent": "branch-1",
+		"length": 155.86,
+		"rotation": 30.39,
+		"x": 214.62,
+		"y": 12.99,
+		"color": "c61616ff"
+	}
 ],
 "slots": [
 	{ "name": "feather-3", "bone": "butt-feathers", "attachment": "feather-3" },

+ 343 - 46
spine-corona/data/raptor-pro.json

@@ -1,18 +1,35 @@
 {
-"skeleton": {
-	"hash": "pNFKcFD/5VPCe7+HftjerXAycWk",
-	"spine": "3.7.08-beta",
-	"width": 1296.89,
-	"height": 1055.12,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "pNFKcFD/5VPCe7+HftjerXAycWk", "spine": "3.7.19-beta", "width": 1296.89, "height": 1055.12, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "rotation": 3.16, "x": -136.79, "y": 415.48, "color": "fbff00ff" },
-	{ "name": "torso1", "parent": "hip", "length": 126.26, "rotation": -4.98, "x": 30.04, "y": -0.4, "color": "eaff00ff" },
-	{ "name": "saddle", "parent": "torso1", "length": 50.92, "rotation": 91.8, "x": 25.31, "y": 70.65, "color": "ff7300ff" },
-	{ "name": "spineboy-hip", "parent": "saddle", "length": 0.53, "rotation": 90.02, "x": 81.88, "y": 2.69, "color": "e8ff00ff" },
+	{
+		"name": "torso1",
+		"parent": "hip",
+		"length": 126.26,
+		"rotation": -4.98,
+		"x": 30.04,
+		"y": -0.4,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "saddle",
+		"parent": "torso1",
+		"length": 50.92,
+		"rotation": 91.8,
+		"x": 25.31,
+		"y": 70.65,
+		"color": "ff7300ff"
+	},
+	{
+		"name": "spineboy-hip",
+		"parent": "saddle",
+		"length": 0.53,
+		"rotation": 90.02,
+		"x": 81.88,
+		"y": 2.69,
+		"color": "e8ff00ff"
+	},
 	{
 		"name": "spineboy-torso",
 		"parent": "spineboy-hip",
@@ -22,10 +39,42 @@
 		"y": -2.11,
 		"color": "e8ff00ff"
 	},
-	{ "name": "torso2", "parent": "torso1", "length": 121.2, "rotation": 39.85, "x": 126.26, "y": -0.38, "color": "e9ff00ff" },
-	{ "name": "neck", "parent": "torso2", "length": 70.6, "rotation": 41.38, "x": 121.2, "y": 0.35, "color": "eaff00ff" },
-	{ "name": "head", "parent": "neck", "length": 105.51, "rotation": 9.83, "x": 70.6, "y": 0.04, "color": "eaff00ff" },
-	{ "name": "horn-rear", "parent": "head", "length": 73.78, "rotation": 44.32, "x": 104.76, "y": -242.01, "color": "e07800ff" },
+	{
+		"name": "torso2",
+		"parent": "torso1",
+		"length": 121.2,
+		"rotation": 39.85,
+		"x": 126.26,
+		"y": -0.38,
+		"color": "e9ff00ff"
+	},
+	{
+		"name": "neck",
+		"parent": "torso2",
+		"length": 70.6,
+		"rotation": 41.38,
+		"x": 121.2,
+		"y": 0.35,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 105.51,
+		"rotation": 9.83,
+		"x": 70.6,
+		"y": 0.04,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "horn-rear",
+		"parent": "head",
+		"length": 73.78,
+		"rotation": 44.32,
+		"x": 104.76,
+		"y": -242.01,
+		"color": "e07800ff"
+	},
 	{ "name": "rear-arm-target", "parent": "horn-rear", "rotation": -133.55, "x": 232.68, "y": 245.85, "color": "ff3f00ff" },
 	{
 		"name": "back-arm",
@@ -36,7 +85,15 @@
 		"y": -38.47,
 		"color": "e07800ff"
 	},
-	{ "name": "back-bracer", "parent": "back-arm", "length": 43.69, "rotation": 17.48, "x": 67.22, "y": -0.32, "color": "e07800ff" },
+	{
+		"name": "back-bracer",
+		"parent": "back-arm",
+		"length": 43.69,
+		"rotation": 17.48,
+		"x": 67.22,
+		"y": -0.32,
+		"color": "e07800ff"
+	},
 	{
 		"name": "back-hand",
 		"parent": "back-bracer",
@@ -48,21 +105,85 @@
 		"color": "e07800ff"
 	},
 	{ "name": "spineboy-rear-arm-goal", "parent": "saddle", "x": -30.44, "y": -100.08, "color": "ff3f00ff" },
-	{ "name": "back-thigh", "parent": "spineboy-hip", "length": 71.16, "rotation": 160.75, "x": -9.57, "y": 2.32, "color": "e07800ff" },
-	{ "name": "back-knee", "parent": "back-thigh", "length": 97.17, "rotation": -54.98, "x": 71.16, "y": -0.28, "color": "e07800ff" },
-	{ "name": "neck2", "parent": "spineboy-torso", "length": 32.05, "rotation": -45.23, "x": 113.44, "y": -15.22, "color": "e8ff00ff" },
-	{ "name": "head2", "parent": "neck2", "length": 167.19, "rotation": 11.66, "x": 25.68, "y": -0.77, "color": "e7ff00ff" },
-	{ "name": "bone", "parent": "head2", "length": 39.92, "rotation": -35.23, "x": 166.09, "y": -79.27, "color": "e7ff00ff" },
+	{
+		"name": "back-thigh",
+		"parent": "spineboy-hip",
+		"length": 71.16,
+		"rotation": 160.75,
+		"x": -9.57,
+		"y": 2.32,
+		"color": "e07800ff"
+	},
+	{
+		"name": "back-knee",
+		"parent": "back-thigh",
+		"length": 97.17,
+		"rotation": -54.98,
+		"x": 71.16,
+		"y": -0.28,
+		"color": "e07800ff"
+	},
+	{
+		"name": "neck2",
+		"parent": "spineboy-torso",
+		"length": 32.05,
+		"rotation": -45.23,
+		"x": 113.44,
+		"y": -15.22,
+		"color": "e8ff00ff"
+	},
+	{
+		"name": "head2",
+		"parent": "neck2",
+		"length": 167.19,
+		"rotation": 11.66,
+		"x": 25.68,
+		"y": -0.77,
+		"color": "e7ff00ff"
+	},
+	{
+		"name": "bone",
+		"parent": "head2",
+		"length": 39.92,
+		"rotation": -35.23,
+		"x": 166.09,
+		"y": -79.27,
+		"color": "e7ff00ff"
+	},
 	{ "name": "bone2", "parent": "bone", "length": 47.42, "rotation": 51.8, "x": 39.92, "color": "e7ff00ff" },
-	{ "name": "bone3", "parent": "head2", "length": 45.41, "rotation": -12.34, "x": 179.8, "y": -20.91, "color": "e7ff00ff" },
-	{ "name": "bone4", "parent": "bone3", "length": 43.31, "rotation": 42.01, "x": 44.64, "y": 0.3, "color": "e7ff00ff" },
+	{
+		"name": "bone3",
+		"parent": "head2",
+		"length": 45.41,
+		"rotation": -12.34,
+		"x": 179.8,
+		"y": -20.91,
+		"color": "e7ff00ff"
+	},
+	{
+		"name": "bone4",
+		"parent": "bone3",
+		"length": 43.31,
+		"rotation": 42.01,
+		"x": 44.64,
+		"y": 0.3,
+		"color": "e7ff00ff"
+	},
 	{ "name": "bone5", "parent": "bone4", "length": 44.88, "rotation": 48.8, "x": 43.31, "color": "e7ff00ff" },
 	{ "name": "dust-root", "parent": "root" },
 	{ "name": "dust", "parent": "dust-root", "x": 231.15, "y": -2.15, "scaleX": 2.285, "scaleY": 1.427 },
 	{ "name": "dust2", "parent": "dust-root", "x": -147.58, "y": -2.15, "scaleX": 1.635, "scaleY": 1.021 },
 	{ "name": "dust3", "parent": "dust-root", "x": 429.77, "y": 20.67, "scaleX": 2.285, "scaleY": 1.427 },
 	{ "name": "dust4", "parent": "dust-root", "x": 29.91, "y": 14.02, "scaleX": 1.635, "scaleY": 1.021 },
-	{ "name": "horn-front", "parent": "head", "length": 87.48, "rotation": 49.36, "x": 87.97, "y": -235.15, "color": "15ff00ff" },
+	{
+		"name": "horn-front",
+		"parent": "head",
+		"length": 87.48,
+		"rotation": 49.36,
+		"x": 87.97,
+		"y": -235.15,
+		"color": "15ff00ff"
+	},
 	{ "name": "front-arm-target", "parent": "horn-front", "rotation": -138.6, "x": 294.58, "y": 234.18, "color": "ff3f00ff" },
 	{
 		"name": "front-arm",
@@ -73,14 +194,62 @@
 		"y": 9.79,
 		"color": "14ff00ff"
 	},
-	{ "name": "front-bracer", "parent": "front-arm", "length": 39.85, "rotation": 20.31, "x": 74.52, "y": -0.42, "color": "14ff00ff" },
-	{ "name": "front-arm1", "parent": "torso2", "length": 109.99, "rotation": 224.54, "x": 46.37, "y": -84.62, "color": "15ff00ff" },
-	{ "name": "front-arm2", "parent": "front-arm1", "length": 86.33, "rotation": 105.24, "x": 109.99, "y": 0.2, "color": "15ff00ff" },
+	{
+		"name": "front-bracer",
+		"parent": "front-arm",
+		"length": 39.85,
+		"rotation": 20.31,
+		"x": 74.52,
+		"y": -0.42,
+		"color": "14ff00ff"
+	},
+	{
+		"name": "front-arm1",
+		"parent": "torso2",
+		"length": 109.99,
+		"rotation": 224.54,
+		"x": 46.37,
+		"y": -84.62,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-arm2",
+		"parent": "front-arm1",
+		"length": 86.33,
+		"rotation": 105.24,
+		"x": 109.99,
+		"y": 0.2,
+		"color": "15ff00ff"
+	},
 	{ "name": "front-foot-goal", "parent": "root", "rotation": -0.95, "x": -45.8, "y": -28.67, "color": "ff3f00ff" },
 	{ "name": "front-leg-goal", "parent": "front-foot-goal", "x": -106.06, "y": 115.58, "color": "ff3f00ff" },
-	{ "name": "front-leg1", "parent": "hip", "length": 251.75, "rotation": -51.51, "x": 27.36, "y": -28.28, "color": "15ff00ff" },
-	{ "name": "front-leg2", "parent": "front-leg1", "length": 208.55, "rotation": 261.94, "x": 251.04, "y": 0.16, "color": "15ff00ff" },
-	{ "name": "front-leg3", "parent": "front-leg2", "length": 118.18, "rotation": 85.46, "x": 208.5, "y": -1.64, "color": "15ff00ff" },
+	{
+		"name": "front-leg1",
+		"parent": "hip",
+		"length": 251.75,
+		"rotation": -51.51,
+		"x": 27.36,
+		"y": -28.28,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-leg2",
+		"parent": "front-leg1",
+		"length": 208.55,
+		"rotation": 261.94,
+		"x": 251.04,
+		"y": 0.16,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-leg3",
+		"parent": "front-leg2",
+		"length": 118.18,
+		"rotation": 85.46,
+		"x": 208.5,
+		"y": -1.64,
+		"color": "15ff00ff"
+	},
 	{
 		"name": "front-foot1",
 		"parent": "front-leg3",
@@ -113,7 +282,15 @@
 		"scaleX": 1.155,
 		"color": "15ff00ff"
 	},
-	{ "name": "front-hand", "parent": "front-arm2", "length": 47.56, "rotation": -56.83, "x": 86.33, "y": 0.06, "color": "15ff00ff" },
+	{
+		"name": "front-hand",
+		"parent": "front-arm2",
+		"length": 47.56,
+		"rotation": -56.83,
+		"x": 86.33,
+		"y": 0.06,
+		"color": "15ff00ff"
+	},
 	{
 		"name": "front-hand2",
 		"parent": "front-bracer",
@@ -134,7 +311,15 @@
 		"y": 17.02,
 		"color": "14ff00ff"
 	},
-	{ "name": "lower-leg", "parent": "front-thigh", "length": 111.5, "rotation": -49.62, "x": 77.93, "y": -0.11, "color": "14ff00ff" },
+	{
+		"name": "lower-leg",
+		"parent": "front-thigh",
+		"length": 111.5,
+		"rotation": -49.62,
+		"x": 77.93,
+		"y": -0.11,
+		"color": "14ff00ff"
+	},
 	{
 		"name": "gun",
 		"parent": "spineboy-hip",
@@ -146,16 +331,72 @@
 		"scaleY": 0.816,
 		"color": "ffffffff"
 	},
-	{ "name": "jaw", "parent": "head", "length": 203.76, "rotation": -125.79, "x": 49.11, "y": -68.46, "color": "ffff00ff" },
+	{
+		"name": "jaw",
+		"parent": "head",
+		"length": 203.76,
+		"rotation": -125.79,
+		"x": 49.11,
+		"y": -68.46,
+		"color": "ffff00ff"
+	},
 	{ "name": "jaw-inside", "parent": "jaw", "x": 94.7, "y": 33.64, "color": "ffff00ff" },
-	{ "name": "rear-arm1", "parent": "torso2", "length": 109.56, "rotation": -124.72, "x": 57.05, "y": -95.39, "color": "e07800ff" },
-	{ "name": "rear-arm2", "parent": "rear-arm1", "length": 85.8, "rotation": 123.56, "x": 109.57, "y": -0.01, "color": "e07800ff" },
+	{
+		"name": "rear-arm1",
+		"parent": "torso2",
+		"length": 109.56,
+		"rotation": -124.72,
+		"x": 57.05,
+		"y": -95.39,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-arm2",
+		"parent": "rear-arm1",
+		"length": 85.8,
+		"rotation": 123.56,
+		"x": 109.57,
+		"y": -0.01,
+		"color": "e07800ff"
+	},
 	{ "name": "rear-foot-goal", "parent": "root", "x": 33.44, "y": 30.82, "color": "ff3f00ff" },
 	{ "name": "rear-leg-goal", "parent": "rear-foot-goal", "x": -127.51, "y": 75.99, "color": "ff3f00ff" },
-	{ "name": "rear-leg1", "parent": "hip", "length": 226.28, "rotation": -54.76, "x": 55.19, "y": -71.25, "color": "e07800ff" },
-	{ "name": "rear-leg2", "parent": "rear-leg1", "length": 172.59, "rotation": -92.25, "x": 226.32, "y": 0.23, "color": "e07800ff" },
-	{ "name": "rear-leg3", "parent": "rear-leg2", "length": 103.05, "rotation": 82.82, "x": 172.32, "y": 2.21, "color": "e07800ff" },
-	{ "name": "rear-foot1", "parent": "rear-leg3", "length": 84.51, "rotation": 75.43, "x": 102.38, "y": -0.03, "color": "e07800ff" },
+	{
+		"name": "rear-leg1",
+		"parent": "hip",
+		"length": 226.28,
+		"rotation": -54.76,
+		"x": 55.19,
+		"y": -71.25,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-leg2",
+		"parent": "rear-leg1",
+		"length": 172.59,
+		"rotation": -92.25,
+		"x": 226.32,
+		"y": 0.23,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-leg3",
+		"parent": "rear-leg2",
+		"length": 103.05,
+		"rotation": 82.82,
+		"x": 172.32,
+		"y": 2.21,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-foot1",
+		"parent": "rear-leg3",
+		"length": 84.51,
+		"rotation": 75.43,
+		"x": 102.38,
+		"y": -0.03,
+		"color": "e07800ff"
+	},
 	{
 		"name": "rear-foot2",
 		"parent": "rear-foot1",
@@ -166,7 +407,15 @@
 		"transform": "noRotationOrReflection",
 		"color": "e07800ff"
 	},
-	{ "name": "rear-hand", "parent": "rear-arm2", "length": 45.81, "rotation": -76.28, "x": 85.8, "y": 0.11, "color": "e07800ff" },
+	{
+		"name": "rear-hand",
+		"parent": "rear-arm2",
+		"length": 45.81,
+		"rotation": -76.28,
+		"x": 85.8,
+		"y": 0.11,
+		"color": "e07800ff"
+	},
 	{
 		"name": "saddle-strap-front1",
 		"parent": "saddle",
@@ -204,10 +453,34 @@
 		"y": 0.2,
 		"color": "ff7300ff"
 	},
-	{ "name": "stirrup", "parent": "saddle", "length": 78.17, "rotation": -68.86, "x": -81.94, "y": -103.38, "color": "ff3f00ff" },
-	{ "name": "stirrup-strap1", "parent": "saddle", "length": 43.7, "rotation": -135, "x": -20.38, "y": -29.37, "color": "ff7300ff" },
+	{
+		"name": "stirrup",
+		"parent": "saddle",
+		"length": 78.17,
+		"rotation": -68.86,
+		"x": -81.94,
+		"y": -103.38,
+		"color": "ff3f00ff"
+	},
+	{
+		"name": "stirrup-strap1",
+		"parent": "saddle",
+		"length": 43.7,
+		"rotation": -135,
+		"x": -20.38,
+		"y": -29.37,
+		"color": "ff7300ff"
+	},
 	{ "name": "stirrup-strap2", "parent": "stirrup-strap1", "length": 51.62, "rotation": 9.39, "x": 43.71, "color": "ff7300ff" },
-	{ "name": "tail1", "parent": "hip", "length": 81.26, "rotation": 153.61, "x": -20.87, "y": 6.87, "color": "eaff00ff" },
+	{
+		"name": "tail1",
+		"parent": "hip",
+		"length": 81.26,
+		"rotation": 153.61,
+		"x": -20.87,
+		"y": 6.87,
+		"color": "eaff00ff"
+	},
 	{ "name": "tail2", "parent": "tail1", "length": 81.26, "rotation": 10.42, "x": 81.26, "color": "eaff00ff" },
 	{ "name": "tail3", "parent": "tail2", "length": 65.01, "rotation": 12.18, "x": 81.26, "color": "eaff00ff" },
 	{ "name": "tail4", "parent": "tail3", "length": 65.01, "x": 65.01, "color": "eaff00ff" },
@@ -217,9 +490,33 @@
 	{ "name": "tail8", "parent": "tail7", "length": 54.46, "rotation": 0.97, "x": 63.13, "color": "eaff00ff" },
 	{ "name": "tail9", "parent": "tail8", "length": 49.21, "rotation": -1.29, "x": 54.46, "color": "eaff00ff" },
 	{ "name": "tail10", "parent": "tail9", "length": 45.53, "rotation": 0.36, "x": 49.21, "color": "eaff00ff" },
-	{ "name": "tongue1", "parent": "head", "length": 55.12, "rotation": -129.04, "x": 20.82, "y": -104.75, "color": "ffff00ff" },
-	{ "name": "tongue2", "parent": "tongue1", "length": 44.67, "rotation": 8.93, "x": 55.6, "y": 0.93, "color": "fff200ff" },
-	{ "name": "tongue3", "parent": "tongue2", "length": 43.65, "rotation": 12.86, "x": 44.27, "y": -0.21, "color": "fff200ff" }
+	{
+		"name": "tongue1",
+		"parent": "head",
+		"length": 55.12,
+		"rotation": -129.04,
+		"x": 20.82,
+		"y": -104.75,
+		"color": "ffff00ff"
+	},
+	{
+		"name": "tongue2",
+		"parent": "tongue1",
+		"length": 44.67,
+		"rotation": 8.93,
+		"x": 55.6,
+		"y": 0.93,
+		"color": "fff200ff"
+	},
+	{
+		"name": "tongue3",
+		"parent": "tongue2",
+		"length": 43.65,
+		"rotation": 12.86,
+		"x": 44.27,
+		"y": -0.21,
+		"color": "fff200ff"
+	}
 ],
 "slots": [
 	{ "name": "back-hand", "bone": "back-hand", "attachment": "back-hand" },

+ 118 - 21
spine-corona/data/spineboy-ess.json

@@ -1,18 +1,27 @@
 {
-"skeleton": {
-	"hash": "0DoQUqP6ATLL322RHY3r98lgFr8",
-	"spine": "3.7.08-beta",
-	"width": 470.72,
-	"height": 731.57,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "0DoQUqP6ATLL322RHY3r98lgFr8", "spine": "3.7.19-beta", "width": 470.72, "height": 731.57, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "dust", "parent": "root", "x": -303.6, "y": 32.64, "scaleX": 1.457 },
 	{ "name": "hip", "parent": "root", "y": 247.47 },
-	{ "name": "torso", "parent": "hip", "length": 127.56, "rotation": 103.82, "x": -1.62, "y": 4.9, "color": "e0da19ff" },
-	{ "name": "front-upper-arm", "parent": "torso", "length": 69.45, "rotation": 168.38, "x": 103.76, "y": 19.33, "color": "00ff04ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 127.56,
+		"rotation": 103.82,
+		"x": -1.62,
+		"y": 4.9,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "front-upper-arm",
+		"parent": "torso",
+		"length": 69.45,
+		"rotation": 168.38,
+		"x": 103.76,
+		"y": 19.33,
+		"color": "00ff04ff"
+	},
 	{
 		"name": "front-bracer",
 		"parent": "front-upper-arm",
@@ -22,19 +31,107 @@
 		"y": -0.68,
 		"color": "00ff04ff"
 	},
-	{ "name": "front-fist", "parent": "front-bracer", "length": 65.39, "rotation": 12.43, "x": 40.57, "y": 0.2, "color": "00ff04ff" },
-	{ "name": "front-thigh", "parent": "hip", "length": 74.81, "rotation": -95.51, "x": -17.46, "y": -11.64, "color": "00ff04ff" },
-	{ "name": "front-shin", "parent": "front-thigh", "length": 128.77, "rotation": -2.21, "x": 78.69, "y": 1.6, "color": "00ff04ff" },
-	{ "name": "front-foot", "parent": "front-shin", "length": 91.34, "rotation": 77.91, "x": 128.76, "y": -0.34, "color": "00ff04ff" },
-	{ "name": "rear-upper-arm", "parent": "torso", "length": 51.94, "rotation": -169.56, "x": 92.36, "y": -19.22, "color": "ff000dff" },
+	{
+		"name": "front-fist",
+		"parent": "front-bracer",
+		"length": 65.39,
+		"rotation": 12.43,
+		"x": 40.57,
+		"y": 0.2,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-thigh",
+		"parent": "hip",
+		"length": 74.81,
+		"rotation": -95.51,
+		"x": -17.46,
+		"y": -11.64,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-shin",
+		"parent": "front-thigh",
+		"length": 128.77,
+		"rotation": -2.21,
+		"x": 78.69,
+		"y": 1.6,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-foot",
+		"parent": "front-shin",
+		"length": 91.34,
+		"rotation": 77.91,
+		"x": 128.76,
+		"y": -0.34,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "rear-upper-arm",
+		"parent": "torso",
+		"length": 51.94,
+		"rotation": -169.56,
+		"x": 92.36,
+		"y": -19.22,
+		"color": "ff000dff"
+	},
 	{ "name": "rear-bracer", "parent": "rear-upper-arm", "length": 34.56, "rotation": 23.15, "x": 51.36, "color": "ff000dff" },
-	{ "name": "gun", "parent": "rear-bracer", "length": 43.11, "rotation": 5.35, "x": 34.42, "y": -0.45, "color": "ff000dff" },
+	{
+		"name": "gun",
+		"parent": "rear-bracer",
+		"length": 43.11,
+		"rotation": 5.35,
+		"x": 34.42,
+		"y": -0.45,
+		"color": "ff000dff"
+	},
 	{ "name": "gun-tip", "parent": "gun", "rotation": 6.83, "x": 201.05, "y": 52.14, "color": "ff000dff" },
-	{ "name": "neck", "parent": "torso", "length": 25.45, "rotation": -31.54, "x": 127.5, "y": -0.31, "color": "e0da19ff" },
-	{ "name": "head", "parent": "neck", "length": 263.58, "rotation": 23.18, "x": 27.66, "y": -0.26, "color": "e0da19ff" },
-	{ "name": "rear-thigh", "parent": "hip", "length": 85.72, "rotation": -72.54, "x": 8.91, "y": -5.63, "color": "ff000dff" },
-	{ "name": "rear-shin", "parent": "rear-thigh", "length": 121.88, "rotation": -19.83, "x": 86.1, "y": -1.33, "color": "ff000dff" },
-	{ "name": "rear-foot", "parent": "rear-shin", "length": 82.57, "rotation": 69.3, "x": 121.46, "y": -0.76, "color": "ff000dff" }
+	{
+		"name": "neck",
+		"parent": "torso",
+		"length": 25.45,
+		"rotation": -31.54,
+		"x": 127.5,
+		"y": -0.31,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 263.58,
+		"rotation": 23.18,
+		"x": 27.66,
+		"y": -0.26,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "rear-thigh",
+		"parent": "hip",
+		"length": 85.72,
+		"rotation": -72.54,
+		"x": 8.91,
+		"y": -5.63,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-shin",
+		"parent": "rear-thigh",
+		"length": 121.88,
+		"rotation": -19.83,
+		"x": 86.1,
+		"y": -1.33,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-foot",
+		"parent": "rear-shin",
+		"length": 82.57,
+		"rotation": 69.3,
+		"x": 121.46,
+		"y": -0.76,
+		"color": "ff000dff"
+	}
 ],
 "slots": [
 	{ "name": "rear-upper-arm", "bone": "rear-upper-arm", "attachment": "rear-upper-arm" },

+ 253 - 36
spine-corona/data/stretchyman-pro.json

@@ -1,19 +1,36 @@
 {
-"skeleton": {
-	"hash": "ow1SbDe4W3rqcAxR3CKSHJ7MUZ4",
-	"spine": "3.7.08-beta",
-	"width": 264.5,
-	"height": 573.31,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "ow1SbDe4W3rqcAxR3CKSHJ7MUZ4", "spine": "3.7.19-beta", "width": 264.5, "height": 573.31, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "x": 28.61, "y": 289.9, "color": "ffbd00ff" },
-	{ "name": "spine1", "parent": "hip", "length": 34.66, "rotation": 86.69, "x": -4.48, "y": 12.66, "color": "ffbd00ff" },
+	{
+		"name": "spine1",
+		"parent": "hip",
+		"length": 34.66,
+		"rotation": 86.69,
+		"x": -4.48,
+		"y": 12.66,
+		"color": "ffbd00ff"
+	},
 	{ "name": "spine2", "parent": "spine1", "length": 41.42, "rotation": 16.48, "x": 34.66, "color": "ffbd00ff" },
-	{ "name": "spine3", "parent": "spine2", "length": 34.45, "rotation": 16.17, "x": 41.42, "y": 0.01, "color": "ffbd00ff" },
-	{ "name": "spine4", "parent": "spine3", "length": 37.53, "rotation": -13.63, "x": 34.45, "y": 0.01, "color": "ffbd00ff" },
+	{
+		"name": "spine3",
+		"parent": "spine2",
+		"length": 34.45,
+		"rotation": 16.17,
+		"x": 41.42,
+		"y": 0.01,
+		"color": "ffbd00ff"
+	},
+	{
+		"name": "spine4",
+		"parent": "spine3",
+		"length": 37.53,
+		"rotation": -13.63,
+		"x": 34.45,
+		"y": 0.01,
+		"color": "ffbd00ff"
+	},
 	{
 		"name": "back-arm1",
 		"parent": "spine4",
@@ -24,12 +41,44 @@
 		"transform": "noScale",
 		"color": "ff0000ff"
 	},
-	{ "name": "back-arm2", "parent": "back-arm1", "length": 34.16, "rotation": 3.11, "x": 31.88, "y": 0.02, "color": "ff0000ff" },
+	{
+		"name": "back-arm2",
+		"parent": "back-arm1",
+		"length": 34.16,
+		"rotation": 3.11,
+		"x": 31.88,
+		"y": 0.02,
+		"color": "ff0000ff"
+	},
 	{ "name": "back-arm3", "parent": "back-arm2", "length": 31.27, "rotation": 9.59, "x": 34.16, "color": "ff0000ff" },
-	{ "name": "back-arm4", "parent": "back-arm3", "length": 33.3, "rotation": 14.61, "x": 32.04, "y": 0.82, "color": "ff0000ff" },
-	{ "name": "back-arm5", "parent": "back-arm4", "length": 37.41, "rotation": 11.31, "x": 33.82, "y": 0.02, "color": "ff0000ff" },
+	{
+		"name": "back-arm4",
+		"parent": "back-arm3",
+		"length": 33.3,
+		"rotation": 14.61,
+		"x": 32.04,
+		"y": 0.82,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-arm5",
+		"parent": "back-arm4",
+		"length": 37.41,
+		"rotation": 11.31,
+		"x": 33.82,
+		"y": 0.02,
+		"color": "ff0000ff"
+	},
 	{ "name": "back-arm-ik-target", "parent": "root", "x": 103.52, "y": 345.27, "color": "ff3f00ff" },
-	{ "name": "back-arm-ik1", "parent": "spine4", "length": 66.57, "rotation": -152.7, "x": 16.34, "y": -4.46, "color": "ff0000ff" },
+	{
+		"name": "back-arm-ik1",
+		"parent": "spine4",
+		"length": 66.57,
+		"rotation": -152.7,
+		"x": 16.34,
+		"y": -4.46,
+		"color": "ff0000ff"
+	},
 	{ "name": "back-arm-ik2", "parent": "back-arm-ik1", "length": 66.01, "rotation": 19.36, "x": 66.57, "color": "ff0000ff" },
 	{
 		"name": "back-foot1",
@@ -59,16 +108,80 @@
 		"transform": "noScale",
 		"color": "ff0000ff"
 	},
-	{ "name": "back-leg1", "parent": "hip", "length": 41, "rotation": -83.66, "x": 10.41, "y": 1.04, "color": "ff0000ff" },
+	{
+		"name": "back-leg1",
+		"parent": "hip",
+		"length": 41,
+		"rotation": -83.66,
+		"x": 10.41,
+		"y": 1.04,
+		"color": "ff0000ff"
+	},
 	{ "name": "back-leg2", "parent": "back-leg1", "length": 41, "rotation": -4.07, "x": 34.57, "color": "ff0000ff" },
-	{ "name": "back-leg3", "parent": "back-leg1", "length": 41, "rotation": -5.24, "x": 81.79, "y": -2.29, "color": "ff0000ff" },
-	{ "name": "back-leg4", "parent": "back-leg1", "length": 41, "rotation": -16.6, "x": 121.21, "y": -11.27, "color": "ff0000ff" },
-	{ "name": "back-leg5", "parent": "back-leg1", "length": 41, "rotation": -32.36, "x": 160.16, "y": -24.86, "color": "ff0000ff" },
-	{ "name": "back-leg6", "parent": "back-leg1", "length": 41, "rotation": -30.76, "x": 197.04, "y": -39.98, "color": "ff0000ff" },
-	{ "name": "back-leg7", "parent": "back-leg1", "length": 41, "rotation": -30.63, "x": 233.19, "y": -57.32, "color": "ff0000ff" },
-	{ "name": "back-leg8", "parent": "back-leg1", "length": 41, "rotation": -33.79, "x": 267.29, "y": -77.39, "color": "ff0000ff" },
+	{
+		"name": "back-leg3",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -5.24,
+		"x": 81.79,
+		"y": -2.29,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-leg4",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -16.6,
+		"x": 121.21,
+		"y": -11.27,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-leg5",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -32.36,
+		"x": 160.16,
+		"y": -24.86,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-leg6",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -30.76,
+		"x": 197.04,
+		"y": -39.98,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-leg7",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -30.63,
+		"x": 233.19,
+		"y": -57.32,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-leg8",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -33.79,
+		"x": 267.29,
+		"y": -77.39,
+		"color": "ff0000ff"
+	},
 	{ "name": "back-leg-ik-target", "parent": "root", "x": 46.15, "y": 8.68, "color": "ff3f00ff" },
-	{ "name": "back-leg-ik1", "parent": "hip", "length": 140.17, "rotation": -88.1, "x": 9.63, "y": -0.38, "color": "ff0000ff" },
+	{
+		"name": "back-leg-ik1",
+		"parent": "hip",
+		"length": 140.17,
+		"rotation": -88.1,
+		"x": 9.63,
+		"y": -0.38,
+		"color": "ff0000ff"
+	},
 	{
 		"name": "back-leg-ik2",
 		"parent": "back-leg-ik1",
@@ -90,8 +203,24 @@
 		"transform": "noScale",
 		"color": "4eff00ff"
 	},
-	{ "name": "front-arm2", "parent": "front-arm1", "length": 35.67, "rotation": -0.44, "x": 38.33, "y": 0.01, "color": "4eff00ff" },
-	{ "name": "front-arm3", "parent": "front-arm2", "length": 32.65, "rotation": 14.45, "x": 35.67, "y": -0.02, "color": "4eff00ff" },
+	{
+		"name": "front-arm2",
+		"parent": "front-arm1",
+		"length": 35.67,
+		"rotation": -0.44,
+		"x": 38.33,
+		"y": 0.01,
+		"color": "4eff00ff"
+	},
+	{
+		"name": "front-arm3",
+		"parent": "front-arm2",
+		"length": 32.65,
+		"rotation": 14.45,
+		"x": 35.67,
+		"y": -0.02,
+		"color": "4eff00ff"
+	},
 	{ "name": "front-arm4", "parent": "front-arm3", "length": 29.18, "rotation": 13.89, "x": 32.65, "color": "4eff00ff" },
 	{
 		"name": "front-arm5",
@@ -103,7 +232,15 @@
 		"color": "4eff00ff"
 	},
 	{ "name": "front-arm-ik", "parent": "root", "x": -92.44, "y": 331.78, "color": "ff3f00ff" },
-	{ "name": "front-arm-ik1", "parent": "spine4", "length": 69.56, "rotation": 117.86, "x": 27.36, "y": 4.22, "color": "50ff00ff" },
+	{
+		"name": "front-arm-ik1",
+		"parent": "spine4",
+		"length": 69.56,
+		"rotation": 117.86,
+		"x": 27.36,
+		"y": 4.22,
+		"color": "50ff00ff"
+	},
 	{ "name": "front-arm-ik2", "parent": "front-arm-ik1", "length": 66.72, "rotation": 20.13, "x": 69.56, "color": "50ff00ff" },
 	{
 		"name": "front-foot1",
@@ -117,16 +254,88 @@
 	},
 	{ "name": "front-foot2", "parent": "front-foot1", "length": 29.12, "rotation": 9.61, "x": 26.3, "color": "50ff00ff" },
 	{ "name": "front-foot3", "parent": "front-foot2", "length": 23.49, "rotation": 8.91, "x": 29.12, "color": "50ff00ff" },
-	{ "name": "front-leg1", "parent": "hip", "length": 37.2, "rotation": -88.97, "x": -23.57, "y": -2, "color": "4fff00ff" },
-	{ "name": "front-leg2", "parent": "front-leg1", "length": 37.2, "rotation": 3.45, "x": 33.75, "y": 0.01, "color": "4fff00ff" },
-	{ "name": "front-leg3", "parent": "front-leg1", "length": 37.2, "rotation": -6.12, "x": 74.4, "y": -1.08, "color": "4fff00ff" },
-	{ "name": "front-leg4", "parent": "front-leg1", "length": 37.2, "rotation": -10.02, "x": 111.4, "y": -5.28, "color": "4fff00ff" },
-	{ "name": "front-leg5", "parent": "front-leg1", "length": 37.2, "rotation": -28.4, "x": 147.76, "y": -14.99, "color": "4fff00ff" },
-	{ "name": "front-leg6", "parent": "front-leg1", "length": 37.2, "rotation": -24.33, "x": 182.41, "y": -27.57, "color": "4fff00ff" },
-	{ "name": "front-leg7", "parent": "front-leg1", "length": 37.2, "rotation": -23, "x": 216.44, "y": -42.55, "color": "4fff00ff" },
-	{ "name": "front-leg8", "parent": "front-leg1", "length": 37.2, "rotation": -31.81, "x": 248.61, "y": -61.03, "color": "4fff00ff" },
+	{
+		"name": "front-leg1",
+		"parent": "hip",
+		"length": 37.2,
+		"rotation": -88.97,
+		"x": -23.57,
+		"y": -2,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg2",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": 3.45,
+		"x": 33.75,
+		"y": 0.01,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg3",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -6.12,
+		"x": 74.4,
+		"y": -1.08,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg4",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -10.02,
+		"x": 111.4,
+		"y": -5.28,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg5",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -28.4,
+		"x": 147.76,
+		"y": -14.99,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg6",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -24.33,
+		"x": 182.41,
+		"y": -27.57,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg7",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -23,
+		"x": 216.44,
+		"y": -42.55,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg8",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -31.81,
+		"x": 248.61,
+		"y": -61.03,
+		"color": "4fff00ff"
+	},
 	{ "name": "front-leg-ik-target", "parent": "root", "x": -37.74, "y": 5.03, "color": "ff3f00ff" },
-	{ "name": "front-leg-ik1", "parent": "hip", "length": 140.67, "rotation": -89.23, "x": -23.99, "y": 1.89, "color": "50ff00ff" },
+	{
+		"name": "front-leg-ik1",
+		"parent": "hip",
+		"length": 140.67,
+		"rotation": -89.23,
+		"x": -23.99,
+		"y": 1.89,
+		"color": "50ff00ff"
+	},
 	{
 		"name": "front-leg-ik2",
 		"parent": "front-leg-ik1",
@@ -136,7 +345,15 @@
 		"y": 0.03,
 		"color": "50ff00ff"
 	},
-	{ "name": "neck1", "parent": "spine4", "length": 13.45, "rotation": -30.66, "x": 38.97, "y": -0.83, "color": "ffbd00ff" },
+	{
+		"name": "neck1",
+		"parent": "spine4",
+		"length": 13.45,
+		"rotation": -30.66,
+		"x": 38.97,
+		"y": -0.83,
+		"color": "ffbd00ff"
+	},
 	{ "name": "neck2", "parent": "neck1", "length": 14.13, "rotation": -11.41, "x": 13.45, "color": "ffbd00ff" },
 	{
 		"name": "head",

Fișier diff suprimat deoarece este prea mare
+ 0 - 0
spine-corona/data/stretchyman-stretchy-ik.json


+ 1441 - 261
spine-corona/data/tank-pro.json

@@ -1,12 +1,5 @@
 {
-"skeleton": {
-	"hash": "JWZpG/bZaODL9WMrHd/eWznhkD0",
-	"spine": "3.7.08-beta",
-	"width": 7202.61,
-	"height": 1298.88,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "JWZpG/bZaODL9WMrHd/eWznhkD0", "spine": "3.7.19-beta", "width": 7202.61, "height": 1298.88, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "tank-root", "parent": "root", "y": 146.79 },
@@ -44,7 +37,15 @@
 	},
 	{ "name": "machinegun-tip", "parent": "machinegun", "x": 210.43, "y": -12.21 },
 	{ "name": "rock", "parent": "root", "x": -1925.2, "y": 33.17 },
-	{ "name": "smoke-root", "parent": "tank-root", "x": -1200.38, "y": 405.76, "scaleX": -6.5, "scaleY": 6.5, "color": "ff4000ff" },
+	{
+		"name": "smoke-root",
+		"parent": "tank-root",
+		"x": -1200.38,
+		"y": 405.76,
+		"scaleX": -6.5,
+		"scaleY": 6.5,
+		"color": "ff4000ff"
+	},
 	{
 		"name": "smoke1",
 		"parent": "smoke-root",
@@ -318,40 +319,312 @@
 		"color": "e64344ff"
 	},
 	{ "name": "tread2", "parent": "tread", "length": 82, "x": 82, "color": "e64344ff" },
-	{ "name": "tread3", "parent": "tread", "length": 82, "rotation": -8.91, "x": 163.01, "y": -12.61, "color": "e64344ff" },
-	{ "name": "tread4", "parent": "tread", "length": 82, "rotation": -29.27, "x": 234.55, "y": -52.43, "color": "e64344ff" },
-	{ "name": "tread5", "parent": "tread", "length": 82, "rotation": -45.26, "x": 292.26, "y": -110.28, "color": "e64344ff" },
-	{ "name": "tread6", "parent": "tread", "length": 82, "rotation": -15.29, "x": 371.36, "y": -131.76, "color": "e64344ff" },
-	{ "name": "tread7", "parent": "tread", "length": 82, "rotation": -5.49, "x": 452.98, "y": -139.55, "color": "e64344ff" },
-	{ "name": "tread8", "parent": "tread", "length": 82, "rotation": -24.99, "x": 527.31, "y": -173.95, "color": "e64344ff" },
-	{ "name": "tread9", "parent": "tread", "length": 82, "rotation": -5.44, "x": 608.94, "y": -181.68, "color": "e64344ff" },
-	{ "name": "tread10", "parent": "tread", "length": 82, "rotation": 48.85, "x": 662.9, "y": -120.35, "color": "e64344ff" },
-	{ "name": "tread11", "parent": "tread", "length": 82, "rotation": 97.99, "x": 651.5, "y": -39.69, "color": "e64344ff" },
-	{ "name": "tread12", "parent": "tread", "length": 82, "rotation": 113.79, "x": 618.43, "y": 34.83, "color": "e64344ff" },
-	{ "name": "tread13", "parent": "tread", "length": 82, "rotation": 122.96, "x": 573.82, "y": 103.18, "color": "e64344ff" },
-	{ "name": "tread14", "parent": "tread", "length": 82, "rotation": 142.01, "x": 509.19, "y": 153.3, "color": "e64344ff" },
-	{ "name": "tread15", "parent": "tread", "length": 82, "rotation": 157.84, "x": 433.25, "y": 184.02, "color": "e64344ff" },
-	{ "name": "tread16", "parent": "tread", "length": 82, "rotation": 157.37, "x": 357.56, "y": 215.37, "color": "e64344ff" },
-	{ "name": "tread17", "parent": "tread", "length": 82, "rotation": 157.29, "x": 281.92, "y": 246.8, "color": "e64344ff" },
-	{ "name": "tread18", "parent": "tread", "length": 82, "rotation": 157.19, "x": 206.33, "y": 278.38, "color": "e64344ff" },
-	{ "name": "tread19", "parent": "tread", "length": 82, "rotation": 157.14, "x": 130.77, "y": 310.02, "color": "e64344ff" },
-	{ "name": "tread20", "parent": "tread", "length": 82, "rotation": 157.34, "x": 55.1, "y": 341.41, "color": "e64344ff" },
-	{ "name": "tread21", "parent": "tread", "length": 82, "rotation": 158.11, "x": -20.99, "y": 371.77, "color": "e64344ff" },
-	{ "name": "tread22", "parent": "tread", "length": 82, "rotation": 157.99, "x": -97.02, "y": 402.28, "color": "e64344ff" },
-	{ "name": "tread23", "parent": "tread", "length": 82, "rotation": 157.59, "x": -172.83, "y": 433.33, "color": "e64344ff" },
-	{ "name": "tread24", "parent": "tread", "length": 82, "rotation": 156.86, "x": -248.23, "y": 465.34, "color": "e64344ff" },
-	{ "name": "tread25", "parent": "tread", "length": 82, "rotation": 177.94, "x": -330.17, "y": 468.27, "color": "e64344ff" },
-	{ "name": "tread26", "parent": "tread", "length": 82, "rotation": -169.55, "x": -410.81, "y": 453.5, "color": "e64344ff" },
-	{ "name": "tread27", "parent": "tread", "length": 82, "rotation": -163.86, "x": -489.58, "y": 430.86, "color": "e64344ff" },
-	{ "name": "tread28", "parent": "tread", "length": 82, "rotation": -139.13, "x": -551.59, "y": 377.57, "color": "e64344ff" },
-	{ "name": "tread29", "parent": "tread", "length": 82, "rotation": -89.04, "x": -550.21, "y": 296.14, "color": "e64344ff" },
-	{ "name": "tread30", "parent": "tread", "length": 82, "rotation": -38.99, "x": -486.48, "y": 244.89, "color": "e64344ff" },
-	{ "name": "tread31", "parent": "tread", "length": 82, "rotation": -20.04, "x": -409.45, "y": 216.98, "color": "e64344ff" },
-	{ "name": "tread32", "parent": "tread", "length": 82, "rotation": -46.24, "x": -352.74, "y": 158.15, "color": "e64344ff" },
-	{ "name": "tread33", "parent": "tread", "length": 82, "rotation": -27.95, "x": -280.3, "y": 119.98, "color": "e64344ff" },
-	{ "name": "tread34", "parent": "tread", "length": 82, "rotation": 10.46, "x": -199.66, "y": 134.77, "color": "e64344ff" },
-	{ "name": "tread35", "parent": "tread", "length": 82, "rotation": -17.9, "x": -121.63, "y": 109.73, "color": "e64344ff" },
-	{ "name": "tread36", "parent": "tread", "length": 82, "rotation": -36.82, "x": -55.99, "y": 60.92, "color": "fbff00ff" },
+	{
+		"name": "tread3",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -8.91,
+		"x": 163.01,
+		"y": -12.61,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread4",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -29.27,
+		"x": 234.55,
+		"y": -52.43,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread5",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -45.26,
+		"x": 292.26,
+		"y": -110.28,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread6",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -15.29,
+		"x": 371.36,
+		"y": -131.76,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread7",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -5.49,
+		"x": 452.98,
+		"y": -139.55,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread8",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -24.99,
+		"x": 527.31,
+		"y": -173.95,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread9",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -5.44,
+		"x": 608.94,
+		"y": -181.68,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread10",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 48.85,
+		"x": 662.9,
+		"y": -120.35,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread11",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 97.99,
+		"x": 651.5,
+		"y": -39.69,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread12",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 113.79,
+		"x": 618.43,
+		"y": 34.83,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread13",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 122.96,
+		"x": 573.82,
+		"y": 103.18,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread14",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 142.01,
+		"x": 509.19,
+		"y": 153.3,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread15",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.84,
+		"x": 433.25,
+		"y": 184.02,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread16",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.37,
+		"x": 357.56,
+		"y": 215.37,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread17",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.29,
+		"x": 281.92,
+		"y": 246.8,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread18",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.19,
+		"x": 206.33,
+		"y": 278.38,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread19",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.14,
+		"x": 130.77,
+		"y": 310.02,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread20",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.34,
+		"x": 55.1,
+		"y": 341.41,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread21",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 158.11,
+		"x": -20.99,
+		"y": 371.77,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread22",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.99,
+		"x": -97.02,
+		"y": 402.28,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread23",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.59,
+		"x": -172.83,
+		"y": 433.33,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread24",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 156.86,
+		"x": -248.23,
+		"y": 465.34,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread25",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 177.94,
+		"x": -330.17,
+		"y": 468.27,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread26",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -169.55,
+		"x": -410.81,
+		"y": 453.5,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread27",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -163.86,
+		"x": -489.58,
+		"y": 430.86,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread28",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -139.13,
+		"x": -551.59,
+		"y": 377.57,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread29",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -89.04,
+		"x": -550.21,
+		"y": 296.14,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread30",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -38.99,
+		"x": -486.48,
+		"y": 244.89,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread31",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -20.04,
+		"x": -409.45,
+		"y": 216.98,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread32",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -46.24,
+		"x": -352.74,
+		"y": 158.15,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread33",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -27.95,
+		"x": -280.3,
+		"y": 119.98,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread34",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 10.46,
+		"x": -199.66,
+		"y": 134.77,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread35",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -17.9,
+		"x": -121.63,
+		"y": 109.73,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread36",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -36.82,
+		"x": -55.99,
+		"y": 60.92,
+		"color": "fbff00ff"
+	},
 	{ "name": "wheel-mid-center", "parent": "tank-root", "y": -66.21 },
 	{ "name": "tread-collider1", "parent": "wheel-mid-center", "x": -329.58, "y": -85.44, "color": "ff00fbff" },
 	{ "name": "tread-collider2", "parent": "wheel-mid-center", "x": -165.95, "y": -85.44, "color": "ff00fbff" },
@@ -477,62 +750,14 @@
 	{ "name": "wheel-small", "bone": "wheel-small1", "attachment": "wheel-small" },
 	{ "name": "wheel-small2", "bone": "wheel-small2", "attachment": "wheel-small" },
 	{ "name": "wheel-small3", "bone": "wheel-small3", "attachment": "wheel-small" },
-	{
-		"name": "wheel-mid-overlay",
-		"bone": "wheel-mid-root1",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay2",
-		"bone": "wheel-mid-root2",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay3",
-		"bone": "wheel-mid-root3",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay4",
-		"bone": "wheel-mid-root4",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay5",
-		"bone": "wheel-mid-root5",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay6",
-		"bone": "wheel-mid-root6",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-big-overlay1",
-		"bone": "wheel-big-root1",
-		"color": "ffffffe9",
-		"attachment": "wheel-big-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-big-overlay2",
-		"bone": "wheel-big-root2",
-		"color": "ffffffe9",
-		"attachment": "wheel-big-overlay",
-		"blend": "multiply"
-	},
+	{ "name": "wheel-mid-overlay", "bone": "wheel-mid-root1", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay2", "bone": "wheel-mid-root2", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay3", "bone": "wheel-mid-root3", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay4", "bone": "wheel-mid-root4", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay5", "bone": "wheel-mid-root5", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay6", "bone": "wheel-mid-root6", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-big-overlay1", "bone": "wheel-big-root1", "color": "ffffffe9", "attachment": "wheel-big-overlay", "blend": "multiply" },
+	{ "name": "wheel-big-overlay2", "bone": "wheel-big-root2", "color": "ffffffe9", "attachment": "wheel-big-overlay", "blend": "multiply" },
 	{ "name": "treads", "bone": "tank-root", "attachment": "treads" },
 	{ "name": "tread", "bone": "tread", "attachment": "tread" },
 	{ "name": "tread27", "bone": "tread27", "color": "adc9b8ff", "attachment": "tread" },
@@ -714,44 +939,7 @@
 	{
 		"name": "treads",
 		"order": 2,
-		"bones": [
-			"tread",
-			"tread2",
-			"tread3",
-			"tread4",
-			"tread5",
-			"tread6",
-			"tread7",
-			"tread8",
-			"tread9",
-			"tread10",
-			"tread11",
-			"tread12",
-			"tread13",
-			"tread14",
-			"tread15",
-			"tread16",
-			"tread17",
-			"tread18",
-			"tread19",
-			"tread20",
-			"tread21",
-			"tread22",
-			"tread23",
-			"tread24",
-			"tread25",
-			"tread26",
-			"tread27",
-			"tread28",
-			"tread29",
-			"tread30",
-			"tread31",
-			"tread32",
-			"tread33",
-			"tread34",
-			"tread35",
-			"tread36"
-		],
+		"bones": [ "tread", "tread2", "tread3", "tread4", "tread5", "tread6", "tread7", "tread8", "tread9", "tread10", "tread11", "tread12", "tread13", "tread14", "tread15", "tread16", "tread17", "tread18", "tread19", "tread20", "tread21", "tread22", "tread23", "tread24", "tread25", "tread26", "tread27", "tread28", "tread29", "tread30", "tread31", "tread32", "tread33", "tread34", "tread35", "tread36" ],
 		"target": "treads",
 		"rotateMode": "chain"
 	}
@@ -843,232 +1031,1224 @@
 			}
 		},
 		"smoke-puff1-bg": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg10": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg11": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg12": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg13": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg14": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg15": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg16": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg17": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg18": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg2": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg20": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg21": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg22": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg23": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg24": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg25": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg26": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg27": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg3": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg4": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg5": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg6": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg7": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg8": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg9": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-fg": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg10": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg11": {
-			"smoke-puff04-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff04-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg12": {
-			"smoke-puff04-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff04-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg13": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg14": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg15": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg16": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg17": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg18": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg2": {
-			"smoke-puff01-fg": { "x": -1.01, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.82, "y": -0.39, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.82, "y": -0.39, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.82, "y": -0.39, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -1.01,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.82,
+				"y": -0.39,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.82,
+				"y": -0.39,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.82,
+				"y": -0.39,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg20": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg21": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg22": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg23": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg24": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg25": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg26": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg27": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg3": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.02, "y": -0.25, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.115, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.03, "y": -0.43, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.02,
+				"y": -0.25,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.115,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.03,
+				"y": -0.43,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg4": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.63, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.63, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.63, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.63,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.63,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.63,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg5": {
-			"smoke-puff01-fg": { "x": -1.21, "y": -0.08, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.89, "y": -0.04, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.89, "y": -0.04, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.89, "y": -0.04, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -1.21,
+				"y": -0.08,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.89,
+				"y": -0.04,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.89,
+				"y": -0.04,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.89,
+				"y": -0.04,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg6": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.48, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.48, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.48, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.48,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.48,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.48,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg7": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -0.7, "y": -0.36, "scaleX": 0.122, "scaleY": 0.121, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -0.56, "y": -0.15, "scaleX": 0.122, "scaleY": 0.122, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -0.56, "y": -0.15, "scaleX": 0.122, "scaleY": 0.122, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -0.7,
+				"y": -0.36,
+				"scaleX": 0.122,
+				"scaleY": 0.121,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -0.56,
+				"y": -0.15,
+				"scaleX": 0.122,
+				"scaleY": 0.122,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -0.56,
+				"y": -0.15,
+				"scaleX": 0.122,
+				"scaleY": 0.122,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg8": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -0.65, "y": 0.01, "scaleX": 0.123, "scaleY": 0.123, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -0.75, "y": -0.15, "scaleX": 0.121, "scaleY": 0.121, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -0.75, "y": -0.15, "scaleX": 0.121, "scaleY": 0.121, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -0.65,
+				"y": 0.01,
+				"scaleX": 0.123,
+				"scaleY": 0.123,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -0.75,
+				"y": -0.15,
+				"scaleX": 0.121,
+				"scaleY": 0.121,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -0.75,
+				"y": -0.15,
+				"scaleX": 0.121,
+				"scaleY": 0.121,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg9": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.99, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.99, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -0.95, "y": -0.48, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.99,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.99,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -0.95,
+				"y": -0.48,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"tank-body-shadow": {
 			"tank-bottom-shadow": { "x": -11.44, "y": -42.89, "width": 1291, "height": 341 }

+ 118 - 21
spine-corona/data/vine-pro.json

@@ -1,28 +1,125 @@
 {
-"skeleton": {
-	"hash": "XMSifyRDWIo7mCMhHJDVKSi+XxE",
-	"spine": "3.7.08-beta",
-	"width": 227.33,
-	"height": 841.07,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "XMSifyRDWIo7mCMhHJDVKSi+XxE", "spine": "3.7.19-beta", "width": 227.33, "height": 841.07, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
-	{ "name": "vine1", "parent": "root", "length": 74, "rotation": 90, "x": 339.1, "y": -467.15, "color": "f700ffff" },
+	{
+		"name": "vine1",
+		"parent": "root",
+		"length": 74,
+		"rotation": 90,
+		"x": 339.1,
+		"y": -467.15,
+		"color": "f700ffff"
+	},
 	{ "name": "vine2", "parent": "vine1", "length": 74, "x": 74, "color": "f700ffff" },
-	{ "name": "vine3", "parent": "vine1", "length": 74, "rotation": 38.95, "x": 137.97, "y": 47.51, "color": "f700ffff" },
-	{ "name": "vine4", "parent": "vine1", "length": 74, "rotation": 16.68, "x": 214.29, "y": 68.52, "color": "f700ffff" },
-	{ "name": "vine5", "parent": "vine1", "length": 74, "rotation": -21.74, "x": 289.61, "y": 40.93, "color": "f700ffff" },
-	{ "name": "vine6", "parent": "vine1", "length": 74, "rotation": -50.04, "x": 341.13, "y": -15.58, "color": "f700ffff" },
-	{ "name": "vine7", "parent": "vine1", "length": 74, "rotation": -39.26, "x": 402.7, "y": -61.82, "color": "f700ffff" },
-	{ "name": "vine8", "parent": "vine1", "length": 74, "rotation": -6.18, "x": 483.27, "y": -69.84, "color": "f700ffff" },
-	{ "name": "vine9", "parent": "vine1", "length": 74, "rotation": 27.11, "x": 554.26, "y": -36.44, "color": "f700ffff" },
-	{ "name": "vine10", "parent": "vine1", "length": 74, "rotation": 48, "x": 608.63, "y": 19.06, "color": "f700ffff" },
-	{ "name": "vine11", "parent": "vine1", "length": 74, "rotation": 39.71, "x": 670.66, "y": 66.4, "color": "f700ffff" },
-	{ "name": "vine12", "parent": "vine1", "length": 74, "rotation": 10.73, "x": 750.1, "y": 80.23, "color": "f700ffff" },
-	{ "name": "vine13", "parent": "vine1", "length": 74, "rotation": -18.44, "x": 826.07, "y": 56.95, "color": "f700ffff" },
-	{ "name": "vine-control1", "parent": "root", "length": 296.68, "rotation": 88.65, "x": -2.51, "y": 2.55, "color": "ff0004ff" },
+	{
+		"name": "vine3",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 38.95,
+		"x": 137.97,
+		"y": 47.51,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine4",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 16.68,
+		"x": 214.29,
+		"y": 68.52,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine5",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": -21.74,
+		"x": 289.61,
+		"y": 40.93,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine6",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": -50.04,
+		"x": 341.13,
+		"y": -15.58,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine7",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": -39.26,
+		"x": 402.7,
+		"y": -61.82,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine8",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": -6.18,
+		"x": 483.27,
+		"y": -69.84,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine9",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 27.11,
+		"x": 554.26,
+		"y": -36.44,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine10",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 48,
+		"x": 608.63,
+		"y": 19.06,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine11",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 39.71,
+		"x": 670.66,
+		"y": 66.4,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine12",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 10.73,
+		"x": 750.1,
+		"y": 80.23,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine13",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": -18.44,
+		"x": 826.07,
+		"y": 56.95,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine-control1",
+		"parent": "root",
+		"length": 296.68,
+		"rotation": 88.65,
+		"x": -2.51,
+		"y": 2.55,
+		"color": "ff0004ff"
+	},
 	{ "name": "vine-control2", "parent": "vine-control1", "length": 292.6, "rotation": 0.96, "x": 296.68, "color": "ff0004ff" },
 	{ "name": "vine-control3", "parent": "vine-control2", "length": 247.5, "rotation": 0.16, "x": 292.6, "color": "ff0004ff" },
 	{ "name": "vine-control4", "parent": "vine-control3", "length": 212.43, "rotation": 0.5, "x": 247.5, "color": "ff0004ff" }

+ 1 - 8
spine-libgdx/spine-libgdx-tests/assets/coin/coin-pro.json

@@ -1,12 +1,5 @@
 {
-"skeleton": {
-	"hash": "lfmnIwRt8cjfHaBQWvT0v4odYdY",
-	"spine": "3.7.08-beta",
-	"width": 260,
-	"height": 359.92,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "lfmnIwRt8cjfHaBQWvT0v4odYdY", "spine": "3.7.19-beta", "width": 260, "height": 359.92, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "coin-root", "parent": "root", "y": 300, "color": "ff0000ff" },

BIN
spine-libgdx/spine-libgdx-tests/assets/coin/coin-pro.skel


+ 100 - 19
spine-libgdx/spine-libgdx-tests/assets/goblins/goblins-ess.json

@@ -1,21 +1,62 @@
 {
-"skeleton": {
-	"hash": "2ZytXk25WMQh7xfYd6gBJKXviEA",
-	"spine": "3.7.08-beta",
-	"width": 234.03,
-	"height": 354.91,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "2ZytXk25WMQh7xfYd6gBJKXviEA", "spine": "3.7.19-beta", "width": 234.03, "height": 354.91, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "x": 0.65, "y": 114.41, "color": "ffd300ff" },
-	{ "name": "torso", "parent": "hip", "length": 85.83, "rotation": 93.93, "x": -6.42, "y": 1.98, "color": "ffd300ff" },
-	{ "name": "neck", "parent": "torso", "length": 18.38, "rotation": -1.52, "x": 81.68, "y": -6.35, "color": "ffd300ff" },
-	{ "name": "head", "parent": "neck", "length": 68.29, "rotation": -13.92, "x": 20.94, "y": 11.59, "color": "ffd300ff" },
-	{ "name": "left-shoulder", "parent": "torso", "length": 35.43, "rotation": -156.96, "x": 74.05, "y": -20.39, "color": "ff0000ff" },
-	{ "name": "left-arm", "parent": "left-shoulder", "length": 35.62, "rotation": 28.17, "x": 37.86, "y": -2.35, "color": "ff0000ff" },
-	{ "name": "left-upper-leg", "parent": "hip", "length": 50.4, "rotation": -89.1, "x": 14.45, "y": 2.81, "color": "ff0000ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 85.83,
+		"rotation": 93.93,
+		"x": -6.42,
+		"y": 1.98,
+		"color": "ffd300ff"
+	},
+	{
+		"name": "neck",
+		"parent": "torso",
+		"length": 18.38,
+		"rotation": -1.52,
+		"x": 81.68,
+		"y": -6.35,
+		"color": "ffd300ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 68.29,
+		"rotation": -13.92,
+		"x": 20.94,
+		"y": 11.59,
+		"color": "ffd300ff"
+	},
+	{
+		"name": "left-shoulder",
+		"parent": "torso",
+		"length": 35.43,
+		"rotation": -156.96,
+		"x": 74.05,
+		"y": -20.39,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-arm",
+		"parent": "left-shoulder",
+		"length": 35.62,
+		"rotation": 28.17,
+		"x": 37.86,
+		"y": -2.35,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-upper-leg",
+		"parent": "hip",
+		"length": 50.4,
+		"rotation": -89.1,
+		"x": 14.45,
+		"y": 2.81,
+		"color": "ff0000ff"
+	},
 	{
 		"name": "left-lower-leg",
 		"parent": "left-upper-leg",
@@ -34,11 +75,43 @@
 		"y": -7.61,
 		"color": "ff0000ff"
 	},
-	{ "name": "left-hand", "parent": "left-arm", "length": 11.52, "rotation": 2.7, "x": 35.62, "y": 0.08, "color": "ff0000ff" },
+	{
+		"name": "left-hand",
+		"parent": "left-arm",
+		"length": 11.52,
+		"rotation": 2.7,
+		"x": 35.62,
+		"y": 0.08,
+		"color": "ff0000ff"
+	},
 	{ "name": "pelvis", "parent": "hip", "x": 1.41, "y": -6.58, "color": "ffd300ff" },
-	{ "name": "right-shoulder", "parent": "torso", "length": 37.25, "rotation": 133.89, "x": 76.02, "y": 18.15, "color": "54ff00ff" },
-	{ "name": "right-arm", "parent": "right-shoulder", "length": 36.75, "rotation": 36.33, "x": 37.61, "y": 0.31, "color": "54ff00ff" },
-	{ "name": "right-upper-leg", "parent": "hip", "length": 42.46, "rotation": -97.5, "x": -20.08, "y": -6.84, "color": "54ff00ff" },
+	{
+		"name": "right-shoulder",
+		"parent": "torso",
+		"length": 37.25,
+		"rotation": 133.89,
+		"x": 76.02,
+		"y": 18.15,
+		"color": "54ff00ff"
+	},
+	{
+		"name": "right-arm",
+		"parent": "right-shoulder",
+		"length": 36.75,
+		"rotation": 36.33,
+		"x": 37.61,
+		"y": 0.31,
+		"color": "54ff00ff"
+	},
+	{
+		"name": "right-upper-leg",
+		"parent": "hip",
+		"length": 42.46,
+		"rotation": -97.5,
+		"x": -20.08,
+		"y": -6.84,
+		"color": "54ff00ff"
+	},
 	{
 		"name": "right-lower-leg",
 		"parent": "right-upper-leg",
@@ -57,7 +130,15 @@
 		"y": 0.04,
 		"color": "54ff00ff"
 	},
-	{ "name": "right-hand", "parent": "right-arm", "length": 15.32, "rotation": 2.36, "x": 36.9, "y": 0.35, "color": "54ff00ff" }
+	{
+		"name": "right-hand",
+		"parent": "right-arm",
+		"length": 15.32,
+		"rotation": 2.36,
+		"x": 36.9,
+		"y": 0.35,
+		"color": "54ff00ff"
+	}
 ],
 "slots": [
 	{ "name": "left-shoulder", "bone": "left-shoulder", "attachment": "left-shoulder" },

BIN
spine-libgdx/spine-libgdx-tests/assets/goblins/goblins-ess.skel


+ 127 - 22
spine-libgdx/spine-libgdx-tests/assets/goblins/goblins-pro.json

@@ -1,21 +1,62 @@
 {
-"skeleton": {
-	"hash": "GEt0/K+46aqD75ngNEZOztV899k",
-	"spine": "3.7.08-beta",
-	"width": 266.94,
-	"height": 349.61,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "GEt0/K+46aqD75ngNEZOztV899k", "spine": "3.7.19-beta", "width": 266.94, "height": 349.61, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "x": 0.65, "y": 114.41, "color": "ffcf00ff" },
-	{ "name": "torso", "parent": "hip", "length": 85.83, "rotation": 93.93, "x": -6.42, "y": 1.98, "color": "ffcf00ff" },
-	{ "name": "neck", "parent": "torso", "length": 18.38, "rotation": -1.52, "x": 81.68, "y": -6.35, "color": "ffcf00ff" },
-	{ "name": "head", "parent": "neck", "length": 68.29, "rotation": -13.92, "x": 20.94, "y": 11.59, "color": "ffcf00ff" },
-	{ "name": "left-shoulder", "parent": "torso", "length": 35.43, "rotation": -156.96, "x": 74.05, "y": -20.39, "color": "ff0000ff" },
-	{ "name": "left-arm", "parent": "left-shoulder", "length": 35.62, "rotation": 28.17, "x": 37.86, "y": -2.35, "color": "ff0000ff" },
-	{ "name": "left-upper-leg", "parent": "hip", "length": 50.4, "rotation": -89.1, "x": 14.45, "y": 2.81, "color": "ff0000ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 85.83,
+		"rotation": 93.93,
+		"x": -6.42,
+		"y": 1.98,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "neck",
+		"parent": "torso",
+		"length": 18.38,
+		"rotation": -1.52,
+		"x": 81.68,
+		"y": -6.35,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 68.29,
+		"rotation": -13.92,
+		"x": 20.94,
+		"y": 11.59,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "left-shoulder",
+		"parent": "torso",
+		"length": 35.43,
+		"rotation": -156.96,
+		"x": 74.05,
+		"y": -20.39,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-arm",
+		"parent": "left-shoulder",
+		"length": 35.62,
+		"rotation": 28.17,
+		"x": 37.86,
+		"y": -2.35,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-upper-leg",
+		"parent": "hip",
+		"length": 50.4,
+		"rotation": -89.1,
+		"x": 14.45,
+		"y": 2.81,
+		"color": "ff0000ff"
+	},
 	{
 		"name": "left-lower-leg",
 		"parent": "left-upper-leg",
@@ -34,11 +75,43 @@
 		"y": -7.61,
 		"color": "ff0000ff"
 	},
-	{ "name": "left-hand", "parent": "left-arm", "length": 11.52, "rotation": 2.7, "x": 35.62, "y": 0.08, "color": "ff0000ff" },
+	{
+		"name": "left-hand",
+		"parent": "left-arm",
+		"length": 11.52,
+		"rotation": 2.7,
+		"x": 35.62,
+		"y": 0.08,
+		"color": "ff0000ff"
+	},
 	{ "name": "pelvis", "parent": "hip", "x": 1.41, "y": -6.58, "color": "ffcf00ff" },
-	{ "name": "right-shoulder", "parent": "torso", "length": 37.25, "rotation": 133.89, "x": 76.02, "y": 18.15, "color": "62ff00ff" },
-	{ "name": "right-arm", "parent": "right-shoulder", "length": 36.75, "rotation": 36.33, "x": 37.61, "y": 0.31, "color": "62ff00ff" },
-	{ "name": "right-upper-leg", "parent": "hip", "length": 42.46, "rotation": -97.5, "x": -20.08, "y": -6.84, "color": "62ff00ff" },
+	{
+		"name": "right-shoulder",
+		"parent": "torso",
+		"length": 37.25,
+		"rotation": 133.89,
+		"x": 76.02,
+		"y": 18.15,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "right-arm",
+		"parent": "right-shoulder",
+		"length": 36.75,
+		"rotation": 36.33,
+		"x": 37.61,
+		"y": 0.31,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "right-upper-leg",
+		"parent": "hip",
+		"length": 42.46,
+		"rotation": -97.5,
+		"x": -20.08,
+		"y": -6.84,
+		"color": "62ff00ff"
+	},
 	{
 		"name": "right-lower-leg",
 		"parent": "right-upper-leg",
@@ -57,10 +130,42 @@
 		"y": 0.04,
 		"color": "62ff00ff"
 	},
-	{ "name": "right-hand", "parent": "right-arm", "length": 15.32, "rotation": 2.36, "x": 36.9, "y": 0.35, "color": "62ff00ff" },
-	{ "name": "spear1", "parent": "left-hand", "length": 65.07, "rotation": 102.43, "x": 0.48, "y": 17.03, "color": "ffcf00ff" },
-	{ "name": "spear2", "parent": "spear1", "length": 61.42, "rotation": 0.9, "x": 65.06, "y": 0.04, "color": "ffcf00ff" },
-	{ "name": "spear3", "parent": "spear2", "length": 76.8, "rotation": -0.9, "x": 61.89, "y": 0.57, "color": "ffcf00ff" }
+	{
+		"name": "right-hand",
+		"parent": "right-arm",
+		"length": 15.32,
+		"rotation": 2.36,
+		"x": 36.9,
+		"y": 0.35,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "spear1",
+		"parent": "left-hand",
+		"length": 65.07,
+		"rotation": 102.43,
+		"x": 0.48,
+		"y": 17.03,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "spear2",
+		"parent": "spear1",
+		"length": 61.42,
+		"rotation": 0.9,
+		"x": 65.06,
+		"y": 0.04,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "spear3",
+		"parent": "spear2",
+		"length": 76.8,
+		"rotation": -0.9,
+		"x": 61.89,
+		"y": 0.57,
+		"color": "ffcf00ff"
+	}
 ],
 "slots": [
 	{ "name": "left-shoulder", "bone": "left-shoulder", "attachment": "left-shoulder" },

BIN
spine-libgdx/spine-libgdx-tests/assets/goblins/goblins-pro.skel


+ 343 - 46
spine-libgdx/spine-libgdx-tests/assets/raptor/raptor-pro.json

@@ -1,18 +1,35 @@
 {
-"skeleton": {
-	"hash": "pNFKcFD/5VPCe7+HftjerXAycWk",
-	"spine": "3.7.08-beta",
-	"width": 1296.89,
-	"height": 1055.12,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "pNFKcFD/5VPCe7+HftjerXAycWk", "spine": "3.7.19-beta", "width": 1296.89, "height": 1055.12, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "rotation": 3.16, "x": -136.79, "y": 415.48, "color": "fbff00ff" },
-	{ "name": "torso1", "parent": "hip", "length": 126.26, "rotation": -4.98, "x": 30.04, "y": -0.4, "color": "eaff00ff" },
-	{ "name": "saddle", "parent": "torso1", "length": 50.92, "rotation": 91.8, "x": 25.31, "y": 70.65, "color": "ff7300ff" },
-	{ "name": "spineboy-hip", "parent": "saddle", "length": 0.53, "rotation": 90.02, "x": 81.88, "y": 2.69, "color": "e8ff00ff" },
+	{
+		"name": "torso1",
+		"parent": "hip",
+		"length": 126.26,
+		"rotation": -4.98,
+		"x": 30.04,
+		"y": -0.4,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "saddle",
+		"parent": "torso1",
+		"length": 50.92,
+		"rotation": 91.8,
+		"x": 25.31,
+		"y": 70.65,
+		"color": "ff7300ff"
+	},
+	{
+		"name": "spineboy-hip",
+		"parent": "saddle",
+		"length": 0.53,
+		"rotation": 90.02,
+		"x": 81.88,
+		"y": 2.69,
+		"color": "e8ff00ff"
+	},
 	{
 		"name": "spineboy-torso",
 		"parent": "spineboy-hip",
@@ -22,10 +39,42 @@
 		"y": -2.11,
 		"color": "e8ff00ff"
 	},
-	{ "name": "torso2", "parent": "torso1", "length": 121.2, "rotation": 39.85, "x": 126.26, "y": -0.38, "color": "e9ff00ff" },
-	{ "name": "neck", "parent": "torso2", "length": 70.6, "rotation": 41.38, "x": 121.2, "y": 0.35, "color": "eaff00ff" },
-	{ "name": "head", "parent": "neck", "length": 105.51, "rotation": 9.83, "x": 70.6, "y": 0.04, "color": "eaff00ff" },
-	{ "name": "horn-rear", "parent": "head", "length": 73.78, "rotation": 44.32, "x": 104.76, "y": -242.01, "color": "e07800ff" },
+	{
+		"name": "torso2",
+		"parent": "torso1",
+		"length": 121.2,
+		"rotation": 39.85,
+		"x": 126.26,
+		"y": -0.38,
+		"color": "e9ff00ff"
+	},
+	{
+		"name": "neck",
+		"parent": "torso2",
+		"length": 70.6,
+		"rotation": 41.38,
+		"x": 121.2,
+		"y": 0.35,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 105.51,
+		"rotation": 9.83,
+		"x": 70.6,
+		"y": 0.04,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "horn-rear",
+		"parent": "head",
+		"length": 73.78,
+		"rotation": 44.32,
+		"x": 104.76,
+		"y": -242.01,
+		"color": "e07800ff"
+	},
 	{ "name": "rear-arm-target", "parent": "horn-rear", "rotation": -133.55, "x": 232.68, "y": 245.85, "color": "ff3f00ff" },
 	{
 		"name": "back-arm",
@@ -36,7 +85,15 @@
 		"y": -38.47,
 		"color": "e07800ff"
 	},
-	{ "name": "back-bracer", "parent": "back-arm", "length": 43.69, "rotation": 17.48, "x": 67.22, "y": -0.32, "color": "e07800ff" },
+	{
+		"name": "back-bracer",
+		"parent": "back-arm",
+		"length": 43.69,
+		"rotation": 17.48,
+		"x": 67.22,
+		"y": -0.32,
+		"color": "e07800ff"
+	},
 	{
 		"name": "back-hand",
 		"parent": "back-bracer",
@@ -48,21 +105,85 @@
 		"color": "e07800ff"
 	},
 	{ "name": "spineboy-rear-arm-goal", "parent": "saddle", "x": -30.44, "y": -100.08, "color": "ff3f00ff" },
-	{ "name": "back-thigh", "parent": "spineboy-hip", "length": 71.16, "rotation": 160.75, "x": -9.57, "y": 2.32, "color": "e07800ff" },
-	{ "name": "back-knee", "parent": "back-thigh", "length": 97.17, "rotation": -54.98, "x": 71.16, "y": -0.28, "color": "e07800ff" },
-	{ "name": "neck2", "parent": "spineboy-torso", "length": 32.05, "rotation": -45.23, "x": 113.44, "y": -15.22, "color": "e8ff00ff" },
-	{ "name": "head2", "parent": "neck2", "length": 167.19, "rotation": 11.66, "x": 25.68, "y": -0.77, "color": "e7ff00ff" },
-	{ "name": "bone", "parent": "head2", "length": 39.92, "rotation": -35.23, "x": 166.09, "y": -79.27, "color": "e7ff00ff" },
+	{
+		"name": "back-thigh",
+		"parent": "spineboy-hip",
+		"length": 71.16,
+		"rotation": 160.75,
+		"x": -9.57,
+		"y": 2.32,
+		"color": "e07800ff"
+	},
+	{
+		"name": "back-knee",
+		"parent": "back-thigh",
+		"length": 97.17,
+		"rotation": -54.98,
+		"x": 71.16,
+		"y": -0.28,
+		"color": "e07800ff"
+	},
+	{
+		"name": "neck2",
+		"parent": "spineboy-torso",
+		"length": 32.05,
+		"rotation": -45.23,
+		"x": 113.44,
+		"y": -15.22,
+		"color": "e8ff00ff"
+	},
+	{
+		"name": "head2",
+		"parent": "neck2",
+		"length": 167.19,
+		"rotation": 11.66,
+		"x": 25.68,
+		"y": -0.77,
+		"color": "e7ff00ff"
+	},
+	{
+		"name": "bone",
+		"parent": "head2",
+		"length": 39.92,
+		"rotation": -35.23,
+		"x": 166.09,
+		"y": -79.27,
+		"color": "e7ff00ff"
+	},
 	{ "name": "bone2", "parent": "bone", "length": 47.42, "rotation": 51.8, "x": 39.92, "color": "e7ff00ff" },
-	{ "name": "bone3", "parent": "head2", "length": 45.41, "rotation": -12.34, "x": 179.8, "y": -20.91, "color": "e7ff00ff" },
-	{ "name": "bone4", "parent": "bone3", "length": 43.31, "rotation": 42.01, "x": 44.64, "y": 0.3, "color": "e7ff00ff" },
+	{
+		"name": "bone3",
+		"parent": "head2",
+		"length": 45.41,
+		"rotation": -12.34,
+		"x": 179.8,
+		"y": -20.91,
+		"color": "e7ff00ff"
+	},
+	{
+		"name": "bone4",
+		"parent": "bone3",
+		"length": 43.31,
+		"rotation": 42.01,
+		"x": 44.64,
+		"y": 0.3,
+		"color": "e7ff00ff"
+	},
 	{ "name": "bone5", "parent": "bone4", "length": 44.88, "rotation": 48.8, "x": 43.31, "color": "e7ff00ff" },
 	{ "name": "dust-root", "parent": "root" },
 	{ "name": "dust", "parent": "dust-root", "x": 231.15, "y": -2.15, "scaleX": 2.285, "scaleY": 1.427 },
 	{ "name": "dust2", "parent": "dust-root", "x": -147.58, "y": -2.15, "scaleX": 1.635, "scaleY": 1.021 },
 	{ "name": "dust3", "parent": "dust-root", "x": 429.77, "y": 20.67, "scaleX": 2.285, "scaleY": 1.427 },
 	{ "name": "dust4", "parent": "dust-root", "x": 29.91, "y": 14.02, "scaleX": 1.635, "scaleY": 1.021 },
-	{ "name": "horn-front", "parent": "head", "length": 87.48, "rotation": 49.36, "x": 87.97, "y": -235.15, "color": "15ff00ff" },
+	{
+		"name": "horn-front",
+		"parent": "head",
+		"length": 87.48,
+		"rotation": 49.36,
+		"x": 87.97,
+		"y": -235.15,
+		"color": "15ff00ff"
+	},
 	{ "name": "front-arm-target", "parent": "horn-front", "rotation": -138.6, "x": 294.58, "y": 234.18, "color": "ff3f00ff" },
 	{
 		"name": "front-arm",
@@ -73,14 +194,62 @@
 		"y": 9.79,
 		"color": "14ff00ff"
 	},
-	{ "name": "front-bracer", "parent": "front-arm", "length": 39.85, "rotation": 20.31, "x": 74.52, "y": -0.42, "color": "14ff00ff" },
-	{ "name": "front-arm1", "parent": "torso2", "length": 109.99, "rotation": 224.54, "x": 46.37, "y": -84.62, "color": "15ff00ff" },
-	{ "name": "front-arm2", "parent": "front-arm1", "length": 86.33, "rotation": 105.24, "x": 109.99, "y": 0.2, "color": "15ff00ff" },
+	{
+		"name": "front-bracer",
+		"parent": "front-arm",
+		"length": 39.85,
+		"rotation": 20.31,
+		"x": 74.52,
+		"y": -0.42,
+		"color": "14ff00ff"
+	},
+	{
+		"name": "front-arm1",
+		"parent": "torso2",
+		"length": 109.99,
+		"rotation": 224.54,
+		"x": 46.37,
+		"y": -84.62,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-arm2",
+		"parent": "front-arm1",
+		"length": 86.33,
+		"rotation": 105.24,
+		"x": 109.99,
+		"y": 0.2,
+		"color": "15ff00ff"
+	},
 	{ "name": "front-foot-goal", "parent": "root", "rotation": -0.95, "x": -45.8, "y": -28.67, "color": "ff3f00ff" },
 	{ "name": "front-leg-goal", "parent": "front-foot-goal", "x": -106.06, "y": 115.58, "color": "ff3f00ff" },
-	{ "name": "front-leg1", "parent": "hip", "length": 251.75, "rotation": -51.51, "x": 27.36, "y": -28.28, "color": "15ff00ff" },
-	{ "name": "front-leg2", "parent": "front-leg1", "length": 208.55, "rotation": 261.94, "x": 251.04, "y": 0.16, "color": "15ff00ff" },
-	{ "name": "front-leg3", "parent": "front-leg2", "length": 118.18, "rotation": 85.46, "x": 208.5, "y": -1.64, "color": "15ff00ff" },
+	{
+		"name": "front-leg1",
+		"parent": "hip",
+		"length": 251.75,
+		"rotation": -51.51,
+		"x": 27.36,
+		"y": -28.28,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-leg2",
+		"parent": "front-leg1",
+		"length": 208.55,
+		"rotation": 261.94,
+		"x": 251.04,
+		"y": 0.16,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-leg3",
+		"parent": "front-leg2",
+		"length": 118.18,
+		"rotation": 85.46,
+		"x": 208.5,
+		"y": -1.64,
+		"color": "15ff00ff"
+	},
 	{
 		"name": "front-foot1",
 		"parent": "front-leg3",
@@ -113,7 +282,15 @@
 		"scaleX": 1.155,
 		"color": "15ff00ff"
 	},
-	{ "name": "front-hand", "parent": "front-arm2", "length": 47.56, "rotation": -56.83, "x": 86.33, "y": 0.06, "color": "15ff00ff" },
+	{
+		"name": "front-hand",
+		"parent": "front-arm2",
+		"length": 47.56,
+		"rotation": -56.83,
+		"x": 86.33,
+		"y": 0.06,
+		"color": "15ff00ff"
+	},
 	{
 		"name": "front-hand2",
 		"parent": "front-bracer",
@@ -134,7 +311,15 @@
 		"y": 17.02,
 		"color": "14ff00ff"
 	},
-	{ "name": "lower-leg", "parent": "front-thigh", "length": 111.5, "rotation": -49.62, "x": 77.93, "y": -0.11, "color": "14ff00ff" },
+	{
+		"name": "lower-leg",
+		"parent": "front-thigh",
+		"length": 111.5,
+		"rotation": -49.62,
+		"x": 77.93,
+		"y": -0.11,
+		"color": "14ff00ff"
+	},
 	{
 		"name": "gun",
 		"parent": "spineboy-hip",
@@ -146,16 +331,72 @@
 		"scaleY": 0.816,
 		"color": "ffffffff"
 	},
-	{ "name": "jaw", "parent": "head", "length": 203.76, "rotation": -125.79, "x": 49.11, "y": -68.46, "color": "ffff00ff" },
+	{
+		"name": "jaw",
+		"parent": "head",
+		"length": 203.76,
+		"rotation": -125.79,
+		"x": 49.11,
+		"y": -68.46,
+		"color": "ffff00ff"
+	},
 	{ "name": "jaw-inside", "parent": "jaw", "x": 94.7, "y": 33.64, "color": "ffff00ff" },
-	{ "name": "rear-arm1", "parent": "torso2", "length": 109.56, "rotation": -124.72, "x": 57.05, "y": -95.39, "color": "e07800ff" },
-	{ "name": "rear-arm2", "parent": "rear-arm1", "length": 85.8, "rotation": 123.56, "x": 109.57, "y": -0.01, "color": "e07800ff" },
+	{
+		"name": "rear-arm1",
+		"parent": "torso2",
+		"length": 109.56,
+		"rotation": -124.72,
+		"x": 57.05,
+		"y": -95.39,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-arm2",
+		"parent": "rear-arm1",
+		"length": 85.8,
+		"rotation": 123.56,
+		"x": 109.57,
+		"y": -0.01,
+		"color": "e07800ff"
+	},
 	{ "name": "rear-foot-goal", "parent": "root", "x": 33.44, "y": 30.82, "color": "ff3f00ff" },
 	{ "name": "rear-leg-goal", "parent": "rear-foot-goal", "x": -127.51, "y": 75.99, "color": "ff3f00ff" },
-	{ "name": "rear-leg1", "parent": "hip", "length": 226.28, "rotation": -54.76, "x": 55.19, "y": -71.25, "color": "e07800ff" },
-	{ "name": "rear-leg2", "parent": "rear-leg1", "length": 172.59, "rotation": -92.25, "x": 226.32, "y": 0.23, "color": "e07800ff" },
-	{ "name": "rear-leg3", "parent": "rear-leg2", "length": 103.05, "rotation": 82.82, "x": 172.32, "y": 2.21, "color": "e07800ff" },
-	{ "name": "rear-foot1", "parent": "rear-leg3", "length": 84.51, "rotation": 75.43, "x": 102.38, "y": -0.03, "color": "e07800ff" },
+	{
+		"name": "rear-leg1",
+		"parent": "hip",
+		"length": 226.28,
+		"rotation": -54.76,
+		"x": 55.19,
+		"y": -71.25,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-leg2",
+		"parent": "rear-leg1",
+		"length": 172.59,
+		"rotation": -92.25,
+		"x": 226.32,
+		"y": 0.23,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-leg3",
+		"parent": "rear-leg2",
+		"length": 103.05,
+		"rotation": 82.82,
+		"x": 172.32,
+		"y": 2.21,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-foot1",
+		"parent": "rear-leg3",
+		"length": 84.51,
+		"rotation": 75.43,
+		"x": 102.38,
+		"y": -0.03,
+		"color": "e07800ff"
+	},
 	{
 		"name": "rear-foot2",
 		"parent": "rear-foot1",
@@ -166,7 +407,15 @@
 		"transform": "noRotationOrReflection",
 		"color": "e07800ff"
 	},
-	{ "name": "rear-hand", "parent": "rear-arm2", "length": 45.81, "rotation": -76.28, "x": 85.8, "y": 0.11, "color": "e07800ff" },
+	{
+		"name": "rear-hand",
+		"parent": "rear-arm2",
+		"length": 45.81,
+		"rotation": -76.28,
+		"x": 85.8,
+		"y": 0.11,
+		"color": "e07800ff"
+	},
 	{
 		"name": "saddle-strap-front1",
 		"parent": "saddle",
@@ -204,10 +453,34 @@
 		"y": 0.2,
 		"color": "ff7300ff"
 	},
-	{ "name": "stirrup", "parent": "saddle", "length": 78.17, "rotation": -68.86, "x": -81.94, "y": -103.38, "color": "ff3f00ff" },
-	{ "name": "stirrup-strap1", "parent": "saddle", "length": 43.7, "rotation": -135, "x": -20.38, "y": -29.37, "color": "ff7300ff" },
+	{
+		"name": "stirrup",
+		"parent": "saddle",
+		"length": 78.17,
+		"rotation": -68.86,
+		"x": -81.94,
+		"y": -103.38,
+		"color": "ff3f00ff"
+	},
+	{
+		"name": "stirrup-strap1",
+		"parent": "saddle",
+		"length": 43.7,
+		"rotation": -135,
+		"x": -20.38,
+		"y": -29.37,
+		"color": "ff7300ff"
+	},
 	{ "name": "stirrup-strap2", "parent": "stirrup-strap1", "length": 51.62, "rotation": 9.39, "x": 43.71, "color": "ff7300ff" },
-	{ "name": "tail1", "parent": "hip", "length": 81.26, "rotation": 153.61, "x": -20.87, "y": 6.87, "color": "eaff00ff" },
+	{
+		"name": "tail1",
+		"parent": "hip",
+		"length": 81.26,
+		"rotation": 153.61,
+		"x": -20.87,
+		"y": 6.87,
+		"color": "eaff00ff"
+	},
 	{ "name": "tail2", "parent": "tail1", "length": 81.26, "rotation": 10.42, "x": 81.26, "color": "eaff00ff" },
 	{ "name": "tail3", "parent": "tail2", "length": 65.01, "rotation": 12.18, "x": 81.26, "color": "eaff00ff" },
 	{ "name": "tail4", "parent": "tail3", "length": 65.01, "x": 65.01, "color": "eaff00ff" },
@@ -217,9 +490,33 @@
 	{ "name": "tail8", "parent": "tail7", "length": 54.46, "rotation": 0.97, "x": 63.13, "color": "eaff00ff" },
 	{ "name": "tail9", "parent": "tail8", "length": 49.21, "rotation": -1.29, "x": 54.46, "color": "eaff00ff" },
 	{ "name": "tail10", "parent": "tail9", "length": 45.53, "rotation": 0.36, "x": 49.21, "color": "eaff00ff" },
-	{ "name": "tongue1", "parent": "head", "length": 55.12, "rotation": -129.04, "x": 20.82, "y": -104.75, "color": "ffff00ff" },
-	{ "name": "tongue2", "parent": "tongue1", "length": 44.67, "rotation": 8.93, "x": 55.6, "y": 0.93, "color": "fff200ff" },
-	{ "name": "tongue3", "parent": "tongue2", "length": 43.65, "rotation": 12.86, "x": 44.27, "y": -0.21, "color": "fff200ff" }
+	{
+		"name": "tongue1",
+		"parent": "head",
+		"length": 55.12,
+		"rotation": -129.04,
+		"x": 20.82,
+		"y": -104.75,
+		"color": "ffff00ff"
+	},
+	{
+		"name": "tongue2",
+		"parent": "tongue1",
+		"length": 44.67,
+		"rotation": 8.93,
+		"x": 55.6,
+		"y": 0.93,
+		"color": "fff200ff"
+	},
+	{
+		"name": "tongue3",
+		"parent": "tongue2",
+		"length": 43.65,
+		"rotation": 12.86,
+		"x": 44.27,
+		"y": -0.21,
+		"color": "fff200ff"
+	}
 ],
 "slots": [
 	{ "name": "back-hand", "bone": "back-hand", "attachment": "back-hand" },

BIN
spine-libgdx/spine-libgdx-tests/assets/raptor/raptor-pro.skel


+ 118 - 21
spine-libgdx/spine-libgdx-tests/assets/spineboy/spineboy-ess.json

@@ -1,18 +1,27 @@
 {
-"skeleton": {
-	"hash": "0DoQUqP6ATLL322RHY3r98lgFr8",
-	"spine": "3.7.08-beta",
-	"width": 470.72,
-	"height": 731.57,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "0DoQUqP6ATLL322RHY3r98lgFr8", "spine": "3.7.19-beta", "width": 470.72, "height": 731.57, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "dust", "parent": "root", "x": -303.6, "y": 32.64, "scaleX": 1.457 },
 	{ "name": "hip", "parent": "root", "y": 247.47 },
-	{ "name": "torso", "parent": "hip", "length": 127.56, "rotation": 103.82, "x": -1.62, "y": 4.9, "color": "e0da19ff" },
-	{ "name": "front-upper-arm", "parent": "torso", "length": 69.45, "rotation": 168.38, "x": 103.76, "y": 19.33, "color": "00ff04ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 127.56,
+		"rotation": 103.82,
+		"x": -1.62,
+		"y": 4.9,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "front-upper-arm",
+		"parent": "torso",
+		"length": 69.45,
+		"rotation": 168.38,
+		"x": 103.76,
+		"y": 19.33,
+		"color": "00ff04ff"
+	},
 	{
 		"name": "front-bracer",
 		"parent": "front-upper-arm",
@@ -22,19 +31,107 @@
 		"y": -0.68,
 		"color": "00ff04ff"
 	},
-	{ "name": "front-fist", "parent": "front-bracer", "length": 65.39, "rotation": 12.43, "x": 40.57, "y": 0.2, "color": "00ff04ff" },
-	{ "name": "front-thigh", "parent": "hip", "length": 74.81, "rotation": -95.51, "x": -17.46, "y": -11.64, "color": "00ff04ff" },
-	{ "name": "front-shin", "parent": "front-thigh", "length": 128.77, "rotation": -2.21, "x": 78.69, "y": 1.6, "color": "00ff04ff" },
-	{ "name": "front-foot", "parent": "front-shin", "length": 91.34, "rotation": 77.91, "x": 128.76, "y": -0.34, "color": "00ff04ff" },
-	{ "name": "rear-upper-arm", "parent": "torso", "length": 51.94, "rotation": -169.56, "x": 92.36, "y": -19.22, "color": "ff000dff" },
+	{
+		"name": "front-fist",
+		"parent": "front-bracer",
+		"length": 65.39,
+		"rotation": 12.43,
+		"x": 40.57,
+		"y": 0.2,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-thigh",
+		"parent": "hip",
+		"length": 74.81,
+		"rotation": -95.51,
+		"x": -17.46,
+		"y": -11.64,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-shin",
+		"parent": "front-thigh",
+		"length": 128.77,
+		"rotation": -2.21,
+		"x": 78.69,
+		"y": 1.6,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-foot",
+		"parent": "front-shin",
+		"length": 91.34,
+		"rotation": 77.91,
+		"x": 128.76,
+		"y": -0.34,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "rear-upper-arm",
+		"parent": "torso",
+		"length": 51.94,
+		"rotation": -169.56,
+		"x": 92.36,
+		"y": -19.22,
+		"color": "ff000dff"
+	},
 	{ "name": "rear-bracer", "parent": "rear-upper-arm", "length": 34.56, "rotation": 23.15, "x": 51.36, "color": "ff000dff" },
-	{ "name": "gun", "parent": "rear-bracer", "length": 43.11, "rotation": 5.35, "x": 34.42, "y": -0.45, "color": "ff000dff" },
+	{
+		"name": "gun",
+		"parent": "rear-bracer",
+		"length": 43.11,
+		"rotation": 5.35,
+		"x": 34.42,
+		"y": -0.45,
+		"color": "ff000dff"
+	},
 	{ "name": "gun-tip", "parent": "gun", "rotation": 6.83, "x": 201.05, "y": 52.14, "color": "ff000dff" },
-	{ "name": "neck", "parent": "torso", "length": 25.45, "rotation": -31.54, "x": 127.5, "y": -0.31, "color": "e0da19ff" },
-	{ "name": "head", "parent": "neck", "length": 263.58, "rotation": 23.18, "x": 27.66, "y": -0.26, "color": "e0da19ff" },
-	{ "name": "rear-thigh", "parent": "hip", "length": 85.72, "rotation": -72.54, "x": 8.91, "y": -5.63, "color": "ff000dff" },
-	{ "name": "rear-shin", "parent": "rear-thigh", "length": 121.88, "rotation": -19.83, "x": 86.1, "y": -1.33, "color": "ff000dff" },
-	{ "name": "rear-foot", "parent": "rear-shin", "length": 82.57, "rotation": 69.3, "x": 121.46, "y": -0.76, "color": "ff000dff" }
+	{
+		"name": "neck",
+		"parent": "torso",
+		"length": 25.45,
+		"rotation": -31.54,
+		"x": 127.5,
+		"y": -0.31,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 263.58,
+		"rotation": 23.18,
+		"x": 27.66,
+		"y": -0.26,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "rear-thigh",
+		"parent": "hip",
+		"length": 85.72,
+		"rotation": -72.54,
+		"x": 8.91,
+		"y": -5.63,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-shin",
+		"parent": "rear-thigh",
+		"length": 121.88,
+		"rotation": -19.83,
+		"x": 86.1,
+		"y": -1.33,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-foot",
+		"parent": "rear-shin",
+		"length": 82.57,
+		"rotation": 69.3,
+		"x": 121.46,
+		"y": -0.76,
+		"color": "ff000dff"
+	}
 ],
 "slots": [
 	{ "name": "rear-upper-arm", "bone": "rear-upper-arm", "attachment": "rear-upper-arm" },

BIN
spine-libgdx/spine-libgdx-tests/assets/spineboy/spineboy-ess.skel


+ 197 - 42
spine-libgdx/spine-libgdx-tests/assets/spineboy/spineboy-pro.json

@@ -1,22 +1,47 @@
 {
-"skeleton": {
-	"hash": "IJd+uV+2SwjUih383rggKnjQ5gw",
-	"spine": "3.7.08-beta",
-	"width": 419.84,
-	"height": 686.08,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "IJd+uV+2SwjUih383rggKnjQ5gw", "spine": "3.7.19-beta", "width": 419.84, "height": 686.08, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root", "rotation": 0.28 },
 	{ "name": "hip", "parent": "root", "y": 247.27 },
 	{ "name": "crosshair", "parent": "root", "x": 1115.23, "y": 565.42, "color": "ff3f00ff" },
-	{ "name": "aim-constraint-target", "parent": "hip", "length": 26.24, "rotation": 19.61, "x": 1.02, "y": 5.62, "color": "abe323ff" },
+	{
+		"name": "aim-constraint-target",
+		"parent": "hip",
+		"length": 26.24,
+		"rotation": 19.61,
+		"x": 1.02,
+		"y": 5.62,
+		"color": "abe323ff"
+	},
 	{ "name": "rear-foot-ik", "parent": "root", "x": 61.91, "y": 0.42, "color": "ff3f00ff" },
 	{ "name": "rear-ankle-ik", "parent": "rear-foot-ik", "x": -33.91, "y": 37.34, "color": "ff3f00ff" },
-	{ "name": "rear-thigh", "parent": "hip", "length": 85.72, "rotation": -72.54, "x": 8.91, "y": -5.63, "color": "ff000dff" },
-	{ "name": "rear-shin", "parent": "rear-thigh", "length": 121.88, "rotation": -19.83, "x": 86.1, "y": -1.33, "color": "ff000dff" },
-	{ "name": "rear-foot", "parent": "rear-shin", "length": 51.58, "rotation": 45.78, "x": 121.46, "y": -0.76, "color": "ff000dff" },
+	{
+		"name": "rear-thigh",
+		"parent": "hip",
+		"length": 85.72,
+		"rotation": -72.54,
+		"x": 8.91,
+		"y": -5.63,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-shin",
+		"parent": "rear-thigh",
+		"length": 121.88,
+		"rotation": -19.83,
+		"x": 86.1,
+		"y": -1.33,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-foot",
+		"parent": "rear-shin",
+		"length": 51.58,
+		"rotation": 45.78,
+		"x": 121.46,
+		"y": -0.76,
+		"color": "ff000dff"
+	},
 	{
 		"name": "back-foot-tip",
 		"parent": "rear-foot",
@@ -55,10 +80,26 @@
 	{ "name": "flare10", "parent": "portal-root", "x": -6.34, "y": -161.57 },
 	{ "name": "front-foot-ik", "parent": "root", "x": -13.53, "y": 0.04, "color": "ff3f00ff" },
 	{ "name": "front-ankle-ik", "parent": "front-foot-ik", "x": -28.4, "y": 29.06, "color": "ff3f00ff" },
-	{ "name": "torso", "parent": "hip", "length": 42.52, "rotation": 103.82, "x": -1.62, "y": 4.9, "color": "e0da19ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 42.52,
+		"rotation": 103.82,
+		"x": -1.62,
+		"y": 4.9,
+		"color": "e0da19ff"
+	},
 	{ "name": "torso2", "parent": "torso", "length": 42.52, "x": 42.52, "color": "e0da19ff" },
 	{ "name": "torso3", "parent": "torso2", "length": 42.52, "x": 42.52, "color": "e0da19ff" },
-	{ "name": "front-upper-arm", "parent": "torso3", "length": 69.45, "rotation": 168.38, "x": 18.72, "y": 19.33, "color": "00ff04ff" },
+	{
+		"name": "front-upper-arm",
+		"parent": "torso3",
+		"length": 69.45,
+		"rotation": 168.38,
+		"x": 18.72,
+		"y": 19.33,
+		"color": "00ff04ff"
+	},
 	{
 		"name": "front-bracer",
 		"parent": "front-upper-arm",
@@ -68,10 +109,42 @@
 		"y": -0.68,
 		"color": "00ff04ff"
 	},
-	{ "name": "front-fist", "parent": "front-bracer", "length": 65.39, "rotation": 12.43, "x": 40.57, "y": 0.2, "color": "00ff04ff" },
-	{ "name": "front-thigh", "parent": "hip", "length": 74.81, "rotation": -95.51, "x": -17.46, "y": -11.64, "color": "00ff04ff" },
-	{ "name": "front-shin", "parent": "front-thigh", "length": 128.77, "rotation": -2.21, "x": 78.69, "y": 1.6, "color": "00ff04ff" },
-	{ "name": "front-foot", "parent": "front-shin", "length": 41.01, "rotation": 51.27, "x": 128.76, "y": -0.34, "color": "00ff04ff" },
+	{
+		"name": "front-fist",
+		"parent": "front-bracer",
+		"length": 65.39,
+		"rotation": 12.43,
+		"x": 40.57,
+		"y": 0.2,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-thigh",
+		"parent": "hip",
+		"length": 74.81,
+		"rotation": -95.51,
+		"x": -17.46,
+		"y": -11.64,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-shin",
+		"parent": "front-thigh",
+		"length": 128.77,
+		"rotation": -2.21,
+		"x": 78.69,
+		"y": 1.6,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-foot",
+		"parent": "front-shin",
+		"length": 41.01,
+		"rotation": 51.27,
+		"x": 128.76,
+		"y": -0.34,
+		"color": "00ff04ff"
+	},
 	{
 		"name": "front-foot-tip",
 		"parent": "front-foot",
@@ -82,32 +155,82 @@
 		"transform": "noRotationOrReflection",
 		"color": "00ff04ff"
 	},
-	{ "name": "rear-upper-arm", "parent": "torso3", "length": 51.94, "rotation": -169.56, "x": 7.32, "y": -19.22, "color": "ff000dff" },
+	{
+		"name": "rear-upper-arm",
+		"parent": "torso3",
+		"length": 51.94,
+		"rotation": -169.56,
+		"x": 7.32,
+		"y": -19.22,
+		"color": "ff000dff"
+	},
 	{ "name": "rear-bracer", "parent": "rear-upper-arm", "length": 34.56, "rotation": 23.15, "x": 51.36, "color": "ff000dff" },
-	{ "name": "gun", "parent": "rear-bracer", "length": 43.11, "rotation": -5.43, "x": 34.42, "y": -0.45, "color": "ff000dff" },
+	{
+		"name": "gun",
+		"parent": "rear-bracer",
+		"length": 43.11,
+		"rotation": -5.43,
+		"x": 34.42,
+		"y": -0.45,
+		"color": "ff000dff"
+	},
 	{ "name": "gun-tip", "parent": "gun", "rotation": 7.1, "x": 200.78, "y": 52.5, "color": "ff0000ff" },
-	{ "name": "neck", "parent": "torso3", "length": 25.45, "rotation": -31.54, "x": 42.46, "y": -0.31, "color": "e0da19ff" },
-	{ "name": "head", "parent": "neck", "length": 131.79, "rotation": 26.1, "x": 27.66, "y": -0.26, "color": "e0da19ff" },
-	{ "name": "hair1", "parent": "head", "length": 47.23, "rotation": -49.1, "x": 149.83, "y": -59.77, "color": "e0da19ff" },
-	{ "name": "hair2", "parent": "hair1", "length": 55.57, "rotation": 50.42, "x": 47.23, "y": 0.19, "color": "e0da19ff" },
-	{ "name": "hair3", "parent": "head", "length": 62.22, "rotation": -32.17, "x": 164.14, "y": 3.68, "color": "e0da19ff" },
-	{ "name": "hair4", "parent": "hair3", "length": 80.28, "rotation": 83.71, "x": 62.22, "y": -0.04, "color": "e0da19ff" },
 	{
-		"name": "hoverboard-thruster-front",
-		"parent": "hoverboard-controller",
-		"rotation": -29.2,
-		"x": 95.77,
-		"y": -2.99,
-		"transform": "noRotationOrReflection"
+		"name": "neck",
+		"parent": "torso3",
+		"length": 25.45,
+		"rotation": -31.54,
+		"x": 42.46,
+		"y": -0.31,
+		"color": "e0da19ff"
 	},
 	{
-		"name": "hoverboard-thruster-rear",
-		"parent": "hoverboard-controller",
-		"rotation": -29.2,
-		"x": -76.47,
-		"y": -4.88,
-		"transform": "noRotationOrReflection"
+		"name": "head",
+		"parent": "neck",
+		"length": 131.79,
+		"rotation": 26.1,
+		"x": 27.66,
+		"y": -0.26,
+		"color": "e0da19ff"
 	},
+	{
+		"name": "hair1",
+		"parent": "head",
+		"length": 47.23,
+		"rotation": -49.1,
+		"x": 149.83,
+		"y": -59.77,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "hair2",
+		"parent": "hair1",
+		"length": 55.57,
+		"rotation": 50.42,
+		"x": 47.23,
+		"y": 0.19,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "hair3",
+		"parent": "head",
+		"length": 62.22,
+		"rotation": -32.17,
+		"x": 164.14,
+		"y": 3.68,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "hair4",
+		"parent": "hair3",
+		"length": 80.28,
+		"rotation": 83.71,
+		"x": 62.22,
+		"y": -0.04,
+		"color": "e0da19ff"
+	},
+	{ "name": "hoverboard-thruster-front", "parent": "hoverboard-controller", "rotation": -29.2, "x": 95.77, "y": -2.99, "transform": "noRotationOrReflection" },
+	{ "name": "hoverboard-thruster-rear", "parent": "hoverboard-controller", "rotation": -29.2, "x": -76.47, "y": -4.88, "transform": "noRotationOrReflection" },
 	{ "name": "hoverglow-front", "parent": "hoverboard-thruster-front", "rotation": 0.17, "x": -1.78, "y": -37.79 },
 	{ "name": "hoverglow-rear", "parent": "hoverboard-thruster-rear", "rotation": 0.17, "x": 1.06, "y": -35.66 },
 	{ "name": "muzzle", "parent": "rear-bracer", "rotation": 3.06, "x": 242.34, "y": 34.26, "color": "ffb900ff" },
@@ -337,7 +460,15 @@
 			"hoverglow-small": { "scaleX": 0.463, "scaleY": 0.813, "rotation": -83.07, "width": 274, "height": 75 }
 		},
 		"exhaust2": {
-			"hoverglow-small": { "x": 0.01, "y": -0.76, "scaleX": 0.421, "scaleY": 0.84, "rotation": -89.25, "width": 274, "height": 75 }
+			"hoverglow-small": {
+				"x": 0.01,
+				"y": -0.76,
+				"scaleX": 0.421,
+				"scaleY": 0.84,
+				"rotation": -89.25,
+				"width": 274,
+				"height": 75
+			}
 		},
 		"exhaust3": {
 			"hoverglow-small": { "scaleX": 0.463, "scaleY": 0.813, "rotation": -83.07, "width": 274, "height": 75 }
@@ -445,10 +576,26 @@
 			"hoverboard-thruster": { "x": 1.1, "y": -6.29, "rotation": 0.17, "width": 60, "height": 64 }
 		},
 		"hoverglow-front": {
-			"hoverglow-small": { "x": 2.13, "y": -2, "scaleX": 0.303, "scaleY": 0.495, "rotation": 0.15, "width": 274, "height": 75 }
+			"hoverglow-small": {
+				"x": 2.13,
+				"y": -2,
+				"scaleX": 0.303,
+				"scaleY": 0.495,
+				"rotation": 0.15,
+				"width": 274,
+				"height": 75
+			}
 		},
 		"hoverglow-rear": {
-			"hoverglow-small": { "x": 1.39, "y": -2.09, "scaleX": 0.303, "scaleY": 0.495, "rotation": 0.61, "width": 274, "height": 75 }
+			"hoverglow-small": {
+				"x": 1.39,
+				"y": -2.09,
+				"scaleX": 0.303,
+				"scaleY": 0.495,
+				"rotation": 0.61,
+				"width": 274,
+				"height": 75
+			}
 		},
 		"mouth": {
 			"mouth-grind": {
@@ -478,7 +625,15 @@
 			"muzzle02": { "x": 187.25, "y": 5.9, "rotation": 0.15, "width": 540, "height": 337 },
 			"muzzle03": { "x": 231.96, "y": 6.02, "rotation": 0.15, "width": 663, "height": 425 },
 			"muzzle04": { "x": 231.96, "y": 6.02, "rotation": 0.15, "width": 596, "height": 358 },
-			"muzzle05": { "x": 293.8, "y": 6.19, "scaleX": 1.187, "scaleY": 1.187, "rotation": 0.15, "width": 538, "height": 299 }
+			"muzzle05": {
+				"x": 293.8,
+				"y": 6.19,
+				"scaleX": 1.187,
+				"scaleY": 1.187,
+				"rotation": 0.15,
+				"width": 538,
+				"height": 299
+			}
 		},
 		"muzzle-glow": {
 			"muzzle-glow": { "width": 198, "height": 198 }

BIN
spine-libgdx/spine-libgdx-tests/assets/spineboy/spineboy-pro.skel


+ 1 - 8
spine-love/data/coin-pro.json

@@ -1,12 +1,5 @@
 {
-"skeleton": {
-	"hash": "lfmnIwRt8cjfHaBQWvT0v4odYdY",
-	"spine": "3.7.08-beta",
-	"width": 260,
-	"height": 359.92,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "lfmnIwRt8cjfHaBQWvT0v4odYdY", "spine": "3.7.19-beta", "width": 260, "height": 359.92, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "coin-root", "parent": "root", "y": 300, "color": "ff0000ff" },

+ 127 - 22
spine-love/data/goblins-pro.json

@@ -1,21 +1,62 @@
 {
-"skeleton": {
-	"hash": "GEt0/K+46aqD75ngNEZOztV899k",
-	"spine": "3.7.08-beta",
-	"width": 266.94,
-	"height": 349.61,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "GEt0/K+46aqD75ngNEZOztV899k", "spine": "3.7.19-beta", "width": 266.94, "height": 349.61, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "x": 0.65, "y": 114.41, "color": "ffcf00ff" },
-	{ "name": "torso", "parent": "hip", "length": 85.83, "rotation": 93.93, "x": -6.42, "y": 1.98, "color": "ffcf00ff" },
-	{ "name": "neck", "parent": "torso", "length": 18.38, "rotation": -1.52, "x": 81.68, "y": -6.35, "color": "ffcf00ff" },
-	{ "name": "head", "parent": "neck", "length": 68.29, "rotation": -13.92, "x": 20.94, "y": 11.59, "color": "ffcf00ff" },
-	{ "name": "left-shoulder", "parent": "torso", "length": 35.43, "rotation": -156.96, "x": 74.05, "y": -20.39, "color": "ff0000ff" },
-	{ "name": "left-arm", "parent": "left-shoulder", "length": 35.62, "rotation": 28.17, "x": 37.86, "y": -2.35, "color": "ff0000ff" },
-	{ "name": "left-upper-leg", "parent": "hip", "length": 50.4, "rotation": -89.1, "x": 14.45, "y": 2.81, "color": "ff0000ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 85.83,
+		"rotation": 93.93,
+		"x": -6.42,
+		"y": 1.98,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "neck",
+		"parent": "torso",
+		"length": 18.38,
+		"rotation": -1.52,
+		"x": 81.68,
+		"y": -6.35,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 68.29,
+		"rotation": -13.92,
+		"x": 20.94,
+		"y": 11.59,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "left-shoulder",
+		"parent": "torso",
+		"length": 35.43,
+		"rotation": -156.96,
+		"x": 74.05,
+		"y": -20.39,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-arm",
+		"parent": "left-shoulder",
+		"length": 35.62,
+		"rotation": 28.17,
+		"x": 37.86,
+		"y": -2.35,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "left-upper-leg",
+		"parent": "hip",
+		"length": 50.4,
+		"rotation": -89.1,
+		"x": 14.45,
+		"y": 2.81,
+		"color": "ff0000ff"
+	},
 	{
 		"name": "left-lower-leg",
 		"parent": "left-upper-leg",
@@ -34,11 +75,43 @@
 		"y": -7.61,
 		"color": "ff0000ff"
 	},
-	{ "name": "left-hand", "parent": "left-arm", "length": 11.52, "rotation": 2.7, "x": 35.62, "y": 0.08, "color": "ff0000ff" },
+	{
+		"name": "left-hand",
+		"parent": "left-arm",
+		"length": 11.52,
+		"rotation": 2.7,
+		"x": 35.62,
+		"y": 0.08,
+		"color": "ff0000ff"
+	},
 	{ "name": "pelvis", "parent": "hip", "x": 1.41, "y": -6.58, "color": "ffcf00ff" },
-	{ "name": "right-shoulder", "parent": "torso", "length": 37.25, "rotation": 133.89, "x": 76.02, "y": 18.15, "color": "62ff00ff" },
-	{ "name": "right-arm", "parent": "right-shoulder", "length": 36.75, "rotation": 36.33, "x": 37.61, "y": 0.31, "color": "62ff00ff" },
-	{ "name": "right-upper-leg", "parent": "hip", "length": 42.46, "rotation": -97.5, "x": -20.08, "y": -6.84, "color": "62ff00ff" },
+	{
+		"name": "right-shoulder",
+		"parent": "torso",
+		"length": 37.25,
+		"rotation": 133.89,
+		"x": 76.02,
+		"y": 18.15,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "right-arm",
+		"parent": "right-shoulder",
+		"length": 36.75,
+		"rotation": 36.33,
+		"x": 37.61,
+		"y": 0.31,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "right-upper-leg",
+		"parent": "hip",
+		"length": 42.46,
+		"rotation": -97.5,
+		"x": -20.08,
+		"y": -6.84,
+		"color": "62ff00ff"
+	},
 	{
 		"name": "right-lower-leg",
 		"parent": "right-upper-leg",
@@ -57,10 +130,42 @@
 		"y": 0.04,
 		"color": "62ff00ff"
 	},
-	{ "name": "right-hand", "parent": "right-arm", "length": 15.32, "rotation": 2.36, "x": 36.9, "y": 0.35, "color": "62ff00ff" },
-	{ "name": "spear1", "parent": "left-hand", "length": 65.07, "rotation": 102.43, "x": 0.48, "y": 17.03, "color": "ffcf00ff" },
-	{ "name": "spear2", "parent": "spear1", "length": 61.42, "rotation": 0.9, "x": 65.06, "y": 0.04, "color": "ffcf00ff" },
-	{ "name": "spear3", "parent": "spear2", "length": 76.8, "rotation": -0.9, "x": 61.89, "y": 0.57, "color": "ffcf00ff" }
+	{
+		"name": "right-hand",
+		"parent": "right-arm",
+		"length": 15.32,
+		"rotation": 2.36,
+		"x": 36.9,
+		"y": 0.35,
+		"color": "62ff00ff"
+	},
+	{
+		"name": "spear1",
+		"parent": "left-hand",
+		"length": 65.07,
+		"rotation": 102.43,
+		"x": 0.48,
+		"y": 17.03,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "spear2",
+		"parent": "spear1",
+		"length": 61.42,
+		"rotation": 0.9,
+		"x": 65.06,
+		"y": 0.04,
+		"color": "ffcf00ff"
+	},
+	{
+		"name": "spear3",
+		"parent": "spear2",
+		"length": 76.8,
+		"rotation": -0.9,
+		"x": 61.89,
+		"y": 0.57,
+		"color": "ffcf00ff"
+	}
 ],
 "slots": [
 	{ "name": "left-shoulder", "bone": "left-shoulder", "attachment": "left-shoulder" },

+ 343 - 46
spine-love/data/raptor-pro.json

@@ -1,18 +1,35 @@
 {
-"skeleton": {
-	"hash": "pNFKcFD/5VPCe7+HftjerXAycWk",
-	"spine": "3.7.08-beta",
-	"width": 1296.89,
-	"height": 1055.12,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "pNFKcFD/5VPCe7+HftjerXAycWk", "spine": "3.7.19-beta", "width": 1296.89, "height": 1055.12, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "rotation": 3.16, "x": -136.79, "y": 415.48, "color": "fbff00ff" },
-	{ "name": "torso1", "parent": "hip", "length": 126.26, "rotation": -4.98, "x": 30.04, "y": -0.4, "color": "eaff00ff" },
-	{ "name": "saddle", "parent": "torso1", "length": 50.92, "rotation": 91.8, "x": 25.31, "y": 70.65, "color": "ff7300ff" },
-	{ "name": "spineboy-hip", "parent": "saddle", "length": 0.53, "rotation": 90.02, "x": 81.88, "y": 2.69, "color": "e8ff00ff" },
+	{
+		"name": "torso1",
+		"parent": "hip",
+		"length": 126.26,
+		"rotation": -4.98,
+		"x": 30.04,
+		"y": -0.4,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "saddle",
+		"parent": "torso1",
+		"length": 50.92,
+		"rotation": 91.8,
+		"x": 25.31,
+		"y": 70.65,
+		"color": "ff7300ff"
+	},
+	{
+		"name": "spineboy-hip",
+		"parent": "saddle",
+		"length": 0.53,
+		"rotation": 90.02,
+		"x": 81.88,
+		"y": 2.69,
+		"color": "e8ff00ff"
+	},
 	{
 		"name": "spineboy-torso",
 		"parent": "spineboy-hip",
@@ -22,10 +39,42 @@
 		"y": -2.11,
 		"color": "e8ff00ff"
 	},
-	{ "name": "torso2", "parent": "torso1", "length": 121.2, "rotation": 39.85, "x": 126.26, "y": -0.38, "color": "e9ff00ff" },
-	{ "name": "neck", "parent": "torso2", "length": 70.6, "rotation": 41.38, "x": 121.2, "y": 0.35, "color": "eaff00ff" },
-	{ "name": "head", "parent": "neck", "length": 105.51, "rotation": 9.83, "x": 70.6, "y": 0.04, "color": "eaff00ff" },
-	{ "name": "horn-rear", "parent": "head", "length": 73.78, "rotation": 44.32, "x": 104.76, "y": -242.01, "color": "e07800ff" },
+	{
+		"name": "torso2",
+		"parent": "torso1",
+		"length": 121.2,
+		"rotation": 39.85,
+		"x": 126.26,
+		"y": -0.38,
+		"color": "e9ff00ff"
+	},
+	{
+		"name": "neck",
+		"parent": "torso2",
+		"length": 70.6,
+		"rotation": 41.38,
+		"x": 121.2,
+		"y": 0.35,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 105.51,
+		"rotation": 9.83,
+		"x": 70.6,
+		"y": 0.04,
+		"color": "eaff00ff"
+	},
+	{
+		"name": "horn-rear",
+		"parent": "head",
+		"length": 73.78,
+		"rotation": 44.32,
+		"x": 104.76,
+		"y": -242.01,
+		"color": "e07800ff"
+	},
 	{ "name": "rear-arm-target", "parent": "horn-rear", "rotation": -133.55, "x": 232.68, "y": 245.85, "color": "ff3f00ff" },
 	{
 		"name": "back-arm",
@@ -36,7 +85,15 @@
 		"y": -38.47,
 		"color": "e07800ff"
 	},
-	{ "name": "back-bracer", "parent": "back-arm", "length": 43.69, "rotation": 17.48, "x": 67.22, "y": -0.32, "color": "e07800ff" },
+	{
+		"name": "back-bracer",
+		"parent": "back-arm",
+		"length": 43.69,
+		"rotation": 17.48,
+		"x": 67.22,
+		"y": -0.32,
+		"color": "e07800ff"
+	},
 	{
 		"name": "back-hand",
 		"parent": "back-bracer",
@@ -48,21 +105,85 @@
 		"color": "e07800ff"
 	},
 	{ "name": "spineboy-rear-arm-goal", "parent": "saddle", "x": -30.44, "y": -100.08, "color": "ff3f00ff" },
-	{ "name": "back-thigh", "parent": "spineboy-hip", "length": 71.16, "rotation": 160.75, "x": -9.57, "y": 2.32, "color": "e07800ff" },
-	{ "name": "back-knee", "parent": "back-thigh", "length": 97.17, "rotation": -54.98, "x": 71.16, "y": -0.28, "color": "e07800ff" },
-	{ "name": "neck2", "parent": "spineboy-torso", "length": 32.05, "rotation": -45.23, "x": 113.44, "y": -15.22, "color": "e8ff00ff" },
-	{ "name": "head2", "parent": "neck2", "length": 167.19, "rotation": 11.66, "x": 25.68, "y": -0.77, "color": "e7ff00ff" },
-	{ "name": "bone", "parent": "head2", "length": 39.92, "rotation": -35.23, "x": 166.09, "y": -79.27, "color": "e7ff00ff" },
+	{
+		"name": "back-thigh",
+		"parent": "spineboy-hip",
+		"length": 71.16,
+		"rotation": 160.75,
+		"x": -9.57,
+		"y": 2.32,
+		"color": "e07800ff"
+	},
+	{
+		"name": "back-knee",
+		"parent": "back-thigh",
+		"length": 97.17,
+		"rotation": -54.98,
+		"x": 71.16,
+		"y": -0.28,
+		"color": "e07800ff"
+	},
+	{
+		"name": "neck2",
+		"parent": "spineboy-torso",
+		"length": 32.05,
+		"rotation": -45.23,
+		"x": 113.44,
+		"y": -15.22,
+		"color": "e8ff00ff"
+	},
+	{
+		"name": "head2",
+		"parent": "neck2",
+		"length": 167.19,
+		"rotation": 11.66,
+		"x": 25.68,
+		"y": -0.77,
+		"color": "e7ff00ff"
+	},
+	{
+		"name": "bone",
+		"parent": "head2",
+		"length": 39.92,
+		"rotation": -35.23,
+		"x": 166.09,
+		"y": -79.27,
+		"color": "e7ff00ff"
+	},
 	{ "name": "bone2", "parent": "bone", "length": 47.42, "rotation": 51.8, "x": 39.92, "color": "e7ff00ff" },
-	{ "name": "bone3", "parent": "head2", "length": 45.41, "rotation": -12.34, "x": 179.8, "y": -20.91, "color": "e7ff00ff" },
-	{ "name": "bone4", "parent": "bone3", "length": 43.31, "rotation": 42.01, "x": 44.64, "y": 0.3, "color": "e7ff00ff" },
+	{
+		"name": "bone3",
+		"parent": "head2",
+		"length": 45.41,
+		"rotation": -12.34,
+		"x": 179.8,
+		"y": -20.91,
+		"color": "e7ff00ff"
+	},
+	{
+		"name": "bone4",
+		"parent": "bone3",
+		"length": 43.31,
+		"rotation": 42.01,
+		"x": 44.64,
+		"y": 0.3,
+		"color": "e7ff00ff"
+	},
 	{ "name": "bone5", "parent": "bone4", "length": 44.88, "rotation": 48.8, "x": 43.31, "color": "e7ff00ff" },
 	{ "name": "dust-root", "parent": "root" },
 	{ "name": "dust", "parent": "dust-root", "x": 231.15, "y": -2.15, "scaleX": 2.285, "scaleY": 1.427 },
 	{ "name": "dust2", "parent": "dust-root", "x": -147.58, "y": -2.15, "scaleX": 1.635, "scaleY": 1.021 },
 	{ "name": "dust3", "parent": "dust-root", "x": 429.77, "y": 20.67, "scaleX": 2.285, "scaleY": 1.427 },
 	{ "name": "dust4", "parent": "dust-root", "x": 29.91, "y": 14.02, "scaleX": 1.635, "scaleY": 1.021 },
-	{ "name": "horn-front", "parent": "head", "length": 87.48, "rotation": 49.36, "x": 87.97, "y": -235.15, "color": "15ff00ff" },
+	{
+		"name": "horn-front",
+		"parent": "head",
+		"length": 87.48,
+		"rotation": 49.36,
+		"x": 87.97,
+		"y": -235.15,
+		"color": "15ff00ff"
+	},
 	{ "name": "front-arm-target", "parent": "horn-front", "rotation": -138.6, "x": 294.58, "y": 234.18, "color": "ff3f00ff" },
 	{
 		"name": "front-arm",
@@ -73,14 +194,62 @@
 		"y": 9.79,
 		"color": "14ff00ff"
 	},
-	{ "name": "front-bracer", "parent": "front-arm", "length": 39.85, "rotation": 20.31, "x": 74.52, "y": -0.42, "color": "14ff00ff" },
-	{ "name": "front-arm1", "parent": "torso2", "length": 109.99, "rotation": 224.54, "x": 46.37, "y": -84.62, "color": "15ff00ff" },
-	{ "name": "front-arm2", "parent": "front-arm1", "length": 86.33, "rotation": 105.24, "x": 109.99, "y": 0.2, "color": "15ff00ff" },
+	{
+		"name": "front-bracer",
+		"parent": "front-arm",
+		"length": 39.85,
+		"rotation": 20.31,
+		"x": 74.52,
+		"y": -0.42,
+		"color": "14ff00ff"
+	},
+	{
+		"name": "front-arm1",
+		"parent": "torso2",
+		"length": 109.99,
+		"rotation": 224.54,
+		"x": 46.37,
+		"y": -84.62,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-arm2",
+		"parent": "front-arm1",
+		"length": 86.33,
+		"rotation": 105.24,
+		"x": 109.99,
+		"y": 0.2,
+		"color": "15ff00ff"
+	},
 	{ "name": "front-foot-goal", "parent": "root", "rotation": -0.95, "x": -45.8, "y": -28.67, "color": "ff3f00ff" },
 	{ "name": "front-leg-goal", "parent": "front-foot-goal", "x": -106.06, "y": 115.58, "color": "ff3f00ff" },
-	{ "name": "front-leg1", "parent": "hip", "length": 251.75, "rotation": -51.51, "x": 27.36, "y": -28.28, "color": "15ff00ff" },
-	{ "name": "front-leg2", "parent": "front-leg1", "length": 208.55, "rotation": 261.94, "x": 251.04, "y": 0.16, "color": "15ff00ff" },
-	{ "name": "front-leg3", "parent": "front-leg2", "length": 118.18, "rotation": 85.46, "x": 208.5, "y": -1.64, "color": "15ff00ff" },
+	{
+		"name": "front-leg1",
+		"parent": "hip",
+		"length": 251.75,
+		"rotation": -51.51,
+		"x": 27.36,
+		"y": -28.28,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-leg2",
+		"parent": "front-leg1",
+		"length": 208.55,
+		"rotation": 261.94,
+		"x": 251.04,
+		"y": 0.16,
+		"color": "15ff00ff"
+	},
+	{
+		"name": "front-leg3",
+		"parent": "front-leg2",
+		"length": 118.18,
+		"rotation": 85.46,
+		"x": 208.5,
+		"y": -1.64,
+		"color": "15ff00ff"
+	},
 	{
 		"name": "front-foot1",
 		"parent": "front-leg3",
@@ -113,7 +282,15 @@
 		"scaleX": 1.155,
 		"color": "15ff00ff"
 	},
-	{ "name": "front-hand", "parent": "front-arm2", "length": 47.56, "rotation": -56.83, "x": 86.33, "y": 0.06, "color": "15ff00ff" },
+	{
+		"name": "front-hand",
+		"parent": "front-arm2",
+		"length": 47.56,
+		"rotation": -56.83,
+		"x": 86.33,
+		"y": 0.06,
+		"color": "15ff00ff"
+	},
 	{
 		"name": "front-hand2",
 		"parent": "front-bracer",
@@ -134,7 +311,15 @@
 		"y": 17.02,
 		"color": "14ff00ff"
 	},
-	{ "name": "lower-leg", "parent": "front-thigh", "length": 111.5, "rotation": -49.62, "x": 77.93, "y": -0.11, "color": "14ff00ff" },
+	{
+		"name": "lower-leg",
+		"parent": "front-thigh",
+		"length": 111.5,
+		"rotation": -49.62,
+		"x": 77.93,
+		"y": -0.11,
+		"color": "14ff00ff"
+	},
 	{
 		"name": "gun",
 		"parent": "spineboy-hip",
@@ -146,16 +331,72 @@
 		"scaleY": 0.816,
 		"color": "ffffffff"
 	},
-	{ "name": "jaw", "parent": "head", "length": 203.76, "rotation": -125.79, "x": 49.11, "y": -68.46, "color": "ffff00ff" },
+	{
+		"name": "jaw",
+		"parent": "head",
+		"length": 203.76,
+		"rotation": -125.79,
+		"x": 49.11,
+		"y": -68.46,
+		"color": "ffff00ff"
+	},
 	{ "name": "jaw-inside", "parent": "jaw", "x": 94.7, "y": 33.64, "color": "ffff00ff" },
-	{ "name": "rear-arm1", "parent": "torso2", "length": 109.56, "rotation": -124.72, "x": 57.05, "y": -95.39, "color": "e07800ff" },
-	{ "name": "rear-arm2", "parent": "rear-arm1", "length": 85.8, "rotation": 123.56, "x": 109.57, "y": -0.01, "color": "e07800ff" },
+	{
+		"name": "rear-arm1",
+		"parent": "torso2",
+		"length": 109.56,
+		"rotation": -124.72,
+		"x": 57.05,
+		"y": -95.39,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-arm2",
+		"parent": "rear-arm1",
+		"length": 85.8,
+		"rotation": 123.56,
+		"x": 109.57,
+		"y": -0.01,
+		"color": "e07800ff"
+	},
 	{ "name": "rear-foot-goal", "parent": "root", "x": 33.44, "y": 30.82, "color": "ff3f00ff" },
 	{ "name": "rear-leg-goal", "parent": "rear-foot-goal", "x": -127.51, "y": 75.99, "color": "ff3f00ff" },
-	{ "name": "rear-leg1", "parent": "hip", "length": 226.28, "rotation": -54.76, "x": 55.19, "y": -71.25, "color": "e07800ff" },
-	{ "name": "rear-leg2", "parent": "rear-leg1", "length": 172.59, "rotation": -92.25, "x": 226.32, "y": 0.23, "color": "e07800ff" },
-	{ "name": "rear-leg3", "parent": "rear-leg2", "length": 103.05, "rotation": 82.82, "x": 172.32, "y": 2.21, "color": "e07800ff" },
-	{ "name": "rear-foot1", "parent": "rear-leg3", "length": 84.51, "rotation": 75.43, "x": 102.38, "y": -0.03, "color": "e07800ff" },
+	{
+		"name": "rear-leg1",
+		"parent": "hip",
+		"length": 226.28,
+		"rotation": -54.76,
+		"x": 55.19,
+		"y": -71.25,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-leg2",
+		"parent": "rear-leg1",
+		"length": 172.59,
+		"rotation": -92.25,
+		"x": 226.32,
+		"y": 0.23,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-leg3",
+		"parent": "rear-leg2",
+		"length": 103.05,
+		"rotation": 82.82,
+		"x": 172.32,
+		"y": 2.21,
+		"color": "e07800ff"
+	},
+	{
+		"name": "rear-foot1",
+		"parent": "rear-leg3",
+		"length": 84.51,
+		"rotation": 75.43,
+		"x": 102.38,
+		"y": -0.03,
+		"color": "e07800ff"
+	},
 	{
 		"name": "rear-foot2",
 		"parent": "rear-foot1",
@@ -166,7 +407,15 @@
 		"transform": "noRotationOrReflection",
 		"color": "e07800ff"
 	},
-	{ "name": "rear-hand", "parent": "rear-arm2", "length": 45.81, "rotation": -76.28, "x": 85.8, "y": 0.11, "color": "e07800ff" },
+	{
+		"name": "rear-hand",
+		"parent": "rear-arm2",
+		"length": 45.81,
+		"rotation": -76.28,
+		"x": 85.8,
+		"y": 0.11,
+		"color": "e07800ff"
+	},
 	{
 		"name": "saddle-strap-front1",
 		"parent": "saddle",
@@ -204,10 +453,34 @@
 		"y": 0.2,
 		"color": "ff7300ff"
 	},
-	{ "name": "stirrup", "parent": "saddle", "length": 78.17, "rotation": -68.86, "x": -81.94, "y": -103.38, "color": "ff3f00ff" },
-	{ "name": "stirrup-strap1", "parent": "saddle", "length": 43.7, "rotation": -135, "x": -20.38, "y": -29.37, "color": "ff7300ff" },
+	{
+		"name": "stirrup",
+		"parent": "saddle",
+		"length": 78.17,
+		"rotation": -68.86,
+		"x": -81.94,
+		"y": -103.38,
+		"color": "ff3f00ff"
+	},
+	{
+		"name": "stirrup-strap1",
+		"parent": "saddle",
+		"length": 43.7,
+		"rotation": -135,
+		"x": -20.38,
+		"y": -29.37,
+		"color": "ff7300ff"
+	},
 	{ "name": "stirrup-strap2", "parent": "stirrup-strap1", "length": 51.62, "rotation": 9.39, "x": 43.71, "color": "ff7300ff" },
-	{ "name": "tail1", "parent": "hip", "length": 81.26, "rotation": 153.61, "x": -20.87, "y": 6.87, "color": "eaff00ff" },
+	{
+		"name": "tail1",
+		"parent": "hip",
+		"length": 81.26,
+		"rotation": 153.61,
+		"x": -20.87,
+		"y": 6.87,
+		"color": "eaff00ff"
+	},
 	{ "name": "tail2", "parent": "tail1", "length": 81.26, "rotation": 10.42, "x": 81.26, "color": "eaff00ff" },
 	{ "name": "tail3", "parent": "tail2", "length": 65.01, "rotation": 12.18, "x": 81.26, "color": "eaff00ff" },
 	{ "name": "tail4", "parent": "tail3", "length": 65.01, "x": 65.01, "color": "eaff00ff" },
@@ -217,9 +490,33 @@
 	{ "name": "tail8", "parent": "tail7", "length": 54.46, "rotation": 0.97, "x": 63.13, "color": "eaff00ff" },
 	{ "name": "tail9", "parent": "tail8", "length": 49.21, "rotation": -1.29, "x": 54.46, "color": "eaff00ff" },
 	{ "name": "tail10", "parent": "tail9", "length": 45.53, "rotation": 0.36, "x": 49.21, "color": "eaff00ff" },
-	{ "name": "tongue1", "parent": "head", "length": 55.12, "rotation": -129.04, "x": 20.82, "y": -104.75, "color": "ffff00ff" },
-	{ "name": "tongue2", "parent": "tongue1", "length": 44.67, "rotation": 8.93, "x": 55.6, "y": 0.93, "color": "fff200ff" },
-	{ "name": "tongue3", "parent": "tongue2", "length": 43.65, "rotation": 12.86, "x": 44.27, "y": -0.21, "color": "fff200ff" }
+	{
+		"name": "tongue1",
+		"parent": "head",
+		"length": 55.12,
+		"rotation": -129.04,
+		"x": 20.82,
+		"y": -104.75,
+		"color": "ffff00ff"
+	},
+	{
+		"name": "tongue2",
+		"parent": "tongue1",
+		"length": 44.67,
+		"rotation": 8.93,
+		"x": 55.6,
+		"y": 0.93,
+		"color": "fff200ff"
+	},
+	{
+		"name": "tongue3",
+		"parent": "tongue2",
+		"length": 43.65,
+		"rotation": 12.86,
+		"x": 44.27,
+		"y": -0.21,
+		"color": "fff200ff"
+	}
 ],
 "slots": [
 	{ "name": "back-hand", "bone": "back-hand", "attachment": "back-hand" },

+ 118 - 21
spine-love/data/spineboy-ess.json

@@ -1,18 +1,27 @@
 {
-"skeleton": {
-	"hash": "0DoQUqP6ATLL322RHY3r98lgFr8",
-	"spine": "3.7.08-beta",
-	"width": 470.72,
-	"height": 731.57,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "0DoQUqP6ATLL322RHY3r98lgFr8", "spine": "3.7.19-beta", "width": 470.72, "height": 731.57, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "dust", "parent": "root", "x": -303.6, "y": 32.64, "scaleX": 1.457 },
 	{ "name": "hip", "parent": "root", "y": 247.47 },
-	{ "name": "torso", "parent": "hip", "length": 127.56, "rotation": 103.82, "x": -1.62, "y": 4.9, "color": "e0da19ff" },
-	{ "name": "front-upper-arm", "parent": "torso", "length": 69.45, "rotation": 168.38, "x": 103.76, "y": 19.33, "color": "00ff04ff" },
+	{
+		"name": "torso",
+		"parent": "hip",
+		"length": 127.56,
+		"rotation": 103.82,
+		"x": -1.62,
+		"y": 4.9,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "front-upper-arm",
+		"parent": "torso",
+		"length": 69.45,
+		"rotation": 168.38,
+		"x": 103.76,
+		"y": 19.33,
+		"color": "00ff04ff"
+	},
 	{
 		"name": "front-bracer",
 		"parent": "front-upper-arm",
@@ -22,19 +31,107 @@
 		"y": -0.68,
 		"color": "00ff04ff"
 	},
-	{ "name": "front-fist", "parent": "front-bracer", "length": 65.39, "rotation": 12.43, "x": 40.57, "y": 0.2, "color": "00ff04ff" },
-	{ "name": "front-thigh", "parent": "hip", "length": 74.81, "rotation": -95.51, "x": -17.46, "y": -11.64, "color": "00ff04ff" },
-	{ "name": "front-shin", "parent": "front-thigh", "length": 128.77, "rotation": -2.21, "x": 78.69, "y": 1.6, "color": "00ff04ff" },
-	{ "name": "front-foot", "parent": "front-shin", "length": 91.34, "rotation": 77.91, "x": 128.76, "y": -0.34, "color": "00ff04ff" },
-	{ "name": "rear-upper-arm", "parent": "torso", "length": 51.94, "rotation": -169.56, "x": 92.36, "y": -19.22, "color": "ff000dff" },
+	{
+		"name": "front-fist",
+		"parent": "front-bracer",
+		"length": 65.39,
+		"rotation": 12.43,
+		"x": 40.57,
+		"y": 0.2,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-thigh",
+		"parent": "hip",
+		"length": 74.81,
+		"rotation": -95.51,
+		"x": -17.46,
+		"y": -11.64,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-shin",
+		"parent": "front-thigh",
+		"length": 128.77,
+		"rotation": -2.21,
+		"x": 78.69,
+		"y": 1.6,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "front-foot",
+		"parent": "front-shin",
+		"length": 91.34,
+		"rotation": 77.91,
+		"x": 128.76,
+		"y": -0.34,
+		"color": "00ff04ff"
+	},
+	{
+		"name": "rear-upper-arm",
+		"parent": "torso",
+		"length": 51.94,
+		"rotation": -169.56,
+		"x": 92.36,
+		"y": -19.22,
+		"color": "ff000dff"
+	},
 	{ "name": "rear-bracer", "parent": "rear-upper-arm", "length": 34.56, "rotation": 23.15, "x": 51.36, "color": "ff000dff" },
-	{ "name": "gun", "parent": "rear-bracer", "length": 43.11, "rotation": 5.35, "x": 34.42, "y": -0.45, "color": "ff000dff" },
+	{
+		"name": "gun",
+		"parent": "rear-bracer",
+		"length": 43.11,
+		"rotation": 5.35,
+		"x": 34.42,
+		"y": -0.45,
+		"color": "ff000dff"
+	},
 	{ "name": "gun-tip", "parent": "gun", "rotation": 6.83, "x": 201.05, "y": 52.14, "color": "ff000dff" },
-	{ "name": "neck", "parent": "torso", "length": 25.45, "rotation": -31.54, "x": 127.5, "y": -0.31, "color": "e0da19ff" },
-	{ "name": "head", "parent": "neck", "length": 263.58, "rotation": 23.18, "x": 27.66, "y": -0.26, "color": "e0da19ff" },
-	{ "name": "rear-thigh", "parent": "hip", "length": 85.72, "rotation": -72.54, "x": 8.91, "y": -5.63, "color": "ff000dff" },
-	{ "name": "rear-shin", "parent": "rear-thigh", "length": 121.88, "rotation": -19.83, "x": 86.1, "y": -1.33, "color": "ff000dff" },
-	{ "name": "rear-foot", "parent": "rear-shin", "length": 82.57, "rotation": 69.3, "x": 121.46, "y": -0.76, "color": "ff000dff" }
+	{
+		"name": "neck",
+		"parent": "torso",
+		"length": 25.45,
+		"rotation": -31.54,
+		"x": 127.5,
+		"y": -0.31,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "head",
+		"parent": "neck",
+		"length": 263.58,
+		"rotation": 23.18,
+		"x": 27.66,
+		"y": -0.26,
+		"color": "e0da19ff"
+	},
+	{
+		"name": "rear-thigh",
+		"parent": "hip",
+		"length": 85.72,
+		"rotation": -72.54,
+		"x": 8.91,
+		"y": -5.63,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-shin",
+		"parent": "rear-thigh",
+		"length": 121.88,
+		"rotation": -19.83,
+		"x": 86.1,
+		"y": -1.33,
+		"color": "ff000dff"
+	},
+	{
+		"name": "rear-foot",
+		"parent": "rear-shin",
+		"length": 82.57,
+		"rotation": 69.3,
+		"x": 121.46,
+		"y": -0.76,
+		"color": "ff000dff"
+	}
 ],
 "slots": [
 	{ "name": "rear-upper-arm", "bone": "rear-upper-arm", "attachment": "rear-upper-arm" },

+ 253 - 36
spine-love/data/stretchyman-pro.json

@@ -1,19 +1,36 @@
 {
-"skeleton": {
-	"hash": "ow1SbDe4W3rqcAxR3CKSHJ7MUZ4",
-	"spine": "3.7.08-beta",
-	"width": 264.5,
-	"height": 573.31,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "ow1SbDe4W3rqcAxR3CKSHJ7MUZ4", "spine": "3.7.19-beta", "width": 264.5, "height": 573.31, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "hip", "parent": "root", "x": 28.61, "y": 289.9, "color": "ffbd00ff" },
-	{ "name": "spine1", "parent": "hip", "length": 34.66, "rotation": 86.69, "x": -4.48, "y": 12.66, "color": "ffbd00ff" },
+	{
+		"name": "spine1",
+		"parent": "hip",
+		"length": 34.66,
+		"rotation": 86.69,
+		"x": -4.48,
+		"y": 12.66,
+		"color": "ffbd00ff"
+	},
 	{ "name": "spine2", "parent": "spine1", "length": 41.42, "rotation": 16.48, "x": 34.66, "color": "ffbd00ff" },
-	{ "name": "spine3", "parent": "spine2", "length": 34.45, "rotation": 16.17, "x": 41.42, "y": 0.01, "color": "ffbd00ff" },
-	{ "name": "spine4", "parent": "spine3", "length": 37.53, "rotation": -13.63, "x": 34.45, "y": 0.01, "color": "ffbd00ff" },
+	{
+		"name": "spine3",
+		"parent": "spine2",
+		"length": 34.45,
+		"rotation": 16.17,
+		"x": 41.42,
+		"y": 0.01,
+		"color": "ffbd00ff"
+	},
+	{
+		"name": "spine4",
+		"parent": "spine3",
+		"length": 37.53,
+		"rotation": -13.63,
+		"x": 34.45,
+		"y": 0.01,
+		"color": "ffbd00ff"
+	},
 	{
 		"name": "back-arm1",
 		"parent": "spine4",
@@ -24,12 +41,44 @@
 		"transform": "noScale",
 		"color": "ff0000ff"
 	},
-	{ "name": "back-arm2", "parent": "back-arm1", "length": 34.16, "rotation": 3.11, "x": 31.88, "y": 0.02, "color": "ff0000ff" },
+	{
+		"name": "back-arm2",
+		"parent": "back-arm1",
+		"length": 34.16,
+		"rotation": 3.11,
+		"x": 31.88,
+		"y": 0.02,
+		"color": "ff0000ff"
+	},
 	{ "name": "back-arm3", "parent": "back-arm2", "length": 31.27, "rotation": 9.59, "x": 34.16, "color": "ff0000ff" },
-	{ "name": "back-arm4", "parent": "back-arm3", "length": 33.3, "rotation": 14.61, "x": 32.04, "y": 0.82, "color": "ff0000ff" },
-	{ "name": "back-arm5", "parent": "back-arm4", "length": 37.41, "rotation": 11.31, "x": 33.82, "y": 0.02, "color": "ff0000ff" },
+	{
+		"name": "back-arm4",
+		"parent": "back-arm3",
+		"length": 33.3,
+		"rotation": 14.61,
+		"x": 32.04,
+		"y": 0.82,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-arm5",
+		"parent": "back-arm4",
+		"length": 37.41,
+		"rotation": 11.31,
+		"x": 33.82,
+		"y": 0.02,
+		"color": "ff0000ff"
+	},
 	{ "name": "back-arm-ik-target", "parent": "root", "x": 103.52, "y": 345.27, "color": "ff3f00ff" },
-	{ "name": "back-arm-ik1", "parent": "spine4", "length": 66.57, "rotation": -152.7, "x": 16.34, "y": -4.46, "color": "ff0000ff" },
+	{
+		"name": "back-arm-ik1",
+		"parent": "spine4",
+		"length": 66.57,
+		"rotation": -152.7,
+		"x": 16.34,
+		"y": -4.46,
+		"color": "ff0000ff"
+	},
 	{ "name": "back-arm-ik2", "parent": "back-arm-ik1", "length": 66.01, "rotation": 19.36, "x": 66.57, "color": "ff0000ff" },
 	{
 		"name": "back-foot1",
@@ -59,16 +108,80 @@
 		"transform": "noScale",
 		"color": "ff0000ff"
 	},
-	{ "name": "back-leg1", "parent": "hip", "length": 41, "rotation": -83.66, "x": 10.41, "y": 1.04, "color": "ff0000ff" },
+	{
+		"name": "back-leg1",
+		"parent": "hip",
+		"length": 41,
+		"rotation": -83.66,
+		"x": 10.41,
+		"y": 1.04,
+		"color": "ff0000ff"
+	},
 	{ "name": "back-leg2", "parent": "back-leg1", "length": 41, "rotation": -4.07, "x": 34.57, "color": "ff0000ff" },
-	{ "name": "back-leg3", "parent": "back-leg1", "length": 41, "rotation": -5.24, "x": 81.79, "y": -2.29, "color": "ff0000ff" },
-	{ "name": "back-leg4", "parent": "back-leg1", "length": 41, "rotation": -16.6, "x": 121.21, "y": -11.27, "color": "ff0000ff" },
-	{ "name": "back-leg5", "parent": "back-leg1", "length": 41, "rotation": -32.36, "x": 160.16, "y": -24.86, "color": "ff0000ff" },
-	{ "name": "back-leg6", "parent": "back-leg1", "length": 41, "rotation": -30.76, "x": 197.04, "y": -39.98, "color": "ff0000ff" },
-	{ "name": "back-leg7", "parent": "back-leg1", "length": 41, "rotation": -30.63, "x": 233.19, "y": -57.32, "color": "ff0000ff" },
-	{ "name": "back-leg8", "parent": "back-leg1", "length": 41, "rotation": -33.79, "x": 267.29, "y": -77.39, "color": "ff0000ff" },
+	{
+		"name": "back-leg3",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -5.24,
+		"x": 81.79,
+		"y": -2.29,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-leg4",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -16.6,
+		"x": 121.21,
+		"y": -11.27,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-leg5",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -32.36,
+		"x": 160.16,
+		"y": -24.86,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-leg6",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -30.76,
+		"x": 197.04,
+		"y": -39.98,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-leg7",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -30.63,
+		"x": 233.19,
+		"y": -57.32,
+		"color": "ff0000ff"
+	},
+	{
+		"name": "back-leg8",
+		"parent": "back-leg1",
+		"length": 41,
+		"rotation": -33.79,
+		"x": 267.29,
+		"y": -77.39,
+		"color": "ff0000ff"
+	},
 	{ "name": "back-leg-ik-target", "parent": "root", "x": 46.15, "y": 8.68, "color": "ff3f00ff" },
-	{ "name": "back-leg-ik1", "parent": "hip", "length": 140.17, "rotation": -88.1, "x": 9.63, "y": -0.38, "color": "ff0000ff" },
+	{
+		"name": "back-leg-ik1",
+		"parent": "hip",
+		"length": 140.17,
+		"rotation": -88.1,
+		"x": 9.63,
+		"y": -0.38,
+		"color": "ff0000ff"
+	},
 	{
 		"name": "back-leg-ik2",
 		"parent": "back-leg-ik1",
@@ -90,8 +203,24 @@
 		"transform": "noScale",
 		"color": "4eff00ff"
 	},
-	{ "name": "front-arm2", "parent": "front-arm1", "length": 35.67, "rotation": -0.44, "x": 38.33, "y": 0.01, "color": "4eff00ff" },
-	{ "name": "front-arm3", "parent": "front-arm2", "length": 32.65, "rotation": 14.45, "x": 35.67, "y": -0.02, "color": "4eff00ff" },
+	{
+		"name": "front-arm2",
+		"parent": "front-arm1",
+		"length": 35.67,
+		"rotation": -0.44,
+		"x": 38.33,
+		"y": 0.01,
+		"color": "4eff00ff"
+	},
+	{
+		"name": "front-arm3",
+		"parent": "front-arm2",
+		"length": 32.65,
+		"rotation": 14.45,
+		"x": 35.67,
+		"y": -0.02,
+		"color": "4eff00ff"
+	},
 	{ "name": "front-arm4", "parent": "front-arm3", "length": 29.18, "rotation": 13.89, "x": 32.65, "color": "4eff00ff" },
 	{
 		"name": "front-arm5",
@@ -103,7 +232,15 @@
 		"color": "4eff00ff"
 	},
 	{ "name": "front-arm-ik", "parent": "root", "x": -92.44, "y": 331.78, "color": "ff3f00ff" },
-	{ "name": "front-arm-ik1", "parent": "spine4", "length": 69.56, "rotation": 117.86, "x": 27.36, "y": 4.22, "color": "50ff00ff" },
+	{
+		"name": "front-arm-ik1",
+		"parent": "spine4",
+		"length": 69.56,
+		"rotation": 117.86,
+		"x": 27.36,
+		"y": 4.22,
+		"color": "50ff00ff"
+	},
 	{ "name": "front-arm-ik2", "parent": "front-arm-ik1", "length": 66.72, "rotation": 20.13, "x": 69.56, "color": "50ff00ff" },
 	{
 		"name": "front-foot1",
@@ -117,16 +254,88 @@
 	},
 	{ "name": "front-foot2", "parent": "front-foot1", "length": 29.12, "rotation": 9.61, "x": 26.3, "color": "50ff00ff" },
 	{ "name": "front-foot3", "parent": "front-foot2", "length": 23.49, "rotation": 8.91, "x": 29.12, "color": "50ff00ff" },
-	{ "name": "front-leg1", "parent": "hip", "length": 37.2, "rotation": -88.97, "x": -23.57, "y": -2, "color": "4fff00ff" },
-	{ "name": "front-leg2", "parent": "front-leg1", "length": 37.2, "rotation": 3.45, "x": 33.75, "y": 0.01, "color": "4fff00ff" },
-	{ "name": "front-leg3", "parent": "front-leg1", "length": 37.2, "rotation": -6.12, "x": 74.4, "y": -1.08, "color": "4fff00ff" },
-	{ "name": "front-leg4", "parent": "front-leg1", "length": 37.2, "rotation": -10.02, "x": 111.4, "y": -5.28, "color": "4fff00ff" },
-	{ "name": "front-leg5", "parent": "front-leg1", "length": 37.2, "rotation": -28.4, "x": 147.76, "y": -14.99, "color": "4fff00ff" },
-	{ "name": "front-leg6", "parent": "front-leg1", "length": 37.2, "rotation": -24.33, "x": 182.41, "y": -27.57, "color": "4fff00ff" },
-	{ "name": "front-leg7", "parent": "front-leg1", "length": 37.2, "rotation": -23, "x": 216.44, "y": -42.55, "color": "4fff00ff" },
-	{ "name": "front-leg8", "parent": "front-leg1", "length": 37.2, "rotation": -31.81, "x": 248.61, "y": -61.03, "color": "4fff00ff" },
+	{
+		"name": "front-leg1",
+		"parent": "hip",
+		"length": 37.2,
+		"rotation": -88.97,
+		"x": -23.57,
+		"y": -2,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg2",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": 3.45,
+		"x": 33.75,
+		"y": 0.01,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg3",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -6.12,
+		"x": 74.4,
+		"y": -1.08,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg4",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -10.02,
+		"x": 111.4,
+		"y": -5.28,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg5",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -28.4,
+		"x": 147.76,
+		"y": -14.99,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg6",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -24.33,
+		"x": 182.41,
+		"y": -27.57,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg7",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -23,
+		"x": 216.44,
+		"y": -42.55,
+		"color": "4fff00ff"
+	},
+	{
+		"name": "front-leg8",
+		"parent": "front-leg1",
+		"length": 37.2,
+		"rotation": -31.81,
+		"x": 248.61,
+		"y": -61.03,
+		"color": "4fff00ff"
+	},
 	{ "name": "front-leg-ik-target", "parent": "root", "x": -37.74, "y": 5.03, "color": "ff3f00ff" },
-	{ "name": "front-leg-ik1", "parent": "hip", "length": 140.67, "rotation": -89.23, "x": -23.99, "y": 1.89, "color": "50ff00ff" },
+	{
+		"name": "front-leg-ik1",
+		"parent": "hip",
+		"length": 140.67,
+		"rotation": -89.23,
+		"x": -23.99,
+		"y": 1.89,
+		"color": "50ff00ff"
+	},
 	{
 		"name": "front-leg-ik2",
 		"parent": "front-leg-ik1",
@@ -136,7 +345,15 @@
 		"y": 0.03,
 		"color": "50ff00ff"
 	},
-	{ "name": "neck1", "parent": "spine4", "length": 13.45, "rotation": -30.66, "x": 38.97, "y": -0.83, "color": "ffbd00ff" },
+	{
+		"name": "neck1",
+		"parent": "spine4",
+		"length": 13.45,
+		"rotation": -30.66,
+		"x": 38.97,
+		"y": -0.83,
+		"color": "ffbd00ff"
+	},
 	{ "name": "neck2", "parent": "neck1", "length": 14.13, "rotation": -11.41, "x": 13.45, "color": "ffbd00ff" },
 	{
 		"name": "head",

Fișier diff suprimat deoarece este prea mare
+ 0 - 0
spine-love/data/stretchyman-stretchy-ik.json


+ 1441 - 261
spine-love/data/tank-pro.json

@@ -1,12 +1,5 @@
 {
-"skeleton": {
-	"hash": "JWZpG/bZaODL9WMrHd/eWznhkD0",
-	"spine": "3.7.08-beta",
-	"width": 7202.61,
-	"height": 1298.88,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "JWZpG/bZaODL9WMrHd/eWznhkD0", "spine": "3.7.19-beta", "width": 7202.61, "height": 1298.88, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
 	{ "name": "tank-root", "parent": "root", "y": 146.79 },
@@ -44,7 +37,15 @@
 	},
 	{ "name": "machinegun-tip", "parent": "machinegun", "x": 210.43, "y": -12.21 },
 	{ "name": "rock", "parent": "root", "x": -1925.2, "y": 33.17 },
-	{ "name": "smoke-root", "parent": "tank-root", "x": -1200.38, "y": 405.76, "scaleX": -6.5, "scaleY": 6.5, "color": "ff4000ff" },
+	{
+		"name": "smoke-root",
+		"parent": "tank-root",
+		"x": -1200.38,
+		"y": 405.76,
+		"scaleX": -6.5,
+		"scaleY": 6.5,
+		"color": "ff4000ff"
+	},
 	{
 		"name": "smoke1",
 		"parent": "smoke-root",
@@ -318,40 +319,312 @@
 		"color": "e64344ff"
 	},
 	{ "name": "tread2", "parent": "tread", "length": 82, "x": 82, "color": "e64344ff" },
-	{ "name": "tread3", "parent": "tread", "length": 82, "rotation": -8.91, "x": 163.01, "y": -12.61, "color": "e64344ff" },
-	{ "name": "tread4", "parent": "tread", "length": 82, "rotation": -29.27, "x": 234.55, "y": -52.43, "color": "e64344ff" },
-	{ "name": "tread5", "parent": "tread", "length": 82, "rotation": -45.26, "x": 292.26, "y": -110.28, "color": "e64344ff" },
-	{ "name": "tread6", "parent": "tread", "length": 82, "rotation": -15.29, "x": 371.36, "y": -131.76, "color": "e64344ff" },
-	{ "name": "tread7", "parent": "tread", "length": 82, "rotation": -5.49, "x": 452.98, "y": -139.55, "color": "e64344ff" },
-	{ "name": "tread8", "parent": "tread", "length": 82, "rotation": -24.99, "x": 527.31, "y": -173.95, "color": "e64344ff" },
-	{ "name": "tread9", "parent": "tread", "length": 82, "rotation": -5.44, "x": 608.94, "y": -181.68, "color": "e64344ff" },
-	{ "name": "tread10", "parent": "tread", "length": 82, "rotation": 48.85, "x": 662.9, "y": -120.35, "color": "e64344ff" },
-	{ "name": "tread11", "parent": "tread", "length": 82, "rotation": 97.99, "x": 651.5, "y": -39.69, "color": "e64344ff" },
-	{ "name": "tread12", "parent": "tread", "length": 82, "rotation": 113.79, "x": 618.43, "y": 34.83, "color": "e64344ff" },
-	{ "name": "tread13", "parent": "tread", "length": 82, "rotation": 122.96, "x": 573.82, "y": 103.18, "color": "e64344ff" },
-	{ "name": "tread14", "parent": "tread", "length": 82, "rotation": 142.01, "x": 509.19, "y": 153.3, "color": "e64344ff" },
-	{ "name": "tread15", "parent": "tread", "length": 82, "rotation": 157.84, "x": 433.25, "y": 184.02, "color": "e64344ff" },
-	{ "name": "tread16", "parent": "tread", "length": 82, "rotation": 157.37, "x": 357.56, "y": 215.37, "color": "e64344ff" },
-	{ "name": "tread17", "parent": "tread", "length": 82, "rotation": 157.29, "x": 281.92, "y": 246.8, "color": "e64344ff" },
-	{ "name": "tread18", "parent": "tread", "length": 82, "rotation": 157.19, "x": 206.33, "y": 278.38, "color": "e64344ff" },
-	{ "name": "tread19", "parent": "tread", "length": 82, "rotation": 157.14, "x": 130.77, "y": 310.02, "color": "e64344ff" },
-	{ "name": "tread20", "parent": "tread", "length": 82, "rotation": 157.34, "x": 55.1, "y": 341.41, "color": "e64344ff" },
-	{ "name": "tread21", "parent": "tread", "length": 82, "rotation": 158.11, "x": -20.99, "y": 371.77, "color": "e64344ff" },
-	{ "name": "tread22", "parent": "tread", "length": 82, "rotation": 157.99, "x": -97.02, "y": 402.28, "color": "e64344ff" },
-	{ "name": "tread23", "parent": "tread", "length": 82, "rotation": 157.59, "x": -172.83, "y": 433.33, "color": "e64344ff" },
-	{ "name": "tread24", "parent": "tread", "length": 82, "rotation": 156.86, "x": -248.23, "y": 465.34, "color": "e64344ff" },
-	{ "name": "tread25", "parent": "tread", "length": 82, "rotation": 177.94, "x": -330.17, "y": 468.27, "color": "e64344ff" },
-	{ "name": "tread26", "parent": "tread", "length": 82, "rotation": -169.55, "x": -410.81, "y": 453.5, "color": "e64344ff" },
-	{ "name": "tread27", "parent": "tread", "length": 82, "rotation": -163.86, "x": -489.58, "y": 430.86, "color": "e64344ff" },
-	{ "name": "tread28", "parent": "tread", "length": 82, "rotation": -139.13, "x": -551.59, "y": 377.57, "color": "e64344ff" },
-	{ "name": "tread29", "parent": "tread", "length": 82, "rotation": -89.04, "x": -550.21, "y": 296.14, "color": "e64344ff" },
-	{ "name": "tread30", "parent": "tread", "length": 82, "rotation": -38.99, "x": -486.48, "y": 244.89, "color": "e64344ff" },
-	{ "name": "tread31", "parent": "tread", "length": 82, "rotation": -20.04, "x": -409.45, "y": 216.98, "color": "e64344ff" },
-	{ "name": "tread32", "parent": "tread", "length": 82, "rotation": -46.24, "x": -352.74, "y": 158.15, "color": "e64344ff" },
-	{ "name": "tread33", "parent": "tread", "length": 82, "rotation": -27.95, "x": -280.3, "y": 119.98, "color": "e64344ff" },
-	{ "name": "tread34", "parent": "tread", "length": 82, "rotation": 10.46, "x": -199.66, "y": 134.77, "color": "e64344ff" },
-	{ "name": "tread35", "parent": "tread", "length": 82, "rotation": -17.9, "x": -121.63, "y": 109.73, "color": "e64344ff" },
-	{ "name": "tread36", "parent": "tread", "length": 82, "rotation": -36.82, "x": -55.99, "y": 60.92, "color": "fbff00ff" },
+	{
+		"name": "tread3",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -8.91,
+		"x": 163.01,
+		"y": -12.61,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread4",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -29.27,
+		"x": 234.55,
+		"y": -52.43,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread5",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -45.26,
+		"x": 292.26,
+		"y": -110.28,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread6",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -15.29,
+		"x": 371.36,
+		"y": -131.76,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread7",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -5.49,
+		"x": 452.98,
+		"y": -139.55,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread8",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -24.99,
+		"x": 527.31,
+		"y": -173.95,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread9",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -5.44,
+		"x": 608.94,
+		"y": -181.68,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread10",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 48.85,
+		"x": 662.9,
+		"y": -120.35,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread11",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 97.99,
+		"x": 651.5,
+		"y": -39.69,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread12",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 113.79,
+		"x": 618.43,
+		"y": 34.83,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread13",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 122.96,
+		"x": 573.82,
+		"y": 103.18,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread14",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 142.01,
+		"x": 509.19,
+		"y": 153.3,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread15",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.84,
+		"x": 433.25,
+		"y": 184.02,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread16",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.37,
+		"x": 357.56,
+		"y": 215.37,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread17",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.29,
+		"x": 281.92,
+		"y": 246.8,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread18",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.19,
+		"x": 206.33,
+		"y": 278.38,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread19",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.14,
+		"x": 130.77,
+		"y": 310.02,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread20",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.34,
+		"x": 55.1,
+		"y": 341.41,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread21",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 158.11,
+		"x": -20.99,
+		"y": 371.77,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread22",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.99,
+		"x": -97.02,
+		"y": 402.28,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread23",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 157.59,
+		"x": -172.83,
+		"y": 433.33,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread24",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 156.86,
+		"x": -248.23,
+		"y": 465.34,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread25",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 177.94,
+		"x": -330.17,
+		"y": 468.27,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread26",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -169.55,
+		"x": -410.81,
+		"y": 453.5,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread27",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -163.86,
+		"x": -489.58,
+		"y": 430.86,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread28",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -139.13,
+		"x": -551.59,
+		"y": 377.57,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread29",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -89.04,
+		"x": -550.21,
+		"y": 296.14,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread30",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -38.99,
+		"x": -486.48,
+		"y": 244.89,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread31",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -20.04,
+		"x": -409.45,
+		"y": 216.98,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread32",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -46.24,
+		"x": -352.74,
+		"y": 158.15,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread33",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -27.95,
+		"x": -280.3,
+		"y": 119.98,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread34",
+		"parent": "tread",
+		"length": 82,
+		"rotation": 10.46,
+		"x": -199.66,
+		"y": 134.77,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread35",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -17.9,
+		"x": -121.63,
+		"y": 109.73,
+		"color": "e64344ff"
+	},
+	{
+		"name": "tread36",
+		"parent": "tread",
+		"length": 82,
+		"rotation": -36.82,
+		"x": -55.99,
+		"y": 60.92,
+		"color": "fbff00ff"
+	},
 	{ "name": "wheel-mid-center", "parent": "tank-root", "y": -66.21 },
 	{ "name": "tread-collider1", "parent": "wheel-mid-center", "x": -329.58, "y": -85.44, "color": "ff00fbff" },
 	{ "name": "tread-collider2", "parent": "wheel-mid-center", "x": -165.95, "y": -85.44, "color": "ff00fbff" },
@@ -477,62 +750,14 @@
 	{ "name": "wheel-small", "bone": "wheel-small1", "attachment": "wheel-small" },
 	{ "name": "wheel-small2", "bone": "wheel-small2", "attachment": "wheel-small" },
 	{ "name": "wheel-small3", "bone": "wheel-small3", "attachment": "wheel-small" },
-	{
-		"name": "wheel-mid-overlay",
-		"bone": "wheel-mid-root1",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay2",
-		"bone": "wheel-mid-root2",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay3",
-		"bone": "wheel-mid-root3",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay4",
-		"bone": "wheel-mid-root4",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay5",
-		"bone": "wheel-mid-root5",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-mid-overlay6",
-		"bone": "wheel-mid-root6",
-		"color": "ffffffec",
-		"attachment": "wheel-mid-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-big-overlay1",
-		"bone": "wheel-big-root1",
-		"color": "ffffffe9",
-		"attachment": "wheel-big-overlay",
-		"blend": "multiply"
-	},
-	{
-		"name": "wheel-big-overlay2",
-		"bone": "wheel-big-root2",
-		"color": "ffffffe9",
-		"attachment": "wheel-big-overlay",
-		"blend": "multiply"
-	},
+	{ "name": "wheel-mid-overlay", "bone": "wheel-mid-root1", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay2", "bone": "wheel-mid-root2", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay3", "bone": "wheel-mid-root3", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay4", "bone": "wheel-mid-root4", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay5", "bone": "wheel-mid-root5", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-mid-overlay6", "bone": "wheel-mid-root6", "color": "ffffffec", "attachment": "wheel-mid-overlay", "blend": "multiply" },
+	{ "name": "wheel-big-overlay1", "bone": "wheel-big-root1", "color": "ffffffe9", "attachment": "wheel-big-overlay", "blend": "multiply" },
+	{ "name": "wheel-big-overlay2", "bone": "wheel-big-root2", "color": "ffffffe9", "attachment": "wheel-big-overlay", "blend": "multiply" },
 	{ "name": "treads", "bone": "tank-root", "attachment": "treads" },
 	{ "name": "tread", "bone": "tread", "attachment": "tread" },
 	{ "name": "tread27", "bone": "tread27", "color": "adc9b8ff", "attachment": "tread" },
@@ -714,44 +939,7 @@
 	{
 		"name": "treads",
 		"order": 2,
-		"bones": [
-			"tread",
-			"tread2",
-			"tread3",
-			"tread4",
-			"tread5",
-			"tread6",
-			"tread7",
-			"tread8",
-			"tread9",
-			"tread10",
-			"tread11",
-			"tread12",
-			"tread13",
-			"tread14",
-			"tread15",
-			"tread16",
-			"tread17",
-			"tread18",
-			"tread19",
-			"tread20",
-			"tread21",
-			"tread22",
-			"tread23",
-			"tread24",
-			"tread25",
-			"tread26",
-			"tread27",
-			"tread28",
-			"tread29",
-			"tread30",
-			"tread31",
-			"tread32",
-			"tread33",
-			"tread34",
-			"tread35",
-			"tread36"
-		],
+		"bones": [ "tread", "tread2", "tread3", "tread4", "tread5", "tread6", "tread7", "tread8", "tread9", "tread10", "tread11", "tread12", "tread13", "tread14", "tread15", "tread16", "tread17", "tread18", "tread19", "tread20", "tread21", "tread22", "tread23", "tread24", "tread25", "tread26", "tread27", "tread28", "tread29", "tread30", "tread31", "tread32", "tread33", "tread34", "tread35", "tread36" ],
 		"target": "treads",
 		"rotateMode": "chain"
 	}
@@ -843,232 +1031,1224 @@
 			}
 		},
 		"smoke-puff1-bg": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg10": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg11": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg12": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg13": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg14": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg15": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg16": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg17": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg18": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg2": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg20": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg21": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg22": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg23": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg24": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg25": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg26": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg27": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg3": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg4": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg5": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg6": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg7": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg8": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-bg9": {
-			"smoke-puff01-bg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 }
+			"smoke-puff01-bg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			}
 		},
 		"smoke-puff1-fg": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg10": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg11": {
-			"smoke-puff04-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff04-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg12": {
-			"smoke-puff04-fg": { "x": -1.27, "y": -0.37, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff04-fg": {
+				"x": -1.27,
+				"y": -0.37,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg13": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg14": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg15": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg16": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg17": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg18": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg2": {
-			"smoke-puff01-fg": { "x": -1.01, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.82, "y": -0.39, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.82, "y": -0.39, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.82, "y": -0.39, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -1.01,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.82,
+				"y": -0.39,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.82,
+				"y": -0.39,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.82,
+				"y": -0.39,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg20": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg21": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg22": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg23": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg24": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg25": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg26": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg27": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.38, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.38,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg3": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.02, "y": -0.25, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.115, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.03, "y": -0.43, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.02,
+				"y": -0.25,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.115,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.03,
+				"y": -0.43,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg4": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.63, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.63, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.63, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.63,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.63,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.63,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg5": {
-			"smoke-puff01-fg": { "x": -1.21, "y": -0.08, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.89, "y": -0.04, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.89, "y": -0.04, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.89, "y": -0.04, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -1.21,
+				"y": -0.08,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.89,
+				"y": -0.04,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.89,
+				"y": -0.04,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.89,
+				"y": -0.04,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg6": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.48, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.48, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -1.48, "y": -0.07, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.48,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.48,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -1.48,
+				"y": -0.07,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg7": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -0.7, "y": -0.36, "scaleX": 0.122, "scaleY": 0.121, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -0.56, "y": -0.15, "scaleX": 0.122, "scaleY": 0.122, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -0.56, "y": -0.15, "scaleX": 0.122, "scaleY": 0.122, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -0.7,
+				"y": -0.36,
+				"scaleX": 0.122,
+				"scaleY": 0.121,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -0.56,
+				"y": -0.15,
+				"scaleX": 0.122,
+				"scaleY": 0.122,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -0.56,
+				"y": -0.15,
+				"scaleX": 0.122,
+				"scaleY": 0.122,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg8": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -0.65, "y": 0.01, "scaleX": 0.123, "scaleY": 0.123, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -0.75, "y": -0.15, "scaleX": 0.121, "scaleY": 0.121, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -0.75, "y": -0.15, "scaleX": 0.121, "scaleY": 0.121, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -0.65,
+				"y": 0.01,
+				"scaleX": 0.123,
+				"scaleY": 0.123,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -0.75,
+				"y": -0.15,
+				"scaleX": 0.121,
+				"scaleY": 0.121,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -0.75,
+				"y": -0.15,
+				"scaleX": 0.121,
+				"scaleY": 0.121,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"smoke-puff1-fg9": {
-			"smoke-puff01-fg": { "x": -0.5, "y": -0.12, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 175, "height": 118 },
-			"smoke-puff02-fg": { "x": -1.99, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff03-fg": { "x": -1.99, "y": -0.09, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 184, "height": 123 },
-			"smoke-puff04-fg": { "x": -0.95, "y": -0.48, "scaleX": 0.111, "scaleY": 0.111, "rotation": 88.58, "width": 155, "height": 96 }
+			"smoke-puff01-fg": {
+				"x": -0.5,
+				"y": -0.12,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 175,
+				"height": 118
+			},
+			"smoke-puff02-fg": {
+				"x": -1.99,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff03-fg": {
+				"x": -1.99,
+				"y": -0.09,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 184,
+				"height": 123
+			},
+			"smoke-puff04-fg": {
+				"x": -0.95,
+				"y": -0.48,
+				"scaleX": 0.111,
+				"scaleY": 0.111,
+				"rotation": 88.58,
+				"width": 155,
+				"height": 96
+			}
 		},
 		"tank-body-shadow": {
 			"tank-bottom-shadow": { "x": -11.44, "y": -42.89, "width": 1291, "height": 341 }

+ 118 - 21
spine-love/data/vine-pro.json

@@ -1,28 +1,125 @@
 {
-"skeleton": {
-	"hash": "XMSifyRDWIo7mCMhHJDVKSi+XxE",
-	"spine": "3.7.08-beta",
-	"width": 227.33,
-	"height": 841.07,
-	"images": "./images/",
-	"audio": ""
-},
+"skeleton": { "hash": "XMSifyRDWIo7mCMhHJDVKSi+XxE", "spine": "3.7.19-beta", "width": 227.33, "height": 841.07, "images": "./images/", "audio": "" },
 "bones": [
 	{ "name": "root" },
-	{ "name": "vine1", "parent": "root", "length": 74, "rotation": 90, "x": 339.1, "y": -467.15, "color": "f700ffff" },
+	{
+		"name": "vine1",
+		"parent": "root",
+		"length": 74,
+		"rotation": 90,
+		"x": 339.1,
+		"y": -467.15,
+		"color": "f700ffff"
+	},
 	{ "name": "vine2", "parent": "vine1", "length": 74, "x": 74, "color": "f700ffff" },
-	{ "name": "vine3", "parent": "vine1", "length": 74, "rotation": 38.95, "x": 137.97, "y": 47.51, "color": "f700ffff" },
-	{ "name": "vine4", "parent": "vine1", "length": 74, "rotation": 16.68, "x": 214.29, "y": 68.52, "color": "f700ffff" },
-	{ "name": "vine5", "parent": "vine1", "length": 74, "rotation": -21.74, "x": 289.61, "y": 40.93, "color": "f700ffff" },
-	{ "name": "vine6", "parent": "vine1", "length": 74, "rotation": -50.04, "x": 341.13, "y": -15.58, "color": "f700ffff" },
-	{ "name": "vine7", "parent": "vine1", "length": 74, "rotation": -39.26, "x": 402.7, "y": -61.82, "color": "f700ffff" },
-	{ "name": "vine8", "parent": "vine1", "length": 74, "rotation": -6.18, "x": 483.27, "y": -69.84, "color": "f700ffff" },
-	{ "name": "vine9", "parent": "vine1", "length": 74, "rotation": 27.11, "x": 554.26, "y": -36.44, "color": "f700ffff" },
-	{ "name": "vine10", "parent": "vine1", "length": 74, "rotation": 48, "x": 608.63, "y": 19.06, "color": "f700ffff" },
-	{ "name": "vine11", "parent": "vine1", "length": 74, "rotation": 39.71, "x": 670.66, "y": 66.4, "color": "f700ffff" },
-	{ "name": "vine12", "parent": "vine1", "length": 74, "rotation": 10.73, "x": 750.1, "y": 80.23, "color": "f700ffff" },
-	{ "name": "vine13", "parent": "vine1", "length": 74, "rotation": -18.44, "x": 826.07, "y": 56.95, "color": "f700ffff" },
-	{ "name": "vine-control1", "parent": "root", "length": 296.68, "rotation": 88.65, "x": -2.51, "y": 2.55, "color": "ff0004ff" },
+	{
+		"name": "vine3",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 38.95,
+		"x": 137.97,
+		"y": 47.51,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine4",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 16.68,
+		"x": 214.29,
+		"y": 68.52,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine5",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": -21.74,
+		"x": 289.61,
+		"y": 40.93,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine6",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": -50.04,
+		"x": 341.13,
+		"y": -15.58,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine7",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": -39.26,
+		"x": 402.7,
+		"y": -61.82,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine8",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": -6.18,
+		"x": 483.27,
+		"y": -69.84,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine9",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 27.11,
+		"x": 554.26,
+		"y": -36.44,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine10",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 48,
+		"x": 608.63,
+		"y": 19.06,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine11",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 39.71,
+		"x": 670.66,
+		"y": 66.4,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine12",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": 10.73,
+		"x": 750.1,
+		"y": 80.23,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine13",
+		"parent": "vine1",
+		"length": 74,
+		"rotation": -18.44,
+		"x": 826.07,
+		"y": 56.95,
+		"color": "f700ffff"
+	},
+	{
+		"name": "vine-control1",
+		"parent": "root",
+		"length": 296.68,
+		"rotation": 88.65,
+		"x": -2.51,
+		"y": 2.55,
+		"color": "ff0004ff"
+	},
 	{ "name": "vine-control2", "parent": "vine-control1", "length": 292.6, "rotation": 0.96, "x": 296.68, "color": "ff0004ff" },
 	{ "name": "vine-control3", "parent": "vine-control2", "length": 247.5, "rotation": 0.16, "x": 292.6, "color": "ff0004ff" },
 	{ "name": "vine-control4", "parent": "vine-control3", "length": 212.43, "rotation": 0.5, "x": 247.5, "color": "ff0004ff" }

+ 1 - 1
spine-love/main.lua

@@ -127,7 +127,7 @@ function love.update (delta)
 end
 
 function love.draw ()
-	love.graphics.setBackgroundColor(128, 128, 128, 255)
+	love.graphics.setBackgroundColor(0, 0, 0, 255)
 	love.graphics.setColor(255, 255, 255)
 	local skeleton = skeletons[activeSkeleton].skeleton
 	

Unele fișiere nu au fost afișate deoarece prea multe fișiere au fost modificate în acest diff