react-simple-game-engine 0.0.5 → 0.0.8

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,4 +1,5 @@
1
1
  import { Body } from "matter-js";
2
+ import { CreateBodyDefine, EntityInitial } from "../../export-types";
2
3
  import { Entity } from "./entity";
3
4
  export declare class CircleEntity extends Entity {
4
5
  radius: number;
@@ -1 +1 @@
1
- {"version":3,"file":"circle.entity.d.ts","sourceRoot":"","sources":["../../../src/classes/entities/circle.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAU,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBAAa,YAAa,SAAQ,MAAM;IAC/B,MAAM,EAAG,MAAM,CAAC;IAEvB,0BAA0B,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAO/D,SAAS,CAAC,SAAS,IAAI,aAAa,CAAC,YAAY,CAAC;IAQlD,SAAS,CAAC,YAAY,CACpB,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAC7D,OAAO,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC,GACxC,IAAI;CAIR"}
1
+ {"version":3,"file":"circle.entity.d.ts","sourceRoot":"","sources":["../../../src/classes/entities/circle.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAU,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBAAa,YAAa,SAAQ,MAAM;IAC/B,MAAM,EAAG,MAAM,CAAC;IAEvB,0BAA0B,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAO/D,SAAS,CAAC,SAAS,IAAI,aAAa,CAAC,YAAY,CAAC;IAQlD,SAAS,CAAC,YAAY,CACpB,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAC7D,OAAO,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC,GACxC,IAAI;CAIR"}
@@ -1,7 +1,8 @@
1
1
  import Matter from "matter-js";
2
2
  import { Camera } from "../camera";
3
3
  import { WorldManagement } from "../world-management";
4
- import { EntityPrepare, MasterBody, Sound } from "../../export-types";
4
+ import { Sprite } from "../sprites/sprite";
5
+ import { CreateBodyDefine, EntityInitial, EntityPrepare, MasterBody, Sound } from "../../export-types";
5
6
  export declare abstract class Entity {
6
7
  private _body;
7
8
  private _sprite;
@@ -11,8 +12,8 @@ export declare abstract class Entity {
11
12
  protected worldManagement: WorldManagement;
12
13
  protected sound?: Sound;
13
14
  constructor();
14
- set sprite(sprite: ISprite);
15
- get sprite(): ISprite;
15
+ set sprite(sprite: Sprite);
16
+ get sprite(): Sprite;
16
17
  get position(): Matter.Vector;
17
18
  get body(): MasterBody;
18
19
  active(worldManagement: WorldManagement): void;
@@ -1 +1 @@
1
- {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/classes/entities/entity.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEtE,8BAAsB,MAAM;IAC1B,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,OAAO,CAAW;IAC1B,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAsD;IAEzE,SAAgB,GAAG,EAAG,MAAM,CAAC;IACtB,MAAM,EAAG,MAAM,CAAC;IAEvB,SAAS,CAAC,eAAe,EAAG,eAAe,CAAC;IAC5C,SAAS,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;;IAMxB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,EAGzB;IAED,IAAI,MAAM,IALS,OAAO,CAOzB;IAED,IAAI,QAAQ,kBAEX;IAED,IAAI,IAAI,eAEP;IAED,MAAM,CAAC,eAAe,EAAE,eAAe;IAKvC,QAAQ;IAER,UAAU,CACR,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,EACxC,OAAO,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC;IAO3C,SAAS,CAAC,QAAQ,CAAC,YAAY,CAC7B,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,GAAG,SAAS,EACpD,OAAO,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC,GACxC,MAAM,CAAC,IAAI;IAEd,OAAO,CAAC,EACN,KAAK,EACL,SAAc,EACd,MAAM,EAAE,eAAe,EACvB,WAAgB,GACjB,EAAE,aAAa,CAAC,IAAI,CAAC;IA+BtB,SAAS,CAAC,QAAQ,CAAC,SAAS,IAAI,aAAa,CAAC,IAAI,CAAC;IACnD,SAAS,CAAC,SAAS,IAAI,aAAa,CAAC,IAAI,CAAC;IAI1C,MAAM;IAGN,QAAQ;IAER,IAAI;IAIJ,QAAQ,CAAC,0BAA0B,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAExE,WAAW,CAAC,MAAM,EAAE,MAAM;CAC3B"}
1
+ {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/classes/entities/entity.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,WAAW,CAAC;AAE/B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAG3C,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,UAAU,EACV,KAAK,EACN,MAAM,oBAAoB,CAAC;AAE5B,8BAAsB,MAAM;IAC1B,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAsD;IAEzE,SAAgB,GAAG,EAAG,MAAM,CAAC;IACtB,MAAM,EAAG,MAAM,CAAC;IAEvB,SAAS,CAAC,eAAe,EAAG,eAAe,CAAC;IAC5C,SAAS,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;;IAMxB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAGxB;IAED,IAAI,MAAM,IALS,MAAM,CAOxB;IAED,IAAI,QAAQ,kBAEX;IAED,IAAI,IAAI,eAEP;IAED,MAAM,CAAC,eAAe,EAAE,eAAe;IAKvC,QAAQ;IAER,UAAU,CACR,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,EACxC,OAAO,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC;IAO3C,SAAS,CAAC,QAAQ,CAAC,YAAY,CAC7B,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,GAAG,SAAS,EACpD,OAAO,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC,GACxC,MAAM,CAAC,IAAI;IAEd,OAAO,CAAC,EACN,KAAK,EACL,SAAc,EACd,MAAM,EAAE,eAAe,EACvB,WAAgB,GACjB,EAAE,aAAa,CAAC,IAAI,CAAC;IA+BtB,SAAS,CAAC,QAAQ,CAAC,SAAS,IAAI,aAAa,CAAC,IAAI,CAAC;IACnD,SAAS,CAAC,SAAS,IAAI,aAAa,CAAC,IAAI,CAAC;IAI1C,MAAM;IAGN,QAAQ;IAER,IAAI;IAIJ,QAAQ,CAAC,0BAA0B,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAExE,WAAW,CAAC,MAAM,EAAE,MAAM;CAC3B"}
@@ -1,4 +1,5 @@
1
1
  import { Body } from "matter-js";
2
+ import { CreateBodyDefine, EntityInitial } from "../../export-types";
2
3
  import { Entity } from "./entity";
3
4
  export declare class RectEntity extends Entity {
4
5
  width: number;
@@ -1 +1 @@
1
- {"version":3,"file":"rect.entity.d.ts","sourceRoot":"","sources":["../../../src/classes/entities/rect.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,IAAI,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBAAa,UAAW,SAAQ,MAAM;IAC7B,KAAK,EAAG,MAAM,CAAC;IACf,MAAM,EAAG,MAAM,CAAC;IAEvB,0BAA0B,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAO/D,SAAS,CAAC,SAAS,IAAI,aAAa,CAAC,UAAU,CAAC;IAShD,SAAS,CAAC,YAAY,CACpB,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,GAAG;QACzC,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,EACD,OAAO,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC,GACxC,IAAI;CAWR"}
1
+ {"version":3,"file":"rect.entity.d.ts","sourceRoot":"","sources":["../../../src/classes/entities/rect.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,IAAI,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBAAa,UAAW,SAAQ,MAAM;IAC7B,KAAK,EAAG,MAAM,CAAC;IACf,MAAM,EAAG,MAAM,CAAC;IAEvB,0BAA0B,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAO/D,SAAS,CAAC,SAAS,IAAI,aAAa,CAAC,UAAU,CAAC;IAShD,SAAS,CAAC,YAAY,CACpB,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,GAAG;QACzC,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,EACD,OAAO,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC,GACxC,IAAI;CAWR"}
@@ -1,6 +1,8 @@
1
+ import { Configable } from "../export-types";
2
+ import { Entity } from "./entities/entity";
1
3
  export declare class LogicComponent<C extends {
2
4
  initial: any;
3
- } = IEntity> {
5
+ } = Entity> {
4
6
  private instance;
5
7
  constructor(configale: Configable<C>);
6
8
  output(): C;
@@ -1 +1 @@
1
- {"version":3,"file":"logic-component.d.ts","sourceRoot":"","sources":["../../src/classes/logic-component.ts"],"names":[],"mappings":"AAAA,qBAAa,cAAc,CAAC,CAAC,SAAS;IAAE,OAAO,EAAE,GAAG,CAAA;CAAE,GAAG,OAAO;IAC9D,OAAO,CAAC,QAAQ,CAAI;gBACR,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;IAOpC,MAAM;CAGP"}
1
+ {"version":3,"file":"logic-component.d.ts","sourceRoot":"","sources":["../../src/classes/logic-component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,qBAAa,cAAc,CAAC,CAAC,SAAS;IAAE,OAAO,EAAE,GAAG,CAAA;CAAE,GAAG,MAAM;IAC7D,OAAO,CAAC,QAAQ,CAAI;gBACR,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;IAOpC,MAAM;CAGP"}
@@ -1 +1 @@
1
- {"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../../src/classes/scene.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAEtC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,aAAK,kBAAkB,GAAG,CAAC,YAAY,EAAE,OAAO,KAAK,IAAI,CAAC;AAE1D,8BAAsB,KAAK,CAAC,GAAG,GAAG,GAAG;IACnC,OAAO,CAAC,EAAE,CAAqB;IAC/B,OAAO,CAAC,eAAe,CAAmB;IAC1C,OAAO,CAAC,aAAa,CAAW;IAChC,OAAO,CAAC,kBAAkB,CAAsB;IAEzC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAG,eAAe,CAAC;IACjC,SAAgB,SAAS,EAAE,MAAM,CAA8C;aAC/D,aAAa,IAAI,cAAc,EAAE;;IAQjD,IAAI,EAAE,uBAGL;IAED,IAAI,OAAO,QAEV;IAED,SAAS,CAAC,UAAU;IAIpB,IAAI,YAAY,YAEf;IAED,iBAAiB,CAAC,IAAI,EAAE,kBAAkB;IAI1C,UAAU;IAIV,kBAAkB,CAAC,YAAY,EAAE,OAAO;IAKxC,aAAa,CAAC,GAAG,EAAE,MAAM;IAInB,UAAU;IAQV,YAAY;IAElB,SAAS,CAAC,MAAM,EAAE,MAAM;IAUxB,MAAM;CAIP"}
1
+ {"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../../src/classes/scene.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAItC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,aAAK,kBAAkB,GAAG,CAAC,YAAY,EAAE,OAAO,KAAK,IAAI,CAAC;AAE1D,8BAAsB,KAAK,CAAC,GAAG,GAAG,GAAG;IACnC,OAAO,CAAC,EAAE,CAAqB;IAC/B,OAAO,CAAC,eAAe,CAAmB;IAC1C,OAAO,CAAC,aAAa,CAAW;IAChC,OAAO,CAAC,kBAAkB,CAAsB;IAEzC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAG,eAAe,CAAC;IACjC,SAAgB,SAAS,EAAE,MAAM,CAA8C;aAC/D,aAAa,IAAI,cAAc,EAAE;;IAQjD,IAAI,EAAE,uBAGL;IAED,IAAI,OAAO,QAEV;IAED,SAAS,CAAC,UAAU;IAIpB,IAAI,YAAY,YAEf;IAED,iBAAiB,CAAC,IAAI,EAAE,kBAAkB;IAI1C,UAAU;IAIV,kBAAkB,CAAC,YAAY,EAAE,OAAO;IAKxC,aAAa,CAAC,GAAG,EAAE,MAAM;IAInB,UAAU;IAQV,YAAY;IAElB,SAAS,CAAC,MAAM,EAAE,MAAM;IAUxB,MAAM;CAIP"}
@@ -7,7 +7,7 @@ declare type GetInitialParams<S extends {
7
7
  sprite?: S["sprite"];
8
8
  animation?: LogicComponent<AnimationSprite>;
9
9
  };
10
- export declare abstract class Sprite<SpriteType> {
10
+ export declare abstract class Sprite<SpriteType = any> {
11
11
  sprite: SpriteType;
12
12
  private _entity;
13
13
  private _width;
@@ -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;IAC9B,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,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,10 +1,32 @@
1
1
  /// <reference types="matter-js" />
2
+ import { Entity } from "./classes/entities/entity";
3
+ import { Sprite } from "./classes/sprites/sprite";
2
4
  export declare type Sound = HTMLAudioElement;
3
5
  export declare type Avatar = ReturnType<P5["loadImage"]>;
4
6
  export declare type Color = [number, number, number, number?];
5
- export declare type EntityPrepare<E extends IEntity> = EntityInitial<E>;
7
+ export declare type EntityPrepare<E extends Entity> = EntityInitial<E>;
6
8
  export declare type MasterBody = Matter.Body & {
7
- entity: IEntity;
9
+ entity: Entity;
8
10
  };
9
11
  export declare type P5 = import("p5");
12
+ export declare type CreateBodyDefine = {
13
+ transform?: {
14
+ x?: number;
15
+ y?: number;
16
+ };
17
+ bodyOptions?: Matter.IChamferableBodyDefinition;
18
+ };
19
+ export declare type EntityInitial<E extends Entity> = {
20
+ transform?: Parameters<E["onCreateBody"]>[0];
21
+ bodyOptions?: Parameters<E["onCreateBody"]>[1];
22
+ sound?: Sound;
23
+ sprite?: import("./classes/logic-component").LogicComponent<Sprite>;
24
+ };
25
+ export declare type Configable<C extends {
26
+ initial: any;
27
+ } = Entity> = {
28
+ new (): C;
29
+ } | [{
30
+ new (): C;
31
+ }, Parameters<C["initial"]>[0]?];
10
32
  //# sourceMappingURL=export-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"export-types.d.ts","sourceRoot":"","sources":["../src/export-types.ts"],"names":[],"mappings":";AAAA,oBAAY,KAAK,GAAG,gBAAgB,CAAC;AACrC,oBAAY,MAAM,GAAG,UAAU,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;AACjD,oBAAY,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAEtD,oBAAY,aAAa,CAAC,CAAC,SAAS,OAAO,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;AAChE,oBAAY,UAAU,GAAG,MAAM,CAAC,IAAI,GAAG;IACrC,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,oBAAY,EAAE,GAAG,OAAO,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"export-types.d.ts","sourceRoot":"","sources":["../src/export-types.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,oBAAY,KAAK,GAAG,gBAAgB,CAAC;AACrC,oBAAY,MAAM,GAAG,UAAU,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;AACjD,oBAAY,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAEtD,oBAAY,aAAa,CAAC,CAAC,SAAS,MAAM,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;AAC/D,oBAAY,UAAU,GAAG,MAAM,CAAC,IAAI,GAAG;IACrC,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,oBAAY,EAAE,GAAG,OAAO,IAAI,CAAC,CAAC;AAE9B,oBAAY,gBAAgB,GAAG;IAC7B,SAAS,CAAC,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC,0BAA0B,CAAC;CACjD,CAAC;AAEF,oBAAY,aAAa,CAAC,CAAC,SAAS,MAAM,IAAI;IAE5C,SAAS,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7C,WAAW,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,2BAA2B,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;CACrE,CAAC;AAEF,oBAAY,UAAU,CAAC,CAAC,SAAS;IAAE,OAAO,EAAE,GAAG,CAAA;CAAE,GAAG,MAAM,IACtD;IACE,QAAQ,CAAC,CAAC;CACX,GACD,CAAC;IAAE,QAAQ,CAAC,CAAA;CAAE,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC"}
package/lib/index.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- /// <reference types="p5" />
2
1
  export { createAssetImage, createAssetSound } from "./utils";
3
2
  export { AnimationSprite } from "./classes/animations/animation";
4
3
  export { AvatarAnimationSprite } from "./classes/animations/avatar.animation";
@@ -16,5 +15,4 @@ export { SceneTag } from "./decorators/scene-tag.decor";
16
15
  export { SceneUI } from "./decorators/scene-ui.decor";
17
16
  export { ScenesProcess } from "./ui-components/ScenesProcess";
18
17
  export * from "./export-types";
19
- export declare const Renderer: import("p5");
20
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE7D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAE5E,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAE7D,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEtD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE9D,cAAc,gBAAgB,CAAC;AAE/B,eAAO,MAAM,QAAQ,cAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE7D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAE5E,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAE7D,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEtD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE9D,cAAc,gBAAgB,CAAC"}
package/lib/index.js CHANGED
@@ -15,4 +15,3 @@ export { SceneTag } from "./decorators/scene-tag.decor";
15
15
  export { SceneUI } from "./decorators/scene-ui.decor";
16
16
  export { ScenesProcess } from "./ui-components/ScenesProcess";
17
17
  export * from "./export-types";
18
- export var Renderer = window.Renderer;
@@ -1,10 +1,13 @@
1
- /// <reference types="react" />
1
+ import { ComponentType, ReactNode } from "react";
2
2
  import { Scene } from "../classes/scene";
3
- declare type SceneRunnerProps = {
4
- current: Scene;
3
+ export declare type SceneRunnerPublicProps = {
5
4
  width: number;
6
5
  height: number;
6
+ assetsLoader?: ReactNode | ComponentType;
7
+ };
8
+ declare type SceneRunnerProps = SceneRunnerPublicProps & {
9
+ current: Scene;
7
10
  };
8
- export declare function SceneRunner({ current, width, height }: SceneRunnerProps): JSX.Element;
11
+ export declare function SceneRunner({ current, width, height, assetsLoader: AssetsLoader, }: SceneRunnerProps): JSX.Element;
9
12
  export {};
10
13
  //# sourceMappingURL=SceneRunner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SceneRunner.d.ts","sourceRoot":"","sources":["../../src/ui-components/SceneRunner.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAGzC,aAAK,gBAAgB,GAAG;IACtB,OAAO,EAAE,KAAK,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,wBAAgB,WAAW,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,gBAAgB,eAiCvE"}
1
+ {"version":3,"file":"SceneRunner.d.ts","sourceRoot":"","sources":["../../src/ui-components/SceneRunner.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAEb,SAAS,EAGV,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAGzC,oBAAY,sBAAsB,GAAG;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;CAC1C,CAAC;AAEF,aAAK,gBAAgB,GAAG,sBAAsB,GAAG;IAC/C,OAAO,EAAE,KAAK,CAAC;CAChB,CAAC;AAEF,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,KAAK,EACL,MAAM,EACN,YAAY,EAAE,YAAY,GAC3B,EAAE,gBAAgB,eAwClB"}
@@ -10,10 +10,10 @@ var __assign = (this && this.__assign) || function () {
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
12
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
- import { useEffect } from "react";
13
+ import { useEffect, useMemo, } from "react";
14
14
  import { Sketch } from "./Sketch";
15
15
  export function SceneRunner(_a) {
16
- var current = _a.current, width = _a.width, height = _a.height;
16
+ var current = _a.current, width = _a.width, height = _a.height, AssetsLoader = _a.assetsLoader;
17
17
  useEffect(function () {
18
18
  current.loadAssets();
19
19
  }, [current]);
@@ -23,6 +23,12 @@ export function SceneRunner(_a) {
23
23
  var draw = function () {
24
24
  current.action();
25
25
  };
26
+ var assetsLoader = useMemo(function () {
27
+ if (typeof AssetsLoader === "function") {
28
+ return _jsx(AssetsLoader, {});
29
+ }
30
+ return (AssetsLoader !== null && AssetsLoader !== void 0 ? AssetsLoader : _jsx("div", { children: "Assets loading..." }));
31
+ }, [AssetsLoader]);
26
32
  return current.loadedAssets ? (_jsxs("div", __assign({ style: { width: width, height: height, position: "relative" } }, { children: [_jsx(Sketch, { width: width, height: height, onSetup: setup, onDraw: draw }), _jsx("div", __assign({ style: {
27
33
  position: "absolute",
28
34
  top: 0,
@@ -31,5 +37,5 @@ export function SceneRunner(_a) {
31
37
  right: 0,
32
38
  userSelect: "none",
33
39
  zIndex: 2,
34
- } }, { children: _jsx(current.UI, __assign({}, current.UIProps)) }))] }))) : (_jsx("div", { children: "Assets loading..." }));
40
+ } }, { children: _jsx(current.UI, __assign({}, current.UIProps)) }))] }))) : (assetsLoader);
35
41
  }
@@ -1,10 +1,9 @@
1
1
  /// <reference types="react" />
2
2
  import { SceneManagement } from "../classes/scene-management";
3
- declare type WorldViewProps = {
3
+ import { SceneRunnerPublicProps } from "./SceneRunner";
4
+ declare type WorldViewProps = SceneRunnerPublicProps & {
4
5
  list: ConstructorParameters<typeof SceneManagement>[0];
5
- width: number;
6
- height: number;
7
6
  };
8
- export declare function ScenesProcess({ list, width, height }: WorldViewProps): JSX.Element;
7
+ export declare function ScenesProcess({ list, ...props }: WorldViewProps): JSX.Element;
9
8
  export {};
10
9
  //# sourceMappingURL=ScenesProcess.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ScenesProcess.d.ts","sourceRoot":"","sources":["../../src/ui-components/ScenesProcess.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAG9D,aAAK,cAAc,GAAG;IACpB,IAAI,EAAE,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,wBAAgB,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,cAAc,eA+BpE"}
1
+ {"version":3,"file":"ScenesProcess.d.ts","sourceRoot":"","sources":["../../src/ui-components/ScenesProcess.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAe,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAEpE,aAAK,cAAc,GAAG,sBAAsB,GAAG;IAC7C,IAAI,EAAE,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;CACxD,CAAC;AAEF,wBAAgB,aAAa,CAAC,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,eA8B/D"}
@@ -1,9 +1,31 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __rest = (this && this.__rest) || function (s, e) {
13
+ var t = {};
14
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
+ t[p] = s[p];
16
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
+ t[p[i]] = s[p[i]];
20
+ }
21
+ return t;
22
+ };
1
23
  import { jsx as _jsx } from "react/jsx-runtime";
2
24
  import { useEffect, useMemo, useState } from "react";
3
25
  import { SceneManagement } from "../classes/scene-management";
4
26
  import { SceneRunner } from "./SceneRunner";
5
27
  export function ScenesProcess(_a) {
6
- var list = _a.list, width = _a.width, height = _a.height;
28
+ var list = _a.list, props = __rest(_a, ["list"]);
7
29
  var sceneManagement = useMemo(function () {
8
30
  return new SceneManagement(list);
9
31
  }, [list]);
@@ -20,5 +42,5 @@ export function ScenesProcess(_a) {
20
42
  setLoadedAssets(isLoaded);
21
43
  });
22
44
  }, [currentScene]);
23
- return (_jsx(SceneRunner, { current: currentScene, width: width, height: height }, currentScene.sessionId));
45
+ return (_jsx(SceneRunner, __assign({ current: currentScene }, props), currentScene.sessionId));
24
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Sketch.d.ts","sourceRoot":"","sources":["../../src/ui-components/Sketch.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,aAAK,WAAW,GAAG;IACjB,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,wBAAgB,MAAM,CAAC,EACrB,OAAO,EACP,MAAM,EACN,SAAS,EACT,KAAK,EACL,MAAM,GACP,EAAE,WAAW,eAgDb"}
1
+ {"version":3,"file":"Sketch.d.ts","sourceRoot":"","sources":["../../src/ui-components/Sketch.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAG3C,aAAK,WAAW,GAAG;IACjB,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,wBAAgB,MAAM,CAAC,EACrB,OAAO,EACP,MAAM,EACN,SAAS,EACT,KAAK,EACL,MAAM,GACP,EAAE,WAAW,eAgDb"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-simple-game-engine",
3
- "version": "0.0.5",
3
+ "version": "0.0.8",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib",
@@ -8,12 +8,10 @@
8
8
  "dependencies": {
9
9
  "matter-js": "^0.18.0",
10
10
  "p5": "^1.4.1",
11
- "react": "^18.0.0",
12
- "react-dom": "^18.0.0"
11
+ "react": "^18.0.0"
13
12
  },
14
13
  "scripts": {
15
- "build": "rm -rf lib && tsc -p .",
16
- "publish": "npm publish"
14
+ "build": "rm -rf lib && tsc -p ."
17
15
  },
18
16
  "files": [
19
17
  "/lib"