@melonjs/spine-plugin 2.1.0 → 2.2.1

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.
package/build/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Spine plugin - 2.1.0
2
+ * melonJS Spine plugin - 2.2.1
3
3
  * http://www.melonjs.org
4
4
  * @melonjs/spine-plugin is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -11,7 +11,7 @@ var __export = (target, all) => {
11
11
  __defProp(target, name2, { get: all[name2], enumerable: true });
12
12
  };
13
13
 
14
- // ../../node_modules/.pnpm/@esotericsoftware+spine-canvas@4.2.108/node_modules/@esotericsoftware/spine-canvas/dist/index.js
14
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-canvas@4.2.114/node_modules/@esotericsoftware/spine-canvas/dist/index.js
15
15
  var dist_exports = {};
16
16
  __export(dist_exports, {
17
17
  AlphaTimeline: () => AlphaTimeline,
@@ -136,7 +136,7 @@ __export(dist_exports, {
136
136
  WindowedMean: () => WindowedMean
137
137
  });
138
138
 
139
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/Utils.js
139
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/Utils.js
140
140
  var IntSet = class {
141
141
  array = new Array();
142
142
  add(value) {
@@ -523,7 +523,7 @@ var WindowedMean = class {
523
523
  }
524
524
  };
525
525
 
526
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/attachments/Attachment.js
526
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/attachments/Attachment.js
527
527
  var Attachment = class {
528
528
  name;
529
529
  constructor(name2) {
@@ -638,7 +638,7 @@ var VertexAttachment = class _VertexAttachment extends Attachment {
638
638
  }
639
639
  };
640
640
 
641
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/attachments/Sequence.js
641
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/attachments/Sequence.js
642
642
  var Sequence = class _Sequence {
643
643
  static _nextID = 0;
644
644
  id = _Sequence.nextID();
@@ -702,7 +702,7 @@ var SequenceModeValues = [
702
702
  SequenceMode.pingpongReverse
703
703
  ];
704
704
 
705
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/Animation.js
705
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/Animation.js
706
706
  var Animation = class {
707
707
  /** The animation's name, which is unique across all animations in the skeleton. */
708
708
  name;
@@ -3545,7 +3545,7 @@ var SequenceTimeline = class _SequenceTimeline extends Timeline {
3545
3545
  }
3546
3546
  };
3547
3547
 
3548
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/AnimationState.js
3548
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/AnimationState.js
3549
3549
  var AnimationState = class _AnimationState {
3550
3550
  static _emptyAnimation = new Animation("<empty>", [], 0);
3551
3551
  static emptyAnimation() {
@@ -4586,7 +4586,7 @@ var HOLD_MIX = 4;
4586
4586
  var SETUP = 1;
4587
4587
  var CURRENT = 2;
4588
4588
 
4589
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/AnimationStateData.js
4589
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/AnimationStateData.js
4590
4590
  var AnimationStateData = class {
4591
4591
  /** The SkeletonData to look up animations when they are specified by name. */
4592
4592
  skeletonData;
@@ -4630,7 +4630,7 @@ var AnimationStateData = class {
4630
4630
  }
4631
4631
  };
4632
4632
 
4633
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/attachments/BoundingBoxAttachment.js
4633
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/attachments/BoundingBoxAttachment.js
4634
4634
  var BoundingBoxAttachment = class _BoundingBoxAttachment extends VertexAttachment {
4635
4635
  color = new Color(1, 1, 1, 1);
4636
4636
  constructor(name2) {
@@ -4644,7 +4644,7 @@ var BoundingBoxAttachment = class _BoundingBoxAttachment extends VertexAttachmen
4644
4644
  }
4645
4645
  };
4646
4646
 
4647
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/attachments/ClippingAttachment.js
4647
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/attachments/ClippingAttachment.js
4648
4648
  var ClippingAttachment = class _ClippingAttachment extends VertexAttachment {
4649
4649
  /** Clipping is performed between the clipping polygon's slot and the end slot. Returns null if clipping is done until the end of
4650
4650
  * the skeleton's rendering. */
@@ -4666,7 +4666,7 @@ var ClippingAttachment = class _ClippingAttachment extends VertexAttachment {
4666
4666
  }
4667
4667
  };
4668
4668
 
4669
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/Texture.js
4669
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/Texture.js
4670
4670
  var Texture = class {
4671
4671
  _image;
4672
4672
  constructor(image) {
@@ -4715,7 +4715,7 @@ var FakeTexture = class extends Texture {
4715
4715
  }
4716
4716
  };
4717
4717
 
4718
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/TextureAtlas.js
4718
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/TextureAtlas.js
4719
4719
  var TextureAtlas = class {
4720
4720
  pages = new Array();
4721
4721
  regions = new Array();
@@ -4949,7 +4949,7 @@ var TextureAtlasRegion = class extends TextureRegion {
4949
4949
  }
4950
4950
  };
4951
4951
 
4952
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/attachments/MeshAttachment.js
4952
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/attachments/MeshAttachment.js
4953
4953
  var MeshAttachment = class _MeshAttachment extends VertexAttachment {
4954
4954
  region = null;
4955
4955
  /** The name of the texture region for this attachment. */
@@ -5102,7 +5102,7 @@ var MeshAttachment = class _MeshAttachment extends VertexAttachment {
5102
5102
  }
5103
5103
  };
5104
5104
 
5105
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/attachments/PathAttachment.js
5105
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/attachments/PathAttachment.js
5106
5106
  var PathAttachment = class _PathAttachment extends VertexAttachment {
5107
5107
  /** The lengths along the path in the setup pose from the start of the path to the end of each Bezier curve. */
5108
5108
  lengths = [];
@@ -5129,7 +5129,7 @@ var PathAttachment = class _PathAttachment extends VertexAttachment {
5129
5129
  }
5130
5130
  };
5131
5131
 
5132
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/attachments/PointAttachment.js
5132
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/attachments/PointAttachment.js
5133
5133
  var PointAttachment = class _PointAttachment extends VertexAttachment {
5134
5134
  x = 0;
5135
5135
  y = 0;
@@ -5161,7 +5161,7 @@ var PointAttachment = class _PointAttachment extends VertexAttachment {
5161
5161
  }
5162
5162
  };
5163
5163
 
5164
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/attachments/RegionAttachment.js
5164
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/attachments/RegionAttachment.js
5165
5165
  var RegionAttachment = class _RegionAttachment extends Attachment {
5166
5166
  /** The local x translation. */
5167
5167
  x = 0;
@@ -5343,7 +5343,7 @@ var RegionAttachment = class _RegionAttachment extends Attachment {
5343
5343
  static V4 = 31;
5344
5344
  };
5345
5345
 
5346
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/AtlasAttachmentLoader.js
5346
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/AtlasAttachmentLoader.js
5347
5347
  var AtlasAttachmentLoader = class {
5348
5348
  atlas;
5349
5349
  constructor(atlas) {
@@ -5397,7 +5397,7 @@ var AtlasAttachmentLoader = class {
5397
5397
  }
5398
5398
  };
5399
5399
 
5400
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/BoneData.js
5400
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/BoneData.js
5401
5401
  var BoneData = class {
5402
5402
  /** The index of the bone in {@link Skeleton#getBones()}. */
5403
5403
  index = 0;
@@ -5453,7 +5453,7 @@ var Inherit;
5453
5453
  Inherit2[Inherit2["NoScaleOrReflection"] = 4] = "NoScaleOrReflection";
5454
5454
  })(Inherit || (Inherit = {}));
5455
5455
 
5456
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/Bone.js
5456
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/Bone.js
5457
5457
  var Bone = class {
5458
5458
  /** The bone's setup pose data. */
5459
5459
  data;
@@ -5813,7 +5813,7 @@ var Bone = class {
5813
5813
  }
5814
5814
  };
5815
5815
 
5816
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/ConstraintData.js
5816
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/ConstraintData.js
5817
5817
  var ConstraintData = class {
5818
5818
  name;
5819
5819
  order;
@@ -5825,7 +5825,7 @@ var ConstraintData = class {
5825
5825
  }
5826
5826
  };
5827
5827
 
5828
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/AssetManagerBase.js
5828
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/AssetManagerBase.js
5829
5829
  var AssetManagerBase = class {
5830
5830
  pathPrefix = "";
5831
5831
  textureLoader;
@@ -5994,6 +5994,11 @@ var AssetManagerBase = class {
5994
5994
  try {
5995
5995
  const atlas = this.createTextureAtlas(path, atlasText);
5996
5996
  let toLoad = atlas.pages.length, abort = false;
5997
+ if (toLoad === 0) {
5998
+ this.success(success, path, atlas);
5999
+ resolve(atlas);
6000
+ return;
6001
+ }
5997
6002
  for (let page of atlas.pages) {
5998
6003
  this.loadTexture(!fileAlias ? parent + page.name : fileAlias[page.name], (imagePath, texture) => {
5999
6004
  if (!abort) {
@@ -6287,7 +6292,7 @@ var Downloader = class {
6287
6292
  }
6288
6293
  };
6289
6294
 
6290
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/Event.js
6295
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/Event.js
6291
6296
  var Event = class {
6292
6297
  data;
6293
6298
  intValue = 0;
@@ -6304,7 +6309,7 @@ var Event = class {
6304
6309
  }
6305
6310
  };
6306
6311
 
6307
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/EventData.js
6312
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/EventData.js
6308
6313
  var EventData = class {
6309
6314
  name;
6310
6315
  intValue = 0;
@@ -6318,7 +6323,7 @@ var EventData = class {
6318
6323
  }
6319
6324
  };
6320
6325
 
6321
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/IkConstraint.js
6326
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/IkConstraint.js
6322
6327
  var IkConstraint = class {
6323
6328
  /** The IK constraint's setup pose data. */
6324
6329
  data;
@@ -6600,7 +6605,7 @@ var IkConstraint = class {
6600
6605
  }
6601
6606
  };
6602
6607
 
6603
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/IkConstraintData.js
6608
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/IkConstraintData.js
6604
6609
  var IkConstraintData = class extends ConstraintData {
6605
6610
  /** The bones that are constrained by this IK constraint. */
6606
6611
  bones = new Array();
@@ -6634,7 +6639,7 @@ var IkConstraintData = class extends ConstraintData {
6634
6639
  }
6635
6640
  };
6636
6641
 
6637
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/PathConstraintData.js
6642
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/PathConstraintData.js
6638
6643
  var PathConstraintData = class extends ConstraintData {
6639
6644
  /** The bones that will be modified by this path constraint. */
6640
6645
  bones = new Array();
@@ -6687,7 +6692,7 @@ var RotateMode;
6687
6692
  RotateMode2[RotateMode2["ChainScale"] = 2] = "ChainScale";
6688
6693
  })(RotateMode || (RotateMode = {}));
6689
6694
 
6690
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/PathConstraint.js
6695
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/PathConstraint.js
6691
6696
  var PathConstraint = class _PathConstraint {
6692
6697
  static NONE = -1;
6693
6698
  static BEFORE = -2;
@@ -7124,7 +7129,7 @@ var PathConstraint = class _PathConstraint {
7124
7129
  }
7125
7130
  };
7126
7131
 
7127
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/PhysicsConstraint.js
7132
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/PhysicsConstraint.js
7128
7133
  var PhysicsConstraint = class {
7129
7134
  data;
7130
7135
  _bone = null;
@@ -7388,7 +7393,7 @@ var PhysicsConstraint = class {
7388
7393
  }
7389
7394
  };
7390
7395
 
7391
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/Slot.js
7396
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/Slot.js
7392
7397
  var Slot = class {
7393
7398
  /** The slot's setup pose data. */
7394
7399
  data;
@@ -7455,7 +7460,7 @@ var Slot = class {
7455
7460
  }
7456
7461
  };
7457
7462
 
7458
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/TransformConstraint.js
7463
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/TransformConstraint.js
7459
7464
  var TransformConstraint = class {
7460
7465
  /** The transform constraint's setup pose data. */
7461
7466
  data;
@@ -7678,7 +7683,7 @@ var TransformConstraint = class {
7678
7683
  }
7679
7684
  };
7680
7685
 
7681
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/Skeleton.js
7686
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/Skeleton.js
7682
7687
  var Skeleton = class _Skeleton {
7683
7688
  static quadTriangles = [0, 1, 2, 2, 3, 0];
7684
7689
  static yDown = false;
@@ -8286,7 +8291,7 @@ var Physics;
8286
8291
  Physics2[Physics2["pose"] = 3] = "pose";
8287
8292
  })(Physics || (Physics = {}));
8288
8293
 
8289
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/PhysicsConstraintData.js
8294
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/PhysicsConstraintData.js
8290
8295
  var PhysicsConstraintData = class extends ConstraintData {
8291
8296
  _bone = null;
8292
8297
  /** The bone constrained by this physics constraint. */
@@ -8326,7 +8331,7 @@ var PhysicsConstraintData = class extends ConstraintData {
8326
8331
  }
8327
8332
  };
8328
8333
 
8329
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/SkeletonData.js
8334
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/SkeletonData.js
8330
8335
  var SkeletonData = class {
8331
8336
  /** The skeleton's name, which by default is the name of the skeleton data file, if possible. May be null. */
8332
8337
  name = null;
@@ -8504,7 +8509,7 @@ var SkeletonData = class {
8504
8509
  }
8505
8510
  };
8506
8511
 
8507
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/Skin.js
8512
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/Skin.js
8508
8513
  var SkinEntry = class {
8509
8514
  slotIndex;
8510
8515
  name;
@@ -8679,7 +8684,7 @@ var Skin = class {
8679
8684
  }
8680
8685
  };
8681
8686
 
8682
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/SlotData.js
8687
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/SlotData.js
8683
8688
  var SlotData = class {
8684
8689
  /** The index of the slot in {@link Skeleton#getSlots()}. */
8685
8690
  index = 0;
@@ -8719,7 +8724,7 @@ var BlendMode;
8719
8724
  BlendMode2[BlendMode2["Screen"] = 3] = "Screen";
8720
8725
  })(BlendMode || (BlendMode = {}));
8721
8726
 
8722
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/TransformConstraintData.js
8727
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/TransformConstraintData.js
8723
8728
  var TransformConstraintData = class extends ConstraintData {
8724
8729
  /** The bones that will be modified by this transform constraint. */
8725
8730
  bones = new Array();
@@ -8759,7 +8764,7 @@ var TransformConstraintData = class extends ConstraintData {
8759
8764
  }
8760
8765
  };
8761
8766
 
8762
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/SkeletonBinary.js
8767
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/SkeletonBinary.js
8763
8768
  var SkeletonBinary = class {
8764
8769
  /** Scales bone positions, image sizes, and translations as they are loaded. This allows different size images to be used at
8765
8770
  * runtime than were used in Spine.
@@ -9997,7 +10002,7 @@ var PHYSICS_RESET = 8;
9997
10002
  var CURVE_STEPPED = 1;
9998
10003
  var CURVE_BEZIER = 2;
9999
10004
 
10000
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/SkeletonBounds.js
10005
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/SkeletonBounds.js
10001
10006
  var SkeletonBounds = class {
10002
10007
  /** The left edge of the axis aligned bounding box. */
10003
10008
  minX = 0;
@@ -10182,7 +10187,7 @@ var SkeletonBounds = class {
10182
10187
  }
10183
10188
  };
10184
10189
 
10185
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/Triangulator.js
10190
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/Triangulator.js
10186
10191
  var Triangulator = class _Triangulator {
10187
10192
  convexPolygons = new Array();
10188
10193
  convexPolygonsIndices = new Array();
@@ -10388,7 +10393,7 @@ var Triangulator = class _Triangulator {
10388
10393
  }
10389
10394
  };
10390
10395
 
10391
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/SkeletonClipping.js
10396
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/SkeletonClipping.js
10392
10397
  var SkeletonClipping = class _SkeletonClipping {
10393
10398
  triangulator = new Triangulator();
10394
10399
  clippingPolygon = new Array();
@@ -10833,7 +10838,7 @@ var SkeletonClipping = class _SkeletonClipping {
10833
10838
  }
10834
10839
  };
10835
10840
 
10836
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/SkeletonJson.js
10841
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/SkeletonJson.js
10837
10842
  var SkeletonJson = class {
10838
10843
  attachmentLoader;
10839
10844
  /** Scales bone positions, image sizes, and translations as they are loaded. This allows different size images to be used at
@@ -11881,7 +11886,7 @@ function getValue(map, property, defaultValue) {
11881
11886
  return map[property] !== void 0 ? map[property] : defaultValue;
11882
11887
  }
11883
11888
 
11884
- // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.108/node_modules/@esotericsoftware/spine-core/dist/polyfills.js
11889
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-core@4.2.114/node_modules/@esotericsoftware/spine-core/dist/polyfills.js
11885
11890
  (() => {
11886
11891
  if (typeof Math.fround === "undefined") {
11887
11892
  Math.fround = /* @__PURE__ */ (function(array) {
@@ -11892,7 +11897,7 @@ function getValue(map, property, defaultValue) {
11892
11897
  }
11893
11898
  })();
11894
11899
 
11895
- // ../../node_modules/.pnpm/@esotericsoftware+spine-canvas@4.2.108/node_modules/@esotericsoftware/spine-canvas/dist/CanvasTexture.js
11900
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-canvas@4.2.114/node_modules/@esotericsoftware/spine-canvas/dist/CanvasTexture.js
11896
11901
  var CanvasTexture = class extends Texture {
11897
11902
  constructor(image) {
11898
11903
  super(image);
@@ -11905,7 +11910,7 @@ var CanvasTexture = class extends Texture {
11905
11910
  }
11906
11911
  };
11907
11912
 
11908
- // ../../node_modules/.pnpm/@esotericsoftware+spine-canvas@4.2.108/node_modules/@esotericsoftware/spine-canvas/dist/AssetManager.js
11913
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-canvas@4.2.114/node_modules/@esotericsoftware/spine-canvas/dist/AssetManager.js
11909
11914
  var AssetManager = class extends AssetManagerBase {
11910
11915
  constructor(pathPrefix = "", downloader = new Downloader()) {
11911
11916
  super((image) => {
@@ -11914,7 +11919,7 @@ var AssetManager = class extends AssetManagerBase {
11914
11919
  }
11915
11920
  };
11916
11921
 
11917
- // ../../node_modules/.pnpm/@esotericsoftware+spine-canvas@4.2.108/node_modules/@esotericsoftware/spine-canvas/dist/SkeletonRenderer.js
11922
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-canvas@4.2.114/node_modules/@esotericsoftware/spine-canvas/dist/SkeletonRenderer.js
11918
11923
  var worldVertices = Utils.newFloatArray(8);
11919
11924
  var SkeletonRenderer = class _SkeletonRenderer {
11920
11925
  static QUAD_TRIANGLES = [0, 1, 2, 2, 3, 0];
@@ -12134,7 +12139,7 @@ var SkeletonRenderer = class _SkeletonRenderer {
12134
12139
  }
12135
12140
  };
12136
12141
 
12137
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/index.js
12142
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/index.js
12138
12143
  var dist_exports2 = {};
12139
12144
  __export(dist_exports2, {
12140
12145
  AlphaTimeline: () => AlphaTimeline,
@@ -12299,7 +12304,7 @@ __export(dist_exports2, {
12299
12304
  WindowedMean: () => WindowedMean
12300
12305
  });
12301
12306
 
12302
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/WebGL.js
12307
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/WebGL.js
12303
12308
  var ManagedWebGLRenderingContext = class {
12304
12309
  canvas;
12305
12310
  gl;
@@ -12338,7 +12343,7 @@ var ManagedWebGLRenderingContext = class {
12338
12343
  }
12339
12344
  };
12340
12345
 
12341
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/GLTexture.js
12346
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/GLTexture.js
12342
12347
  var GLTexture = class _GLTexture extends Texture {
12343
12348
  context;
12344
12349
  texture = null;
@@ -12426,7 +12431,7 @@ var GLTexture = class _GLTexture extends Texture {
12426
12431
  }
12427
12432
  };
12428
12433
 
12429
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/AssetManager.js
12434
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/AssetManager.js
12430
12435
  var AssetManager2 = class extends AssetManagerBase {
12431
12436
  constructor(context, pathPrefix = "", downloader = new Downloader()) {
12432
12437
  super((image) => {
@@ -12435,7 +12440,7 @@ var AssetManager2 = class extends AssetManagerBase {
12435
12440
  }
12436
12441
  };
12437
12442
 
12438
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/Vector3.js
12443
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/Vector3.js
12439
12444
  var Vector3 = class {
12440
12445
  x = 0;
12441
12446
  y = 0;
@@ -12511,7 +12516,7 @@ var Vector3 = class {
12511
12516
  }
12512
12517
  };
12513
12518
 
12514
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/Matrix4.js
12519
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/Matrix4.js
12515
12520
  var M00 = 0;
12516
12521
  var M01 = 4;
12517
12522
  var M02 = 8;
@@ -12766,7 +12771,7 @@ var Matrix4 = class _Matrix4 {
12766
12771
  }
12767
12772
  };
12768
12773
 
12769
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/Camera.js
12774
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/Camera.js
12770
12775
  var OrthoCamera = class {
12771
12776
  position = new Vector3(0, 0, 0);
12772
12777
  direction = new Vector3(0, 0, -1);
@@ -12818,7 +12823,7 @@ var OrthoCamera = class {
12818
12823
  }
12819
12824
  };
12820
12825
 
12821
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/Input.js
12826
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/Input.js
12822
12827
  var Input = class {
12823
12828
  element;
12824
12829
  mouseX = 0;
@@ -13053,7 +13058,7 @@ var Touch = class {
13053
13058
  }
13054
13059
  };
13055
13060
 
13056
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/CameraController.js
13061
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/CameraController.js
13057
13062
  var CameraController = class {
13058
13063
  canvas;
13059
13064
  camera;
@@ -13121,7 +13126,7 @@ var CameraController = class {
13121
13126
  }
13122
13127
  };
13123
13128
 
13124
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/Shader.js
13129
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/Shader.js
13125
13130
  var Shader = class _Shader {
13126
13131
  vertexShader;
13127
13132
  fragmentShader;
@@ -13382,7 +13387,7 @@ void main () {
13382
13387
  }
13383
13388
  };
13384
13389
 
13385
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/Mesh.js
13390
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/Mesh.js
13386
13391
  var Mesh = class {
13387
13392
  attributes;
13388
13393
  context;
@@ -13568,7 +13573,7 @@ var VertexAttributeType;
13568
13573
  VertexAttributeType2[VertexAttributeType2["Float"] = 0] = "Float";
13569
13574
  })(VertexAttributeType || (VertexAttributeType = {}));
13570
13575
 
13571
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/PolygonBatcher.js
13576
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/PolygonBatcher.js
13572
13577
  var GL_ONE = 1;
13573
13578
  var GL_ONE_MINUS_SRC_COLOR = 769;
13574
13579
  var GL_SRC_ALPHA = 770;
@@ -13699,7 +13704,7 @@ var PolygonBatcher = class _PolygonBatcher {
13699
13704
  }
13700
13705
  };
13701
13706
 
13702
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/ShapeRenderer.js
13707
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/ShapeRenderer.js
13703
13708
  var ShapeRenderer = class {
13704
13709
  context;
13705
13710
  isDrawing = false;
@@ -14007,7 +14012,7 @@ var ShapeType;
14007
14012
  ShapeType2[ShapeType2["Filled"] = 4] = "Filled";
14008
14013
  })(ShapeType || (ShapeType = {}));
14009
14014
 
14010
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/SkeletonDebugRenderer.js
14015
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/SkeletonDebugRenderer.js
14011
14016
  var SkeletonDebugRenderer = class _SkeletonDebugRenderer {
14012
14017
  boneLineColor = new Color(1, 0, 0, 1);
14013
14018
  boneOriginColor = new Color(0, 1, 0, 1);
@@ -14210,7 +14215,7 @@ var SkeletonDebugRenderer = class _SkeletonDebugRenderer {
14210
14215
  }
14211
14216
  };
14212
14217
 
14213
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/SkeletonRenderer.js
14218
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/SkeletonRenderer.js
14214
14219
  var Renderable = class {
14215
14220
  vertices;
14216
14221
  numVertices;
@@ -14384,7 +14389,7 @@ var SkeletonRenderer2 = class _SkeletonRenderer {
14384
14389
  }
14385
14390
  };
14386
14391
 
14387
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/SceneRenderer.js
14392
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/SceneRenderer.js
14388
14393
  var quad = [
14389
14394
  0,
14390
14395
  0,
@@ -14431,6 +14436,8 @@ var SceneRenderer = class {
14431
14436
  shapes;
14432
14437
  shapesShader;
14433
14438
  activeRenderer = null;
14439
+ maxCanvasWidth = 0;
14440
+ maxCanvasHeight = 0;
14434
14441
  skeletonRenderer;
14435
14442
  skeletonDebugRenderer;
14436
14443
  constructor(canvas, context, twoColorTint = true) {
@@ -14810,7 +14817,7 @@ var SceneRenderer = class {
14810
14817
  }
14811
14818
  resize(resizeMode) {
14812
14819
  let canvas = this.canvas;
14813
- var dpr = window.devicePixelRatio || 1;
14820
+ var dpr = this.getSafeDevicePixelRatio(canvas.clientWidth, canvas.clientHeight);
14814
14821
  var w = Math.round(canvas.clientWidth * dpr);
14815
14822
  var h = Math.round(canvas.clientHeight * dpr);
14816
14823
  if (canvas.width != w || canvas.height != h) {
@@ -14830,6 +14837,19 @@ var SceneRenderer = class {
14830
14837
  }
14831
14838
  this.camera.update();
14832
14839
  }
14840
+ getSafeDevicePixelRatio(cssWidth, cssHeight) {
14841
+ const dpr = window.devicePixelRatio || 1;
14842
+ if (cssWidth <= 0 || cssHeight <= 0)
14843
+ return dpr;
14844
+ if (this.maxCanvasWidth === 0 || this.maxCanvasHeight === 0) {
14845
+ const gl = this.context.gl;
14846
+ const maxRenderbufferSize = gl.getParameter(gl.MAX_RENDERBUFFER_SIZE);
14847
+ const maxViewportDims = gl.getParameter(gl.MAX_VIEWPORT_DIMS);
14848
+ this.maxCanvasWidth = Math.min(maxRenderbufferSize, maxViewportDims[0]);
14849
+ this.maxCanvasHeight = Math.min(maxRenderbufferSize, maxViewportDims[1]);
14850
+ }
14851
+ return Math.min(dpr, this.maxCanvasWidth / cssWidth, this.maxCanvasHeight / cssHeight);
14852
+ }
14833
14853
  enableRenderer(renderer) {
14834
14854
  if (this.activeRenderer === renderer)
14835
14855
  return;
@@ -14856,7 +14876,7 @@ var ResizeMode;
14856
14876
  ResizeMode2[ResizeMode2["Fit"] = 2] = "Fit";
14857
14877
  })(ResizeMode || (ResizeMode = {}));
14858
14878
 
14859
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/LoadingScreen.js
14879
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/LoadingScreen.js
14860
14880
  var spinnerImage;
14861
14881
  var logoImage;
14862
14882
  var loaded = 0;
@@ -14966,7 +14986,7 @@ var LoadingScreen = class {
14966
14986
  var SPINNER_DATA = "data:image/png;base64,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";
14967
14987
  var SPINE_LOGO_DATA = "data:image/png;base64,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";
14968
14988
 
14969
- // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.108/node_modules/@esotericsoftware/spine-webgl/dist/SpineCanvas.js
14989
+ // ../../node_modules/.pnpm/@esotericsoftware+spine-webgl@4.2.114/node_modules/@esotericsoftware/spine-webgl/dist/SpineCanvas.js
14970
14990
  var SpineCanvas = class {
14971
14991
  config;
14972
14992
  context;
@@ -15081,6 +15101,12 @@ var SkeletonRenderer3 = class {
15081
15101
  * @default false
15082
15102
  */
15083
15103
  debugRendering = false;
15104
+ /**
15105
+ * Whether textures use premultiplied alpha
15106
+ * @type {boolean}
15107
+ * @default false
15108
+ */
15109
+ premultipliedAlpha = false;
15084
15110
  // reusable color instances to avoid allocations
15085
15111
  tintColor = new MColor();
15086
15112
  tempColor = new MColor();
@@ -15159,7 +15185,10 @@ var SkeletonRenderer3 = class {
15159
15185
  );
15160
15186
  renderer.setGlobalAlpha(color.a);
15161
15187
  renderer.setTint(color);
15162
- renderer.setBlendMode(BLEND_MODES[slot.data.blendMode]);
15188
+ renderer.setBlendMode(
15189
+ BLEND_MODES[slot.data.blendMode],
15190
+ this.premultipliedAlpha
15191
+ );
15163
15192
  if (triangles) {
15164
15193
  this.drawMesh(renderer, image, worldVertices2, triangles);
15165
15194
  } else {
@@ -15463,15 +15492,15 @@ import { plugin, registerTiledObjectClass } from "melonjs";
15463
15492
 
15464
15493
  // package.json
15465
15494
  var name = "@melonjs/spine-plugin";
15466
- var version = "2.1.0";
15495
+ var version = "2.2.1";
15467
15496
  var homepage = "https://www.npmjs.com/package/@melonjs/spine-plugin";
15468
15497
  var peerDependencies = {
15469
15498
  melonjs: ">=18.3.0"
15470
15499
  };
15471
15500
  var dependencies = {
15472
- "@esotericsoftware/spine-canvas": "^4.2.108",
15473
- "@esotericsoftware/spine-core": "^4.2.108",
15474
- "@esotericsoftware/spine-webgl": "^4.2.108"
15501
+ "@esotericsoftware/spine-canvas": "^4.2.114",
15502
+ "@esotericsoftware/spine-core": "^4.2.114",
15503
+ "@esotericsoftware/spine-webgl": "^4.2.114"
15475
15504
  };
15476
15505
 
15477
15506
  // src/AssetManager.js
@@ -15607,7 +15636,6 @@ var Spine = class extends Renderable2 {
15607
15636
  runtime;
15608
15637
  skeleton;
15609
15638
  plugin;
15610
- renderer;
15611
15639
  animationState;
15612
15640
  skeletonRenderer;
15613
15641
  root;
@@ -15681,20 +15709,15 @@ var Spine = class extends Renderable2 {
15681
15709
  "Spine plugin: plugin needs to be registered first using plugin.register"
15682
15710
  );
15683
15711
  }
15684
- this.renderer = this.plugin.app.renderer;
15685
- if (this.renderer.WebGLVersion >= 1) {
15712
+ const renderer = this.plugin.app.renderer;
15713
+ this.isWebGL = renderer.WebGLVersion >= 1;
15714
+ if (this.isWebGL) {
15686
15715
  this.runtime = dist_exports2;
15687
- this.gl = this.renderer.gl;
15688
- this.canvas = this.renderer.renderTarget.canvas;
15689
- this.context = this.renderer;
15690
- this.twoColorTint = true;
15691
- if (!this.renderer.batchers.has("spine")) {
15692
- this.renderer.addBatcher(
15693
- new SpineBatcher(this.renderer, this.canvas),
15694
- "spine"
15695
- );
15716
+ this.canvas = renderer.renderTarget.canvas;
15717
+ if (!renderer.batchers.has("spine")) {
15718
+ renderer.addBatcher(new SpineBatcher(renderer, this.canvas), "spine");
15696
15719
  }
15697
- this.spineBatcher = this.renderer.batchers.get("spine");
15720
+ this.spineBatcher = renderer.batchers.get("spine");
15698
15721
  this.skeletonRenderer = new this.runtime.SkeletonRenderer(
15699
15722
  this.canvas,
15700
15723
  true
@@ -15760,17 +15783,17 @@ var Spine = class extends Renderable2 {
15760
15783
  this.premultipliedAlpha = atlas.pages.some((page) => {
15761
15784
  return page.pma;
15762
15785
  });
15763
- if (this.renderer.WebGLVersion >= 1) {
15764
- this.skeletonRenderer.premultipliedAlpha = this.premultipliedAlpha;
15765
- }
15786
+ this.skeletonRenderer.premultipliedAlpha = this.premultipliedAlpha;
15766
15787
  this.skeleton = new this.runtime.Skeleton(skeletonData);
15767
- if (this.skeletonRenderer instanceof SkeletonRenderer3) {
15788
+ if (!this.isWebGL) {
15768
15789
  this.skeletonRenderer.triangleRendering = skeletonData.skins.some(
15769
15790
  (skin) => {
15770
- for (const [, attachments] of skin.attachments.entries()) {
15771
- for (const [, attachment] of attachments.entries()) {
15772
- if (attachment instanceof MeshAttachment) {
15773
- return true;
15791
+ for (const attachments of skin.attachments) {
15792
+ if (attachments) {
15793
+ for (const attachment of Object.values(attachments)) {
15794
+ if (attachment instanceof MeshAttachment) {
15795
+ return true;
15796
+ }
15774
15797
  }
15775
15798
  }
15776
15799
  }
@@ -15823,7 +15846,7 @@ var Spine = class extends Renderable2 {
15823
15846
  * @returns {Spine} Reference to this object for method chaining
15824
15847
  */
15825
15848
  rotate(angle, v) {
15826
- if (this.renderer.WebGLVersion >= 1) {
15849
+ if (this.isWebGL) {
15827
15850
  this.skeleton.getRootBone().rotation -= Math2.radToDeg(angle);
15828
15851
  } else {
15829
15852
  this.skeleton.getRootBone().rotation -= Math2.radToDeg(angle) + 90;
@@ -15837,8 +15860,10 @@ var Spine = class extends Renderable2 {
15837
15860
  * @returns {Spine} Reference to this object for method chaining
15838
15861
  */
15839
15862
  scale(x, y = x) {
15840
- this.root.scaleX *= x;
15841
- this.root.scaleY *= y;
15863
+ if (this.isWebGL) {
15864
+ this.root.scaleX *= x;
15865
+ this.root.scaleY *= y;
15866
+ }
15842
15867
  return super.scale(x, y);
15843
15868
  }
15844
15869
  /**
@@ -15909,8 +15934,13 @@ var Spine = class extends Renderable2 {
15909
15934
  * @param {CanvasRenderer|WebGLRenderer} renderer - A renderer instance.
15910
15935
  */
15911
15936
  draw(renderer) {
15912
- if (this.renderer.WebGLVersion >= 1) {
15913
- this.renderer.setBatcher("spine");
15937
+ if (typeof this.skeleton === "undefined") {
15938
+ return;
15939
+ }
15940
+ const t = this.tint.toArray();
15941
+ this.skeleton.color.set(t[0], t[1], t[2], this.skeleton.color.a);
15942
+ if (this.isWebGL) {
15943
+ renderer.setBatcher("spine");
15914
15944
  this.skeletonRenderer.draw(
15915
15945
  this.spineBatcher,
15916
15946
  this.skeleton,
@@ -15923,7 +15953,7 @@ var Spine = class extends Renderable2 {
15923
15953
  this.shapesShader.bind();
15924
15954
  this.shapesShader.setUniform4x4f(
15925
15955
  this.runtime.Shader.MVP_MATRIX,
15926
- this.context.projectionMatrix.val
15956
+ renderer.projectionMatrix.toArray()
15927
15957
  );
15928
15958
  this.shapes.begin(this.shapesShader);
15929
15959
  this.skeletonDebugRenderer.draw(this.shapes, this.skeleton);
@@ -15938,7 +15968,7 @@ var Spine = class extends Renderable2 {
15938
15968
  * Called automatically when the renderable is removed from the world.
15939
15969
  */
15940
15970
  dispose() {
15941
- if (this.renderer.WebGLVersion >= 1) {
15971
+ if (this.isWebGL) {
15942
15972
  this.shapes.dispose();
15943
15973
  this.shapesShader.dispose();
15944
15974
  this.skeletonDebugRenderer.dispose();