excalibur 0.26.0-alpha.366 → 0.26.0-alpha.370

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/CHANGELOG.md CHANGED
@@ -53,6 +53,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).
53
53
 
54
54
  ### Fixed
55
55
 
56
+ - Fixed issue where `ex.CircleCollider`s did not respect rotation/scale when offset
56
57
  - Fixed issue [#2157] when compiling in TS strict mode complaining about `ex.Poolable`
57
58
  - Fixed issue where scaled graphics were not calculating the correct bounds
58
59
  - Fixed unreleased issue where clock implementation was not updating frame id
@@ -528,12 +528,12 @@ export class Camera extends Class {
528
528
  this.pos = center;
529
529
  }
530
530
  // First frame boostrap
531
+ // Ensure camera tx is correct
532
+ this.updateTransform();
531
533
  // Run strategies for first frame
532
534
  this.runStrategies(_engine, _engine.clock.elapsed());
533
535
  // Setup the first frame viewport
534
536
  this.updateViewport();
535
- // Ensure camera tx is correct
536
- this.updateTransform();
537
537
  this.onInitialize(_engine);
538
538
  super.emit('initialize', new InitializeEvent(_engine, this));
539
539
  this._isInitialized = true;
@@ -620,9 +620,9 @@ export class Camera extends Class {
620
620
  this._xShake = ((Math.random() * this._shakeMagnitudeX) | 0) + 1;
621
621
  this._yShake = ((Math.random() * this._shakeMagnitudeY) | 0) + 1;
622
622
  }
623
+ this.updateTransform();
623
624
  this.runStrategies(_engine, delta);
624
625
  this.updateViewport();
625
- this.updateTransform();
626
626
  this._postupdate(_engine, delta);
627
627
  }
