react-simple-game-engine 0.0.20 → 0.0.23

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.
@@ -1,6 +1,19 @@
1
1
  import { Avatar } from "../../export-types";
2
- import { Sprite } from "./sprite";
2
+ import { GetInitialParams, Sprite } from "./sprite";
3
+ declare type SpriteOffet = {
4
+ x: number;
5
+ y: number;
6
+ width: number;
7
+ height: number;
8
+ index: number;
9
+ };
10
+ declare type AvatarGetInitialParams<S extends AvatarSprite> = GetInitialParams<S> & {
11
+ offset?: Partial<SpriteOffet>;
12
+ };
3
13
  export declare class AvatarSprite extends Sprite<Avatar | undefined | null> {
14
+ private offset;
4
15
  onDraw(): void;
16
+ initial(params?: AvatarGetInitialParams<this>): void;
5
17
  }
18
+ export {};
6
19
  //# sourceMappingURL=avatar.sprite.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"avatar.sprite.d.ts","sourceRoot":"","sources":["../../../src/classes/sprites/avatar.sprite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBAAa,YAAa,SAAQ,MAAM,CAAC,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACjE,MAAM;CAqBP"}
1
+ {"version":3,"file":"avatar.sprite.d.ts","sourceRoot":"","sources":["../../../src/classes/sprites/avatar.sprite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEpD,aAAK,WAAW,GAAG;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,aAAK,sBAAsB,CAAC,CAAC,SAAS,YAAY,IAAI,gBAAgB,CAAC,CAAC,CAAC,GAAG;IAE1E,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;CAC/B,CAAC;AAEF,qBAAa,YAAa,SAAQ,MAAM,CAAC,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACjE,OAAO,CAAC,MAAM,CAMZ;IAEF,MAAM;IAwBN,OAAO,CAAC,MAAM,CAAC,EAAE,sBAAsB,CAAC,IAAI,CAAC;CAe9C"}
@@ -13,11 +13,42 @@ var __extends = (this && this.__extends) || (function () {
13
13
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
14
14
  };
15
15
  })();
16
+ var __assign = (this && this.__assign) || function () {
17
+ __assign = Object.assign || function(t) {
18
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
19
+ s = arguments[i];
20
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
21
+ t[p] = s[p];
22
+ }
23
+ return t;
24
+ };
25
+ return __assign.apply(this, arguments);
26
+ };
27
+ var __rest = (this && this.__rest) || function (s, e) {
28
+ var t = {};
29
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
30
+ t[p] = s[p];
31
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
32
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
33
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
34
+ t[p[i]] = s[p[i]];
35
+ }
36
+ return t;
37
+ };
38
+ import { copyProperties } from "../../utils";
16
39
  import { Sprite } from "./sprite";
17
40
  var AvatarSprite = /** @class */ (function (_super) {
18
41
  __extends(AvatarSprite, _super);
19
42
  function AvatarSprite() {
20
- return _super !== null && _super.apply(this, arguments) || this;
43
+ var _this = _super !== null && _super.apply(this, arguments) || this;
44
+ _this.offset = {
45
+ x: 0,
46
+ y: 0,
47
+ index: 0,
48
+ width: 0,
49
+ height: 0,
50
+ };
51
+ return _this;
21
52
  }
22
53
  AvatarSprite.prototype.onDraw = function () {
23
54
  if (this.sprite) {
@@ -25,14 +56,29 @@ var AvatarSprite = /** @class */ (function (_super) {
25
56
  this.animation.draw();
26
57
  }
27
58
  else {
59
+ var _a = this.offset, x = _a.x, y = _a.y, width = _a.width, height = _a.height, index = _a.index;
60
+ console.log("draw", x, index * width + x);
28
61
  Renderer.image(this.sprite,
29
62
  // position on canvas
30
63
  0, 0, this.width, this.height,
31
64
  //crop on source image
32
- 0, 0, this.sprite.width, this.sprite.height);
65
+ index * width + x, y, width, height);
33
66
  }
34
67
  }
35
68
  };
69
+ AvatarSprite.prototype.initial = function (params) {
70
+ var _a = (params ||
71
+ {}), offset = _a.offset, sprite = _a.sprite, _params = __rest(_a, ["offset", "sprite"]);
72
+ if (sprite) {
73
+ this.offset.width = sprite.width;
74
+ this.offset.height = sprite.height;
75
+ }
76
+ if (offset) {
77
+ copyProperties(this.offset, offset);
78
+ console.log("d", this.offset, offset);
79
+ }
80
+ _super.prototype.initial.call(this, __assign(__assign({}, _params), { sprite: sprite }));
81
+ };
36
82
  return AvatarSprite;
37
83
  }(Sprite));
