@safe-engine/cocos 1.10.3 → 2.1.1

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.
Files changed (52) hide show
  1. package/README.md +2 -9
  2. package/dist/animation/index.d.ts.map +1 -1
  3. package/dist/animation/index.js +1 -2
  4. package/dist/app.d.ts.map +1 -1
  5. package/dist/app.js +5 -12
  6. package/dist/box2d-wasm/PhysicsComponent.d.ts +5 -5
  7. package/dist/box2d-wasm/PhysicsComponent.d.ts.map +1 -1
  8. package/dist/box2d-wasm/PhysicsComponent.js +5 -5
  9. package/dist/box2d-wasm/debugDraw.d.ts.map +1 -1
  10. package/dist/box2d-wasm/debugDraw.js +6 -3
  11. package/dist/box2d-wasm/index.d.ts.map +1 -1
  12. package/dist/box2d-wasm/index.js +3 -5
  13. package/dist/collider/CollideComponent.d.ts +7 -8
  14. package/dist/collider/CollideComponent.d.ts.map +1 -1
  15. package/dist/collider/CollideComponent.js +42 -42
  16. package/dist/collider/CollideSystem.d.ts +1 -1
  17. package/dist/collider/CollideSystem.d.ts.map +1 -1
  18. package/dist/collider/CollideSystem.js +8 -11
  19. package/dist/collider/index.d.ts.map +1 -1
  20. package/dist/collider/index.js +1 -4
  21. package/dist/core/EnhancedComponent.d.ts +0 -1
  22. package/dist/core/EnhancedComponent.d.ts.map +1 -1
  23. package/dist/core/EnhancedComponent.js +0 -1
  24. package/dist/core/NodeComp.d.ts +2 -4
  25. package/dist/core/NodeComp.d.ts.map +1 -1
  26. package/dist/core/NodeComp.js +9 -9
  27. package/dist/core/decorator.d.ts +1 -3
  28. package/dist/core/decorator.d.ts.map +1 -1
  29. package/dist/core/decorator.js +6 -9
  30. package/dist/dragonbones/index.d.ts.map +1 -1
  31. package/dist/dragonbones/index.js +3 -4
  32. package/dist/gui/GUIComponent.d.ts +3 -3
  33. package/dist/gui/GUIComponent.d.ts.map +1 -1
  34. package/dist/gui/GUIComponent.js +7 -3
  35. package/dist/gworld.d.ts +2 -1
  36. package/dist/gworld.d.ts.map +1 -1
  37. package/dist/gworld.js +4 -1
  38. package/dist/helper/utils.d.ts +2 -2
  39. package/dist/helper/utils.d.ts.map +1 -1
  40. package/dist/helper/utils.js +1 -3
  41. package/dist/norender/NoRenderComponent.d.ts +5 -5
  42. package/dist/norender/NoRenderComponent.d.ts.map +1 -1
  43. package/dist/norender/NoRenderComponent.js +4 -4
  44. package/dist/render/RenderComponent.d.ts.map +1 -1
  45. package/dist/render/RenderComponent.js +7 -1
  46. package/dist/richtext/RichTextComp.d.ts.map +1 -1
  47. package/dist/richtext/RichTextComp.js +2 -1
  48. package/dist/richtext/index.d.ts.map +1 -1
  49. package/dist/richtext/index.js +1 -2
  50. package/dist/spine/index.d.ts.map +1 -1
  51. package/dist/spine/index.js +3 -3
  52. package/package.json +4 -4
package/README.md CHANGED
@@ -1,10 +1,3 @@
1
1
  # Guide
2
- - all components must be extends from `ComponentX` or `NoRenderComponentX`
3
- - `NoRenderComponentX` will append to component of parent node have `ComponentX`, `ComponentX` will be `addChild` to parent node
4
- - `node` property represent node, and can pass properties to assign
5
- - example ```<SpriteRender node={{ x: 5, y: 9 }} />```
6
- - `$ref` bind component with current class property as string
7
- - `$push` push component to list
8
- - `Array(2).map(i)` iteration repeat component 2 times
9
- - `Loading.listItems.map(item, i = 1)` iteration in static property
10
- - `listItems.map(item, i)` iteration in const variable
2
+
3
+ - Refer Pixi docs: [Pixi](https://github.com/Safe-engine/safex-pixi)
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/animation/index.ts"],"names":[],"mappings":"AAGA,wBAAgB,cAAc,SAI7B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/animation/index.ts"],"names":[],"mappings":"AAGA,wBAAgB,cAAc,SAG7B"}
@@ -1,7 +1,6 @@
1
1
  import { GameWorld } from '../gworld';
2
2
  import { AnimationSystem } from './AnimationSystem';
3
3
  export function setupAnimation() {
4
- GameWorld.Instance.systems.add(AnimationSystem);
4
+ GameWorld.Instance.systems.addThenConfigure(AnimationSystem);
5
5
  GameWorld.Instance.listUpdate.push(AnimationSystem);
6
- GameWorld.Instance.systems.configureOnce(AnimationSystem);
7
6
  }
package/dist/app.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAMA,wBAAgB,SAAS,CAAC,WAAW,CAAC,EAAE,MAAM,QAc7C;AACD,UAAU,UAAU;IAClB,SAAS,EAAE,CAAC,GAAG,CAAC,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;CACtB;AACD,wBAAsB,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;;;CAAA,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,iBA2CnG;AAED,wBAAgB,OAAO,CAAC,MAAM,GAAE,MAAM,EAAO,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,EAAE,WAAW,CAAC,EAAE,MAAM,IAAI,QA0BvG;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,CAIxD;AAED,eAAO,MAAM,WAAW,uBAAiB,CAAA"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAKA,wBAAgB,SAAS,CAAC,WAAW,CAAC,EAAE,MAAM,QAQ7C;AACD,UAAU,UAAU;IAClB,SAAS,EAAE,CAAC,GAAG,CAAC,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;CACtB;AACD,wBAAsB,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;;;CAAA,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,iBA2CnG;AAED,wBAAgB,OAAO,CAAC,MAAM,GAAE,MAAM,EAAO,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,EAAE,WAAW,CAAC,EAAE,MAAM,IAAI,QA0BvG;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,CAIxD;AAED,eAAO,MAAM,WAAW,uBAAiB,CAAA"}
package/dist/app.js CHANGED
@@ -1,21 +1,14 @@
1
- import { CollideSystem } from './collider/CollideSystem';
2
1
  import { GUISystem } from './gui';
3
2
  import { GameWorld } from './gworld';
4
3
  import { NoRenderSystem } from './norender';
5
4
  import { RenderSystem } from './render';
6
5
  export function initWorld(defaultFont) {
7
- GameWorld.Instance.systems.add(RenderSystem);
8
- GameWorld.Instance.systems.add(CollideSystem);
9
- GameWorld.Instance.systems.add(GUISystem);
10
- GameWorld.Instance.systems.add(NoRenderSystem);
11
- GameWorld.Instance.listUpdate.push(CollideSystem);
12
- GameWorld.Instance.systems.configureOnce(RenderSystem);
13
- GameWorld.Instance.systems.configureOnce(CollideSystem);
14
- GameWorld.Instance.systems.configureOnce(GUISystem);
15
- GameWorld.Instance.systems.configureOnce(NoRenderSystem);
6
+ const world = GameWorld.Instance;
7
+ world.systems.addThenConfigure(RenderSystem);
8
+ const fontSystem = world.systems.addThenConfigure(GUISystem);
9
+ world.systems.addThenConfigure(NoRenderSystem);
16
10
  if (defaultFont) {
17
- const guiSystem = GameWorld.Instance.systems.get(GUISystem);
18
- guiSystem.defaultFont = defaultFont;
11
+ fontSystem.defaultFont = defaultFont;
19
12
  }
20
13
  }
