@esotericsoftware/spine-core 4.0.7 → 4.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/dist/Animation.js +577 -710
  2. package/dist/AnimationState.js +239 -259
  3. package/dist/AnimationStateData.js +15 -17
  4. package/dist/AssetManagerBase.d.ts +3 -0
  5. package/dist/AssetManagerBase.js +168 -147
  6. package/dist/AtlasAttachmentLoader.js +20 -22
  7. package/dist/Bone.js +89 -91
  8. package/dist/BoneData.js +4 -6
  9. package/dist/ConstraintData.js +4 -6
  10. package/dist/Event.js +4 -6
  11. package/dist/EventData.js +4 -6
  12. package/dist/IkConstraint.js +48 -50
  13. package/dist/IkConstraintData.js +12 -31
  14. package/dist/PathConstraint.js +116 -118
  15. package/dist/PathConstraintData.js +9 -28
  16. package/dist/Skeleton.d.ts +0 -4
  17. package/dist/Skeleton.js +190 -213
  18. package/dist/SkeletonBinary.js +352 -363
  19. package/dist/SkeletonBounds.js +79 -81
  20. package/dist/SkeletonClipping.js +86 -88
  21. package/dist/SkeletonData.d.ts +0 -2
  22. package/dist/SkeletonData.js +46 -66
  23. package/dist/SkeletonJson.js +307 -307
  24. package/dist/Skin.js +65 -69
  25. package/dist/Slot.js +16 -18
  26. package/dist/SlotData.js +4 -6
  27. package/dist/Texture.js +14 -39
  28. package/dist/TextureAtlas.js +56 -85
  29. package/dist/TransformConstraint.js +77 -79
  30. package/dist/TransformConstraintData.js +20 -39
  31. package/dist/Triangulator.js +71 -73
  32. package/dist/Updatable.js +1 -1
  33. package/dist/Utils.js +183 -245
  34. package/dist/VertexEffect.js +1 -1
  35. package/dist/attachments/Attachment.js +41 -62
  36. package/dist/attachments/AttachmentLoader.js +1 -1
  37. package/dist/attachments/BoundingBoxAttachment.js +9 -28
  38. package/dist/attachments/ClippingAttachment.js +9 -28
  39. package/dist/attachments/MeshAttachment.js +29 -48
  40. package/dist/attachments/PathAttachment.js +11 -30
  41. package/dist/attachments/PointAttachment.js +16 -35
  42. package/dist/attachments/RegionAttachment.js +82 -101
  43. package/dist/attachments/index.js +1 -1
  44. package/dist/iife/spine-core.js +89 -85
  45. package/dist/iife/spine-core.js.map +2 -2
  46. package/dist/iife/spine-core.min.js +2 -2
  47. package/dist/index.js +1 -1
  48. package/dist/polyfills.js +2 -2
  49. package/dist/vertexeffects/JitterEffect.js +10 -12
  50. package/dist/vertexeffects/SwirlEffect.js +18 -20
  51. package/package.json +1 -1
  52. package/dist/Animation.js.map +0 -1
  53. package/dist/AnimationState.js.map +0 -1
  54. package/dist/AnimationStateData.js.map +0 -1
  55. package/dist/AssetManagerBase.js.map +0 -1
  56. package/dist/AtlasAttachmentLoader.js.map +0 -1
  57. package/dist/Bone.js.map +0 -1
  58. package/dist/BoneData.js.map +0 -1
  59. package/dist/ConstraintData.js.map +0 -1
  60. package/dist/Event.js.map +0 -1
  61. package/dist/EventData.js.map +0 -1
  62. package/dist/IkConstraint.js.map +0 -1
  63. package/dist/IkConstraintData.js.map +0 -1
  64. package/dist/PathConstraint.js.map +0 -1
  65. package/dist/PathConstraintData.js.map +0 -1
  66. package/dist/Skeleton.js.map +0 -1
  67. package/dist/SkeletonBinary.js.map +0 -1
  68. package/dist/SkeletonBounds.js.map +0 -1
  69. package/dist/SkeletonClipping.js.map +0 -1
  70. package/dist/SkeletonData.js.map +0 -1
  71. package/dist/SkeletonJson.js.map +0 -1
  72. package/dist/Skin.js.map +0 -1
  73. package/dist/Slot.js.map +0 -1
  74. package/dist/SlotData.js.map +0 -1
  75. package/dist/Texture.js.map +0 -1
  76. package/dist/TextureAtlas.js.map +0 -1
  77. package/dist/TransformConstraint.js.map +0 -1
  78. package/dist/TransformConstraintData.js.map +0 -1
  79. package/dist/Triangulator.js.map +0 -1
  80. package/dist/Updatable.js.map +0 -1
  81. package/dist/Utils.js.map +0 -1
  82. package/dist/VertexEffect.js.map +0 -1
  83. package/dist/attachments/Attachment.js.map +0 -1
  84. package/dist/attachments/AttachmentLoader.js.map +0 -1
  85. package/dist/attachments/BoundingBoxAttachment.js.map +0 -1
  86. package/dist/attachments/ClippingAttachment.js.map +0 -1
  87. package/dist/attachments/MeshAttachment.js.map +0 -1
  88. package/dist/attachments/PathAttachment.js.map +0 -1
  89. package/dist/attachments/PointAttachment.js.map +0 -1
  90. package/dist/attachments/RegionAttachment.js.map +0 -1
  91. package/dist/attachments/index.js.map +0 -1
  92. package/dist/index.js.map +0 -1
  93. package/dist/polyfills.js.map +0 -1
  94. package/dist/vertexeffects/JitterEffect.js.map +0 -1
  95. package/dist/vertexeffects/SwirlEffect.js.map +0 -1
@@ -26,21 +26,6 @@
26
26
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27
27
  * THE SPINE RUNTIMES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
28
  *****************************************************************************/
29
- var __extends = (this && this.__extends) || (function () {
30
- var extendStatics = function (d, b) {
31
- extendStatics = Object.setPrototypeOf ||
32
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
33
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
34
- return extendStatics(d, b);
35
- };
36
- return function (d, b) {
37
- if (typeof b !== "function" && b !== null)
38
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
39
- extendStatics(d, b);
40
- function __() { this.constructor = d; }
41
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
42
- };
43
- })();
44
29
  import { Color, MathUtils } from "../Utils";
45
30
  import { VertexAttachment } from "./Attachment";
