@safe-engine/pixi 8.4.7 → 8.5.4

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 (117) hide show
  1. package/README.md +17 -25
  2. package/dist/app.d.ts.map +1 -1
  3. package/dist/app.js +0 -23
  4. package/dist/box2d-wasm/ContactListener.d.ts +1 -1
  5. package/dist/box2d-wasm/ContactListener.d.ts.map +1 -1
  6. package/dist/box2d-wasm/ContactListener.js +50 -18
  7. package/dist/box2d-wasm/PhysicsComponent.d.ts +27 -30
  8. package/dist/box2d-wasm/PhysicsComponent.d.ts.map +1 -1
  9. package/dist/box2d-wasm/PhysicsComponent.js +44 -11
  10. package/dist/box2d-wasm/PhysicsSprite.d.ts +3 -0
  11. package/dist/box2d-wasm/PhysicsSprite.d.ts.map +1 -1
  12. package/dist/box2d-wasm/PhysicsSprite.js +24 -3
  13. package/dist/box2d-wasm/PhysicsSystem.d.ts +5 -3
  14. package/dist/box2d-wasm/PhysicsSystem.d.ts.map +1 -1
  15. package/dist/box2d-wasm/PhysicsSystem.js +135 -45
  16. package/dist/collider/CollideComponent.d.ts +27 -10
  17. package/dist/collider/CollideComponent.d.ts.map +1 -1
  18. package/dist/collider/CollideComponent.js +10 -12
  19. package/dist/collider/helper/Intersection.d.ts +6 -6
  20. package/dist/collider/helper/Intersection.d.ts.map +1 -1
  21. package/dist/collider/helper/Intersection.js +4 -4
  22. package/dist/collider/index.d.ts +1 -0
  23. package/dist/collider/index.d.ts.map +1 -1
  24. package/dist/collider/index.js +1 -0
  25. package/dist/components/NodeComp.d.ts +62 -36
  26. package/dist/components/NodeComp.d.ts.map +1 -1
  27. package/dist/components/NodeComp.js +18 -99
  28. package/dist/core/Color.d.ts.map +1 -1
  29. package/dist/dragonbones/DragonBonesComponent.d.ts +3 -2
  30. package/dist/dragonbones/DragonBonesComponent.d.ts.map +1 -1
  31. package/dist/dragonbones/DragonBonesComponent.js +1 -1
  32. package/dist/dragonbones/DragonBonesSystem.js +2 -2
  33. package/dist/gui/GUISystem.d.ts.map +1 -1
  34. package/dist/gui/GUISystem.js +5 -6
  35. package/dist/helper/utils.d.ts +0 -6
  36. package/dist/helper/utils.d.ts.map +1 -1
  37. package/dist/helper/utils.js +0 -12
  38. package/dist/index.d.ts +0 -5
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/index.js +0 -5
  41. package/dist/norender/NoRenderComponent.d.ts +5 -1
  42. package/dist/norender/NoRenderComponent.d.ts.map +1 -1
  43. package/dist/norender/NoRenderSystem.d.ts.map +1 -1
  44. package/dist/norender/NoRenderSystem.js +8 -9
  45. package/dist/render/RenderComponent.d.ts +6 -17
  46. package/dist/render/RenderComponent.d.ts.map +1 -1
  47. package/dist/render/RenderComponent.js +26 -18
  48. package/dist/spine/lib/require-shim.d.ts.map +1 -1
  49. package/dist/spine/lib/require-shim.js +1 -1
  50. package/package.json +6 -7
  51. package/.github/workflows/npm-publish.yml +0 -35
  52. package/src/app.ts +0 -91
  53. package/src/base/EnhancedComponent.ts +0 -38
  54. package/src/base/gworld.ts +0 -20
  55. package/src/base/index.ts +0 -14
  56. package/src/base/utils.ts +0 -23
  57. package/src/box2d-wasm/ContactListener.ts +0 -66
  58. package/src/box2d-wasm/PhysicsComponent.ts +0 -83
  59. package/src/box2d-wasm/PhysicsSprite.ts +0 -42
  60. package/src/box2d-wasm/PhysicsSystem.ts +0 -142
  61. package/src/box2d-wasm/debugDraw.ts +0 -249
  62. package/src/box2d-wasm/index.ts +0 -19
  63. package/src/collider/CollideComponent.ts +0 -257
  64. package/src/collider/CollideSystem.ts +0 -166
  65. package/src/collider/helper/Intersection.ts +0 -139
  66. package/src/collider/helper/utils.ts +0 -37
  67. package/src/collider/index.ts +0 -16
  68. package/src/components/BaseComponent.ts +0 -17
  69. package/src/components/NodeComp.ts +0 -442
  70. package/src/components/Scene.ts +0 -17
  71. package/src/core/Color.ts +0 -7
  72. package/src/core/LoadingBar.ts +0 -63
  73. package/src/core/NodePool.ts +0 -28
  74. package/src/core/Size.ts +0 -21
  75. package/src/core/Vec2.ts +0 -108
  76. package/src/core/director.ts +0 -11
  77. package/src/core/index.ts +0 -7
  78. package/src/core/loader.ts +0 -14
  79. package/src/core/math.ts +0 -22
  80. package/src/dragonbones/DragonBonesComponent.ts +0 -32
  81. package/src/dragonbones/DragonBonesSystem.ts +0 -35
  82. package/src/dragonbones/index.ts +0 -11
  83. package/src/gui/GUIComponent.ts +0 -155
  84. package/src/gui/GUISystem.ts +0 -125
  85. package/src/helper/utils.ts +0 -50
  86. package/src/index.ts +0 -21
  87. package/src/norender/NoRenderComponent.ts +0 -60
  88. package/src/norender/NoRenderSystem.ts +0 -67
  89. package/src/norender/Touch.ts +0 -37
  90. package/src/planck/PhysicsComponent.ts +0 -83
  91. package/src/planck/PhysicsSprite.ts +0 -43
  92. package/src/planck/PhysicsSystem.ts +0 -201
  93. package/src/planck/index.ts +0 -3
  94. package/src/render/RenderComponent.ts +0 -132
  95. package/src/render/RenderSystem.ts +0 -64
  96. package/src/richtext/RichTextComp.ts +0 -50
  97. package/src/richtext/RichTextSystem.ts +0 -26
  98. package/src/richtext/html-text-parser.ts +0 -87
  99. package/src/richtext/index.ts +0 -8
  100. package/src/spine/SpineComponent.ts +0 -18
  101. package/src/spine/SpineSystem.ts +0 -30
  102. package/src/spine/index.ts +0 -11
  103. package/src/spine/lib/BatchableSpineSlot.ts +0 -138
  104. package/src/spine/lib/Spine.ts +0 -894
  105. package/src/spine/lib/SpineDebugRenderer.ts +0 -615
  106. package/src/spine/lib/SpinePipe.ts +0 -203
  107. package/src/spine/lib/SpineTexture.ts +0 -143
  108. package/src/spine/lib/assets/atlasLoader.ts +0 -158
  109. package/src/spine/lib/assets/skeletonLoader.ts +0 -81
  110. package/src/spine/lib/darktint/DarkTintBatchGeometry.ts +0 -92
  111. package/src/spine/lib/darktint/DarkTintBatcher.ts +0 -186
  112. package/src/spine/lib/darktint/DarkTintShader.ts +0 -74
  113. package/src/spine/lib/darktint/darkTintBit.ts +0 -77
  114. package/src/spine/lib/index.ts +0 -43
  115. package/src/spine/lib/require-shim.ts +0 -43
  116. package/tsconfig.json +0 -18
  117. /package/{src/@types → @types}/index.d.ts +0 -0
