@sharpee/world-model 0.9.95 → 0.9.96
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/behaviors/attack.d.ts.map +1 -1
- package/behaviors/attack.js +7 -5
- package/behaviors/attack.js.map +1 -1
- package/entities/if-entity.d.ts +6 -8
- package/entities/if-entity.d.ts.map +1 -1
- package/entities/if-entity.js +39 -15
- package/entities/if-entity.js.map +1 -1
- package/events/types.d.ts +7 -30
- package/events/types.d.ts.map +1 -1
- package/events/types.js +4 -3
- package/events/types.js.map +1 -1
- package/examples/event-handler-registration.d.ts.map +1 -1
- package/examples/event-handler-registration.js +6 -4
- package/examples/event-handler-registration.js.map +1 -1
- package/index.d.ts +0 -1
- package/index.d.ts.map +1 -1
- package/index.js +0 -2
- package/index.js.map +1 -1
- package/package.json +3 -3
- package/scope/scope-evaluator.d.ts +13 -3
- package/scope/scope-evaluator.d.ts.map +1 -1
- package/scope/scope-evaluator.js +15 -5
- package/scope/scope-evaluator.js.map +1 -1
- package/services/index.d.ts +0 -1
- package/services/index.d.ts.map +1 -1
- package/services/index.js +3 -4
- package/services/index.js.map +1 -1
- package/traits/container/containerTrait.d.ts +6 -0
- package/traits/container/containerTrait.d.ts.map +1 -1
- package/traits/container/containerTrait.js +12 -0
- package/traits/container/containerTrait.js.map +1 -1
- package/traits/edible/edibleBehavior.d.ts +0 -5
- package/traits/edible/edibleBehavior.d.ts.map +1 -1
- package/traits/edible/edibleBehavior.js +7 -38
- package/traits/edible/edibleBehavior.js.map +1 -1
- package/traits/edible/edibleTrait.d.ts +5 -6
- package/traits/edible/edibleTrait.d.ts.map +1 -1
- package/traits/edible/edibleTrait.js +4 -7
- package/traits/edible/edibleTrait.js.map +1 -1
- package/traits/implementations.d.ts +2 -1
- package/traits/implementations.d.ts.map +1 -1
- package/traits/implementations.js +4 -1
- package/traits/implementations.js.map +1 -1
- package/traits/index.d.ts +1 -0
- package/traits/index.d.ts.map +1 -1
- package/traits/index.js +1 -0
- package/traits/index.js.map +1 -1
- package/traits/light-source/lightSourceTrait.d.ts +4 -0
- package/traits/light-source/lightSourceTrait.d.ts.map +1 -1
- package/traits/light-source/lightSourceTrait.js +4 -0
- package/traits/light-source/lightSourceTrait.js.map +1 -1
- package/traits/open-inventory/index.d.ts +2 -0
- package/traits/open-inventory/index.d.ts.map +1 -0
- package/traits/open-inventory/index.js +6 -0
- package/traits/open-inventory/index.js.map +1 -0
- package/traits/open-inventory/openInventoryTrait.d.ts +30 -0
- package/traits/open-inventory/openInventoryTrait.d.ts.map +1 -0
- package/traits/open-inventory/openInventoryTrait.js +38 -0
- package/traits/open-inventory/openInventoryTrait.js.map +1 -0
- package/traits/openable/openableTrait.d.ts +6 -0
- package/traits/openable/openableTrait.d.ts.map +1 -1
- package/traits/openable/openableTrait.js +4 -0
- package/traits/openable/openableTrait.js.map +1 -1
- package/traits/room/index.d.ts +1 -1
- package/traits/room/index.d.ts.map +1 -1
- package/traits/room/index.js.map +1 -1
- package/traits/switchable/switchableTrait.d.ts +6 -0
- package/traits/switchable/switchableTrait.d.ts.map +1 -1
- package/traits/switchable/switchableTrait.js +4 -0
- package/traits/switchable/switchableTrait.js.map +1 -1
- package/traits/trait-types.d.ts +1 -0
- package/traits/trait-types.d.ts.map +1 -1
- package/traits/trait-types.js +3 -1
- package/traits/trait-types.js.map +1 -1
- package/world/AuthorModel.d.ts.map +1 -1
- package/world/AuthorModel.js +6 -5
- package/world/AuthorModel.js.map +1 -1
- package/world/VisibilityBehavior.d.ts +22 -5
- package/world/VisibilityBehavior.d.ts.map +1 -1
- package/world/VisibilityBehavior.js +70 -125
- package/world/VisibilityBehavior.js.map +1 -1
- package/world/WorldModel.d.ts.map +1 -1
- package/world/WorldModel.js +12 -8
- package/world/WorldModel.js.map +1 -1
|
@@ -20,6 +20,10 @@ export interface IOpenableData {
|
|
|
20
20
|
openSound?: string;
|
|
21
21
|
/** Sound made when closing */
|
|
22
22
|
closeSound?: string;
|
|
23
|
+
/** Description when open (used by computed description getter on IFEntity) */
|
|
24
|
+
openDescription?: string;
|
|
25
|
+
/** Description when closed (used by computed description getter on IFEntity) */
|
|
26
|
+
closedDescription?: string;
|
|
23
27
|
}
|
|
24
28
|
/**
|
|
25
29
|
* Openable trait for entities that can be opened and closed.
|
|
@@ -41,6 +45,8 @@ export declare class OpenableTrait implements ITrait, IOpenableData {
|
|
|
41
45
|
canClose: boolean;
|
|
42
46
|
openSound?: string;
|
|
43
47
|
closeSound?: string;
|
|
48
|
+
openDescription?: string;
|
|
49
|
+
closedDescription?: string;
|
|
44
50
|
constructor(data?: IOpenableData);
|
|
45
51
|
}
|
|
46
52
|
//# sourceMappingURL=openableTrait.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openableTrait.d.ts","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/openable/openableTrait.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,MAAM,WAAW,aAAa;IAC5B,2CAA2C;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB,qCAAqC;IACrC,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,uCAAuC;IACvC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,yCAAyC;IACzC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,wDAAwD;IACxD,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,8BAA8B;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"openableTrait.d.ts","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/openable/openableTrait.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,MAAM,WAAW,aAAa;IAC5B,2CAA2C;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB,qCAAqC;IACrC,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,uCAAuC;IACvC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,yCAAyC;IACzC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,wDAAwD;IACxD,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,8BAA8B;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,8EAA8E;IAC9E,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,gFAAgF;IAChF,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;GAMG;AACH,qBAAa,aAAc,YAAW,MAAM,EAAE,aAAa;IACzD,MAAM,CAAC,QAAQ,CAAC,IAAI,aAAsB;IAC1C,QAAQ,CAAC,IAAI,aAAsB;IAGnC,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;gBAEf,IAAI,GAAE,aAAkB;CAerC"}
|
|
@@ -24,6 +24,8 @@ class OpenableTrait {
|
|
|
24
24
|
canClose;
|
|
25
25
|
openSound;
|
|
26
26
|
closeSound;
|
|
27
|
+
openDescription;
|
|
28
|
+
closedDescription;
|
|
27
29
|
constructor(data = {}) {
|
|
28
30
|
// Set defaults and merge with provided data
|
|
29
31
|
this.startsOpen = data.startsOpen ?? false;
|
|
@@ -36,6 +38,8 @@ class OpenableTrait {
|
|
|
36
38
|
this.canClose = data.canClose ?? true;
|
|
37
39
|
this.openSound = data.openSound;
|
|
38
40
|
this.closeSound = data.closeSound;
|
|
41
|
+
this.openDescription = data.openDescription;
|
|
42
|
+
this.closedDescription = data.closedDescription;
|
|
39
43
|
}
|
|
40
44
|
}
|
|
41
45
|
exports.OpenableTrait = OpenableTrait;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openableTrait.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee/packages/world-model/src/traits/openable/openableTrait.ts"],"names":[],"mappings":";AAAA,4DAA4D;;;AAG5D,gDAA2C;
|
|
1
|
+
{"version":3,"file":"openableTrait.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee/packages/world-model/src/traits/openable/openableTrait.ts"],"names":[],"mappings":";AAAA,4DAA4D;;;AAG5D,gDAA2C;AAwC3C;;;;;;GAMG;AACH,MAAa,aAAa;IACxB,MAAM,CAAU,IAAI,GAAG,uBAAS,CAAC,QAAQ,CAAC;IACjC,IAAI,GAAG,uBAAS,CAAC,QAAQ,CAAC;IAEnC,0BAA0B;IAC1B,MAAM,CAAU;IAChB,UAAU,CAAU;IACpB,WAAW,CAAU;IACrB,YAAY,CAAU;IACtB,kBAAkB,CAAU;IAC5B,oBAAoB,CAAU;IAC9B,eAAe,CAAU;IACzB,QAAQ,CAAU;IAClB,SAAS,CAAU;IACnB,UAAU,CAAU;IACpB,eAAe,CAAU;IACzB,iBAAiB,CAAU;IAE3B,YAAY,OAAsB,EAAE;QAClC,4CAA4C;QAC5C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC;QAClD,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACtD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC;QACpD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAC5C,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;IAClD,CAAC;;AAhCH,sCAiCC"}
|
package/traits/room/index.d.ts
CHANGED
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
* Exports both the trait and behavior for rooms.
|
|
5
5
|
* Rooms are special entities that represent locations in the game world.
|
|
6
6
|
*/
|
|
7
|
-
export { RoomTrait } from './roomTrait';
|
|
7
|
+
export { RoomTrait, IExitInfo } from './roomTrait';
|
|
8
8
|
export { RoomBehavior } from './roomBehavior';
|
|
9
9
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/room/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/room/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
|
package/traits/room/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee/packages/world-model/src/traits/room/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee/packages/world-model/src/traits/room/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,yCAAmD;AAA1C,sGAAA,SAAS,OAAA;AAClB,+CAA8C;AAArC,4GAAA,YAAY,OAAA"}
|
|
@@ -30,6 +30,10 @@ export interface ISwitchableData {
|
|
|
30
30
|
autoOffTime?: number;
|
|
31
31
|
/** Turns remaining before auto-off */
|
|
32
32
|
autoOffCounter?: number;
|
|
33
|
+
/** Description when switched on (used by computed description getter on IFEntity) */
|
|
34
|
+
onDescription?: string;
|
|
35
|
+
/** Description when switched off (used by computed description getter on IFEntity) */
|
|
36
|
+
offDescription?: string;
|
|
33
37
|
}
|
|
34
38
|
/**
|
|
35
39
|
* Switchable trait for entities that can be turned on and off.
|
|
@@ -56,6 +60,8 @@ export declare class SwitchableTrait implements ITrait, ISwitchableData {
|
|
|
56
60
|
runningSound?: string;
|
|
57
61
|
autoOffTime: number;
|
|
58
62
|
autoOffCounter: number;
|
|
63
|
+
onDescription?: string;
|
|
64
|
+
offDescription?: string;
|
|
59
65
|
constructor(data?: ISwitchableData);
|
|
60
66
|
}
|
|
61
67
|
//# sourceMappingURL=switchableTrait.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switchableTrait.d.ts","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/switchable/switchableTrait.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,MAAM,WAAW,eAAe;IAC9B,yCAAyC;IACzC,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,mCAAmC;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,6CAA6C;IAC7C,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,qCAAqC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,qCAAqC;IACrC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,sCAAsC;IACtC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,6CAA6C;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,gCAAgC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,gDAAgD;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,sCAAsC;IACtC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;GAMG;AACH,qBAAa,eAAgB,YAAW,MAAM,EAAE,eAAe;IAC7D,MAAM,CAAC,QAAQ,CAAC,IAAI,eAAwB;IAC5C,QAAQ,CAAC,IAAI,eAAwB;IAGrC,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"switchableTrait.d.ts","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/switchable/switchableTrait.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,MAAM,WAAW,eAAe;IAC9B,yCAAyC;IACzC,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,mCAAmC;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,6CAA6C;IAC7C,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,qCAAqC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,qCAAqC;IACrC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,sCAAsC;IACtC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,6CAA6C;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,gCAAgC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,gDAAgD;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,sCAAsC;IACtC,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,qFAAqF;IACrF,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,sFAAsF;IACtF,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;GAMG;AACH,qBAAa,eAAgB,YAAW,MAAM,EAAE,eAAe;IAC7D,MAAM,CAAC,QAAQ,CAAC,IAAI,eAAwB;IAC5C,QAAQ,CAAC,IAAI,eAAwB;IAGrC,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;gBAEZ,IAAI,GAAE,eAAoB;CAoBvC"}
|
|
@@ -29,6 +29,8 @@ class SwitchableTrait {
|
|
|
29
29
|
runningSound;
|
|
30
30
|
autoOffTime;
|
|
31
31
|
autoOffCounter;
|
|
32
|
+
onDescription;
|
|
33
|
+
offDescription;
|
|
32
34
|
constructor(data = {}) {
|
|
33
35
|
// Set defaults and merge with provided data
|
|
34
36
|
this.startsOn = data.startsOn ?? false;
|
|
@@ -46,6 +48,8 @@ class SwitchableTrait {
|
|
|
46
48
|
this.runningSound = data.runningSound;
|
|
47
49
|
this.autoOffTime = data.autoOffTime ?? 0;
|
|
48
50
|
this.autoOffCounter = data.autoOffCounter ?? (this.isOn && this.autoOffTime > 0 ? this.autoOffTime : 0);
|
|
51
|
+
this.onDescription = data.onDescription;
|
|
52
|
+
this.offDescription = data.offDescription;
|
|
49
53
|
}
|
|
50
54
|
}
|
|
51
55
|
exports.SwitchableTrait = SwitchableTrait;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switchableTrait.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee/packages/world-model/src/traits/switchable/switchableTrait.ts"],"names":[],"mappings":";AAAA,gEAAgE;;;AAGhE,gDAA2C;
|
|
1
|
+
{"version":3,"file":"switchableTrait.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee/packages/world-model/src/traits/switchable/switchableTrait.ts"],"names":[],"mappings":";AAAA,gEAAgE;;;AAGhE,gDAA2C;AAuD3C;;;;;;GAMG;AACH,MAAa,eAAe;IAC1B,MAAM,CAAU,IAAI,GAAG,uBAAS,CAAC,UAAU,CAAC;IACnC,IAAI,GAAG,uBAAS,CAAC,UAAU,CAAC;IAErC,4BAA4B;IAC5B,IAAI,CAAU;IACd,QAAQ,CAAU;IAClB,gBAAgB,CAAS;IACzB,aAAa,CAAU;IACvB,QAAQ,CAAU;IAClB,SAAS,CAAU;IACnB,UAAU,CAAU;IACpB,gBAAgB,CAAU;IAC1B,iBAAiB,CAAU;IAC3B,cAAc,CAAU;IACxB,OAAO,CAAU;IACjB,QAAQ,CAAU;IAClB,YAAY,CAAU;IACtB,WAAW,CAAS;IACpB,cAAc,CAAS;IACvB,aAAa,CAAU;IACvB,cAAc,CAAU;IAExB,YAAY,OAAwB,EAAE;QACpC,4CAA4C;QAC5C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC;QACvC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,KAAK,CAAC;QACjD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;QACtC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC9C,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAChD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC1C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QACxC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;IAC5C,CAAC;;AA1CH,0CA2CC"}
|
package/traits/trait-types.d.ts
CHANGED
|
@@ -35,6 +35,7 @@ export declare const TraitType: {
|
|
|
35
35
|
readonly COMBATANT: "combatant";
|
|
36
36
|
readonly EQUIPPED: "equipped";
|
|
37
37
|
readonly NPC: "npc";
|
|
38
|
+
readonly OPEN_INVENTORY: "openInventory";
|
|
38
39
|
readonly VEHICLE: "vehicle";
|
|
39
40
|
readonly ENTERABLE: "enterable";
|
|
40
41
|
readonly STORY_INFO: "storyInfo";
|
|
@@ -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
|
|
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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsDZ,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,CAsD7D,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"}
|
package/traits/trait-types.js
CHANGED
|
@@ -52,6 +52,7 @@ exports.TraitType = {
|
|
|
52
52
|
EQUIPPED: 'equipped',
|
|
53
53
|
// NPC traits (ADR-070)
|
|
54
54
|
NPC: 'npc',
|
|
55
|
+
OPEN_INVENTORY: 'openInventory',
|
|
55
56
|
// Transport traits
|
|
56
57
|
VEHICLE: 'vehicle',
|
|
57
58
|
ENTERABLE: 'enterable',
|
|
@@ -106,6 +107,7 @@ exports.TRAIT_CATEGORIES = {
|
|
|
106
107
|
[exports.TraitType.EQUIPPED]: exports.TraitCategory.INTERACTIVE,
|
|
107
108
|
// NPC traits
|
|
108
109
|
[exports.TraitType.NPC]: exports.TraitCategory.STANDARD,
|
|
110
|
+
[exports.TraitType.OPEN_INVENTORY]: exports.TraitCategory.STANDARD,
|
|
109
111
|
// Transport traits
|
|
110
112
|
[exports.TraitType.VEHICLE]: exports.TraitCategory.INTERACTIVE,
|
|
111
113
|
[exports.TraitType.ENTERABLE]: exports.TraitCategory.INTERACTIVE,
|
|
@@ -143,7 +145,7 @@ function getAllTraitTypes() {
|
|
|
143
145
|
* Add a new trait type at runtime (for extensions)
|
|
144
146
|
*/
|
|
145
147
|
function registerTraitType(name, value, category = exports.TraitCategory.STANDARD) {
|
|
146
|
-
//
|
|
148
|
+
// as any: justified — runtime extension of const enum object
|
|
147
149
|
exports.TraitType[name] = value;
|
|
148
150
|
// Add to categories
|
|
149
151
|
exports.TRAIT_CATEGORIES[value] = category;
|
|
@@ -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;;;
|
|
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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"}
|
|
@@ -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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"}
|
package/world/AuthorModel.js
CHANGED
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.AuthorModel = void 0;
|
|
5
5
|
const if_entity_1 = require("../entities/if-entity");
|
|
6
|
-
const trait_types_1 = require("../traits/trait-types");
|
|
7
6
|
const openableTrait_1 = require("../traits/openable/openableTrait");
|
|
8
7
|
const lockableTrait_1 = require("../traits/lockable/lockableTrait");
|
|
9
8
|
/**
|
|
@@ -262,7 +261,7 @@ class AuthorModel {
|
|
|
262
261
|
if (!container)
|
|
263
262
|
return;
|
|
264
263
|
if (isOpen !== undefined) {
|
|
265
|
-
const openable = container.getTrait(
|
|
264
|
+
const openable = container.getTrait(openableTrait_1.OpenableTrait);
|
|
266
265
|
if (openable) {
|
|
267
266
|
openable.isOpen = isOpen;
|
|
268
267
|
}
|
|
@@ -273,17 +272,17 @@ class AuthorModel {
|
|
|
273
272
|
}
|
|
274
273
|
}
|
|
275
274
|
if (isLocked !== undefined) {
|
|
276
|
-
const lockable = container.getTrait(
|
|
275
|
+
const lockable = container.getTrait(lockableTrait_1.LockableTrait);
|
|
277
276
|
if (lockable) {
|
|
278
277
|
lockable.isLocked = isLocked;
|
|
279
278
|
if (keyId)
|
|
280
|
-
lockable.
|
|
279
|
+
lockable.keyId = keyId;
|
|
281
280
|
}
|
|
282
281
|
else {
|
|
283
282
|
const newLockable = new lockableTrait_1.LockableTrait();
|
|
284
283
|
newLockable.isLocked = isLocked;
|
|
285
284
|
if (keyId)
|
|
286
|
-
newLockable.
|
|
285
|
+
newLockable.keyId = keyId;
|
|
287
286
|
this.addTrait(containerId, newLockable, recordEvent);
|
|
288
287
|
}
|
|
289
288
|
}
|
|
@@ -311,6 +310,7 @@ class AuthorModel {
|
|
|
311
310
|
}
|
|
312
311
|
// If we have a reference to the WorldModel, use its setPlayer method
|
|
313
312
|
if (this.worldModel) {
|
|
313
|
+
// as any: justified — AuthorModel bypasses WorldModel.setPlayer() validation
|
|
314
314
|
this.worldModel.playerId = entityId;
|
|
315
315
|
}
|
|
316
316
|
else {
|
|
@@ -334,6 +334,7 @@ class AuthorModel {
|
|
|
334
334
|
delete this.dataStore.state[key];
|
|
335
335
|
}
|
|
336
336
|
if (this.worldModel) {
|
|
337
|
+
// as any: justified — AuthorModel bypasses WorldModel.setPlayer() validation
|
|
337
338
|
this.worldModel.playerId = undefined;
|
|
338
339
|
}
|
|
339
340
|
else {
|
package/world/AuthorModel.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthorModel.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/world/AuthorModel.ts"],"names":[],"mappings":";AAAA,2EAA2E;;;AAE3E,qDAAiD;
|
|
1
|
+
{"version":3,"file":"AuthorModel.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/world/AuthorModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,18 +48,35 @@ export declare class VisibilityBehavior extends Behavior {
|
|
|
48
48
|
* Handles nested containers, worn items, and various light source types.
|
|
49
49
|
*/
|
|
50
50
|
private static hasLightSource;
|
|
51
|
+
/**
|
|
52
|
+
* Walks the containment chain from an entity upward, checking whether any
|
|
53
|
+
* closed opaque container blocks the path.
|
|
54
|
+
*
|
|
55
|
+
* This is the single implementation of the container-walk algorithm used by
|
|
56
|
+
* `isAccessible`, `hasLineOfSight`, and `isVisible`.
|
|
57
|
+
*
|
|
58
|
+
* At each hop:
|
|
59
|
+
* - Actors are transparent (carried/worn items are always reachable)
|
|
60
|
+
* - Opaque closed containers block
|
|
61
|
+
* - Transparent containers, open containers, and non-openable opaque containers pass
|
|
62
|
+
*
|
|
63
|
+
* @param entityId - Starting entity to walk upward from
|
|
64
|
+
* @param world - The world model
|
|
65
|
+
* @param stopAtId - Stop when this ancestor is reached (e.g., the room).
|
|
66
|
+
* If omitted, walks until reaching a room or the top of the tree.
|
|
67
|
+
* @returns true if no closed opaque container blocks the path
|
|
68
|
+
*/
|
|
69
|
+
private static isContainmentPathClear;
|
|
51
70
|
/**
|
|
52
71
|
* Checks if an entity is accessible from a room (not blocked by closed containers)
|
|
53
72
|
*/
|
|
54
73
|
private static isAccessible;
|
|
55
74
|
/**
|
|
56
|
-
* Checks if there's a line of sight between observer and target
|
|
75
|
+
* Checks if there's a line of sight between observer and target.
|
|
76
|
+
* Walks the target's containment chain to verify no closed opaque container
|
|
77
|
+
* blocks visibility.
|
|
57
78
|
*/
|
|
58
79
|
private static hasLineOfSight;
|
|
59
|
-
/**
|
|
60
|
-
* Gets the containment path from an entity to its room
|
|
61
|
-
*/
|
|
62
|
-
private static getContainmentPath;
|
|
63
80
|
/**
|
|
64
81
|
* Checks if an entity is visible in its current context
|
|
65
82
|
* (used for filtering queries)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VisibilityBehavior.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/world/VisibilityBehavior.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"VisibilityBehavior.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/world/VisibilityBehavior.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAY1C;;;GAGG;AACH,eAAO,MAAM,qBAAqB,qBAAqB,CAAC;AAExD,qBAAa,kBAAmB,SAAQ,QAAQ;IAC9C,MAAM,CAAC,cAAc,UAAM;IAE3B;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO;IAQzD;;;;;;;;OAQG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;IAiB5B;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO;IAkE/E;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,GAAG,QAAQ,EAAE;IAsGpE;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;IA2DjC;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAmB7B;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,MAAM,CAAC,sBAAsB;IA0CrC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IAI3B;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAI7B;;;OAGG;IACH,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO;IAwB9D;;;;;;;;;OASG;IACH,MAAM,CAAC,sBAAsB,CAC3B,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,UAAU,GAChB;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,kBAAkB,EAAE,QAAQ,GAAG,IAAI,CAAA;KAAE;CAmD/D"}
|