@esotericsoftware/spine-core 4.1.25 → 4.1.26

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 (90) hide show
  1. package/dist/Animation.d.ts +382 -0
  2. package/dist/Animation.js +2052 -0
  3. package/dist/AnimationState.d.ts +398 -0
  4. package/dist/AnimationState.js +1096 -0
  5. package/dist/AnimationStateData.d.ts +51 -0
  6. package/dist/AnimationStateData.js +70 -0
  7. package/dist/AssetManagerBase.d.ts +75 -0
  8. package/dist/AssetManagerBase.js +320 -0
  9. package/dist/AtlasAttachmentLoader.d.ts +53 -0
  10. package/dist/AtlasAttachmentLoader.js +95 -0
  11. package/dist/Bone.d.ts +138 -0
  12. package/dist/Bone.js +336 -0
  13. package/dist/BoneData.d.ts +72 -0
  14. package/dist/BoneData.js +80 -0
  15. package/dist/ConstraintData.d.ts +35 -0
  16. package/dist/ConstraintData.js +37 -0
  17. package/dist/Event.d.ts +44 -0
  18. package/dist/Event.js +48 -0
  19. package/dist/EventData.d.ts +41 -0
  20. package/dist/EventData.js +43 -0
  21. package/dist/IkConstraint.d.ts +64 -0
  22. package/dist/IkConstraint.js +296 -0
  23. package/dist/IkConstraintData.d.ts +56 -0
  24. package/dist/IkConstraintData.js +63 -0
  25. package/dist/PathConstraint.d.ts +71 -0
  26. package/dist/PathConstraint.js +476 -0
  27. package/dist/PathConstraintData.d.ts +82 -0
  28. package/dist/PathConstraintData.js +91 -0
  29. package/dist/Skeleton.d.ts +163 -0
  30. package/dist/Skeleton.js +588 -0
  31. package/dist/SkeletonBinary.d.ts +68 -0
  32. package/dist/SkeletonBinary.js +1172 -0
  33. package/dist/SkeletonBounds.d.ts +77 -0
  34. package/dist/SkeletonBounds.js +219 -0
  35. package/dist/SkeletonClipping.d.ts +50 -0
  36. package/dist/SkeletonClipping.js +326 -0
  37. package/dist/SkeletonData.d.ts +114 -0
  38. package/dist/SkeletonData.js +190 -0
  39. package/dist/SkeletonJson.d.ts +53 -0
  40. package/dist/SkeletonJson.js +1027 -0
  41. package/dist/Skin.d.ts +71 -0
  42. package/dist/Skin.js +201 -0
  43. package/dist/Slot.d.ts +69 -0
  44. package/dist/Slot.js +93 -0
  45. package/dist/SlotData.d.ts +57 -0
  46. package/dist/SlotData.js +64 -0
  47. package/dist/Texture.d.ts +69 -0
  48. package/dist/Texture.js +73 -0
  49. package/dist/TextureAtlas.d.ts +67 -0
  50. package/dist/TextureAtlas.js +263 -0
  51. package/dist/TransformConstraint.d.ts +60 -0
  52. package/dist/TransformConstraint.js +247 -0
  53. package/dist/TransformConstraintData.d.ts +62 -0
  54. package/dist/TransformConstraintData.js +69 -0
  55. package/dist/Triangulator.d.ts +43 -0
  56. package/dist/Triangulator.js +244 -0
  57. package/dist/Updatable.d.ts +37 -0
  58. package/dist/Updatable.js +30 -0
  59. package/dist/Utils.d.ts +168 -0
  60. package/dist/Utils.js +404 -0
  61. package/dist/attachments/Attachment.d.ts +72 -0
  62. package/dist/attachments/Attachment.js +147 -0
  63. package/dist/attachments/AttachmentLoader.d.ts +54 -0
  64. package/dist/attachments/AttachmentLoader.js +30 -0
  65. package/dist/attachments/BoundingBoxAttachment.d.ts +40 -0
  66. package/dist/attachments/BoundingBoxAttachment.js +48 -0
  67. package/dist/attachments/ClippingAttachment.d.ts +42 -0
  68. package/dist/attachments/ClippingAttachment.js +51 -0
  69. package/dist/attachments/HasTextureRegion.d.ts +44 -0
  70. package/dist/attachments/HasTextureRegion.js +30 -0
  71. package/dist/attachments/MeshAttachment.d.ts +79 -0
  72. package/dist/attachments/MeshAttachment.js +188 -0
  73. package/dist/attachments/PathAttachment.d.ts +47 -0
  74. package/dist/attachments/PathAttachment.js +59 -0
  75. package/dist/attachments/PointAttachment.d.ts +48 -0
  76. package/dist/attachments/PointAttachment.js +66 -0
  77. package/dist/attachments/RegionAttachment.d.ts +111 -0
  78. package/dist/attachments/RegionAttachment.js +215 -0
  79. package/dist/attachments/Sequence.d.ts +55 -0
  80. package/dist/attachments/Sequence.js +91 -0
  81. package/dist/attachments/index.d.ts +8 -0
  82. package/dist/attachments/index.js +9 -0
  83. package/dist/iife/spine-core.js +10703 -0
  84. package/dist/iife/spine-core.js.map +7 -0
  85. package/dist/iife/spine-core.min.js +2 -0
  86. package/dist/index.d.ts +39 -0
  87. package/dist/index.js +40 -0
  88. package/dist/polyfills.d.ts +29 -0
  89. package/dist/polyfills.js +39 -0
  90. package/package.json +1 -1
