excalibur 0.26.0-alpha.367 → 0.26.0-alpha.371

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,8 @@ This project adheres to [Semantic Versioning](http://semver.org/).
53
53
 
54
54
  ### Fixed
55
55
 
56
+ - Fixed issue [#2192] where Actor.center was not correct in child actors
57
+ - Fixed issue where `ex.CircleCollider`s did not respect rotation/scale when offset
56
58
  - Fixed issue [#2157] when compiling in TS strict mode complaining about `ex.Poolable`
57
59
  - Fixed issue where scaled graphics were not calculating the correct bounds
58
60
  - Fixed unreleased issue where clock implementation was not updating frame id
@@ -597,9 +597,13 @@ export declare class Actor extends Entity implements Eventable, PointerEvents, C
597
597
  */
598
598
  setZIndex(newIndex: number): void;
599
599
  /**
600
- * Get the center point of an actor
600
+ * Get the center point of an actor (global position)
601
601
  */
602
602
  get center(): Vector;
603
+ /**
604
+ * Get the local center point of an actor
605
+ */
606
+ get localCenter(): Vector;
603
607
  get width(): number;
604
608
  get height(): number;
605
609
  /**
@@ -550,9 +550,16 @@ export class Actor extends Entity {
550
550
  this.get(TransformComponent).z = newIndex;
551
551
  }
552
552
  /**
553
- * Get the center point of an actor
553
+ * Get the center point of an actor (global position)
554
554
  */
555
555
  get center() {
556
+ const globalPos = this.getGlobalPos();
557
+ return new Vector(globalPos.x + this.width / 2 - this.anchor.x * this.width, globalPos.y + this.height / 2 - this.anchor.y * this.height);
558
+ }
559
+ /**
560
+ * Get the local center point of an actor
561
+ */
562
+ get localCenter() {
556
563
  return new Vector(this.pos.x + this.width / 2 - this.anchor.x * this.width, this.pos.y + this.height / 2 - this.anchor.y * this.height);
557
564
  }
558
565
  get width() {
@@ -1 +1 @@
1
- {"version":3,"file":"Actor.js","sourceRoot":"","sources":["../../src/engine/Actor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Actor.js","sourceRoot":"","sources":["../../src/engine/Actor.ts"],"names":[],"mappings":"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"}
@@ -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.367+5688dba - 2022-1-9
2
+ * excalibur - 0.26.0-alpha.371+bf8e592 - 2022-1-13
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
@@ -19416,9 +19454,16 @@ class Actor extends Entity {
19416
19454
  this.get(TransformComponent).z = newIndex;
19417
19455
  }
19418
19456
  /**
19419
- * Get the center point of an actor
19457
+ * Get the center point of an actor (global position)
19420
19458
  */
19421
19459
  get center() {
19460
+ const globalPos = this.getGlobalPos();
19461
+ return new Vector(globalPos.x + this.width / 2 - this.anchor.x * this.width, globalPos.y + this.height / 2 - this.anchor.y * this.height);
19462
+ }
19463
+ /**
19464
+ * Get the local center point of an actor
19465
+ */
19466
+ get localCenter() {
19422
19467
  return new Vector(this.pos.x + this.width / 2 - this.anchor.x * this.width, this.pos.y + this.height / 2 - this.anchor.y * this.height);
19423
19468
  }
19424
19469
  get width() {
@@ -20953,12 +20998,12 @@ class Camera extends Class {
20953
20998
  this.pos = center;
20954
20999
  }
20955
21000
  // First frame boostrap
21001
+ // Ensure camera tx is correct
21002
+ this.updateTransform();
20956
21003
  // Run strategies for first frame
20957
21004
  this.runStrategies(_engine, _engine.clock.elapsed());
20958
21005
  // Setup the first frame viewport
20959
21006
  this.updateViewport();
20960
- // Ensure camera tx is correct
20961
- this.updateTransform();
20962
21007
  this.onInitialize(_engine);
20963
21008
  super.emit('initialize', new InitializeEvent(_engine, this));
20964
21009
  this._isInitialized = true;
@@ -21045,9 +21090,9 @@ class Camera extends Class {
21045
21090
  this._xShake = ((Math.random() * this._shakeMagnitudeX) | 0) + 1;
21046
21091
  this._yShake = ((Math.random() * this._shakeMagnitudeY) | 0) + 1;
21047
21092
  }
21093
+ this.updateTransform();
21048
21094
  this.runStrategies(_engine, delta);
21049
21095
  this.updateViewport();
21050
- this.updateTransform();
21051
21096
  this._postupdate(_engine, delta);
21052
21097
  }
21053
21098
  draw(ctx) {
@@ -29987,7 +30032,7 @@ Promises_Promise = Promise_1 = Promises_decorate([
29987
30032
  * The current Excalibur version string
29988
30033
  * @description `process.env.__EX_VERSION` gets replaced by Webpack on build
29989
30034
  */
29990
- const EX_VERSION = "0.26.0-alpha.367+5688dba";
30035
+ const EX_VERSION = "0.26.0-alpha.371+bf8e592";
29991
30036
 
29992
30037
  polyfill();
29993
30038
  // This file is used as the bundle entry point and exports everything