628
628
  draw(ctx) {
@@ -1 +1 @@
1
- {"version":3,"file":"Camera.js","sourceRoot":"","sources":["../../src/engine/Camera.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Camera.js","sourceRoot":"","sources":["../../src/engine/Camera.ts"],"names":[],"mappings":"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"}
@@ -27,10 +27,15 @@ export declare class CircleCollider extends Collider {
27
27
  */
28
28
  offset: Vector;
29
29
  get worldPos(): Vector;
30
+ private _naturalRadius;
30
31
  /**
31
- * This is the radius of the circle
32
+ * Get the radius of the circle
32
33
  */
33
- radius: number;
34
+ get radius(): number;
35
+ /**
36
+ * Set the radius of the circle
37
+ */
38
+ set radius(val: number);
34
39
  private _transform;
35
40
  constructor(options: CircleColliderOptions);
36
41
  /**
@@ -21,8 +21,32 @@ export class CircleCollider extends Collider {
21
21
  this.radius = options.radius || 0;
22
22
  }
23
23
  get worldPos() {
24
- var _a, _b;
25
- return this.offset.add((_b = (_a = this._transform) === null || _a === void 0 ? void 0 : _a.pos) !== null && _b !== void 0 ? _b : Vector.Zero);
24
+ var _a, _b, _c, _d;
25
+ const tx = this._transform;
26
+ const scale = (_a = tx === null || tx === void 0 ? void 0 : tx.globalScale) !== null && _a !== void 0 ? _a : Vector.One;
27
+ const rotation = (_b = tx === null || tx === void 0 ? void 0 : tx.globalRotation) !== null && _b !== void 0 ? _b : 0;
28
+ const pos = ((_c = tx === null || tx === void 0 ? void 0 : tx.globalPos) !== null && _c !== void 0 ? _c : Vector.Zero);
29
+ return ((_d = this.offset) !== null && _d !== void 0 ? _d : Vector.Zero).scale(scale).rotate(rotation).add(pos);
30
+ }
31
+ /**
32
+ * Get the radius of the circle
33
+ */
34
+ get radius() {
35
+ var _a;
36
+ const tx = this._transform;
37
+ const scale = (_a = tx === null || tx === void 0 ? void 0 : tx.globalScale) !== null && _a !== void 0 ? _a : Vector.One;
38
+ // This is a trade off, the alternative is retooling circles to support ellipse collisions
39
+ return this._naturalRadius * Math.min(scale.x, scale.y);
40
+ }
41
+ /**
42
+ * Set the radius of the circle
43
+ */
44
+ set radius(val) {
45
+ var _a;
46
+ const tx = this._transform;
47
+ const scale = (_a = tx === null || tx === void 0 ? void 0 : tx.globalScale) !== null && _a !== void 0 ? _a : Vector.One;
48
+ // This is a trade off, the alternative is retooling circles to support ellipse collisions
49
+ this._naturalRadius = val / Math.min(scale.x, scale.y);
26
50
  }
27
51
  /**
28
52
  * Returns a clone of this shape, not associated with any collider
@@ -37,8 +61,12 @@ export class CircleCollider extends Collider {
37
61
  * Get the center of the collider in world coordinates
38
62
  */
39
63
  get center() {
40
- var _a, _b;
41
- return this.offset.add((_b = (_a = this._transform) === null || _a === void 0 ? void 0 : _a.pos) !== null && _b !== void 0 ? _b : Vector.Zero);
64
+ var _a, _b, _c, _d;
65
+ const tx = this._transform;
66
+ const scale = (_a = tx === null || tx === void 0 ? void 0 : tx.globalScale) !== null && _a !== void 0 ? _a : Vector.One;
67
+ const rotation = (_b = tx === null || tx === void 0 ? void 0 : tx.globalRotation) !== null && _b !== void 0 ? _b : 0;
68
+ const pos = ((_c = tx === null || tx === void 0 ? void 0 : tx.globalPos) !== null && _c !== void 0 ? _c : Vector.Zero);
69
+ return ((_d = this.offset) !== null && _d !== void 0 ? _d : Vector.Zero).scale(scale).rotate(rotation).add(pos);
42
70
  }
43
71
  /**
44
72
  * Tests if a point is contained in this collider
@@ -142,16 +170,18 @@ export class CircleCollider extends Collider {
142
170
  * Get the axis aligned bounding box for the circle collider in world coordinates
143
171
  */
144
172
  get bounds() {
145
- var _a;
173
+ var _a, _b, _c;
146
174
  const tx = this._transform;
147
- const bodyPos = (_a = tx === null || tx === void 0 ? void 0 : tx.globalPos) !== null && _a !== void 0 ? _a : Vector.Zero;
148
- return new BoundingBox(this.offset.x + bodyPos.x - this.radius, this.offset.y + bodyPos.y - this.radius, this.offset.x + bodyPos.x + this.radius, this.offset.y + bodyPos.y + this.radius);
175
+ const scale = (_a = tx === null || tx === void 0 ? void 0 : tx.globalScale) !== null && _a !== void 0 ? _a : Vector.One;
176
+ const rotation = (_b = tx === null || tx === void 0 ? void 0 : tx.globalRotation) !== null && _b !== void 0 ? _b : 0;
177
+ const pos = ((_c = tx === null || tx === void 0 ? void 0 : tx.globalPos) !== null && _c !== void 0 ? _c : Vector.Zero);
178
+ return new BoundingBox(this.offset.x - this._naturalRadius, this.offset.y - this._naturalRadius, this.offset.x + this._naturalRadius, this.offset.y + this._naturalRadius).rotate(rotation).scale(scale).translate(pos);
149
179
  }
150
180
  /**
151
181
  * Get the axis aligned bounding box for the circle collider in local coordinates
152
182
  */
153
183
  get localBounds() {
154
- return new BoundingBox(this.offset.x - this.radius, this.offset.y - this.radius, this.offset.x + this.radius, this.offset.y + this.radius);
184
+ return new BoundingBox(this.offset.x - this._naturalRadius, this.offset.y - this._naturalRadius, this.offset.x + this._naturalRadius, this.offset.y + this._naturalRadius);
155
185
  }
156
186
  /**
157
187
  * Get axis not implemented on circles, since there are infinite axis in a circle
@@ -197,9 +227,17 @@ export class CircleCollider extends Collider {
197
227
  ctx.fill();
198
228
  }
199
229
  debug(ex, color) {
230
+ var _a, _b, _c, _d;
200
231
  const tx = this._transform;
201
- const pos = (tx === null || tx === void 0 ? void 0 : tx.globalPos) ? tx === null || tx === void 0 ? void 0 : tx.globalPos.add(this.offset) : this.offset;
202
- ex.drawCircle(pos, this.radius, Color.Transparent, color, 2);
232
+ const scale = (_a = tx === null || tx === void 0 ? void 0 : tx.globalScale) !== null && _a !== void 0 ? _a : Vector.One;
233
+ const rotation = (_b = tx === null || tx === void 0 ? void 0 : tx.globalRotation) !== null && _b !== void 0 ? _b : 0;
234
+ const pos = ((_c = tx === null || tx === void 0 ? void 0 : tx.globalPos) !== null && _c !== void 0 ? _c : Vector.Zero);
235
+ ex.save();
236
+ ex.translate(pos.x, pos.y);
237
+ ex.rotate(rotation);
238
+ ex.scale(scale.x, scale.y);
239
+ ex.drawCircle(((_d = this.offset) !== null && _d !== void 0 ? _d : Vector.Zero), this._naturalRadius, Color.Transparent, color, 2);
240
+ ex.restore();
203
241
  }
204
242
  /**
205
243
  * @deprecated signature will change in v0.26.0
@@ -1 +1 @@
1
- {"version":3,"file":"CircleCollider.js","sourceRoot":"","sources":["../../../../src/engine/Collision/Colliders/CircleCollider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CircleCollider.js","sourceRoot":"","sources":["../../../../src/engine/Collision/Colliders/CircleCollider.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * excalibur - 0.26.0-alpha.366+af42746 - 2022-1-9
2
+ * excalibur - 0.26.0-alpha.370+e33ff81 - 2022-1-10
3
3
  * https://github.com/excaliburjs/Excalibur
4
4
  * Copyright (c) 2022 Excalibur.js <https://github.com/excaliburjs/Excalibur/graphs/contributors>
5
5
  * Licensed BSD-2-Clause
@@ -14016,8 +14016,32 @@ class CircleCollider extends Collider {
14016
14016
  this.radius = options.radius || 0;
14017
14017
  }
14018
14018
  get worldPos() {
14019
- var _a, _b;
14020
- return this.offset.add((_b = (_a = this._transform) === null || _a === void 0 ? void 0 : _a.pos) !== null && _b !== void 0 ? _b : Vector.Zero);
14019
+ var _a, _b, _c, _d;
14020
+ const tx = this._transform;
14021
+ const scale = (_a = tx === null || tx === void 0 ? void 0 : tx.globalScale) !== null && _a !== void 0 ? _a : Vector.One;
14022
+ const rotation = (_b = tx === null || tx === void 0 ? void 0 : tx.globalRotation) !== null && _b !== void 0 ? _b : 0;
14023
+ const pos = ((_c = tx === null || tx === void 0 ? void 0 : tx.globalPos) !== null && _c !== void 0 ? _c : Vector.Zero);
14024
+ return ((_d = this.offset) !== null && _d !== void 0 ? _d : Vector.Zero).scale(scale).rotate(rotation).add(pos);
14025
+ }
14026
+ /**
14027
+ * Get the radius of the circle
14028
+ */
14029
+ get radius() {
14030
+ var _a;
14031
+ const tx = this._transform;
14032
+ const scale = (_a = tx === null || tx === void 0 ? void 0 : tx.globalScale) !== null && _a !== void 0 ? _a : Vector.One;
14033
+ // This is a trade off, the alternative is retooling circles to support ellipse collisions
14034
+ return this._naturalRadius * Math.min(scale.x, scale.y);
14035
+ }
14036
+ /**
14037
+ * Set the radius of the circle
14038
+ */
14039
+ set radius(val) {
14040
+ var _a;
14041
+ const tx = this._transform;
14042
+ const scale = (_a = tx === null || tx === void 0 ? void 0 : tx.globalScale) !== null && _a !== void 0 ? _a : Vector.One;
14043
+ // This is a trade off, the alternative is retooling circles to support ellipse collisions
14044
+ this._naturalRadius = val / Math.min(scale.x, scale.y);
14021
14045
  }
14022
14046
  /**
14023
14047
  * Returns a clone of this shape, not associated with any collider
@@ -14032,8 +14056,12 @@ class CircleCollider extends Collider {
14032
14056
  * Get the center of the collider in world coordinates
14033
14057
  */
14034
14058
  get center() {
14035
- var _a, _b;
14036
- return this.offset.add((_b = (_a = this._transform) === null || _a === void 0 ? void 0 : _a.pos) !== null && _b !== void 0 ? _b : Vector.Zero);
14059
+ var _a, _b, _c, _d;
14060
+ const tx = this._transform;
14061
+ const scale = (_a = tx === null || tx === void 0 ? void 0 : tx.globalScale) !== null && _a !== void 0 ? _a : Vector.One;
14062
+ const rotation = (_b = tx === null || tx === void 0 ? void 0 : tx.globalRotation) !== null && _b !== void 0 ? _b : 0;
14063
+ const pos = ((_c = tx === null || tx === void 0 ? void 0 : tx.globalPos) !== null && _c !== void 0 ? _c : Vector.Zero);
14064
+ return ((_d = this.offset) !== null && _d !== void 0 ? _d : Vector.Zero).scale(scale).rotate(rotation).add(pos);
14037
14065
  }
14038
14066
  /**
14039
14067
  * Tests if a point is contained in this collider
@@ -14137,16 +14165,18 @@ class CircleCollider extends Collider {
14137
14165
  * Get the axis aligned bounding box for the circle collider in world coordinates
14138
14166
  */
14139
14167
  get bounds() {
14140
- var _a;
14168
+ var _a, _b, _c;
14141
14169
  const tx = this._transform;
14142
- const bodyPos = (_a = tx === null || tx === void 0 ? void 0 : tx.globalPos) !== null && _a !== void 0 ? _a : Vector.Zero;
14143
- return new BoundingBox(this.offset.x + bodyPos.x - this.radius, this.offset.y + bodyPos.y - this.radius, this.offset.x + bodyPos.x + this.radius, this.offset.y + bodyPos.y + this.radius);
14170
+ const scale = (_a = tx === null || tx === void 0 ? void 0 : tx.globalScale) !== null && _a !== void 0 ? _a : Vector.One;
14171
+ const rotation = (_b = tx === null || tx === void 0 ? void 0 : tx.globalRotation) !== null && _b !== void 0 ? _b : 0;
14172
+ const pos = ((_c = tx === null || tx === void 0 ? void 0 : tx.globalPos) !== null && _c !== void 0 ? _c : Vector.Zero);
14173
+ return new BoundingBox(this.offset.x - this._naturalRadius, this.offset.y - this._naturalRadius, this.offset.x + this._naturalRadius, this.offset.y + this._naturalRadius).rotate(rotation).scale(scale).translate(pos);
14144
14174
  }
14145
14175
  /**
14146
14176
  * Get the axis aligned bounding box for the circle collider in local coordinates
14147
14177
  */
14148
14178
  get localBounds() {
14149
- return new BoundingBox(this.offset.x - this.radius, this.offset.y - this.radius, this.offset.x + this.radius, this.offset.y + this.radius);
14179
+ return new BoundingBox(this.offset.x - this._naturalRadius, this.offset.y - this._naturalRadius, this.offset.x + this._naturalRadius, this.offset.y + this._naturalRadius);
14150
14180
  }
14151
14181
  /**
14152
14182
  * Get axis not implemented on circles, since there are infinite axis in a circle
@@ -14192,9 +14222,17 @@ class CircleCollider extends Collider {
14192
14222
  ctx.fill();
14193
14223
  }
14194
14224
  debug(ex, color) {
14225
+ var _a, _b, _c, _d;
14195
14226
  const tx = this._transform;
14196
- const pos = (tx === null || tx === void 0 ? void 0 : tx.globalPos) ? tx === null || tx === void 0 ? void 0 : tx.globalPos.add(this.offset) : this.offset;
14197
- ex.drawCircle(pos, this.radius, Color.Transparent, color, 2);
14227
+ const scale = (_a = tx === null || tx === void 0 ? void 0 : tx.globalScale) !== null && _a !== void 0 ? _a : Vector.One;
14228
+ const rotation = (_b = tx === null || tx === void 0 ? void 0 : tx.globalRotation) !== null && _b !== void 0 ? _b : 0;
14229
+ const pos = ((_c = tx === null || tx === void 0 ? void 0 : tx.globalPos) !== null && _c !== void 0 ? _c : Vector.Zero);
14230
+ ex.save();
14231
+ ex.translate(pos.x, pos.y);
14232
+ ex.rotate(rotation);
14233
+ ex.scale(scale.x, scale.y);
14234
+ ex.drawCircle(((_d = this.offset) !== null && _d !== void 0 ? _d : Vector.Zero), this._naturalRadius, Color.Transparent, color, 2);
14235
+ ex.restore();
14198
14236
  }
14199
14237
  /**
14200
14238
  * @deprecated signature will change in v0.26.0
@@ -20953,12 +20991,12 @@ class Camera extends Class {
20953
20991
  this.pos = center;
20954
20992
  }
20955
20993
  // First frame boostrap
20994
+ // Ensure camera tx is correct
20995
+ this.updateTransform();
20956
20996
  // Run strategies for first frame
20957
20997
  this.runStrategies(_engine, _engine.clock.elapsed());
20958
20998
  // Setup the first frame viewport
20959
20999
  this.updateViewport();
20960
- // Ensure camera tx is correct
20961
- this.updateTransform();
20962
21000
  this.onInitialize(_engine);
20963
21001
  super.emit('initialize', new InitializeEvent(_engine, this));
20964
21002
  this._isInitialized = true;
@@ -21045,9 +21083,9 @@ class Camera extends Class {
21045
21083
  this._xShake = ((Math.random() * this._shakeMagnitudeX) | 0) + 1;
21046
21084
  this._yShake = ((Math.random() * this._shakeMagnitudeY) | 0) + 1;
21047
21085
  }
21086
+ this.updateTransform();
21048
21087
  this.runStrategies(_engine, delta);
21049
21088
  this.updateViewport();
21050
- this.updateTransform();
21051
21089
  this._postupdate(_engine, delta);
21052
21090
  }
21053
21091
  draw(ctx) {
@@ -29987,7 +30025,7 @@ Promises_Promise = Promise_1 = Promises_decorate([
29987
30025
  * The current Excalibur version string
29988
30026
  * @description `process.env.__EX_VERSION` gets replaced by Webpack on build
29989
30027
  */
29990
- const EX_VERSION = "0.26.0-alpha.366+af42746";
30028
+ const EX_VERSION = "0.26.0-alpha.370+e33ff81";
29991
30029
 
29992
30030
  polyfill();
29993
30031
  // This file is used as the bundle entry point and exports everything