21
14
  export async function startGame(defaultFont, { width, height }, option) {
@@ -1,4 +1,4 @@
1
- import { NoRenderComponentX } from '../core/decorator';
1
+ import { ComponentX } from '../core/decorator';
2
2
  import { Vec2 } from '../polyfills';
3
3
  import { BaseComponentProps } from '../safex';
4
4
  import { PhysicsSprite } from './PhysicsSprite';
@@ -15,7 +15,7 @@ interface RigidBodyProps {
15
15
  onPreSolve?: (other: RigidBody, impulse?: any) => void;
16
16
  onPostSolve?: (other: RigidBody, oldManifold?: any) => void;
17
17
  }
18
- export declare class RigidBody extends NoRenderComponentX<RigidBodyProps> {
18
+ export declare class RigidBody extends ComponentX<RigidBodyProps> {
19
19
  body: Box2D.b2Body;
20
20
  physicSprite: PhysicsSprite;
21
21
  set linearVelocity(vel: Vec2);
@@ -31,19 +31,19 @@ interface BoxColliderPhysicsProps {
31
31
  height: number;
32
32
  offset?: [number, number];
33
33
  }
34
- export declare class PhysicsBoxCollider extends NoRenderComponentX<BoxColliderPhysicsProps & BaseComponentProps<PhysicsBoxCollider>> {
34
+ export declare class PhysicsBoxCollider extends ComponentX<BoxColliderPhysicsProps & BaseComponentProps<PhysicsBoxCollider>> {
35
35
  }
36
36
  interface CircleColliderPhysicsProps {
37
37
  radius: number;
38
38
  offset?: [number, number];
39
39
  }
40
- export declare class PhysicsCircleCollider extends NoRenderComponentX<CircleColliderPhysicsProps & BaseComponentProps<PhysicsCircleCollider>> {
40
+ export declare class PhysicsCircleCollider extends ComponentX<CircleColliderPhysicsProps & BaseComponentProps<PhysicsCircleCollider>> {
41
41
  }
42
42
  interface PolygonColliderPhysicsProps {
43
43
  points: Array<Vec2> | [number, number][];
44
44
  offset?: [number, number];
45
45
  }
46
- export declare class PhysicsPolygonCollider extends NoRenderComponentX<PolygonColliderPhysicsProps & BaseComponentProps<PhysicsPolygonCollider>> {
46
+ export declare class PhysicsPolygonCollider extends ComponentX<PolygonColliderPhysicsProps & BaseComponentProps<PhysicsPolygonCollider>> {
47
47
  }
48
48
  export {};
49
49
  //# sourceMappingURL=PhysicsComponent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PhysicsComponent.d.ts","sourceRoot":"","sources":["../../src/box2d-wasm/PhysicsComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAG/C,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAChB,OAAO,CAAC,EAAE,KAAK,CAAA;IACf,WAAW,CAAC,EAAE,KAAK,CAAA;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAA;IAChB,YAAY,CAAC,EAAE,KAAK,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAA;IAC3C,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAA;IACzC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,KAAA,KAAK,IAAI,CAAA;IACjD,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,KAAA,KAAK,IAAI,CAAA;CACvD;AAED,qBAAa,SAAU,SAAQ,kBAAkB,CAAC,cAAc,CAAC;IAC/D,IAAI,EAAE,KAAK,CAAC,MAAM,CAAA;IAClB,YAAY,EAAE,aAAa,CAAA;IAC3B,IAAI,cAAc,CAAC,GAAG,EAAE,IAAI,EAK3B;IAED,IAAI,cAAc,IAPM,IAAI,CAa3B;IAED,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,IAAI;IAWlC,kBAAkB,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,IAAI;IAWxC,WAAW,CAAC,MAAM,EAAE,KAAK;IAOzB,IAAI,QAAQ,CAAC,GAAG,EAAE,IAAI,EASrB;IAED,IAAI,QAAQ,IAXM,IAAI,CAarB;CACF;AAED,UAAU,uBAAuB;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC1B;AACD,qBAAa,kBAAmB,SAAQ,kBAAkB,CAAC,uBAAuB,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;CAS3H;AACD,UAAU,0BAA0B;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC1B;AACD,qBAAa,qBAAsB,SAAQ,kBAAkB,CAAC,0BAA0B,GAAG,kBAAkB,CAAC,qBAAqB,CAAC,CAAC;CAAG;AACxI,UAAU,2BAA2B;IACnC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAA;IACxC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC1B;AACD,qBAAa,sBAAuB,SAAQ,kBAAkB,CAAC,2BAA2B,GAAG,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;CAAG"}
1
+ {"version":3,"file":"PhysicsComponent.d.ts","sourceRoot":"","sources":["../../src/box2d-wasm/PhysicsComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAG/C,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAChB,OAAO,CAAC,EAAE,KAAK,CAAA;IACf,WAAW,CAAC,EAAE,KAAK,CAAA;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAA;IAChB,YAAY,CAAC,EAAE,KAAK,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAA;IAC3C,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAA;IACzC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,KAAA,KAAK,IAAI,CAAA;IACjD,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,KAAA,KAAK,IAAI,CAAA;CACvD;AAED,qBAAa,SAAU,SAAQ,UAAU,CAAC,cAAc,CAAC;IACvD,IAAI,EAAE,KAAK,CAAC,MAAM,CAAA;IAClB,YAAY,EAAE,aAAa,CAAA;IAC3B,IAAI,cAAc,CAAC,GAAG,EAAE,IAAI,EAK3B;IAED,IAAI,cAAc,IAPM,IAAI,CAa3B;IAED,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,IAAI;IAWlC,kBAAkB,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,IAAI;IAWxC,WAAW,CAAC,MAAM,EAAE,KAAK;IAOzB,IAAI,QAAQ,CAAC,GAAG,EAAE,IAAI,EASrB;IAED,IAAI,QAAQ,IAXM,IAAI,CAarB;CACF;AAED,UAAU,uBAAuB;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC1B;AACD,qBAAa,kBAAmB,SAAQ,UAAU,CAAC,uBAAuB,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;CASnH;AACD,UAAU,0BAA0B;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC1B;AACD,qBAAa,qBAAsB,SAAQ,UAAU,CAAC,0BAA0B,GAAG,kBAAkB,CAAC,qBAAqB,CAAC,CAAC;CAAG;AAChI,UAAU,2BAA2B;IACnC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAA;IACxC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC1B;AACD,qBAAa,sBAAuB,SAAQ,UAAU,CAAC,2BAA2B,GAAG,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;CAAG"}
@@ -1,7 +1,7 @@
1
- import { NoRenderComponentX } from '../core/decorator';
1
+ import { ComponentX } from '../core/decorator';
2
2
  import { Vec2 } from '../polyfills';
3
3
  import { box2D } from './PhysicsSystem';
4
- export class RigidBody extends NoRenderComponentX {
4
+ export class RigidBody extends ComponentX {
5
5
  body;
6
6
  physicSprite;
7
7
  set linearVelocity(vel) {
@@ -59,9 +59,9 @@ export class RigidBody extends NoRenderComponentX {
59
59
  return Vec2(this.physicSprite.getBody().GetPosition());
60
60
  }
61
61
  }
62
- export class PhysicsBoxCollider extends NoRenderComponentX {
62
+ export class PhysicsBoxCollider extends ComponentX {
63
63
  }
64
- export class PhysicsCircleCollider extends NoRenderComponentX {
64
+ export class PhysicsCircleCollider extends ComponentX {
65
65
  }
66
- export class PhysicsPolygonCollider extends NoRenderComponentX {
66
+ export class PhysicsPolygonCollider extends ComponentX {
67
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"debugDraw.d.ts","sourceRoot":"","sources":["../../src/box2d-wasm/debugDraw.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,aAAa,GAAI,UAAU,EAAE,CAAC,QAAQ,EAAE,mBAAc,EAAE,OAAO,OAAO,KAAK;IA6HpF;;;;;OAKG;;IAQH;;;;;OAKG;;IAQH;;;;;OAKG;;IAOH;;;;;OAKG;;IAQH;;;;;;OAMG;;IAQH;;;OAGG;;IAKH;;;;;OAKG;;CAUN,CAAA"}
1
+ {"version":3,"file":"debugDraw.d.ts","sourceRoot":"","sources":["../../src/box2d-wasm/debugDraw.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,aAAa,GAAI,UAAU,EAAE,CAAC,QAAQ,EAAE,mBAAc,EAAE,OAAO,OAAO,KAAK;IA8HpF;;;;;OAKG;;IAQH;;;;;OAKG;;IAQH;;;;;OAKG;;IAOH;;;;;OAKG;;IAQH;;;;;;OAMG;;IAQH;;;OAGG;;IAKH;;;;;OAKG;;CAUN,CAAA"}
@@ -44,7 +44,7 @@ export const makeDebugDraw = (graphics, pixelsPerMeter, box2D) => {
44
44
  * @returns {void}
45
45
  */
46
46
  const setCtxColor = (rgbStr) => {
47
- graphics.color = rgbStr;
47
+ // graphics.color = rgbStr
48
48
  // graphics.strokeStyle = { color: rgbStr }
49
49
  };
50
50
  /**
@@ -53,8 +53,11 @@ export const makeDebugDraw = (graphics, pixelsPerMeter, box2D) => {
53
53
  * @returns {void}
54
54
  */
55
55
  const drawPolygon = (vertices, fill) => {
56
- // console.log("drawPolygon", vertices[0].y, fill);
57
- graphics.drawPoly(vertices, Color4B(255, 0, 0, 50), fill ? 1 : 0);
56
+ // console.log('drawPolygon', vertices, fill)
57
+ if (fill)
58
+ graphics.drawPoly(vertices, Color4B(255, 0, 0, 50), 2, Color4B(255, 0, 0, 250));
59
+ else
60
+ graphics.drawPoly(vertices, Color4B(255, 0, 0, 0), 2, Color4B(255, 255, 255, 150));
58
61
  // graphics.drawPoly(vertices[vertices.length - 1].x * pixelsPerMeter, vertices[vertices.length - 1].y * pixelsPerMeter)
59
62
  // vertices.forEach((v) => {
60
63
  // graphics.lineTo(v.x * pixelsPerMeter, v.y * pixelsPerMeter)
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/box2d-wasm/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,IAAI,CAAA;AAGpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAE/B,wBAAgB,YAAY,CAAC,KAAK,YAAqB,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,IAAI,QAU7F"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/box2d-wasm/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,IAAI,CAAA;AAGpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAE/B,wBAAgB,YAAY,CAAC,KAAK,YAAqB,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,IAAI,QAQ7F"}
@@ -4,13 +4,11 @@ export * from './PhysicsComponent';
4
4
  export * from './PhysicsSprite';
5
5
  export * from './PhysicsSystem';
6
6
  export function setupPhysics(world = GameWorld.Instance, isDebugDraw, gravity) {
7
- world.systems.add(PhysicsSystem);
8
- world.systems.configureOnce(PhysicsSystem);
9
- world.listUpdate.push(PhysicsSystem);
7
+ const physicsSystem = world.addSystemAndUpdate(PhysicsSystem);
10
8
  if (isDebugDraw) {
11
- world.systems.get(PhysicsSystem).addDebug();
9
+ physicsSystem.addDebug();
12
10
  }
13
11
  if (gravity) {
14
- world.systems.get(PhysicsSystem).gravity = gravity;
12
+ physicsSystem.gravity = gravity;
15
13
  }
16
14
  }
@@ -1,12 +1,14 @@
1
1
  import { BaseComponentProps } from '..';
2
- import { NoRenderComponentX } from '../core/decorator';
2
+ import { ComponentX } from '../core/decorator';
3
3
  import { Vec2 } from '../polyfills';
4
4
  interface ColliderProps extends BaseComponentProps<Collider> {
5
+ tag?: number;
6
+ offset?: [number, number];
5
7
  onCollisionEnter?: (other: Collider) => void;
6
8
  onCollisionExit?: (other: Collider) => void;
7
9
  onCollisionStay?: (other: Collider) => void;
8
10
  }
9
- export declare class Collider extends NoRenderComponentX<ColliderProps> {
11
+ export declare class Collider<T = ColliderProps> extends ComponentX<T> {
10
12
  _worldPoints: cc.Vec2[] | cc.Point[];
11
13
  _worldPosition: cc.Vec2 | cc.Point;
12
14
  _worldRadius: any;
@@ -19,27 +21,24 @@ export declare class Collider extends NoRenderComponentX<ColliderProps> {
19
21
  };
20
22
  }
21
23
  interface BoxColliderProps extends BaseComponentProps<BoxCollider> {
22
- offset?: [number, number];
23
24
  width: number;
24
25
  height: number;
25
26
  }
26
- export declare class BoxCollider extends NoRenderComponentX<BoxColliderProps> {
27
+ export declare class BoxCollider extends Collider<ColliderProps & BoxColliderProps> {
27
28
  get size(): cc.Size;
28
29
  set size(s: cc.Size);
29
30
  update(dt: any, draw: cc.DrawNode): void;
30
31
  }
31
32
  interface CircleColliderProps extends BaseComponentProps<CircleCollider> {
32
- offset?: [number, number];
33
33
  radius: number;
34
34
  }
35
- export declare class CircleCollider extends NoRenderComponentX<CircleColliderProps> {
35
+ export declare class CircleCollider extends Collider<ColliderProps & CircleColliderProps> {
36
36
  update(dt: any, draw: cc.DrawNode): void;
37
37
  }
38
38
  interface PolygonColliderProps extends BaseComponentProps<PolygonCollider> {
39
- offset?: [number, number];
40
39
  points: Array<Vec2>;
41
40
  }
42
- export declare class PolygonCollider extends NoRenderComponentX<PolygonColliderProps> {
41
+ export declare class PolygonCollider extends Collider<ColliderProps & PolygonColliderProps> {
43
42
  get points(): Vec2[];
44
43
  set points(points: Vec2[]);
45
44
  update(dt: any, draw: cc.DrawNode): void;
@@ -1 +1 @@
1
- {"version":3,"file":"CollideComponent.d.ts","sourceRoot":"","sources":["../../src/collider/CollideComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAA;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAEtD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAYnC,UAAU,aAAc,SAAQ,kBAAkB,CAAC,QAAQ,CAAC;IAE1D,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAA;IAC5C,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAA;IAC3C,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAA;CAC5C;AACD,qBAAa,QAAS,SAAQ,kBAAkB,CAAC,aAAa,CAAC;IAC7D,YAAY,EAAE,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,CAAK;IACzC,cAAc,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,KAAK,CAAA;IAClC,YAAY,MAAA;IACZ,KAAK,EAAE,EAAE,CAAC,IAAI,CAAsB;IACpC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAsB;IAGvC,OAAO;IAKP,IAAI,KAAK;;;MAKR;CACF;AAED,UAAU,gBAAiB,SAAQ,kBAAkB,CAAC,WAAW,CAAC;IAChE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AACD,qBAAa,WAAY,SAAQ,kBAAkB,CAAC,gBAAgB,CAAC;IACnE,IAAI,IAAI,IAII,EAAE,CAAC,IAAI,CAFlB;IAED,IAAI,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAGlB;IAED,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ;CA6B7B;AAED,UAAU,mBAAoB,SAAQ,kBAAkB,CAAC,cAAc,CAAC;IACtE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACzB,MAAM,EAAE,MAAM,CAAA;CACf;AACD,qBAAa,cAAe,SAAQ,kBAAkB,CAAC,mBAAmB,CAAC;IACzE,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ;CAuB7B;AAED,UAAU,oBAAqB,SAAQ,kBAAkB,CAAC,eAAe,CAAC;IACxE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACzB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;CACpB;AAED,qBAAa,eAAgB,SAAQ,kBAAkB,CAAC,oBAAoB,CAAC;IAC3E,IAAI,MAAM,IAAI,IAAI,EAAE,CAInB;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,EAExB;IAED,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ;CAqB7B;AAED,oBAAY,aAAa;IACvB,IAAI,IAAA;IACJ,KAAK,IAAA;IACL,IAAI,IAAA;IACJ,IAAI,IAAA;CACL;AASD,qBAAa,QAAQ;IACnB,UAAU,EAAE,QAAQ,CAAA;IACpB,UAAU,EAAE,QAAQ,CAAA;IACpB,SAAS,EAAE,OAAO,CAAA;IAClB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,eAAe,EAAE,OAAO,CAAA;IACxB,gBAAgB,EAAE,OAAO,CAAA;gBAEb,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ;IAsBpD,WAAW;IAeX,IAAI;CAyBL"}
1
+ {"version":3,"file":"CollideComponent.d.ts","sourceRoot":"","sources":["../../src/collider/CollideComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE9C,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAYnC,UAAU,aAAc,SAAQ,kBAAkB,CAAC,QAAQ,CAAC;IAC1D,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACzB,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAA;IAC5C,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAA;IAC3C,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAA;CAC5C;AACD,qBAAa,QAAQ,CAAC,CAAC,GAAG,aAAa,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;IAC5D,YAAY,EAAE,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,CAAK;IACzC,cAAc,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,KAAK,CAAA;IAClC,YAAY,MAAA;IACZ,KAAK,EAAE,EAAE,CAAC,IAAI,CAAsB;IACpC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAsB;IAGvC,OAAO;IAKP,IAAI,KAAK;;;MAKR;CACF;AAED,UAAU,gBAAiB,SAAQ,kBAAkB,CAAC,WAAW,CAAC;IAChE,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AACD,qBAAa,WAAY,SAAQ,QAAQ,CAAC,aAAa,GAAG,gBAAgB,CAAC;IACzE,IAAI,IAAI,IAII,EAAE,CAAC,IAAI,CAFlB;IAED,IAAI,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAGlB;IAED,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ;CA6B7B;AAED,UAAU,mBAAoB,SAAQ,kBAAkB,CAAC,cAAc,CAAC;IACtE,MAAM,EAAE,MAAM,CAAA;CACf;AACD,qBAAa,cAAe,SAAQ,QAAQ,CAAC,aAAa,GAAG,mBAAmB,CAAC;IAC/E,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ;CAuB7B;AAED,UAAU,oBAAqB,SAAQ,kBAAkB,CAAC,eAAe,CAAC;IACxE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;CACpB;AAED,qBAAa,eAAgB,SAAQ,QAAQ,CAAC,aAAa,GAAG,oBAAoB,CAAC;IACjF,IAAI,MAAM,IAAI,IAAI,EAAE,CAInB;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,EAExB;IAED,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ;CAqB7B;AAED,oBAAY,aAAa;IACvB,IAAI,IAAA;IACJ,KAAK,IAAA;IACL,IAAI,IAAA;IACJ,IAAI,IAAA;CACL;AASD,qBAAa,QAAQ;IACnB,UAAU,EAAE,QAAQ,CAAA;IACpB,UAAU,EAAE,QAAQ,CAAA;IACpB,SAAS,EAAE,OAAO,CAAA;IAClB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,eAAe,EAAE,OAAO,CAAA;IACxB,gBAAgB,EAAE,OAAO,CAAA;gBAEb,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ;IAsBpD,WAAW;IAeX,IAAI;CAyBL"}
@@ -1,4 +1,4 @@
1
- import { NoRenderComponentX } from '../core/decorator';
1
+ import { ComponentX } from '../core/decorator';
2
2
  import { getMax, getMin } from '../helper/math';
3
3
  import { Vec2 } from '../polyfills';
4
4
  function getNodeToWorldTransformAR(node) {
@@ -10,7 +10,7 @@ function getNodeToWorldTransformAR(node) {
10
10
  function cloneRect(origin) {
11
11
  return cc.rect(origin.x, origin.y, origin.width, origin.height);
12
12
  }
13
- export class Collider extends NoRenderComponentX {
13
+ export class Collider extends ComponentX {
14
14
  _worldPoints = [];
15
15
  _worldPosition;
16
16
  _worldRadius;
@@ -30,7 +30,7 @@ export class Collider extends NoRenderComponentX {
30
30
  };
31
31
  }
32
32
  }
33
- export class BoxCollider extends NoRenderComponentX {
33
+ export class BoxCollider extends Collider {
34
34
  get size() {
35
35
  return cc.size(this.props.width, this.props.height);
36
36
  }
@@ -42,57 +42,57 @@ export class BoxCollider extends NoRenderComponentX {
42
42
  if (!this.node) {
43
43
  return;
44
44
  }
45
- const collider = this.getComponent(Collider);
45
+ // const collider = this.getComponent(Collider)
46
46
  const { height, width, offset = [0, 0] } = this.props;
47
47
  const [x, y] = offset;
48
- const hw = width * 0.5 * this.node.scale;
49
- const hh = height * 0.5 * this.node.scale;
48
+ const hw = width * 0.5;
49
+ const hh = height * 0.5;
50
50
  const transform = getNodeToWorldTransformAR(this.node);
51
51
  const rect = cc.rect(x - hw, y - hh, width, height);
52
52
  const rectTrs = cc.rectApplyAffineTransform(rect, transform);
53
53
  // cc.log(rectTrs);
54
- collider._worldPoints[0] = Vec2(rectTrs.x, rectTrs.y);
55
- collider._worldPoints[1] = Vec2(rectTrs.x, rectTrs.y + rectTrs.height);
56
- collider._worldPoints[2] = Vec2(rectTrs.x + rectTrs.width, rectTrs.y + rectTrs.height);
57
- collider._worldPoints[3] = Vec2(rectTrs.x + rectTrs.width, rectTrs.y);
58
- const listX = collider._worldPoints.map(({ x }) => x);
59
- const listY = collider._worldPoints.map(({ y }) => y);
60
- collider._preAabb = cloneRect(collider._AABB);
61
- collider._AABB.x = getMin(listX);
62
- collider._AABB.y = getMin(listY);
63
- collider._AABB.width = getMax(listX) - collider._AABB.x;
64
- collider._AABB.height = getMax(listY) - collider._AABB.y;
54
+ this._worldPoints[0] = Vec2(rectTrs.x, rectTrs.y);
55
+ this._worldPoints[1] = Vec2(rectTrs.x, rectTrs.y + rectTrs.height);
56
+ this._worldPoints[2] = Vec2(rectTrs.x + rectTrs.width, rectTrs.y + rectTrs.height);
57
+ this._worldPoints[3] = Vec2(rectTrs.x + rectTrs.width, rectTrs.y);
58
+ const listX = this._worldPoints.map(({ x }) => x);
59
+ const listY = this._worldPoints.map(({ y }) => y);
60
+ this._preAabb = cloneRect(this._AABB);
61
+ this._AABB.x = getMin(listX);
62
+ this._AABB.y = getMin(listY);
63
+ this._AABB.width = getMax(listX) - this._AABB.x;
64
+ this._AABB.height = getMax(listY) - this._AABB.y;
65
65
  if (draw) {
66
- draw.drawPoly(collider._worldPoints, null, 3, cc.Color.DEBUG_BORDER_COLOR);
66
+ draw.drawPoly(this._worldPoints, null, 3, cc.Color.DEBUG_BORDER_COLOR);
67
67
  }
68
68
  }
69
69
  }
70
- export class CircleCollider extends NoRenderComponentX {
70
+ export class CircleCollider extends Collider {
71
71
  update(dt, draw) {
72
72
  if (!this.node) {
73
73
  return;
74
74
  }
75
75
  const transform = getNodeToWorldTransformAR(this.node);
76
- const collider = this.getComponent(Collider);
76
+ // const collider = this.getComponent(Collider)
77
77
  const { radius, offset = [0, 0] } = this.props;
78
78
  const [x, y] = offset;
79
- collider._worldRadius = radius * this.node.scale;
80
- collider._worldPosition = cc.pointApplyAffineTransform(cc.p(x, y), transform);
79
+ this._worldRadius = radius * this.node.scale;
80
+ this._worldPosition = cc.pointApplyAffineTransform(cc.p(x, y), transform);
81
81
  if (draw) {
82
- draw.drawDot(collider._worldPosition, collider._worldRadius, cc.Color.DEBUG_FILL_COLOR);
83
- draw.drawCircle(collider._worldPosition, collider._worldRadius, 0, 64, true, 3, cc.Color.DEBUG_BORDER_COLOR);
84
- }
85
- collider._preAabb = cloneRect(collider._AABB);
86
- collider._AABB.x = collider._worldPosition.x - collider._worldRadius;
87
- collider._AABB.y = collider._worldPosition.y - collider._worldRadius;
88
- collider._AABB.width = collider._worldRadius * 2;
89
- collider._AABB.height = collider._AABB.width;
82
+ draw.drawDot(this._worldPosition, this._worldRadius, cc.Color.DEBUG_FILL_COLOR);
83
+ draw.drawCircle(this._worldPosition, this._worldRadius, 0, 64, true, 3, cc.Color.DEBUG_BORDER_COLOR);
84
+ }
85
+ this._preAabb = cloneRect(this._AABB);
86
+ this._AABB.x = this._worldPosition.x - this._worldRadius;
87
+ this._AABB.y = this._worldPosition.y - this._worldRadius;
88
+ this._AABB.width = this._worldRadius * 2;
89
+ this._AABB.height = this._AABB.width;
90
90
  // draw.drawRect(cc.p(this._AABB.x, this._AABB.y),
91
91
  // cc.p(this._worldPosition.x + this._worldRadius, this._worldPosition.y + this._worldRadius),
92
92
  // cc.Color.WHITE, 3, cc.Color.DEBUG_BORDER_COLOR);
93
93
  }
94
94
  }
95
- export class PolygonCollider extends NoRenderComponentX {
95
+ export class PolygonCollider extends Collider {
96
96
  get points() {
97
97
  const [x, y] = this.props.offset || [0, 0];
98
98
  const pointsList = this.props.points.map((p) => Vec2(p.x + x, p.y + y));
@@ -106,19 +106,19 @@ export class PolygonCollider extends NoRenderComponentX {
106
106
  return;
107
107
  }
108
108
  const transform = getNodeToWorldTransformAR(this.node);
109
- const collider = this.getComponent(Collider);
110
- collider._worldPoints = this.points.map((p) => cc.pointApplyAffineTransform(p, transform));
109
+ // const collider = this.getComponent(Collider)
110
+ this._worldPoints = this.points.map((p) => cc.pointApplyAffineTransform(p, transform));
111
111
  // cc.log(polyPoints);
112
112
  if (draw) {
113
- draw.drawPoly(collider._worldPoints, cc.Color.DEBUG_FILL_COLOR, 3, cc.Color.DEBUG_BORDER_COLOR);
114
- }
115
- const listX = collider._worldPoints.map(({ x }) => x);
116
- const listY = collider._worldPoints.map(({ y }) => y);
117
- collider._preAabb = cloneRect(collider._AABB);
118
- collider._AABB.x = getMin(listX);
119
- collider._AABB.y = getMin(listY);
120
- collider._AABB.width = getMax(listX) - collider._AABB.x;
121
- collider._AABB.height = getMax(listY) - collider._AABB.y;
113
+ draw.drawPoly(this._worldPoints, cc.Color.DEBUG_FILL_COLOR, 3, cc.Color.DEBUG_BORDER_COLOR);
114
+ }
115
+ const listX = this._worldPoints.map(({ x }) => x);
116
+ const listY = this._worldPoints.map(({ y }) => y);
117
+ this._preAabb = cloneRect(this._AABB);
118
+ this._AABB.x = getMin(listX);
119
+ this._AABB.y = getMin(listY);
120
+ this._AABB.width = getMax(listX) - this._AABB.x;
121
+ this._AABB.height = getMax(listY) - this._AABB.y;
122
122
  // draw.drawRect(cc.p(this._AABB.x, this._AABB.y), cc.p(max(listX), max(listY)),
123
123
  // cc.Color.WHITE, 3, cc.Color.DEBUG_BORDER_COLOR);
124
124
  }
@@ -1,6 +1,6 @@
1
1
  import { EntityManager, EventManager, System } from 'entityx-ts';
2
2
  import { Collider, Contract } from './CollideComponent';
3
- export declare function shouldCollider(colA: Collider, colB: Collider): any;
3
+ export declare function shouldCollider(colA: Collider, colB: Collider): boolean;
4
4
  export declare class CollideSystem implements System {
5
5
  listColliders: Collider[];
6
6
  _contracts: Contract[];
@@ -1 +1 @@
1
- {"version":3,"file":"CollideSystem.d.ts","sourceRoot":"","sources":["../../src/collider/CollideSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAc,MAAM,EAAE,MAAM,YAAY,CAAA;AAK5E,OAAO,EAA+B,QAAQ,EAAiB,QAAQ,EAAmB,MAAM,oBAAoB,CAAA;AAEpH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,OAQ5D;AAED,qBAAa,aAAc,YAAW,MAAM;IAC1C,aAAa,EAAE,QAAQ,EAAE,CAAK;IAC9B,UAAU,EAAE,QAAQ,EAAE,CAAK;IAC3B,eAAe,QAAK;IACpB,aAAa,EAAE,EAAE,CAAC,QAAQ,CAAA;IAC1B,gBAAgB,UAAQ;IACxB,OAAO,UAAO;IACd,cAAc,cAAW;IAEzB,SAAS,CAAC,aAAa,EAAE,YAAY;IASrC,OAAO,CAAC,aAAa,CAWpB;IAED,OAAO,CAAC,gBAAgB,CAEvB;IAED,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM;IA2GhE,WAAW,CAAC,QAAQ,EAAE,QAAQ;IAS9B,cAAc,CAAC,QAAQ,EAAE,QAAQ;IAIjC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK;IAK3B,eAAe,CAAC,MAAM,UAAO;CAI9B"}
1
+ {"version":3,"file":"CollideSystem.d.ts","sourceRoot":"","sources":["../../src/collider/CollideSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAc,MAAM,EAAE,MAAM,YAAY,CAAA;AAI5E,OAAO,EAA+B,QAAQ,EAAiB,QAAQ,EAAmB,MAAM,oBAAoB,CAAA;AAEpH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,WAQ5D;AAED,qBAAa,aAAc,YAAW,MAAM;IAC1C,aAAa,EAAE,QAAQ,EAAE,CAAK;IAC9B,UAAU,EAAE,QAAQ,EAAE,CAAK;IAC3B,eAAe,QAAK;IACpB,aAAa,EAAE,EAAE,CAAC,QAAQ,CAAA;IAC1B,gBAAgB,UAAQ;IACxB,OAAO,UAAO;IACd,cAAc,cAAW;IAEzB,SAAS,CAAC,aAAa,EAAE,YAAY;IASrC,OAAO,CAAC,aAAa,CASpB;IAED,OAAO,CAAC,gBAAgB,CAEvB;IAED,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM;IA2GhE,WAAW,CAAC,QAAQ,EAAE,QAAQ;IAS9B,cAAc,CAAC,QAAQ,EAAE,QAAQ;IAIjC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK;IAK3B,eAAe,CAAC,MAAM,UAAO;CAI9B"}
@@ -1,11 +1,10 @@
1
1
  import { EventTypes } from 'entityx-ts';
2
2
  import { NodeComp } from '../core/NodeComp';
3
3
  import { GameWorld } from '../gworld';
4
- import { instantiate } from '../helper';
5
4
  import { BoxCollider, CircleCollider, Collider, CollisionType, Contract, PolygonCollider } from './CollideComponent';
6
5
  export function shouldCollider(colA, colB) {
7
- const groupA = colA.node.group;
8
- const groupB = colB.node.group;
6
+ const groupA = colA.props.tag;
7
+ const groupB = colB.props.tag;
9
8
  if (groupA === undefined || groupB === undefined) {
10
9
  return true;
11
10
  }
@@ -29,16 +28,14 @@ export class CollideSystem {
29
28
  event_manager.subscribe(EventTypes.ComponentRemoved, PolygonCollider, this.onRemoveCollider.bind(this));
30
29
  }
31
30
  onAddCollider = ({ entity, component }) => {
32
- let collider = entity.getComponent(Collider);
33
- if (!collider) {
34
- collider = entity.assign(instantiate(Collider));
35
- }
31
+ // let collider = entity.getComponent(Collider)
32
+ // if (!collider) {
33
+ // collider = entity.assign(instantiate(Collider))
34
+ // }
36
35
  // console.log('onAddCollider', component, collider)
37
- collider.node = entity.getComponent(NodeComp);
38
- // collider.props = component.props
39
- // collider.props.enable = true
36
+ // collider.node = entity.getComponent(NodeComp)
40
37
  component.node = entity.getComponent(NodeComp);
41
- this.addCollider(collider);
38
+ this.addCollider(component);
42
39
  };
43
40
  onRemoveCollider = ({ component }) => {
44
41
  this.removeColliders.push(component.getComponent(Collider));
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/collider/index.ts"],"names":[],"mappings":"AAGA,cAAc,oBAAoB,CAAA;AAElC,wBAAgB,aAAa,CAAC,cAAc,CAAC,KAAA,EAAE,KAAK,UAAQ,QAS3D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/collider/index.ts"],"names":[],"mappings":"AAGA,cAAc,oBAAoB,CAAA;AAElC,wBAAgB,aAAa,CAAC,cAAc,CAAC,KAAA,EAAE,KAAK,UAAQ,QAM3D"}
@@ -2,10 +2,7 @@ import { GameWorld } from '../gworld';
2
2
  import { CollideSystem } from './CollideSystem';
3
3
  export * from './CollideComponent';
4
4
  export function setupCollider(colliderMatrix, debug = false) {
5
- GameWorld.Instance.systems.add(CollideSystem);
6
- GameWorld.Instance.listUpdate.push(CollideSystem);
7
- GameWorld.Instance.systems.configureOnce(CollideSystem);
8
- const collideSystem = GameWorld.Instance.systems.get(CollideSystem);
5
+ const collideSystem = GameWorld.Instance.addSystemAndUpdate(CollideSystem);
9
6
  if (colliderMatrix) {
10
7
  collideSystem.colliderMatrix = colliderMatrix;
11
8
  }
@@ -2,7 +2,6 @@ import { Constructor } from 'entityx-ts';
2
2
  import { BaseComponentProps } from '../safex';
3
3
  import { NodeComp } from './NodeComp';
4
4
  export declare class EnhancedComponent<Props = object, N extends NodeComp<any> = NodeComp<any>> {
5
- static hasRender: boolean;
6
5
  props: Props;
7
6
  node: N;
8
7
  enabled: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"EnhancedComponent.d.ts","sourceRoot":"","sources":["../../src/core/EnhancedComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAExC,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,qBAAa,iBAAiB,CAAC,KAAK,GAAG,MAAM,EAAE,CAAC,SAAS,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC;IACpF,MAAM,CAAC,SAAS,UAAO;IACvB,KAAK,EAAE,KAAK,CAAY;IACxB,IAAI,EAAE,CAAC,CAAA;IACP,OAAO,UAAO;gBACF,IAAI,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,KAAK;IAGhE,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK;IASjB,YAAY,CAAC,CAAC,SAAS,iBAAiB,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC;IAGzD,YAAY,CAAC,CAAC,SAAS,iBAAiB,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC;IAGvE,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE,MAAgC,EAAE,KAAK,SAAI;IAG5G,UAAU,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI;IAGvC,sBAAsB;IAGtB,YAAY,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM;IAGtE,uBAAuB,CAAC,CAAC,SAAS,aAAa,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;IAGhF,sBAAsB,CAAC,CAAC,SAAS,aAAa,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC;IAG7E,OAAO,CAAC,KAAK,EAAE,iBAAiB;CAGjC;AAED,MAAM,MAAM,aAAa,GAAG,iBAAiB,GAAG,QAAQ,CAAA"}
1
+ {"version":3,"file":"EnhancedComponent.d.ts","sourceRoot":"","sources":["../../src/core/EnhancedComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAExC,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,qBAAa,iBAAiB,CAAC,KAAK,GAAG,MAAM,EAAE,CAAC,SAAS,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC;IACpF,KAAK,EAAE,KAAK,CAAY;IACxB,IAAI,EAAE,CAAC,CAAA;IACP,OAAO,UAAO;gBACF,IAAI,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,KAAK;IAGhE,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK;IASjB,YAAY,CAAC,CAAC,SAAS,iBAAiB,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC;IAGzD,YAAY,CAAC,CAAC,SAAS,iBAAiB,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC;IAGvE,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE,MAAgC,EAAE,KAAK,SAAI;IAG5G,UAAU,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI;IAGvC,sBAAsB;IAGtB,YAAY,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM;IAGtE,uBAAuB,CAAC,CAAC,SAAS,aAAa,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;IAGhF,sBAAsB,CAAC,CAAC,SAAS,aAAa,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC;IAG7E,OAAO,CAAC,KAAK,EAAE,iBAAiB;CAGjC;AAED,MAAM,MAAM,aAAa,GAAG,iBAAiB,GAAG,QAAQ,CAAA"}
@@ -1,5 +1,4 @@
1
1
  export class EnhancedComponent {
2
- static hasRender = true;
3
2
  props = {};
4
3
  node;
5
4
  enabled = true;
@@ -2,14 +2,13 @@ import { Constructor, Entity } from 'entityx-ts';
2
2
  import { EventRegister } from '../norender';
3
3
  import { Size, Vec2 } from '../polyfills';
4
4
  import { ComponentType, EnhancedComponent } from './EnhancedComponent';
5
- export type EventCallbackType = (...args: any[]) => void;
5
+ export type EventCallbackType<T = void> = (args?: T) => void;
6
6
  export declare class NodeComp<C extends cc.Node = cc.Node> {
7
7
  entity: Entity;
8
8
  instance: C;
9
9
  parent: NodeComp;
10
10
  children: NodeComp[];
11
11
  name: string;
12
- private _group;
13
12
  private _active;
14
13
  constructor(instance: C, entity: Entity);
15
14
  get uuid(): number;
@@ -52,13 +51,12 @@ export declare class NodeComp<C extends cc.Node = cc.Node> {
52
51
  set opacity(val: number);
53
52
  get active(): boolean;
54
53
  set active(val: boolean);
55
- get group(): string | number;
56
- set group(val: string | number);
57
54
  get zIndex(): number;
58
55
  set zIndex(val: number);
59
56
  get childrenCount(): number;
60
57
  destroy(): void;
61
58
  addComponent<T extends ComponentType>(instance: T & {
59
+ render?: any;
62
60
  start?: () => void;
63
61
  }): T;
64
62
  getComponent<T extends ComponentType>(component: Constructor<T>): T;
@@ -1 +1 @@
1
- {"version":3,"file":"NodeComp.d.ts","sourceRoot":"","sources":["../../src/core/NodeComp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NodeComp.d.ts","sourceRoot":"","sources":["../../src/core/NodeComp.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ export class NodeComp {
7
7
  parent;
8
8
  children = [];
9
9
  name;
10
- _group;
10
+ // private _group
11
11
  _active = true;
12
12
  constructor(instance, entity) {
13
13
  this.entity = entity;
@@ -120,12 +120,12 @@ export class NodeComp {
120
120
  }
121
121
  this.instance.setVisible(val);
122
122
  }
123
- get group() {
124
- return this._group;
125
- }
126
- set group(val) {
127
- this._group = val;
128
- }
123
+ // get group() {
124
+ // return this._group
125
+ // }
126
+ // set group(val: string | number) {
127
+ // this._group = val
128
+ // }
129
129
  // get width() {
130
130
  // return this.instance.width
131
131
  // }
@@ -155,7 +155,7 @@ export class NodeComp {
155
155
  }
156
156
  addComponent(instance) {
157
157
  this.entity.assign(instance);
158
- if (!instance.constructor.hasRender) {
158
+ if (!instance.render) {
159
159
  if (instance.start)
160
160
  instance.start();
161
161
  }
@@ -291,7 +291,7 @@ export class NodeComp {
291
291
  }
292
292
  }
293
293
  resolveComponent(component) {
294
- if (component.constructor.hasRender) {
294
+ if (component.render) {
295
295
  this.addChild(component.node);
296
296
  }
297
297
  else {
@@ -1,9 +1,7 @@
1
1
  import { EnhancedComponent } from './EnhancedComponent';
2
2
  import { NodeComp } from './NodeComp';
3
- export declare class NoRenderComponentX<Props = object, C extends cc.Node = cc.Node> extends EnhancedComponent<Props, NodeComp<C>> {
4
- static hasRender: boolean;
5
- }
6
3
  export declare class ComponentX<Props = object, C extends cc.Node = cc.Node> extends EnhancedComponent<Props, NodeComp<C>> {
7
4
  render?(): this;
8
5
  }
6
+ export declare function render(): any;
9
7
  //# sourceMappingURL=decorator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"decorator.d.ts","sourceRoot":"","sources":["../../src/core/decorator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,qBAAa,kBAAkB,CAAC,KAAK,GAAG,MAAM,EAAE,CAAC,SAAS,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAE,SAAQ,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxH,MAAM,CAAC,SAAS,UAAQ;CACzB;AAED,qBAAa,UAAU,CAAC,KAAK,GAAG,MAAM,EAAE,CAAC,SAAS,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAE,SAAQ,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IAChH,MAAM,CAAC;CAMR"}
1
+ {"version":3,"file":"decorator.d.ts","sourceRoot":"","sources":["../../src/core/decorator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,qBAAa,UAAU,CAAC,KAAK,GAAG,MAAM,EAAE,CAAC,SAAS,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAE,SAAQ,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IAChH,MAAM,CAAC,IAAI,IAAI;CAChB;AAED,wBAAgB,MAAM,QAKrB"}
@@ -1,13 +1,10 @@
1
1
  import { GameWorld } from '../gworld';
2
2
  import { EnhancedComponent } from './EnhancedComponent';
3
- export class NoRenderComponentX extends EnhancedComponent {
4
- static hasRender = false;
5
- }
6
3
  export class ComponentX extends EnhancedComponent {
7
- render() {
8
- const world = GameWorld.Instance;
9
- const root = world.entities.create();
10
- const comp = root.assign(this);
11
- return comp;
12
- }
4
+ }
5
+ export function render() {
6
+ const world = GameWorld.Instance;
7
+ const root = world.entities.create();
8
+ const comp = root.assign(this);
9
+ return comp;
13
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dragonbones/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAc,MAAM,EAAE,MAAM,YAAY,CAAA;AAG5E,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAG7C,MAAM,MAAM,oBAAoB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AACnD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,UAAU,gBAAgB;IACxB,IAAI,EAAE,eAAe,CAAA;IACrB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,SAAS,CAAC,EAAE,KAAK,CAAA;IAEjB,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAA;IAC7B,cAAc,CAAC,EAAE,MAAM,IAAI,CAAA;IAC3B,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAA;CACjC;AACD,UAAU,wBAAwB;IAChC,iBAAiB,EAAE,MAAM,CAAA;IACzB,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7E,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAChE,SAAS,EAAE,KAAK,CAAA;CACjB;AACD,UAAU,uBAAuB;IAC/B,SAAS,EAAE,wBAAwB,CAAA;IACnC,SAAS,EAAE;QACT,KAAK,EAAE,OAAO,CAAA;KACf,CAAA;IACD,qBAAqB,EAAE,MAAM,IAAI,CAAA;IACjC,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,IAAI,CAAA;CAClF;AACD,qBAAa,eAAgB,SAAQ,UAAU,CAAC,gBAAgB,GAAG,kBAAkB,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;IAC9G,QAAQ,EAAE,uBAAuB,CAAA;IACjC,MAAM,EAAE,GAAG,CAAA;IACX,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,SAAI;IAOxC,gBAAgB;IAShB,QAAQ,CAAC,OAAO,EAAE,OAAO;IAIzB,YAAY,CAAC,SAAS,EAAE,KAAK;CAG9B;AAED,qBAAa,iBAAkB,YAAW,MAAM;IAC9C,SAAS,CAAC,aAAa,EAAE,YAAY;IAyDrC,MAAM,CAAC,QAAQ,EAAE,aAAa;CAW/B;AAED,wBAAgB,gBAAgB,SAI/B;AAED,cAAc,yBAAyB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dragonbones/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAc,MAAM,EAAE,MAAM,YAAY,CAAA;AAG5E,OAAO,EAAE,UAAU,EAAU,MAAM,mBAAmB,CAAA;AAEtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAG7C,MAAM,MAAM,oBAAoB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AACnD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,UAAU,gBAAgB;IACxB,IAAI,EAAE,eAAe,CAAA;IACrB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,SAAS,CAAC,EAAE,KAAK,CAAA;IAEjB,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAA;IAC7B,cAAc,CAAC,EAAE,MAAM,IAAI,CAAA;IAC3B,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAA;CACjC;AACD,UAAU,wBAAwB;IAChC,iBAAiB,EAAE,MAAM,CAAA;IACzB,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7E,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAChE,SAAS,EAAE,KAAK,CAAA;CACjB;AACD,UAAU,uBAAuB;IAC/B,SAAS,EAAE,wBAAwB,CAAA;IACnC,SAAS,EAAE;QACT,KAAK,EAAE,OAAO,CAAA;KACf,CAAA;IACD,qBAAqB,EAAE,MAAM,IAAI,CAAA;IACjC,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,IAAI,CAAA;CAClF;AACD,qBAAa,eAAgB,SAAQ,UAAU,CAAC,gBAAgB,GAAG,kBAAkB,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;IAC9G,QAAQ,EAAE,uBAAuB,CAAA;IACjC,MAAM,EAAE,GAAG,CAAA;IACX,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,SAAI;IAOxC,gBAAgB;IAShB,QAAQ,CAAC,OAAO,EAAE,OAAO;IAIzB,YAAY,CAAC,SAAS,EAAE,KAAK;CAG9B;AAED,qBAAa,iBAAkB,YAAW,MAAM;IAC9C,SAAS,CAAC,aAAa,EAAE,YAAY;IAyDrC,MAAM,CAAC,QAAQ,EAAE,aAAa;CAW/B;AAED,wBAAgB,gBAAgB,SAE/B;AAED,cAAc,yBAAyB,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { EventTypes } from 'entityx-ts';
2
2
  import { NodeComp } from '../core/NodeComp';
3
- import { ComponentX } from '../core/decorator';
3
+ import { ComponentX, render } from '../core/decorator';
4
4
  import { GameWorld } from '../gworld';
5
5
  import { PixiDragonBonesSprite } from './PixiDragonBonesSprite';
6
6
  export class DragonBonesComp extends ComponentX {
@@ -89,8 +89,7 @@ export class DragonBonesSystem {
89
89
  }
90
90
  }
91
91
  export function setupDragonBones() {
92
- GameWorld.Instance.systems.add(DragonBonesSystem);
93
- GameWorld.Instance.listUpdate.push(DragonBonesSystem);
94
- GameWorld.Instance.systems.configureOnce(DragonBonesSystem);
92
+ GameWorld.Instance.addSystemAndUpdate(DragonBonesSystem);
95
93
  }
96
94
  export * from './PixiDragonBonesSprite';
95
+ Object.defineProperty(DragonBonesComp.prototype, 'render', { value: render });
@@ -1,4 +1,4 @@
1
- import { ComponentX, NoRenderComponentX } from '../core/decorator';
1
+ import { ComponentX } from '../core/decorator';
2
2
  import { Size, Vec2 } from '../polyfills';
3
3
  import { BaseComponentProps, ColorSource } from '../safex';
4
4
  export declare const FillType: {
@@ -13,7 +13,7 @@ interface ButtonCompProps {
13
13
  zoomScale?: number;
14
14
  onPress?: (target: ButtonComp) => void;
15
15
  }
16
- export declare class ButtonComp extends NoRenderComponentX<ButtonCompProps> {
16
+ export declare class ButtonComp extends ComponentX<ButtonCompProps> {
17
17
  }
18
18
  interface ProgressTimerProps {
19
19
  spriteFrame: string;
@@ -62,7 +62,7 @@ interface InputCompProps {
62
62
  export declare class InputComp extends ComponentX<InputCompProps & BaseComponentProps<InputComp>, ccui.TextField> {
63
63
  get string(): string;
64
64
  }
65
- export declare class BlockInputEventsComp extends NoRenderComponentX {
65
+ export declare class BlockInputEventsComp extends ComponentX {
66
66
  }
67
67
  export {};
68
68
  //# sourceMappingURL=GUIComponent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GUIComponent.d.ts","sourceRoot":"","sources":["../../src/gui/GUIComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAClE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAE1D,eAAO,MAAM,QAAQ;;;;CAIpB,CAAA;AAID,UAAU,eAAe;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;CACvC;AACD,qBAAa,UAAW,SAAQ,kBAAkB,CAAC,eAAe,CAAC;CAKlE;AAED,UAAU,kBAAkB;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,IAAI,CAAA;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,qBAAa,iBAAkB,SAAQ,UAAU,CAAC,kBAAkB,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC,aAAa,GAAG,EAAE,CAAC,IAAI,CAAC;IACvI,IAAI,SAAS,IAYM,MAAM,CARxB;IAED,IAAI,SAAS,CAAC,GAAG,EAAE,MAAM,EAIxB;IAED,IAAI,SAAS,CAAC,GAAG,EAAE,MAAM,EAIxB;CACF;AAED,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;IAC/B,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;CACrC;AAED,qBAAa,SAAU,SAAQ,UAAU,CAAC,cAAc,GAAG,kBAAkB,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC;IAClG,IAAI,MAAM,IAIM,MAAM,CAFrB;IAED,IAAI,MAAM,CAAC,GAAG,EAAE,MAAM,EAKrB;CACF;AAED,oBAAY,mBAAmB;IAC7B,IAAmC;IACnC,UAA+C;IAC/C,QAA2C;IAC3C,IAAmC;CACpC;AACD,UAAU,eAAe;IACvB,QAAQ,EAAE,IAAI,CAAA;IACd,WAAW,EAAE,IAAI,CAAA;IACjB,SAAS,CAAC,EAAE,mBAAmB,CAAA;CAChC;AACD,qBAAa,cAAe,SAAQ,UAAU,CAAC,eAAe,GAAG,kBAAkB,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC;IACjH,IAAI,CAAC,KAAK,EAAE,MAAM;CAKnB;AAED,UAAU,cAAc;IACtB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AACD,qBAAa,SAAU,SAAQ,UAAU,CAAC,cAAc,GAAG,kBAAkB,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC;IACvG,IAAI,MAAM,WAET;CACF;AAED,qBAAa,oBAAqB,SAAQ,kBAAkB;CAAG"}
1
+ {"version":3,"file":"GUIComponent.d.ts","sourceRoot":"","sources":["../../src/gui/GUIComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAU,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAE1D,eAAO,MAAM,QAAQ;;;;CAIpB,CAAA;AAID,UAAU,eAAe;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;CACvC;AACD,qBAAa,UAAW,SAAQ,UAAU,CAAC,eAAe,CAAC;CAK1D;AAED,UAAU,kBAAkB;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,IAAI,CAAA;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,qBAAa,iBAAkB,SAAQ,UAAU,CAAC,kBAAkB,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC,aAAa,GAAG,EAAE,CAAC,IAAI,CAAC;IACvI,IAAI,SAAS,IAYM,MAAM,CARxB;IAED,IAAI,SAAS,CAAC,GAAG,EAAE,MAAM,EAIxB;IAED,IAAI,SAAS,CAAC,GAAG,EAAE,MAAM,EAIxB;CACF;AAED,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;IAC/B,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;CACrC;AAED,qBAAa,SAAU,SAAQ,UAAU,CAAC,cAAc,GAAG,kBAAkB,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC;IAClG,IAAI,MAAM,IAIM,MAAM,CAFrB;IAED,IAAI,MAAM,CAAC,GAAG,EAAE,MAAM,EAKrB;CACF;AAED,oBAAY,mBAAmB;IAC7B,IAAmC;IACnC,UAA+C;IAC/C,QAA2C;IAC3C,IAAmC;CACpC;AACD,UAAU,eAAe;IACvB,QAAQ,EAAE,IAAI,CAAA;IACd,WAAW,EAAE,IAAI,CAAA;IACjB,SAAS,CAAC,EAAE,mBAAmB,CAAA;CAChC;AACD,qBAAa,cAAe,SAAQ,UAAU,CAAC,eAAe,GAAG,kBAAkB,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC;IACjH,IAAI,CAAC,KAAK,EAAE,MAAM;CAKnB;AAED,UAAU,cAAc;IACtB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AACD,qBAAa,SAAU,SAAQ,UAAU,CAAC,cAAc,GAAG,kBAAkB,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC;IACvG,IAAI,MAAM,WAET;CACF;AAED,qBAAa,oBAAqB,SAAQ,UAAU;CAAG"}
@@ -1,11 +1,11 @@
1
- import { ComponentX, NoRenderComponentX } from '../core/decorator';
1
+ import { ComponentX, render } from '../core/decorator';
2
2
  import { Vec2 } from '../polyfills';
3
3
  export const FillType = {
4
4
  HORIZONTAL: 0,
5
5
  VERTICAL: 1,
6
6
  RADIAL: 2,
7
7
  };
8
- export class ButtonComp extends NoRenderComponentX {
8
+ export class ButtonComp extends ComponentX {
9
9
  }
10
10
  export class ProgressTimerComp extends ComponentX {
11
11
  get fillRange() {
@@ -54,5 +54,9 @@ export class InputComp extends ComponentX {
54
54
  return this.node.instance.getString();
55
55
  }
56
56
  }
57
- export class BlockInputEventsComp extends NoRenderComponentX {
57
+ export class BlockInputEventsComp extends ComponentX {
58
58
  }
59
+ Object.defineProperty(ProgressTimerComp.prototype, 'render', { value: render });
60
+ Object.defineProperty(LabelComp.prototype, 'render', { value: render });
61
+ Object.defineProperty(ScrollViewComp.prototype, 'render', { value: render });
62
+ Object.defineProperty(InputComp.prototype, 'render', { value: render });
package/dist/gworld.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { Constructor, System, World } from 'entityx-ts';
2
2
  export declare class GameWorld extends World {
3
- listUpdate: (System | Constructor<System>)[];
3
+ listUpdate: Constructor<System>[];
4
+ addSystemAndUpdate<T extends System>(system: Constructor<T>): T;
4
5
  update(dt: number): void;
5
6
  private static _instance;
6
7
  static get Instance(): GameWorld;
@@ -1 +1 @@
1
- {"version":3,"file":"gworld.d.ts","sourceRoot":"","sources":["../src/gworld.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvD,qBAAa,SAAU,SAAQ,KAAK;IAClC,UAAU,EAAE,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,CAAK;IACjD,MAAM,CAAC,EAAE,EAAE,MAAM;IAMjB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAW;IAEnC,WAAkB,QAAQ,cAGzB;CACF"}
1
+ {"version":3,"file":"gworld.d.ts","sourceRoot":"","sources":["../src/gworld.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvD,qBAAa,SAAU,SAAQ,KAAK;IAClC,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,CAAK;IAEtC,kBAAkB,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;IAK3D,MAAM,CAAC,EAAE,EAAE,MAAM;IAMjB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAW;IAEnC,WAAkB,QAAQ,cAEzB;CACF"}
package/dist/gworld.js CHANGED
@@ -1,6 +1,10 @@
1
1
  import { World } from 'entityx-ts';
2
2
  export class GameWorld extends World {
3
3
  listUpdate = [];
4
+ addSystemAndUpdate(system) {
5
+ this.listUpdate.push(system);
6
+ return this.systems.addThenConfigure(system);
7
+ }
4
8
  update(dt) {
5
9
  this.listUpdate.forEach((system) => {
6
10
  this.systems.update(system, dt);
@@ -8,7 +12,6 @@ export class GameWorld extends World {
8
12
  }
9
13
  static _instance;
10
14
  static get Instance() {
11
- // Do you need arguments? Make it a regular static method instead.
12
15
  return this._instance || (this._instance = new this());
13
16
  }
14
17
  }
@@ -1,5 +1,5 @@
1
1
  import { Constructor, EntityManager, EventManager } from 'entityx-ts';
2
- import { ComponentX, NoRenderComponentX } from '../core/decorator';
2
+ import { ComponentX } from '../core/decorator';
3
3
  import { SceneComponent } from '../core/Scene';
4
4
  export declare function registerSystem<T extends ComponentX>(component: Constructor<T>): {
5
5
  new (): {
@@ -7,7 +7,7 @@ export declare function registerSystem<T extends ComponentX>(component: Construc
7
7
  update(entities: EntityManager, events: EventManager, dt: number): void;
8
8
  };
9
9
  };
10
- export type GetProps<T> = T extends ComponentX<infer P> ? P : T extends NoRenderComponentX<infer Q> ? Q : never;
10
+ export type GetProps<T> = T extends ComponentX<infer P> ? P : never;
11
11
  export declare function instantiate<T extends ComponentX>(ComponentType: Constructor<T>, data?: GetProps<T>): T;
12
12
  export declare function loadScene<T extends SceneComponent>(ComponentType: Constructor<T>): void;
13
13
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/helper/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAoC,MAAM,YAAY,CAAA;AAEvG,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAElE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAG9C,wBAAgB,cAAc,CAAC,CAAC,SAAS,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;;iCAKjD,YAAY;yBAepB,aAAa,UAAU,YAAY,MAAM,MAAM;;EAenE;AAED,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,kBAAkB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AAE/G,wBAAgB,WAAW,CAAC,CAAC,SAAS,UAAU,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAOtG;AACD,wBAAgB,SAAS,CAAC,CAAC,SAAS,cAAc,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC,QAKhF"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/helper/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAoC,MAAM,YAAY,CAAA;AAEvG,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAG9C,wBAAgB,cAAc,CAAC,CAAC,SAAS,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;;iCAKjD,YAAY;yBAepB,aAAa,UAAU,YAAY,MAAM,MAAM;;EAanE;AAED,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AAEnE,wBAAgB,WAAW,CAAC,CAAC,SAAS,UAAU,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAOtG;AACD,wBAAgB,SAAS,CAAC,CAAC,SAAS,cAAc,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC,QAKhF"}
@@ -31,9 +31,7 @@ export function registerSystem(component) {
31
31
  }
32
32
  }
33
33
  Object.defineProperty(NewSystem, 'name', { value: `${component.name}System` });
34
- GameWorld.Instance.systems.add(NewSystem);
35
- GameWorld.Instance.systems.configureOnce(NewSystem);
36
- GameWorld.Instance.listUpdate.push(NewSystem);
34
+ GameWorld.Instance.addSystemAndUpdate(NewSystem);
37
35
  return NewSystem;
38
36
  }
39
37
  export function instantiate(ComponentType, data) {
@@ -1,13 +1,13 @@
1
- import { NoRenderComponentX } from '../core/decorator';
1
+ import { ComponentX } from '../core/decorator';
2
2
  import { EventCallbackType, NodeComp } from '../core/NodeComp';
3
3
  import { Touch } from '../polyfills';
4
4
  type TouchEVentCallback = (touch?: Touch, node?: NodeComp) => void;
5
5
  export interface EventMap {
6
6
  [key: string]: [EventCallbackType];
7
7
  }
8
- export declare class EventRegister extends NoRenderComponentX {
8
+ export declare class EventRegister extends ComponentX {
9
9
  private events;
10
- on(name: string, callback: EventCallbackType, target?: any): void;
10
+ on<T>(name: string, callback: EventCallbackType<T>, target?: any): void;
11
11
  off(name: string, callback?: EventCallbackType, target?: any): any;
12
12
  emit(name: string, ...params: any): void;
13
13
  }
@@ -17,7 +17,7 @@ interface TouchEventProps {
17
17
  onTouchEnd?: TouchEVentCallback;
18
18
  onTouchCancel?: TouchEVentCallback;
19
19
  }
20
- export declare class TouchEventRegister extends NoRenderComponentX<TouchEventProps> {
20
+ export declare class TouchEventRegister extends ComponentX<TouchEventProps> {
21
21
  listener: cc.EventListener;
22
22
  touch: cc.Touch;
23
23
  setEnabled(enabled: boolean): void;
@@ -26,7 +26,7 @@ interface ExtraDataProps {
26
26
  key: string;
27
27
  value: Integer | Float | string;
28
28
  }
29
- export declare class ExtraDataComp extends NoRenderComponentX<ExtraDataProps> {
29
+ export declare class ExtraDataComp extends ComponentX<ExtraDataProps> {
30
30
  data: {
31
31
  [key: string]: any;
32
32
  };
@@ -1 +1 @@
1
- {"version":3,"file":"NoRenderComponent.d.ts","sourceRoot":"","sources":["../../src/norender/NoRenderComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAEpC,KAAK,kBAAkB,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,QAAQ,KAAK,IAAI,CAAA;AAElE,MAAM,WAAW,QAAQ;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,iBAAiB,CAAC,CAAA;CACnC;AAED,qBAAa,aAAc,SAAQ,kBAAkB;IACnD,OAAO,CAAC,MAAM,CAAe;IAE7B,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,CAAC,EAAE,GAAG;IAS1D,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,iBAAiB,EAAE,MAAM,CAAC,EAAE,GAAG;IAK5D,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG;CAMlC;AAED,UAAU,eAAe;IACvB,YAAY,CAAC,EAAE,kBAAkB,CAAA;IACjC,WAAW,CAAC,EAAE,kBAAkB,CAAA;IAChC,UAAU,CAAC,EAAE,kBAAkB,CAAA;IAC/B,aAAa,CAAC,EAAE,kBAAkB,CAAA;CACnC;AACD,qBAAa,kBAAmB,SAAQ,kBAAkB,CAAC,eAAe,CAAC;IACzE,QAAQ,EAAE,EAAE,CAAC,aAAa,CAAA;IAC1B,KAAK,EAAE,EAAE,CAAC,KAAK,CAAA;IACf,UAAU,CAAC,OAAO,EAAE,OAAO;CAG5B;AAED,UAAU,cAAc;IACtB,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,OAAO,GAAG,KAAK,GAAG,MAAM,CAAA;CAChC;AACD,qBAAa,aAAc,SAAQ,kBAAkB,CAAC,cAAc,CAAC;IACnE,IAAI,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAK;IACjC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC;IAG1B,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IAG9B,UAAU,CAAC,GAAG,EAAE,MAAM;CAGvB"}
1
+ {"version":3,"file":"NoRenderComponent.d.ts","sourceRoot":"","sources":["../../src/norender/NoRenderComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAEpC,KAAK,kBAAkB,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,QAAQ,KAAK,IAAI,CAAA;AAElE,MAAM,WAAW,QAAQ;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,iBAAiB,CAAC,CAAA;CACnC;AAED,qBAAa,aAAc,SAAQ,UAAU;IAC3C,OAAO,CAAC,MAAM,CAAe;IAE7B,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,GAAG;IAShE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,iBAAiB,EAAE,MAAM,CAAC,EAAE,GAAG;IAK5D,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG;CAMlC;AAED,UAAU,eAAe;IACvB,YAAY,CAAC,EAAE,kBAAkB,CAAA;IACjC,WAAW,CAAC,EAAE,kBAAkB,CAAA;IAChC,UAAU,CAAC,EAAE,kBAAkB,CAAA;IAC/B,aAAa,CAAC,EAAE,kBAAkB,CAAA;CACnC;AACD,qBAAa,kBAAmB,SAAQ,UAAU,CAAC,eAAe,CAAC;IACjE,QAAQ,EAAE,EAAE,CAAC,aAAa,CAAA;IAC1B,KAAK,EAAE,EAAE,CAAC,KAAK,CAAA;IACf,UAAU,CAAC,OAAO,EAAE,OAAO;CAG5B;AAED,UAAU,cAAc;IACtB,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,OAAO,GAAG,KAAK,GAAG,MAAM,CAAA;CAChC;AACD,qBAAa,aAAc,SAAQ,UAAU,CAAC,cAAc,CAAC;IAC3D,IAAI,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAK;IACjC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC;IAG1B,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IAG9B,UAAU,CAAC,GAAG,EAAE,MAAM;CAGvB"}
@@ -1,5 +1,5 @@
1
- import { NoRenderComponentX } from '../core/decorator';
2
- export class EventRegister extends NoRenderComponentX {
1
+ import { ComponentX } from '../core/decorator';
2
+ export class EventRegister extends ComponentX {
3
3
  events = {};
4
4
  on(name, callback, target) {
5
5
  const bound = target ? callback.bind(target) : callback;
@@ -20,14 +20,14 @@ export class EventRegister extends NoRenderComponentX {
20
20
  }
21
21
  }
22
22
  }
23
- export class TouchEventRegister extends NoRenderComponentX {
23
+ export class TouchEventRegister extends ComponentX {
24
24
  listener;
25
25
  touch;
26
26
  setEnabled(enabled) {
27
27
  this.listener.setEnabled(enabled);
28
28
  }
29
29
  }
30
- export class ExtraDataComp extends NoRenderComponentX {
30
+ export class ExtraDataComp extends ComponentX {
31
31
  data = {};
32
32
  getData(key) {
33
33
  return this.data[key];
@@ -1 +1 @@
1
- {"version":3,"file":"RenderComponent.d.ts","sourceRoot":"","sources":["../../src/render/RenderComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAE1D,qBAAa,UAAW,SAAQ,UAAU;IACxC,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,UAAU,iBAAiB;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,qBAAa,YAAa,SAAQ,UAAU,CAAC,iBAAiB,GAAG,kBAAkB,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC;IAC3G,IAAI,WAAW,WAEd;IAED,IAAI,WAAW,CAAC,KAAK,QAAA,EAepB;CACF;AACD,UAAU,eAAe;IACvB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AACD,qBAAa,UAAW,SAAQ,UAAU,CAAC,eAAe,EAAE,EAAE,CAAC,YAAY,CAAC;CAAG;AAE/E,UAAU,iBAAiB;IACzB,SAAS,EAAE,MAAM,CAAA;CAClB;AACD,qBAAa,YAAa,SAAQ,UAAU,CAAC,iBAAiB,EAAE,EAAE,CAAC,cAAc,CAAC;CAAG;AAErF,UAAU,mBAAmB;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,SAAS,CAAC,EAAE,WAAW,CAAA;CACxB;AAED,qBAAa,cAAe,SAAQ,UAAU,CAAC,mBAAmB,GAAG,kBAAkB,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC;IACnH,OAAO,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA,EAAE,CAAC,KAAA;IASf,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO;IAG5E,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,OAAO;IAMzD,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,SAAI,EAAE,QAAQ,SAAK,EAAE,gBAAgB,UAAO,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO;IAyB7H,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,KAAK;IAe3D,KAAK;CAKN;AAED,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,qBAAa,QAAS,SAAQ,UAAU,CAAC,aAAa,GAAG;IAAE,IAAI,CAAC,EAAE,QAAQ,CAAA;CAAE,EAAE,EAAE,CAAC,WAAW,CAAC;CAAG"}
1
+ {"version":3,"file":"RenderComponent.d.ts","sourceRoot":"","sources":["../../src/render/RenderComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAU,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAE1D,qBAAa,UAAW,SAAQ,UAAU;IACxC,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,UAAU,iBAAiB;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,qBAAa,YAAa,SAAQ,UAAU,CAAC,iBAAiB,GAAG,kBAAkB,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC;IAC3G,IAAI,WAAW,WAEd;IAED,IAAI,WAAW,CAAC,KAAK,QAAA,EAepB;CACF;AACD,UAAU,eAAe;IACvB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AACD,qBAAa,UAAW,SAAQ,UAAU,CAAC,eAAe,EAAE,EAAE,CAAC,YAAY,CAAC;CAAG;AAE/E,UAAU,iBAAiB;IACzB,SAAS,EAAE,MAAM,CAAA;CAClB;AACD,qBAAa,YAAa,SAAQ,UAAU,CAAC,iBAAiB,EAAE,EAAE,CAAC,cAAc,CAAC;CAAG;AAErF,UAAU,mBAAmB;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,SAAS,CAAC,EAAE,WAAW,CAAA;CACxB;AAED,qBAAa,cAAe,SAAQ,UAAU,CAAC,mBAAmB,GAAG,kBAAkB,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC;IACnH,OAAO,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA,EAAE,CAAC,KAAA;IASf,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO;IAG5E,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,OAAO;IAMzD,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,SAAI,EAAE,QAAQ,SAAK,EAAE,gBAAgB,UAAO,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO;IAyB7H,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,KAAK;IAe3D,KAAK;CAKN;AAED,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,qBAAa,QAAS,SAAQ,UAAU,CAAC,aAAa,GAAG;IAAE,IAAI,CAAC,EAAE,QAAQ,CAAA;CAAE,EAAE,EAAE,CAAC,WAAW,CAAC;CAAG"}
@@ -1,4 +1,4 @@
1
- import { ComponentX } from '../core/decorator';
1
+ import { ComponentX, render } from '../core/decorator';
2
2
  export class NodeRender extends ComponentX {
3
3
  nodeName;
4
4
  }
@@ -78,3 +78,9 @@ export class GraphicsRender extends ComponentX {
78
78
  }
79
79
  export class TiledMap extends ComponentX {
80
80
  }
81
+ Object.defineProperty(NodeRender.prototype, 'render', { value: render });
82
+ Object.defineProperty(SpriteRender.prototype, 'render', { value: render });
83
+ Object.defineProperty(MaskRender.prototype, 'render', { value: render });
84
+ Object.defineProperty(ParticleComp.prototype, 'render', { value: render });
85
+ Object.defineProperty(GraphicsRender.prototype, 'render', { value: render });
86
+ Object.defineProperty(TiledMap.prototype, 'render', { value: render });
@@ -1 +1 @@
1
- {"version":3,"file":"RichTextComp.d.ts","sourceRoot":"","sources":["../../src/richtext/RichTextComp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAK7C,UAAU,iBAAiB;IACzB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,qBAAa,YAAa,SAAQ,UAAU,CAAC,iBAAiB,GAAG,kBAAkB,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC;IAC/G,IAAI,MAAM,IAIM,MAAM,CAFrB;IAED,IAAI,MAAM,CAAC,GAAG,EAAE,MAAM,EAoBrB;CACF"}
1
+ {"version":3,"file":"RichTextComp.d.ts","sourceRoot":"","sources":["../../src/richtext/RichTextComp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAU,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAK7C,UAAU,iBAAiB;IACzB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,qBAAa,YAAa,SAAQ,UAAU,CAAC,iBAAiB,GAAG,kBAAkB,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC;IAC/G,IAAI,MAAM,IAIM,MAAM,CAFrB;IAED,IAAI,MAAM,CAAC,GAAG,EAAE,MAAM,EAoBrB;CACF"}
@@ -1,4 +1,4 @@
1
- import { ComponentX } from '../core/decorator';
1
+ import { ComponentX, render } from '../core/decorator';
2
2
  import { HtmlTextParser } from './html-text-parser';
3
3
  const _htmlTextParser = new HtmlTextParser();
4
4
  export class RichTextComp extends ComponentX {
@@ -27,3 +27,4 @@ export class RichTextComp extends ComponentX {
27
27
  }
28
28
  }
29
29
  }
30
+ Object.defineProperty(RichTextComp.prototype, 'render', { value: render });
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/richtext/index.ts"],"names":[],"mappings":"AAGA,cAAc,gBAAgB,CAAA;AAE9B,wBAAgB,aAAa,SAG5B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/richtext/index.ts"],"names":[],"mappings":"AAGA,cAAc,gBAAgB,CAAA;AAE9B,wBAAgB,aAAa,SAE5B"}
@@ -2,6 +2,5 @@ import { GameWorld } from '../gworld';
2
2
  import { RichTextSystem } from './RichTextSystem';
3
3
  export * from './RichTextComp';
4
4
  export function setupRichText() {
5
- GameWorld.Instance.systems.add(RichTextSystem);
6
- GameWorld.Instance.systems.configureOnce(RichTextSystem);
5
+ GameWorld.Instance.systems.addThenConfigure(RichTextSystem);
7
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/spine/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAoC,MAAM,EAAE,MAAM,YAAY,CAAA;AAElG,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAuB,MAAM,IAAI,CAAA;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAEzD,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,UAAU,kBAAkB;IAC1B,IAAI,EAAE,SAAS,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AACD,qBAAa,aAAc,SAAQ,UAAU,CAAC,kBAAkB,GAAG,kBAAkB,CAAC,aAAa,CAAC,EAAE,iBAAiB,CAAC;IACtH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,UAAQ;IAOvC,eAAe,CAAC,IAAI,EAAE,SAAS;CAKhC;AAED,qBAAa,WAAY,YAAW,MAAM;IACxC,SAAS,CAAC,aAAa,EAAE,YAAY;IAGrC,OAAO,CAAC,kBAAkB,CAYzB;IACD,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM;CAIjE;AAED,wBAAgB,UAAU,SAIzB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/spine/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAoC,MAAM,EAAE,MAAM,YAAY,CAAA;AAElG,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAA+B,MAAM,IAAI,CAAA;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAEzD,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,UAAU,kBAAkB;IAC1B,IAAI,EAAE,SAAS,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AACD,qBAAa,aAAc,SAAQ,UAAU,CAAC,kBAAkB,GAAG,kBAAkB,CAAC,aAAa,CAAC,EAAE,iBAAiB,CAAC;IACtH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,UAAQ;IAOvC,eAAe,CAAC,IAAI,EAAE,SAAS;CAKhC;AAED,qBAAa,WAAY,YAAW,MAAM;IACxC,SAAS,CAAC,aAAa,EAAE,YAAY;IAGrC,OAAO,CAAC,kBAAkB,CAYzB;IACD,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM;CAIjE;AAGD,wBAAgB,UAAU,SAGzB"}
@@ -1,5 +1,5 @@
1
1
  import { EventTypes } from 'entityx-ts';
2
- import { ComponentX, GameWorld, NodeComp } from '..';
2
+ import { ComponentX, GameWorld, NodeComp, render } from '..';
3
3
  import { SkeletonAnimation } from './CCSkeletonAnimation';
4
4
  export class SpineSkeleton extends ComponentX {
5
5
  setAnimation(name, loop = false) {
@@ -35,8 +35,8 @@ export class SpineSystem {
35
35
  // throw new Error('Method not implemented.');
36
36
  }
37
37
  }
38
+ Object.defineProperty(SpineSkeleton.prototype, 'render', { value: render });
38
39
  export function setupSpine() {
39
- GameWorld.Instance.systems.add(SpineSystem);
40
+ GameWorld.Instance.systems.addThenConfigure(SpineSystem);
40
41
  // GameWorld.Instance.listUpdate.push(SpineSystem)
41
- GameWorld.Instance.systems.configureOnce(SpineSystem);
42
42
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@safe-engine/cocos",
3
- "version": "1.10.3",
3
+ "version": "2.1.1",
4
4
  "description": "safe-engine with cocos renderer support",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -22,11 +22,11 @@
22
22
  "typescript": "^5.9.2"
23
23
  },
24
24
  "dependencies": {
25
- "@esotericsoftware/spine-core": "^4.2.88",
25
+ "@esotericsoftware/spine-core": "^4.2.89",
26
26
  "box2d-wasm": "^7.0.0",
27
+ "entityx-ts": "^2.3.1",
27
28
  "pixi.js": "5.3.12",
28
- "pixi5-dragonbones": "5.7.0-2b",
29
- "entityx-ts": "^2.2.1"
29
+ "pixi5-dragonbones": "5.7.0-2b"
30
30
  },
31
31
  "author": "",
32
32
  "license": "ISC"