38
84
  export { AvatarSprite };
@@ -1,7 +1,7 @@
1
1
  import { AnimationSprite } from "../animations/animation";
2
2
  import { Entity } from "../entities/entity";
3
3
  import { LogicComponent } from "../logic-component";
4
- declare type GetInitialParams<S extends {
4
+ export declare type GetInitialParams<S extends {
5
5
  sprite?: any;
6
6
  } = any> = {
7
7
  sprite?: S["sprite"];
@@ -23,5 +23,4 @@ export declare abstract class Sprite<SpriteType = any> {
23
23
  abstract onDraw(): void;
24
24
  initial(params?: GetInitialParams<this>): void;
25
25
  }
26
- export {};
27
26
  //# sourceMappingURL=sprite.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sprite.d.ts","sourceRoot":"","sources":["../../../src/classes/sprites/sprite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,aAAK,gBAAgB,CAAC,CAAC,SAAS;IAAE,MAAM,CAAC,EAAE,GAAG,CAAA;CAAE,GAAG,GAAG,IAAI;IACxD,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;IACrB,SAAS,CAAC,EAAE,cAAc,CAAC,eAAe,CAAC,CAAC;CAC7C,CAAC;AAEF,8BAAsB,MAAM,CAAC,UAAU,GAAG,GAAG;IACpC,MAAM,EAAG,UAAU,CAAC;IAC3B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,OAAO,CAAU;IAEzB,OAAO,CAAC,UAAU,CAA8B;IAEhD,IAAI,SAAS,CAAC,GAAG,EAAE,eAAe,EAGjC;IAED,IAAI,SAAS,IAAI,eAAe,CAE/B;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAKxB;IAED,IAAI,MAAM,IAPS,MAAM,CASxB;IAED,IAAI,KAAK,WAER;IAED,IAAI,MAAM,WAET;IAED,IAAI;IAUJ,QAAQ,CAAC,MAAM,IAAI,IAAI;IAEvB,OAAO,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC,IAAI,CAAC;CAexC"}
1
+ {"version":3,"file":"sprite.d.ts","sourceRoot":"","sources":["../../../src/classes/sprites/sprite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,oBAAY,gBAAgB,CAAC,CAAC,SAAS;IAAE,MAAM,CAAC,EAAE,GAAG,CAAA;CAAE,GAAG,GAAG,IAAI;IAC/D,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;IACrB,SAAS,CAAC,EAAE,cAAc,CAAC,eAAe,CAAC,CAAC;CAC7C,CAAC;AAEF,8BAAsB,MAAM,CAAC,UAAU,GAAG,GAAG;IACpC,MAAM,EAAG,UAAU,CAAC;IAC3B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,OAAO,CAAU;IAEzB,OAAO,CAAC,UAAU,CAA8B;IAEhD,IAAI,SAAS,CAAC,GAAG,EAAE,eAAe,EAGjC;IAED,IAAI,SAAS,IAAI,eAAe,CAE/B;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAKxB;IAED,IAAI,MAAM,IAPS,MAAM,CASxB;IAED,IAAI,KAAK,WAER;IAED,IAAI,MAAM,WAET;IAED,IAAI;IAUJ,QAAQ,CAAC,MAAM,IAAI,IAAI;IAEvB,OAAO,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC,IAAI,CAAC;CAexC"}
package/lib/utils.d.ts CHANGED
@@ -2,4 +2,5 @@ import { Avatar, Sound } from "./export-types";
2
2
  export declare function createAssetImage(src: string): Promise<Avatar>;
3
3
  export declare function createAssetSound(src: string): Promise<Sound>;
4
4
  export declare function tick(delay?: number): Promise<unknown>;
5
+ export declare function copyProperties(source: Record<string, any>, target: Record<string, any>): void;
5
6
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAiB/C,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAInE;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAWlE;AAED,wBAAsB,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,oBAQxC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAiB/C,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAInE;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAWlE;AAED,wBAAsB,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,oBAQxC;AAED,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAO5B"}
package/lib/utils.js CHANGED
@@ -87,3 +87,10 @@ export function tick(delay) {
87
87
  });
88
88
  });
89
89
  }
90
+ export function copyProperties(source, target) {
91
+ for (var key in target) {
92
+ if (target[key] !== undefined) {
93
+ source[key] = target[key];
94
+ }
95
+ }
96
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-simple-game-engine",
3
- "version": "0.0.20",
3
+ "version": "0.0.23",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib",