@sharpee/world-model 0.9.107 → 0.9.110

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 (80) hide show
  1. package/constants/directions.d.ts +1 -89
  2. package/constants/directions.d.ts.map +1 -1
  3. package/constants/directions.js +2 -162
  4. package/constants/directions.js.map +1 -1
  5. package/entities/entity-types.d.ts +4 -0
  6. package/entities/entity-types.d.ts.map +1 -1
  7. package/entities/entity-types.js +6 -0
  8. package/entities/entity-types.js.map +1 -1
  9. package/index.d.ts +1 -0
  10. package/index.d.ts.map +1 -1
  11. package/index.js +1 -0
  12. package/index.js.map +1 -1
  13. package/package.json +3 -3
  14. package/traits/combatant/combatantTrait.d.ts +3 -0
  15. package/traits/combatant/combatantTrait.d.ts.map +1 -1
  16. package/traits/combatant/combatantTrait.js +2 -0
  17. package/traits/combatant/combatantTrait.js.map +1 -1
  18. package/traits/concealment/concealedStateTrait.d.ts +59 -0
  19. package/traits/concealment/concealedStateTrait.d.ts.map +1 -0
  20. package/traits/concealment/concealedStateTrait.js +63 -0
  21. package/traits/concealment/concealedStateTrait.js.map +1 -0
  22. package/traits/concealment/concealedVisibilityBehavior.d.ts +27 -0
  23. package/traits/concealment/concealedVisibilityBehavior.d.ts.map +1 -0
  24. package/traits/concealment/concealedVisibilityBehavior.js +44 -0
  25. package/traits/concealment/concealedVisibilityBehavior.js.map +1 -0
  26. package/traits/concealment/concealmentTrait.d.ts +54 -0
  27. package/traits/concealment/concealmentTrait.d.ts.map +1 -0
  28. package/traits/concealment/concealmentTrait.js +58 -0
  29. package/traits/concealment/concealmentTrait.js.map +1 -0
  30. package/traits/concealment/index.d.ts +7 -0
  31. package/traits/concealment/index.d.ts.map +1 -0
  32. package/traits/concealment/index.js +23 -0
  33. package/traits/concealment/index.js.map +1 -0
  34. package/traits/implementations.d.ts +3 -1
  35. package/traits/implementations.d.ts.map +1 -1
  36. package/traits/implementations.js +13 -2
  37. package/traits/implementations.js.map +1 -1
  38. package/traits/index.d.ts +3 -0
  39. package/traits/index.d.ts.map +1 -1
  40. package/traits/index.js +4 -0
  41. package/traits/index.js.map +1 -1
  42. package/traits/region/index.d.ts +6 -0
  43. package/traits/region/index.d.ts.map +1 -0
  44. package/traits/region/index.js +10 -0
  45. package/traits/region/index.js.map +1 -0
  46. package/traits/region/regionTrait.d.ts +49 -0
  47. package/traits/region/regionTrait.d.ts.map +1 -0
  48. package/traits/region/regionTrait.js +43 -0
  49. package/traits/region/regionTrait.js.map +1 -0
  50. package/traits/room/roomBehavior.js +1 -1
  51. package/traits/room/roomBehavior.js.map +1 -1
  52. package/traits/room/roomTrait.d.ts +3 -3
  53. package/traits/room/roomTrait.d.ts.map +1 -1
  54. package/traits/room/roomTrait.js +2 -2
  55. package/traits/room/roomTrait.js.map +1 -1
  56. package/traits/scene/index.d.ts +6 -0
  57. package/traits/scene/index.d.ts.map +1 -0
  58. package/traits/scene/index.js +10 -0
  59. package/traits/scene/index.js.map +1 -0
  60. package/traits/scene/sceneTrait.d.ts +57 -0
  61. package/traits/scene/sceneTrait.d.ts.map +1 -0
  62. package/traits/scene/sceneTrait.js +48 -0
  63. package/traits/scene/sceneTrait.js.map +1 -0
  64. package/traits/story-info/storyInfoTrait.d.ts +1 -1
  65. package/traits/story-info/storyInfoTrait.js +1 -1
  66. package/traits/trait-types.d.ts +4 -0
  67. package/traits/trait-types.d.ts.map +1 -1
  68. package/traits/trait-types.js +10 -1
  69. package/traits/trait-types.js.map +1 -1
  70. package/world/AuthorModel.d.ts +11 -3
  71. package/world/AuthorModel.d.ts.map +1 -1
  72. package/world/AuthorModel.js +32 -4
  73. package/world/AuthorModel.js.map +1 -1
  74. package/world/WorldModel.d.ts +135 -12
  75. package/world/WorldModel.d.ts.map +1 -1
  76. package/world/WorldModel.js +241 -14
  77. package/world/WorldModel.js.map +1 -1
  78. package/world/index.d.ts +1 -1
  79. package/world/index.d.ts.map +1 -1
  80. package/world/index.js.map +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/scene/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SceneTrait = void 0;
4
+ /**
5
+ * Scene trait module (ADR-149).
6
+ * Owner context: @sharpee/world-model — traits / temporal
7
+ */
8
+ var sceneTrait_1 = require("./sceneTrait");
9
+ Object.defineProperty(exports, "SceneTrait", { enumerable: true, get: function () { return sceneTrait_1.SceneTrait; } });
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee/packages/world-model/src/traits/scene/index.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,2CAAkE;AAAzD,wGAAA,UAAU,OAAA"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Scene trait for temporal story phases (ADR-149).
3
+ *
4
+ * Entities with this trait represent named dramatic episodes with
5
+ * begin/end conditions evaluated each turn by the engine. Multiple
6
+ * scenes can be active simultaneously. Scenes can be recurring.
7
+ *
8
+ * Condition closures are NOT serializable. On save/restore, trait
9
+ * data (state, activeTurns, etc.) persists, but stories must
10
+ * re-register conditions after restore.
11
+ *
12
+ * Public interface: SceneTrait, ISceneData, SceneState.
13
+ * Owner context: @sharpee/world-model — traits / temporal
14
+ */
15
+ import { ITrait } from '../trait';
16
+ /** Possible states for a scene lifecycle. */
17
+ export type SceneState = 'waiting' | 'active' | 'ended';
18
+ /**
19
+ * Data interface for SceneTrait construction.
20
+ *
21
+ * @param name - Human-readable scene name (required).
22
+ * @param state - Initial state. Defaults to 'waiting'.
23
+ * @param recurring - Whether the scene can re-activate after ending.
24
+ * @param activeTurns - Turns the scene has been active. Defaults to 0.
25
+ * @param beganAtTurn - Turn number when the scene last began.
26
+ * @param endedAtTurn - Turn number when the scene last ended.
27
+ */
28
+ export interface ISceneData {
29
+ name: string;
30
+ state?: SceneState;
31
+ recurring?: boolean;
32
+ activeTurns?: number;
33
+ beganAtTurn?: number;
34
+ endedAtTurn?: number;
35
+ }
36
+ /**
37
+ * Marks an entity as a temporal scene — a dramatic episode with
38
+ * begin/end conditions polled each turn by the engine.
39
+ */
40
+ export declare class SceneTrait implements ITrait, ISceneData {
41
+ static readonly type: "scene";
42
+ readonly type: "scene";
43
+ /** Human-readable scene name. */
44
+ name: string;
45
+ /** Current lifecycle state. */
46
+ state: SceneState;
47
+ /** Whether the scene can activate more than once. */
48
+ recurring: boolean;
49
+ /** Number of turns the scene has been active (0 if not active). */
50
+ activeTurns: number;
51
+ /** Turn number when the scene last began. */
52
+ beganAtTurn?: number;
53
+ /** Turn number when the scene last ended. */
54
+ endedAtTurn?: number;
55
+ constructor(data: ISceneData);
56
+ }
57
+ //# sourceMappingURL=sceneTrait.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sceneTrait.d.ts","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/scene/sceneTrait.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,6CAA6C;AAC7C,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAExD;;;;;;;;;GASG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,qBAAa,UAAW,YAAW,MAAM,EAAE,UAAU;IACnD,MAAM,CAAC,QAAQ,CAAC,IAAI,UAAmB;IACvC,QAAQ,CAAC,IAAI,UAAmB;IAEhC,iCAAiC;IACjC,IAAI,EAAE,MAAM,CAAC;IAEb,+BAA+B;IAC/B,KAAK,EAAE,UAAU,CAAC;IAElB,qDAAqD;IACrD,SAAS,EAAE,OAAO,CAAC;IAEnB,mEAAmE;IACnE,WAAW,EAAE,MAAM,CAAC;IAEpB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;gBAET,IAAI,EAAE,UAAU;CAQ7B"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ /**
3
+ * Scene trait for temporal story phases (ADR-149).
4
+ *
5
+ * Entities with this trait represent named dramatic episodes with
6
+ * begin/end conditions evaluated each turn by the engine. Multiple
7
+ * scenes can be active simultaneously. Scenes can be recurring.
8
+ *
9
+ * Condition closures are NOT serializable. On save/restore, trait
10
+ * data (state, activeTurns, etc.) persists, but stories must
11
+ * re-register conditions after restore.
12
+ *
13
+ * Public interface: SceneTrait, ISceneData, SceneState.
14
+ * Owner context: @sharpee/world-model — traits / temporal
15
+ */
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.SceneTrait = void 0;
18
+ const trait_types_1 = require("../trait-types");
19
+ /**
20
+ * Marks an entity as a temporal scene — a dramatic episode with
21
+ * begin/end conditions polled each turn by the engine.
22
+ */
23
+ class SceneTrait {
24
+ static type = trait_types_1.TraitType.SCENE;
25
+ type = trait_types_1.TraitType.SCENE;
26
+ /** Human-readable scene name. */
27
+ name;
28
+ /** Current lifecycle state. */
29
+ state;
30
+ /** Whether the scene can activate more than once. */
31
+ recurring;
32
+ /** Number of turns the scene has been active (0 if not active). */
33
+ activeTurns;
34
+ /** Turn number when the scene last began. */
35
+ beganAtTurn;
36
+ /** Turn number when the scene last ended. */
37
+ endedAtTurn;
38
+ constructor(data) {
39
+ this.name = data.name;
40
+ this.state = data.state ?? 'waiting';
41
+ this.recurring = data.recurring ?? false;
42
+ this.activeTurns = data.activeTurns ?? 0;
43
+ this.beganAtTurn = data.beganAtTurn;
44
+ this.endedAtTurn = data.endedAtTurn;
45
+ }
46
+ }
47
+ exports.SceneTrait = SceneTrait;
48
+ //# sourceMappingURL=sceneTrait.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sceneTrait.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee/packages/world-model/src/traits/scene/sceneTrait.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAGH,gDAA2C;AAwB3C;;;GAGG;AACH,MAAa,UAAU;IACrB,MAAM,CAAU,IAAI,GAAG,uBAAS,CAAC,KAAK,CAAC;IAC9B,IAAI,GAAG,uBAAS,CAAC,KAAK,CAAC;IAEhC,iCAAiC;IACjC,IAAI,CAAS;IAEb,+BAA+B;IAC/B,KAAK,CAAa;IAElB,qDAAqD;IACrD,SAAS,CAAU;IAEnB,mEAAmE;IACnE,WAAW,CAAS;IAEpB,6CAA6C;IAC7C,WAAW,CAAU;IAErB,6CAA6C;IAC7C,WAAW,CAAU;IAErB,YAAY,IAAgB;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,SAAS,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IACtC,CAAC;;AA7BH,gCA8BC"}
@@ -1,7 +1,7 @@
1
1
  import { ITrait } from '../trait';