@@ -7,24 +7,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
- var __rest = (this && this.__rest) || function (s, e) {
11
- var t = {};
12
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
13
- t[p] = s[p];
14
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
15
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
16
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
17
- t[p[i]] = s[p[i]];
18
- }
19
- return t;
20
- };
21
10
  import Box2DFactory from 'box2d-wasm';
22
11
  import { EventTypes } from 'entityx-ts';
23
12
  import { Graphics } from 'pixi.js';
24
- import { GameWorld, instantiate, NodeComp } from '..';
13
+ import { GameWorld, instantiate, NodeComp, Vec2 } from '..';
25
14
  import { makeContactListener } from './ContactListener';
26
15
  import { makeDebugDraw } from './debugDraw';
27
- import { BoxColliderPhysics, CircleColliderPhysics, ColliderPhysics, PhysicsMaterial, PolygonColliderPhysics, RigidBody, } from './PhysicsComponent';
16
+ import { PhysicsBoxCollider, PhysicsCircleCollider, PhysicsPolygonCollider, RigidBody } from './PhysicsComponent';
28
17
  import { PhysicsSprite } from './PhysicsSprite';
29
18
  // Box2D.b2Fixture.prototype.shouldCollide = function (other) {
30
19
  // const nodeThis: NodeComp = this.getBody().getUserData()
@@ -32,6 +21,9 @@ import { PhysicsSprite } from './PhysicsSprite';
32
21
  // const { colliderMatrix } = GameWorld.Instance.systems.get(PhysicsSystem)
33
22
  // return colliderMatrix[nodeOther.group][nodeThis.group]
34
23
  // }
24
+ export const DynamicBody = 2;
25
+ export const KinematicBody = 1;
26
+ export const StaticBody = 0;
35
27
  export let box2D;
