dino-ge 1.8.6 → 1.8.7
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/dist/Sprite.d.ts +13 -0
- package/dist/Sprite.js +39 -1
- package/dist/Sprite.js.map +1 -1
- package/dist/SpriteComponent.js +3 -3
- package/dist/SpriteComponent.js.map +1 -1
- package/package.json +1 -1
package/dist/Sprite.d.ts
CHANGED
|
@@ -20,6 +20,8 @@ export interface SpriteProps {
|
|
|
20
20
|
endCol: number;
|
|
21
21
|
/** Rendering order. */
|
|
22
22
|
zIndex?: number;
|
|
23
|
+
/** Scale of the sprite (defaults to 1). */
|
|
24
|
+
scale?: number | Vector2;
|
|
23
25
|
}
|
|
24
26
|
/**
|
|
25
27
|
* Represents an animated sprite using a spritesheet.
|
|
@@ -57,7 +59,18 @@ export default class Sprite extends GameObject {
|
|
|
57
59
|
/** Duration of each animation frame in milliseconds. */
|
|
58
60
|
get frameDuration(): number;
|
|
59
61
|
set frameDuration(val: number);
|
|
62
|
+
/**
|
|
63
|
+
* Gets or sets the scale of the sprite.
|
|
64
|
+
* Updating this will also update the object's bounds.
|
|
65
|
+
*/
|
|
66
|
+
get scale(): Vector2;
|
|
67
|
+
set scale(val: number | Vector2);
|
|
60
68
|
constructor(props: SpriteProps);
|
|
69
|
+
/**
|
|
70
|
+
* Updates the bounds of the sprite based on its current frame size and scale.
|
|
71
|
+
* @private
|
|
72
|
+
*/
|
|
73
|
+
private _updateBounds;
|
|
61
74
|
/**
|
|
62
75
|
* Registers the sprite with the engine and starts its animation loop.
|
|
63
76
|
*/
|
package/dist/Sprite.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import Engine from './Engine.js';
|
|
2
2
|
import GameObject from './GameObject.js';
|
|
3
|
+
import Vector2 from './Vector2.js';
|
|
3
4
|
import ResourceLoader from './Loader.js';
|
|
4
5
|
import SpriteComponent from './SpriteComponent.js';
|
|
5
6
|
import BoundsComponent from './BoundsComponent.js';
|
|
@@ -35,6 +36,20 @@ export default class Sprite extends GameObject {
|
|
|
35
36
|
/** Duration of each animation frame in milliseconds. */
|
|
36
37
|
get frameDuration() { return this._spriteComponent.frameDuration; }
|
|
37
38
|
set frameDuration(val) { this._spriteComponent.frameDuration = val; }
|
|
39
|
+
/**
|
|
40
|
+
* Gets or sets the scale of the sprite.
|
|
41
|
+
* Updating this will also update the object's bounds.
|
|
42
|
+
*/
|
|
43
|
+
get scale() { return this.transform.scale; }
|
|
44
|
+
set scale(val) {
|
|
45
|
+
if (typeof val === 'number') {
|
|
46
|
+
this.transform.scale = new Vector2(val, val);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
this.transform.scale = val;
|
|
50
|
+
}
|
|
51
|
+
this._updateBounds();
|
|
52
|
+
}
|
|
38
53
|
constructor(props) {
|
|
39
54
|
if (!props.tag) {
|
|
40
55
|
throw new Error('You must provide a tag for a Sprite');
|
|
@@ -51,11 +66,34 @@ export default class Sprite extends GameObject {
|
|
|
51
66
|
}
|
|
52
67
|
this._spriteComponent = new SpriteComponent(img, props.rows, props.cols, props.startCol, props.endCol);
|
|
53
68
|
this.addComponent(this._spriteComponent);
|
|
54
|
-
|
|
69
|
+
const scale = props.scale !== undefined ? props.scale : 1;
|
|
70
|
+
if (typeof scale === 'number') {
|
|
71
|
+
this.transform.scale = new Vector2(scale, scale);
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
this.transform.scale = scale;
|
|
75
|
+
}
|
|
76
|
+
this.bounds = new BoundsComponent(0, 0);
|
|
55
77
|
this.addComponent(this.bounds);
|
|
78
|
+
if (img.complete) {
|
|
79
|
+
this._updateBounds();
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
img.addEventListener('load', () => this._updateBounds(), { once: true });
|
|
83
|
+
}
|
|
56
84
|
this.transform.position = props.position;
|
|
57
85
|
this.registered = false;
|
|
58
86
|
}
|
|
87
|
+
/**
|
|
88
|
+
* Updates the bounds of the sprite based on its current frame size and scale.
|
|
89
|
+
* @private
|
|
90
|
+
*/
|
|
91
|
+
_updateBounds() {
|
|
92
|
+
if (this.bounds) {
|
|
93
|
+
this.bounds.width = this.frameWidth * this.transform.scale.x;
|
|
94
|
+
this.bounds.height = this.frameHeight * this.transform.scale.y;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
59
97
|
/**
|
|
60
98
|
* Registers the sprite with the engine and starts its animation loop.
|
|
61
99
|
*/
|
package/dist/Sprite.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sprite.js","sourceRoot":"","sources":["../src/Sprite.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,UAAU,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"Sprite.js","sourceRoot":"","sources":["../src/Sprite.ts"],"names":[],"mappings":"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"}
|
package/dist/SpriteComponent.js
CHANGED
|
@@ -80,13 +80,13 @@ class SpriteComponent extends RenderComponent {
|
|
|
80
80
|
ctx.rotate(worldRotation);
|
|
81
81
|
ctx.scale(worldScale.x, worldScale.y);
|
|
82
82
|
if (this.flip) {
|
|
83
|
-
ctx.translate(frameWidth
|
|
83
|
+
ctx.translate(frameWidth, 0);
|
|
84
84
|
ctx.scale(-1, 1);
|
|
85
|
-
ctx.drawImage(img, column * frameWidth, row * frameHeight, frameWidth, frameHeight, 0, 0, frameWidth
|
|
85
|
+
ctx.drawImage(img, column * frameWidth, row * frameHeight, frameWidth, frameHeight, 0, 0, frameWidth, frameHeight);
|
|
86
86
|
}
|
|
87
87
|
else {
|
|
88
88
|
ctx.drawImage(img, column * frameWidth, row * frameHeight, frameWidth, frameHeight, 0, // Drawing at 0,0 relative to transform
|
|
89
|
-
0, frameWidth
|
|
89
|
+
0, frameWidth, frameHeight);
|
|
90
90
|
}
|
|
91
91
|
ctx.restore();
|
|
92
92
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpriteComponent.js","sourceRoot":"","sources":["../src/SpriteComponent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SpriteComponent.js","sourceRoot":"","sources":["../src/SpriteComponent.ts"],"names":[],"mappings":"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"}
|