@sharpee/world-model 3.1.0 → 3.5.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/annotations/index.d.ts +1 -1
- package/annotations/index.d.ts.map +1 -1
- package/annotations/index.js +1 -1
- package/annotations/index.js.map +1 -1
- package/behaviors/attack.d.ts +21 -4
- package/behaviors/attack.d.ts.map +1 -1
- package/behaviors/attack.js +37 -33
- package/behaviors/attack.js.map +1 -1
- package/behaviors/behavior.d.ts +3 -3
- package/behaviors/behavior.d.ts.map +1 -1
- package/behaviors/index.d.ts +21 -21
- package/behaviors/index.d.ts.map +1 -1
- package/behaviors/index.js +33 -33
- package/behaviors/index.js.map +1 -1
- package/capabilities/action-interceptor.d.ts +3 -3
- package/capabilities/action-interceptor.d.ts.map +1 -1
- package/capabilities/capability-behavior.d.ts +3 -3
- package/capabilities/capability-behavior.d.ts.map +1 -1
- package/capabilities/capability-binding.d.ts +3 -3
- package/capabilities/capability-binding.d.ts.map +1 -1
- package/capabilities/capability-helpers.d.ts +2 -2
- package/capabilities/capability-helpers.d.ts.map +1 -1
- package/capabilities/entity-builder.d.ts +2 -2
- package/capabilities/entity-builder.d.ts.map +1 -1
- package/capabilities/index.d.ts +9 -9
- package/capabilities/index.d.ts.map +1 -1
- package/capabilities/index.js +26 -26
- package/capabilities/index.js.map +1 -1
- package/capabilities/interceptor-binding.d.ts +2 -2
- package/capabilities/interceptor-binding.d.ts.map +1 -1
- package/capabilities/interceptor-helpers.d.ts +2 -2
- package/capabilities/interceptor-helpers.d.ts.map +1 -1
- package/commands/command-types.d.ts +2 -2
- package/commands/command-types.d.ts.map +1 -1
- package/commands/index.d.ts +3 -3
- package/commands/index.d.ts.map +1 -1
- package/commands/index.js +3 -3
- package/commands/index.js.map +1 -1
- package/commands/parsed-command.d.ts +13 -0
- package/commands/parsed-command.d.ts.map +1 -1
- package/commands/validated-command.d.ts +16 -2
- package/commands/validated-command.d.ts.map +1 -1
- package/constants/index.d.ts +3 -3
- package/constants/index.d.ts.map +1 -1
- package/constants/index.js +3 -3
- package/constants/index.js.map +1 -1
- package/entities/entity-store.d.ts +1 -1
- package/entities/entity-store.d.ts.map +1 -1
- package/entities/entity-store.js +2 -2
- package/entities/entity-store.js.map +1 -1
- package/entities/if-entity.d.ts +3 -3
- package/entities/if-entity.d.ts.map +1 -1
- package/entities/if-entity.js +38 -34
- package/entities/if-entity.js.map +1 -1
- package/entities/index.d.ts +6 -6
- package/entities/index.d.ts.map +1 -1
- package/entities/index.js +10 -10
- package/entities/index.js.map +1 -1
- package/entities/trait-rehydrator.d.ts +43 -0
- package/entities/trait-rehydrator.d.ts.map +1 -0
- package/entities/trait-rehydrator.js +45 -0
- package/entities/trait-rehydrator.js.map +1 -0
- package/entities/wall-entity.d.ts +2 -2
- package/entities/wall-entity.d.ts.map +1 -1
- package/entities/wall-entity.js +2 -2
- package/entities/wall-entity.js.map +1 -1
- package/examples/event-handler-registration.d.ts +1 -1
- package/examples/event-handler-registration.d.ts.map +1 -1
- package/examples/event-handler-registration.js +24 -24
- package/examples/event-handler-registration.js.map +1 -1
- package/extensions/base-extension.d.ts +3 -3
- package/extensions/base-extension.d.ts.map +1 -1
- package/extensions/index.d.ts +4 -4
- package/extensions/index.d.ts.map +1 -1
- package/extensions/index.js +11 -11
- package/extensions/index.js.map +1 -1
- package/extensions/loader.d.ts +1 -1
- package/extensions/loader.d.ts.map +1 -1
- package/extensions/loader.js +2 -2
- package/extensions/loader.js.map +1 -1
- package/extensions/manager.d.ts +1 -1
- package/extensions/manager.d.ts.map +1 -1
- package/extensions/manager.js +2 -2
- package/extensions/manager.js.map +1 -1
- package/extensions/registry.d.ts +2 -2
- package/extensions/registry.d.ts.map +1 -1
- package/extensions/registry.js +4 -4
- package/extensions/registry.js.map +1 -1
- package/extensions/types.d.ts +2 -2
- package/extensions/types.d.ts.map +1 -1
- package/index.d.ts +58 -59
- package/index.d.ts.map +1 -1
- package/index.js +62 -63
- package/index.js.map +1 -1
- package/interfaces/command-executor.d.ts +1 -1
- package/interfaces/command-executor.d.ts.map +1 -1
- package/interfaces/command-processor.d.ts +1 -1
- package/interfaces/command-processor.d.ts.map +1 -1
- package/interfaces/command-validator.d.ts +1 -1
- package/interfaces/command-validator.d.ts.map +1 -1
- package/interfaces/index.d.ts +4 -4
- package/interfaces/index.d.ts.map +1 -1
- package/interfaces/index.js +4 -4
- package/interfaces/index.js.map +1 -1
- package/interfaces/parser.d.ts +1 -1
- package/interfaces/parser.d.ts.map +1 -1
- package/package.json +3 -3
- package/scope/index.d.ts +3 -3
- package/scope/index.d.ts.map +1 -1
- package/scope/index.js +3 -3
- package/scope/index.js.map +1 -1
- package/scope/scope-evaluator.d.ts +2 -2
- package/scope/scope-evaluator.d.ts.map +1 -1
- package/scope/scope-registry.d.ts +1 -1
- package/scope/scope-registry.d.ts.map +1 -1
- package/state-adjectives.d.ts +1 -1
- package/state-adjectives.d.ts.map +1 -1
- package/state-adjectives.js +5 -5
- package/state-adjectives.js.map +1 -1
- package/state-clauses.d.ts +1 -1
- package/state-clauses.d.ts.map +1 -1
- package/state-clauses.js +5 -5
- package/state-clauses.js.map +1 -1
- package/test-structure.d.ts +1 -1
- package/test-structure.d.ts.map +1 -1
- package/test-structure.js +7 -7
- package/test-structure.js.map +1 -1
- package/traits/acoustic/acousticDampenerTrait.d.ts +1 -1
- package/traits/acoustic/acousticDampenerTrait.d.ts.map +1 -1
- package/traits/acoustic/acousticDampenerTrait.js +3 -3
- package/traits/acoustic/acousticDampenerTrait.js.map +1 -1
- package/traits/acoustic/acousticTrait.d.ts +1 -1
- package/traits/acoustic/acousticTrait.d.ts.map +1 -1
- package/traits/acoustic/acousticTrait.js +3 -3
- package/traits/acoustic/acousticTrait.js.map +1 -1
- package/traits/acoustic/index.d.ts +2 -2
- package/traits/acoustic/index.d.ts.map +1 -1
- package/traits/acoustic/index.js +5 -5
- package/traits/acoustic/index.js.map +1 -1
- package/traits/actor/actorBehavior.d.ts +4 -4
- package/traits/actor/actorBehavior.d.ts.map +1 -1
- package/traits/actor/actorBehavior.js +38 -34
- package/traits/actor/actorBehavior.js.map +1 -1
- package/traits/actor/actorTrait.d.ts +1 -1
- package/traits/actor/actorTrait.d.ts.map +1 -1
- package/traits/actor/actorTrait.js +3 -3
- package/traits/actor/actorTrait.js.map +1 -1
- package/traits/actor/index.d.ts +2 -2
- package/traits/actor/index.d.ts.map +1 -1
- package/traits/actor/index.js +6 -6
- package/traits/actor/index.js.map +1 -1
- package/traits/all-traits.d.ts +30 -33
- package/traits/all-traits.d.ts.map +1 -1
- package/traits/all-traits.js +56 -62
- package/traits/all-traits.js.map +1 -1
- package/traits/attached/attachedTrait.d.ts +1 -1
- package/traits/attached/attachedTrait.d.ts.map +1 -1
- package/traits/attached/attachedTrait.js +3 -3
- package/traits/attached/attachedTrait.js.map +1 -1
- package/traits/attached/index.d.ts +1 -1
- package/traits/attached/index.d.ts.map +1 -1
- package/traits/attached/index.js +1 -1
- package/traits/attached/index.js.map +1 -1
- package/traits/breakable/breakableBehavior.d.ts +3 -3
- package/traits/breakable/breakableBehavior.d.ts.map +1 -1
- package/traits/breakable/breakableBehavior.js +10 -10
- package/traits/breakable/breakableBehavior.js.map +1 -1
- package/traits/breakable/breakableTrait.d.ts +1 -1
- package/traits/breakable/breakableTrait.d.ts.map +1 -1
- package/traits/breakable/index.d.ts +2 -2
- package/traits/breakable/index.d.ts.map +1 -1
- package/traits/breakable/index.js +4 -4
- package/traits/breakable/index.js.map +1 -1
- package/traits/button/buttonTrait.d.ts +1 -1
- package/traits/button/buttonTrait.d.ts.map +1 -1
- package/traits/button/buttonTrait.js +3 -3
- package/traits/button/buttonTrait.js.map +1 -1
- package/traits/button/index.d.ts +1 -1
- package/traits/button/index.d.ts.map +1 -1
- package/traits/button/index.js +1 -1
- package/traits/button/index.js.map +1 -1
- package/traits/character-model/characterModelTrait.d.ts +2 -2
- package/traits/character-model/characterModelTrait.d.ts.map +1 -1
- package/traits/character-model/characterModelTrait.js +16 -16
- package/traits/character-model/characterModelTrait.js.map +1 -1
- package/traits/character-model/index.d.ts +2 -2
- package/traits/character-model/index.d.ts.map +1 -1
- package/traits/character-model/index.js +3 -3
- package/traits/character-model/index.js.map +1 -1
- package/traits/climbable/climbableBehavior.d.ts +1 -1
- package/traits/climbable/climbableBehavior.d.ts.map +1 -1
- package/traits/climbable/climbableBehavior.js +9 -9
- package/traits/climbable/climbableBehavior.js.map +1 -1
- package/traits/climbable/climbableTrait.d.ts +1 -1
- package/traits/climbable/climbableTrait.d.ts.map +1 -1
- package/traits/climbable/climbableTrait.js +4 -4
- package/traits/climbable/climbableTrait.js.map +1 -1
- package/traits/climbable/index.d.ts +2 -2
- package/traits/climbable/index.d.ts.map +1 -1
- package/traits/climbable/index.js +2 -2
- package/traits/climbable/index.js.map +1 -1
- package/traits/clothing/clothingTrait.d.ts +2 -2
- package/traits/clothing/clothingTrait.d.ts.map +1 -1
- package/traits/clothing/clothingTrait.js +3 -3
- package/traits/clothing/clothingTrait.js.map +1 -1
- package/traits/clothing/index.d.ts +1 -1
- package/traits/clothing/index.d.ts.map +1 -1
- package/traits/clothing/index.js +1 -1
- package/traits/clothing/index.js.map +1 -1
- package/traits/combatant/combatantBehavior.d.ts +3 -3
- package/traits/combatant/combatantBehavior.d.ts.map +1 -1
- package/traits/combatant/combatantBehavior.js +26 -26
- package/traits/combatant/combatantBehavior.js.map +1 -1
- package/traits/combatant/combatantTrait.d.ts +1 -1
- package/traits/combatant/combatantTrait.d.ts.map +1 -1
- package/traits/combatant/index.d.ts +2 -2
- package/traits/combatant/index.d.ts.map +1 -1
- package/traits/combatant/index.js +4 -4
- package/traits/combatant/index.js.map +1 -1
- package/traits/concealment/concealedStateTrait.d.ts +3 -3
- package/traits/concealment/concealedStateTrait.d.ts.map +1 -1
- package/traits/concealment/concealedStateTrait.js +2 -2
- package/traits/concealment/concealedStateTrait.js.map +1 -1
- package/traits/concealment/concealedVisibilityBehavior.d.ts +2 -2
- package/traits/concealment/concealedVisibilityBehavior.d.ts.map +1 -1
- package/traits/concealment/concealedVisibilityBehavior.js +3 -3
- package/traits/concealment/concealedVisibilityBehavior.js.map +1 -1
- package/traits/concealment/concealmentTrait.d.ts +1 -1
- package/traits/concealment/concealmentTrait.d.ts.map +1 -1
- package/traits/concealment/index.d.ts +3 -3
- package/traits/concealment/index.d.ts.map +1 -1
- package/traits/concealment/index.js +3 -3
- package/traits/concealment/index.js.map +1 -1
- package/traits/container/container-utils.d.ts +2 -2
- package/traits/container/container-utils.d.ts.map +1 -1
- package/traits/container/container-utils.js +14 -14
- package/traits/container/container-utils.js.map +1 -1
- package/traits/container/containerBehavior.d.ts +7 -2
- package/traits/container/containerBehavior.d.ts.map +1 -1
- package/traits/container/containerBehavior.js +26 -26
- package/traits/container/containerBehavior.js.map +1 -1
- package/traits/container/containerTrait.d.ts +1 -1
- package/traits/container/containerTrait.d.ts.map +1 -1
- package/traits/container/containerTrait.js +3 -3
- package/traits/container/containerTrait.js.map +1 -1
- package/traits/container/index.d.ts +3 -3
- package/traits/container/index.d.ts.map +1 -1
- package/traits/container/index.js +9 -9
- package/traits/container/index.js.map +1 -1
- package/traits/cuttable/cuttableBehavior.d.ts +2 -2
- package/traits/cuttable/cuttableBehavior.d.ts.map +1 -1
- package/traits/cuttable/cuttableBehavior.js +6 -6
- package/traits/cuttable/cuttableBehavior.js.map +1 -1
- package/traits/cuttable/cuttableTrait.d.ts +1 -1
- package/traits/cuttable/cuttableTrait.d.ts.map +1 -1
- package/traits/cuttable/cuttableTrait.js +3 -3
- package/traits/cuttable/cuttableTrait.js.map +1 -1
- package/traits/cuttable/index.d.ts +2 -2
- package/traits/cuttable/index.d.ts.map +1 -1
- package/traits/cuttable/index.js +2 -2
- package/traits/cuttable/index.js.map +1 -1
- package/traits/deadly-room/deadlyRoomBehavior.d.ts +2 -2
- package/traits/deadly-room/deadlyRoomBehavior.d.ts.map +1 -1
- package/traits/deadly-room/deadlyRoomBehavior.js +4 -4
- package/traits/deadly-room/deadlyRoomBehavior.js.map +1 -1
- package/traits/deadly-room/deadlyRoomTrait.d.ts +1 -1
- package/traits/deadly-room/deadlyRoomTrait.d.ts.map +1 -1
- package/traits/deadly-room/index.d.ts +2 -2
- package/traits/deadly-room/index.d.ts.map +1 -1
- package/traits/deadly-room/index.js +4 -4
- package/traits/deadly-room/index.js.map +1 -1
- package/traits/destructible/destructibleBehavior.d.ts +3 -3
- package/traits/destructible/destructibleBehavior.d.ts.map +1 -1
- package/traits/destructible/destructibleBehavior.js +12 -12
- package/traits/destructible/destructibleBehavior.js.map +1 -1
- package/traits/destructible/destructibleTrait.d.ts +1 -1
- package/traits/destructible/destructibleTrait.d.ts.map +1 -1
- package/traits/destructible/index.d.ts +2 -2
- package/traits/destructible/index.d.ts.map +1 -1
- package/traits/destructible/index.js +4 -4
- package/traits/destructible/index.js.map +1 -1
- package/traits/diggable/diggableBehavior.d.ts +2 -2
- package/traits/diggable/diggableBehavior.d.ts.map +1 -1
- package/traits/diggable/diggableBehavior.js +6 -6
- package/traits/diggable/diggableBehavior.js.map +1 -1
- package/traits/diggable/diggableTrait.d.ts +1 -1
- package/traits/diggable/diggableTrait.d.ts.map +1 -1
- package/traits/diggable/diggableTrait.js +3 -3
- package/traits/diggable/diggableTrait.js.map +1 -1
- package/traits/diggable/index.d.ts +2 -2
- package/traits/diggable/index.d.ts.map +1 -1
- package/traits/diggable/index.js +2 -2
- package/traits/diggable/index.js.map +1 -1
- package/traits/door/doorBehavior.d.ts +2 -2
- package/traits/door/doorBehavior.d.ts.map +1 -1
- package/traits/door/doorBehavior.js +11 -11
- package/traits/door/doorBehavior.js.map +1 -1
- package/traits/door/doorTrait.d.ts +1 -1
- package/traits/door/doorTrait.d.ts.map +1 -1
- package/traits/door/doorTrait.js +3 -3
- package/traits/door/doorTrait.js.map +1 -1
- package/traits/door/index.d.ts +2 -2
- package/traits/door/index.d.ts.map +1 -1
- package/traits/door/index.js +4 -4
- package/traits/door/index.js.map +1 -1
- package/traits/edible/edibleBehavior.d.ts +3 -3
- package/traits/edible/edibleBehavior.d.ts.map +1 -1
- package/traits/edible/edibleBehavior.js +20 -20
- package/traits/edible/edibleBehavior.js.map +1 -1
- package/traits/edible/edibleTrait.d.ts +1 -1
- package/traits/edible/edibleTrait.d.ts.map +1 -1
- package/traits/edible/edibleTrait.js +3 -3
- package/traits/edible/edibleTrait.js.map +1 -1
- package/traits/edible/index.d.ts +2 -2
- package/traits/edible/index.d.ts.map +1 -1
- package/traits/edible/index.js +2 -2
- package/traits/edible/index.js.map +1 -1
- package/traits/enterable/enterableTrait.d.ts +1 -1
- package/traits/enterable/enterableTrait.d.ts.map +1 -1
- package/traits/enterable/enterableTrait.js +4 -4
- package/traits/enterable/enterableTrait.js.map +1 -1
- package/traits/enterable/index.d.ts +1 -1
- package/traits/enterable/index.d.ts.map +1 -1
- package/traits/enterable/index.js +1 -1
- package/traits/enterable/index.js.map +1 -1
- package/traits/equipped/equippedTrait.d.ts +1 -1
- package/traits/equipped/equippedTrait.d.ts.map +1 -1
- package/traits/equipped/index.d.ts +1 -1
- package/traits/equipped/index.d.ts.map +1 -1
- package/traits/equipped/index.js +2 -2
- package/traits/equipped/index.js.map +1 -1
- package/traits/exit/exitBehavior.d.ts +2 -2
- package/traits/exit/exitBehavior.d.ts.map +1 -1
- package/traits/exit/exitBehavior.js +27 -27
- package/traits/exit/exitBehavior.js.map +1 -1
- package/traits/exit/exitTrait.d.ts +1 -1
- package/traits/exit/exitTrait.d.ts.map +1 -1
- package/traits/exit/exitTrait.js +3 -3
- package/traits/exit/exitTrait.js.map +1 -1
- package/traits/exit/index.d.ts +2 -2
- package/traits/exit/index.d.ts.map +1 -1
- package/traits/exit/index.js +4 -4
- package/traits/exit/index.js.map +1 -1
- package/traits/health/healthBehavior.d.ts +2 -2
- package/traits/health/healthBehavior.d.ts.map +1 -1
- package/traits/health/healthBehavior.js +4 -4
- package/traits/health/healthBehavior.js.map +1 -1
- package/traits/health/healthTrait.d.ts +1 -1
- package/traits/health/healthTrait.d.ts.map +1 -1
- package/traits/health/index.d.ts +2 -2
- package/traits/health/index.d.ts.map +1 -1
- package/traits/health/index.js +4 -4
- package/traits/health/index.js.map +1 -1
- package/traits/identity/identityBehavior.d.ts +2 -2
- package/traits/identity/identityBehavior.d.ts.map +1 -1
- package/traits/identity/identityBehavior.js +16 -16
- package/traits/identity/identityBehavior.js.map +1 -1
- package/traits/identity/identityTrait.d.ts +8 -1
- package/traits/identity/identityTrait.d.ts.map +1 -1
- package/traits/identity/identityTrait.js +10 -3
- package/traits/identity/identityTrait.js.map +1 -1
- package/traits/identity/index.d.ts +3 -2
- package/traits/identity/index.d.ts.map +1 -1
- package/traits/identity/index.js +3 -2
- package/traits/identity/index.js.map +1 -1
- package/traits/identity/name-vocabulary.d.ts +31 -0
- package/traits/identity/name-vocabulary.d.ts.map +1 -0
- package/traits/identity/name-vocabulary.js +57 -0
- package/traits/identity/name-vocabulary.js.map +1 -0
- package/traits/implementations.d.ts +65 -42
- package/traits/implementations.d.ts.map +1 -1
- package/traits/implementations.js +163 -129
- package/traits/implementations.js.map +1 -1
- package/traits/index.d.ts +47 -48
- package/traits/index.d.ts.map +1 -1
- package/traits/index.js +47 -48
- package/traits/index.js.map +1 -1
- package/traits/light-source/index.d.ts +2 -2
- package/traits/light-source/index.d.ts.map +1 -1
- package/traits/light-source/index.js +4 -4
- package/traits/light-source/index.js.map +1 -1
- package/traits/light-source/lightSourceBehavior.d.ts +2 -2
- package/traits/light-source/lightSourceBehavior.d.ts.map +1 -1
- package/traits/light-source/lightSourceBehavior.js +16 -16
- package/traits/light-source/lightSourceBehavior.js.map +1 -1
- package/traits/light-source/lightSourceTrait.d.ts +1 -1
- package/traits/light-source/lightSourceTrait.d.ts.map +1 -1
- package/traits/light-source/lightSourceTrait.js +3 -3
- package/traits/light-source/lightSourceTrait.js.map +1 -1
- package/traits/listener/index.d.ts +1 -1
- package/traits/listener/index.d.ts.map +1 -1
- package/traits/listener/index.js +2 -2
- package/traits/listener/index.js.map +1 -1
- package/traits/listener/listenerTrait.d.ts +1 -1
- package/traits/listener/listenerTrait.d.ts.map +1 -1
- package/traits/listener/listenerTrait.js +3 -3
- package/traits/listener/listenerTrait.js.map +1 -1
- package/traits/lockable/index.d.ts +2 -2
- package/traits/lockable/index.d.ts.map +1 -1
- package/traits/lockable/index.js +2 -2
- package/traits/lockable/index.js.map +1 -1
- package/traits/lockable/lockableBehavior.d.ts +2 -2
- package/traits/lockable/lockableBehavior.d.ts.map +1 -1
- package/traits/lockable/lockableBehavior.js +19 -19
- package/traits/lockable/lockableBehavior.js.map +1 -1
- package/traits/lockable/lockableTrait.d.ts +1 -1
- package/traits/lockable/lockableTrait.d.ts.map +1 -1
- package/traits/lockable/lockableTrait.js +3 -3
- package/traits/lockable/lockableTrait.js.map +1 -1
- package/traits/moveable-scenery/index.d.ts +1 -1
- package/traits/moveable-scenery/index.d.ts.map +1 -1
- package/traits/moveable-scenery/index.js +1 -1
- package/traits/moveable-scenery/index.js.map +1 -1
- package/traits/moveable-scenery/moveableSceneryTrait.d.ts +1 -1
- package/traits/moveable-scenery/moveableSceneryTrait.d.ts.map +1 -1
- package/traits/moveable-scenery/moveableSceneryTrait.js +3 -3
- package/traits/moveable-scenery/moveableSceneryTrait.js.map +1 -1
- package/traits/npc/index.d.ts +1 -1
- package/traits/npc/index.d.ts.map +1 -1
- package/traits/npc/index.js +2 -2
- package/traits/npc/index.js.map +1 -1
- package/traits/npc/npcTrait.d.ts +1 -1
- package/traits/npc/npcTrait.d.ts.map +1 -1
- package/traits/obstructor-protocol.d.ts +3 -3
- package/traits/obstructor-protocol.d.ts.map +1 -1
- package/traits/open-inventory/index.d.ts +1 -1
- package/traits/open-inventory/index.d.ts.map +1 -1
- package/traits/open-inventory/index.js +2 -2
- package/traits/open-inventory/index.js.map +1 -1
- package/traits/open-inventory/openInventoryTrait.d.ts +1 -1
- package/traits/open-inventory/openInventoryTrait.d.ts.map +1 -1
- package/traits/open-inventory/openInventoryTrait.js +3 -3
- package/traits/open-inventory/openInventoryTrait.js.map +1 -1
- package/traits/openable/index.d.ts +2 -2
- package/traits/openable/index.d.ts.map +1 -1
- package/traits/openable/index.js +2 -2
- package/traits/openable/index.js.map +1 -1
- package/traits/openable/openableBehavior.d.ts +2 -2
- package/traits/openable/openableBehavior.d.ts.map +1 -1
- package/traits/openable/openableBehavior.js +13 -13
- package/traits/openable/openableBehavior.js.map +1 -1
- package/traits/openable/openableTrait.d.ts +1 -1
- package/traits/openable/openableTrait.d.ts.map +1 -1
- package/traits/openable/openableTrait.js +3 -3
- package/traits/openable/openableTrait.js.map +1 -1
- package/traits/pullable/index.d.ts +1 -1
- package/traits/pullable/index.d.ts.map +1 -1
- package/traits/pullable/index.js +1 -1
- package/traits/pullable/index.js.map +1 -1
- package/traits/pullable/pullableTrait.d.ts +1 -1
- package/traits/pullable/pullableTrait.d.ts.map +1 -1
- package/traits/pullable/pullableTrait.js +3 -3
- package/traits/pullable/pullableTrait.js.map +1 -1
- package/traits/pushable/index.d.ts +1 -1
- package/traits/pushable/index.d.ts.map +1 -1
- package/traits/pushable/index.js +1 -1
- package/traits/pushable/index.js.map +1 -1
- package/traits/pushable/pushableTrait.d.ts +1 -1
- package/traits/pushable/pushableTrait.d.ts.map +1 -1
- package/traits/pushable/pushableTrait.js +3 -3
- package/traits/pushable/pushableTrait.js.map +1 -1
- package/traits/readable/index.d.ts +2 -2
- package/traits/readable/index.d.ts.map +1 -1
- package/traits/readable/index.js +4 -4
- package/traits/readable/index.js.map +1 -1
- package/traits/readable/readableBehavior.d.ts +1 -1
- package/traits/readable/readableBehavior.d.ts.map +1 -1
- package/traits/readable/readableBehavior.js +10 -10
- package/traits/readable/readableBehavior.js.map +1 -1
- package/traits/readable/readableTrait.d.ts +1 -1
- package/traits/readable/readableTrait.d.ts.map +1 -1
- package/traits/readable/readableTrait.js +3 -3
- package/traits/readable/readableTrait.js.map +1 -1
- package/traits/region/index.d.ts +1 -1
- package/traits/region/index.d.ts.map +1 -1
- package/traits/region/index.js +2 -2
- package/traits/region/index.js.map +1 -1
- package/traits/region/regionTrait.d.ts +1 -1
- package/traits/region/regionTrait.d.ts.map +1 -1
- package/traits/region/regionTrait.js +3 -3
- package/traits/region/regionTrait.js.map +1 -1
- package/traits/room/index.d.ts +2 -2
- package/traits/room/index.d.ts.map +1 -1
- package/traits/room/index.js +4 -4
- package/traits/room/index.js.map +1 -1
- package/traits/room/roomBehavior.d.ts +4 -4
- package/traits/room/roomBehavior.d.ts.map +1 -1
- package/traits/room/roomBehavior.js +25 -25
- package/traits/room/roomBehavior.js.map +1 -1
- package/traits/room/roomTrait.d.ts +2 -2
- package/traits/room/roomTrait.d.ts.map +1 -1
- package/traits/room/roomTrait.js +3 -3
- package/traits/room/roomTrait.js.map +1 -1
- package/traits/scene/index.d.ts +1 -1
- package/traits/scene/index.d.ts.map +1 -1
- package/traits/scene/index.js +2 -2
- package/traits/scene/index.js.map +1 -1
- package/traits/scene/sceneTrait.d.ts +1 -1
- package/traits/scene/sceneTrait.d.ts.map +1 -1
- package/traits/scene/sceneTrait.js +3 -3
- package/traits/scene/sceneTrait.js.map +1 -1
- package/traits/scenery/index.d.ts +2 -2
- package/traits/scenery/index.d.ts.map +1 -1
- package/traits/scenery/index.js +4 -4
- package/traits/scenery/index.js.map +1 -1
- package/traits/scenery/sceneryBehavior.d.ts +1 -1
- package/traits/scenery/sceneryBehavior.d.ts.map +1 -1
- package/traits/scenery/sceneryBehavior.js +5 -5
- package/traits/scenery/sceneryBehavior.js.map +1 -1
- package/traits/scenery/sceneryTrait.d.ts +1 -1
- package/traits/scenery/sceneryTrait.d.ts.map +1 -1
- package/traits/scenery/sceneryTrait.js +3 -3
- package/traits/scenery/sceneryTrait.js.map +1 -1
- package/traits/story-info/index.d.ts +1 -1
- package/traits/story-info/index.d.ts.map +1 -1
- package/traits/story-info/index.js +2 -2
- package/traits/story-info/index.js.map +1 -1
- package/traits/story-info/storyInfoTrait.d.ts +1 -1
- package/traits/story-info/storyInfoTrait.d.ts.map +1 -1
- package/traits/supporter/index.d.ts +2 -2
- package/traits/supporter/index.d.ts.map +1 -1
- package/traits/supporter/index.js +4 -4
- package/traits/supporter/index.js.map +1 -1
- package/traits/supporter/supporterBehavior.d.ts +3 -3
- package/traits/supporter/supporterBehavior.d.ts.map +1 -1
- package/traits/supporter/supporterBehavior.js +15 -15
- package/traits/supporter/supporterBehavior.js.map +1 -1
- package/traits/supporter/supporterTrait.d.ts +1 -1
- package/traits/supporter/supporterTrait.d.ts.map +1 -1
- package/traits/supporter/supporterTrait.js +3 -3
- package/traits/supporter/supporterTrait.js.map +1 -1
- package/traits/switchable/index.d.ts +2 -2
- package/traits/switchable/index.d.ts.map +1 -1
- package/traits/switchable/index.js +2 -2
- package/traits/switchable/index.js.map +1 -1
- package/traits/switchable/switchableBehavior.d.ts +2 -2
- package/traits/switchable/switchableBehavior.d.ts.map +1 -1
- package/traits/switchable/switchableBehavior.js +18 -18
- package/traits/switchable/switchableBehavior.js.map +1 -1
- package/traits/switchable/switchableTrait.d.ts +1 -1
- package/traits/switchable/switchableTrait.d.ts.map +1 -1
- package/traits/switchable/switchableTrait.js +3 -3
- package/traits/switchable/switchableTrait.js.map +1 -1
- package/traits/trait-types.d.ts +0 -1
- package/traits/trait-types.d.ts.map +1 -1
- package/traits/trait-types.js +0 -2
- package/traits/trait-types.js.map +1 -1
- package/traits/trait.d.ts +1 -1
- package/traits/trait.d.ts.map +1 -1
- package/traits/vehicle/index.d.ts +2 -2
- package/traits/vehicle/index.d.ts.map +1 -1
- package/traits/vehicle/index.js +2 -2
- package/traits/vehicle/index.js.map +1 -1
- package/traits/vehicle/vehicleBehavior.d.ts +2 -2
- package/traits/vehicle/vehicleBehavior.d.ts.map +1 -1
- package/traits/vehicle/vehicleBehavior.js +7 -7
- package/traits/vehicle/vehicleBehavior.js.map +1 -1
- package/traits/vehicle/vehicleTrait.d.ts +1 -1
- package/traits/vehicle/vehicleTrait.d.ts.map +1 -1
- package/traits/vehicle/vehicleTrait.js +4 -4
- package/traits/vehicle/vehicleTrait.js.map +1 -1
- package/traits/weapon/index.d.ts +2 -2
- package/traits/weapon/index.d.ts.map +1 -1
- package/traits/weapon/index.js +4 -4
- package/traits/weapon/index.js.map +1 -1
- package/traits/weapon/weaponBehavior.d.ts +11 -4
- package/traits/weapon/weaponBehavior.d.ts.map +1 -1
- package/traits/weapon/weaponBehavior.js +24 -19
- package/traits/weapon/weaponBehavior.js.map +1 -1
- package/traits/weapon/weaponTrait.d.ts +1 -1
- package/traits/weapon/weaponTrait.d.ts.map +1 -1
- package/traits/wearable/index.d.ts +2 -2
- package/traits/wearable/index.d.ts.map +1 -1
- package/traits/wearable/index.js +2 -2
- package/traits/wearable/index.js.map +1 -1
- package/traits/wearable/wearableBehavior.d.ts +1 -1
- package/traits/wearable/wearableBehavior.d.ts.map +1 -1
- package/traits/wearable/wearableBehavior.js +11 -11
- package/traits/wearable/wearableBehavior.js.map +1 -1
- package/traits/wearable/wearableTrait.d.ts +1 -1
- package/traits/wearable/wearableTrait.d.ts.map +1 -1
- package/traits/wearable/wearableTrait.js +3 -3
- package/traits/wearable/wearableTrait.js.map +1 -1
- package/world/AuthorModel.d.ts +28 -17
- package/world/AuthorModel.d.ts.map +1 -1
- package/world/AuthorModel.js +31 -4
- package/world/AuthorModel.js.map +1 -1
- package/world/ScoreLedger.d.ts +75 -3
- package/world/ScoreLedger.d.ts.map +1 -1
- package/world/ScoreLedger.js +77 -3
- package/world/ScoreLedger.js.map +1 -1
- package/world/SharedDataStore.d.ts +2 -2
- package/world/SharedDataStore.d.ts.map +1 -1
- package/world/SharedDataStore.js +2 -2
- package/world/SharedDataStore.js.map +1 -1
- package/world/VisibilityBehavior.d.ts +59 -3
- package/world/VisibilityBehavior.d.ts.map +1 -1
- package/world/VisibilityBehavior.js +192 -100
- package/world/VisibilityBehavior.js.map +1 -1
- package/world/WorldEventSystem.d.ts +1 -1
- package/world/WorldEventSystem.d.ts.map +1 -1
- package/world/WorldModel.d.ts +75 -18
- package/world/WorldModel.d.ts.map +1 -1
- package/world/WorldModel.js +179 -113
- package/world/WorldModel.js.map +1 -1
- package/world/WorldSerializer.d.ts +4 -4
- package/world/WorldSerializer.d.ts.map +1 -1
- package/world/WorldSerializer.js +2 -2
- package/world/WorldSerializer.js.map +1 -1
- package/world/band.d.ts +22 -0
- package/world/band.d.ts.map +1 -0
- package/world/band.js +36 -0
- package/world/band.js.map +1 -0
- package/world/default-trait-registry.d.ts +1 -1
- package/world/default-trait-registry.d.ts.map +1 -1
- package/world/default-trait-registry.js +3 -3
- package/world/default-trait-registry.js.map +1 -1
- package/world/index.d.ts +10 -9
- package/world/index.d.ts.map +1 -1
- package/world/index.js +20 -16
- package/world/index.js.map +1 -1
- package/world/wall-creation.d.ts +2 -2
- package/world/wall-creation.d.ts.map +1 -1
- package/world/wall-creation.js +6 -6
- package/world/wall-creation.js.map +1 -1
- package/world/wall-validation.d.ts +2 -2
- package/world/wall-validation.d.ts.map +1 -1
- package/world/wall-validation.js +3 -3
- package/world/wall-validation.js.map +1 -1
package/traits/exit/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { ExitTrait } from './exitTrait';
|
|
2
|
-
export { ExitBehavior } from './exitBehavior';
|
|
1
|
+
export { ExitTrait } from './exitTrait.js';
|
|
2
|
+
export { ExitBehavior } from './exitBehavior.js';
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/exit/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/exit/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
|
package/traits/exit/index.js
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
// packages/world-model/src/traits/exit/index.ts
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.ExitBehavior = exports.ExitTrait = void 0;
|
|
5
|
-
var
|
|
6
|
-
Object.defineProperty(exports, "ExitTrait", { enumerable: true, get: function () { return
|
|
7
|
-
var
|
|
8
|
-
Object.defineProperty(exports, "ExitBehavior", { enumerable: true, get: function () { return
|
|
5
|
+
var exitTrait_js_1 = require("./exitTrait.js");
|
|
6
|
+
Object.defineProperty(exports, "ExitTrait", { enumerable: true, get: function () { return exitTrait_js_1.ExitTrait; } });
|
|
7
|
+
var exitBehavior_js_1 = require("./exitBehavior.js");
|
|
8
|
+
Object.defineProperty(exports, "ExitBehavior", { enumerable: true, get: function () { return exitBehavior_js_1.ExitBehavior; } });
|
|
9
9
|
//# sourceMappingURL=index.js.map
|
package/traits/exit/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/exit/index.ts"],"names":[],"mappings":";AAAA,gDAAgD;;;AAEhD
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/exit/index.ts"],"names":[],"mappings":";AAAA,gDAAgD;;;AAEhD,+CAA2C;AAAlC,yGAAA,SAAS,OAAA;AAClB,qDAAiD;AAAxC,+GAAA,YAAY,OAAA"}
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
* and conscious by default — ADR-226 §3 opt-in rule — a check owned by the caller).
|
|
14
14
|
* Owner context: `@sharpee/world-model` — HEALTH layer (ADR-223 child A).
|
|
15
15
|
*/
|
|
16
|
-
import { Behavior } from '../../behaviors/behavior';
|
|
17
|
-
import { HealthTrait } from './healthTrait';
|
|
16
|
+
import { Behavior } from '../../behaviors/behavior.js';
|
|
17
|
+
import { HealthTrait } from './healthTrait.js';
|
|
18
18
|
export declare class HealthBehavior extends Behavior {
|
|
19
19
|
static requiredTraits: "health"[];
|
|
20
20
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"healthBehavior.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/health/healthBehavior.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"healthBehavior.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/health/healthBehavior.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,qBAAa,cAAe,SAAQ,QAAQ;IAC1C,MAAM,CAAC,cAAc,aAAsB;IAI3C;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,WAAW,GAAG,OAAO;IAIvC;;;;OAIG;IACH,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,WAAW,GAAG,OAAO;IAQ3C;;;;OAIG;IACH,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,GAAG,OAAO;IAMtC;;;;;;;;OAQG;IACH,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,MAAiB,GAAG,OAAO;IAUpF;;;;;;;OAOG;IACH,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAOnD;;;;;;;OAOG;IACH,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;CAIjD"}
|
|
@@ -16,10 +16,10 @@
|
|
|
16
16
|
*/
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.HealthBehavior = void 0;
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
class HealthBehavior extends
|
|
22
|
-
static requiredTraits = [
|
|
19
|
+
const behavior_js_1 = require("../../behaviors/behavior.js");
|
|
20
|
+
const trait_types_js_1 = require("../trait-types.js");
|
|
21
|
+
class HealthBehavior extends behavior_js_1.Behavior {
|
|
22
|
+
static requiredTraits = [trait_types_js_1.TraitType.HEALTH];
|
|
23
23
|
// ---- Derivation (pure — no mutation) ----
|
|
24
24
|
/**
|
|
25
25
|
* Whether the entity is alive: not terminally dead and above zero health.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"healthBehavior.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/health/healthBehavior.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,
|
|
1
|
+
{"version":3,"file":"healthBehavior.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/health/healthBehavior.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,6DAAuD;AACvD,sDAA8C;AAG9C,MAAa,cAAe,SAAQ,sBAAQ;IAC1C,MAAM,CAAC,cAAc,GAAG,CAAC,0BAAS,CAAC,MAAM,CAAC,CAAC;IAE3C,4CAA4C;IAE5C;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,CAAc;QAC3B,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,WAAW,CAAC,CAAc;QAC/B,OAAO,CACL,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC,MAAM;YACT,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,oBAAoB,CAChD,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,MAAM,CAAC,CAAc;QAC1B,OAAO,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,+CAA+C;IAE/C;;;;;;;;OAQG;IACH,MAAM,CAAC,UAAU,CAAC,CAAc,EAAE,MAAc,EAAE,QAAgB,QAAQ;QACxE,IAAI,CAAC,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC,CAAC,gDAAgD;QACzE,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QACvD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAClB,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,IAAI,CAAC,CAAc,EAAE,MAAc;QACxC,IAAI,CAAC,CAAC,IAAI;YAAE,OAAO,CAAC,CAAC;QACrB,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;QACxB,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QACjE,OAAO,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;IAC3B,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,IAAI,CAAC,CAAc,EAAE,KAAa;QACvC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;QACd,CAAC,CAAC,YAAY,GAAG,KAAK,CAAC;IACzB,CAAC;;AAlFH,wCAmFC"}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* and mutate via `HealthBehavior.{takeDamage,heal,kill}`.
|
|
16
16
|
* Owner context: `@sharpee/world-model` — HEALTH layer (ADR-223 child A).
|
|
17
17
|
*/
|
|
18
|
-
import { ITrait } from '../trait';
|
|
18
|
+
import { ITrait } from '../trait.js';
|
|
19
19
|
/**
|
|
20
20
|
* Constructor/serialization data for {@link HealthTrait}. Every field is optional;
|
|
21
21
|
* see the class constructor for defaults.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"healthTrait.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/health/healthTrait.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"healthTrait.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/health/healthTrait.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,+CAA+C;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,kEAAkE;IAClE,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,4FAA4F;IAC5F,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;;;;GAQG;AACH,qBAAa,WAAY,YAAW,MAAM,EAAE,WAAW;IACrD,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAG,QAAQ,CAAU;IACzC,QAAQ,CAAC,IAAI,EAAG,QAAQ,CAAU;IAElC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,oBAAoB,EAAE,MAAM,CAAC;gBAEjB,IAAI,GAAE,WAAgB;CAQnC"}
|
package/traits/health/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { HealthTrait, IHealthData } from './healthTrait';
|
|
2
|
-
export { HealthBehavior } from './healthBehavior';
|
|
1
|
+
export { HealthTrait, IHealthData } from './healthTrait.js';
|
|
2
|
+
export { HealthBehavior } from './healthBehavior.js';
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/health/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/health/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
|
package/traits/health/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.HealthBehavior = exports.HealthTrait = void 0;
|
|
4
|
-
var
|
|
5
|
-
Object.defineProperty(exports, "HealthTrait", { enumerable: true, get: function () { return
|
|
6
|
-
var
|
|
7
|
-
Object.defineProperty(exports, "HealthBehavior", { enumerable: true, get: function () { return
|
|
4
|
+
var healthTrait_js_1 = require("./healthTrait.js");
|
|
5
|
+
Object.defineProperty(exports, "HealthTrait", { enumerable: true, get: function () { return healthTrait_js_1.HealthTrait; } });
|
|
6
|
+
var healthBehavior_js_1 = require("./healthBehavior.js");
|
|
7
|
+
Object.defineProperty(exports, "HealthBehavior", { enumerable: true, get: function () { return healthBehavior_js_1.HealthBehavior; } });
|
|
8
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/health/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/health/index.ts"],"names":[],"mappings":";;;AAAA,mDAA4D;AAAnD,6GAAA,WAAW,OAAA;AACpB,yDAAqD;AAA5C,mHAAA,cAAc,OAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Behavior } from '../../behaviors/behavior';
|
|
2
|
-
import { IFEntity } from '../../entities/if-entity';
|
|
1
|
+
import { Behavior } from '../../behaviors/behavior.js';
|
|
2
|
+
import { IFEntity } from '../../entities/if-entity.js';
|
|
3
3
|
/**
|
|
4
4
|
* Behavior for entities with identity.
|
|
5
5
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identityBehavior.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/identity/identityBehavior.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"identityBehavior.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/identity/identityBehavior.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAIvD;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C,MAAM,CAAC,cAAc,eAAwB;IAE7C;;;OAGG;IACH,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI;IA0B/C;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE;QAC5C,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,GAAG,MAAM;IAwBV;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM;IAWlD;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAW3D;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO;IAK7C;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI;IAK/D;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI;IAIrC;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI;IAItC;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM;IAQ1C;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM;IAQ1C;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS;IAK5F;;;OAGG;IACH,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,QAAQ,EAAE,GAAG,MAAM;CAchG"}
|
|
@@ -2,21 +2,21 @@
|
|
|
2
2
|
// packages/world-model/src/traits/identity/identityBehavior.ts
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.IdentityBehavior = void 0;
|
|
5
|
-
const
|
|
6
|
-
const
|
|
5
|
+
const behavior_js_1 = require("../../behaviors/behavior.js");
|
|
6
|
+
const trait_types_js_1 = require("../trait-types.js");
|
|
7
7
|
/**
|
|
8
8
|
* Behavior for entities with identity.
|
|
9
9
|
*
|
|
10
10
|
* Handles name formatting, visibility, and validation of identity data.
|
|
11
11
|
*/
|
|
12
|
-
class IdentityBehavior extends
|
|
13
|
-
static requiredTraits = [
|
|
12
|
+
class IdentityBehavior extends behavior_js_1.Behavior {
|
|
13
|
+
static requiredTraits = [trait_types_js_1.TraitType.IDENTITY];
|
|
14
14
|
/**
|
|
15
15
|
* Check if identity data is valid for game use
|
|
16
16
|
* @throws Error if identity data is invalid
|
|
17
17
|
*/
|
|
18
18
|
static validateIdentity(entity) {
|
|
19
|
-
const identity = IdentityBehavior.require(entity,
|
|
19
|
+
const identity = IdentityBehavior.require(entity, trait_types_js_1.TraitType.IDENTITY);
|
|
20
20
|
if (!identity.name || !identity.name.trim()) {
|
|
21
21
|
throw new Error(`Entity ${entity.id} has no name`);
|
|
22
22
|
}
|
|
@@ -39,7 +39,7 @@ class IdentityBehavior extends behavior_1.Behavior {
|
|
|
39
39
|
* Format an entity's name for display with proper article
|
|
40
40
|
*/
|
|
41
41
|
static formatName(entity, options) {
|
|
42
|
-
const identity = IdentityBehavior.require(entity,
|
|
42
|
+
const identity = IdentityBehavior.require(entity, trait_types_js_1.TraitType.IDENTITY);
|
|
43
43
|
let name;
|
|
44
44
|
if (identity.properName || !identity.article) {
|
|
45
45
|
name = identity.name;
|
|
@@ -72,7 +72,7 @@ class IdentityBehavior extends behavior_1.Behavior {
|
|
|
72
72
|
* Check if a given name matches this entity
|
|
73
73
|
*/
|
|
74
74
|
static matchesName(entity, name) {
|
|
75
|
-
const identity = IdentityBehavior.require(entity,
|
|
75
|
+
const identity = IdentityBehavior.require(entity, trait_types_js_1.TraitType.IDENTITY);
|
|
76
76
|
const lowerName = name.toLowerCase();
|
|
77
77
|
// Check main name
|
|
78
78
|
if (identity.name.toLowerCase() === lowerName)
|
|
@@ -84,14 +84,14 @@ class IdentityBehavior extends behavior_1.Behavior {
|
|
|
84
84
|
* Check if an entity should be visible in normal circumstances
|
|
85
85
|
*/
|
|
86
86
|
static isConcealed(entity) {
|
|
87
|
-
const identity = IdentityBehavior.require(entity,
|
|
87
|
+
const identity = IdentityBehavior.require(entity, trait_types_js_1.TraitType.IDENTITY);
|
|
88
88
|
return identity.concealed;
|
|
89
89
|
}
|
|
90
90
|
/**
|
|
91
91
|
* Set whether an entity is concealed
|
|
92
92
|
*/
|
|
93
93
|
static setConcealed(entity, concealed) {
|
|
94
|
-
const identity = IdentityBehavior.require(entity,
|
|
94
|
+
const identity = IdentityBehavior.require(entity, trait_types_js_1.TraitType.IDENTITY);
|
|
95
95
|
identity.concealed = concealed;
|
|
96
96
|
}
|
|
97
97
|
/**
|
|
@@ -110,27 +110,27 @@ class IdentityBehavior extends behavior_1.Behavior {
|
|
|
110
110
|
* Get the weight of the entity (not including contents)
|
|
111
111
|
*/
|
|
112
112
|
static getWeight(entity) {
|
|
113
|
-
if (!entity.has(
|
|
113
|
+
if (!entity.has(trait_types_js_1.TraitType.IDENTITY)) {
|
|
114
114
|
return 0; // Default weight for items without identity trait
|
|
115
115
|
}
|
|
116
|
-
const identity = entity.get(
|
|
116
|
+
const identity = entity.get(trait_types_js_1.TraitType.IDENTITY);
|
|
117
117
|
return identity?.weight || 0;
|
|
118
118
|
}
|
|
119
119
|
/**
|
|
120
120
|
* Get the volume of the entity
|
|
121
121
|
*/
|
|
122
122
|
static getVolume(entity) {
|
|
123
|
-
if (!entity.has(
|
|
123
|
+
if (!entity.has(trait_types_js_1.TraitType.IDENTITY)) {
|
|
124
124
|
return 0; // Default volume for items without identity trait
|
|
125
125
|
}
|
|
126
|
-
const identity = entity.get(
|
|
126
|
+
const identity = entity.get(trait_types_js_1.TraitType.IDENTITY);
|
|
127
127
|
return identity?.volume || 0;
|
|
128
128
|
}
|
|
129
129
|
/**
|
|
130
130
|
* Get the size category of the entity
|
|
131
131
|
*/
|
|
132
132
|
static getSize(entity) {
|
|
133
|
-
const identity = IdentityBehavior.require(entity,
|
|
133
|
+
const identity = IdentityBehavior.require(entity, trait_types_js_1.TraitType.IDENTITY);
|
|
134
134
|
return identity.size;
|
|
135
135
|
}
|
|
136
136
|
/**
|
|
@@ -138,10 +138,10 @@ class IdentityBehavior extends behavior_1.Behavior {
|
|
|
138
138
|
* Note: This method needs a world context to access contents
|
|
139
139
|
*/
|
|
140
140
|
static getTotalWeight(entity, getContents) {
|
|
141
|
-
const identity = IdentityBehavior.require(entity,
|
|
141
|
+
const identity = IdentityBehavior.require(entity, trait_types_js_1.TraitType.IDENTITY);
|
|
142
142
|
let weight = identity.weight || 0;
|
|
143
143
|
// Add weight of contents if this is a container/supporter and we have a way to get contents
|
|
144
|
-
if (getContents && (entity.has(
|
|
144
|
+
if (getContents && (entity.has(trait_types_js_1.TraitType.CONTAINER) || entity.has(trait_types_js_1.TraitType.SUPPORTER))) {
|
|
145
145
|
const contents = getContents(entity.id);
|
|
146
146
|
for (const item of contents) {
|
|
147
147
|
weight += IdentityBehavior.getTotalWeight(item, getContents);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identityBehavior.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/identity/identityBehavior.ts"],"names":[],"mappings":";AAAA,+DAA+D;;;AAE/D,
|
|
1
|
+
{"version":3,"file":"identityBehavior.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/identity/identityBehavior.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ITrait } from '../trait';
|
|
1
|
+
import { ITrait } from '../trait.js';
|
|
2
2
|
/**
|
|
3
3
|
* Identity trait provides basic naming and description for entities.
|
|
4
4
|
* This is one of the most fundamental traits in IF.
|
|
@@ -33,6 +33,13 @@ export declare class IdentityTrait implements ITrait {
|
|
|
33
33
|
properName: boolean;
|
|
34
34
|
/** Article to use with the name ("a", "an", "the", "some", or empty for proper names) */
|
|
35
35
|
article: string;
|
|
36
|
+
/**
|
|
37
|
+
* Pronoun set for gendered / neopronoun reference (ADR-242 D6): one of
|
|
38
|
+
* the standard sets ('he' | 'she' | 'it' | 'they') or a named set
|
|
39
|
+
* registered with the language provider. Absent = the phrase chain's
|
|
40
|
+
* by-number fallback — no default is injected anywhere.
|
|
41
|
+
*/
|
|
42
|
+
pronounSet?: string;
|
|
36
43
|
/**
|
|
37
44
|
* Author-supplied plural form for irregular nouns (ADR-190), e.g. "geese" for
|
|
38
45
|
* "goose". The `list`/`count` formatters use this when set, else fall back to the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identityTrait.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/identity/identityTrait.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"identityTrait.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/identity/identityTrait.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrC;;;;;;GAMG;AACH,qBAAa,aAAc,YAAW,MAAM;IAC1C,MAAM,CAAC,QAAQ,CAAC,IAAI,aAAsB;IAC1C,QAAQ,CAAC,IAAI,aAAsB;IAEnC,iCAAiC;IACjC,IAAI,SAAM;IAEV,4CAA4C;IAC5C,WAAW,SAAM;IAEjB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,iEAAiE;IACjE,OAAO,EAAE,MAAM,EAAE,CAAM;IAEvB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,oEAAoE;IACpE,UAAU,UAAS;IAEnB,yFAAyF;IACzF,OAAO,SAAO;IAEd;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,wDAAwD;IACxD,SAAS,UAAS;IAElB,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,kCAAkC;IAClC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IAEtD;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAC;IAE1C;;;;OAIG;IACH,UAAU,EAAE,MAAM,EAAE,CAAM;IAE1B;;;;;;;;;OASG;IACH,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAE9D;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;gBAEf,IAAI,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC;CAK1C"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// packages/world-model/src/traits/identity/identityTrait.ts
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.IdentityTrait = void 0;
|
|
5
|
-
const
|
|
5
|
+
const trait_types_js_1 = require("../trait-types.js");
|
|
6
6
|
/**
|
|
7
7
|
* Identity trait provides basic naming and description for entities.
|
|
8
8
|
* This is one of the most fundamental traits in IF.
|
|
@@ -11,8 +11,8 @@ const trait_types_1 = require("../trait-types");
|
|
|
11
11
|
* should be handled by IdentityBehavior.
|
|
12
12
|
*/
|
|
13
13
|
class IdentityTrait {
|
|
14
|
-
static type =
|
|
15
|
-
type =
|
|
14
|
+
static type = trait_types_js_1.TraitType.IDENTITY;
|
|
15
|
+
type = trait_types_js_1.TraitType.IDENTITY;
|
|
16
16
|
/** Primary name of the entity */
|
|
17
17
|
name = '';
|
|
18
18
|
/** Full description shown when examining */
|
|
@@ -37,6 +37,13 @@ class IdentityTrait {
|
|
|
37
37
|
properName = false;
|
|
38
38
|
/** Article to use with the name ("a", "an", "the", "some", or empty for proper names) */
|
|
39
39
|
article = 'a';
|
|
40
|
+
/**
|
|
41
|
+
* Pronoun set for gendered / neopronoun reference (ADR-242 D6): one of
|
|
42
|
+
* the standard sets ('he' | 'she' | 'it' | 'they') or a named set
|
|
43
|
+
* registered with the language provider. Absent = the phrase chain's
|
|
44
|
+
* by-number fallback — no default is injected anywhere.
|
|
45
|
+
*/
|
|
46
|
+
pronounSet;
|
|
40
47
|
/**
|
|
41
48
|
* Author-supplied plural form for irregular nouns (ADR-190), e.g. "geese" for
|
|
42
49
|
* "goose". The `list`/`count` formatters use this when set, else fall back to the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identityTrait.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/identity/identityTrait.ts"],"names":[],"mappings":";AAAA,4DAA4D;;;AAG5D,
|
|
1
|
+
{"version":3,"file":"identityTrait.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/identity/identityTrait.ts"],"names":[],"mappings":";AAAA,4DAA4D;;;AAG5D,sDAA8C;AAE9C;;;;;;GAMG;AACH,MAAa,aAAa;IACxB,MAAM,CAAU,IAAI,GAAG,0BAAS,CAAC,QAAQ,CAAC;IACjC,IAAI,GAAG,0BAAS,CAAC,QAAQ,CAAC;IAEnC,iCAAiC;IACjC,IAAI,GAAG,EAAE,CAAC;IAEV,4CAA4C;IAC5C,WAAW,GAAG,EAAE,CAAC;IAEjB;;;;OAIG;IACH,MAAM,CAAU;IAEhB;;;;OAIG;IACH,aAAa,CAAU;IAEvB,iEAAiE;IACjE,OAAO,GAAa,EAAE,CAAC;IAEvB,+CAA+C;IAC/C,KAAK,CAAU;IAEf,oEAAoE;IACpE,UAAU,GAAG,KAAK,CAAC;IAEnB,yFAAyF;IACzF,OAAO,GAAG,GAAG,CAAC;IAEd;;;;;OAKG;IACH,UAAU,CAAU;IAEpB;;;;OAIG;IACH,MAAM,CAAU;IAEhB,wDAAwD;IACxD,SAAS,GAAG,KAAK,CAAC;IAElB,gEAAgE;IAChE,MAAM,CAAU;IAEhB,gEAAgE;IAChE,MAAM,CAAU;IAEhB,kCAAkC;IAClC,IAAI,CAAkD;IAEtD;;;;;OAKG;IACH,iBAAiB,CAAyB;IAE1C;;;;OAIG;IACH,UAAU,GAAa,EAAE,CAAC;IAE1B;;;;;;;;;OASG;IACH,QAAQ,CAAsD;IAE9D;;;;OAIG;IACH,MAAM,CAAU;IAEhB;;;OAGG;IACH,iBAAiB,CAAU;IAE3B,YAAY,IAA6B;QACvC,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;;AA3GH,sCA4GC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/identity/index.ts"],"names":[],"mappings":"AAEA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/identity/index.ts"],"names":[],"mappings":"AAEA,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC"}
|
package/traits/identity/index.js
CHANGED
|
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
16
16
|
};
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
__exportStar(require("./identityTrait"), exports);
|
|
19
|
-
__exportStar(require("./identityBehavior"), exports);
|
|
18
|
+
__exportStar(require("./identityTrait.js"), exports);
|
|
19
|
+
__exportStar(require("./identityBehavior.js"), exports);
|
|
20
|
+
__exportStar(require("./name-vocabulary.js"), exports);
|
|
20
21
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/identity/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;;;;;;;;;;;;;;AAEpD,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/identity/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;;;;;;;;;;;;;;AAEpD,qDAAmC;AACnC,wDAAsC;AACtC,uDAAqC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Name-vocabulary derivation (ADR-231 D3, PIN 2).
|
|
3
|
+
*
|
|
4
|
+
* Purpose: derive the matchable content words of an entity name as a PURE
|
|
5
|
+
* on-demand computation from the current name — never stored on the trait.
|
|
6
|
+
* The command validator (stdlib) and any other matcher call this helper at
|
|
7
|
+
* match time, so Chord-loaded and TS-authored entities behave identically
|
|
8
|
+
* by construction, and runtime renames can never leave stale vocabulary.
|
|
9
|
+
*
|
|
10
|
+
* Public interface: `deriveNameVocabulary(name)`, `NAME_VOCABULARY_STOPWORDS`.
|
|
11
|
+
* Owner context: world-model identity area (naming/identity utilities).
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Stopwords dropped from name vocabulary (PIN 2's content-word definition).
|
|
15
|
+
* "bag of holding" → {bag, holding}; "the crystal skull" → {crystal, skull}.
|
|
16
|
+
*/
|
|
17
|
+
export declare const NAME_VOCABULARY_STOPWORDS: ReadonlySet<string>;
|
|
18
|
+
/**
|
|
19
|
+
* Derive the content-word vocabulary of an entity name.
|
|
20
|
+
*
|
|
21
|
+
* Pure function of the input string — no storage, no side effects
|
|
22
|
+
* (invariant: vocabulary is always a derivation of the CURRENT name).
|
|
23
|
+
*
|
|
24
|
+
* @param name The entity's display name (any casing/whitespace).
|
|
25
|
+
* @returns Lowercased content words in order of appearance, deduplicated:
|
|
26
|
+
* whitespace-tokenized, stopwords ({the, a, an, of}) removed. Hyphenated
|
|
27
|
+
* tokens stay single words ("jack-in-the-box" → ["jack-in-the-box"]).
|
|
28
|
+
* Empty or stopword-only names yield [].
|
|
29
|
+
*/
|
|
30
|
+
export declare function deriveNameVocabulary(name: string): string[];
|
|
31
|
+
//# sourceMappingURL=name-vocabulary.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"name-vocabulary.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/identity/name-vocabulary.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AAEH;;;GAGG;AACH,eAAO,MAAM,yBAAyB,EAAE,WAAW,CAAC,MAAM,CAKxD,CAAC;AAEH;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAmB3D"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// packages/world-model/src/traits/identity/name-vocabulary.ts
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.NAME_VOCABULARY_STOPWORDS = void 0;
|
|
5
|
+
exports.deriveNameVocabulary = deriveNameVocabulary;
|
|
6
|
+
/**
|
|
7
|
+
* Name-vocabulary derivation (ADR-231 D3, PIN 2).
|
|
8
|
+
*
|
|
9
|
+
* Purpose: derive the matchable content words of an entity name as a PURE
|
|
10
|
+
* on-demand computation from the current name — never stored on the trait.
|
|
11
|
+
* The command validator (stdlib) and any other matcher call this helper at
|
|
12
|
+
* match time, so Chord-loaded and TS-authored entities behave identically
|
|
13
|
+
* by construction, and runtime renames can never leave stale vocabulary.
|
|
14
|
+
*
|
|
15
|
+
* Public interface: `deriveNameVocabulary(name)`, `NAME_VOCABULARY_STOPWORDS`.
|
|
16
|
+
* Owner context: world-model identity area (naming/identity utilities).
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Stopwords dropped from name vocabulary (PIN 2's content-word definition).
|
|
20
|
+
* "bag of holding" → {bag, holding}; "the crystal skull" → {crystal, skull}.
|
|
21
|
+
*/
|
|
22
|
+
exports.NAME_VOCABULARY_STOPWORDS = new Set([
|
|
23
|
+
'the',
|
|
24
|
+
'a',
|
|
25
|
+
'an',
|
|
26
|
+
'of'
|
|
27
|
+
]);
|
|
28
|
+
/**
|
|
29
|
+
* Derive the content-word vocabulary of an entity name.
|
|
30
|
+
*
|
|
31
|
+
* Pure function of the input string — no storage, no side effects
|
|
32
|
+
* (invariant: vocabulary is always a derivation of the CURRENT name).
|
|
33
|
+
*
|
|
34
|
+
* @param name The entity's display name (any casing/whitespace).
|
|
35
|
+
* @returns Lowercased content words in order of appearance, deduplicated:
|
|
36
|
+
* whitespace-tokenized, stopwords ({the, a, an, of}) removed. Hyphenated
|
|
37
|
+
* tokens stay single words ("jack-in-the-box" → ["jack-in-the-box"]).
|
|
38
|
+
* Empty or stopword-only names yield [].
|
|
39
|
+
*/
|
|
40
|
+
function deriveNameVocabulary(name) {
|
|
41
|
+
if (!name) {
|
|
42
|
+
return [];
|
|
43
|
+
}
|
|
44
|
+
const seen = new Set();
|
|
45
|
+
const words = [];
|
|
46
|
+
for (const token of name.toLowerCase().split(/\s+/)) {
|
|
47
|
+
if (!token || exports.NAME_VOCABULARY_STOPWORDS.has(token)) {
|
|
48
|
+
continue;
|
|
49
|
+
}
|
|
50
|
+
if (!seen.has(token)) {
|
|
51
|
+
seen.add(token);
|
|
52
|
+
words.push(token);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return words;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=name-vocabulary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"name-vocabulary.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/identity/name-vocabulary.ts"],"names":[],"mappings":";AAAA,8DAA8D;;;AAsC9D,oDAmBC;AAvDD;;;;;;;;;;;GAWG;AAEH;;;GAGG;AACU,QAAA,yBAAyB,GAAwB,IAAI,GAAG,CAAC;IACpE,KAAK;IACL,GAAG;IACH,IAAI;IACJ,IAAI;CACL,CAAC,CAAC;AAEH;;;;;;;;;;;GAWG;AACH,SAAgB,oBAAoB,CAAC,IAAY;IAC/C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,KAAK,IAAI,iCAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACnD,SAAS;QACX,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -3,47 +3,46 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Maps trait types to their implementation classes
|
|
5
5
|
*/
|
|
6
|
-
import { TraitType } from './trait-types';
|
|
7
|
-
import { ITraitConstructor } from './trait';
|
|
8
|
-
import { IdentityTrait } from './identity/identityTrait';
|
|
9
|
-
import { ContainerTrait } from './container/containerTrait';
|
|
10
|
-
import { SupporterTrait } from './supporter/supporterTrait';
|
|
11
|
-
import { RoomTrait } from './room/roomTrait';
|
|
12
|
-
import { WearableTrait } from './wearable/wearableTrait';
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import {
|
|
28
|
-
import {
|
|
29
|
-
import {
|
|
30
|
-
import {
|
|
31
|
-
import {
|
|
32
|
-
import {
|
|
33
|
-
import {
|
|
34
|
-
import {
|
|
35
|
-
import {
|
|
36
|
-
import {
|
|
37
|
-
import {
|
|
38
|
-
import {
|
|
39
|
-
import {
|
|
40
|
-
import {
|
|
41
|
-
import {
|
|
42
|
-
import {
|
|
43
|
-
import {
|
|
44
|
-
import {
|
|
45
|
-
import {
|
|
46
|
-
import { StoryInfoTrait } from './story-info/storyInfoTrait';
|
|
6
|
+
import { TraitType } from './trait-types.js';
|
|
7
|
+
import { ITrait, ITraitConstructor } from './trait.js';
|
|
8
|
+
import { IdentityTrait } from './identity/identityTrait.js';
|
|
9
|
+
import { ContainerTrait } from './container/containerTrait.js';
|
|
10
|
+
import { SupporterTrait } from './supporter/supporterTrait.js';
|
|
11
|
+
import { RoomTrait } from './room/roomTrait.js';
|
|
12
|
+
import { WearableTrait } from './wearable/wearableTrait.js';
|
|
13
|
+
import { EdibleTrait } from './edible/edibleTrait.js';
|
|
14
|
+
import { SceneryTrait } from './scenery/sceneryTrait.js';
|
|
15
|
+
import { OpenableTrait } from './openable/openableTrait.js';
|
|
16
|
+
import { LockableTrait } from './lockable/lockableTrait.js';
|
|
17
|
+
import { CuttableTrait } from './cuttable/cuttableTrait.js';
|
|
18
|
+
import { DiggableTrait } from './diggable/diggableTrait.js';
|
|
19
|
+
import { SwitchableTrait } from './switchable/switchableTrait.js';
|
|
20
|
+
import { ReadableTrait } from './readable/readableTrait.js';
|
|
21
|
+
import { LightSourceTrait } from './light-source/lightSourceTrait.js';
|
|
22
|
+
import { DoorTrait } from './door/doorTrait.js';
|
|
23
|
+
import { ClimbableTrait } from './climbable/climbableTrait.js';
|
|
24
|
+
import { RegionTrait } from './region/regionTrait.js';
|
|
25
|
+
import { SceneTrait } from './scene/sceneTrait.js';
|
|
26
|
+
import { ActorTrait } from './actor/actorTrait.js';
|
|
27
|
+
import { ExitTrait } from './exit/exitTrait.js';
|
|
28
|
+
import { PullableTrait } from './pullable/pullableTrait.js';
|
|
29
|
+
import { AttachedTrait } from './attached/attachedTrait.js';
|
|
30
|
+
import { PushableTrait } from './pushable/pushableTrait.js';
|
|
31
|
+
import { ButtonTrait } from './button/buttonTrait.js';
|
|
32
|
+
import { MoveableSceneryTrait } from './moveable-scenery/moveableSceneryTrait.js';
|
|
33
|
+
import { WeaponTrait } from './weapon/weaponTrait.js';
|
|
34
|
+
import { BreakableTrait } from './breakable/breakableTrait.js';
|
|
35
|
+
import { DestructibleTrait } from './destructible/destructibleTrait.js';
|
|
36
|
+
import { CombatantTrait } from './combatant/combatantTrait.js';
|
|
37
|
+
import { EquippedTrait } from './equipped/equippedTrait.js';
|
|
38
|
+
import { HealthTrait } from './health/healthTrait.js';
|
|
39
|
+
import { DeadlyRoomTrait } from './deadly-room/deadlyRoomTrait.js';
|
|
40
|
+
import { NpcTrait } from './npc/npcTrait.js';
|
|
41
|
+
import { OpenInventoryTrait } from './open-inventory/openInventoryTrait.js';
|
|
42
|
+
import { CharacterModelTrait } from './character-model/characterModelTrait.js';
|
|
43
|
+
import { VehicleTrait } from './vehicle/vehicleTrait.js';
|
|
44
|
+
import { EnterableTrait } from './enterable/enterableTrait.js';
|
|
45
|
+
import { StoryInfoTrait } from './story-info/storyInfoTrait.js';
|
|
47
46
|
/**
|
|
48
47
|
* Map of trait types to their constructors
|
|
49
48
|
*/
|
|
@@ -56,5 +55,29 @@ export declare function getTraitImplementation(type: TraitType): ITraitConstruct
|
|
|
56
55
|
* Create trait instance by type
|
|
57
56
|
*/
|
|
58
57
|
export declare function createTrait(type: TraitType, data?: any): InstanceType<ITraitConstructor>;
|
|
59
|
-
|
|
58
|
+
/**
|
|
59
|
+
* Rehydrate a serialized trait to a live instance of its implementation class
|
|
60
|
+
* (platform-issue-sweep Phase 5, 2026-07-20).
|
|
61
|
+
*
|
|
62
|
+
* Serialization captures own enumerable fields only; prototype accessors
|
|
63
|
+
* (WearableTrait.isWorn) and methods (ConcealmentTrait.supportsPosition) live
|
|
64
|
+
* on the class prototype and were LOST by the old raw-JSON rehydration —
|
|
65
|
+
* after save/restore/undo, any consumer of a trait getter or method saw
|
|
66
|
+
* `undefined` / not-a-function (e.g. getContents' worn-item filter reads
|
|
67
|
+
* `wearable.isWorn`, so a restored worn item silently escaped the filter).
|
|
68
|
+
*
|
|
69
|
+
* Object.create + Object.assign restores the prototype and copies exactly
|
|
70
|
+
* the serialized state without running constructor logic (constructor shapes
|
|
71
|
+
* vary per trait; a save of the same code version carries the complete own
|
|
72
|
+
* state). Unknown types — story-defined traits — keep the raw data object,
|
|
73
|
+
* as before: their classes are not registered here.
|
|
74
|
+
*
|
|
75
|
+
* @param traitData a serialized trait ({ type, ...own fields })
|
|
76
|
+
* @returns a prototype-restored instance for known core types; the raw data
|
|
77
|
+
* object for unknown (story-defined) types
|
|
78
|
+
*/
|
|
79
|
+
export declare function rehydrateTrait(traitData: {
|
|
80
|
+
type: string;
|
|
81
|
+
} & Record<string, unknown>): ITrait;
|
|
82
|
+
export { IdentityTrait, ContainerTrait, SupporterTrait, RoomTrait, WearableTrait, EdibleTrait, SceneryTrait, OpenableTrait, LockableTrait, CuttableTrait, DiggableTrait, SwitchableTrait, ReadableTrait, LightSourceTrait, DoorTrait, RegionTrait, SceneTrait, ActorTrait, ExitTrait, ClimbableTrait, PullableTrait, AttachedTrait, PushableTrait, ButtonTrait, MoveableSceneryTrait, WeaponTrait, BreakableTrait, DestructibleTrait, CombatantTrait, EquippedTrait, HealthTrait, DeadlyRoomTrait, NpcTrait, OpenInventoryTrait, CharacterModelTrait, VehicleTrait, EnterableTrait, StoryInfoTrait };
|
|
60
83
|
//# sourceMappingURL=implementations.d.ts.map
|