@typeonce/ritmo 0.7.0 → 0.8.0
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/dist/Command.d.ts +102 -17
- package/dist/Command.d.ts.map +1 -1
- package/dist/Command.js +10 -8
- package/dist/Command.js.map +1 -1
- package/dist/Condition.d.ts +12 -1
- package/dist/Condition.d.ts.map +1 -1
- package/dist/Condition.js.map +1 -1
- package/dist/Debug.d.ts +63 -7
- package/dist/Debug.d.ts.map +1 -1
- package/dist/Descriptor.d.ts +36 -3
- package/dist/Descriptor.d.ts.map +1 -1
- package/dist/Descriptor.js +11 -3
- package/dist/Descriptor.js.map +1 -1
- package/dist/Entity.d.ts +12 -4
- package/dist/Entity.d.ts.map +1 -1
- package/dist/Entity.js.map +1 -1
- package/dist/EntityScope.d.ts +20 -1
- package/dist/EntityScope.d.ts.map +1 -1
- package/dist/EntityScope.js +8 -2
- package/dist/EntityScope.js.map +1 -1
- package/dist/Machine.d.ts +55 -33
- package/dist/Machine.d.ts.map +1 -1
- package/dist/Machine.js +6 -2
- package/dist/Machine.js.map +1 -1
- package/dist/Query.d.ts +48 -4
- package/dist/Query.d.ts.map +1 -1
- package/dist/Query.js +32 -4
- package/dist/Query.js.map +1 -1
- package/dist/Runtime.d.ts +3 -0
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +330 -24
- package/dist/Runtime.js.map +1 -1
- package/dist/Schema.d.ts +141 -25
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +29 -3
- package/dist/Schema.js.map +1 -1
- package/dist/Snapshot.d.ts +14 -0
- package/dist/Snapshot.d.ts.map +1 -1
- package/dist/Snapshot.js.map +1 -1
- package/dist/System.d.ts +64 -7
- package/dist/System.d.ts.map +1 -1
- package/dist/System.js +32 -0
- package/dist/System.js.map +1 -1
- package/dist/internal/debug.d.ts +7 -0
- package/dist/internal/debug.d.ts.map +1 -1
- package/dist/internal/debug.js +97 -6
- package/dist/internal/debug.js.map +1 -1
- package/dist/internal/equal.d.ts +8 -0
- package/dist/internal/equal.d.ts.map +1 -0
- package/dist/internal/equal.js +38 -0
- package/dist/internal/equal.js.map +1 -0
- package/dist/internal/fragments.d.ts.map +1 -1
- package/dist/internal/fragments.js +11 -1
- package/dist/internal/fragments.js.map +1 -1
- package/dist/internal/game.d.ts.map +1 -1
- package/dist/internal/game.js +33 -5
- package/dist/internal/game.js.map +1 -1
- package/dist/internal/order.d.ts.map +1 -1
- package/dist/internal/order.js +4 -2
- package/dist/internal/order.js.map +1 -1
- package/dist/internal/queries.d.ts.map +1 -1
- package/dist/internal/queries.js +30 -8
- package/dist/internal/queries.js.map +1 -1
- package/dist/internal/requirements.d.ts +26 -0
- package/dist/internal/requirements.d.ts.map +1 -0
- package/dist/internal/requirements.js +46 -0
- package/dist/internal/requirements.js.map +1 -0
- package/package.json +1 -1
- package/src/Command.ts +149 -29
- package/src/Condition.ts +17 -1
- package/src/Debug.ts +64 -7
- package/src/Descriptor.ts +55 -10
- package/src/Entity.ts +13 -4
- package/src/EntityScope.ts +21 -2
- package/src/Machine.ts +68 -34
- package/src/Query.ts +71 -7
- package/src/Runtime.ts +336 -22
- package/src/Schema.ts +185 -28
- package/src/Snapshot.ts +4 -0
- package/src/System.ts +75 -6
- package/src/internal/debug.ts +104 -8
- package/src/internal/equal.ts +31 -0
- package/src/internal/fragments.ts +12 -2
- package/src/internal/game.ts +51 -5
- package/src/internal/order.ts +8 -4
- package/src/internal/queries.ts +34 -10
- package/src/internal/requirements.ts +71 -0
package/dist/Command.d.ts
CHANGED
|
@@ -65,7 +65,7 @@ import * as Entity from "./Entity.ts";
|
|
|
65
65
|
import type * as EntityScope from "./EntityScope.ts";
|
|
66
66
|
import type * as Relation from "./Relation.ts";
|
|
67
67
|
import * as Result from "./Result.ts";
|
|
68
|
-
import type { Schema } from "./Schema.ts";
|
|
68
|
+
import type { RequirementPair, Schema } from "./Schema.ts";
|
|
69
69
|
/**
|
|
70
70
|
* Type-level helpers for staged entity construction.
|
|
71
71
|
*
|
|
@@ -164,9 +164,10 @@ export type DeferredCommand<S extends Schema.Any> = {
|
|
|
164
164
|
export interface InternalWorld<S extends Schema.Any> {
|
|
165
165
|
/**
|
|
166
166
|
* Creates the entity for an id reserved by `commands.spawn(...)` with its
|
|
167
|
-
* staged components.
|
|
167
|
+
* staged components. Returns `false`, creating nothing, when the
|
|
168
|
+
* components break a `Schema.requires` requirement.
|
|
168
169
|
*/
|
|
169
|
-
readonly spawnEntity: (id: Entity.EntityId<S, any>, components: ReadonlyArray<Entity.StagedComponent>) =>
|
|
170
|
+
readonly spawnEntity: (id: Entity.EntityId<S, any>, components: ReadonlyArray<Entity.StagedComponent>) => boolean;
|
|
170
171
|
/**
|
|
171
172
|
* Removes an entity and its outgoing and incoming relations.
|
|
172
173
|
*/
|
|
@@ -180,13 +181,15 @@ export interface InternalWorld<S extends Schema.Any> {
|
|
|
180
181
|
*/
|
|
181
182
|
readonly destroyEntityScope: (scope: EntityScope.EntityScope.Any) => void;
|
|
182
183
|
/**
|
|
183
|
-
* Removes
|
|
184
|
+
* Removes components from a live entity, all or none: nothing is removed
|
|
185
|
+
* when that would leave a component without one it requires.
|
|
184
186
|
*/
|
|
185
|
-
readonly
|
|
187
|
+
readonly removeComponents: (id: Entity.EntityId<S, any>, descriptors: ReadonlyArray<Descriptor<"component", string, any>>) => void;
|
|
186
188
|
/**
|
|
187
|
-
* Inserts or replaces
|
|
189
|
+
* Inserts or replaces components on a live entity, all or none: nothing is
|
|
190
|
+
* written when an inserted component would miss one it requires.
|
|
188
191
|
*/
|
|
189
|
-
readonly
|
|
192
|
+
readonly insertComponents: (id: Entity.EntityId<S, any>, entries: ReadonlyArray<Entity.StagedComponent>) => void;
|
|
190
193
|
/**
|
|
191
194
|
* Attempts to attach one relation edge between two live entities.
|
|
192
195
|
*/
|
|
@@ -342,6 +345,67 @@ declare const spawnedTypeId: unique symbol;
|
|
|
342
345
|
export type SpawnedId<S extends Schema.Any, Root, Components extends string> = Entity.EntityId<S, Root> & {
|
|
343
346
|
readonly [spawnedTypeId]: (_: never) => Components;
|
|
344
347
|
};
|
|
348
|
+
/** The requirements (`[requirer, required]`) of the components in `Held` that `Held` lacks. */
|
|
349
|
+
type MissingPairs<S extends Schema.Any, Held extends string> = Extract<Schema.Requires<S>, readonly [Held, string]> extends infer Pair ? Pair extends readonly [string, infer To extends string] ? To extends Held ? never : Pair : never : never;
|
|
350
|
+
/** One message per missing requirement: `"Player requires Velocity"`. */
|
|
351
|
+
type MissingMessages<Pairs> = Pairs extends readonly [infer From extends string, infer To extends string] ? `${From} requires ${To}` : never;
|
|
352
|
+
/**
|
|
353
|
+
* Accepts a draft holding every requirement of every component it holds.
|
|
354
|
+
* Direct requirements are enough: each required component must be held
|
|
355
|
+
* too, with its own requirements.
|
|
356
|
+
*/
|
|
357
|
+
type DraftRequirementsMet<S extends Schema.Any, Held extends string> = [
|
|
358
|
+
MissingPairs<S, Held>
|
|
359
|
+
] extends [never] ? unknown : Fix<`${MissingMessages<MissingPairs<S, Held>>}: add the missing entries to the draft`>;
|
|
360
|
+
/** What an insert or remove target is known to hold: a query match's proof, or a `SpawnedId`'s draft. A raw id proves nothing. */
|
|
361
|
+
type TargetHolds<E> = E extends {
|
|
362
|
+
readonly kind: "EntityRef" | "EntityMut";
|
|
363
|
+
readonly __proves?: (_: never) => infer Proves;
|
|
364
|
+
} ? Names<Proves> : E extends {
|
|
365
|
+
readonly [spawnedTypeId]: (_: never) => infer Spawned extends string;
|
|
366
|
+
} ? Spawned : never;
|
|
367
|
+
/** What a remove target is known to lack: its query's `without`. */
|
|
368
|
+
type TargetLacks<E> = E extends {
|
|
369
|
+
readonly kind: "EntityRef" | "EntityMut";
|
|
370
|
+
readonly __lacks?: (_: never) => infer Lacks;
|
|
371
|
+
} ? Names<Lacks> : never;
|
|
372
|
+
type EntryNames<Entries extends ReadonlyArray<readonly [ComponentDescriptor, unknown]>> = Names<Entries[number][0]>;
|
|
373
|
+
/** Inserted components with requirements neither inserted alongside nor proven held by the target. */
|
|
374
|
+
type InsertRequirementsMet<S extends Schema.Any, E, Entries extends ReadonlyArray<readonly [ComponentDescriptor, unknown]>> = [
|
|
375
|
+
MissingPairs<S, EntryNames<Entries> | TargetHolds<E>> & readonly [EntryNames<Entries>, string]
|
|
376
|
+
] extends [never] ? unknown : Fix<`${MissingMessages<MissingPairs<S, EntryNames<Entries> | TargetHolds<E>> & readonly [EntryNames<Entries>, string]>}: insert it in the same call, or pass match.entity from a query that proves it`>;
|
|
377
|
+
/**
|
|
378
|
+
* Removing `Removed` is sound when every component that requires one of
|
|
379
|
+
* them is removed in the same call or proven absent by the target's query
|
|
380
|
+
* (`without`): otherwise the entity may keep a requirer without its
|
|
381
|
+
* requirement.
|
|
382
|
+
*/
|
|
383
|
+
type RemoveViolations<S extends Schema.Any, E, Removed extends string> = Extract<Schema.Requires<S>, readonly [string, Removed]> extends infer Pair ? Pair extends readonly [infer From extends string, infer To extends string] ? From extends Removed | TargetLacks<E> ? never : `${To} is required by ${From}: remove ${From} in the same call, or match the entity with a query that has without: [${From}]` : never : never;
|
|
384
|
+
type RemoveRequirementsMet<S extends Schema.Any, E, Removed extends string> = [
|
|
385
|
+
RemoveViolations<S, E, Removed>
|
|
386
|
+
] extends [never] ? unknown : Fix<RemoveViolations<S, E, Removed>>;
|
|
387
|
+
/** A remove target: `match.entity`, or the id `spawn` returned in this run; never a raw id. */
|
|
388
|
+
type RemoveTargetAllowed<S extends Schema.Any, Root, E> = E extends {
|
|
389
|
+
readonly kind: "EntityRef" | "EntityMut";
|
|
390
|
+
readonly id: Entity.EntityId<S, Root>;
|
|
391
|
+
} ? unknown : E extends SpawnedId<S, Root, string> ? unknown : Fix<"remove needs an entity from a query (pass match.entity) or the id spawn returned in this run, not a raw id">;
|
|
392
|
+
/** The transitive closure of the names `N` require (cycles stop). */
|
|
393
|
+
type RequiredClosure<Pairs extends RequirementPair, N extends string, Seen extends string = never> = [
|
|
394
|
+
Exclude<N, Seen>
|
|
395
|
+
] extends [never] ? Seen : RequiredClosure<Pairs, Extract<Pairs, readonly [Exclude<N, Seen>, string]>[1], Seen | N>;
|
|
396
|
+
/**
|
|
397
|
+
* The component descriptors that `Names` require, transitively
|
|
398
|
+
* (`Schema.requires`): what `Game.System.spawns(...)` also allows.
|
|
399
|
+
*/
|
|
400
|
+
export type RequiredDescriptors<S extends Schema.Any, Names extends string> = 0 extends 1 & Names ? never : string extends Names ? never : [Extract<Schema.Requires<S>, readonly [Names, string]>] extends [never] ? never : Extract<Schema.ComponentDescriptor<S>, {
|
|
401
|
+
readonly name: Exclude<RequiredClosure<Schema.Requires<S>, Names>, Names>;
|
|
402
|
+
}>;
|
|
403
|
+
type SchemaComponent<S extends Schema.Any> = Extract<Schema.Components<S>[keyof Schema.Components<S>], ComponentDescriptor>;
|
|
404
|
+
/** An entity a system has proven something about: `match.entity`, or the id `spawn` returned. */
|
|
405
|
+
type EntityTarget<S extends Schema.Any, Root> = {
|
|
406
|
+
readonly kind: "EntityRef" | "EntityMut";
|
|
407
|
+
readonly id: Entity.EntityId<S, Root>;
|
|
408
|
+
} | SpawnedId<S, Root, string>;
|
|
345
409
|
/** The keys every member of a union of proofs requires (what a draft holds in every case). */
|
|
346
410
|
type RequiredKeys<P> = P extends unknown ? {
|
|
347
411
|
[K in keyof P]-?: {} extends Pick<P, K> ? never : K;
|
|
@@ -366,22 +430,33 @@ type HeldNames<P> = Exclude<AllKeys<P>, MissingSomewhere<P, AllKeys<P>>>;
|
|
|
366
430
|
export interface CommandsApi<S extends Schema.Any, Root = unknown, Spawns = never, Inserts = never, Removes = never, Despawns = never, Scopes = never, Relates = never> {
|
|
367
431
|
/**
|
|
368
432
|
* Queues a staged entity for spawning and returns its stable runtime id.
|
|
433
|
+
*
|
|
434
|
+
* The draft must hold every component its components require
|
|
435
|
+
* (`Schema.requires`); drafts are checked here, so a partial draft built
|
|
436
|
+
* with `Game.Command.spawn(...)` and completed with `extend(...)` is fine.
|
|
369
437
|
*/
|
|
370
|
-
readonly spawn: [Spawns] extends [never] ? MethodNotDeclared<"spawn", "spawns"> : <P extends Entity.ComponentProof>(draft: Entity.EntityDraft<S, P, Root> & DraftAllowed<P, Spawns>) => SpawnedId<S, Root, HeldNames<P>>;
|
|
438
|
+
readonly spawn: [Spawns] extends [never] ? MethodNotDeclared<"spawn", "spawns"> : <P extends Entity.ComponentProof>(draft: Entity.EntityDraft<S, P, Root> & DraftAllowed<P, Spawns> & DraftRequirementsMet<S, HeldNames<P>>) => SpawnedId<S, Root, HeldNames<P>>;
|
|
371
439
|
/**
|
|
372
440
|
* Queues an entity spawn owned by one lifetime scope (removed together
|
|
373
|
-
* with `despawnScope(...)`).
|
|
441
|
+
* with `despawnScope(...)`). The draft is checked like `spawn(...)`.
|
|
374
442
|
*/
|
|
375
|
-
readonly spawnIn: [Spawns] extends [never] ? MethodNotDeclared<"spawnIn", "spawns"> : <P extends Entity.ComponentProof>(scope: EntityScope.EntityScope<string, Root>, draft: Entity.EntityDraft<S, P, Root> & DraftAllowed<P, Spawns>) => SpawnedId<S, Root, HeldNames<P>>;
|
|
443
|
+
readonly spawnIn: [Spawns] extends [never] ? MethodNotDeclared<"spawnIn", "spawns"> : <P extends Entity.ComponentProof>(scope: EntityScope.EntityScope<string, Root>, draft: Entity.EntityDraft<S, P, Root> & DraftAllowed<P, Spawns> & DraftRequirementsMet<S, HeldNames<P>>) => SpawnedId<S, Root, HeldNames<P>>;
|
|
376
444
|
/**
|
|
377
445
|
* Queues component inserts (or replacements) on an existing entity, applied
|
|
378
446
|
* at the next `applyDeferred()`. To change a value now, on an entity you
|
|
379
|
-
* matched, write through a query (`Game.Query.write`) instead
|
|
447
|
+
* matched, write through a query (`Game.Query.write`) instead; components
|
|
448
|
+
* declared `immutable: true` change only through `insert`.
|
|
449
|
+
*
|
|
450
|
+
* Pass `match.entity`: its query proves what the entity holds, which must
|
|
451
|
+
* cover what the inserted components require (`Schema.requires`) together
|
|
452
|
+
* with the entries inserted in the same call. The id `spawn` returned in
|
|
453
|
+
* this run proves its draft. A raw `EntityId` proves nothing, so it only
|
|
454
|
+
* inserts components without requirements.
|
|
380
455
|
*
|
|
381
456
|
* Entries must already be valid; validate raw input with
|
|
382
457
|
* `Game.Command.entryRaw(...)` first.
|
|
383
458
|
*/
|
|
384
|
-
readonly insert: [Inserts] extends [never] ? MethodNotDeclared<"insert", "inserts"> : <const Entries extends ReadonlyArray<SchemaEntry<S>>>(entity:
|
|
459
|
+
readonly insert: [Inserts] extends [never] ? MethodNotDeclared<"insert", "inserts"> : <const E extends Entity.EntityId<S, Root> | EntityTarget<S, Root>, const Entries extends ReadonlyArray<SchemaEntry<S>>>(entity: E, ...entries: Entries & EntriesAllowed<Entries, Inserts> & InsertRequirementsMet<S, E, Entries>) => Entity.EntityId<S, Root>;
|
|
385
460
|
/**
|
|
386
461
|
* Queues an entity removal. A despawned entity stays visible to queries
|
|
387
462
|
* until the next `applyDeferred()`, and despawns never count as writers for
|
|
@@ -391,15 +466,21 @@ export interface CommandsApi<S extends Schema.Any, Root = unknown, Spawns = neve
|
|
|
391
466
|
* components, or the id `spawn` returned in this run (it holds its draft's
|
|
392
467
|
* components); never a raw id.
|
|
393
468
|
*/
|
|
394
|
-
readonly despawn: [Despawns] extends [never] ? MethodNotDeclared<"despawn", "despawns"> : <const E>(entity: E
|
|
469
|
+
readonly despawn: [Despawns] extends [never] ? MethodNotDeclared<"despawn", "despawns"> : <const E>(entity: unknown extends DespawnAllowed<E, Despawns> ? E : DespawnAllowed<E, Despawns>) => void;
|
|
395
470
|
/**
|
|
396
471
|
* Queues removal of every entity owned by one lifetime scope.
|
|
397
472
|
*/
|
|
398
473
|
readonly despawnScope: [Scopes] extends [never] ? MethodNotDeclared<"despawnScope", "despawnsScope"> : (scope: Scopes) => void;
|
|
399
474
|
/**
|
|
400
|
-
* Queues
|
|
475
|
+
* Queues the removal of one or more components from an existing entity,
|
|
476
|
+
* applied together at the next `applyDeferred()`.
|
|
477
|
+
*
|
|
478
|
+
* Pass `match.entity` from a query, or the id `spawn` returned in this run;
|
|
479
|
+
* never a raw id. A component another one requires (`Schema.requires`) can
|
|
480
|
+
* only go together with that requirer, in the same call, or from an
|
|
481
|
+
* entity whose query has `without: [Requirer]`.
|
|
401
482
|
*/
|
|
402
|
-
readonly remove: [Removes] extends [never] ? MethodNotDeclared<"remove", "removes"> : <
|
|
483
|
+
readonly remove: [Removes] extends [never] ? MethodNotDeclared<"remove", "removes"> : <const E, const Ds extends readonly [SchemaComponent<S>, ...Array<SchemaComponent<S>>]>(entity: unknown extends RemoveTargetAllowed<S, Root, E> ? E : RemoveTargetAllowed<S, Root, E>, ...descriptors: Ds & RemoveAllowed<Ds[number], Removes> & RemoveRequirementsMet<S, E, Names<Ds[number]>>) => Entity.EntityId<S, Root>;
|
|
403
484
|
/**
|
|
404
485
|
* Queues one live relation mutation for deferred application.
|
|
405
486
|
*/
|
|
@@ -417,12 +498,16 @@ export interface CommandsApi<S extends Schema.Any, Root = unknown, Spawns = neve
|
|
|
417
498
|
export interface CommandQueue<S extends Schema.Any, Root = unknown> {
|
|
418
499
|
readonly spawn: (draft: Entity.EntityDraft<S, any, Root>) => Entity.EntityId<S, Root>;
|
|
419
500
|
readonly spawnIn: (scope: EntityScope.EntityScope<string, Root>, draft: Entity.EntityDraft<S, any, Root>) => Entity.EntityId<S, Root>;
|
|
420
|
-
readonly insert: (entity: Entity.EntityId<S, Root
|
|
501
|
+
readonly insert: (entity: Entity.EntityId<S, Root> | {
|
|
502
|
+
readonly id: Entity.EntityId<S, Root>;
|
|
503
|
+
}, ...entries: ReadonlyArray<SchemaEntry<S>>) => Entity.EntityId<S, Root>;
|
|
421
504
|
readonly despawn: (entity: Entity.EntityId<S, Root> | {
|
|
422
505
|
readonly id: Entity.EntityId<S, Root>;
|
|
423
506
|
}) => void;
|
|
424
507
|
readonly despawnScope: (scope: EntityScope.EntityScope<string, Root>) => void;
|
|
425
|
-
readonly remove: (entity: Entity.EntityId<S, Root
|
|
508
|
+
readonly remove: (entity: Entity.EntityId<S, Root> | {
|
|
509
|
+
readonly id: Entity.EntityId<S, Root>;
|
|
510
|
+
}, ...descriptors: ReadonlyArray<ComponentDescriptor>) => Entity.EntityId<S, Root>;
|
|
426
511
|
readonly relate: (entity: Entity.EntityId<S, Root>, relation: Relation.Relation.Any, target: Entity.EntityId<S, Root>) => void;
|
|
427
512
|
readonly unrelate: (entity: Entity.EntityId<S, Root>, relation: Relation.Relation.Any) => void;
|
|
428
513
|
readonly reorderChildren: (entity: Entity.EntityId<S, Root>, relation: Relation.Relation.Hierarchy, children: ReadonlyArray<Entity.EntityId<S, Root>>) => void;
|
package/dist/Command.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Command.d.ts","sourceRoot":"","sources":["../src/Command.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Command.d.ts","sourceRoot":"","sources":["../src/Command.ts"],"names":[],"mappings":"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"}
|
package/dist/Command.js
CHANGED
|
@@ -215,7 +215,8 @@ export const makeCommands = (allocateId) => {
|
|
|
215
215
|
queue.push({
|
|
216
216
|
tag: "spawn",
|
|
217
217
|
apply(world) {
|
|
218
|
-
world.spawnEntity(id, draft.components)
|
|
218
|
+
if (!world.spawnEntity(id, draft.components))
|
|
219
|
+
return;
|
|
219
220
|
for (const stagedRelation of draft.relations) {
|
|
220
221
|
world.tryRelate(id, stagedRelation.relation, stagedRelation.target);
|
|
221
222
|
}
|
|
@@ -228,7 +229,8 @@ export const makeCommands = (allocateId) => {
|
|
|
228
229
|
queue.push({
|
|
229
230
|
tag: "spawnIn",
|
|
230
231
|
apply(world) {
|
|
231
|
-
world.spawnEntity(id, draft.components)
|
|
232
|
+
if (!world.spawnEntity(id, draft.components))
|
|
233
|
+
return;
|
|
232
234
|
world.assignEntityScope(id, scope);
|
|
233
235
|
for (const stagedRelation of draft.relations) {
|
|
234
236
|
world.tryRelate(id, stagedRelation.relation, stagedRelation.target);
|
|
@@ -237,13 +239,12 @@ export const makeCommands = (allocateId) => {
|
|
|
237
239
|
});
|
|
238
240
|
return id;
|
|
239
241
|
},
|
|
240
|
-
insert(
|
|
242
|
+
insert(target, ...entries) {
|
|
243
|
+
const entity = typeof target === "object" ? target.id : target;
|
|
241
244
|
queue.push({
|
|
242
245
|
tag: "insert",
|
|
243
246
|
apply(world) {
|
|
244
|
-
|
|
245
|
-
world.writeComponent(entity, descriptor, value);
|
|
246
|
-
}
|
|
247
|
+
world.insertComponents(entity, entries);
|
|
247
248
|
}
|
|
248
249
|
});
|
|
249
250
|
return entity;
|
|
@@ -265,11 +266,12 @@ export const makeCommands = (allocateId) => {
|
|
|
265
266
|
}
|
|
266
267
|
});
|
|
267
268
|
},
|
|
268
|
-
remove(
|
|
269
|
+
remove(target, ...descriptors) {
|
|
270
|
+
const entity = typeof target === "object" ? target.id : target;
|
|
269
271
|
queue.push({
|
|
270
272
|
tag: "remove",
|
|
271
273
|
apply(world) {
|
|
272
|
-
world.
|
|
274
|
+
world.removeComponents(entity, descriptors);
|
|
273
275
|
}
|
|
274
276
|
});
|
|
275
277
|
return entity;
|
package/dist/Command.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Command.js","sourceRoot":"","sources":["../src/Command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AACH,OAAO,KAAK,gBAAgB,MAAM,iBAAiB,CAAA;AAEnD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAGrC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"Command.js","sourceRoot":"","sources":["../src/Command.ts"],"names":[],"mappings":"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"}
|
package/dist/Condition.d.ts
CHANGED
|
@@ -42,9 +42,19 @@ type AnyQuery = Query.Query.Any<any>;
|
|
|
42
42
|
/** Access categories a check may declare. */
|
|
43
43
|
export interface CheckAccessInput {
|
|
44
44
|
readonly queries?: Record<string, AnyQuery>;
|
|
45
|
-
readonly resources?: Record<string,
|
|
45
|
+
readonly resources?: Record<string, CheckResourceAccess>;
|
|
46
46
|
readonly machines?: Record<string, Machine.MachineRead<Machine.StateMachine.Any>>;
|
|
47
47
|
}
|
|
48
|
+
/** Accepted at the constraint so `ExactCheckAccess` can reject the last two with a message naming the fix. */
|
|
49
|
+
type CheckResourceAccess = System.ResourceRead<Descriptor<"resource", string, any>> | System.ResourceChanged<Descriptor<"resource", string, any>> | System.ResourceWrite<Descriptor<"resource", string, any>>;
|
|
50
|
+
/** A check reads committed values and owns no cursor: `changedResource` and `writeResource` slots become a message naming the fix. */
|
|
51
|
+
type CheckResources<Resources> = {
|
|
52
|
+
readonly [K in keyof Resources]: Resources[K] extends {
|
|
53
|
+
readonly mode: "changed";
|
|
54
|
+
} ? "changedResource consumes a per-reader cursor, which a check does not have: use Game.System.readResource here, and changedResource in the gated system" : Resources[K] extends {
|
|
55
|
+
readonly mode: "write";
|
|
56
|
+
} ? "a check cannot write resources: use Game.System.readResource" : Resources[K];
|
|
57
|
+
};
|
|
48
58
|
type QueryWriteAccess<Q extends AnyQuery> = Extract<Q["selection"][keyof Q["selection"]], {
|
|
49
59
|
readonly mode: "write";
|
|
50
60
|
}>;
|
|
@@ -63,6 +73,7 @@ export type ExactCheckAccess<Access extends CheckAccessInput> = Access & {
|
|
|
63
73
|
readonly [Key in Exclude<keyof Access, keyof CheckAccessInput>]: never;
|
|
64
74
|
} & {
|
|
65
75
|
readonly queries?: Access["queries"] extends Record<string, AnyQuery> ? StatelessQueries<Access["queries"]> : never;
|
|
76
|
+
readonly resources?: CheckResources<Access["resources"]>;
|
|
66
77
|
};
|
|
67
78
|
/** What a check's predicate sees: its declared resources, machines, and queries, read-only. */
|
|
68
79
|
export type CheckContext<Spec extends System.AnySystemSpec> = Pick<System.SystemContext<Spec>, "queries" | "resources" | "machines">;
|
package/dist/Condition.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Condition.d.ts","sourceRoot":"","sources":["../src/Condition.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAEjD,OAAO,KAAK,KAAK,OAAO,MAAM,cAAc,CAAA;AAC5C,OAAO,KAAK,KAAK,KAAK,MAAM,YAAY,CAAA;AACxC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAE1C,KAAK,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAEpC,6CAA6C;AAC7C,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC3C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"Condition.d.ts","sourceRoot":"","sources":["../src/Condition.ts"],"names":[],"mappings":"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"}
|
package/dist/Condition.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Condition.js","sourceRoot":"","sources":["../src/Condition.ts"],"names":[],"mappings":"AAoCA,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"Condition.js","sourceRoot":"","sources":["../src/Condition.ts"],"names":[],"mappings":"AAoCA,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AA8D3C;;;GAGG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAMnB,MAAS,EACT,IAAU,EACV,IAA8B,EAC9B,SAAiF,EACjB,EAAE;IAClE,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,EAAW,EAAE,SAAkB,CAAC,CAAA;IACzF,OAAO;QACL,IAAI,EAAE,OAAO;QACb,IAAI;QACJ,UAAU;QACV,YAAY,EAAE,UAAU,CAAC,YAAY;KACtC,CAAA;AACH,CAAC,CAAA"}
|
package/dist/Debug.d.ts
CHANGED
|
@@ -110,6 +110,10 @@ export type Storage = "constructed" | "transient" | "plain";
|
|
|
110
110
|
export interface ComponentDescription {
|
|
111
111
|
readonly name: string;
|
|
112
112
|
readonly storage: Storage;
|
|
113
|
+
/** Declared `immutable: true`: queries only read it, `commands.insert` replaces it. */
|
|
114
|
+
readonly immutable: boolean;
|
|
115
|
+
/** The components it directly requires (`Schema.requires`). */
|
|
116
|
+
readonly requires: ReadonlyArray<string>;
|
|
113
117
|
}
|
|
114
118
|
export interface ResourceDescription {
|
|
115
119
|
readonly name: string;
|
|
@@ -127,8 +131,21 @@ export interface RelationDescription {
|
|
|
127
131
|
export interface MachineDescription {
|
|
128
132
|
readonly name: string;
|
|
129
133
|
readonly states: ReadonlyArray<Machine.StateValue>;
|
|
130
|
-
/**
|
|
134
|
+
/**
|
|
135
|
+
* The committed value, or `undefined` when the runtime does not provide the
|
|
136
|
+
* machine, or when it is a sub-state whose parent is in another state.
|
|
137
|
+
*/
|
|
131
138
|
readonly current: Machine.StateValue | undefined;
|
|
139
|
+
/** Whether the runtime was given an initial value for the machine. */
|
|
140
|
+
readonly provided: boolean;
|
|
141
|
+
/** For a sub-state, where it exists, as `Parent=state`. */
|
|
142
|
+
readonly within: string | undefined;
|
|
143
|
+
}
|
|
144
|
+
/** An entity scope and the state changes that despawn it (`Game.EntityScope(name, { despawnOnExit, despawnOnEnter })`). */
|
|
145
|
+
export interface ScopeDescription {
|
|
146
|
+
readonly name: string;
|
|
147
|
+
/** Triggers as `onExit(Flow=Playing)` / `onEnter(Flow=Menu)`; empty when only `commands.despawnScope` ends it. */
|
|
148
|
+
readonly despawnOn: ReadonlyArray<string>;
|
|
132
149
|
}
|
|
133
150
|
export interface ServiceDescription {
|
|
134
151
|
readonly name: string;
|
|
@@ -144,6 +161,11 @@ export interface QueryDescription {
|
|
|
144
161
|
readonly without: ReadonlyArray<string>;
|
|
145
162
|
readonly added: ReadonlyArray<string>;
|
|
146
163
|
readonly changed: ReadonlyArray<string>;
|
|
164
|
+
/** One entry per `anyOf` filter: the components of its `added` and `changed` members. */
|
|
165
|
+
readonly anyOf: ReadonlyArray<{
|
|
166
|
+
readonly added: ReadonlyArray<string>;
|
|
167
|
+
readonly changed: ReadonlyArray<string>;
|
|
168
|
+
}>;
|
|
147
169
|
/** Relation filters and reads, for example `with ChildOf` or `read Children`. */
|
|
148
170
|
readonly relations: ReadonlyArray<string>;
|
|
149
171
|
}
|
|
@@ -153,8 +175,10 @@ export interface SystemDescription {
|
|
|
153
175
|
/** Where the system runs, as `schedule#step`. */
|
|
154
176
|
readonly placements: ReadonlyArray<string>;
|
|
155
177
|
readonly queries: ReadonlyArray<QueryDescription>;
|
|
178
|
+
/** Resource reads and writes. `changed` lists the reads declared with `changedResource` (also in `reads`). */
|
|
156
179
|
readonly resources: {
|
|
157
180
|
readonly reads: ReadonlyArray<string>;
|
|
181
|
+
readonly changed: ReadonlyArray<string>;
|
|
158
182
|
readonly writes: ReadonlyArray<string>;
|
|
159
183
|
};
|
|
160
184
|
readonly events: {
|
|
@@ -212,15 +236,18 @@ export interface ScheduleDescription {
|
|
|
212
236
|
* A finding about the described schedules. `warning` is almost certainly a
|
|
213
237
|
* bug; `info` is worth a look but can be intentional.
|
|
214
238
|
*
|
|
215
|
-
* Most lints read declarations only.
|
|
216
|
-
* so far: events sent with `runtime.send(...)` count as written,
|
|
239
|
+
* Most lints read declarations only. Some also use what the runtime has seen
|
|
240
|
+
* so far: events sent with `runtime.send(...)` count as written,
|
|
217
241
|
* `relation-failure-never-read` fires for a relation that applied commands
|
|
218
242
|
* have tried to relate or reorder (which can fail) while no described system
|
|
219
|
-
* reads its failures,
|
|
243
|
+
* reads its failures, and `requirement-violated` lists commands skipped
|
|
244
|
+
* because they would have broken a `Schema.requires` requirement, so
|
|
245
|
+
* describe after the game has run for a while. `scope-trigger-never-applied`
|
|
246
|
+
* also reads which machines the runtime provides.
|
|
220
247
|
*/
|
|
221
248
|
export interface Lint {
|
|
222
249
|
readonly severity: "warning" | "info";
|
|
223
|
-
readonly code: "event-never-read" | "relation-failure-never-read" | "event-never-written" | "next-state-never-applied" | "component-never-read" | "read-before-write" | "this-tick-order" | "command-permission-unused";
|
|
250
|
+
readonly code: "event-never-read" | "relation-failure-never-read" | "event-never-written" | "next-state-never-applied" | "resource-changed-never-written" | "component-never-read" | "read-before-write" | "this-tick-order" | "command-permission-unused" | "requirement-violated" | "scope-trigger-never-applied";
|
|
224
251
|
readonly message: string;
|
|
225
252
|
readonly subject: string;
|
|
226
253
|
/** What to change to resolve it (or, for `info`, when it is fine as it is). */
|
|
@@ -241,6 +268,8 @@ export interface Description {
|
|
|
241
268
|
}>;
|
|
242
269
|
readonly relations: ReadonlyArray<RelationDescription>;
|
|
243
270
|
readonly machines: ReadonlyArray<MachineDescription>;
|
|
271
|
+
/** Scopes defined through the game, in definition order. */
|
|
272
|
+
readonly scopes: ReadonlyArray<ScopeDescription>;
|
|
244
273
|
readonly services: ReadonlyArray<ServiceDescription>;
|
|
245
274
|
readonly schedules: ReadonlyArray<ScheduleDescription>;
|
|
246
275
|
readonly systems: ReadonlyArray<SystemDescription>;
|
|
@@ -393,7 +422,32 @@ export type Effect = {
|
|
|
393
422
|
readonly entity: number;
|
|
394
423
|
readonly relation: string;
|
|
395
424
|
readonly error: string;
|
|
425
|
+
}
|
|
426
|
+
/** A command skipped because it would leave `component` without `missing` (`Schema.requires`). */
|
|
427
|
+
| {
|
|
428
|
+
readonly kind: "requirementViolated";
|
|
429
|
+
readonly entity: number;
|
|
430
|
+
readonly command: RequirementViolation["command"];
|
|
431
|
+
readonly component: string;
|
|
432
|
+
readonly missing: string;
|
|
396
433
|
};
|
|
434
|
+
/**
|
|
435
|
+
* Commands of one system skipped because applying them would have left a
|
|
436
|
+
* component without one it requires (`Schema.requires`): the
|
|
437
|
+
* `requirement-violated` lint.
|
|
438
|
+
*/
|
|
439
|
+
export interface RequirementViolation {
|
|
440
|
+
readonly system: string;
|
|
441
|
+
readonly command: "spawn" | "insert" | "remove";
|
|
442
|
+
/** The requirer. */
|
|
443
|
+
readonly component: string;
|
|
444
|
+
/** The required component it would have lacked. */
|
|
445
|
+
readonly missing: string;
|
|
446
|
+
/** The last entity it happened to. */
|
|
447
|
+
readonly entity: number;
|
|
448
|
+
/** How many commands were skipped this way. */
|
|
449
|
+
readonly count: number;
|
|
450
|
+
}
|
|
397
451
|
export interface AppliedCommand {
|
|
398
452
|
readonly tag: string;
|
|
399
453
|
readonly system: string;
|
|
@@ -481,8 +535,10 @@ export interface TransitionEvent {
|
|
|
481
535
|
readonly tick: number;
|
|
482
536
|
readonly schedule: string;
|
|
483
537
|
readonly machine: string;
|
|
484
|
-
|
|
485
|
-
readonly
|
|
538
|
+
/** `undefined` when a sub-state starts existing (its parent entered its state). */
|
|
539
|
+
readonly from: Machine.StateValue | undefined;
|
|
540
|
+
/** `undefined` when a sub-state stops existing (its parent left its state). */
|
|
541
|
+
readonly to: Machine.StateValue | undefined;
|
|
486
542
|
/**
|
|
487
543
|
* `applied` committed the new value; `unchanged` was a `setIfChanged` to the
|
|
488
544
|
* current value; `failed` stopped in an exit or transition schedule and was
|