46
31
  /** An attachment which is a single point and a rotation. This can be used to spawn projectiles, particles, etc. A bone can be
@@ -48,35 +33,31 @@ import { VertexAttachment } from "./Attachment";
48
33
  * skin.
49
34
  *
50
35
  * See [Point Attachments](http://esotericsoftware.com/spine-point-attachments) in the Spine User Guide. */
51
- var PointAttachment = /** @class */ (function (_super) {
52
- __extends(PointAttachment, _super);
53
- function PointAttachment(name) {
54
- var _this = _super.call(this, name) || this;
36
+ export class PointAttachment extends VertexAttachment {
37
+ constructor(name) {
38
+ super(name);
55
39
  /** The color of the point attachment as it was in Spine. Available only when nonessential data was exported. Point attachments
56
40
  * are not usually rendered at runtime. */
57
- _this.color = new Color(0.38, 0.94, 0, 1);
58
- return _this;
41
+ this.color = new Color(0.38, 0.94, 0, 1);
59
42
  }
60
- PointAttachment.prototype.computeWorldPosition = function (bone, point) {
43
+ computeWorldPosition(bone, point) {
61
44
  point.x = this.x * bone.a + this.y * bone.b + bone.worldX;
62
45
  point.y = this.x * bone.c + this.y * bone.d + bone.worldY;
63
46
  return point;
64
- };
65
- PointAttachment.prototype.computeWorldRotation = function (bone) {
66
- var cos = MathUtils.cosDeg(this.rotation), sin = MathUtils.sinDeg(this.rotation);
67
- var x = cos * bone.a + sin * bone.b;
68
- var y = cos * bone.c + sin * bone.d;
47
+ }
48
+ computeWorldRotation(bone) {
49
+ let cos = MathUtils.cosDeg(this.rotation), sin = MathUtils.sinDeg(this.rotation);
50
+ let x = cos * bone.a + sin * bone.b;
51
+ let y = cos * bone.c + sin * bone.d;
69
52
  return Math.atan2(y, x) * MathUtils.radDeg;
70
- };
71
- PointAttachment.prototype.copy = function () {
72
- var copy = new PointAttachment(this.name);
53
+ }
54
+ copy() {
55
+ let copy = new PointAttachment(this.name);
73
56
  copy.x = this.x;
74
57
  copy.y = this.y;
75
58
  copy.rotation = this.rotation;
76
59
  copy.color.setFromColor(this.color);
77
60
  return copy;
78
- };
79
- return PointAttachment;
80
- }(VertexAttachment));
81
- export { PointAttachment };
82
- //# sourceMappingURL=PointAttachment.js.map
61
+ }
62
+ }
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUG9pbnRBdHRhY2htZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F0dGFjaG1lbnRzL1BvaW50QXR0YWNobWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OytFQTJCK0U7QUFHL0UsT0FBTyxFQUFFLEtBQUssRUFBVyxTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDckQsT0FBTyxFQUFFLGdCQUFnQixFQUFjLE1BQU0sY0FBYyxDQUFDO0FBRTVEOzs7OzJHQUkyRztBQUMzRyxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxnQkFBZ0I7SUFPcEQsWUFBYSxJQUFZO1FBQ3hCLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUxiO2tEQUMwQztRQUMxQyxVQUFLLEdBQUcsSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFJcEMsQ0FBQztJQUVELG9CQUFvQixDQUFFLElBQVUsRUFBRSxLQUFjO1FBQy9DLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzFELEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzFELE9BQU8sS0FBSyxDQUFDO0lBQ2QsQ0FBQztJQUVELG9CQUFvQixDQUFFLElBQVU7UUFDL0IsSUFBSSxHQUFHLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsR0FBRyxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2pGLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3BDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQztJQUM1QyxDQUFDO0lBRUQsSUFBSTtRQUNILElBQUksSUFBSSxHQUFHLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDaEIsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUM5QixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEMsT0FBTyxJQUFJLENBQUM7SUFDYixDQUFDO0NBQ0QifQ==
@@ -26,76 +26,59 @@
26
26
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27
27
  * THE SPINE RUNTIMES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
28
  *****************************************************************************/
29
- var __extends = (this && this.__extends) || (function () {
30
- var extendStatics = function (d, b) {
31
- extendStatics = Object.setPrototypeOf ||
32
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
33
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
34
- return extendStatics(d, b);
35
- };
36
- return function (d, b) {
37
- if (typeof b !== "function" && b !== null)
38
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
39
- extendStatics(d, b);
40
- function __() { this.constructor = d; }
41
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
42
- };
43
- })();
44
29
  import { Color, Utils } from "../Utils";
45
30
  import { Attachment } from "./Attachment";
46
31
  /** An attachment that displays a textured quadrilateral.
47
32
  *
48
33
  * See [Region attachments](http://esotericsoftware.com/spine-regions) in the Spine User Guide. */
49
- var RegionAttachment = /** @class */ (function (_super) {
50
- __extends(RegionAttachment, _super);
51
- function RegionAttachment(name) {
52
- var _this = _super.call(this, name) || this;
34
+ export class RegionAttachment extends Attachment {
35
+ constructor(name) {
36
+ super(name);
53
37
  /** The local x translation. */
54
- _this.x = 0;
38
+ this.x = 0;
55
39
  /** The local y translation. */
56
- _this.y = 0;
40
+ this.y = 0;
57
41
  /** The local scaleX. */
58
- _this.scaleX = 1;
42
+ this.scaleX = 1;
59
43
  /** The local scaleY. */
60
- _this.scaleY = 1;
44
+ this.scaleY = 1;
61
45
  /** The local rotation. */
62
- _this.rotation = 0;
46
+ this.rotation = 0;
63
47
  /** The width of the region attachment in Spine. */
64
- _this.width = 0;
48
+ this.width = 0;
65
49
  /** The height of the region attachment in Spine. */
66
- _this.height = 0;
50
+ this.height = 0;
67
51
  /** The color to tint the region attachment. */
68
- _this.color = new Color(1, 1, 1, 1);
52
+ this.color = new Color(1, 1, 1, 1);
69
53
  /** For each of the 4 vertices, a pair of <code>x,y</code> values that is the local position of the vertex.
70
54
  *
71
55
  * See {@link #updateOffset()}. */
72
- _this.offset = Utils.newFloatArray(8);
73
- _this.uvs = Utils.newFloatArray(8);
74
- _this.tempColor = new Color(1, 1, 1, 1);
75
- return _this;
56
+ this.offset = Utils.newFloatArray(8);
57
+ this.uvs = Utils.newFloatArray(8);
58
+ this.tempColor = new Color(1, 1, 1, 1);
76
59
  }
77
60
  /** Calculates the {@link #offset} using the region settings. Must be called after changing region settings. */
78
- RegionAttachment.prototype.updateOffset = function () {
79
- var region = this.region;
80
- var regionScaleX = this.width / this.region.originalWidth * this.scaleX;
81
- var regionScaleY = this.height / this.region.originalHeight * this.scaleY;
82
- var localX = -this.width / 2 * this.scaleX + this.region.offsetX * regionScaleX;
83
- var localY = -this.height / 2 * this.scaleY + this.region.offsetY * regionScaleY;
84
- var localX2 = localX + this.region.width * regionScaleX;
85
- var localY2 = localY + this.region.height * regionScaleY;
86
- var radians = this.rotation * Math.PI / 180;
87
- var cos = Math.cos(radians);
88
- var sin = Math.sin(radians);
89
- var x = this.x, y = this.y;
90
- var localXCos = localX * cos + x;
91
- var localXSin = localX * sin;
92
- var localYCos = localY * cos + y;
93
- var localYSin = localY * sin;
94
- var localX2Cos = localX2 * cos + x;
95
- var localX2Sin = localX2 * sin;
96
- var localY2Cos = localY2 * cos + y;
97
- var localY2Sin = localY2 * sin;
98
- var offset = this.offset;
61
+ updateOffset() {
62
+ let region = this.region;
63
+ let regionScaleX = this.width / this.region.originalWidth * this.scaleX;
64
+ let regionScaleY = this.height / this.region.originalHeight * this.scaleY;
65
+ let localX = -this.width / 2 * this.scaleX + this.region.offsetX * regionScaleX;
66
+ let localY = -this.height / 2 * this.scaleY + this.region.offsetY * regionScaleY;
67
+ let localX2 = localX + this.region.width * regionScaleX;
68
+ let localY2 = localY + this.region.height * regionScaleY;
69
+ let radians = this.rotation * Math.PI / 180;
70
+ let cos = Math.cos(radians);
71
+ let sin = Math.sin(radians);
72
+ let x = this.x, y = this.y;
73
+ let localXCos = localX * cos + x;
74
+ let localXSin = localX * sin;
75
+ let localYCos = localY * cos + y;
76
+ let localYSin = localY * sin;
77
+ let localX2Cos = localX2 * cos + x;
78
+ let localX2Sin = localX2 * sin;
79
+ let localY2Cos = localY2 * cos + y;
80
+ let localY2Sin = localY2 * sin;
81
+ let offset = this.offset;
99
82
  offset[0] = localXCos - localYSin;
100
83
  offset[1] = localYCos + localXSin;
101
84
  offset[2] = localXCos - localY2Sin;
@@ -104,10 +87,10 @@ var RegionAttachment = /** @class */ (function (_super) {
104
87
  offset[5] = localY2Cos + localX2Sin;
105
88
  offset[6] = localX2Cos - localYSin;
106
89
  offset[7] = localYCos + localX2Sin;
107
- };
108
- RegionAttachment.prototype.setRegion = function (region) {
90
+ }
91
+ setRegion(region) {
109
92
  this.region = region;
110
- var uvs = this.uvs;
93
+ let uvs = this.uvs;
111
94
  if (region.degrees == 90) {
112
95
  uvs[2] = region.u;
113
96
  uvs[3] = region.v2;
@@ -128,7 +111,7 @@ var RegionAttachment = /** @class */ (function (_super) {
128
111
  uvs[6] = region.u2;
129
112
  uvs[7] = region.v2;
130
113
  }
131
- };
114
+ }
132
115
  /** Transforms the attachment's four vertices to world coordinates.
133
116
  *
134
117
  * See [World transforms](http://esotericsoftware.com/spine-runtime-skeletons#World-transforms) in the Spine
@@ -136,11 +119,11 @@ var RegionAttachment = /** @class */ (function (_super) {
136
119
  * @param worldVertices The output world vertices. Must have a length >= `offset` + 8.
137
120
  * @param offset The `worldVertices` index to begin writing values.
138
121
  * @param stride The number of `worldVertices` entries between the value pairs written. */
139
- RegionAttachment.prototype.computeWorldVertices = function (bone, worldVertices, offset, stride) {
140
- var vertexOffset = this.offset;
141
- var x = bone.worldX, y = bone.worldY;
142
- var a = bone.a, b = bone.b, c = bone.c, d = bone.d;
143
- var offsetX = 0, offsetY = 0;
122
+ computeWorldVertices(bone, worldVertices, offset, stride) {
123
+ let vertexOffset = this.offset;
124
+ let x = bone.worldX, y = bone.worldY;
125
+ let a = bone.a, b = bone.b, c = bone.c, d = bone.d;
126
+ let offsetX = 0, offsetY = 0;
144
127
  offsetX = vertexOffset[0];
145
128
  offsetY = vertexOffset[1];
146
129
  worldVertices[offset] = offsetX * a + offsetY * b + x; // br
@@ -160,9 +143,9 @@ var RegionAttachment = /** @class */ (function (_super) {
160
143
  offsetY = vertexOffset[7];
161
144
  worldVertices[offset] = offsetX * a + offsetY * b + x; // ur
162
145
  worldVertices[offset + 1] = offsetX * c + offsetY * d + y;
163
- };
164
- RegionAttachment.prototype.copy = function () {
165
- var copy = new RegionAttachment(this.name);
146
+ }
147
+ copy() {
148
+ let copy = new RegionAttachment(this.name);
166
149
  copy.region = this.region;
167
150
  copy.rendererObject = this.rendererObject;
168
151
  copy.path = this.path;
@@ -177,40 +160,38 @@ var RegionAttachment = /** @class */ (function (_super) {
177
160
  Utils.arrayCopy(this.offset, 0, copy.offset, 0, 8);
178
161
  copy.color.setFromColor(this.color);
179
162
  return copy;
180
- };
181
- RegionAttachment.X1 = 0;
182
- RegionAttachment.Y1 = 1;
183
- RegionAttachment.C1R = 2;
184
- RegionAttachment.C1G = 3;
185
- RegionAttachment.C1B = 4;
186
- RegionAttachment.C1A = 5;
187
- RegionAttachment.U1 = 6;
188
- RegionAttachment.V1 = 7;
189
- RegionAttachment.X2 = 8;
190
- RegionAttachment.Y2 = 9;
191
- RegionAttachment.C2R = 10;
192
- RegionAttachment.C2G = 11;
193
- RegionAttachment.C2B = 12;
194
- RegionAttachment.C2A = 13;
195
- RegionAttachment.U2 = 14;
196
- RegionAttachment.V2 = 15;
197
- RegionAttachment.X3 = 16;
198
- RegionAttachment.Y3 = 17;
199
- RegionAttachment.C3R = 18;
200
- RegionAttachment.C3G = 19;
201
- RegionAttachment.C3B = 20;
202
- RegionAttachment.C3A = 21;
203
- RegionAttachment.U3 = 22;
204
- RegionAttachment.V3 = 23;
205
- RegionAttachment.X4 = 24;
206
- RegionAttachment.Y4 = 25;
207
- RegionAttachment.C4R = 26;
208
- RegionAttachment.C4G = 27;
209
- RegionAttachment.C4B = 28;
210
- RegionAttachment.C4A = 29;
211
- RegionAttachment.U4 = 30;
212
- RegionAttachment.V4 = 31;
213
- return RegionAttachment;
214
- }(Attachment));
215
- export { RegionAttachment };
216
- //# sourceMappingURL=RegionAttachment.js.map
163
+ }
164
+ }
165
+ RegionAttachment.X1 = 0;
166
+ RegionAttachment.Y1 = 1;
167
+ RegionAttachment.C1R = 2;
168
+ RegionAttachment.C1G = 3;
169
+ RegionAttachment.C1B = 4;
170
+ RegionAttachment.C1A = 5;
171
+ RegionAttachment.U1 = 6;
172
+ RegionAttachment.V1 = 7;
173
+ RegionAttachment.X2 = 8;
174
+ RegionAttachment.Y2 = 9;
175
+ RegionAttachment.C2R = 10;
176
+ RegionAttachment.C2G = 11;
177
+ RegionAttachment.C2B = 12;
178
+ RegionAttachment.C2A = 13;
179
+ RegionAttachment.U2 = 14;
180
+ RegionAttachment.V2 = 15;
181
+ RegionAttachment.X3 = 16;
182
+ RegionAttachment.Y3 = 17;
183
+ RegionAttachment.C3R = 18;
184
+ RegionAttachment.C3G = 19;
185
+ RegionAttachment.C3B = 20;
186
+ RegionAttachment.C3A = 21;
187
+ RegionAttachment.U3 = 22;
188
+ RegionAttachment.V3 = 23;
189
+ RegionAttachment.X4 = 24;
190
+ RegionAttachment.Y4 = 25;
191
+ RegionAttachment.C4R = 26;
192
+ RegionAttachment.C4G = 27;
193
+ RegionAttachment.C4B = 28;
194
+ RegionAttachment.C4A = 29;
195
+ RegionAttachment.U4 = 30;
196
+ RegionAttachment.V4 = 31;
197
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVnaW9uQXR0YWNobWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hdHRhY2htZW50cy9SZWdpb25BdHRhY2htZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7K0VBMkIrRTtBQUkvRSxPQUFPLEVBQUUsS0FBSyxFQUFtQixLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUxQzs7a0dBRWtHO0FBQ2xHLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxVQUFVO0lBd0MvQyxZQUFhLElBQVk7UUFDeEIsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBeENiLCtCQUErQjtRQUMvQixNQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRU4sK0JBQStCO1FBQy9CLE1BQUMsR0FBRyxDQUFDLENBQUM7UUFFTix3QkFBd0I7UUFDeEIsV0FBTSxHQUFHLENBQUMsQ0FBQztRQUVYLHdCQUF3QjtRQUN4QixXQUFNLEdBQUcsQ0FBQyxDQUFDO1FBRVgsMEJBQTBCO1FBQzFCLGFBQVEsR0FBRyxDQUFDLENBQUM7UUFFYixtREFBbUQ7UUFDbkQsVUFBSyxHQUFHLENBQUMsQ0FBQztRQUVWLG9EQUFvRDtRQUNwRCxXQUFNLEdBQUcsQ0FBQyxDQUFDO1FBRVgsK0NBQStDO1FBQy9DLFVBQUssR0FBRyxJQUFJLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQVE5Qjs7MENBRWtDO1FBQ2xDLFdBQU0sR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRWhDLFFBQUcsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTdCLGNBQVMsR0FBRyxJQUFJLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFD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LElBQUksQ0FBQyxHQUFHLENBQUM7UUFDbkIsSUFBSSxNQUFNLENBQUMsT0FBTyxJQUFJLEVBQUUsRUFBRTtZQUN6QixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNsQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNuQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNsQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNsQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNuQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNsQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNuQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQztTQUNuQjthQUFNO1lBQ04sR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDbEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDbkIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDbEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDbEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDbkIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDbEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDbkIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7U0FDbkI7SUFDRixDQUFDO0lBRUQ7Ozs7Ozs4RkFNMEY7SUFDMUYsb0JBQW9CLENBQUUsSUFBVSxFQUFFLGFBQThCLEVBQUUsTUFBYyxFQUFFLE1BQWM7UUFDL0YsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUMvQixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDbkQsSUFBSSxPQUFPLEdBQUcsQ0FBQyxFQUFFLE9BQU8sR0FBRyxDQUFDLENBQUM7UUFFN0IsT0FBTyxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxQixPQUFPLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFCLGFBQWEsQ0FBQyxNQUFNLENBQUMsR0FBRyxPQUFPLEdBQUcsQ0FBQyxHQUFHLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSztRQUM1RCxhQUFhLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxHQUFHLE9BQU8sR0FBRyxDQUFDLEdBQUcsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUQsTUFBTSxJQUFJLE1BQU0sQ0FBQztRQUVqQixPQUFPLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFCLE9BQU8sR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUIsYUFBYSxDQUFDLE1BQU0sQ0FBQyxHQUFHLE9BQU8sR0FBRyxDQUFDLEdBQUcsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLO1FBQzVELGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEdBQUcsT0FBTyxHQUFHLENBQUMsR0FBRyxPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMxRCxNQUFNLElBQUksTUFBTSxDQUFDO1FBRWpCLE9BQU8sR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUIsT0FBTyxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxQixhQUFhLENBQUMsTUFBTSxDQUFDLEdBQUcsT0FBTyxHQUFHLENBQUMsR0FBRyxPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUs7UUFDNUQsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsR0FBRyxPQUFPLEdBQUcsQ0FBQyxHQUFHLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzFELE1BQU0sSUFBSSxNQUFNLENBQUM7UUFFakIsT0FBTyxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxQixPQUFPLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFCLGFBQWEsQ0FBQyxNQUFNLENBQUMsR0FBRyxPQUFPLEdBQUcsQ0FBQyxHQUFHLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSztRQUM1RCxhQUFhLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxHQUFHLE9BQU8sR0FBRyxDQUFDLEdBQUcsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELElBQUk7UUFDSCxJQUFJLElBQUksR0FBRyxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDMUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDO1FBQzFDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDaEIsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2hCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUMxQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDMUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzlCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDMUIsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM3QyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQyxPQUFPLElBQUksQ0FBQztJQUNiLENBQUM7O0FBRU0sbUJBQUUsR0FBRyxDQUFDLENBQUM7QUFDUCxtQkFBRSxHQUFHLENBQUMsQ0FBQztBQUNQLG9CQUFHLEdBQUcsQ0FBQyxDQUFDO0FBQ1Isb0JBQUcsR0FBRyxDQUFDLENBQUM7QUFDUixvQkFBRyxHQUFHLENBQUMsQ0FBQztBQUNSLG9CQUFHLEdBQUcsQ0FBQyxDQUFDO0FBQ1IsbUJBQUUsR0FBRyxDQUFDLENBQUM7QUFDUCxtQkFBRSxHQUFHLENBQUMsQ0FBQztBQUVQLG1CQUFFLEdBQUcsQ0FBQyxDQUFDO0FBQ1AsbUJBQUUsR0FBRyxDQUFDLENBQUM7QUFDUCxvQkFBRyxHQUFHLEVBQUUsQ0FBQztBQUNULG9CQUFHLEdBQUcsRUFBRSxDQUFDO0FBQ1Qsb0JBQUcsR0FBRyxFQUFFLENBQUM7QUFDVCxvQkFBRyxHQUFHLEVBQUUsQ0FBQztBQUNULG1CQUFFLEdBQUcsRUFBRSxDQUFDO0FBQ1IsbUJBQUUsR0FBRyxFQUFFLENBQUM7QUFFUixtQkFBRSxHQUFHLEVBQUUsQ0FBQztBQUNSLG1CQUFFLEdBQUcsRUFBRSxDQUFDO0FBQ1Isb0JBQUcsR0FBRyxFQUFFLENBQUM7QUFDVCxvQkFBRyxHQUFHLEVBQUUsQ0FBQztBQUNULG9CQUFHLEdBQUcsRUFBRSxDQUFDO0FBQ1Qsb0JBQUcsR0FBRyxFQUFFLENBQUM7QUFDVCxtQkFBRSxHQUFHLEVBQUUsQ0FBQztBQUNSLG1CQUFFLEdBQUcsRUFBRSxDQUFDO0FBRVIsbUJBQUUsR0FBRyxFQUFFLENBQUM7QUFDUixtQkFBRSxHQUFHLEVBQUUsQ0FBQztBQUNSLG9CQUFHLEdBQUcsRUFBRSxDQUFDO0FBQ1Qsb0JBQUcsR0FBRyxFQUFFLENBQUM7QUFDVCxvQkFBRyxHQUFHLEVBQUUsQ0FBQztBQUNULG9CQUFHLEdBQUcsRUFBRSxDQUFDO0FBQ1QsbUJBQUUsR0FBRyxFQUFFLENBQUM7QUFDUixtQkFBRSxHQUFHLEVBQUUsQ0FBQyJ9
@@ -6,4 +6,4 @@ export * from './MeshAttachment';
6
6
  export * from './PathAttachment';
7
7
  export * from './PointAttachment';
8
8
  export * from './RegionAttachment';
9
- //# sourceMappingURL=index.js.map
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXR0YWNobWVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxvQkFBb0IsQ0FBQyJ9
@@ -1028,10 +1028,8 @@ var spine = (() => {
1028
1028
  bone.scaleY = by + (Math.abs(y) * MathUtils.signum(by) - by) * alpha;
1029
1029
  break;
1030
1030
  case 3:
1031
- bx = bone.scaleX;
1032
- by = bone.scaleY;
1033
- bone.scaleX = bx + (Math.abs(x) * MathUtils.signum(bx) - bone.data.scaleX) * alpha;
1034
- bone.scaleY = by + (Math.abs(y) * MathUtils.signum(by) - bone.data.scaleY) * alpha;
1031
+ bone.scaleX = (x - bone.data.scaleX) * alpha;
1032
+ bone.scaleY = (y - bone.data.scaleY) * alpha;
1035
1033
  }
1036
1034
  } else {
1037
1035
  switch (blend) {
@@ -1049,10 +1047,8 @@ var spine = (() => {
1049
1047
  bone.scaleY = by + (y - by) * alpha;
1050
1048
  break;
1051
1049
  case 3:
1052
- bx = MathUtils.signum(x);
1053
- by = MathUtils.signum(y);
1054
- bone.scaleX = Math.abs(bone.scaleX) * bx + (x - Math.abs(bone.data.scaleX) * bx) * alpha;
1055
- bone.scaleY = Math.abs(bone.scaleY) * by + (y - Math.abs(bone.data.scaleY) * by) * alpha;
1050
+ bone.scaleX += (x - bone.data.scaleX) * alpha;
1051
+ bone.scaleY += (y - bone.data.scaleY) * alpha;
1056
1052
  }
1057
1053
  }
1058
1054
  }
@@ -1099,8 +1095,7 @@ var spine = (() => {
1099
1095
  bone.scaleX = bx + (Math.abs(x) * MathUtils.signum(bx) - bx) * alpha;
1100
1096
  break;
1101
1097
  case 3:
1102
- bx = bone.scaleX;
1103
- bone.scaleX = bx + (Math.abs(x) * MathUtils.signum(bx) - bone.data.scaleX) * alpha;
1098
+ bone.scaleX = (x - bone.data.scaleX) * alpha;
1104
1099
  }
1105
1100
  } else {
1106
1101
  switch (blend) {
@@ -1114,8 +1109,7 @@ var spine = (() => {
1114
1109
  bone.scaleX = bx + (x - bx) * alpha;
1115
1110
  break;
1116
1111
  case 3:
1117
- bx = MathUtils.signum(x);
1118
- bone.scaleX = Math.abs(bone.scaleX) * bx + (x - Math.abs(bone.data.scaleX) * bx) * alpha;
1112
+ bone.scaleX += (x - bone.data.scaleX) * alpha;
1119
1113
  }
1120
1114
  }
1121
1115
  }
@@ -1162,8 +1156,7 @@ var spine = (() => {
1162
1156
  bone.scaleY = by + (Math.abs(y) * MathUtils.signum(by) - by) * alpha;
1163
1157
  break;
1164
1158
  case 3:
1165
- by = bone.scaleY;
1166
- bone.scaleY = by + (Math.abs(y) * MathUtils.signum(by) - bone.data.scaleY) * alpha;
1159
+ bone.scaleY = (y - bone.data.scaleY) * alpha;
1167
1160
  }
1168
1161
  } else {
1169
1162
  switch (blend) {
@@ -1177,8 +1170,7 @@ var spine = (() => {
1177
1170
  bone.scaleY = by + (y - by) * alpha;
1178
1171
  break;
1179
1172
  case 3:
1180
- by = MathUtils.signum(y);
1181
- bone.scaleY = Math.abs(bone.scaleY) * by + (y - Math.abs(bone.data.scaleY) * by) * alpha;
1173
+ bone.scaleY += (y - bone.data.scaleY) * alpha;
1182
1174
  }
1183
1175
  }
1184
1176
  }
@@ -4002,8 +3994,8 @@ var spine = (() => {
4002
3994
  updateAppliedTransform() {
4003
3995
  let parent = this.parent;
4004
3996
  if (!parent) {
4005
- this.ax = this.worldX;
4006
- this.ay = this.worldY;
3997
+ this.ax = this.worldX - this.skeleton.x;
3998
+ this.ay = this.worldY - this.skeleton.y;
4007
3999
  this.arotation = Math.atan2(this.c, this.a) * MathUtils.radDeg;
4008
4000
  this.ascaleX = Math.sqrt(this.a * this.a + this.c * this.c);
4009
4001
  this.ascaleY = Math.sqrt(this.b * this.b + this.d * this.d);
@@ -4244,11 +4236,49 @@ var spine = (() => {
4244
4236
  this.callbacks = {};
4245
4237
  this.rawDataUris = {};
4246
4238
  }
4239
+ dataUriToString(dataUri) {
4240
+ if (!dataUri.startsWith("data:")) {
4241
+ throw new Error("Not a data URI.");
4242
+ }
4243
+ let base64Idx = dataUri.indexOf("base64,");
4244
+ if (base64Idx != -1) {
4245
+ base64Idx += "base64,".length;
4246
+ return atob(dataUri.substr(base64Idx));
4247
+ } else {
4248
+ return dataUri.substr(dataUri.indexOf(",") + 1);
4249
+ }
4250
+ }
4251
+ base64ToArrayBuffer(base64) {
4252
+ var binary_string = window.atob(base64);
4253
+ var len = binary_string.length;
4254
+ var bytes = new Uint8Array(len);
4255
+ for (var i = 0; i < len; i++) {
4256
+ bytes[i] = binary_string.charCodeAt(i);
4257
+ }
4258
+ return bytes.buffer;
4259
+ }
4260
+ dataUriToUint8Array(dataUri) {
4261
+ if (!dataUri.startsWith("data:")) {
4262
+ throw new Error("Not a data URI.");
4263
+ }
4264
+ let base64Idx = dataUri.indexOf("base64,");
4265
+ if (base64Idx == -1)
4266
+ throw new Error("Not a binary data URI.");
4267
+ base64Idx += "base64,".length;
4268
+ return this.base64ToArrayBuffer(dataUri.substr(base64Idx));
4269
+ }
4247
4270
  downloadText(url, success, error) {
4248
- if (this.rawDataUris[url])
4249
- url = this.rawDataUris[url];
4250
4271
  if (this.start(url, success, error))
4251
4272
  return;
4273
+ if (this.rawDataUris[url]) {
4274
+ try {
4275
+ let dataUri = this.rawDataUris[url];
4276
+ this.finish(url, 200, this.dataUriToString(dataUri));
4277
+ } catch (e) {
4278
+ this.finish(url, 400, JSON.stringify(e));
4279
+ }
4280
+ return;
4281
+ }
4252
4282
  let request = new XMLHttpRequest();
4253
4283
  request.overrideMimeType("text/html");
4254
4284
  request.open("GET", url, true);
@@ -4265,10 +4295,17 @@ var spine = (() => {
4265
4295
  }, error);
4266
4296
  }
4267
4297
  downloadBinary(url, success, error) {
4268
- if (this.rawDataUris[url])
4269
- url = this.rawDataUris[url];
4270
4298
  if (this.start(url, success, error))
4271
4299
  return;
4300
+ if (this.rawDataUris[url]) {
4301
+ try {
4302
+ let dataUri = this.rawDataUris[url];
4303
+ this.finish(url, 200, this.dataUriToUint8Array(dataUri));
4304
+ } catch (e) {
4305
+ this.finish(url, 400, JSON.stringify(e));
4306
+ }
4307
+ return;
4308
+ }
4272
4309
  let request = new XMLHttpRequest();
4273
4310
  request.open("GET", url, true);
4274
4311
  request.responseType = "arraybuffer";
@@ -5588,15 +5625,6 @@ var spine = (() => {
5588
5625
  }
5589
5626
  return null;
5590
5627
  }
5591
- findBoneIndex(boneName) {
5592
- if (!boneName)
5593
- throw new Error("boneName cannot be null.");
5594
- let bones = this.bones;
5595
- for (let i = 0, n = bones.length; i < n; i++)
5596
- if (bones[i].data.name == boneName)
5597
- return i;
5598
- return -1;
5599
- }
5600
5628
  findSlot(slotName) {
5601
5629
  if (!slotName)
5602
5630
  throw new Error("slotName cannot be null.");
@@ -5608,15 +5636,6 @@ var spine = (() => {
5608
5636
  }
5609
5637
  return null;
5610
5638
  }
5611
- findSlotIndex(slotName) {
5612
- if (!slotName)
5613
- throw new Error("slotName cannot be null.");
5614
- let slots = this.slots;
5615
- for (let i = 0, n = slots.length; i < n; i++)
5616
- if (slots[i].data.name == slotName)
5617
- return i;
5618
- return -1;
5619
- }
5620
5639
  setSkinByName(skinName) {
5621
5640
  let skin = this.data.findSkin(skinName);
5622
5641
  if (!skin)
@@ -5646,7 +5665,7 @@ var spine = (() => {
5646
5665
  this.updateCache();
5647
5666
  }
5648
5667
  getAttachmentByName(slotName, attachmentName) {
5649
- return this.getAttachment(this.data.findSlotIndex(slotName), attachmentName);
5668
+ return this.getAttachment(this.data.findSlot(slotName).index, attachmentName);
5650
5669
  }
5651
5670
  getAttachment(slotIndex, attachmentName) {
5652
5671
  if (!attachmentName)
@@ -5778,15 +5797,6 @@ var spine = (() => {
5778
5797
  }
5779
5798
  return null;
5780
5799
  }
5781
- findBoneIndex(boneName) {
5782
- if (!boneName)
5783
- throw new Error("boneName cannot be null.");
5784
- let bones = this.bones;
5785
- for (let i = 0, n = bones.length; i < n; i++)
5786
- if (bones[i].name == boneName)
5787
- return i;
5788
- return -1;
5789
- }
5790
5800
  findSlot(slotName) {
5791
5801
  if (!slotName)
5792
5802
  throw new Error("slotName cannot be null.");
@@ -5798,15 +5808,6 @@ var spine = (() => {
5798
5808
  }
5799
5809
  return null;
5800
5810
  }
5801
- findSlotIndex(slotName) {
5802
- if (!slotName)
5803
- throw new Error("slotName cannot be null.");
5804
- let slots = this.slots;
5805
- for (let i = 0, n = slots.length; i < n; i++)
5806
- if (slots[i].name == slotName)
5807
- return i;
5808
- return -1;
5809
- }
5810
5811
  findSkin(skinName) {
5811
5812
  if (!skinName)
5812
5813
  throw new Error("skinName cannot be null.");
@@ -8091,20 +8092,21 @@ var spine = (() => {
8091
8092
  if (map.slots) {
8092
8093
  for (let slotName in map.slots) {
8093
8094
  let slotMap = map.slots[slotName];
8094
- let slotIndex = skeletonData.findSlotIndex(slotName);
8095
+ let slotIndex = skeletonData.findSlot(slotName).index;
8095
8096
  for (let timelineName in slotMap) {
8096
8097
  let timelineMap = slotMap[timelineName];
8097
8098
  if (!timelineMap)
8098
8099
  continue;
8100
+ let frames = timelineMap.length;
8099
8101
  if (timelineName == "attachment") {
8100
- let timeline = new AttachmentTimeline(timelineMap.length, slotIndex);
8101
- for (let frame = 0; frame < timelineMap.length; frame++) {
8102
+ let timeline = new AttachmentTimeline(frames, slotIndex);
8103
+ for (let frame = 0; frame < frames; frame++) {
8102
8104
  let keyMap = timelineMap[frame];
8103
8105
  timeline.setFrame(frame, getValue(keyMap, "time", 0), keyMap.name);
8104
8106
  }
8105
8107
  timelines.push(timeline);
8106
8108
  } else if (timelineName == "rgba") {
8107
- let timeline = new RGBATimeline(timelineMap.length, timelineMap.length << 2, slotIndex);
8109
+ let timeline = new RGBATimeline(frames, frames << 2, slotIndex);
8108
8110
  let keyMap = timelineMap[0];
8109
8111
  let time = getValue(keyMap, "time", 0);
8110
8112
  let color = Color.fromString(keyMap.color);
@@ -8130,7 +8132,7 @@ var spine = (() => {
8130
8132
  }
8131
8133
  timelines.push(timeline);
8132
8134
  } else if (timelineName == "rgb") {
8133
- let timeline = new RGBTimeline(timelineMap.length, timelineMap.length * 3, slotIndex);
8135
+ let timeline = new RGBTimeline(frames, frames * 3, slotIndex);
8134
8136
  let keyMap = timelineMap[0];
8135
8137
  let time = getValue(keyMap, "time", 0);
8136
8138
  let color = Color.fromString(keyMap.color);
@@ -8155,9 +8157,9 @@ var spine = (() => {
8155
8157
  }
8156
8158
  timelines.push(timeline);
8157
8159
  } else if (timelineName == "alpha") {
8158
- timelines.push(readTimeline12(timelineMap, new AlphaTimeline(timelineMap.length, timelineMap.length, slotIndex), 0, 1));
8160
+ timelines.push(readTimeline12(timelineMap, new AlphaTimeline(frames, frames, slotIndex), 0, 1));
8159
8161
  } else if (timelineName == "rgba2") {
8160
- let timeline = new RGBA2Timeline(timelineMap.length, timelineMap.length * 7, slotIndex);
8162
+ let timeline = new RGBA2Timeline(frames, frames * 7, slotIndex);
8161
8163
  let keyMap = timelineMap[0];
8162
8164
  let time = getValue(keyMap, "time", 0);
8163
8165
  let color = Color.fromString(keyMap.light);
@@ -8189,7 +8191,7 @@ var spine = (() => {
8189
8191
  }
8190
8192
  timelines.push(timeline);
8191
8193
  } else if (timelineName == "rgb2") {
8192
- let timeline = new RGB2Timeline(timelineMap.length, timelineMap.length * 6, slotIndex);
8194
+ let timeline = new RGB2Timeline(frames, frames * 6, slotIndex);
8193
8195
  let keyMap = timelineMap[0];
8194
8196
  let time = getValue(keyMap, "time", 0);
8195
8197
  let color = Color.fromString(keyMap.light);
@@ -8226,39 +8228,40 @@ var spine = (() => {
8226
8228
  if (map.bones) {
8227
8229
  for (let boneName in map.bones) {
8228
8230
  let boneMap = map.bones[boneName];
8229
- let boneIndex = skeletonData.findBoneIndex(boneName);
8231
+ let boneIndex = skeletonData.findBone(boneName).index;
8230
8232
  for (let timelineName in boneMap) {
8231
8233
  let timelineMap = boneMap[timelineName];
8232
- if (timelineMap.length == 0)
8234
+ let frames = timelineMap.length;
8235
+ if (frames == 0)
8233
8236
  continue;
8234
8237
  if (timelineName === "rotate") {
8235
- timelines.push(readTimeline12(timelineMap, new RotateTimeline(timelineMap.length, timelineMap.length, boneIndex), 0, 1));
8238
+ timelines.push(readTimeline12(timelineMap, new RotateTimeline(frames, frames, boneIndex), 0, 1));
8236
8239
  } else if (timelineName === "translate") {
8237
- let timeline = new TranslateTimeline(timelineMap.length, timelineMap.length << 1, boneIndex);
8240
+ let timeline = new TranslateTimeline(frames, frames << 1, boneIndex);
8238
8241
  timelines.push(readTimeline22(timelineMap, timeline, "x", "y", 0, scale));
8239
8242
  } else if (timelineName === "translatex") {
8240
- let timeline = new TranslateXTimeline(timelineMap.length, timelineMap.length, boneIndex);
8243
+ let timeline = new TranslateXTimeline(frames, frames, boneIndex);
8241
8244
  timelines.push(readTimeline12(timelineMap, timeline, 0, scale));
8242
8245
  } else if (timelineName === "translatey") {
8243
- let timeline = new TranslateYTimeline(timelineMap.length, timelineMap.length, boneIndex);
8246
+ let timeline = new TranslateYTimeline(frames, frames, boneIndex);
8244
8247
  timelines.push(readTimeline12(timelineMap, timeline, 0, scale));
8245
8248
  } else if (timelineName === "scale") {
8246
- let timeline = new ScaleTimeline(timelineMap.length, timelineMap.length << 1, boneIndex);
8249
+ let timeline = new ScaleTimeline(frames, frames << 1, boneIndex);
8247
8250
  timelines.push(readTimeline22(timelineMap, timeline, "x", "y", 1, 1));
8248
8251
  } else if (timelineName === "scalex") {
8249
- let timeline = new ScaleXTimeline(timelineMap.length, timelineMap.length, boneIndex);
8252
+ let timeline = new ScaleXTimeline(frames, frames, boneIndex);
8250
8253
  timelines.push(readTimeline12(timelineMap, timeline, 1, 1));
8251
8254
  } else if (timelineName === "scaley") {
8252
- let timeline = new ScaleYTimeline(timelineMap.length, timelineMap.length, boneIndex);
8255
+ let timeline = new ScaleYTimeline(frames, frames, boneIndex);
8253
8256
  timelines.push(readTimeline12(timelineMap, timeline, 1, 1));
8254
8257
  } else if (timelineName === "shear") {
8255
- let timeline = new ShearTimeline(timelineMap.length, timelineMap.length << 1, boneIndex);
8258
+ let timeline = new ShearTimeline(frames, frames << 1, boneIndex);
8256
8259
  timelines.push(readTimeline22(timelineMap, timeline, "x", "y", 0, 1));
8257
8260
  } else if (timelineName === "shearx") {
8258
- let timeline = new ShearXTimeline(timelineMap.length, timelineMap.length, boneIndex);
8261
+ let timeline = new ShearXTimeline(frames, frames, boneIndex);
8259
8262
  timelines.push(readTimeline12(timelineMap, timeline, 0, 1));
8260
8263
  } else if (timelineName === "sheary") {
8261
- let timeline = new ShearYTimeline(timelineMap.length, timelineMap.length, boneIndex);
8264
+ let timeline = new ShearYTimeline(frames, frames, boneIndex);
8262
8265
  timelines.push(readTimeline12(timelineMap, timeline, 0, 1));
8263
8266
  }
8264
8267
  }
@@ -8307,7 +8310,7 @@ var spine = (() => {
8307
8310
  continue;
8308
8311
  let constraint = skeletonData.findTransformConstraint(constraintName);
8309
8312
  let constraintIndex = skeletonData.transformConstraints.indexOf(constraint);
8310
- let timeline = new TransformConstraintTimeline(timelineMap.length, timelineMap.length << 2, constraintIndex);
8313
+ let timeline = new TransformConstraintTimeline(timelineMap.length, timelineMap.length * 6, constraintIndex);
8311
8314
  let time = getValue(keyMap, "time", 0);
8312
8315
  let mixRotate = getValue(keyMap, "mixRotate", 1);
8313
8316
  let mixX = getValue(keyMap, "mixX", 1);
@@ -8360,14 +8363,15 @@ var spine = (() => {
8360
8363
  let keyMap = timelineMap[0];
8361
8364
  if (!keyMap)
8362
8365
  continue;
8366
+ let frames = timelineMap.length;
8363
8367
  if (timelineName === "position") {
8364
- let timeline = new PathConstraintPositionTimeline(timelineMap.length, timelineMap.length, constraintIndex);
8368
+ let timeline = new PathConstraintPositionTimeline(frames, frames, constraintIndex);
8365
8369
  timelines.push(readTimeline12(timelineMap, timeline, 0, constraint.positionMode == PositionMode.Fixed ? scale : 1));
8366
8370
  } else if (timelineName === "spacing") {
8367
- let timeline = new PathConstraintSpacingTimeline(timelineMap.length, timelineMap.length, constraintIndex);
8371
+ let timeline = new PathConstraintSpacingTimeline(frames, frames, constraintIndex);
8368
8372
  timelines.push(readTimeline12(timelineMap, timeline, 0, constraint.spacingMode == SpacingMode.Length || constraint.spacingMode == SpacingMode.Fixed ? scale : 1));
8369
8373
  } else if (timelineName === "mix") {
8370
- let timeline = new PathConstraintMixTimeline(timelineMap.size, timelineMap.size * 3, constraintIndex);
8374
+ let timeline = new PathConstraintMixTimeline(frames, frames * 3, constraintIndex);
8371
8375
  let time = getValue(keyMap, "time", 0);
8372
8376
  let mixRotate = getValue(keyMap, "mixRotate", 1);
8373
8377
  let mixX = getValue(keyMap, "mixX", 1);
@@ -8406,7 +8410,7 @@ var spine = (() => {
8406
8410
  let skin = skeletonData.findSkin(deformName);
8407
8411
  for (let slotName in deformMap) {
8408
8412
  let slotMap = deformMap[slotName];
8409
- let slotIndex = skeletonData.findSlotIndex(slotName);
8413
+ let slotIndex = skeletonData.findSlot(slotName).index;
8410
8414
  for (let timelineName in slotMap) {
8411
8415
  let timelineMap = slotMap[timelineName];
8412
8416
  let keyMap = timelineMap[0];
@@ -8468,7 +8472,7 @@ var spine = (() => {
8468
8472
  let originalIndex = 0, unchangedIndex = 0;
8469
8473
  for (let ii = 0; ii < offsets.length; ii++) {
8470
8474
  let offsetMap = offsets[ii];
8471
- let slotIndex = skeletonData.findSlotIndex(offsetMap.slot);
8475
+ let slotIndex = skeletonData.findSlot(offsetMap.slot).index;
8472
8476
  while (originalIndex != slotIndex)
8473
8477
  unchanged[unchangedIndex++] = originalIndex++;
8474
8478
  drawOrder[originalIndex + offsetMap.offset] = originalIndex++;