@sharpee/stdlib 3.0.0 → 3.3.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/actions/author/index.d.ts +1 -1
- package/actions/author/index.d.ts.map +1 -1
- package/actions/author/index.js +2 -2
- package/actions/author/index.js.map +1 -1
- package/actions/author/trace.d.ts +3 -3
- package/actions/author/trace.d.ts.map +1 -1
- package/actions/author/trace.js +2 -2
- package/actions/author/trace.js.map +1 -1
- package/actions/base/index.d.ts +2 -2
- package/actions/base/index.d.ts.map +1 -1
- package/actions/base/index.js +2 -2
- package/actions/base/index.js.map +1 -1
- package/actions/base/migration-shim.d.ts +1 -1
- package/actions/base/migration-shim.d.ts.map +1 -1
- package/actions/base/report-helpers.d.ts +1 -1
- package/actions/base/report-helpers.d.ts.map +1 -1
- package/actions/base/report-helpers.js +3 -3
- package/actions/base/report-helpers.js.map +1 -1
- package/actions/base/snapshot-utils.js +2 -2
- package/actions/base/snapshot-utils.js.map +1 -1
- package/actions/capability-dispatch.d.ts +3 -3
- package/actions/capability-dispatch.d.ts.map +1 -1
- package/actions/capability-dispatch.js +18 -8
- package/actions/capability-dispatch.js.map +1 -1
- package/actions/constants.d.ts +2 -0
- package/actions/constants.d.ts.map +1 -1
- package/actions/constants.js +3 -0
- package/actions/constants.js.map +1 -1
- package/actions/context-adapter.d.ts +2 -2
- package/actions/context-adapter.d.ts.map +1 -1
- package/actions/data-builder-types.d.ts +1 -1
- package/actions/data-builder-types.d.ts.map +1 -1
- package/actions/enhanced-context.d.ts +5 -4
- package/actions/enhanced-context.d.ts.map +1 -1
- package/actions/enhanced-context.js +85 -67
- package/actions/enhanced-context.js.map +1 -1
- package/actions/enhanced-types.d.ts +29 -3
- package/actions/enhanced-types.d.ts.map +1 -1
- package/actions/enhanced-types.js.map +1 -1
- package/actions/helpers/emit-illustrations.d.ts +1 -1
- package/actions/helpers/emit-illustrations.d.ts.map +1 -1
- package/actions/index.d.ts +10 -8
- package/actions/index.d.ts.map +1 -1
- package/actions/index.js +16 -10
- package/actions/index.js.map +1 -1
- package/actions/lifecycle/descriptor.d.ts +111 -0
- package/actions/lifecycle/descriptor.d.ts.map +1 -0
- package/actions/lifecycle/descriptor.js +22 -0
- package/actions/lifecycle/descriptor.js.map +1 -0
- package/actions/lifecycle/index.d.ts +14 -0
- package/actions/lifecycle/index.d.ts.map +1 -0
- package/actions/lifecycle/index.js +28 -0
- package/actions/lifecycle/index.js.map +1 -0
- package/actions/lifecycle/lifecycle-engine.d.ts +189 -0
- package/actions/lifecycle/lifecycle-engine.d.ts.map +1 -0
- package/actions/lifecycle/lifecycle-engine.js +272 -0
- package/actions/lifecycle/lifecycle-engine.js.map +1 -0
- package/actions/lifecycle/multi-object-lifecycle.d.ts +113 -0
- package/actions/lifecycle/multi-object-lifecycle.d.ts.map +1 -0
- package/actions/lifecycle/multi-object-lifecycle.js +138 -0
- package/actions/lifecycle/multi-object-lifecycle.js.map +1 -0
- package/actions/lifecycle/registry.d.ts +40 -0
- package/actions/lifecycle/registry.d.ts.map +1 -0
- package/actions/lifecycle/registry.js +131 -0
- package/actions/lifecycle/registry.js.map +1 -0
- package/actions/meta-action.d.ts +1 -1
- package/actions/meta-action.d.ts.map +1 -1
- package/actions/meta-action.js +2 -2
- package/actions/meta-action.js.map +1 -1
- package/actions/registry.d.ts +2 -2
- package/actions/registry.d.ts.map +1 -1
- package/actions/standard/about/about.d.ts +2 -2
- package/actions/standard/about/about.d.ts.map +1 -1
- package/actions/standard/about/about.js +4 -3
- package/actions/standard/about/about.js.map +1 -1
- package/actions/standard/about/index.d.ts +2 -2
- package/actions/standard/about/index.d.ts.map +1 -1
- package/actions/standard/about/index.js +2 -2
- package/actions/standard/about/index.js.map +1 -1
- package/actions/standard/again/again.d.ts +2 -2
- package/actions/standard/again/again.d.ts.map +1 -1
- package/actions/standard/again/again.js +4 -3
- package/actions/standard/again/again.js.map +1 -1
- package/actions/standard/again/index.d.ts +2 -2
- package/actions/standard/again/index.d.ts.map +1 -1
- package/actions/standard/again/index.js +2 -2
- package/actions/standard/again/index.js.map +1 -1
- package/actions/standard/asking/asking.d.ts +25 -0
- package/actions/standard/asking/asking.d.ts.map +1 -0
- package/actions/standard/asking/asking.js +123 -0
- package/actions/standard/asking/asking.js.map +1 -0
- package/actions/standard/asking/index.d.ts +5 -0
- package/actions/standard/asking/index.d.ts.map +1 -0
- package/actions/standard/asking/index.js +10 -0
- package/actions/standard/asking/index.js.map +1 -0
- package/actions/standard/attacking/attacking-data.d.ts +2 -2
- package/actions/standard/attacking/attacking-data.d.ts.map +1 -1
- package/actions/standard/attacking/attacking-events.d.ts +1 -1
- package/actions/standard/attacking/attacking-events.d.ts.map +1 -1
- package/actions/standard/attacking/attacking-types.d.ts +3 -0
- package/actions/standard/attacking/attacking-types.d.ts.map +1 -1
- package/actions/standard/attacking/attacking-types.js.map +1 -1
- package/actions/standard/attacking/attacking.d.ts +16 -2
- package/actions/standard/attacking/attacking.d.ts.map +1 -1
- package/actions/standard/attacking/attacking.js +194 -127
- package/actions/standard/attacking/attacking.js.map +1 -1
- package/actions/standard/attacking/index.d.ts +2 -2
- package/actions/standard/attacking/index.d.ts.map +1 -1
- package/actions/standard/attacking/index.js +5 -4
- package/actions/standard/attacking/index.js.map +1 -1
- package/actions/standard/climbing/climbing.d.ts +12 -2
- package/actions/standard/climbing/climbing.d.ts.map +1 -1
- package/actions/standard/climbing/climbing.js +111 -29
- package/actions/standard/climbing/climbing.js.map +1 -1
- package/actions/standard/climbing/index.d.ts +2 -2
- package/actions/standard/climbing/index.d.ts.map +1 -1
- package/actions/standard/climbing/index.js +2 -2
- package/actions/standard/climbing/index.js.map +1 -1
- package/actions/standard/closing/closing-data.d.ts +1 -1
- package/actions/standard/closing/closing-data.d.ts.map +1 -1
- package/actions/standard/closing/closing-data.js +3 -3
- package/actions/standard/closing/closing-data.js.map +1 -1
- package/actions/standard/closing/closing-event-data.d.ts +1 -1
- package/actions/standard/closing/closing-event-data.d.ts.map +1 -1
- package/actions/standard/closing/closing.d.ts +8 -2
- package/actions/standard/closing/closing.d.ts.map +1 -1
- package/actions/standard/closing/closing.js +61 -78
- package/actions/standard/closing/closing.js.map +1 -1
- package/actions/standard/closing/index.d.ts +3 -3
- package/actions/standard/closing/index.d.ts.map +1 -1
- package/actions/standard/closing/index.js +2 -2
- package/actions/standard/closing/index.js.map +1 -1
- package/actions/standard/cutting/cutting-messages.d.ts +17 -0
- package/actions/standard/cutting/cutting-messages.d.ts.map +1 -0
- package/actions/standard/cutting/cutting-messages.js +22 -0
- package/actions/standard/cutting/cutting-messages.js.map +1 -0
- package/actions/standard/cutting/cutting.d.ts +35 -0
- package/actions/standard/cutting/cutting.d.ts.map +1 -0
- package/actions/standard/cutting/cutting.js +232 -0
- package/actions/standard/cutting/cutting.js.map +1 -0
- package/actions/standard/cutting/index.d.ts +7 -0
- package/actions/standard/cutting/index.d.ts.map +1 -0
- package/actions/standard/cutting/index.js +12 -0
- package/actions/standard/cutting/index.js.map +1 -0
- package/actions/standard/deadly-room-death/deadly-room-death.d.ts +16 -0
- package/actions/standard/deadly-room-death/deadly-room-death.d.ts.map +1 -0
- package/actions/standard/deadly-room-death/deadly-room-death.js +44 -0
- package/actions/standard/deadly-room-death/deadly-room-death.js.map +1 -0
- package/actions/standard/deadly-room-death/index.d.ts +2 -0
- package/actions/standard/deadly-room-death/index.d.ts.map +1 -0
- package/actions/standard/deadly-room-death/index.js +6 -0
- package/actions/standard/deadly-room-death/index.js.map +1 -0
- package/actions/standard/digging/digging-messages.d.ts +17 -0
- package/actions/standard/digging/digging-messages.d.ts.map +1 -0
- package/actions/standard/digging/digging-messages.js +22 -0
- package/actions/standard/digging/digging-messages.js.map +1 -0
- package/actions/standard/digging/digging.d.ts +35 -0
- package/actions/standard/digging/digging.d.ts.map +1 -0
- package/actions/standard/digging/digging.js +232 -0
- package/actions/standard/digging/digging.js.map +1 -0
- package/actions/standard/digging/index.d.ts +7 -0
- package/actions/standard/digging/index.d.ts.map +1 -0
- package/actions/standard/digging/index.js +12 -0
- package/actions/standard/digging/index.js.map +1 -0
- package/actions/standard/drinking/drinking.d.ts +11 -2
- package/actions/standard/drinking/drinking.d.ts.map +1 -1
- package/actions/standard/drinking/drinking.js +53 -15
- package/actions/standard/drinking/drinking.js.map +1 -1
- package/actions/standard/drinking/index.d.ts +2 -2
- package/actions/standard/drinking/index.d.ts.map +1 -1
- package/actions/standard/drinking/index.js +3 -3
- package/actions/standard/drinking/index.js.map +1 -1
- package/actions/standard/dropping/dropping-data.d.ts +2 -2
- package/actions/standard/dropping/dropping-data.d.ts.map +1 -1
- package/actions/standard/dropping/dropping-data.js +9 -9
- package/actions/standard/dropping/dropping-data.js.map +1 -1
- package/actions/standard/dropping/dropping-events.d.ts +1 -1
- package/actions/standard/dropping/dropping-events.d.ts.map +1 -1
- package/actions/standard/dropping/dropping-types.d.ts +10 -18
- package/actions/standard/dropping/dropping-types.d.ts.map +1 -1
- package/actions/standard/dropping/dropping-types.js.map +1 -1
- package/actions/standard/dropping/dropping.d.ts +8 -2
- package/actions/standard/dropping/dropping.d.ts.map +1 -1
- package/actions/standard/dropping/dropping.js +135 -146
- package/actions/standard/dropping/dropping.js.map +1 -1
- package/actions/standard/dropping/index.d.ts +2 -2
- package/actions/standard/dropping/index.d.ts.map +1 -1
- package/actions/standard/dropping/index.js +2 -2
- package/actions/standard/dropping/index.js.map +1 -1
- package/actions/standard/eating/eating.d.ts +11 -2
- package/actions/standard/eating/eating.d.ts.map +1 -1
- package/actions/standard/eating/eating.js +53 -15
- package/actions/standard/eating/eating.js.map +1 -1
- package/actions/standard/eating/index.d.ts +2 -2
- package/actions/standard/eating/index.d.ts.map +1 -1
- package/actions/standard/eating/index.js +3 -3
- package/actions/standard/eating/index.js.map +1 -1
- package/actions/standard/entering/entering.d.ts +16 -7
- package/actions/standard/entering/entering.d.ts.map +1 -1
- package/actions/standard/entering/entering.js +65 -87
- package/actions/standard/entering/entering.js.map +1 -1
- package/actions/standard/entering/index.d.ts +2 -2
- package/actions/standard/entering/index.d.ts.map +1 -1
- package/actions/standard/entering/index.js +2 -2
- package/actions/standard/entering/index.js.map +1 -1
- package/actions/standard/examining/examining-data.d.ts +1 -1
- package/actions/standard/examining/examining-data.d.ts.map +1 -1
- package/actions/standard/examining/examining-data.js +72 -17
- package/actions/standard/examining/examining-data.js.map +1 -1
- package/actions/standard/examining/examining.d.ts +8 -2
- package/actions/standard/examining/examining.d.ts.map +1 -1
- package/actions/standard/examining/examining.js +54 -65
- package/actions/standard/examining/examining.js.map +1 -1
- package/actions/standard/examining/index.d.ts +2 -2
- package/actions/standard/examining/index.d.ts.map +1 -1
- package/actions/standard/examining/index.js +2 -2
- package/actions/standard/examining/index.js.map +1 -1
- package/actions/standard/exiting/exiting-messages.d.ts +2 -0
- package/actions/standard/exiting/exiting-messages.d.ts.map +1 -1
- package/actions/standard/exiting/exiting-messages.js +2 -0
- package/actions/standard/exiting/exiting-messages.js.map +1 -1
- package/actions/standard/exiting/exiting.d.ts +8 -2
- package/actions/standard/exiting/exiting.d.ts.map +1 -1
- package/actions/standard/exiting/exiting.js +88 -18
- package/actions/standard/exiting/exiting.js.map +1 -1
- package/actions/standard/exiting/index.d.ts +2 -2
- package/actions/standard/exiting/index.d.ts.map +1 -1
- package/actions/standard/exiting/index.js +2 -2
- package/actions/standard/exiting/index.js.map +1 -1
- package/actions/standard/giving/giving.d.ts +23 -2
- package/actions/standard/giving/giving.d.ts.map +1 -1
- package/actions/standard/giving/giving.js +100 -23
- package/actions/standard/giving/giving.js.map +1 -1
- package/actions/standard/giving/index.d.ts +2 -2
- package/actions/standard/giving/index.d.ts.map +1 -1
- package/actions/standard/giving/index.js +3 -3
- package/actions/standard/giving/index.js.map +1 -1
- package/actions/standard/going/going-data.d.ts +1 -1
- package/actions/standard/going/going-data.d.ts.map +1 -1
- package/actions/standard/going/going-data.js +6 -6
- package/actions/standard/going/going-data.js.map +1 -1
- package/actions/standard/going/going.d.ts +20 -18
- package/actions/standard/going/going.d.ts.map +1 -1
- package/actions/standard/going/going.js +185 -162
- package/actions/standard/going/going.js.map +1 -1
- package/actions/standard/going/index.d.ts +2 -2
- package/actions/standard/going/index.d.ts.map +1 -1
- package/actions/standard/going/index.js +5 -3
- package/actions/standard/going/index.js.map +1 -1
- package/actions/standard/help/help.d.ts +2 -2
- package/actions/standard/help/help.d.ts.map +1 -1
- package/actions/standard/help/help.js +4 -3
- package/actions/standard/help/help.js.map +1 -1
- package/actions/standard/help/index.d.ts +2 -2
- package/actions/standard/help/index.d.ts.map +1 -1
- package/actions/standard/help/index.js +2 -2
- package/actions/standard/help/index.js.map +1 -1
- package/actions/standard/hiding/concealment-break.js +19 -19
- package/actions/standard/hiding/concealment-break.js.map +1 -1
- package/actions/standard/hiding/hiding.d.ts +13 -4
- package/actions/standard/hiding/hiding.d.ts.map +1 -1
- package/actions/standard/hiding/hiding.js +59 -15
- package/actions/standard/hiding/hiding.js.map +1 -1
- package/actions/standard/hiding/index.d.ts +4 -4
- package/actions/standard/hiding/index.d.ts.map +1 -1
- package/actions/standard/hiding/index.js +6 -6
- package/actions/standard/hiding/index.js.map +1 -1
- package/actions/standard/hiding/revealing.d.ts +2 -2
- package/actions/standard/hiding/revealing.d.ts.map +1 -1
- package/actions/standard/hiding/revealing.js +4 -3
- package/actions/standard/hiding/revealing.js.map +1 -1
- package/actions/standard/index.d.ts +61 -56
- package/actions/standard/index.d.ts.map +1 -1
- package/actions/standard/index.js +181 -166
- package/actions/standard/index.js.map +1 -1
- package/actions/standard/inserting/index.d.ts +2 -2
- package/actions/standard/inserting/index.d.ts.map +1 -1
- package/actions/standard/inserting/index.js +3 -3
- package/actions/standard/inserting/index.js.map +1 -1
- package/actions/standard/inserting/inserting-data.d.ts +1 -1
- package/actions/standard/inserting/inserting-data.d.ts.map +1 -1
- package/actions/standard/inserting/inserting-data.js +3 -3
- package/actions/standard/inserting/inserting-data.js.map +1 -1
- package/actions/standard/inserting/inserting-events.d.ts +2 -2
- package/actions/standard/inserting/inserting-events.d.ts.map +1 -1
- package/actions/standard/inserting/inserting.d.ts +14 -2
- package/actions/standard/inserting/inserting.d.ts.map +1 -1
- package/actions/standard/inserting/inserting.js +96 -30
- package/actions/standard/inserting/inserting.js.map +1 -1
- package/actions/standard/inventory/index.d.ts +2 -2
- package/actions/standard/inventory/index.d.ts.map +1 -1
- package/actions/standard/inventory/index.js +3 -3
- package/actions/standard/inventory/index.js.map +1 -1
- package/actions/standard/inventory/inventory.d.ts +2 -2
- package/actions/standard/inventory/inventory.d.ts.map +1 -1
- package/actions/standard/inventory/inventory.js +20 -31
- package/actions/standard/inventory/inventory.js.map +1 -1
- package/actions/standard/listening/index.d.ts +2 -2
- package/actions/standard/listening/index.d.ts.map +1 -1
- package/actions/standard/listening/index.js +3 -3
- package/actions/standard/listening/index.js.map +1 -1
- package/actions/standard/listening/listening.d.ts +14 -3
- package/actions/standard/listening/listening.d.ts.map +1 -1
- package/actions/standard/listening/listening.js +53 -12
- package/actions/standard/listening/listening.js.map +1 -1
- package/actions/standard/lock-shared.d.ts +1 -1
- package/actions/standard/lock-shared.d.ts.map +1 -1
- package/actions/standard/lock-shared.js +10 -10
- package/actions/standard/lock-shared.js.map +1 -1
- package/actions/standard/locking/index.d.ts +2 -2
- package/actions/standard/locking/index.d.ts.map +1 -1
- package/actions/standard/locking/index.js +2 -2
- package/actions/standard/locking/index.js.map +1 -1
- package/actions/standard/locking/locking.d.ts +11 -2
- package/actions/standard/locking/locking.d.ts.map +1 -1
- package/actions/standard/locking/locking.js +86 -27
- package/actions/standard/locking/locking.js.map +1 -1
- package/actions/standard/looking/index.d.ts +4 -4
- package/actions/standard/looking/index.d.ts.map +1 -1
- package/actions/standard/looking/index.js +9 -9
- package/actions/standard/looking/index.js.map +1 -1
- package/actions/standard/looking/looking-data.d.ts +2 -2
- package/actions/standard/looking/looking-data.d.ts.map +1 -1
- package/actions/standard/looking/looking-data.js +15 -13
- package/actions/standard/looking/looking-data.js.map +1 -1
- package/actions/standard/looking/looking.d.ts +2 -2
- package/actions/standard/looking/looking.d.ts.map +1 -1
- package/actions/standard/looking/looking.js +15 -14
- package/actions/standard/looking/looking.js.map +1 -1
- package/actions/standard/looking/snippet-resolver.js +2 -2
- package/actions/standard/looking/snippet-resolver.js.map +1 -1
- package/actions/standard/lowering/index.d.ts +1 -1
- package/actions/standard/lowering/index.d.ts.map +1 -1
- package/actions/standard/lowering/index.js +2 -2
- package/actions/standard/lowering/index.js.map +1 -1
- package/actions/standard/lowering/lowering.d.ts +2 -2
- package/actions/standard/lowering/lowering.js +4 -4
- package/actions/standard/lowering/lowering.js.map +1 -1
- package/actions/standard/opening/index.d.ts +2 -2
- package/actions/standard/opening/index.d.ts.map +1 -1
- package/actions/standard/opening/index.js +2 -2
- package/actions/standard/opening/index.js.map +1 -1
- package/actions/standard/opening/opening-data.d.ts +2 -2
- package/actions/standard/opening/opening-data.d.ts.map +1 -1
- package/actions/standard/opening/opening-messages.d.ts +3 -0
- package/actions/standard/opening/opening-messages.d.ts.map +1 -1
- package/actions/standard/opening/opening-messages.js +4 -0
- package/actions/standard/opening/opening-messages.js.map +1 -1
- package/actions/standard/opening/opening.d.ts +10 -2
- package/actions/standard/opening/opening.d.ts.map +1 -1
- package/actions/standard/opening/opening.js +94 -82
- package/actions/standard/opening/opening.js.map +1 -1
- package/actions/standard/pulling/index.d.ts +2 -2
- package/actions/standard/pulling/index.d.ts.map +1 -1
- package/actions/standard/pulling/index.js +3 -3
- package/actions/standard/pulling/index.js.map +1 -1
- package/actions/standard/pulling/pulling.d.ts +11 -2
- package/actions/standard/pulling/pulling.d.ts.map +1 -1
- package/actions/standard/pulling/pulling.js +53 -15
- package/actions/standard/pulling/pulling.js.map +1 -1
- package/actions/standard/pushing/index.d.ts +2 -2
- package/actions/standard/pushing/index.d.ts.map +1 -1
- package/actions/standard/pushing/index.js +3 -3
- package/actions/standard/pushing/index.js.map +1 -1
- package/actions/standard/pushing/pushing-original.d.ts +2 -2
- package/actions/standard/pushing/pushing-original.d.ts.map +1 -1
- package/actions/standard/pushing/pushing-original.js +4 -4
- package/actions/standard/pushing/pushing-original.js.map +1 -1
- package/actions/standard/pushing/pushing-types.d.ts +3 -6
- package/actions/standard/pushing/pushing-types.d.ts.map +1 -1
- package/actions/standard/pushing/pushing-types.js +3 -1
- package/actions/standard/pushing/pushing-types.js.map +1 -1
- package/actions/standard/pushing/pushing.d.ts +16 -7
- package/actions/standard/pushing/pushing.d.ts.map +1 -1
- package/actions/standard/pushing/pushing.js +70 -90
- package/actions/standard/pushing/pushing.js.map +1 -1
- package/actions/standard/putting/index.d.ts +2 -2
- package/actions/standard/putting/index.d.ts.map +1 -1
- package/actions/standard/putting/index.js +3 -3
- package/actions/standard/putting/index.js.map +1 -1
- package/actions/standard/putting/putting-data.d.ts +1 -1
- package/actions/standard/putting/putting-data.d.ts.map +1 -1
- package/actions/standard/putting/putting-data.js +3 -3
- package/actions/standard/putting/putting-data.js.map +1 -1
- package/actions/standard/putting/putting-types.d.ts +10 -21
- package/actions/standard/putting/putting-types.d.ts.map +1 -1
- package/actions/standard/putting/putting-types.js +0 -1
- package/actions/standard/putting/putting-types.js.map +1 -1
- package/actions/standard/putting/putting.d.ts +12 -2
- package/actions/standard/putting/putting.d.ts.map +1 -1
- package/actions/standard/putting/putting.js +191 -209
- package/actions/standard/putting/putting.js.map +1 -1
- package/actions/standard/quitting/index.d.ts +2 -2
- package/actions/standard/quitting/index.d.ts.map +1 -1
- package/actions/standard/quitting/index.js +3 -3
- package/actions/standard/quitting/index.js.map +1 -1
- package/actions/standard/quitting/quitting.d.ts +2 -2
- package/actions/standard/quitting/quitting.d.ts.map +1 -1
- package/actions/standard/quitting/quitting.js +4 -3
- package/actions/standard/quitting/quitting.js.map +1 -1
- package/actions/standard/raising/index.d.ts +1 -1
- package/actions/standard/raising/index.d.ts.map +1 -1
- package/actions/standard/raising/index.js +2 -2
- package/actions/standard/raising/index.js.map +1 -1
- package/actions/standard/raising/raising.d.ts +2 -2
- package/actions/standard/raising/raising.js +4 -4
- package/actions/standard/raising/raising.js.map +1 -1
- package/actions/standard/reading/index.d.ts +2 -2
- package/actions/standard/reading/index.d.ts.map +1 -1
- package/actions/standard/reading/index.js +2 -2
- package/actions/standard/reading/index.js.map +1 -1
- package/actions/standard/reading/reading.d.ts +7 -1
- package/actions/standard/reading/reading.d.ts.map +1 -1
- package/actions/standard/reading/reading.js +47 -63
- package/actions/standard/reading/reading.js.map +1 -1
- package/actions/standard/removing/index.d.ts +1 -1
- package/actions/standard/removing/index.d.ts.map +1 -1
- package/actions/standard/removing/index.js +2 -2
- package/actions/standard/removing/index.js.map +1 -1
- package/actions/standard/removing/removing-data.d.ts +1 -1
- package/actions/standard/removing/removing-data.d.ts.map +1 -1
- package/actions/standard/removing/removing-data.js +4 -4
- package/actions/standard/removing/removing-data.js.map +1 -1
- package/actions/standard/removing/removing-events.d.ts +2 -2
- package/actions/standard/removing/removing-events.d.ts.map +1 -1
- package/actions/standard/removing/removing-types.d.ts +10 -16
- package/actions/standard/removing/removing-types.d.ts.map +1 -1
- package/actions/standard/removing/removing-types.js.map +1 -1
- package/actions/standard/removing/removing.d.ts +15 -2
- package/actions/standard/removing/removing.d.ts.map +1 -1
- package/actions/standard/removing/removing.js +201 -142
- package/actions/standard/removing/removing.js.map +1 -1
- package/actions/standard/restarting/index.d.ts +2 -2
- package/actions/standard/restarting/index.d.ts.map +1 -1
- package/actions/standard/restarting/index.js +3 -3
- package/actions/standard/restarting/index.js.map +1 -1
- package/actions/standard/restarting/restarting.d.ts +2 -2
- package/actions/standard/restarting/restarting.d.ts.map +1 -1
- package/actions/standard/restarting/restarting.js +4 -3
- package/actions/standard/restarting/restarting.js.map +1 -1
- package/actions/standard/restoring/index.d.ts +2 -2
- package/actions/standard/restoring/index.d.ts.map +1 -1
- package/actions/standard/restoring/index.js +3 -3
- package/actions/standard/restoring/index.js.map +1 -1
- package/actions/standard/restoring/restoring.d.ts +2 -2
- package/actions/standard/restoring/restoring.d.ts.map +1 -1
- package/actions/standard/restoring/restoring.js +4 -3
- package/actions/standard/restoring/restoring.js.map +1 -1
- package/actions/standard/saving/index.d.ts +2 -2
- package/actions/standard/saving/index.d.ts.map +1 -1
- package/actions/standard/saving/index.js +3 -3
- package/actions/standard/saving/index.js.map +1 -1
- package/actions/standard/saving/saving.d.ts +2 -2
- package/actions/standard/saving/saving.d.ts.map +1 -1
- package/actions/standard/saving/saving.js +4 -3
- package/actions/standard/saving/saving.js.map +1 -1
- package/actions/standard/scoring/index.d.ts +2 -2
- package/actions/standard/scoring/index.d.ts.map +1 -1
- package/actions/standard/scoring/index.js +2 -2
- package/actions/standard/scoring/index.js.map +1 -1
- package/actions/standard/scoring/scoring.d.ts +2 -2
- package/actions/standard/scoring/scoring.d.ts.map +1 -1
- package/actions/standard/scoring/scoring.js +4 -3
- package/actions/standard/scoring/scoring.js.map +1 -1
- package/actions/standard/searching/index.d.ts +2 -2
- package/actions/standard/searching/index.d.ts.map +1 -1
- package/actions/standard/searching/index.js +2 -2
- package/actions/standard/searching/index.js.map +1 -1
- package/actions/standard/searching/searching.d.ts +12 -2
- package/actions/standard/searching/searching.d.ts.map +1 -1
- package/actions/standard/searching/searching.js +61 -23
- package/actions/standard/searching/searching.js.map +1 -1
- package/actions/standard/searching-helpers.d.ts +1 -1
- package/actions/standard/searching-helpers.d.ts.map +1 -1
- package/actions/standard/searching-helpers.js +35 -23
- package/actions/standard/searching-helpers.js.map +1 -1
- package/actions/standard/showing/index.d.ts +2 -2
- package/actions/standard/showing/index.d.ts.map +1 -1
- package/actions/standard/showing/index.js +3 -3
- package/actions/standard/showing/index.js.map +1 -1
- package/actions/standard/showing/showing.d.ts +16 -2
- package/actions/standard/showing/showing.d.ts.map +1 -1
- package/actions/standard/showing/showing.js +77 -17
- package/actions/standard/showing/showing.js.map +1 -1
- package/actions/standard/sleeping/index.d.ts +2 -2
- package/actions/standard/sleeping/index.d.ts.map +1 -1
- package/actions/standard/sleeping/index.js +2 -2
- package/actions/standard/sleeping/index.js.map +1 -1
- package/actions/standard/sleeping/sleeping.d.ts +2 -2
- package/actions/standard/sleeping/sleeping.d.ts.map +1 -1
- package/actions/standard/sleeping/sleeping.js +4 -3
- package/actions/standard/sleeping/sleeping.js.map +1 -1
- package/actions/standard/smelling/index.d.ts +2 -2
- package/actions/standard/smelling/index.d.ts.map +1 -1
- package/actions/standard/smelling/index.js +3 -3
- package/actions/standard/smelling/index.js.map +1 -1
- package/actions/standard/smelling/smelling.d.ts +12 -2
- package/actions/standard/smelling/smelling.d.ts.map +1 -1
- package/actions/standard/smelling/smelling.js +50 -11
- package/actions/standard/smelling/smelling.js.map +1 -1
- package/actions/standard/switching-shared.d.ts +1 -1
- package/actions/standard/switching-shared.d.ts.map +1 -1
- package/actions/standard/switching_off/index.d.ts +2 -2
- package/actions/standard/switching_off/index.d.ts.map +1 -1
- package/actions/standard/switching_off/index.js +2 -2
- package/actions/standard/switching_off/index.js.map +1 -1
- package/actions/standard/switching_off/switching_off.d.ts +13 -3
- package/actions/standard/switching_off/switching_off.d.ts.map +1 -1
- package/actions/standard/switching_off/switching_off.js +61 -21
- package/actions/standard/switching_off/switching_off.js.map +1 -1
- package/actions/standard/switching_on/index.d.ts +2 -2
- package/actions/standard/switching_on/index.d.ts.map +1 -1
- package/actions/standard/switching_on/index.js +2 -2
- package/actions/standard/switching_on/index.js.map +1 -1
- package/actions/standard/switching_on/switching_on.d.ts +16 -7
- package/actions/standard/switching_on/switching_on.d.ts.map +1 -1
- package/actions/standard/switching_on/switching_on.js +67 -79
- package/actions/standard/switching_on/switching_on.js.map +1 -1
- package/actions/standard/taking/index.d.ts +1 -1
- package/actions/standard/taking/index.d.ts.map +1 -1
- package/actions/standard/taking/index.js +2 -2
- package/actions/standard/taking/index.js.map +1 -1
- package/actions/standard/taking/taking-data.d.ts +1 -1
- package/actions/standard/taking/taking-data.d.ts.map +1 -1
- package/actions/standard/taking/taking-data.js +5 -5
- package/actions/standard/taking/taking-data.js.map +1 -1
- package/actions/standard/taking/taking-types.d.ts +14 -36
- package/actions/standard/taking/taking-types.d.ts.map +1 -1
- package/actions/standard/taking/taking-types.js.map +1 -1
- package/actions/standard/taking/taking.d.ts +13 -2
- package/actions/standard/taking/taking.d.ts.map +1 -1
- package/actions/standard/taking/taking.js +145 -197
- package/actions/standard/taking/taking.js.map +1 -1
- package/actions/standard/taking_off/index.d.ts +1 -1
- package/actions/standard/taking_off/index.d.ts.map +1 -1
- package/actions/standard/taking_off/index.js +2 -2
- package/actions/standard/taking_off/index.js.map +1 -1
- package/actions/standard/taking_off/taking-off.d.ts +8 -2
- package/actions/standard/taking_off/taking-off.d.ts.map +1 -1
- package/actions/standard/taking_off/taking-off.js +74 -38
- package/actions/standard/taking_off/taking-off.js.map +1 -1
- package/actions/standard/talking/index.d.ts +2 -2
- package/actions/standard/talking/index.d.ts.map +1 -1
- package/actions/standard/talking/index.js +3 -3
- package/actions/standard/talking/index.js.map +1 -1
- package/actions/standard/talking/talking.d.ts +17 -2
- package/actions/standard/talking/talking.d.ts.map +1 -1
- package/actions/standard/talking/talking.js +57 -12
- package/actions/standard/talking/talking.js.map +1 -1
- package/actions/standard/telling/index.d.ts +5 -0
- package/actions/standard/telling/index.d.ts.map +1 -0
- package/actions/standard/telling/index.js +10 -0
- package/actions/standard/telling/index.js.map +1 -0
- package/actions/standard/telling/telling.d.ts +25 -0
- package/actions/standard/telling/telling.d.ts.map +1 -0
- package/actions/standard/telling/telling.js +123 -0
- package/actions/standard/telling/telling.js.map +1 -0
- package/actions/standard/throwing/index.d.ts +1 -1
- package/actions/standard/throwing/index.d.ts.map +1 -1
- package/actions/standard/throwing/index.js +2 -2
- package/actions/standard/throwing/index.js.map +1 -1
- package/actions/standard/throwing/throwing.d.ts +13 -2
- package/actions/standard/throwing/throwing.d.ts.map +1 -1
- package/actions/standard/throwing/throwing.js +92 -93
- package/actions/standard/throwing/throwing.js.map +1 -1
- package/actions/standard/tool-shared.d.ts +38 -0
- package/actions/standard/tool-shared.d.ts.map +1 -0
- package/actions/standard/tool-shared.js +74 -0
- package/actions/standard/tool-shared.js.map +1 -0
- package/actions/standard/touching/index.d.ts +2 -2
- package/actions/standard/touching/index.d.ts.map +1 -1
- package/actions/standard/touching/index.js +3 -3
- package/actions/standard/touching/index.js.map +1 -1
- package/actions/standard/touching/touching.d.ts +11 -2
- package/actions/standard/touching/touching.d.ts.map +1 -1
- package/actions/standard/touching/touching.js +50 -14
- package/actions/standard/touching/touching.js.map +1 -1
- package/actions/standard/turning/index.d.ts +7 -0
- package/actions/standard/turning/index.d.ts.map +1 -0
- package/actions/standard/turning/index.js +13 -0
- package/actions/standard/turning/index.js.map +1 -0
- package/actions/standard/turning/turning-messages.d.ts +14 -0
- package/actions/standard/turning/turning-messages.d.ts.map +1 -0
- package/actions/standard/turning/turning-messages.js +18 -0
- package/actions/standard/turning/turning-messages.js.map +1 -0
- package/actions/standard/turning/turning.d.ts +40 -0
- package/actions/standard/turning/turning.d.ts.map +1 -0
- package/actions/standard/turning/turning.js +197 -0
- package/actions/standard/turning/turning.js.map +1 -0
- package/actions/standard/undoing/index.d.ts +2 -2
- package/actions/standard/undoing/index.d.ts.map +1 -1
- package/actions/standard/undoing/index.js +3 -3
- package/actions/standard/undoing/index.js.map +1 -1
- package/actions/standard/undoing/undoing.d.ts +2 -2
- package/actions/standard/undoing/undoing.d.ts.map +1 -1
- package/actions/standard/undoing/undoing.js +2 -2
- package/actions/standard/undoing/undoing.js.map +1 -1
- package/actions/standard/unlocking/index.d.ts +2 -2
- package/actions/standard/unlocking/index.d.ts.map +1 -1
- package/actions/standard/unlocking/index.js +2 -2
- package/actions/standard/unlocking/index.js.map +1 -1
- package/actions/standard/unlocking/unlocking.d.ts +11 -2
- package/actions/standard/unlocking/unlocking.d.ts.map +1 -1
- package/actions/standard/unlocking/unlocking.js +84 -25
- package/actions/standard/unlocking/unlocking.js.map +1 -1
- package/actions/standard/version/engine-version.d.ts +6 -0
- package/actions/standard/version/engine-version.d.ts.map +1 -0
- package/actions/standard/version/engine-version.js +9 -0
- package/actions/standard/version/engine-version.js.map +1 -0
- package/actions/standard/version/index.d.ts +2 -2
- package/actions/standard/version/index.d.ts.map +1 -1
- package/actions/standard/version/index.js +3 -3
- package/actions/standard/version/index.js.map +1 -1
- package/actions/standard/version/version.d.ts +4 -4
- package/actions/standard/version/version.d.ts.map +1 -1
- package/actions/standard/version/version.js +10 -6
- package/actions/standard/version/version.js.map +1 -1
- package/actions/standard/waiting/index.d.ts +2 -2
- package/actions/standard/waiting/index.d.ts.map +1 -1
- package/actions/standard/waiting/index.js +2 -2
- package/actions/standard/waiting/index.js.map +1 -1
- package/actions/standard/waiting/waiting.d.ts +2 -2
- package/actions/standard/waiting/waiting.d.ts.map +1 -1
- package/actions/standard/waiting/waiting.js +4 -3
- package/actions/standard/waiting/waiting.js.map +1 -1
- package/actions/standard/wearable-shared.d.ts +1 -1
- package/actions/standard/wearable-shared.d.ts.map +1 -1
- package/actions/standard/wearable-shared.js +2 -2
- package/actions/standard/wearable-shared.js.map +1 -1
- package/actions/standard/wearing/index.d.ts +1 -1
- package/actions/standard/wearing/index.d.ts.map +1 -1
- package/actions/standard/wearing/index.js +2 -2
- package/actions/standard/wearing/index.js.map +1 -1
- package/actions/standard/wearing/wearing.d.ts +13 -3
- package/actions/standard/wearing/wearing.d.ts.map +1 -1
- package/actions/standard/wearing/wearing.js +73 -28
- package/actions/standard/wearing/wearing.js.map +1 -1
- package/capabilities/index.d.ts +6 -6
- package/capabilities/index.d.ts.map +1 -1
- package/capabilities/index.js +21 -21
- package/capabilities/index.js.map +1 -1
- package/chains/index.d.ts +2 -2
- package/chains/index.d.ts.map +1 -1
- package/chains/index.js +7 -7
- package/chains/index.js.map +1 -1
- package/channels/index.d.ts +5 -5
- package/channels/index.d.ts.map +1 -1
- package/channels/index.js +43 -43
- package/channels/index.js.map +1 -1
- package/channels/registry.js +6 -6
- package/channels/registry.js.map +1 -1
- package/channels/standard.d.ts +13 -10
- package/channels/standard.d.ts.map +1 -1
- package/channels/standard.js +21 -17
- package/channels/standard.js.map +1 -1
- package/combat/index.d.ts +1 -1
- package/combat/index.d.ts.map +1 -1
- package/combat/index.js +2 -2
- package/combat/index.js.map +1 -1
- package/death/deadly-room-transformer.d.ts +37 -0
- package/death/deadly-room-transformer.d.ts.map +1 -0
- package/death/deadly-room-transformer.js +79 -0
- package/death/deadly-room-transformer.js.map +1 -0
- package/death/index.d.ts +18 -0
- package/death/index.d.ts.map +1 -0
- package/death/index.js +28 -0
- package/death/index.js.map +1 -0
- package/death/kill-player.d.ts +49 -0
- package/death/kill-player.d.ts.map +1 -0
- package/death/kill-player.js +55 -0
- package/death/kill-player.js.map +1 -0
- package/death/player-death-events.d.ts +40 -0
- package/death/player-death-events.d.ts.map +1 -0
- package/death/player-death-events.js +27 -0
- package/death/player-death-events.js.map +1 -0
- package/death/probabilistic-death.d.ts +23 -0
- package/death/probabilistic-death.d.ts.map +1 -0
- package/death/probabilistic-death.js +27 -0
- package/death/probabilistic-death.js.map +1 -0
- package/events/event-registry.d.ts +34 -34
- package/events/event-registry.d.ts.map +1 -1
- package/events/index.d.ts +4 -4
- package/events/index.d.ts.map +1 -1
- package/events/index.js +4 -4
- package/events/index.js.map +1 -1
- package/helpers/index.d.ts +1 -1
- package/helpers/index.d.ts.map +1 -1
- package/helpers/index.js +1 -1
- package/helpers/index.js.map +1 -1
- package/helpers/multi-object-handler.d.ts +1 -1
- package/helpers/multi-object-handler.d.ts.map +1 -1
- package/helpers/multi-object-handler.js +8 -5
- package/helpers/multi-object-handler.js.map +1 -1
- package/index.d.ts +16 -15
- package/index.d.ts.map +1 -1
- package/index.js +16 -15
- package/index.js.map +1 -1
- package/inference/implicit-inference.d.ts +1 -1
- package/inference/implicit-inference.d.ts.map +1 -1
- package/inference/index.d.ts +1 -1
- package/inference/index.d.ts.map +1 -1
- package/inference/index.js +4 -4
- package/inference/index.js.map +1 -1
- package/npc/behaviors.d.ts +1 -1
- package/npc/behaviors.d.ts.map +1 -1
- package/npc/behaviors.js +20 -19
- package/npc/behaviors.js.map +1 -1
- package/npc/character-observer.js +6 -6
- package/npc/character-observer.js.map +1 -1
- package/npc/index.d.ts +7 -7
- package/npc/index.d.ts.map +1 -1
- package/npc/index.js +23 -23
- package/npc/index.js.map +1 -1
- package/npc/lucidity-decay.js +2 -2
- package/npc/lucidity-decay.js.map +1 -1
- package/npc/npc-service.d.ts +9 -1
- package/npc/npc-service.d.ts.map +1 -1
- package/npc/npc-service.js +33 -32
- package/npc/npc-service.js.map +1 -1
- package/package.json +7 -7
- package/query-handlers/index.d.ts +2 -2
- package/query-handlers/index.d.ts.map +1 -1
- package/query-handlers/index.js +3 -3
- package/query-handlers/index.js.map +1 -1
- 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-resolver.d.ts +1 -1
- package/scope/scope-resolver.d.ts.map +1 -1
- package/scope/scope-resolver.js +13 -15
- package/scope/scope-resolver.js.map +1 -1
- package/scope/witness-system.d.ts +1 -1
- package/scope/witness-system.d.ts.map +1 -1
- package/scope/witness-system.js +16 -16
- package/scope/witness-system.js.map +1 -1
- package/services/index.d.ts +1 -1
- package/services/index.d.ts.map +1 -1
- package/services/index.js +2 -2
- package/services/index.js.map +1 -1
- package/utils/index.d.ts +1 -1
- package/utils/index.d.ts.map +1 -1
- package/utils/index.js +2 -2
- package/utils/index.js.map +1 -1
- package/utils/noun-phrase.d.ts.map +1 -1
- package/utils/noun-phrase.js +5 -0
- package/utils/noun-phrase.js.map +1 -1
- package/validation/command-validator.d.ts +68 -16
- package/validation/command-validator.d.ts.map +1 -1
- package/validation/command-validator.js +275 -211
- package/validation/command-validator.js.map +1 -1
- package/validation/index.d.ts +3 -3
- package/validation/index.d.ts.map +1 -1
- package/validation/index.js +2 -2
- package/validation/index.js.map +1 -1
- package/validation/types.d.ts +1 -1
- package/validation/types.d.ts.map +1 -1
- package/vocabulary/index.d.ts +1 -1
- package/vocabulary/index.d.ts.map +1 -1
- package/vocabulary/index.js +1 -1
- package/vocabulary/index.js.map +1 -1
- package/vocabulary/standard-english.d.ts +1 -1
- package/vocabulary/standard-english.d.ts.map +1 -1
- package/vocabulary/standard-english.js +5 -5
- package/vocabulary/standard-english.js.map +1 -1
|
@@ -9,8 +9,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
9
9
|
exports.actorEnteredDataConfig = exports.actorExitedDataConfig = exports.actorMovedDataConfig = exports.buildActorEnteredData = exports.buildActorExitedData = exports.buildActorMovedData = void 0;
|
|
10
10
|
exports.determineGoingMessage = determineGoingMessage;
|
|
11
11
|
const world_model_1 = require("@sharpee/world-model");
|
|
12
|
-
const
|
|
13
|
-
const
|
|
12
|
+
const snapshot_utils_js_1 = require("../../base/snapshot-utils.js");
|
|
13
|
+
const going_js_1 = require("./going.js");
|
|
14
14
|
/**
|
|
15
15
|
* Find the source room (where we came from) and the exit configuration used
|
|
16
16
|
* Since we've already moved, we need to find which room has an exit to our current location
|
|
@@ -51,11 +51,11 @@ const buildActorMovedData = (context, preState, postState) => {
|
|
|
51
51
|
// Find source room and exit configuration (includes mapHint)
|
|
52
52
|
const { room: sourceRoom, mapHint } = findSourceRoomAndExit(currentRoom, direction, context.world);
|
|
53
53
|
// Capture room snapshots for atomic events
|
|
54
|
-
const sourceSnapshot = (0,
|
|
55
|
-
const destinationSnapshot = (0,
|
|
56
|
-
const actorSnapshot = (0,
|
|
54
|
+
const sourceSnapshot = (0, snapshot_utils_js_1.captureRoomSnapshot)(sourceRoom, context.world, false);
|
|
55
|
+
const destinationSnapshot = (0, snapshot_utils_js_1.captureRoomSnapshot)(currentRoom, context.world, false);
|
|
56
|
+
const actorSnapshot = (0, snapshot_utils_js_1.captureEntitySnapshot)(actor, context.world, true); // Include inventory for darkness checks
|
|
57
57
|
// Check if this was the first visit (stored during execute phase via sharedData)
|
|
58
|
-
const sharedData = (0,
|
|
58
|
+
const sharedData = (0, going_js_1.getGoingSharedData)(context);
|
|
59
59
|
const firstVisit = sharedData.isFirstVisit === true;
|
|
60
60
|
const result = {
|
|
61
61
|
// New atomic structure
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"going-data.js","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/going/going-data.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAgLH,sDAqBC;AAjMD,sDAAoJ;AACpJ,
|
|
1
|
+
{"version":3,"file":"going-data.js","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/going/going-data.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAgLH,sDAqBC;AAjMD,sDAAoJ;AACpJ,oEAA0F;AAC1F,yCAAiE;AAUjE;;;GAGG;AACH,SAAS,qBAAqB,CAC5B,WAAqB,EACrB,SAAwB,EACxB,KAAiB;IAEjB,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC;IAC3C,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,uBAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAEhE,iEAAiE;IACjE,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,0BAAY,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACzD,IAAI,UAAU,IAAI,UAAU,CAAC,WAAW,KAAK,WAAW,CAAC,EAAE,EAAE,CAAC;YAC5D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,mEAAmE;IACnE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;AAC/B,CAAC;AAED;;GAEG;AACI,MAAM,mBAAmB,GAA+C,CAC7E,OAAsB,EACtB,QAAqB,EACrB,SAAsB,EACG,EAAE;IAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAE7B,sEAAsE;IACtE,2DAA2D;IAC3D,IAAI,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,SAA0B,CAAC;IAE1E,wFAAwF;IACxF,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;QACvD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI;YACzC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC;QACvE,IAAI,UAAU,EAAE,CAAC;YACf,SAAS,GAAG,UAA2B,CAAC;QAC1C,CAAC;IACH,CAAC;IACD,MAAM,WAAW,GAAG,IAAA,kCAAW,EAAC,SAAS,CAAC,CAAC;IAE3C,+EAA+E;IAC/E,MAAM,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC9D,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,iBAAkB,CAAE,CAAC;IAEjE,6DAA6D;IAC7D,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,qBAAqB,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAEnG,2CAA2C;IAC3C,MAAM,cAAc,GAAG,IAAA,uCAAmB,EAAC,UAAU,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7E,MAAM,mBAAmB,GAAG,IAAA,uCAAmB,EAAC,WAAW,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACnF,MAAM,aAAa,GAAG,IAAA,yCAAqB,EAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,wCAAwC;IAEjH,iFAAiF;IACjF,MAAM,UAAU,GAAG,IAAA,6BAAkB,EAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,UAAU,GAAG,UAAU,CAAC,YAAY,KAAK,IAAI,CAAC;IAEpD,MAAM,MAAM,GAA4B;QACtC,uBAAuB;QACvB,KAAK,EAAE,aAAa;QACpB,UAAU,EAAE,cAAc;QAC1B,eAAe,EAAE,mBAAmB;QACpC,wBAAwB;QACxB,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,UAAU,CAAC,EAAE;QACvB,MAAM,EAAE,WAAW,CAAC,EAAE;QACtB,iBAAiB,EAAE,WAAW;QAC9B,UAAU,EAAE,UAAU;KACvB,CAAC;IAEF,mDAAmD;IACnD,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAxDW,QAAA,mBAAmB,uBAwD9B;AAEF;;GAEG;AACI,MAAM,oBAAoB,GAA+C,CAC9E,OAAsB,EACtB,QAAqB,EACrB,SAAsB,EACG,EAAE;IAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAE7B,sEAAsE;IACtE,2DAA2D;IAC3D,IAAI,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,SAA0B,CAAC;IAE1E,wFAAwF;IACxF,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;QACvD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI;YACzC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC;QACvE,IAAI,UAAU,EAAE,CAAC;YACf,SAAS,GAAG,UAA2B,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,+EAA+E;IAC/E,MAAM,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC9D,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,iBAAkB,CAAE,CAAC;IAEjE,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,EAAE;QACjB,SAAS,EAAE,SAAS;QACpB,MAAM,EAAE,WAAW,CAAC,EAAE;KACvB,CAAC;AACJ,CAAC,CAAC;AA7BW,QAAA,oBAAoB,wBA6B/B;AAEF;;GAEG;AACI,MAAM,qBAAqB,GAA+C,CAC/E,OAAsB,EACtB,QAAqB,EACrB,SAAsB,EACG,EAAE;IAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAE7B,sEAAsE;IACtE,2DAA2D;IAC3D,IAAI,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,SAA0B,CAAC;IAE1E,wFAAwF;IACxF,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;QACvD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI;YACzC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC;QACvE,IAAI,UAAU,EAAE,CAAC;YACf,SAAS,GAAG,UAA2B,CAAC;QAC1C,CAAC;IACH,CAAC;IACD,MAAM,WAAW,GAAG,IAAA,kCAAW,EAAC,SAAS,CAAC,CAAC;IAE3C,+EAA+E;IAC/E,MAAM,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC9D,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,iBAAkB,CAAE,CAAC;IAEjE,mBAAmB;IACnB,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,qBAAqB,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAE1F,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,EAAE;QACjB,SAAS,EAAE,WAAW;QACtB,QAAQ,EAAE,UAAU,CAAC,EAAE;KACxB,CAAC;AACJ,CAAC,CAAC;AAjCW,QAAA,qBAAqB,yBAiChC;AAEF;;GAEG;AACH,SAAgB,qBAAqB,CACnC,SAAkC;IAElC,MAAM,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC;IAEpE,MAAM,eAAe,GAAG,SAAS,CAAC,eAAsD,CAAC;IACzF,MAAM,eAAe,GAAG,eAAe,EAAE,IAAI;QACpB,eAAe,EAAE,UAAsC,EAAE,IAAI;QAC9D,eAAe,EAAE,EAAE;QACnB,SAAS,CAAC;IAElC,MAAM,YAAY,GAAG,SAAS,CAAC,SAA0B,CAAC;IAC1D,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;IAE7C,OAAO;QACL,SAAS;QACT,MAAM,EAAE;YACN,SAAS;YACT,WAAW,EAAE,eAAe;SAC7B;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACU,QAAA,oBAAoB,GAA8C;IAC7E,OAAO,EAAE,2BAAmB;IAC5B,eAAe,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,QAAQ,CAAC;CACrD,CAAC;AAEW,QAAA,qBAAqB,GAA8C;IAC9E,OAAO,EAAE,4BAAoB;IAC7B,eAAe,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC;CAC1C,CAAC;AAEW,QAAA,sBAAsB,GAA8C;IAC/E,OAAO,EAAE,6BAAqB;IAC9B,eAAe,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC;CAC1C,CAAC"}
|
|
@@ -10,12 +10,12 @@
|
|
|
10
10
|
* 3. blocked: onBlocked hook (if validation failed)
|
|
11
11
|
* 4. report: standard events → postReport hook (additional effects)
|
|
12
12
|
*/
|
|
13
|
-
import { Action, ActionContext } from '../../enhanced-types';
|
|
14
|
-
import {
|
|
15
|
-
import { ActionMetadata } from '../../../validation';
|
|
13
|
+
import { Action, ActionContext } from '../../enhanced-types.js';
|
|
14
|
+
import { DirectionType, RegionCrossings } from '@sharpee/world-model';
|
|
15
|
+
import { ActionMetadata } from '../../../validation/index.js';
|
|
16
|
+
import { ActionLifecycleDescriptor } from '../../lifecycle/index.js';
|
|
16
17
|
/**
|
|
17
18
|
* Shared data passed between execute and report phases.
|
|
18
|
-
* Now includes interceptor data for ADR-118 support.
|
|
19
19
|
*/
|
|
20
20
|
export interface GoingSharedData {
|
|
21
21
|
isFirstVisit?: boolean;
|
|
@@ -23,24 +23,26 @@ export interface GoingSharedData {
|
|
|
23
23
|
currentLocation?: string;
|
|
24
24
|
direction?: DirectionType;
|
|
25
25
|
vehicleId?: string;
|
|
26
|
-
/** Source room interceptor found during validate (ADR-118) */
|
|
27
|
-
interceptor?: ActionInterceptor;
|
|
28
|
-
/** Shared data for source interceptor phases */
|
|
29
|
-
interceptorData?: InterceptorSharedData;
|
|
30
|
-
/** Source room entity for interceptor lookups */
|
|
31
|
-
sourceRoom?: IFEntity;
|
|
32
|
-
/** Destination room interceptor found during validate (ADR-126) */
|
|
33
|
-
destinationInterceptor?: ActionInterceptor;
|
|
34
|
-
/** Shared data for destination interceptor phases */
|
|
35
|
-
destinationInterceptorData?: InterceptorSharedData;
|
|
36
|
-
/** Destination room entity for interceptor lookups */
|
|
37
|
-
destinationRoom?: IFEntity;
|
|
38
|
-
/** Which interceptor blocked the action, if any */
|
|
39
|
-
blockedBy?: 'source' | 'destination';
|
|
40
26
|
/** Region boundary crossings computed during execute (ADR-149) */
|
|
41
27
|
regionCrossings?: RegionCrossings;
|
|
42
28
|
}
|
|
43
29
|
export declare function getGoingSharedData(context: ActionContext): GoingSharedData;
|
|
30
|
+
/**
|
|
31
|
+
* ADR-240 evaluator keys for a room exit's derived blocking. Owned by this
|
|
32
|
+
* read point; registrars (the story-loader's blocked-exit lines) build
|
|
33
|
+
* the keys with these functions, never by hand.
|
|
34
|
+
*/
|
|
35
|
+
export declare function exitBlockedKey(roomId: string, direction: string): string;
|
|
36
|
+
/** Key for the blocked exit's refusal message, resolved AT REFUSAL TIME. */
|
|
37
|
+
export declare function exitMessageKey(roomId: string, direction: string): string;
|
|
38
|
+
/**
|
|
39
|
+
* Interceptor surface (ADR-228): all three implicit entities of a GO
|
|
40
|
+
* command are consulted, in this published order — source room
|
|
41
|
+
* (if.action.going), destination room (if.action.entering_room, ADR-126),
|
|
42
|
+
* door (if.action.going; the previously-dead surface the audit found).
|
|
43
|
+
* First veto wins across the chain.
|
|
44
|
+
*/
|
|
45
|
+
export declare const goingLifecycle: ActionLifecycleDescriptor;
|
|
44
46
|
export declare const goingAction: Action & {
|
|
45
47
|
metadata: ActionMetadata;
|
|
46
48
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"going.d.ts","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/going/going.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,MAAM,EAAE,aAAa,EAAoB,MAAM,
|
|
1
|
+
{"version":3,"file":"going.d.ts","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/going/going.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,MAAM,EAAE,aAAa,EAAoB,MAAM,yBAAyB,CAAC;AAElF,OAAO,EAUL,aAAa,EAEb,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAM9D,OAAO,EACL,yBAAyB,EAS1B,MAAM,0BAA0B,CAAC;AAWlC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,aAAa,GAAG,eAAe,CAE1E;AAmCD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAExE;AAED,4EAA4E;AAC5E,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAExE;AAmCD;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,EAAE,yBA8B5B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,cAAc,CAAA;CA0Y5D,CAAC"}
|
|
@@ -12,22 +12,140 @@
|
|
|
12
12
|
* 4. report: standard events → postReport hook (additional effects)
|
|
13
13
|
*/
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.goingAction = void 0;
|
|
15
|
+
exports.goingAction = exports.goingLifecycle = void 0;
|
|
16
16
|
exports.getGoingSharedData = getGoingSharedData;
|
|
17
|
+
exports.exitBlockedKey = exitBlockedKey;
|
|
18
|
+
exports.exitMessageKey = exitMessageKey;
|
|
17
19
|
const world_model_1 = require("@sharpee/world-model");
|
|
18
|
-
const
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
const
|
|
22
|
-
const
|
|
23
|
-
const
|
|
20
|
+
const constants_js_1 = require("../../constants.js");
|
|
21
|
+
const types_js_1 = require("../../../scope/types.js");
|
|
22
|
+
const snapshot_utils_js_1 = require("../../base/snapshot-utils.js");
|
|
23
|
+
const data_builder_types_js_1 = require("../../data-builder-types.js");
|
|
24
|
+
const going_messages_js_1 = require("./going-messages.js");
|
|
25
|
+
const index_js_1 = require("../../../utils/index.js");
|
|
26
|
+
const index_js_2 = require("../../lifecycle/index.js");
|
|
24
27
|
// Import our data builders
|
|
25
|
-
const
|
|
28
|
+
const going_data_js_1 = require("./going-data.js");
|
|
26
29
|
function getGoingSharedData(context) {
|
|
27
30
|
return context.sharedData;
|
|
28
31
|
}
|
|
32
|
+
// ============================================================================
|
|
33
|
+
// Implicit-entity resolvers (ADR-228 D3) — going has no parsed object
|
|
34
|
+
// slots; its consultable entities are derived from the command + world.
|
|
35
|
+
// Resolution is read-only and returns undefined when the entity does not
|
|
36
|
+
// apply (no exit, blocked-only direction, not in a room).
|
|
37
|
+
// ============================================================================
|
|
38
|
+
/** The direction of travel, from extras or a direction-named direct object. */
|
|
39
|
+
function resolveDirection(context) {
|
|
40
|
+
let direction = context.command.parsed.extras?.direction;
|
|
41
|
+
if (!direction && context.command.directObject?.entity) {
|
|
42
|
+
const entityName = context.command.directObject.entity.name ||
|
|
43
|
+
context.command.directObject.entity.attributes?.name;
|
|
44
|
+
if (entityName) {
|
|
45
|
+
direction = entityName;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return direction || undefined;
|
|
49
|
+
}
|
|
50
|
+
/** The room movement starts from (the containing room when in a walkable vehicle). */
|
|
51
|
+
function resolveSourceRoom(context) {
|
|
52
|
+
const walkCheck = (0, world_model_1.canActorWalkInVehicle)(context.world, context.player.id);
|
|
53
|
+
let currentRoom = context.currentLocation;
|
|
54
|
+
if (walkCheck.vehicle && walkCheck.canWalk) {
|
|
55
|
+
const containingRoom = context.world.getContainingRoom(context.player.id);
|
|
56
|
+
if (containingRoom) {
|
|
57
|
+
currentRoom = containingRoom;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return currentRoom?.has(world_model_1.TraitType.ROOM) ? currentRoom : undefined;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* ADR-240 evaluator keys for a room exit's derived blocking. Owned by this
|
|
64
|
+
* read point; registrars (the story-loader's blocked-exit lines) build
|
|
65
|
+
* the keys with these functions, never by hand.
|
|
66
|
+
*/
|
|
67
|
+
function exitBlockedKey(roomId, direction) {
|
|
68
|
+
return `exit.blocked.${roomId}.${direction}`;
|
|
69
|
+
}
|
|
70
|
+
/** Key for the blocked exit's refusal message, resolved AT REFUSAL TIME. */
|
|
71
|
+
function exitMessageKey(roomId, direction) {
|
|
72
|
+
return `exit.message.${roomId}.${direction}`;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* The live answer to "is this exit blocked?" (ADR-240): a registered
|
|
76
|
+
* `exit.blocked.*` evaluator is authoritative (point-of-use truth); with
|
|
77
|
+
* nothing registered, the stamped RoomTrait.blockedExits map applies
|
|
78
|
+
* unchanged (hand-written TS stories).
|
|
79
|
+
*/
|
|
80
|
+
function isExitBlockedLive(context, room, direction) {
|
|
81
|
+
const derived = context.world.evaluate(exitBlockedKey(room.id, direction));
|
|
82
|
+
if (typeof derived === 'boolean')
|
|
83
|
+
return derived;
|
|
84
|
+
return world_model_1.RoomBehavior.isExitBlocked(room, direction);
|
|
85
|
+
}
|
|
86
|
+
/** The blocked exit's message: registered evaluator first, trait map fallback. */
|
|
87
|
+
function blockedMessageLive(context, room, direction) {
|
|
88
|
+
const derived = context.world.evaluate(exitMessageKey(room.id, direction));
|
|
89
|
+
if (typeof derived === 'string')
|
|
90
|
+
return derived;
|
|
91
|
+
return world_model_1.RoomBehavior.getBlockedMessage(room, direction);
|
|
92
|
+
}
|
|
93
|
+
/** The exit's door (via) and destination room, when the exit exists. */
|
|
94
|
+
function resolveExitEntities(context) {
|
|
95
|
+
const sourceRoom = resolveSourceRoom(context);
|
|
96
|
+
const direction = resolveDirection(context);
|
|
97
|
+
if (!sourceRoom || !direction)
|
|
98
|
+
return {};
|
|
99
|
+
// A blocked-only direction has no traversable exit (Chord `north is blocked:`)
|
|
100
|
+
if (isExitBlockedLive(context, sourceRoom, direction))
|
|
101
|
+
return {};
|
|
102
|
+
const exitConfig = world_model_1.RoomBehavior.getExit(sourceRoom, direction);
|
|
103
|
+
if (!exitConfig)
|
|
104
|
+
return {};
|
|
105
|
+
const door = exitConfig.via ? (context.world.getEntity(exitConfig.via) ?? undefined) : undefined;
|
|
106
|
+
const destination = context.world.getEntity(exitConfig.destination) ?? undefined;
|
|
107
|
+
return { door, destination };
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Interceptor surface (ADR-228): all three implicit entities of a GO
|
|
111
|
+
* command are consulted, in this published order — source room
|
|
112
|
+
* (if.action.going), destination room (if.action.entering_room, ADR-126),
|
|
113
|
+
* door (if.action.going; the previously-dead surface the audit found).
|
|
114
|
+
* First veto wins across the chain.
|
|
115
|
+
*/
|
|
116
|
+
exports.goingLifecycle = {
|
|
117
|
+
actionId: constants_js_1.IFActions.GOING,
|
|
118
|
+
slots: [
|
|
119
|
+
{
|
|
120
|
+
id: 'source',
|
|
121
|
+
actionIds: [constants_js_1.IFActions.GOING],
|
|
122
|
+
resolve: resolveSourceRoom,
|
|
123
|
+
seedData: (ctx) => ({ direction: resolveDirection(ctx) })
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
id: 'destination',
|
|
127
|
+
actionIds: [constants_js_1.IFActions.ENTERING_ROOM],
|
|
128
|
+
resolve: (ctx) => resolveExitEntities(ctx).destination,
|
|
129
|
+
seedData: (ctx, entity) => ({
|
|
130
|
+
direction: resolveDirection(ctx),
|
|
131
|
+
sourceRoomId: resolveSourceRoom(ctx)?.id,
|
|
132
|
+
destinationRoomId: entity.id
|
|
133
|
+
})
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
id: 'door',
|
|
137
|
+
actionIds: [constants_js_1.IFActions.GOING],
|
|
138
|
+
resolve: (ctx) => resolveExitEntities(ctx).door,
|
|
139
|
+
seedData: (ctx) => ({
|
|
140
|
+
direction: resolveDirection(ctx),
|
|
141
|
+
sourceRoomId: resolveSourceRoom(ctx)?.id,
|
|
142
|
+
destinationRoomId: resolveExitEntities(ctx).destination?.id
|
|
143
|
+
})
|
|
144
|
+
}
|
|
145
|
+
]
|
|
146
|
+
};
|
|
29
147
|
exports.goingAction = {
|
|
30
|
-
id:
|
|
148
|
+
id: constants_js_1.IFActions.GOING,
|
|
31
149
|
requiredMessages: [
|
|
32
150
|
'no_direction',
|
|
33
151
|
'not_in_room',
|
|
@@ -60,7 +178,7 @@ exports.goingAction = {
|
|
|
60
178
|
if (!direction) {
|
|
61
179
|
return {
|
|
62
180
|
valid: false,
|
|
63
|
-
error:
|
|
181
|
+
error: going_messages_js_1.GoingMessages.NO_DIRECTION
|
|
64
182
|
};
|
|
65
183
|
}
|
|
66
184
|
// Check if player is in a vehicle
|
|
@@ -72,8 +190,8 @@ exports.goingAction = {
|
|
|
72
190
|
// In a vehicle that blocks walking (bucket, etc.)
|
|
73
191
|
return {
|
|
74
192
|
valid: false,
|
|
75
|
-
error:
|
|
76
|
-
params: { vehicle: walkCheck.vehicle ? (0,
|
|
193
|
+
error: going_messages_js_1.GoingMessages.NOT_IN_ROOM,
|
|
194
|
+
params: { vehicle: walkCheck.vehicle ? (0, index_js_1.nounPhraseFor)(walkCheck.vehicle) : undefined }
|
|
77
195
|
};
|
|
78
196
|
}
|
|
79
197
|
// In a vehicle that allows walking (boat, etc.) - get the containing room
|
|
@@ -88,44 +206,25 @@ exports.goingAction = {
|
|
|
88
206
|
// Player is in a container that's not in a room
|
|
89
207
|
return {
|
|
90
208
|
valid: false,
|
|
91
|
-
error:
|
|
209
|
+
error: going_messages_js_1.GoingMessages.NOT_IN_ROOM
|
|
92
210
|
};
|
|
93
211
|
}
|
|
94
|
-
//
|
|
95
|
-
//
|
|
96
|
-
const
|
|
97
|
-
const
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
direction: direction
|
|
101
|
-
};
|
|
102
|
-
// Store for later phases
|
|
103
|
-
sharedData.interceptor = interceptor;
|
|
104
|
-
sharedData.interceptorData = interceptorData;
|
|
105
|
-
sharedData.sourceRoom = currentRoom;
|
|
106
|
-
// === SOURCE PRE-VALIDATE HOOK ===
|
|
107
|
-
// Called before standard validation - can block early
|
|
108
|
-
if (interceptor?.preValidate) {
|
|
109
|
-
const result = interceptor.preValidate(currentRoom, context.world, actor.id, interceptorData);
|
|
110
|
-
if (result !== null && !result.valid) {
|
|
111
|
-
sharedData.blockedBy = 'source';
|
|
112
|
-
return {
|
|
113
|
-
valid: result.valid,
|
|
114
|
-
error: result.error,
|
|
115
|
-
params: result.params
|
|
116
|
-
};
|
|
117
|
-
}
|
|
118
|
-
}
|
|
212
|
+
// Resolve the interceptor surface (ADR-228): source room, destination
|
|
213
|
+
// room, and door — the engine owns hook order and veto semantics.
|
|
214
|
+
const state = (0, index_js_2.resolveLifecycle)(context, exports.goingLifecycle);
|
|
215
|
+
const preVeto = (0, index_js_2.runPreValidate)(context, state);
|
|
216
|
+
if (preVeto)
|
|
217
|
+
return preVeto;
|
|
119
218
|
// Check if the direction is blocked BEFORE requiring an exit config:
|
|
120
219
|
// a blockedExits entry means "this direction is deliberately refused
|
|
121
220
|
// with this message" whether or not an exit exists (a blocked-only
|
|
122
221
|
// direction has no destination — e.g. Chord's `north is blocked:`,
|
|
123
222
|
// ADR-210).
|
|
124
|
-
if (
|
|
125
|
-
const blockedMessage =
|
|
223
|
+
if (isExitBlockedLive(context, currentRoom, direction)) {
|
|
224
|
+
const blockedMessage = blockedMessageLive(context, currentRoom, direction) || "You can't go that way.";
|
|
126
225
|
return {
|
|
127
226
|
valid: false,
|
|
128
|
-
error:
|
|
227
|
+
error: going_messages_js_1.GoingMessages.MOVEMENT_BLOCKED,
|
|
129
228
|
params: { direction: direction, message: blockedMessage }
|
|
130
229
|
};
|
|
131
230
|
}
|
|
@@ -137,12 +236,12 @@ exports.goingAction = {
|
|
|
137
236
|
if (allExits.size === 0) {
|
|
138
237
|
return {
|
|
139
238
|
valid: false,
|
|
140
|
-
error:
|
|
239
|
+
error: going_messages_js_1.GoingMessages.NO_EXITS
|
|
141
240
|
};
|
|
142
241
|
}
|
|
143
242
|
return {
|
|
144
243
|
valid: false,
|
|
145
|
-
error:
|
|
244
|
+
error: going_messages_js_1.GoingMessages.NO_EXIT_THAT_WAY,
|
|
146
245
|
params: { direction: direction }
|
|
147
246
|
};
|
|
148
247
|
}
|
|
@@ -156,9 +255,9 @@ exports.goingAction = {
|
|
|
156
255
|
if (isLocked) {
|
|
157
256
|
return {
|
|
158
257
|
valid: false,
|
|
159
|
-
error:
|
|
258
|
+
error: going_messages_js_1.GoingMessages.DOOR_LOCKED,
|
|
160
259
|
params: {
|
|
161
|
-
door: (0,
|
|
260
|
+
door: (0, index_js_1.nounPhraseFor)(door),
|
|
162
261
|
direction: direction,
|
|
163
262
|
isClosed: isClosed,
|
|
164
263
|
isLocked: true
|
|
@@ -168,8 +267,8 @@ exports.goingAction = {
|
|
|
168
267
|
if (isClosed) {
|
|
169
268
|
return {
|
|
170
269
|
valid: false,
|
|
171
|
-
error:
|
|
172
|
-
params: { door: (0,
|
|
270
|
+
error: going_messages_js_1.GoingMessages.DOOR_CLOSED,
|
|
271
|
+
params: { door: (0, index_js_1.nounPhraseFor)(door), direction: direction }
|
|
173
272
|
};
|
|
174
273
|
}
|
|
175
274
|
}
|
|
@@ -181,64 +280,19 @@ exports.goingAction = {
|
|
|
181
280
|
// Destination doesn't exist
|
|
182
281
|
return {
|
|
183
282
|
valid: false,
|
|
184
|
-
error:
|
|
283
|
+
error: going_messages_js_1.GoingMessages.DESTINATION_NOT_FOUND,
|
|
185
284
|
params: { direction: direction }
|
|
186
285
|
};
|
|
187
286
|
}
|
|
188
287
|
// Note: We allow entry to dark rooms - you just can't see.
|
|
189
288
|
// Darkness affects visibility (looking), not movement.
|
|
190
289
|
// This matches traditional IF behavior (e.g., Cloak of Darkness).
|
|
191
|
-
//
|
|
192
|
-
//
|
|
193
|
-
|
|
194
|
-
const
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
sourceRoomId: currentRoom.id,
|
|
198
|
-
destinationRoomId: destination.id
|
|
199
|
-
};
|
|
200
|
-
// Store for later phases
|
|
201
|
-
sharedData.destinationInterceptor = destInterceptor;
|
|
202
|
-
sharedData.destinationInterceptorData = destInterceptorData;
|
|
203
|
-
sharedData.destinationRoom = destination;
|
|
204
|
-
// === DESTINATION PRE-VALIDATE HOOK (ADR-126) ===
|
|
205
|
-
// Called after destination is resolved but before player moves - can block entry
|
|
206
|
-
if (destInterceptor?.preValidate) {
|
|
207
|
-
const result = destInterceptor.preValidate(destination, context.world, actor.id, destInterceptorData);
|
|
208
|
-
if (result !== null && !result.valid) {
|
|
209
|
-
sharedData.blockedBy = 'destination';
|
|
210
|
-
return {
|
|
211
|
-
valid: result.valid,
|
|
212
|
-
error: result.error,
|
|
213
|
-
params: result.params
|
|
214
|
-
};
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
// === SOURCE POST-VALIDATE HOOK ===
|
|
218
|
-
// Called after standard validation passes - can add entity-specific conditions
|
|
219
|
-
if (interceptor?.postValidate) {
|
|
220
|
-
const result = interceptor.postValidate(currentRoom, context.world, actor.id, interceptorData);
|
|
221
|
-
if (result !== null) {
|
|
222
|
-
sharedData.blockedBy = 'source';
|
|
223
|
-
return {
|
|
224
|
-
valid: result.valid,
|
|
225
|
-
error: result.error,
|
|
226
|
-
params: result.params
|
|
227
|
-
};
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
// === DESTINATION POST-VALIDATE HOOK (ADR-126) ===
|
|
231
|
-
if (destInterceptor?.postValidate) {
|
|
232
|
-
const result = destInterceptor.postValidate(destination, context.world, actor.id, destInterceptorData);
|
|
233
|
-
if (result !== null) {
|
|
234
|
-
sharedData.blockedBy = 'destination';
|
|
235
|
-
return {
|
|
236
|
-
valid: result.valid,
|
|
237
|
-
error: result.error,
|
|
238
|
-
params: result.params
|
|
239
|
-
};
|
|
240
|
-
}
|
|
241
|
-
}
|
|
290
|
+
// Canonical placement (ADR-228): postValidate runs after ALL standard
|
|
291
|
+
// validation, for every consultation (source → destination → door),
|
|
292
|
+
// first veto wins.
|
|
293
|
+
const postVeto = (0, index_js_2.runPostValidate)(context, state);
|
|
294
|
+
if (postVeto)
|
|
295
|
+
return postVeto;
|
|
242
296
|
return { valid: true };
|
|
243
297
|
},
|
|
244
298
|
execute(context) {
|
|
@@ -287,19 +341,9 @@ exports.goingAction = {
|
|
|
287
341
|
}
|
|
288
342
|
// Compute region boundary crossings (ADR-149)
|
|
289
343
|
sharedData.regionCrossings = context.world.getRegionCrossings(sourceRoom.id, destination.id);
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
const interceptorData = sharedData.interceptorData || {};
|
|
294
|
-
if (interceptor?.postExecute && sharedData.sourceRoom) {
|
|
295
|
-
interceptor.postExecute(sharedData.sourceRoom, context.world, actor.id, interceptorData);
|
|
296
|
-
}
|
|
297
|
-
// === DESTINATION POST-EXECUTE HOOK (ADR-126) ===
|
|
298
|
-
const destInterceptor = sharedData.destinationInterceptor;
|
|
299
|
-
const destInterceptorData = sharedData.destinationInterceptorData || {};
|
|
300
|
-
if (destInterceptor?.postExecute && sharedData.destinationRoom) {
|
|
301
|
-
destInterceptor.postExecute(sharedData.destinationRoom, context.world, actor.id, destInterceptorData);
|
|
302
|
-
}
|
|
344
|
+
const state = (0, index_js_2.getLifecycleState)(context);
|
|
345
|
+
if (state)
|
|
346
|
+
(0, index_js_2.runPostExecute)(context, state);
|
|
303
347
|
},
|
|
304
348
|
/**
|
|
305
349
|
* Report events after successful movement
|
|
@@ -310,9 +354,9 @@ exports.goingAction = {
|
|
|
310
354
|
// Get the actual destination room (not the stale context.currentLocation)
|
|
311
355
|
const destinationRoom = context.world.getEntity(sharedData.currentLocation);
|
|
312
356
|
// Build event data using data builders
|
|
313
|
-
const exitedData = (0,
|
|
314
|
-
const movedData = (0,
|
|
315
|
-
const enteredData = (0,
|
|
357
|
+
const exitedData = (0, data_builder_types_js_1.buildEventData)(going_data_js_1.actorExitedDataConfig, context);
|
|
358
|
+
const movedData = (0, data_builder_types_js_1.buildEventData)(going_data_js_1.actorMovedDataConfig, context);
|
|
359
|
+
const enteredData = (0, data_builder_types_js_1.buildEventData)(going_data_js_1.actorEnteredDataConfig, context);
|
|
316
360
|
// Return movement events first (no messageId - these are for event sourcing/handlers)
|
|
317
361
|
const events = [
|
|
318
362
|
context.event('if.event.actor_exited', exitedData),
|
|
@@ -342,7 +386,10 @@ exports.goingAction = {
|
|
|
342
386
|
// Check if destination is dark (no usable light source)
|
|
343
387
|
const isDark = world_model_1.VisibilityBehavior.isDark(destinationRoom, context.world);
|
|
344
388
|
if (isDark) {
|
|
345
|
-
// Dark room with no light - emit went event with darkness messageId
|
|
389
|
+
// Dark room with no light - emit went event with darkness messageId.
|
|
390
|
+
// No early return: postReport hooks still run below (ADR-228 D7.1 —
|
|
391
|
+
// the old early return skipped hooks on exactly the path that emits
|
|
392
|
+
// if.event.went).
|
|
346
393
|
events.push(context.event('if.event.went', {
|
|
347
394
|
messageId: `${context.action.id}.too_dark`,
|
|
348
395
|
params: {},
|
|
@@ -350,10 +397,13 @@ exports.goingAction = {
|
|
|
350
397
|
destinationId: destinationRoom.id,
|
|
351
398
|
isDark: true
|
|
352
399
|
}));
|
|
400
|
+
const state = (0, index_js_2.getLifecycleState)(context);
|
|
401
|
+
if (state)
|
|
402
|
+
(0, index_js_2.runPostReport)(context, state, events, 'if.event.went');
|
|
353
403
|
return events;
|
|
354
404
|
}
|
|
355
405
|
// Room has light - build and emit room description
|
|
356
|
-
const roomSnapshot = (0,
|
|
406
|
+
const roomSnapshot = (0, snapshot_utils_js_1.captureRoomSnapshot)(destinationRoom, context.world, false);
|
|
357
407
|
// Get visible contents in the destination room (filter concealed items)
|
|
358
408
|
const destinationContents = context.world.getContents(destinationRoom.id)
|
|
359
409
|
.filter(e => e.id !== context.player.id)
|
|
@@ -361,7 +411,7 @@ exports.goingAction = {
|
|
|
361
411
|
const identity = e.getTrait(world_model_1.IdentityTrait);
|
|
362
412
|
return !(identity && identity.concealed === true);
|
|
363
413
|
});
|
|
364
|
-
const visibleSnapshots = (0,
|
|
414
|
+
const visibleSnapshots = (0, snapshot_utils_js_1.captureEntitySnapshots)(destinationContents, context.world);
|
|
365
415
|
const destinationSnippets = destinationRoom.getTrait(world_model_1.RoomTrait)?.snippets;
|
|
366
416
|
const roomDescData = {
|
|
367
417
|
room: roomSnapshot,
|
|
@@ -399,7 +449,7 @@ exports.goingAction = {
|
|
|
399
449
|
items: {
|
|
400
450
|
kind: 'list',
|
|
401
451
|
conj: 'and',
|
|
402
|
-
items: listableContents.map(e => (0,
|
|
452
|
+
items: listableContents.map(e => (0, index_js_1.nounPhraseFor)(e)),
|
|
403
453
|
},
|
|
404
454
|
count: listableContents.length
|
|
405
455
|
},
|
|
@@ -408,24 +458,11 @@ exports.goingAction = {
|
|
|
408
458
|
itemNames: listableContents.map(e => e.name)
|
|
409
459
|
}));
|
|
410
460
|
}
|
|
411
|
-
// === SOURCE POST-REPORT HOOK ===
|
|
412
|
-
// Apply interceptor's override (replaces if.event.went.messageId, when emitted)
|
|
413
|
-
// and/or emit (additional events). See ISSUE-074.
|
|
414
461
|
// Note: if.event.went is only emitted on dark/blocked; override is a no-op
|
|
415
462
|
// on success non-dark transitions. Use emit for narration after success.
|
|
416
|
-
const
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
const result = interceptor.postReport(sharedData.sourceRoom, context.world, context.player.id, interceptorData);
|
|
420
|
-
(0, world_model_1.applyInterceptorReportResult)(events, 'if.event.went', result, context);
|
|
421
|
-
}
|
|
422
|
-
// === DESTINATION POST-REPORT HOOK (ADR-126) ===
|
|
423
|
-
const destInterceptor = sharedData.destinationInterceptor;
|
|
424
|
-
const destInterceptorData = sharedData.destinationInterceptorData || {};
|
|
425
|
-
if (destInterceptor?.postReport && sharedData.destinationRoom) {
|
|
426
|
-
const result = destInterceptor.postReport(sharedData.destinationRoom, context.world, context.player.id, destInterceptorData);
|
|
427
|
-
(0, world_model_1.applyInterceptorReportResult)(events, 'if.event.went', result, context);
|
|
428
|
-
}
|
|
463
|
+
const state = (0, index_js_2.getLifecycleState)(context);
|
|
464
|
+
if (state)
|
|
465
|
+
(0, index_js_2.runPostReport)(context, state, events, 'if.event.went');
|
|
429
466
|
return events;
|
|
430
467
|
},
|
|
431
468
|
/**
|
|
@@ -433,43 +470,29 @@ exports.goingAction = {
|
|
|
433
470
|
* Called instead of execute/report when validate returns invalid
|
|
434
471
|
*/
|
|
435
472
|
blocked(context, result) {
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
// If the destination interceptor blocked entry, let it handle the blocked phase first
|
|
439
|
-
if (sharedData.blockedBy === 'destination') {
|
|
440
|
-
const destInterceptor = sharedData.destinationInterceptor;
|
|
441
|
-
const destInterceptorData = sharedData.destinationInterceptorData || {};
|
|
442
|
-
if (destInterceptor?.onBlocked && sharedData.destinationRoom && result.error) {
|
|
443
|
-
const customEffects = destInterceptor.onBlocked(sharedData.destinationRoom, context.world, context.player.id, result.error, destInterceptorData);
|
|
444
|
-
if (customEffects !== null) {
|
|
445
|
-
return customEffects.map(effect => context.event(effect.type, effect.payload));
|
|
446
|
-
}
|
|
447
|
-
}
|
|
448
|
-
}
|
|
449
|
-
// === SOURCE ON-BLOCKED HOOK ===
|
|
450
|
-
// Called when action is blocked by source room or standard checks
|
|
451
|
-
const interceptor = sharedData.interceptor;
|
|
452
|
-
const interceptorData = sharedData.interceptorData || {};
|
|
453
|
-
if (interceptor?.onBlocked && sharedData.sourceRoom && result.error) {
|
|
454
|
-
const customEffects = interceptor.onBlocked(sharedData.sourceRoom, context.world, context.player.id, result.error, interceptorData);
|
|
455
|
-
if (customEffects !== null) {
|
|
456
|
-
return customEffects.map(effect => context.event(effect.type, effect.payload));
|
|
457
|
-
}
|
|
458
|
-
}
|
|
459
|
-
// Standard blocked handling
|
|
460
|
-
return [context.event('if.event.went', {
|
|
473
|
+
// Standard blocked event — always emitted (ADR-228 D2)
|
|
474
|
+
const events = [context.event('if.event.went', {
|
|
461
475
|
blocked: true,
|
|
462
476
|
reason: result.error,
|
|
463
|
-
messageId:
|
|
477
|
+
messageId: (0, index_js_2.blockedMessageId)(context, result),
|
|
464
478
|
params: result.params || {},
|
|
465
479
|
actorId: context.player.id
|
|
466
480
|
})];
|
|
481
|
+
// All resolved consultations (source, destination, door) are notified;
|
|
482
|
+
// single-override arbitration replaces the old blockedBy precedence
|
|
483
|
+
// split (ADR-228 D2/D3).
|
|
484
|
+
if (result.error) {
|
|
485
|
+
const state = (0, index_js_2.getLifecycleState)(context);
|
|
486
|
+
if (state)
|
|
487
|
+
(0, index_js_2.runOnBlocked)(context, state, events, 'if.event.went', result.error);
|
|
488
|
+
}
|
|
489
|
+
return events;
|
|
467
490
|
},
|
|
468
491
|
group: "movement",
|
|
469
492
|
metadata: {
|
|
470
493
|
requiresDirectObject: false,
|
|
471
494
|
requiresIndirectObject: false,
|
|
472
|
-
directObjectScope:
|
|
495
|
+
directObjectScope: types_js_1.ScopeLevel.VISIBLE
|
|
473
496
|
}
|
|
474
497
|
};
|
|
475
498
|
// Note: Darkness checking for rooms should use VisibilityBehavior.isDark()
|