@@ -0,0 +1,47 @@
1
+ /******************************************************************************
2
+ * Spine Runtimes License Agreement
3
+ * Last updated September 24, 2021. Replaces all prior versions.
4
+ *
5
+ * Copyright (c) 2013-2021, Esoteric Software LLC
6
+ *
7
+ * Integration of the Spine Runtimes into software or otherwise creating
8
+ * derivative works of the Spine Runtimes is permitted under the terms and
9
+ * conditions of Section 2 of the Spine Editor License Agreement:
10
+ * http://esotericsoftware.com/spine-editor-license
11
+ *
12
+ * Otherwise, it is permitted to integrate the Spine Runtimes into software
13
+ * or otherwise create derivative works of the Spine Runtimes (collectively,
14
+ * "Products"), provided that each user of the Products must obtain their own
15
+ * Spine Editor license and redistribution of the Products in any form must
16
+ * include this license and copyright notice.
17
+ *
18
+ * THE SPINE RUNTIMES ARE PROVIDED BY ESOTERIC SOFTWARE LLC "AS IS" AND ANY
19
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
+ * DISCLAIMED. IN NO EVENT SHALL ESOTERIC SOFTWARE LLC BE LIABLE FOR ANY
22
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES,
24
+ * BUSINESS INTERRUPTION, OR LOSS OF USE, DATA, OR PROFITS) HOWEVER CAUSED AND
25
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27
+ * THE SPINE RUNTIMES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
+ *****************************************************************************/
29
+ import { Color } from "../Utils";
30
+ import { VertexAttachment, Attachment } from "./Attachment";
31
+ /** An attachment whose vertices make up a composite Bezier curve.
32
+ *
33
+ * See {@link PathConstraint} and [Paths](http://esotericsoftware.com/spine-paths) in the Spine User Guide. */
34
+ export declare class PathAttachment extends VertexAttachment {
35
+ /** The lengths along the path in the setup pose from the start of the path to the end of each Bezier curve. */
36
+ lengths: Array<number>;
37
+ /** If true, the start and end knots are connected. */
38
+ closed: boolean;
39
+ /** If true, additional calculations are performed to make calculating positions along the path more accurate. If false, fewer
40
+ * calculations are performed but calculating positions along the path is less accurate. */
41
+ constantSpeed: boolean;
42
+ /** The color of the path as it was in Spine. Available only when nonessential data was exported. Paths are not usually
43
+ * rendered at runtime. */
44
+ color: Color;
45
+ constructor(name: string);
46
+ copy(): Attachment;
47
+ }
@@ -0,0 +1,59 @@
1
+ /******************************************************************************
2
+ * Spine Runtimes License Agreement
3
+ * Last updated September 24, 2021. Replaces all prior versions.
4
+ *
5
+ * Copyright (c) 2013-2021, Esoteric Software LLC
6
+ *
7
+ * Integration of the Spine Runtimes into software or otherwise creating
8
+ * derivative works of the Spine Runtimes is permitted under the terms and
9
+ * conditions of Section 2 of the Spine Editor License Agreement:
10
+ * http://esotericsoftware.com/spine-editor-license
11
+ *
12
+ * Otherwise, it is permitted to integrate the Spine Runtimes into software
13
+ * or otherwise create derivative works of the Spine Runtimes (collectively,
14
+ * "Products"), provided that each user of the Products must obtain their own
15
+ * Spine Editor license and redistribution of the Products in any form must
16
+ * include this license and copyright notice.
17
+ *
18
+ * THE SPINE RUNTIMES ARE PROVIDED BY ESOTERIC SOFTWARE LLC "AS IS" AND ANY
19
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
+ * DISCLAIMED. IN NO EVENT SHALL ESOTERIC SOFTWARE LLC BE LIABLE FOR ANY
22
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES,
24
+ * BUSINESS INTERRUPTION, OR LOSS OF USE, DATA, OR PROFITS) HOWEVER CAUSED AND
25
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27
+ * THE SPINE RUNTIMES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
+ *****************************************************************************/
29
+ import { Color, Utils } from "../Utils";
30
+ import { VertexAttachment } from "./Attachment";
31
+ /** An attachment whose vertices make up a composite Bezier curve.
32
+ *
33
+ * See {@link PathConstraint} and [Paths](http://esotericsoftware.com/spine-paths) in the Spine User Guide. */
34
+ export class PathAttachment extends VertexAttachment {
35
+ constructor(name) {
36
+ super(name);
37
+ /** The lengths along the path in the setup pose from the start of the path to the end of each Bezier curve. */
38
+ this.lengths = [];
39
+ /** If true, the start and end knots are connected. */
40
+ this.closed = false;
41
+ /** If true, additional calculations are performed to make calculating positions along the path more accurate. If false, fewer
42
+ * calculations are performed but calculating positions along the path is less accurate. */
43
+ this.constantSpeed = false;
44
+ /** The color of the path as it was in Spine. Available only when nonessential data was exported. Paths are not usually
45
+ * rendered at runtime. */
46
+ this.color = new Color(1, 1, 1, 1);
47
+ }
48
+ copy() {
49
+ let copy = new PathAttachment(this.name);
50
+ this.copyTo(copy);
51
+ copy.lengths = new Array(this.lengths.length);
52
+ Utils.arrayCopy(this.lengths, 0, copy.lengths, 0, this.lengths.length);
53
+ copy.closed = closed;
54
+ copy.constantSpeed = this.constantSpeed;
55
+ copy.color.setFromColor(this.color);
56
+ return copy;
57
+ }
58
+ }
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGF0aEF0dGFjaG1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXR0YWNobWVudHMvUGF0aEF0dGFjaG1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsrRUEyQitFO0FBRS9FLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBYyxNQUFNLGNBQWMsQ0FBQztBQUU1RDs7OEdBRThHO0FBQzlHLE1BQU0sT0FBTyxjQUFlLFNBQVEsZ0JBQWdCO0lBZ0JuRCxZQUFhLElBQVk7UUFDeEIsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBZmIsK0dBQStHO1FBQy9HLFlBQU8sR0FBa0IsRUFBRSxDQUFDO1FBRTVCLHNEQUFzRDtRQUN0RCxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBRWY7bUdBQzJGO1FBQzNGLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBRXRCO2tDQUMwQjtRQUMxQixVQUFLLEdBQUcsSUFBSSxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFJOUIsQ0FBQztJQUVELElBQUk7UUFDSCxJQUFJLElBQUksR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksS0FBSyxDQUFTLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUN4QyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEMsT0FBTyxJQUFJLENBQUM7SUFDYixDQUFDO0NBQ0QifQ==
@@ -0,0 +1,48 @@
1
+ /******************************************************************************
2
+ * Spine Runtimes License Agreement
3
+ * Last updated September 24, 2021. Replaces all prior versions.
4
+ *
5
+ * Copyright (c) 2013-2021, Esoteric Software LLC
6
+ *
7
+ * Integration of the Spine Runtimes into software or otherwise creating
8
+ * derivative works of the Spine Runtimes is permitted under the terms and
9
+ * conditions of Section 2 of the Spine Editor License Agreement:
10
+ * http://esotericsoftware.com/spine-editor-license
11
+ *
12
+ * Otherwise, it is permitted to integrate the Spine Runtimes into software
13
+ * or otherwise create derivative works of the Spine Runtimes (collectively,
14
+ * "Products"), provided that each user of the Products must obtain their own
15
+ * Spine Editor license and redistribution of the Products in any form must
16
+ * include this license and copyright notice.
17
+ *
18
+ * THE SPINE RUNTIMES ARE PROVIDED BY ESOTERIC SOFTWARE LLC "AS IS" AND ANY
19
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
+ * DISCLAIMED. IN NO EVENT SHALL ESOTERIC SOFTWARE LLC BE LIABLE FOR ANY
22
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES,
24
+ * BUSINESS INTERRUPTION, OR LOSS OF USE, DATA, OR PROFITS) HOWEVER CAUSED AND
25
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27
+ * THE SPINE RUNTIMES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
+ *****************************************************************************/
29
+ import { Bone } from "../Bone";
30
+ import { Color, Vector2 } from "../Utils";
31
+ import { VertexAttachment, Attachment } from "./Attachment";
32
+ /** An attachment which is a single point and a rotation. This can be used to spawn projectiles, particles, etc. A bone can be
33
+ * used in similar ways, but a PointAttachment is slightly less expensive to compute and can be hidden, shown, and placed in a
34
+ * skin.
35
+ *
36
+ * See [Point Attachments](http://esotericsoftware.com/spine-point-attachments) in the Spine User Guide. */
37
+ export declare class PointAttachment extends VertexAttachment {
38
+ x: number;
39
+ y: number;
40
+ rotation: number;
41
+ /** The color of the point attachment as it was in Spine. Available only when nonessential data was exported. Point attachments
42
+ * are not usually rendered at runtime. */
43
+ color: Color;
44
+ constructor(name: string);
45
+ computeWorldPosition(bone: Bone, point: Vector2): Vector2;
46
+ computeWorldRotation(bone: Bone): number;
47
+ copy(): Attachment;
48
+ }
@@ -0,0 +1,66 @@
1
+ /******************************************************************************
2
+ * Spine Runtimes License Agreement
3
+ * Last updated September 24, 2021. Replaces all prior versions.
4
+ *
5
+ * Copyright (c) 2013-2021, Esoteric Software LLC
6
+ *
7
+ * Integration of the Spine Runtimes into software or otherwise creating
8
+ * derivative works of the Spine Runtimes is permitted under the terms and
9
+ * conditions of Section 2 of the Spine Editor License Agreement:
10
+ * http://esotericsoftware.com/spine-editor-license
11
+ *
12
+ * Otherwise, it is permitted to integrate the Spine Runtimes into software
13
+ * or otherwise create derivative works of the Spine Runtimes (collectively,
14
+ * "Products"), provided that each user of the Products must obtain their own
15
+ * Spine Editor license and redistribution of the Products in any form must
16
+ * include this license and copyright notice.
17
+ *
18
+ * THE SPINE RUNTIMES ARE PROVIDED BY ESOTERIC SOFTWARE LLC "AS IS" AND ANY
19
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
+ * DISCLAIMED. IN NO EVENT SHALL ESOTERIC SOFTWARE LLC BE LIABLE FOR ANY
22
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES,
24
+ * BUSINESS INTERRUPTION, OR LOSS OF USE, DATA, OR PROFITS) HOWEVER CAUSED AND
25
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27
+ * THE SPINE RUNTIMES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
+ *****************************************************************************/
29
+ import { Color, MathUtils } from "../Utils";
30
+ import { VertexAttachment } from "./Attachment";
31
+ /** An attachment which is a single point and a rotation. This can be used to spawn projectiles, particles, etc. A bone can be
32
+ * used in similar ways, but a PointAttachment is slightly less expensive to compute and can be hidden, shown, and placed in a
33
+ * skin.
34
+ *
35
+ * See [Point Attachments](http://esotericsoftware.com/spine-point-attachments) in the Spine User Guide. */
36
+ export class PointAttachment extends VertexAttachment {
37
+ constructor(name) {
38
+ super(name);
39
+ this.x = 0;
40
+ this.y = 0;
41
+ this.rotation = 0;
42
+ /** The color of the point attachment as it was in Spine. Available only when nonessential data was exported. Point attachments
43
+ * are not usually rendered at runtime. */
44
+ this.color = new Color(0.38, 0.94, 0, 1);
45
+ }
46
+ computeWorldPosition(bone, point) {
47
+ point.x = this.x * bone.a + this.y * bone.b + bone.worldX;
48
+ point.y = this.x * bone.c + this.y * bone.d + bone.worldY;
49
+ return point;
50
+ }
51
+ computeWorldRotation(bone) {
52
+ let cos = MathUtils.cosDeg(this.rotation), sin = MathUtils.sinDeg(this.rotation);
53
+ let x = cos * bone.a + sin * bone.b;
54
+ let y = cos * bone.c + sin * bone.d;
55
+ return Math.atan2(y, x) * MathUtils.radDeg;
56
+ }
57
+ copy() {
58
+ let copy = new PointAttachment(this.name);
59
+ copy.x = this.x;
60
+ copy.y = this.y;
61
+ copy.rotation = this.rotation;
62
+ copy.color.setFromColor(this.color);
63
+ return copy;
64
+ }
65
+ }
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUG9pbnRBdHRhY2htZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F0dGFjaG1lbnRzL1BvaW50QXR0YWNobWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OytFQTJCK0U7QUFHL0UsT0FBTyxFQUFFLEtBQUssRUFBVyxTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDckQsT0FBTyxFQUFFLGdCQUFnQixFQUFjLE1BQU0sY0FBYyxDQUFDO0FBRTVEOzs7OzJHQUkyRztBQUMzRyxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxnQkFBZ0I7SUFTcEQsWUFBYSxJQUFZO1FBQ3hCLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQVRiLE1BQUMsR0FBVyxDQUFDLENBQUM7UUFDZCxNQUFDLEdBQVcsQ0FBQyxDQUFDO1FBQ2QsYUFBUSxHQUFXLENBQUMsQ0FBQztRQUVyQjtrREFDMEM7UUFDMUMsVUFBSyxHQUFHLElBQUksS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBSXBDLENBQUM7SUFFRCxvQkFBb0IsQ0FBRSxJQUFVLEVBQUUsS0FBYztRQUMvQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUMxRCxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUMxRCxPQUFPLEtBQUssQ0FBQztJQUNkLENBQUM7SUFFRCxvQkFBb0IsQ0FBRSxJQUFVO1FBQy9CLElBQUksR0FBRyxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEdBQUcsR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNqRixJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNwQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQUk7UUFDSCxJQUFJLElBQUksR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2hCLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNoQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDOUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLE9BQU8sSUFBSSxDQUFDO0lBQ2IsQ0FBQztDQUNEIn0=
@@ -0,0 +1,111 @@
1
+ /******************************************************************************
2
+ * Spine Runtimes License Agreement
3
+ * Last updated September 24, 2021. Replaces all prior versions.
4
+ *
5
+ * Copyright (c) 2013-2021, Esoteric Software LLC
6
+ *
7
+ * Integration of the Spine Runtimes into software or otherwise creating
8
+ * derivative works of the Spine Runtimes is permitted under the terms and
9
+ * conditions of Section 2 of the Spine Editor License Agreement:
10
+ * http://esotericsoftware.com/spine-editor-license
11
+ *
12
+ * Otherwise, it is permitted to integrate the Spine Runtimes into software
13
+ * or otherwise create derivative works of the Spine Runtimes (collectively,
14
+ * "Products"), provided that each user of the Products must obtain their own
15
+ * Spine Editor license and redistribution of the Products in any form must
16
+ * include this license and copyright notice.
17
+ *
18
+ * THE SPINE RUNTIMES ARE PROVIDED BY ESOTERIC SOFTWARE LLC "AS IS" AND ANY
19
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
+ * DISCLAIMED. IN NO EVENT SHALL ESOTERIC SOFTWARE LLC BE LIABLE FOR ANY
22
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES,
24
+ * BUSINESS INTERRUPTION, OR LOSS OF USE, DATA, OR PROFITS) HOWEVER CAUSED AND
25
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27
+ * THE SPINE RUNTIMES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
+ *****************************************************************************/
29
+ import { TextureRegion } from "../Texture";
30
+ import { Color, NumberArrayLike } from "../Utils";
31
+ import { Attachment } from "./Attachment";
32
+ import { HasTextureRegion } from "./HasTextureRegion";
33
+ import { Sequence } from "./Sequence";
34
+ import { Slot } from "../Slot";
35
+ /** An attachment that displays a textured quadrilateral.
36
+ *
37
+ * See [Region attachments](http://esotericsoftware.com/spine-regions) in the Spine User Guide. */
38
+ export declare class RegionAttachment extends Attachment implements HasTextureRegion {
39
+ /** The local x translation. */
40
+ x: number;
41
+ /** The local y translation. */
42
+ y: number;
43
+ /** The local scaleX. */
44
+ scaleX: number;
45
+ /** The local scaleY. */
46
+ scaleY: number;
47
+ /** The local rotation. */
48
+ rotation: number;
49
+ /** The width of the region attachment in Spine. */
50
+ width: number;
51
+ /** The height of the region attachment in Spine. */
52
+ height: number;
53
+ /** The color to tint the region attachment. */
54
+ color: Color;
55
+ /** The name of the texture region for this attachment. */
56
+ path: string;
57
+ private rendererObject;
58
+ region: TextureRegion | null;
59
+ sequence: Sequence | null;
60
+ /** For each of the 4 vertices, a pair of <code>x,y</code> values that is the local position of the vertex.
61
+ *
62
+ * See {@link #updateOffset()}. */
63
+ offset: NumberArrayLike;
64
+ uvs: NumberArrayLike;
65
+ tempColor: Color;
66
+ constructor(name: string, path: string);
67
+ /** Calculates the {@link #offset} using the region settings. Must be called after changing region settings. */
68
+ updateRegion(): void;
69
+ /** Transforms the attachment's four vertices to world coordinates. If the attachment has a {@link #sequence}, the region may
70
+ * be changed.
71
+ * <p>
72
+ * See <a href="http://esotericsoftware.com/spine-runtime-skeletons#World-transforms">World transforms</a> in the Spine
73
+ * Runtimes Guide.
74
+ * @param worldVertices The output world vertices. Must have a length >= <code>offset</code> + 8.
75
+ * @param offset The <code>worldVertices</code> index to begin writing values.
76
+ * @param stride The number of <code>worldVertices</code> entries between the value pairs written. */
77
+ computeWorldVertices(slot: Slot, worldVertices: NumberArrayLike, offset: number, stride: number): void;
78
+ copy(): Attachment;
79
+ static X1: number;
80
+ static Y1: number;
81
+ static C1R: number;
82
+ static C1G: number;
83
+ static C1B: number;
84
+ static C1A: number;
85
+ static U1: number;
86
+ static V1: number;
87
+ static X2: number;
88
+ static Y2: number;
89
+ static C2R: number;
90
+ static C2G: number;
91
+ static C2B: number;
92
+ static C2A: number;
93
+ static U2: number;
94
+ static V2: number;
95
+ static X3: number;
96
+ static Y3: number;
97
+ static C3R: number;
98
+ static C3G: number;
99
+ static C3B: number;
100
+ static C3A: number;
101
+ static U3: number;
102
+ static V3: number;
103
+ static X4: number;
104
+ static Y4: number;
105
+ static C4R: number;
106
+ static C4G: number;
107
+ static C4B: number;
108
+ static C4A: number;
109
+ static U4: number;
110
+ static V4: number;
111
+ }
@@ -0,0 +1,215 @@
1
+ /******************************************************************************
2
+ * Spine Runtimes License Agreement
3
+ * Last updated September 24, 2021. Replaces all prior versions.
4
+ *
5
+ * Copyright (c) 2013-2021, Esoteric Software LLC
6
+ *
7
+ * Integration of the Spine Runtimes into software or otherwise creating
8
+ * derivative works of the Spine Runtimes is permitted under the terms and
9
+ * conditions of Section 2 of the Spine Editor License Agreement:
10
+ * http://esotericsoftware.com/spine-editor-license
11
+ *
12
+ * Otherwise, it is permitted to integrate the Spine Runtimes into software
13
+ * or otherwise create derivative works of the Spine Runtimes (collectively,
14
+ * "Products"), provided that each user of the Products must obtain their own
15
+ * Spine Editor license and redistribution of the Products in any form must
16
+ * include this license and copyright notice.
17
+ *
18
+ * THE SPINE RUNTIMES ARE PROVIDED BY ESOTERIC SOFTWARE LLC "AS IS" AND ANY
19
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
+ * DISCLAIMED. IN NO EVENT SHALL ESOTERIC SOFTWARE LLC BE LIABLE FOR ANY
22
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES,
24
+ * BUSINESS INTERRUPTION, OR LOSS OF USE, DATA, OR PROFITS) HOWEVER CAUSED AND
25
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27
+ * THE SPINE RUNTIMES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
+ *****************************************************************************/
29
+ import { Color, Utils } from "../Utils";
30
+ import { Attachment } from "./Attachment";
31
+ /** An attachment that displays a textured quadrilateral.
32
+ *
33
+ * See [Region attachments](http://esotericsoftware.com/spine-regions) in the Spine User Guide. */
34
+ export class RegionAttachment extends Attachment {
35
+ constructor(name, path) {
36
+ super(name);
37
+ /** The local x translation. */
38
+ this.x = 0;
39
+ /** The local y translation. */
40
+ this.y = 0;
41
+ /** The local scaleX. */
42
+ this.scaleX = 1;
43
+ /** The local scaleY. */
44
+ this.scaleY = 1;
45
+ /** The local rotation. */
46
+ this.rotation = 0;
47
+ /** The width of the region attachment in Spine. */
48
+ this.width = 0;
49
+ /** The height of the region attachment in Spine. */
50
+ this.height = 0;
51
+ /** The color to tint the region attachment. */
52
+ this.color = new Color(1, 1, 1, 1);
53
+ this.rendererObject = null;
54
+ this.region = null;
55
+ this.sequence = null;
56
+ /** For each of the 4 vertices, a pair of <code>x,y</code> values that is the local position of the vertex.
57
+ *
58
+ * See {@link #updateOffset()}. */
59
+ this.offset = Utils.newFloatArray(8);
60
+ this.uvs = Utils.newFloatArray(8);
61
+ this.tempColor = new Color(1, 1, 1, 1);
62
+ this.path = path;
63
+ }
64
+ /** Calculates the {@link #offset} using the region settings. Must be called after changing region settings. */
65
+ updateRegion() {
66
+ if (!this.region)
67
+ throw new Error("Region not set.");
68
+ let region = this.region;
69
+ let uvs = this.uvs;
70
+ if (region == null) {
71
+ uvs[0] = 0;
72
+ uvs[1] = 0;
73
+ uvs[2] = 0;
74
+ uvs[3] = 1;
75
+ uvs[4] = 1;
76
+ uvs[5] = 1;
77
+ uvs[6] = 1;
78
+ uvs[7] = 0;
79
+ return;
80
+ }
81
+ let regionScaleX = this.width / this.region.originalWidth * this.scaleX;
82
+ let regionScaleY = this.height / this.region.originalHeight * this.scaleY;
83
+ let localX = -this.width / 2 * this.scaleX + this.region.offsetX * regionScaleX;
84
+ let localY = -this.height / 2 * this.scaleY + this.region.offsetY * regionScaleY;
85
+ let localX2 = localX + this.region.width * regionScaleX;
86
+ let localY2 = localY + this.region.height * regionScaleY;
87
+ let radians = this.rotation * Math.PI / 180;
88
+ let cos = Math.cos(radians);
89
+ let sin = Math.sin(radians);
90
+ let x = this.x, y = this.y;
91
+ let localXCos = localX * cos + x;
92
+ let localXSin = localX * sin;
93
+ let localYCos = localY * cos + y;
94
+ let localYSin = localY * sin;
95
+ let localX2Cos = localX2 * cos + x;
96
+ let localX2Sin = localX2 * sin;
97
+ let localY2Cos = localY2 * cos + y;
98
+ let localY2Sin = localY2 * sin;
99
+ let offset = this.offset;
100
+ offset[0] = localXCos - localYSin;
101
+ offset[1] = localYCos + localXSin;
102
+ offset[2] = localXCos - localY2Sin;
103
+ offset[3] = localY2Cos + localXSin;
104
+ offset[4] = localX2Cos - localY2Sin;
105
+ offset[5] = localY2Cos + localX2Sin;
106
+ offset[6] = localX2Cos - localYSin;
107
+ offset[7] = localYCos + localX2Sin;
108
+ if (region.degrees == 90) {
109
+ uvs[0] = region.u2;
110
+ uvs[1] = region.v2;
111
+ uvs[2] = region.u;
112
+ uvs[3] = region.v2;
113
+ uvs[4] = region.u;
114
+ uvs[5] = region.v;
115
+ uvs[6] = region.u2;
116
+ uvs[7] = region.v;
117
+ }
118
+ else {
119
+ uvs[0] = region.u;
120
+ uvs[1] = region.v2;
121
+ uvs[2] = region.u;
122
+ uvs[3] = region.v;
123
+ uvs[4] = region.u2;
124
+ uvs[5] = region.v;
125
+ uvs[6] = region.u2;
126
+ uvs[7] = region.v2;
127
+ }
128
+ }
129
+ /** Transforms the attachment's four vertices to world coordinates. If the attachment has a {@link #sequence}, the region may
130
+ * be changed.
131
+ * <p>
132
+ * See <a href="http://esotericsoftware.com/spine-runtime-skeletons#World-transforms">World transforms</a> in the Spine
133
+ * Runtimes Guide.
134
+ * @param worldVertices The output world vertices. Must have a length >= <code>offset</code> + 8.
135
+ * @param offset The <code>worldVertices</code> index to begin writing values.
136
+ * @param stride The number of <code>worldVertices</code> entries between the value pairs written. */
137
+ computeWorldVertices(slot, worldVertices, offset, stride) {
138
+ if (this.sequence != null)
139
+ this.sequence.apply(slot, this);
140
+ let bone = slot.bone;
141
+ let vertexOffset = this.offset;
142
+ let x = bone.worldX, y = bone.worldY;
143
+ let a = bone.a, b = bone.b, c = bone.c, d = bone.d;
144
+ let offsetX = 0, offsetY = 0;
145
+ offsetX = vertexOffset[0];
146
+ offsetY = vertexOffset[1];
147
+ worldVertices[offset] = offsetX * a + offsetY * b + x; // br
148
+ worldVertices[offset + 1] = offsetX * c + offsetY * d + y;
149
+ offset += stride;
150
+ offsetX = vertexOffset[2];
151
+ offsetY = vertexOffset[3];
152
+ worldVertices[offset] = offsetX * a + offsetY * b + x; // bl
153
+ worldVertices[offset + 1] = offsetX * c + offsetY * d + y;
154
+ offset += stride;
155
+ offsetX = vertexOffset[4];
156
+ offsetY = vertexOffset[5];
157
+ worldVertices[offset] = offsetX * a + offsetY * b + x; // ul
158
+ worldVertices[offset + 1] = offsetX * c + offsetY * d + y;
159
+ offset += stride;
160
+ offsetX = vertexOffset[6];
161
+ offsetY = vertexOffset[7];
162
+ worldVertices[offset] = offsetX * a + offsetY * b + x; // ur
163
+ worldVertices[offset + 1] = offsetX * c + offsetY * d + y;
164
+ }
165
+ copy() {
166
+ let copy = new RegionAttachment(this.name, this.path);
167
+ copy.region = this.region;
168
+ copy.rendererObject = this.rendererObject;
169
+ copy.x = this.x;
170
+ copy.y = this.y;
171
+ copy.scaleX = this.scaleX;
172
+ copy.scaleY = this.scaleY;
173
+ copy.rotation = this.rotation;
174
+ copy.width = this.width;
175
+ copy.height = this.height;
176
+ Utils.arrayCopy(this.uvs, 0, copy.uvs, 0, 8);
177
+ Utils.arrayCopy(this.offset, 0, copy.offset, 0, 8);
178
+ copy.color.setFromColor(this.color);
179
+ copy.sequence = this.sequence != null ? this.sequence.copy() : null;
180
+ return copy;
181
+ }
182
+ }
183
+ RegionAttachment.X1 = 0;
184
+ RegionAttachment.Y1 = 1;
185
+ RegionAttachment.C1R = 2;
186
+ RegionAttachment.C1G = 3;
187
+ RegionAttachment.C1B = 4;
188
+ RegionAttachment.C1A = 5;
189
+ RegionAttachment.U1 = 6;
190
+ RegionAttachment.V1 = 7;
191
+ RegionAttachment.X2 = 8;
192
+ RegionAttachment.Y2 = 9;
193
+ RegionAttachment.C2R = 10;
194
+ RegionAttachment.C2G = 11;
195
+ RegionAttachment.C2B = 12;
196
+ RegionAttachment.C2A = 13;
197
+ RegionAttachment.U2 = 14;
198
+ RegionAttachment.V2 = 15;
199
+ RegionAttachment.X3 = 16;
200
+ RegionAttachment.Y3 = 17;
201
+ RegionAttachment.C3R = 18;
202
+ RegionAttachment.C3G = 19;
203
+ RegionAttachment.C3B = 20;
204
+ RegionAttachment.C3A = 21;
205
+ RegionAttachment.U3 = 22;
206
+ RegionAttachment.V3 = 23;
207
+ RegionAttachment.X4 = 24;
208
+ RegionAttachment.Y4 = 25;
209
+ RegionAttachment.C4R = 26;
210
+ RegionAttachment.C4G = 27;
211
+ RegionAttachment.C4B = 28;
212
+ RegionAttachment.C4A = 29;
213
+ RegionAttachment.U4 = 30;
214
+ RegionAttachment.V4 = 31;
215
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVnaW9uQXR0YWNobWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hdHRhY2htZW50cy9SZWdpb25BdHRhY2htZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7K0VBMkIrRTtBQUkvRSxPQUFPLEVBQUUsS0FBSyxFQUFtQixLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUsxQzs7a0dBRWtHO0FBQ2xHLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxVQUFVO0lBeUMvQyxZQUFhLElBQVksRUFBRSxJQUFZO1FBQ3RDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQXpDYiwrQkFBK0I7UUFDL0IsTUFBQyxHQUFHLENBQUMsQ0FBQztRQUVOLCtCQUErQjtRQUMvQixNQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRU4sd0JBQXdCO1FBQ3hCLFdBQU0sR0FBRyxDQUFDLENBQUM7UUFFWCx3QkFBd0I7UUFDeEIsV0FBTSxHQUFHLENBQUMsQ0FBQztRQUVYLDBCQUEwQjtRQUMxQixhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBRWIsbURBQW1EO1FBQ25ELFVBQUssR0FBRyxDQUFDLENBQUM7UUFFVixvREFBb0Q7UUFDcEQsV0FBTSxHQUFHLENBQUMsQ0FBQztRQUVYLCtDQUErQztRQUMvQyxVQUFLLEdBQUcsSUFBSSxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFLdEIsbUJBQWMsR0FBUSxJQUFJLENBQUM7UUFDbkMsV0FBTSxHQUF5QixJQUFJLENBQUM7UUFDcEMsYUFBUSxHQUFvQixJQUFJLENBQUM7UUFFakM7OzBDQUVrQztRQUNsQyxXQUFNLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVoQyxRQUFHLEdBQUcsS0FBSyxDQUFD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QUFPLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQztRQUNuQyxJQUFJLFVBQVUsR0FBRyxPQUFPLEdBQUcsR0FBRyxDQUFDO1FBQy9CLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDekIsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDbEMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDbEMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsR0FBRyxVQUFVLENBQUM7UUFDbkMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsR0FBRyxTQUFTLENBQUM7UUFDbkMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDcEMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDcEMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsR0FBRyxTQUFTLENBQUM7UUFDbkMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsR0FBRyxVQUFVLENBQUM7UUFFbkMsSUFBSSxNQUFNLENBQUMsT0FBTyxJQUFJLEVBQUUsRUFBRTtZQUN6QixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNuQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNuQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNsQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNuQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNsQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNsQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNuQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQztTQUNsQjthQUFNO1lBQ04sR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDbEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDbkIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDbEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDbEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDbkIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDbEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDbkIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7U0FDbkI7SUFDRixDQUFDO0lBRUQ7Ozs7Ozs7eUdBT3FHO0lBQ3JHLG9CQUFvQixDQUFFLElBQVUsRUFBRSxhQUE4QixFQUFFLE1BQWMsRUFBRSxNQUFjO1FBQy9GLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJO1lBQ3hCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVqQyxJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ3JCLElBQUksWUFBWSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDL0IsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNyQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ25ELElBQUksT0FBTyxHQUFHLENBQUMsRUFBRSxPQUFPLEdBQUcsQ0FBQyxDQUFDO1FBRTdCLE9BQU8sR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUIsT0FBTyxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxQixhQUFhLENBQUMsTUFBTSxDQUFDLEdBQUcsT0FBTyxHQUFHLENBQUMsR0FBRyxPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUs7UUFDNUQsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsR0FBRyxPQUFPLEdBQUcsQ0FBQyxHQUFHLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzFELE1BQU0sSUFBSSxNQUFNLENBQUM7UUFFakIsT0FBTyxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxQixPQUFPLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFCLGFBQWEsQ0FBQyxNQUFNLENBQUMsR0FBRyxPQUFPLEdBQUcsQ0FBQyxHQUFHLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSztRQUM1RCxhQUFhLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxHQUFHLE9BQU8sR0FBRyxDQUFDLEdBQUcsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUQsTUFBTSxJQUFJLE1BQU0sQ0FBQztRQUVqQixPQUFPLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFCLE9BQU8sR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUIsYUFBYSxDQUFDLE1BQU0sQ0FBQyxHQUFHLE9BQU8sR0FBRyxDQUFDLEdBQUcsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLO1FBQzVELGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEdBQUcsT0FBTyxHQUFHLENBQUMsR0FBRyxPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMxRCxNQUFNLElBQUksTUFBTSxDQUFDO1FBRWpCLE9BQU8sR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUIsT0FBTyxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxQixhQUFhLENBQUMsTUFBTSxDQUFDLEdBQUcsT0FBTyxHQUFHLENBQUMsR0FBRyxPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUs7UUFDNUQsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsR0FBRyxPQUFPLEdBQUcsQ0FBQyxHQUFHLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxJQUFJO1FBQ0gsSUFBSSxJQUFJLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDMUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDO1FBQzFDLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNoQixJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDaEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzFCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDOUIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUMxQixLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzdDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNwRSxPQUFPLElBQUksQ0FBQztJQUNiLENBQUM7O0FBRU0sbUJBQUUsR0FBRyxDQUFDLENBQUM7QUFDUCxtQkFBRSxHQUFHLENBQUMsQ0FBQztBQUNQLG9CQUFHLEdBQUcsQ0FBQyxDQUFDO0FBQ1Isb0JBQUcsR0FBRyxDQUFDLENBQUM7QUFDUixvQkFBRyxHQUFHLENBQUMsQ0FBQztBQUNSLG9CQUFHLEdBQUcsQ0FBQyxDQUFDO0FBQ1IsbUJBQUUsR0FBRyxDQUFDLENBQUM7QUFDUCxtQkFBRSxHQUFHLENBQUMsQ0FBQztBQUVQLG1CQUFFLEdBQUcsQ0FBQyxDQUFDO0FBQ1AsbUJBQUUsR0FBRyxDQUFDLENBQUM7QUFDUCxvQkFBRyxHQUFHLEVBQUUsQ0FBQztBQUNULG9CQUFHLEdBQUcsRUFBRSxDQUFDO0FBQ1Qsb0JBQUcsR0FBRyxFQUFFLENBQUM7QUFDVCxvQkFBRyxHQUFHLEVBQUUsQ0FBQztBQUNULG1CQUFFLEdBQUcsRUFBRSxDQUFDO0FBQ1IsbUJBQUUsR0FBRyxFQUFFLENBQUM7QUFFUixtQkFBRSxHQUFHLEVBQUUsQ0FBQztBQUNSLG1CQUFFLEdBQUcsRUFBRSxDQUFDO0FBQ1Isb0JBQUcsR0FBRyxFQUFFLENBQUM7QUFDVCxvQkFBRyxHQUFHLEVBQUUsQ0FBQztBQUNULG9CQUFHLEdBQUcsRUFBRSxDQUFDO0FBQ1Qsb0JBQUcsR0FBRyxFQUFFLENBQUM7QUFDVCxtQkFBRSxHQUFHLEVBQUUsQ0FBQztBQUNSLG1CQUFFLEdBQUcsRUFBRSxDQUFDO0FBRVIsbUJBQUUsR0FBRyxFQUFFLENBQUM7QUFDUixtQkFBRSxHQUFHLEVBQUUsQ0FBQztBQUNSLG9CQUFHLEdBQUcsRUFBRSxDQUFDO0FBQ1Qsb0JBQUcsR0FBRyxFQUFFLENBQUM7QUFDVCxvQkFBRyxHQUFHLEVBQUUsQ0FBQztBQUNULG9CQUFHLEdBQUcsRUFBRSxDQUFDO0FBQ1QsbUJBQUUsR0FBRyxFQUFFLENBQUM7QUFDUixtQkFBRSxHQUFHLEVBQUUsQ0FBQyJ9
@@ -0,0 +1,55 @@
1
+ /******************************************************************************
2
+ * Spine Runtimes License Agreement
3
+ * Last updated September 24, 2021. Replaces all prior versions.
4
+ *
5
+ * Copyright (c) 2013-2021, Esoteric Software LLC
6
+ *
7
+ * Integration of the Spine Runtimes into software or otherwise creating
8
+ * derivative works of the Spine Runtimes is permitted under the terms and
9
+ * conditions of Section 2 of the Spine Editor License Agreement:
10
+ * http://esotericsoftware.com/spine-editor-license
11
+ *
12
+ * Otherwise, it is permitted to integrate the Spine Runtimes into software
13
+ * or otherwise create derivative works of the Spine Runtimes (collectively,
14
+ * "Products"), provided that each user of the Products must obtain their own
15
+ * Spine Editor license and redistribution of the Products in any form must
16
+ * include this license and copyright notice.
17
+ *
18
+ * THE SPINE RUNTIMES ARE PROVIDED BY ESOTERIC SOFTWARE LLC "AS IS" AND ANY
19
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
+ * DISCLAIMED. IN NO EVENT SHALL ESOTERIC SOFTWARE LLC BE LIABLE FOR ANY
22
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES,
24
+ * BUSINESS INTERRUPTION, OR LOSS OF USE, DATA, OR PROFITS) HOWEVER CAUSED AND
25
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27
+ * THE SPINE RUNTIMES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
+ *****************************************************************************/
29
+ import { TextureRegion } from "../Texture";
30
+ import { Slot } from "../Slot";
31
+ import { HasTextureRegion } from "./HasTextureRegion";
32
+ export declare class Sequence {
33
+ private static _nextID;
34
+ id: number;
35
+ regions: TextureRegion[];
36
+ start: number;
37
+ digits: number;
38
+ /** The index of the region to show for the setup pose. */
39
+ setupIndex: number;
40
+ constructor(count: number);
41
+ copy(): Sequence;
42
+ apply(slot: Slot, attachment: HasTextureRegion): void;
43
+ getPath(basePath: string, index: number): string;
44
+ private static nextID;
45
+ }
46
+ export declare enum SequenceMode {
47
+ hold = 0,
48
+ once = 1,
49
+ loop = 2,
50
+ pingpong = 3,
51
+ onceReverse = 4,
52
+ loopReverse = 5,
53
+ pingpongReverse = 6
54
+ }
55
+ export declare const SequenceModeValues: SequenceMode[];