@vworlds/vecs 1.0.6 → 1.0.7
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.
- package/README.md +35 -20
- package/dist/component.d.ts +1 -3
- package/dist/component.js +2 -4
- package/dist/component.js.map +1 -1
- package/dist/entity.d.ts +45 -13
- package/dist/entity.js +25 -8
- package/dist/entity.js.map +1 -1
- package/dist/package.json +1 -1
- package/dist/world.d.ts +1 -1
- package/dist/world.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -117,11 +117,9 @@ world.start(); // freeze registration, sort systems into phases
|
|
|
117
117
|
const bullet = world.createEntity();
|
|
118
118
|
bullet.set(Position, { x: 0, y: 0 });
|
|
119
119
|
|
|
120
|
-
const vel = bullet.set(Velocity, { vx: 5, vy: 0 })
|
|
121
|
-
vel.modified(); // first update: notify Move system
|
|
120
|
+
const vel = bullet.set(Velocity, { vx: 5, vy: 0 }).get(Velocity)!;
|
|
122
121
|
|
|
123
|
-
const hp = bullet.set(Health, { hp: 3 })
|
|
124
|
-
hp.modified();
|
|
122
|
+
const hp = bullet.set(Health, { hp: 3 }).get(Health)!;
|
|
125
123
|
|
|
126
124
|
// ─── Game loop ─────────────────────────────────────────────────────────────
|
|
127
125
|
|
|
@@ -309,9 +307,13 @@ class Position extends Component {
|
|
|
309
307
|
|
|
310
308
|
world.registerComponent(Position);
|
|
311
309
|
|
|
312
|
-
|
|
310
|
+
entity.add(Position);
|
|
311
|
+
const pos = entity.get(Position)!;
|
|
313
312
|
pos.x = 100;
|
|
314
313
|
pos.modified(); // tell the world this component changed
|
|
314
|
+
|
|
315
|
+
// Alternatively:
|
|
316
|
+
entity.set(Position, { x: 100 });
|
|
315
317
|
```
|
|
316
318
|
|
|
317
319
|
Every component instance exposes:
|
|
@@ -331,21 +333,34 @@ Every component instance exposes:
|
|
|
331
333
|
const e = world.createEntity();
|
|
332
334
|
```
|
|
333
335
|
|
|
334
|
-
| Property / Method | Description
|
|
335
|
-
| ---------------------- |
|
|
336
|
-
| `eid` | Unique numeric entity id.
|
|
337
|
-
| `world` | The `World` that owns this entity.
|
|
338
|
-
| `add(Class)` | Attach a component
|
|
339
|
-
| `set(Class, props)` | Like `add`, but also assigns the given partial properties onto the instance. Returns the
|
|
340
|
-
| `
|
|
341
|
-
| `
|
|
342
|
-
| `
|
|
343
|
-
| `
|
|
344
|
-
| `
|
|
345
|
-
| `
|
|
346
|
-
| `
|
|
347
|
-
| `
|
|
348
|
-
| `
|
|
336
|
+
| Property / Method | Description |
|
|
337
|
+
| ---------------------- | ------------------------------------------------------------------------------------------------------------- |
|
|
338
|
+
| `eid` | Unique numeric entity id. |
|
|
339
|
+
| `world` | The `World` that owns this entity. |
|
|
340
|
+
| `add(Class)` | Attach a component and return the entity for chaining. Idempotent. |
|
|
341
|
+
| `set(Class, props)` | Like `add`, but also assigns the given partial properties onto the instance. Returns the entity for chaining. |
|
|
342
|
+
| `modified(component)` | Queue an `onSet` / `update` notification for the component. Returns the entity for chaining. |
|
|
343
|
+
| `get(Class)` | Return the component instance, or `undefined` if not present. |
|
|
344
|
+
| `remove(Class)` | Detach a component (triggers `onRemove` hooks and `exit` callbacks). |
|
|
345
|
+
| `destroy()` | Remove all components and unregister the entity. Recurses to children. |
|
|
346
|
+
| `empty` | `true` when no components are attached. |
|
|
347
|
+
| `forEachComponent(cb)` | Iterate over all attached components. |
|
|
348
|
+
| `parent` | Parent entity in the scene hierarchy, or `undefined`. |
|
|
349
|
+
| `children` | `Set<Entity>` of direct children (lazy, created on first access). |
|
|
350
|
+
| `events` | Typed event emitter. Currently emits `"destroy"` before teardown. |
|
|
351
|
+
| `properties` | `Map<string, any>` free-form bag for module-level bookkeeping. |
|
|
352
|
+
|
|
353
|
+
`entity.modified(c)` is equivalent to `c.modified()` but returns the entity, making it usable in a method chain:
|
|
354
|
+
|
|
355
|
+
```ts
|
|
356
|
+
// Mutate fields then signal the change inline:
|
|
357
|
+
const vel = entity.get(Velocity)!;
|
|
358
|
+
vel.vx += accel;
|
|
359
|
+
entity.modified(vel); // same effect as vel.modified(), returns entity
|
|
360
|
+
|
|
361
|
+
// Or in a chain — add without initial notification, then notify later:
|
|
362
|
+
entity.add(Position, false).modified(entity.get(Position)!);
|
|
363
|
+
```
|
|
349
364
|
|
|
350
365
|
#### Parent–child hierarchy
|
|
351
366
|
|
package/dist/component.d.ts
CHANGED
|
@@ -100,9 +100,7 @@ export type ComponentClassArray = ComponentClassOrType[];
|
|
|
100
100
|
* }
|
|
101
101
|
*
|
|
102
102
|
* world.registerComponent(Position);
|
|
103
|
-
*
|
|
104
|
-
* pos.x = 100;
|
|
105
|
-
* pos.modified(); // notify watching systems
|
|
103
|
+
* entity.set(Position, { x: 100 });
|
|
106
104
|
* ```
|
|
107
105
|
*
|
|
108
106
|
* A component instance is always bound to a single entity and is created by
|
package/dist/component.js
CHANGED
|
@@ -49,9 +49,7 @@ export class ComponentMeta {
|
|
|
49
49
|
* }
|
|
50
50
|
*
|
|
51
51
|
* world.registerComponent(Position);
|
|
52
|
-
*
|
|
53
|
-
* pos.x = 100;
|
|
54
|
-
* pos.modified(); // notify watching systems
|
|
52
|
+
* entity.set(Position, { x: 100 });
|
|
55
53
|
* ```
|
|
56
54
|
*
|
|
57
55
|
* A component instance is always bound to a single entity and is created by
|
|
@@ -84,7 +82,7 @@ export class Component {
|
|
|
84
82
|
* fields to ensure systems react to the new values.
|
|
85
83
|
*/
|
|
86
84
|
modified() {
|
|
87
|
-
this.entity.
|
|
85
|
+
this.entity.modified(this);
|
|
88
86
|
}
|
|
89
87
|
/** Returns the component's registered name, e.g. `"Position"`. */
|
|
90
88
|
toString() {
|
package/dist/component.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.js","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAoDlD;;;;;;;;;GASG;AACH,MAAM,OAAO,aAAa;IAqBxB,YAAY,KAAuB,EAAE,IAAY,EAAE,aAAqB;QANxE;;;WAGG;QACI,cAAS,GAAyB,SAAS,CAAC;QAGjD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,kBAAkB;IACX,KAAK,CAAC,OAA+B;QAC1C,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kBAAkB;IACX,QAAQ,CAAC,OAA+B;QAC7C,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kBAAkB;IACX,KAAK,CAAC,OAA+B;QAC1C,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAQD
|
|
1
|
+
{"version":3,"file":"component.js","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAoDlD;;;;;;;;;GASG;AACH,MAAM,OAAO,aAAa;IAqBxB,YAAY,KAAuB,EAAE,IAAY,EAAE,aAAqB;QANxE;;;WAGG;QACI,cAAS,GAAyB,SAAS,CAAC;QAGjD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,kBAAkB;IACX,KAAK,CAAC,OAA+B;QAC1C,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kBAAkB;IACX,QAAQ,CAAC,OAA+B;QAC7C,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kBAAkB;IACX,KAAK,CAAC,OAA+B;QAC1C,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAQD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,OAAO,SAAS;IAIpB;IACE,4CAA4C;IAC5B,MAAc;IAC9B,0DAA0D;IAC1C,IAAmB;QAFnB,WAAM,GAAN,MAAM,CAAQ;QAEd,SAAI,GAAJ,IAAI,CAAe;QAPrC,gBAAgB;QACT,WAAM,GAAY,KAAK,CAAC;IAO5B,CAAC;IAEJ,wDAAwD;IACxD,IAAW,IAAI;QACb,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACxB,CAAC;IAED,mEAAmE;IACnE,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC1B,CAAC;IAED;;;;;;OAMG;IACI,QAAQ;QACb,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,kEAAkE;IAC3D,QAAQ;QACb,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;IACjC,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAA4B,EAAE,KAAY;IAClF,MAAM,OAAO,GAAG,IAAI,MAAM,EAAE,CAAC;IAC7B,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
package/dist/entity.d.ts
CHANGED
|
@@ -16,9 +16,7 @@ type EntityEvents = Events<{
|
|
|
16
16
|
*
|
|
17
17
|
* ```ts
|
|
18
18
|
* const e = world.createEntity();
|
|
19
|
-
*
|
|
20
|
-
* pos.x = 100;
|
|
21
|
-
* pos.modified();
|
|
19
|
+
* e.set(Position, { x: 100 });
|
|
22
20
|
* ```
|
|
23
21
|
*
|
|
24
22
|
* Entities support a parent–child hierarchy. When a parent is destroyed its
|
|
@@ -65,6 +63,17 @@ export declare class Entity {
|
|
|
65
63
|
*/
|
|
66
64
|
get children(): Set<Entity>;
|
|
67
65
|
private getComponentInstance;
|
|
66
|
+
/**
|
|
67
|
+
* Queue an `onSet` / `update` notification for the given component and
|
|
68
|
+
* return the entity for chaining.
|
|
69
|
+
*
|
|
70
|
+
* Equivalent to `component.modified()`, but usable inside an entity method
|
|
71
|
+
* chain (e.g. after `add` or `set`).
|
|
72
|
+
*
|
|
73
|
+
* @param c - The component instance whose data changed.
|
|
74
|
+
* @returns This entity, for chaining.
|
|
75
|
+
*/
|
|
76
|
+
modified<C extends typeof Component>(c: InstanceType<C>): Entity;
|
|
68
77
|
/**
|
|
69
78
|
* Add a component of type `Class` to this entity and return the instance.
|
|
70
79
|
*
|
|
@@ -79,7 +88,29 @@ export declare class Entity {
|
|
|
79
88
|
* @returns The new (or existing) component instance, typed as
|
|
80
89
|
* `InstanceType<Class>`.
|
|
81
90
|
*/
|
|
82
|
-
|
|
91
|
+
_add<C extends typeof Component>(Class: C, markAsModified?: boolean): InstanceType<C>;
|
|
92
|
+
/**
|
|
93
|
+
* Add a component by its numeric type id.
|
|
94
|
+
*
|
|
95
|
+
* @param type - Numeric component type id (as returned by
|
|
96
|
+
* {@link World.getComponentType}).
|
|
97
|
+
* @param markAsModified - Whether to queue an update notification.
|
|
98
|
+
*/
|
|
99
|
+
_add(type: number, markAsModified?: boolean): Component;
|
|
100
|
+
/**
|
|
101
|
+
* Add a component of type `Class` to this entity and return the entity.
|
|
102
|
+
*
|
|
103
|
+
* If the component is already present the existing instance is returned and
|
|
104
|
+
* no callback is fired. Pass `markAsModified = false` to suppress the
|
|
105
|
+
* initial `onSet` / `update` notification (useful when bulk-loading
|
|
106
|
+
* network snapshots before systems are running).
|
|
107
|
+
*
|
|
108
|
+
* @param Class - The component class to instantiate.
|
|
109
|
+
* @param markAsModified - Whether to immediately queue an `update`
|
|
110
|
+
* notification. Defaults to `true`.
|
|
111
|
+
* @returns This entity, for chaining.
|
|
112
|
+
*/
|
|
113
|
+
add<C extends typeof Component>(Class: C, markAsModified?: boolean): Entity;
|
|
83
114
|
/**
|
|
84
115
|
* Add a component by its numeric type id.
|
|
85
116
|
*
|
|
@@ -87,23 +118,24 @@ export declare class Entity {
|
|
|
87
118
|
* {@link World.getComponentType}).
|
|
88
119
|
* @param markAsModified - Whether to queue an update notification.
|
|
89
120
|
*/
|
|
90
|
-
add(type: number, markAsModified?: boolean):
|
|
121
|
+
add(type: number, markAsModified?: boolean): Entity;
|
|
91
122
|
/**
|
|
92
|
-
* Add a component of type `Class` (if not already present)
|
|
93
|
-
* provided properties onto the instance,
|
|
123
|
+
* Add a component of type `Class` (if not already present), assign the
|
|
124
|
+
* provided properties onto the instance, and return the entity for chaining.
|
|
94
125
|
*
|
|
95
126
|
* @param Class - The component class to instantiate.
|
|
96
|
-
* @param props -
|
|
97
|
-
* @returns
|
|
127
|
+
* @param props - Properties to assign onto the component instance.
|
|
128
|
+
* @returns This entity, for chaining.
|
|
98
129
|
*/
|
|
99
|
-
set<C extends typeof Component>(Class: C, props: Partial<InstanceType<C>>):
|
|
130
|
+
set<C extends typeof Component>(Class: C, props: Partial<InstanceType<C>>): Entity;
|
|
100
131
|
/**
|
|
101
|
-
* Add a component by its numeric type id
|
|
132
|
+
* Add a component by its numeric type id, assign the provided properties,
|
|
133
|
+
* and return the entity for chaining.
|
|
102
134
|
*
|
|
103
135
|
* @param type - Numeric component type id.
|
|
104
|
-
* @param props -
|
|
136
|
+
* @param props - Properties to assign onto the component instance.
|
|
105
137
|
*/
|
|
106
|
-
set(type: number, props: Partial<Component>):
|
|
138
|
+
set(type: number, props: Partial<Component>): Entity;
|
|
107
139
|
/**
|
|
108
140
|
* Remove the component of the given class from this entity.
|
|
109
141
|
*
|
package/dist/entity.js
CHANGED
|
@@ -11,9 +11,7 @@ import { Bitset } from "./util/bitset.js";
|
|
|
11
11
|
*
|
|
12
12
|
* ```ts
|
|
13
13
|
* const e = world.createEntity();
|
|
14
|
-
*
|
|
15
|
-
* pos.x = 100;
|
|
16
|
-
* pos.modified();
|
|
14
|
+
* e.set(Position, { x: 100 });
|
|
17
15
|
* ```
|
|
18
16
|
*
|
|
19
17
|
* Entities support a parent–child hierarchy. When a parent is destroyed its
|
|
@@ -66,7 +64,21 @@ export class Entity {
|
|
|
66
64
|
}
|
|
67
65
|
return c;
|
|
68
66
|
}
|
|
69
|
-
|
|
67
|
+
/**
|
|
68
|
+
* Queue an `onSet` / `update` notification for the given component and
|
|
69
|
+
* return the entity for chaining.
|
|
70
|
+
*
|
|
71
|
+
* Equivalent to `component.modified()`, but usable inside an entity method
|
|
72
|
+
* chain (e.g. after `add` or `set`).
|
|
73
|
+
*
|
|
74
|
+
* @param c - The component instance whose data changed.
|
|
75
|
+
* @returns This entity, for chaining.
|
|
76
|
+
*/
|
|
77
|
+
modified(c) {
|
|
78
|
+
this.world._queueUpdatedComponent(c);
|
|
79
|
+
return this;
|
|
80
|
+
}
|
|
81
|
+
_add(typeOrClass, markAsModified = true) {
|
|
70
82
|
const type = this.world.getComponentType(typeOrClass);
|
|
71
83
|
let c = this.components.get(type);
|
|
72
84
|
if (c) {
|
|
@@ -85,14 +97,19 @@ export class Entity {
|
|
|
85
97
|
this.componentBitmask.add(type);
|
|
86
98
|
this.world._notifyComponentAdded(this, c);
|
|
87
99
|
if (markAsModified) {
|
|
88
|
-
this.
|
|
100
|
+
this.modified(c);
|
|
89
101
|
}
|
|
90
102
|
return c;
|
|
91
103
|
}
|
|
104
|
+
add(typeOrClass, markAsModified = true) {
|
|
105
|
+
this._add(typeOrClass, markAsModified);
|
|
106
|
+
return this;
|
|
107
|
+
}
|
|
92
108
|
set(typeOrClass, props) {
|
|
93
|
-
const c = this.
|
|
94
|
-
this.
|
|
95
|
-
|
|
109
|
+
const c = this._add(typeOrClass, false);
|
|
110
|
+
this.modified(c);
|
|
111
|
+
Object.assign(c, props);
|
|
112
|
+
return this;
|
|
96
113
|
}
|
|
97
114
|
remove(typeOrClass) {
|
|
98
115
|
const type = this.world.getComponentType(typeOrClass);
|
package/dist/entity.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.js","sourceRoot":"","sources":["../src/entity.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAI1C
|
|
1
|
+
{"version":3,"file":"entity.js","sourceRoot":"","sources":["../src/entity.ts"],"names":[],"mappings":"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"}
|
package/dist/package.json
CHANGED
package/dist/world.d.ts
CHANGED
|
@@ -59,7 +59,7 @@ export declare class World {
|
|
|
59
59
|
* const e = world.getOrCreateEntity(snapshot.eid, (e) => {
|
|
60
60
|
* networkEntities.add(e);
|
|
61
61
|
* });
|
|
62
|
-
*
|
|
62
|
+
* e.add(snapshot.type, false);
|
|
63
63
|
* ```
|
|
64
64
|
*
|
|
65
65
|
* @param eid - The entity id to look up or create.
|
package/dist/world.js
CHANGED
|
@@ -61,7 +61,7 @@ export class World {
|
|
|
61
61
|
* const e = world.getOrCreateEntity(snapshot.eid, (e) => {
|
|
62
62
|
* networkEntities.add(e);
|
|
63
63
|
* });
|
|
64
|
-
*
|
|
64
|
+
* e.add(snapshot.type, false);
|
|
65
65
|
* ```
|
|
66
66
|
*
|
|
67
67
|
* @param eid - The entity id to look up or create.
|