2
2
  /**
3
3
  * StoryInfoTrait stores metadata about the game on a system entity.
4
- * Replaces scattered (world as any).storyConfig / .versionInfo casts.
4
+ * Replaces scattered world['storyConfig'] / world['versionInfo'] casts.
5
5
  *
6
6
  * The entity carrying this trait has no location and is never visible
7
7
  * in the game world. Actions read it via world.findByTrait().
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.StoryInfoTrait = void 0;
5
5
  /**
6
6
  * StoryInfoTrait stores metadata about the game on a system entity.
7
- * Replaces scattered (world as any).storyConfig / .versionInfo casts.
7
+ * Replaces scattered world['storyConfig'] / world['versionInfo'] casts.
8
8
  *
9
9
  * The entity carrying this trait has no location and is never visible
10
10
  * in the game world. Actions read it via world.findByTrait().
@@ -27,6 +27,8 @@ export declare const TraitType: {
27
27
  readonly MOVEABLE_SCENERY: "moveableScenery";
28
28
  readonly DOOR: "door";
29
29
  readonly CLIMBABLE: "climbable";
30
+ readonly REGION: "region";
31
+ readonly SCENE: "scene";
30
32
  readonly ACTOR: "actor";
31
33
  readonly EXIT: "exit";
32
34
  readonly WEAPON: "weapon";
@@ -39,6 +41,8 @@ export declare const TraitType: {
39
41
  readonly CHARACTER_MODEL: "characterModel";
40
42
  readonly VEHICLE: "vehicle";
41
43
  readonly ENTERABLE: "enterable";
44
+ readonly CONCEALMENT: "if.trait.concealment";
45
+ readonly CONCEALED_STATE: "if.trait.concealed_state";
42
46
  readonly STORY_INFO: "storyInfo";
43
47
  };
44
48
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"trait-types.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/traits/trait-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDZ,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,MAAM,OAAO,SAAS,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,aAAa;;;;CAIhB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,SAAS,EAAE,aAAa,CAyD7D,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,SAAS,CAEhE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,GAAG,aAAa,CAE/D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,EAAE,CAIxE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,SAAS,EAAE,CAE9C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,aAAsC,GAAG,IAAI,CAMrH"}
1
+ {"version":3,"file":"trait-types.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/traits/trait-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+DZ,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,MAAM,OAAO,SAAS,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,aAAa;;;;CAIhB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,SAAS,EAAE,aAAa,CA6D7D,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,SAAS,CAEhE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,GAAG,aAAa,CAE/D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,EAAE,CAIxE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,SAAS,EAAE,CAE9C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,aAAsC,GAAG,IAAI,CAMrH"}
@@ -39,6 +39,8 @@ exports.TraitType = {
39
39
  // Spatial traits
40
40
  DOOR: 'door',
41
41
  CLIMBABLE: 'climbable',
42
+ REGION: 'region',
43
+ SCENE: 'scene',
42
44
  // Object property traits
43
45
  // Basic traits
44
46
  ACTOR: 'actor',
@@ -58,6 +60,9 @@ exports.TraitType = {
58
60
  // Transport traits
59
61
  VEHICLE: 'vehicle',
60
62
  ENTERABLE: 'enterable',
63
+ // Concealment traits (ADR-148)
64
+ CONCEALMENT: 'if.trait.concealment',
65
+ CONCEALED_STATE: 'if.trait.concealed_state',
61
66
  // System traits
62
67
  STORY_INFO: 'storyInfo'
63
68
  };
@@ -98,6 +103,8 @@ exports.TRAIT_CATEGORIES = {
98
103
  [exports.TraitType.DOOR]: exports.TraitCategory.STANDARD,
99
104
  [exports.TraitType.CLIMBABLE]: exports.TraitCategory.INTERACTIVE,
100
105
  [exports.TraitType.EXIT]: exports.TraitCategory.STANDARD,
106
+ [exports.TraitType.REGION]: exports.TraitCategory.STANDARD,
107
+ [exports.TraitType.SCENE]: exports.TraitCategory.STANDARD,
101
108
  // Object property
102
109
  // Basic
103
110
  [exports.TraitType.ACTOR]: exports.TraitCategory.STANDARD,
@@ -115,7 +122,9 @@ exports.TRAIT_CATEGORIES = {
115
122
  // Transport traits
116
123
  [exports.TraitType.VEHICLE]: exports.TraitCategory.INTERACTIVE,
117
124
  [exports.TraitType.ENTERABLE]: exports.TraitCategory.INTERACTIVE,
118
- // Scoring traits
125
+ // Concealment traits (ADR-148)
126
+ [exports.TraitType.CONCEALMENT]: exports.TraitCategory.INTERACTIVE,
127
+ [exports.TraitType.CONCEALED_STATE]: exports.TraitCategory.INTERACTIVE,
119
128
  // System traits
120
129
  [exports.TraitType.STORY_INFO]: exports.TraitCategory.STANDARD
121
130
  };
@@ -1 +1 @@
1
- {"version":3,"file":"trait-types.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/trait-types.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAoJH,4CAEC;AAKD,4CAEC;AAKD,kDAIC;AAKD,4CAEC;AAKD,8CAMC;AAtLD;;GAEG;AACU,QAAA,SAAS,GAAG;IACvB,kBAAkB;IAClB,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;IACtB,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAElB,qBAAqB;IACrB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,UAAU;IACpB,YAAY,EAAE,aAAa;IAE3B,sBAAsB;IACtB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,QAAQ;IAChB,gBAAgB,EAAE,iBAAiB;IAEnC,iBAAiB;IACjB,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,WAAW;IAEtB,yBAAyB;IAEzB,eAAe;IACf,KAAK,EAAE,OAAO;IAEd,aAAa;IACb,IAAI,EAAE,MAAM;IAEZ,gBAAgB;IAChB,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,YAAY,EAAE,cAAc;IAC5B,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,UAAU;IAEpB,uBAAuB;IACvB,GAAG,EAAE,KAAK;IACV,cAAc,EAAE,eAAe;IAE/B,4BAA4B;IAC5B,eAAe,EAAE,gBAAgB;IAEjC,mBAAmB;IACnB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IAEtB,gBAAgB;IAChB,UAAU,EAAE,WAAW;CACf,CAAC;AAOX;;GAEG;AACU,QAAA,aAAa,GAAG;IAC3B,QAAQ,EAAE,UAAU;IACpB,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,UAAU;CACZ,CAAC;AAOX;;GAEG;AACU,QAAA,gBAAgB,GAAqC;IAChE,WAAW;IACX,CAAC,iBAAS,CAAC,QAAQ,CAAC,EAAE,qBAAa,CAAC,QAAQ;IAC5C,CAAC,iBAAS,CAAC,SAAS,CAAC,EAAE,qBAAa,CAAC,QAAQ;IAC7C,CAAC,iBAAS,CAAC,SAAS,CAAC,EAAE,qBAAa,CAAC,QAAQ;IAC7C,CAAC,iBAAS,CAAC,IAAI,CAAC,EAAE,qBAAa,CAAC,QAAQ;IACxC,CAAC,iBAAS,CAAC,QAAQ,CAAC,EAAE,qBAAa,CAAC,QAAQ;IAC5C,CAAC,iBAAS,CAAC,QAAQ,CAAC,EAAE,qBAAa,CAAC,QAAQ;IAC5C,CAAC,iBAAS,CAAC,MAAM,CAAC,EAAE,qBAAa,CAAC,QAAQ;IAC1C,CAAC,iBAAS,CAAC,OAAO,CAAC,EAAE,qBAAa,CAAC,QAAQ;IAE3C,cAAc;IACd,CAAC,iBAAS,CAAC,QAAQ,CAAC,EAAE,qBAAa,CAAC,WAAW;IAC/C,CAAC,iBAAS,CAAC,QAAQ,CAAC,EAAE,qBAAa,CAAC,WAAW;IAC/C,CAAC,iBAAS,CAAC,UAAU,CAAC,EAAE,qBAAa,CAAC,WAAW;IACjD,CAAC,iBAAS,CAAC,QAAQ,CAAC,EAAE,qBAAa,CAAC,WAAW;IAC/C,CAAC,iBAAS,CAAC,YAAY,CAAC,EAAE,qBAAa,CAAC,WAAW;IAEnD,eAAe;IACf,CAAC,iBAAS,CAAC,QAAQ,CAAC,EAAE,qBAAa,CAAC,WAAW;IAC/C,CAAC,iBAAS,CAAC,QAAQ,CAAC,EAAE,qBAAa,CAAC,WAAW;IAC/C,CAAC,iBAAS,CAAC,QAAQ,CAAC,EAAE,qBAAa,CAAC,WAAW;IAC/C,CAAC,iBAAS,CAAC,MAAM,CAAC,EAAE,qBAAa,CAAC,WAAW;IAC7C,CAAC,iBAAS,CAAC,gBAAgB,CAAC,EAAE,qBAAa,CAAC,WAAW;IAEvD,UAAU;IACV,CAAC,iBAAS,CAAC,IAAI,CAAC,EAAE,qBAAa,CAAC,QAAQ;IACxC,CAAC,iBAAS,CAAC,SAAS,CAAC,EAAE,qBAAa,CAAC,WAAW;IAChD,CAAC,iBAAS,CAAC,IAAI,CAAC,EAAE,qBAAa,CAAC,QAAQ;IAExC,kBAAkB;IAElB,QAAQ;IACR,CAAC,iBAAS,CAAC,KAAK,CAAC,EAAE,qBAAa,CAAC,QAAQ;IAEzC,SAAS;IACT,CAAC,iBAAS,CAAC,MAAM,CAAC,EAAE,qBAAa,CAAC,WAAW;IAC7C,CAAC,iBAAS,CAAC,SAAS,CAAC,EAAE,qBAAa,CAAC,WAAW;IAChD,CAAC,iBAAS,CAAC,YAAY,CAAC,EAAE,qBAAa,CAAC,WAAW;IACnD,CAAC,iBAAS,CAAC,SAAS,CAAC,EAAE,qBAAa,CAAC,WAAW;IAChD,CAAC,iBAAS,CAAC,QAAQ,CAAC,EAAE,qBAAa,CAAC,WAAW;IAE/C,aAAa;IACb,CAAC,iBAAS,CAAC,GAAG,CAAC,EAAE,qBAAa,CAAC,QAAQ;IACvC,CAAC,iBAAS,CAAC,cAAc,CAAC,EAAE,qBAAa,CAAC,QAAQ;IAElD,4BAA4B;IAC5B,CAAC,iBAAS,CAAC,eAAe,CAAC,EAAE,qBAAa,CAAC,QAAQ;IAEnD,mBAAmB;IACnB,CAAC,iBAAS,CAAC,OAAO,CAAC,EAAE,qBAAa,CAAC,WAAW;IAC9C,CAAC,iBAAS,CAAC,SAAS,CAAC,EAAE,qBAAa,CAAC,WAAW;IAEhD,iBAAiB;IAEjB,gBAAgB;IAChB,CAAC,iBAAS,CAAC,UAAU,CAAC,EAAE,qBAAa,CAAC,QAAQ;CAC/C,CAAC;AAEF;;GAEG;AACH,SAAgB,gBAAgB,CAAC,IAAY;IAC3C,OAAO,MAAM,CAAC,MAAM,CAAC,iBAAS,CAAC,CAAC,QAAQ,CAAC,IAAiB,CAAC,CAAC;AAC9D,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,IAAe;IAC9C,OAAO,wBAAgB,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CAAC,QAAuB;IACzD,OAAO,MAAM,CAAC,OAAO,CAAC,wBAAgB,CAAC;SACpC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,QAAQ,CAAC;SACtC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAiB,CAAC,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB;IAC9B,OAAO,MAAM,CAAC,MAAM,CAAC,iBAAS,CAAC,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB,CAAC,IAAY,EAAE,KAAa,EAAE,WAA0B,qBAAa,CAAC,QAAQ;IAC7G,6DAA6D;IAC5D,iBAAoC,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;IAEpD,oBAAoB;IACpB,wBAAgB,CAAC,KAAkB,CAAC,GAAG,QAAQ,CAAC;AAClD,CAAC"}
1
+ {"version":3,"file":"trait-types.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/trait-types.ts"],"names":[],"mappings":"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"}
@@ -13,12 +13,11 @@ import { TraitType } from '../traits/trait-types';
13
13
  import { SpatialIndex } from './SpatialIndex';
14
14
  import { ITrait } from '../traits/trait';
15
15
  import { ICapabilityStore } from './capabilities';
16
- import type { IWorldModel, EventHandler, EventValidator, EventPreviewer, EventChainHandler, ChainEventOptions } from './WorldModel';
16
+ import type { IWorldModel, EventHandler, EventValidator, EventPreviewer, EventChainHandler, ChainEventOptions, RegionOptions, RegionCrossings, SceneOptions, SceneConditions } from './WorldModel';
17
17
  import type { ScoreEntry } from './ScoreLedger';
18
18
  import type { ISemanticEvent } from "../../core/index";
19
19
  import type { WorldState, ContentsOptions, WorldChange, IEventProcessorWiring, GamePrompt, IGrammarVocabularyProvider } from "../../if-domain/index";
20
20
  import type { DirectionType } from '../constants/directions';
21
- import { DirectionVocabularyRegistry } from '../constants/directions';
22
21
  import type { ScopeRegistry } from '../scope/scope-registry';
23
22
  import type { IScopeRule } from '../scope/scope-rule';
24
23
  import type { ICapabilityData, ICapabilityRegistration } from './capabilities';
@@ -121,6 +120,16 @@ export declare class AuthorModel implements IWorldModel {
121
120
  isLocked?: boolean;
122
121
  keyId?: string;
123
122
  }): IFEntity;
123
+ createRegion(id: string, options: RegionOptions): IFEntity;
124
+ assignRoom(roomId: string, regionId: string): void;
125
+ isInRegion(entityId: string, regionId: string): boolean;
126
+ getRegionCrossings(fromRoomId: string, toRoomId: string): RegionCrossings;
127
+ createScene(id: string, options: SceneOptions): IFEntity;
128
+ getSceneConditions(sceneId: string): SceneConditions | undefined;
129
+ getAllSceneConditions(): Map<string, SceneConditions>;
130
+ isSceneActive(sceneId: string): boolean;
131
+ hasSceneEnded(sceneId: string): boolean;
132
+ hasSceneHappened(sceneId: string): boolean;
124
133
  registerCapability(name: string, registration: Partial<ICapabilityRegistration>): void;
125
134
  updateCapability(name: string, data: Partial<ICapabilityData>): void;
126
135
  getCapability(name: string): ICapabilityData | undefined;
@@ -152,7 +161,6 @@ export declare class AuthorModel implements IWorldModel {
152
161
  removeScopeRule(ruleId: string): boolean;
153
162
  evaluateScope(actorId: string, actionId?: string): string[];
154
163
  getGrammarVocabularyProvider(): IGrammarVocabularyProvider;
155
- directions(): DirectionVocabularyRegistry;
156
164
  /**
157
165
  * Move multiple entities to a container in one operation.
158
166
  */