36
28
  export function initBox2d() {
37
29
  return __awaiter(this, void 0, void 0, function* () {
@@ -50,7 +42,7 @@ const pixelsPerMeter = 1;
50
42
  export class PhysicsSystem {
51
43
  constructor() {
52
44
  this.listRemoveBody = [];
53
- this.listRemoveShape = [];
45
+ // listRemoveShape: Box2D.b2Shape[] = []
54
46
  this.colliderMatrix = [[true]];
55
47
  }
56
48
  addDebug() {
@@ -58,7 +50,7 @@ export class PhysicsSystem {
58
50
  this.world.SetDebugDraw(debugDraw);
59
51
  }
60
52
  configure(event_manager) {
61
- const { b2BodyDef, b2_dynamicBody, b2_staticBody, b2FixtureDef, b2PolygonShape, b2Vec2, b2World, getPointer, b2ContactListener } = box2D;
53
+ const { b2BodyDef, b2FixtureDef, b2PolygonShape, b2CircleShape, b2Vec2, b2World, pointsToVec2Array, getPointer } = box2D;
62
54
  const gravity = new b2Vec2(0, 10);
63
55
  this.world = new b2World(gravity);
64
56
  console.log('configure world', event_manager.world.app);
@@ -66,69 +58,167 @@ export class PhysicsSystem {
66
58
  const graphics = new Graphics();
67
59
  this.graphics = graphics;
68
60
  graphics.zIndex = 1000;
69
- event_manager.world.app.stage.addChild(graphics);
61
+ const { app } = event_manager.world;
62
+ app.stage.addChild(graphics);
70
63
  // event_manager.subscribe(ComponentAddedEvent(RigidBody), this);
71
- event_manager.subscribe(EventTypes.ComponentAdded, BoxColliderPhysics, ({ entity, component }) => {
72
- console.log('ComponentAddedEvent BoxColliderPhysics', component);
64
+ event_manager.subscribe(EventTypes.ComponentAdded, PhysicsBoxCollider, ({ entity, component: box }) => {
65
+ console.log('ComponentAddedEvent BoxColliderPhysics', box);
73
66
  let rigidBody = entity.getComponent(RigidBody);
74
67
  if (!rigidBody) {
75
68
  rigidBody = instantiate(RigidBody);
76
69
  entity.assign(rigidBody);
77
70
  }
78
- const { type = 'static', gravityScale = 1 } = rigidBody.props;
79
- const physicsMaterial = entity.getComponent(PhysicsMaterial);
80
- const { density = 1, friction = 0.5, restitution = 0.3 } = (physicsMaterial === null || physicsMaterial === void 0 ? void 0 : physicsMaterial.props) || {};
81
- const box = component;
71
+ const { type = StaticBody, gravityScale = 1, density = 1, friction = 0.5, restitution = 0.3, isSensor } = rigidBody.props;
72
+ const { width, height, offset = [] } = box.props;
82
73
  const node = entity.getComponent(NodeComp);
83
- const _a = box.props, { width, height } = _a, colliderProps = __rest(_a, ["width", "height"]);
84
- // ett.assign(instantiate(ColliderPhysics, { tag, offset }))
85
- const { x = 0, y = 0 } = colliderProps.offset || {};
86
74
  const zero = new b2Vec2(0, 0);
87
- const position = new b2Vec2(node.posX, node.posY);
88
- const offset = new b2Vec2(x, y);
89
75
  const bd = new b2BodyDef();
90
- bd.set_type(type === 'dynamic' ? b2_dynamicBody : b2_staticBody);
76
+ bd.set_type(type);
91
77
  bd.set_position(zero);
92
78
  bd.set_gravityScale(gravityScale);
93
79
  const body = this.world.CreateBody(bd);
94
80
  rigidBody.body = body;
81
+ const physicsNode = new PhysicsSprite(node.instance, rigidBody.body);
82
+ rigidBody.physicSprite = physicsNode;
83
+ rigidBody.node = node;
95
84
  // console.log('body', type, b2_dynamicBody, b2_staticBody, getPointer(body));
96
85
  // body.setMassData({ mass: 1 } as any)
97
- const physicsNode = new PhysicsSprite(node.instance, body);
86
+ const position = new b2Vec2(node.posX, node.posY);
98
87
  const square = new b2PolygonShape();
99
- square.SetAsBox(width / 2, height / 2);
88
+ const [x = 0, y = 0] = offset;
89
+ square.SetAsBox(width / 2, height / 2, new b2Vec2(node.width / 2 + x, node.height / 2 + y), 0);
100
90
  const fixtureDef = new b2FixtureDef();
101
91
  fixtureDef.set_shape(square);
102
92
  fixtureDef.set_density(density);
103
93
  fixtureDef.set_friction(friction);
104
94
  fixtureDef.set_restitution(restitution);
95
+ fixtureDef.set_isSensor(isSensor);
96
+ rigidBody.body.CreateFixture(fixtureDef);
97
+ rigidBody.body.SetTransform(position, 0);
98
+ rigidBody.body.SetLinearVelocity(zero);
99
+ rigidBody.body.SetAwake(true);
100
+ rigidBody.body.SetEnabled(true);
101
+ metadata[getPointer(rigidBody.body)] = node;
102
+ box.node = node;
103
+ });
104
+ event_manager.subscribe(EventTypes.ComponentAdded, PhysicsCircleCollider, ({ entity, component }) => {
105
+ // console.log('ComponentAddedEvent PhysicsCircleCollider', component)
106
+ let rigidBody = entity.getComponent(RigidBody);
107
+ if (!rigidBody) {
108
+ rigidBody = instantiate(RigidBody);
109
+ entity.assign(rigidBody);
110
+ }
111
+ const { type = StaticBody, gravityScale = 1, density = 100, friction = 0.5, restitution = 0.3, isSensor = false } = rigidBody.props;
112
+ const node = entity.getComponent(NodeComp);
113
+ const { radius, offset = [] } = component.props;
114
+ const [x = 0, y = 0] = offset;
115
+ const zero = new b2Vec2(0, 0);
116
+ const position = new b2Vec2(node.posX, node.posY);
117
+ const bd = new b2BodyDef();
118
+ bd.set_type(type);
119
+ bd.set_position(zero);
120
+ bd.set_gravityScale(gravityScale);
121
+ const body = this.world.CreateBody(bd);
122
+ rigidBody.body = body;
123
+ // console.log('body', type, b2_dynamicBody, b2_staticBody, getPointer(body));
124
+ // body.setMassData({ mass: 1 } as any)
125
+ const physicsNode = new PhysicsSprite(node.instance, body);
126
+ const circleShape = new b2CircleShape();
127
+ circleShape.set_m_radius(radius);
128
+ circleShape.set_m_p(new b2Vec2(x, y));
129
+ const fixtureDef = new b2FixtureDef();
130
+ fixtureDef.set_shape(circleShape);
131
+ fixtureDef.set_density(density);
132
+ fixtureDef.set_isSensor(isSensor);
133
+ fixtureDef.set_friction(friction);
134
+ fixtureDef.set_restitution(restitution);
105
135
  body.CreateFixture(fixtureDef);
106
136
  body.SetTransform(position, 0);
107
137
  body.SetLinearVelocity(zero);
108
138
  body.SetAwake(true);
109
139
  body.SetEnabled(true);
110
140
  metadata[getPointer(body)] = node;
111
- const physicsCollide = entity.assign(instantiate(ColliderPhysics, colliderProps));
112
- physicsCollide.instance = physicsNode;
113
- physicsCollide.node = node;
114
- box.node = node;
141
+ rigidBody.physicSprite = physicsNode;
142
+ rigidBody.node = node;
143
+ component.node = node;
115
144
  });
116
- event_manager.subscribe(EventTypes.ComponentAdded, CircleColliderPhysics, () => { });
117
- event_manager.subscribe(EventTypes.ComponentAdded, PolygonColliderPhysics, () => { });
118
- event_manager.subscribe(EventTypes.ComponentRemoved, NodeComp, () => {
119
- // log('ComponentRemovedEvent NodeComp', event);
120
- // const node = event.entity.getComponent(NodeComp)
121
- // if (node.instance instanceof Sprite) {
122
- // const body = node.instance.getBody()
123
- // this.listRemoveShape.push(...body.shapeList)
124
- // this.listRemoveBody.push(body)
125
- // }
145
+ event_manager.subscribe(EventTypes.ComponentAdded, PhysicsPolygonCollider, ({ entity, component }) => {
146
+ // console.log('ComponentAddedEvent PhysicsPolygonCollider', component)
147
+ let rigidBody = entity.getComponent(RigidBody);
148
+ if (!rigidBody) {
149
+ rigidBody = instantiate(RigidBody);
150
+ entity.assign(rigidBody);
151
+ }
152
+ const { type = StaticBody, gravityScale = 1, density = 1, friction = 0.5, restitution = 0.3, isSensor } = rigidBody.props;
153
+ const node = entity.getComponent(NodeComp);
154
+ const { points, offset = [] } = component.props;
155
+ const [x = 0, y = 0] = offset;
156
+ const zero = new b2Vec2(0, 0);
157
+ const position = new b2Vec2(node.posX, node.posY);
158
+ const { width, height } = node.contentSize;
159
+ const { scaleX, scaleY, anchorX, anchorY } = node;
160
+ const bd = new b2BodyDef();
161
+ bd.set_type(type);
162
+ bd.set_position(zero);
163
+ bd.set_gravityScale(gravityScale);
164
+ const body = this.world.CreateBody(bd);
165
+ rigidBody.body = body;
166
+ // console.log('body', type, b2_dynamicBody, b2_staticBody, getPointer(body));
167
+ // body.setMassData({ mass: 1 } as any)
168
+ const physicsNode = new PhysicsSprite(node.instance, body);
169
+ const polygonShape = new b2PolygonShape();
170
+ const fixedPoints = points.map((p) => {
171
+ if (p.x)
172
+ return Vec2(p.x + x - width * anchorX * scaleX, -p.y + y + height * scaleY * anchorY);
173
+ return Vec2(p[0] + x - width * anchorX * scaleX, -p[1] + y + height * scaleY * anchorY);
174
+ });
175
+ const [vecArr, destroyVecArr] = pointsToVec2Array(fixedPoints);
176
+ // console.log('vecArr', vecArr, vecArr.Length())
177
+ polygonShape.Set(vecArr, points.length);
178
+ destroyVecArr();
179
+ const fixtureDef = new b2FixtureDef();
180
+ fixtureDef.set_shape(polygonShape);
181
+ fixtureDef.set_density(density);
182
+ fixtureDef.set_friction(friction);
183
+ fixtureDef.set_restitution(restitution);
184
+ fixtureDef.set_isSensor(isSensor);
185
+ body.CreateFixture(fixtureDef);
186
+ body.SetTransform(position, 0);
187
+ // body.SetLinearVelocity(zero)
188
+ body.SetAwake(true);
189
+ body.SetEnabled(true);
190
+ metadata[getPointer(body)] = node;
191
+ rigidBody.physicSprite = physicsNode;
192
+ rigidBody.node = node;
193
+ component.node = node;
194
+ });
195
+ event_manager.subscribe(EventTypes.ComponentRemoved, RigidBody, ({ component }) => {
196
+ // console.log('ComponentRemovedEvent NodeComp', component)
197
+ if (component.physicSprite instanceof PhysicsSprite) {
198
+ const body = component.physicSprite.getBody();
199
+ // this.listRemoveShape.push(...body.shapeList)
200
+ this.listRemoveBody.push(body);
201
+ }
126
202
  });
127
203
  const listener = makeContactListener(this.world, metadata, box2D);
128
204
  this.world.SetContactListener(listener);
129
205
  }
130
- update(entities, events, dt) {
206
+ update(entities, _events, dt) {
131
207
  if (this.world) {
208
+ const { getPointer } = box2D;
209
+ for (const entt of entities.entities_with_components(RigidBody)) {
210
+ const comp = entt.getComponent(RigidBody);
211
+ if (comp.node.active && comp.enabled) {
212
+ comp.physicSprite.update(dt);
213
+ }
214
+ }
215
+ // remove bodies and shapes
216
+ this.listRemoveBody.forEach((body) => {
217
+ if (body) {
218
+ this.world.DestroyBody(getPointer(body));
219
+ }
220
+ });
221
+ this.listRemoveBody = [];
132
222
  const clampedDelta = Math.min(dt, maxTimeStep);
133
223
  this.world.Step(clampedDelta, velocityIterations, positionIterations);
134
224
  this.graphics.clear();
@@ -1,23 +1,40 @@
1
- import { Graphics, Point, Rectangle, Size } from 'pixi.js';
1
+ import { Graphics, Rectangle, Size } from 'pixi.js';
2
+ import { Vec2 } from '..';
2
3
  import { NoRenderComponentX } from '../components/BaseComponent';
3
4
  interface ColliderProps {
4
- offset?: Point;
5
+ offset?: Vec2;
5
6
  tag?: number;
6
- enabled?: boolean;
7
7
  onCollisionEnter?: (other: Collider) => void;
8
8
  onCollisionExit?: (other: Collider) => void;
9
9
  onCollisionStay?: (other: Collider) => void;
10
10
  }
11
11
  export declare class Collider<T = ColliderProps> extends NoRenderComponentX<T> {
12
- _worldPoints: Point[];
13
- _worldPosition: Point;
12
+ _worldPoints: Vec2[];
13
+ _worldPosition: Vec2;
14
14
  _worldRadius: any;
15
15
  _AABB: Rectangle;
16
16
  _preAabb: Rectangle;
17
- update(dt: number, draw?: Graphics): void;
18
17
  getAABB(): Rectangle;
19
18
  get world(): {
20
- points: Point[];
19
+ points: {
20
+ x: number;
21
+ y: number;
22
+ equals(other: /*elided*/ any): boolean;
23
+ add(value: import("pixi.js").Point | Vec2): /*elided*/ any;
24
+ addSelf(value: import("pixi.js").Point | Vec2): /*elided*/ any;
25
+ sub(value: import("pixi.js").Point | Vec2): /*elided*/ any;
26
+ mul(multiply: number): /*elided*/ any;
27
+ mulSelf(multiply: number): /*elided*/ any;
28
+ mag(): number;
29
+ normalizeSelf(): /*elided*/ any;
30
+ normalize(): /*elided*/ any;
31
+ cross(other: Vec2): number;
32
+ signAngle(other: Vec2): number;
33
+ lengthSqr(): number;
34
+ dot(other: Vec2): number;
35
+ angle(other: Vec2): number;
36
+ distance(other: /*elided*/ any): number;
37
+ }[];
21
38
  preAabb: Rectangle;
22
39
  };
23
40
  }
@@ -37,11 +54,11 @@ export declare class CircleCollider extends Collider<CircleColliderProps> {
37
54
  update(dt: any, draw: Graphics): void;
38
55
  }
39
56
  interface PolygonColliderProps extends ColliderProps {
40
- points: Array<Point>;
57
+ points: Array<Vec2>;
41
58
  }
42
59
  export declare class PolygonCollider extends Collider<PolygonColliderProps> {
43
- get points(): Point[];
44
- set points(points: Point[]);
60
+ get points(): Vec2[];
61
+ set points(points: Vec2[]);
45
62
  update(dt: any, draw: Graphics): void;
46
63
  }
47
64
  export declare enum CollisionType {
@@ -1 +1 @@
1
- {"version":3,"file":"CollideComponent.d.ts","sourceRoot":"","sources":["../../src/collider/CollideComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAG1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAiBhE,UAAU,aAAa;IACrB,MAAM,CAAC,EAAE,KAAK,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,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,KAAK,EAAE,CAAK;IAC1B,cAAc,EAAE,KAAK,CAAA;IACrB,YAAY,MAAA;IACZ,KAAK,EAAE,SAAS,CAA4B;IAC5C,QAAQ,EAAE,SAAS,CAA4B;IAE/C,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ;IAClC,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;IAEzD,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;IAE/D,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,QAAQ;CAuB1B;AAGD,UAAU,oBAAqB,SAAQ,aAAa;IAClD,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;CACrB;AACD,qBAAa,eAAgB,SAAQ,QAAQ,CAAC,oBAAoB,CAAC;IAEjE,IAAI,MAAM,IAAI,KAAK,EAAE,CAIpB;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,EAEzB;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,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,7 +1,6 @@
1
1
  import { Rectangle } from 'pixi.js';
2
- import { GameWorld } from '..';
2
+ import { GameWorld, Vec2 } from '..';
3
3
  import { NoRenderComponentX } from '../components/BaseComponent';
4
- import { v2 } from '../helper/utils';
5
4
  import { circleCircle, polygonCircle, polygonPolygon } from './helper/Intersection';
6
5
  import { getMax, getMin } from './helper/utils';
7
6
  function getNodeToWorldTransformAR(node) {
@@ -21,8 +20,7 @@ export class Collider extends NoRenderComponentX {
21
20
  this._AABB = new Rectangle(0, 0, 0, 0);
22
21
  this._preAabb = new Rectangle(0, 0, 0, 0);
23
22
  }
24
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
25
- update(dt, draw) { }
23
+ // update(dt: number, draw?: Graphics) { }
26
24
  getAABB() {
27
25
  return this._AABB;
28
26
  }
@@ -45,7 +43,7 @@ export class BoxCollider extends Collider {
45
43
  if (!this.node) {
46
44
  return;
47
45
  }
48
- const { x, y } = this.props.offset || v2();
46
+ const { x, y } = this.props.offset || Vec2();
49
47
  // const hw = this.width * 0.5
50
48
  // const hh = this.height * 0.5
51
49
  const transform = getNodeToWorldTransformAR(this.node);
@@ -53,11 +51,11 @@ export class BoxCollider extends Collider {
53
51
  // const dy = y - hh
54
52
  const collider = this.getComponent(Collider);
55
53
  collider._worldPoints = [
56
- v2(x, y),
57
- v2(x, y + this.props.height),
58
- v2(x + this.props.width, y + this.props.height),
59
- v2(x + this.props.width, y)
60
- ].map(p => transform.apply(p));
54
+ Vec2(x, y),
55
+ Vec2(x, y + this.props.height),
56
+ Vec2(x + this.props.width, y + this.props.height),
57
+ Vec2(x + this.props.width, y),
58
+ ].map((p) => transform.apply(p));
61
59
  // console.log("_worldPoints", collider._worldPoints, rectTrs)
62
60
  // collider._worldPoints = collider._worldPoints.map(p => transform.apply(p))
63
61
  const listX = collider._worldPoints.map(({ x }) => x);
@@ -104,7 +102,7 @@ export class CircleCollider extends Collider {
104
102
  export class PolygonCollider extends Collider {
105
103
  get points() {
106
104
  const { x, y } = this.props.offset;
107
- const pointsList = this.props.points.map((p) => v2(p.x + x, p.y + y));
105
+ const pointsList = this.props.points.map((p) => Vec2(p.x + x, p.y + y));
108
106
  return pointsList;
109
107
  }
110
108
  set points(points) {
@@ -119,7 +117,7 @@ export class PolygonCollider extends Collider {
119
117
  collider._worldPoints = this.points.map((p) => transform.apply(p));
120
118
  // log(polyPoints);
121
119
  if (draw) {
122
- const drawList = collider._worldPoints.map(({ x, y }) => v2(x, GameWorld.Instance.app.screen.height - y));
120
+ const drawList = collider._worldPoints.map(({ x, y }) => Vec2(x, GameWorld.Instance.app.screen.height - y));
123
121
  draw.poly(drawList);
124
122
  }
125
123
  const listX = collider._worldPoints.map(({ x }) => x);
@@ -1,7 +1,7 @@
1
- import { Point } from 'pixi.js';
2
- export declare function pointInPolygon(pos: Point, polygon: Point[]): boolean;
3
- export declare function pointLineDistance(point: Point, start: Point, end: Point, isSegment: any): number;
4
- export declare function polygonPolygon(pts1: Point[], pts2: Point[]): boolean;
5
- export declare function circleCircle(p1: Point, r1: number, p2: Point, r2: number): boolean;
6
- export declare function polygonCircle(pts1: Point[], p2: Point, r2: number): boolean;
1
+ import { Vec2 } from '../..';
2
+ export declare function pointInPolygon(pos: Vec2, polygon: Vec2[]): boolean;
3
+ export declare function pointLineDistance(point: Vec2, start: Vec2, end: Vec2, isSegment: any): number;
4
+ export declare function polygonPolygon(pts1: Vec2[], pts2: Vec2[]): boolean;
5
+ export declare function circleCircle(p1: Vec2, r1: number, p2: Vec2, r2: number): boolean;
6
+ export declare function polygonCircle(pts1: Vec2[], p2: Vec2, r2: number): boolean;
7
7
  //# sourceMappingURL=Intersection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Intersection.d.ts","sourceRoot":"","sources":["../../../src/collider/helper/Intersection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAG/B,wBAAgB,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,WAuB1D;AAmCD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,KAAA,UAwBlF;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,WA6B1D;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,WAGxE;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,WAejE"}
1
+ {"version":3,"file":"Intersection.d.ts","sourceRoot":"","sources":["../../../src/collider/helper/Intersection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AAE5B,wBAAgB,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,WAuBxD;AAmCD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,KAAA,UAwB/E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,WA6BxD;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,WAGtE;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,WAe/D"}
@@ -1,4 +1,4 @@
1
- import { getDistance, v2 } from '../../helper/utils';
1
+ import { Vec2 } from '../..';
2
2
  export function pointInPolygon(pos, polygon) {
3
3
  let inside = false;
4
4
  const x = pos.x;
@@ -48,7 +48,7 @@ export function pointLineDistance(point, start, end, isSegment) {
48
48
  const t = ((point.x - start.x) * dx + (point.y - start.y) * dy) / d;
49
49
  let p;
50
50
  if (!isSegment) {
51
- p = v2(start.x + t * dx, start.y + t * dy);
51
+ p = Vec2(start.x + t * dx, start.y + t * dy);
52
52
  }
53
53
  else if (d) {
54
54
  if (t < 0) {
@@ -58,7 +58,7 @@ export function pointLineDistance(point, start, end, isSegment) {
58
58
  p = end;
59
59
  }
60
60
  else {
61
- p = v2(start.x + t * dx, start.y + t * dy);
61
+ p = Vec2(start.x + t * dx, start.y + t * dy);
62
62
  }
63
63
  }
64
64
  else {
@@ -93,7 +93,7 @@ export function polygonPolygon(pts1, pts2) {
93
93
  return false;
94
94
  }
95
95
  export function circleCircle(p1, r1, p2, r2) {
96
- const d = getDistance(p1, p2);
96
+ const d = p1.distance(p2);
97
97
  return d < r1 + r2;
98
98
  }
99
99
  export function polygonCircle(pts1, p2, r2) {
@@ -1,4 +1,5 @@
1
1
  export * from './CollideComponent';
2
2
  export * from './CollideSystem';
3
+ export * from './helper/Intersection';
3
4
  export declare function setupCollider(colliderMatrix?: any, debug?: boolean): void;
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/collider/index.ts"],"names":[],"mappings":"AAGA,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAE/B,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;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,uBAAuB,CAAA;AAErC,wBAAgB,aAAa,CAAC,cAAc,CAAC,KAAA,EAAE,KAAK,UAAQ,QAS3D"}
@@ -2,6 +2,7 @@ import { GameWorld } from '..';
2
2
  import { CollideSystem, enabledDebugDraw } from './CollideSystem';
3
3
  export * from './CollideComponent';
4
4
  export * from './CollideSystem';
5
+ export * from './helper/Intersection';
5
6
  export function setupCollider(colliderMatrix, debug = false) {
6
7
  GameWorld.Instance.systems.add(CollideSystem);
7
8
  GameWorld.Instance.listUpdate.push(CollideSystem);
@@ -1,37 +1,18 @@
1
- import { Constructor, Entity } from 'entityx-ts';
1
+ import { ComponentType, Constructor, Entity } from 'entityx-ts';
2
2
  import { Action, Animation } from 'pixi-action-ease';
3
- import { Color, ColorSource, Container, Point } from 'pixi.js';
4
- import { ComponentType, EnhancedComponent } from '../base';
3
+ import { ColorSource, Container, Point } from 'pixi.js';
4
+ import { EnhancedComponent } from '..';
5
5
  import { Vec2 } from '../core';
6
6
  import { Size } from '../core/Size';
7
- export type EventCallbackType = (...args: any[]) => void;
8
- export interface EventMap {
9
- [key: string]: [EventCallbackType];
10
- }
11
- type TouchEventCallback = (target: {
12
- location: Vec2;
13
- }) => void;
14
7
  export declare class NodeComp<C extends Container = Container> {
15
8
  entity: Entity;
16
9
  instance: C;
17
- events: EventMap;
18
- data: {
19
- [key: string]: any;
20
- };
21
10
  parent: NodeComp;
22
11
  children: NodeComp[];
23
12
  actionsList: Animation[];
24
13
  name: string;
25
14
  private _group;
26
15
  private _active;
27
- onTouchStart?: TouchEventCallback;
28
- onTouchMove?: TouchEventCallback;
29
- onTouchEnd?: TouchEventCallback;
30
- onTouchCancel?: TouchEventCallback;
31
- setOnTouchStart(cb: TouchEventCallback): void;
32
- setOnTouchMove(cb: TouchEventCallback): void;
33
- setOnTouchEnd(cb: TouchEventCallback): void;
34
- setOnTouchCancel(cb: TouchEventCallback): void;
35
16
  constructor(instance: C, entity: Entity);
36
17
  get uuid(): number;
37
18
  get position(): Vec2;
@@ -78,16 +59,65 @@ export declare class NodeComp<C extends Container = Container> {
78
59
  getComponent<T extends Constructor<ComponentType>>(component: T): InstanceType<T>;
79
60
  getComponentsInChildren<T extends ComponentType>(component: Constructor<T>): T[];
80
61
  getComponentInChildren<T extends ComponentType>(component: Constructor<T>): T;
81
- convertToNodeSpace(point: Vec2): Point;
82
- convertToNodeSpaceAR(point: Vec2): Point;
83
- convertToWorldSpaceAR(point: Vec2): Point;
84
- getPosition(): Vec2;
85
- setPosition(x: number | Point, y?: number): void;
86
- setRotation(deg: number): void;
87
- getRotation(): number;
88
- getContentSize(): Size;
89
- setColor(color: Color): void;
90
- setScale(scaleX: number, scaleY?: number): void;
62
+ convertToNodeSpace(point: Vec2): {
63
+ x: number;
64
+ y: number;
65
+ equals(other: /*elided*/ any): boolean;
66
+ add(value: Point | Vec2): /*elided*/ any;
67
+ addSelf(value: Point | Vec2): /*elided*/ any;
68
+ sub(value: Point | Vec2): /*elided*/ any;
69
+ mul(multiply: number): /*elided*/ any;
70
+ mulSelf(multiply: number): /*elided*/ any;
71
+ mag(): number;
72
+ normalizeSelf(): /*elided*/ any;
73
+ normalize(): /*elided*/ any;
74
+ cross(other: Vec2): number;
75
+ signAngle(other: Vec2): number;
76
+ lengthSqr(): number;
77
+ dot(other: Vec2): number;
78
+ angle(other: Vec2): number;
79
+ distance(other: /*elided*/ any): number;
80
+ };
81
+ convertToNodeSpaceAR(point: Vec2): {
82
+ x: number;
83
+ y: number;
84
+ equals(other: /*elided*/ any): boolean;
85
+ add(value: Point | Vec2): /*elided*/ any;
86
+ addSelf(value: Point | Vec2): /*elided*/ any;
87
+ sub(value: Point | Vec2): /*elided*/ any;
88
+ mul(multiply: number): /*elided*/ any;
89
+ mulSelf(multiply: number): /*elided*/ any;
90
+ mag(): number;
91
+ normalizeSelf(): /*elided*/ any;
92
+ normalize(): /*elided*/ any;
93
+ cross(other: Vec2): number;
94
+ signAngle(other: Vec2): number;
95
+ lengthSqr(): number;
96
+ dot(other: Vec2): number;
97
+ angle(other: Vec2): number;
98
+ distance(other: /*elided*/ any): number;
99
+ };
100
+ convertToWorldSpaceAR(point: Vec2): {
101
+ x: number;
102
+ y: number;
103
+ equals(other: /*elided*/ any): boolean;
104
+ add(value: Point | Vec2): /*elided*/ any;
105
+ addSelf(value: Point | Vec2): /*elided*/ any;
106
+ sub(value: Point | Vec2): /*elided*/ any;
107
+ mul(multiply: number): /*elided*/ any;
108
+ mulSelf(multiply: number): /*elided*/ any;
109
+ mag(): number;
110
+ normalizeSelf(): /*elided*/ any;
111
+ normalize(): /*elided*/ any;
112
+ cross(other: Vec2): number;
113
+ signAngle(other: Vec2): number;
114
+ lengthSqr(): number;
115
+ dot(other: Vec2): number;
116
+ angle(other: Vec2): number;
117
+ distance(other: /*elided*/ any): number;
118
+ };
119
+ get contentSize(): Size;
120
+ set contentSize(size: Size);
91
121
  runAction(act: Action): void;
92
122
  stopAllActions(): void;
93
123
  pauseAllActions(): void;
@@ -97,12 +127,8 @@ export declare class NodeComp<C extends Container = Container> {
97
127
  addChild(child: NodeComp, zOrder?: number): void;
98
128
  destroyAllChildren(): void;
99
129
  removeAllChildren(): void;
100
- on(name: string, callback: EventCallbackType, target?: any): void;
101
- off(name: string): void;
102
- emit(name: string, ...params: any): void;
103
130
  resolveComponent(component: EnhancedComponent<object, NodeComp>): void;
104
131
  getData<T>(key: string): T;
105
132
  setData<T>(key: string, value: T): void;
106
133
  }
107
- export {};
108
134
  //# sourceMappingURL=NodeComp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NodeComp.d.ts","sourceRoot":"","sources":["../../src/components/NodeComp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NodeComp.d.ts","sourceRoot":"","sources":["../../src/components/NodeComp.ts"],"names":[],"mappings":"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"}