@safe-engine/pixi 8.5.4 → 8.5.6

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,8 +1,7 @@
1
1
  import { Graphics, Rectangle, Size } from 'pixi.js';
2
- import { Vec2 } from '..';
2
+ import { BaseComponentProps, Vec2 } from '..';
3
3
  import { NoRenderComponentX } from '../components/BaseComponent';
4
- interface ColliderProps {
5
- offset?: Vec2;
4
+ interface ColliderProps extends BaseComponentProps<Collider> {
6
5
  tag?: number;
7
6
  onCollisionEnter?: (other: Collider) => void;
8
7
  onCollisionExit?: (other: Collider) => void;
@@ -38,7 +37,8 @@ export declare class Collider<T = ColliderProps> extends NoRenderComponentX<T> {
38
37
  preAabb: Rectangle;
39
38
  };
40
39
  }
41
- interface BoxColliderProps extends ColliderProps {
40
+ interface BoxColliderProps extends BaseComponentProps<BoxCollider> {
41
+ offset?: [number, number];
42
42
  width: number;
43
43
  height: number;
44
44
  }
@@ -47,13 +47,15 @@ export declare class BoxCollider extends Collider<BoxColliderProps> {
47
47
  set size(s: Size);
48
48
  update(dt: any, draw: Graphics): void;
49
49
  }
50
- interface CircleColliderProps extends ColliderProps {
50
+ interface CircleColliderProps extends BaseComponentProps<CircleCollider> {
51
+ offset?: [number, number];
51
52
  radius: number;
52
53
  }
53
54
  export declare class CircleCollider extends Collider<CircleColliderProps> {
54
55
  update(dt: any, draw: Graphics): void;
55
56
  }
56
- interface PolygonColliderProps extends ColliderProps {
57
+ interface PolygonColliderProps extends BaseComponentProps<PolygonCollider> {
58
+ offset?: [number, number];
57
59
  points: Array<Vec2>;
58
60
  }
59
61
  export declare class PolygonCollider extends Collider<PolygonColliderProps> {
@@ -1 +1 @@
1
- {"version":3,"file":"CollideComponent.d.ts","sourceRoot":"","sources":["../../src/collider/CollideComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAEnD,OAAO,EAAa,IAAI,EAAE,MAAM,IAAI,CAAA;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAgBhE,UAAU,aAAa;IACrB,MAAM,CAAC,EAAE,IAAI,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,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;AAED,qBAAa,QAAQ,CAAC,CAAC,GAAG,aAAa,CAAE,SAAQ,kBAAkB,CAAC,CAAC,CAAC;IACpE,YAAY,EAAE,IAAI,EAAE,CAAK;IACzB,cAAc,EAAE,IAAI,CAAA;IACpB,YAAY,MAAA;IACZ,KAAK,EAAE,SAAS,CAA4B;IAC5C,QAAQ,EAAE,SAAS,CAA4B;IAG/C,OAAO;IAGP,IAAI,KAAK;;;;;;;;;;;;;;;;;;;;;MAKR;CACF;AAED,UAAU,gBAAiB,SAAQ,aAAa;IAC9C,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AACD,qBAAa,WAAY,SAAQ,QAAQ,CAAC,gBAAgB,CAAC;IACzD,IAAI,IAAI,IAAI,IAAI,CAEf;IAED,IAAI,IAAI,CAAC,CAAC,EAAE,IAAI,EAGf;IAED,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,QAAQ;CAkC1B;AAED,UAAU,mBAAoB,SAAQ,aAAa;IACjD,MAAM,EAAE,MAAM,CAAA;CACf;AAED,qBAAa,cAAe,SAAQ,QAAQ,CAAC,mBAAmB,CAAC;IAC/D,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,QAAQ;CAuB1B;AAED,UAAU,oBAAqB,SAAQ,aAAa;IAClD,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;CACpB;AACD,qBAAa,eAAgB,SAAQ,QAAQ,CAAC,oBAAoB,CAAC;IACjE,IAAI,MAAM,IAAI,IAAI,EAAE,CAInB;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,EAExB;IAED,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,QAAQ;CAsB1B;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;IAiBX,IAAI;CAyBL"}
1
+ {"version":3,"file":"CollideComponent.d.ts","sourceRoot":"","sources":["../../src/collider/CollideComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAEnD,OAAO,EAAE,kBAAkB,EAAa,IAAI,EAAE,MAAM,IAAI,CAAA;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAgBhE,UAAU,aAAc,SAAQ,kBAAkB,CAAC,QAAQ,CAAC;IAC1D,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,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;AAED,qBAAa,QAAQ,CAAC,CAAC,GAAG,aAAa,CAAE,SAAQ,kBAAkB,CAAC,CAAC,CAAC;IACpE,YAAY,EAAE,IAAI,EAAE,CAAK;IACzB,cAAc,EAAE,IAAI,CAAA;IACpB,YAAY,MAAA;IACZ,KAAK,EAAE,SAAS,CAA4B;IAC5C,QAAQ,EAAE,SAAS,CAA4B;IAG/C,OAAO;IAGP,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,QAAQ,CAAC,gBAAgB,CAAC;IACzD,IAAI,IAAI,IAAI,IAAI,CAEf;IAED,IAAI,IAAI,CAAC,CAAC,EAAE,IAAI,EAGf;IAED,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,QAAQ;CAkC1B;AAED,UAAU,mBAAoB,SAAQ,kBAAkB,CAAC,cAAc,CAAC;IACtE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACzB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,qBAAa,cAAe,SAAQ,QAAQ,CAAC,mBAAmB,CAAC;IAC/D,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,QAAQ;CAwB1B;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,QAAQ,CAAC,oBAAoB,CAAC;IACjE,IAAI,MAAM,IAAI,IAAI,EAAE,CAInB;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,EAExB;IAED,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,QAAQ;CAsB1B;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;IAiBX,IAAI;CAyBL"}
@@ -43,7 +43,7 @@ export class BoxCollider extends Collider {
43
43
  if (!this.node) {
44
44
  return;
45
45
  }
46
- const { x, y } = this.props.offset || Vec2();
46
+ const [x, y] = this.props.offset || [0, 0];
47
47
  // const hw = this.width * 0.5
48
48
  // const hh = this.height * 0.5
49
49
  const transform = getNodeToWorldTransformAR(this.node);
@@ -81,8 +81,9 @@ export class CircleCollider extends Collider {
81
81
  }
82
82
  const transform = getNodeToWorldTransformAR(this.node);
83
83
  const collider = this.getComponent(Collider);
84
+ const [x, y] = this.props.offset || [0, 0];
84
85
  collider._worldRadius = this.props.radius * this.node.scaleX;
85
- collider._worldPosition = transform.apply(this.props.offset);
86
+ collider._worldPosition = transform.apply(Vec2(x, y));
86
87
  if (draw) {
87
88
  const { x } = collider._worldPosition;
88
89
  const y = GameWorld.Instance.app.screen.height - collider._worldPosition.y;
@@ -101,7 +102,7 @@ export class CircleCollider extends Collider {
101
102
  }
102
103
  export class PolygonCollider extends Collider {
103
104
  get points() {
104
- const { x, y } = this.props.offset;
105
+ const [x, y] = this.props.offset || [0, 0];
105
106
  const pointsList = this.props.points.map((p) => Vec2(p.x + x, p.y + y));
106
107
  return pointsList;
107
108
  }
@@ -16,22 +16,22 @@ export class NoRenderSystem {
16
16
  const container = nodeComp.instance;
17
17
  container.eventMode = 'static';
18
18
  if (touchComp.props.onTouchStart) {
19
- container.on('touchstart', (event) => {
19
+ container.on('pointerdown', (event) => {
20
20
  touchComp.props.onTouchStart(new Touch(event), nodeComp);
21
21
  });
22
22
  }
23
23
  if (touchComp.props.onTouchMove) {
24
- container.on('touchmove', (event) => {
24
+ container.on('pointermove', (event) => {
25
25
  touchComp.props.onTouchMove(new Touch(event), nodeComp);
26
26
  });
27
27
  }
28
28
  if (touchComp.props.onTouchEnd) {
29
- container.on('touchend', (event) => {
29
+ container.on('pointerup', (event) => {
30
30
  touchComp.props.onTouchEnd(new Touch(event), nodeComp);
31
31
  });
32
32
  }
33
33
  if (touchComp.props.onTouchCancel) {
34
- container.on('touchcancel', (event) => {
34
+ container.on('pointercancel', (event) => {
35
35
  touchComp.props.onTouchCancel(new Touch(event), nodeComp);
36
36
  });
37
37
  }
@@ -41,16 +41,16 @@ export class NoRenderSystem {
41
41
  const touchComp = component;
42
42
  const container = touchComp.node.instance;
43
43
  if (touchComp.props.onTouchStart) {
44
- container.removeListener('touchstart');
44
+ container.removeListener('pointerdown');
45
45
  }
46
46
  if (touchComp.props.onTouchMove) {
47
- container.removeListener('touchmove');
47
+ container.removeListener('pointermove');
48
48
  }
49
49
  if (touchComp.props.onTouchEnd) {
50
- container.removeListener('touchend');
50
+ container.removeListener('pointerup');
51
51
  }
52
52
  if (touchComp.props.onTouchEnd) {
53
- container.removeListener('touchcancel');
53
+ container.removeListener('pointercancel');
54
54
  }
55
55
  });
56
56
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@safe-engine/pixi",
3
- "version": "8.5.4",
3
+ "version": "8.5.6",
4
4
  "description": "safex pixi plugin",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",