@@ -1 +1 @@
1
- {"version":3,"file":"AuthorModel.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/world/AuthorModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuthorModel.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/world/AuthorModel.ts"],"names":[],"mappings":"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"}
@@ -182,6 +182,38 @@ class AuthorModel {
182
182
  createDoor(displayName, opts) {
183
183
  return this.worldModel.createDoor(displayName, opts);
184
184
  }
185
+ // Region Management (ADR-149)
186
+ createRegion(id, options) {
187
+ return this.worldModel.createRegion(id, options);
188
+ }
189
+ assignRoom(roomId, regionId) {
190
+ this.worldModel.assignRoom(roomId, regionId);
191
+ }
192
+ isInRegion(entityId, regionId) {
193
+ return this.worldModel.isInRegion(entityId, regionId);
194
+ }
195
+ getRegionCrossings(fromRoomId, toRoomId) {
196
+ return this.worldModel.getRegionCrossings(fromRoomId, toRoomId);
197
+ }
198
+ // Scene Management (ADR-149)
199
+ createScene(id, options) {
200
+ return this.worldModel.createScene(id, options);
201
+ }
202
+ getSceneConditions(sceneId) {
203
+ return this.worldModel.getSceneConditions(sceneId);
204
+ }
205
+ getAllSceneConditions() {
206
+ return this.worldModel.getAllSceneConditions();
207
+ }
208
+ isSceneActive(sceneId) {
209
+ return this.worldModel.isSceneActive(sceneId);
210
+ }
211
+ hasSceneEnded(sceneId) {
212
+ return this.worldModel.hasSceneEnded(sceneId);
213
+ }
214
+ hasSceneHappened(sceneId) {
215
+ return this.worldModel.hasSceneHappened(sceneId);
216
+ }
185
217
  // Capability Management
186
218
  registerCapability(name, registration) {
187
219
  this.worldModel.registerCapability(name, registration);
@@ -281,10 +313,6 @@ class AuthorModel {
281
313
  getGrammarVocabularyProvider() {
282
314
  return this.worldModel.getGrammarVocabularyProvider();
283
315
  }
284
- // Direction Vocabulary (ADR-143)
285
- directions() {
286
- return this.worldModel.directions();
287
- }
288
316
  // ========== Author-Only Convenience Methods ==========
289
317
  /**
290
318
  * Move multiple entities to a container in one operation.
@@ -1 +1 @@
1
- {"version":3,"file":"AuthorModel.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/world/AuthorModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuthorModel.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/world/AuthorModel.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { IFEntity } from '../entities/if-entity';
2
2
  import { TraitType } from '../traits/trait-types';
3
- import { DirectionType, DirectionVocabularyRegistry } from '../constants/directions';
3
+ import { DirectionType } from '../constants/directions';
4
4
  import { ISemanticEvent, ISemanticEventSource } from "../../core/index";
5
5
  import { IDataStore } from './AuthorModel';
6
6
  import { ICapabilityData, ICapabilityRegistration } from './capabilities';
@@ -10,6 +10,43 @@ import { IScopeRule } from '../scope/scope-rule';
10
10
  import { EventHandler, EventValidator, EventPreviewer, EventChainHandler, ChainEventOptions } from './WorldEventSystem';
11
11
  export type { EventHandler, EventValidator, EventPreviewer, EventChainHandler, ChainEventOptions };
12
12
  export { WorldState, WorldConfig, ContentsOptions, WorldChange } from "../../if-domain/index";
13
+ export interface RegionOptions {
14
+ /** Human-readable region name. */
15
+ name: string;
16
+ /** Parent region entity ID for nesting. */
17
+ parentRegionId?: string;
18
+ /** Region-wide ambient sound. */
19
+ ambientSound?: string;
20
+ /** Region-wide ambient smell. */
21
+ ambientSmell?: string;
22
+ /** Whether rooms in this region default to dark. */
23
+ defaultDark?: boolean;
24
+ }
25
+ export interface SceneOptions {
26
+ /** Human-readable scene name. */
27
+ name: string;
28
+ /** Returns true when the scene should begin. Evaluated each turn when state is 'waiting'. */
29
+ begin: (world: IWorldModel) => boolean;
30
+ /** Returns true when the scene should end. Evaluated each turn when state is 'active'. */
31
+ end: (world: IWorldModel) => boolean;
32
+ /** Whether the scene can activate more than once. Default: false. */
33
+ recurring?: boolean;
34
+ }
35
+ /** Stored condition closures for a scene (not serializable). */
36
+ export interface SceneConditions {
37
+ begin: (world: IWorldModel) => boolean;
38
+ end: (world: IWorldModel) => boolean;
39
+ }
40
+ /**
41
+ * Result of comparing region hierarchies for two rooms (ADR-149).
42
+ *
43
+ * @param exited - Region IDs exited, innermost first.
44
+ * @param entered - Region IDs entered, outermost first.
45
+ */
46
+ export interface RegionCrossings {
47
+ exited: string[];
48
+ entered: string[];
49
+ }
13
50
  import { ScoreEntry } from './ScoreLedger';
14
51
  export { ScoreEntry } from './ScoreLedger';
15
52
  export interface IWorldModel {
@@ -62,6 +99,16 @@ export interface IWorldModel {
62
99
  isLocked?: boolean;
63
100
  keyId?: string;
64
101
  }): IFEntity;
102
+ createRegion(id: string, options: RegionOptions): IFEntity;
103
+ assignRoom(roomId: string, regionId: string): void;
104
+ isInRegion(entityId: string, regionId: string): boolean;
105
+ getRegionCrossings(fromRoomId: string, toRoomId: string): RegionCrossings;
106
+ createScene(id: string, options: SceneOptions): IFEntity;
107
+ getSceneConditions(sceneId: string): SceneConditions | undefined;
108
+ getAllSceneConditions(): Map<string, SceneConditions>;
109
+ isSceneActive(sceneId: string): boolean;
110
+ hasSceneEnded(sceneId: string): boolean;
111
+ hasSceneHappened(sceneId: string): boolean;
65
112
  awardScore(id: string, points: number, description: string): boolean;
66
113
  revokeScore(id: string): boolean;
67
114
  hasScore(id: string): boolean;
@@ -102,7 +149,6 @@ export interface IWorldModel {
102
149
  removeScopeRule(ruleId: string): boolean;
103
150
  evaluateScope(actorId: string, actionId?: string): string[];
104
151
  getGrammarVocabularyProvider(): IGrammarVocabularyProvider;
105
- directions(): DirectionVocabularyRegistry;
106
152
  }
107
153
  export declare class WorldModel implements IWorldModel {
108
154
  private entities;
@@ -112,6 +158,7 @@ export declare class WorldModel implements IWorldModel {
112
158
  private config;
113
159
  private capabilities;
114
160
  private scoreLedger;
161
+ private sceneConditions;
115
162
  private idCounters;
116
163
  private eventSystem;
117
164
  private serializer;
@@ -119,7 +166,6 @@ export declare class WorldModel implements IWorldModel {
119
166
  private scopeRegistry;
120
167
  private scopeEvaluator;
121
168
  private grammarVocabularyProvider;
122
- private directionVocabularyRegistry;
123
169
  constructor(config?: WorldConfig, platformEvents?: ISemanticEventSource);
124
170
  private emitPlatformEvent;
125
171
  registerCapability(name: string, registration?: Partial<ICapabilityRegistration>): void;
@@ -184,15 +230,6 @@ export declare class WorldModel implements IWorldModel {
184
230
  getDataStore(): IDataStore;
185
231
  getScopeRegistry(): ScopeRegistry;
186
232
  getGrammarVocabularyProvider(): IGrammarVocabularyProvider;
187
- /**
188
- * Access the direction vocabulary registry.
189
- *
190
- * Stories call this to override direction words from a single point:
191
- * ```
192
- * world.directions().useVocabulary('naval');
193
- * ```
194
- */
195
- directions(): DirectionVocabularyRegistry;
196
233
  addScopeRule(rule: IScopeRule): void;
197
234
  removeScopeRule(ruleId: string): boolean;
198
235
  evaluateScope(actorId: string, actionId?: string): string[];
@@ -268,5 +305,91 @@ export declare class WorldModel implements IWorldModel {
268
305
  isLocked?: boolean;
269
306
  keyId?: string;
270
307
  }): IFEntity;
308
+ /**
309
+ * Creates a region entity with RegionTrait atomically.
310
+ *
311
+ * @param id - Explicit entity ID for the region (e.g., 'reg-underground').
312
+ * Must be unique; throws if already exists.
313
+ * @param options - Region configuration.
314
+ * @returns The created region entity.
315
+ */
316
+ createRegion(id: string, options: RegionOptions): IFEntity;
317
+ /**
318
+ * Assigns a room to a region by setting RoomTrait.regionId.
319
+ *
320
+ * @param roomId - ID of the room entity.
321
+ * @param regionId - ID of the region entity (must exist and have RegionTrait).
322
+ * @throws If room not found, region not found, or types are wrong.
323
+ */
324
+ assignRoom(roomId: string, regionId: string): void;
325
+ /**
326
+ * Tests whether an entity (or its containing room) is in a region,
327
+ * traversing the parent region hierarchy.
328
+ *
329
+ * @param entityId - The entity to test. If it's a room, checks its regionId.
330
+ * Otherwise, resolves the entity's containing room first.
331
+ * @param regionId - The region to test membership against.
332
+ * @returns true if the entity is in the region or any child of it.
333
+ */
334
+ isInRegion(entityId: string, regionId: string): boolean;
335
+ /**
336
+ * Computes which regions are exited and entered when moving between rooms.
337
+ * Exit list is innermost-first; entry list is outermost-first.
338
+ *
339
+ * @param fromRoomId - The source room entity ID.
340
+ * @param toRoomId - The destination room entity ID.
341
+ * @returns Region IDs exited and entered. Both empty if same region or no regions.
342
+ */
343
+ getRegionCrossings(fromRoomId: string, toRoomId: string): RegionCrossings;
344
+ /**
345
+ * Builds the ancestry chain for a region: [self, parent, grandparent, ...].
346
+ * Returns empty array if regionId is undefined or not found.
347
+ */
348
+ private getRegionAncestry;
349
+ /**
350
+ * Checks whether a region ancestry chain includes a target region.
351
+ */
352
+ private regionAncestryIncludes;
353
+ /**
354
+ * Creates a scene entity with SceneTrait and registers condition closures.
355
+ *
356
+ * @param id - Explicit entity ID (e.g., 'scene-flood'). Must be unique.
357
+ * @param options - Scene name, begin/end conditions, recurring flag.
358
+ * @returns The created scene entity.
359
+ */
360
+ createScene(id: string, options: SceneOptions): IFEntity;
361
+ /**
362
+ * Retrieves the condition closures for a scene.
363
+ * Returns undefined if the scene has no registered conditions
364
+ * (e.g., after save/restore before re-registration).
365
+ *
366
+ * @param sceneId - The scene entity ID.
367
+ */
368
+ getSceneConditions(sceneId: string): SceneConditions | undefined;
369
+ /**
370
+ * Returns all registered scene conditions. Used by the engine's
371
+ * scene evaluation phase to iterate over scenes each turn.
372
+ */
373
+ getAllSceneConditions(): Map<string, SceneConditions>;
374
+ /**
375
+ * Returns true if the scene is currently in the 'active' state.
376
+ *
377
+ * @param sceneId - The scene entity ID.
378
+ */
379
+ isSceneActive(sceneId: string): boolean;
380
+ /**
381
+ * Returns true if the scene has reached the 'ended' state.
382
+ * For recurring scenes, this is true only while in the 'ended' state
383
+ * (resets to 'waiting' when the scene re-activates).
384
+ *
385
+ * @param sceneId - The scene entity ID.
386
+ */
387
+ hasSceneEnded(sceneId: string): boolean;
388
+ /**
389
+ * Returns true if the scene has ever been active (beganAtTurn is set).
390
+ *
391
+ * @param sceneId - The scene entity ID.
392
+ */
393
+ hasSceneHappened(sceneId: string): boolean;
271
394
  }
272
395
  //# sourceMappingURL=WorldModel.d.ts.map