@sharpee/world-model 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.
Files changed (631) hide show
  1. package/annotations/index.d.ts +1 -1
  2. package/annotations/index.d.ts.map +1 -1
  3. package/annotations/index.js +1 -1
  4. package/annotations/index.js.map +1 -1
  5. package/behaviors/attack.d.ts +21 -4
  6. package/behaviors/attack.d.ts.map +1 -1
  7. package/behaviors/attack.js +37 -33
  8. package/behaviors/attack.js.map +1 -1
  9. package/behaviors/behavior.d.ts +3 -3
  10. package/behaviors/behavior.d.ts.map +1 -1
  11. package/behaviors/index.d.ts +21 -20
  12. package/behaviors/index.d.ts.map +1 -1
  13. package/behaviors/index.js +35 -32
  14. package/behaviors/index.js.map +1 -1
  15. package/capabilities/action-interceptor.d.ts +96 -9
  16. package/capabilities/action-interceptor.d.ts.map +1 -1
  17. package/capabilities/action-interceptor.js +59 -2
  18. package/capabilities/action-interceptor.js.map +1 -1
  19. package/capabilities/capability-behavior.d.ts +3 -3
  20. package/capabilities/capability-behavior.d.ts.map +1 -1
  21. package/capabilities/capability-binding.d.ts +3 -3
  22. package/capabilities/capability-binding.d.ts.map +1 -1
  23. package/capabilities/capability-helpers.d.ts +2 -2
  24. package/capabilities/capability-helpers.d.ts.map +1 -1
  25. package/capabilities/entity-builder.d.ts +2 -2
  26. package/capabilities/entity-builder.d.ts.map +1 -1
  27. package/capabilities/index.d.ts +9 -9
  28. package/capabilities/index.d.ts.map +1 -1
  29. package/capabilities/index.js +27 -26
  30. package/capabilities/index.js.map +1 -1
  31. package/capabilities/interceptor-binding.d.ts +2 -2
  32. package/capabilities/interceptor-binding.d.ts.map +1 -1
  33. package/capabilities/interceptor-helpers.d.ts +2 -2
  34. package/capabilities/interceptor-helpers.d.ts.map +1 -1
  35. package/commands/command-types.d.ts +2 -2
  36. package/commands/command-types.d.ts.map +1 -1
  37. package/commands/index.d.ts +3 -3
  38. package/commands/index.d.ts.map +1 -1
  39. package/commands/index.js +3 -3
  40. package/commands/index.js.map +1 -1
  41. package/commands/parsed-command.d.ts +13 -0
  42. package/commands/parsed-command.d.ts.map +1 -1
  43. package/commands/validated-command.d.ts +16 -2
  44. package/commands/validated-command.d.ts.map +1 -1
  45. package/constants/index.d.ts +3 -3
  46. package/constants/index.d.ts.map +1 -1
  47. package/constants/index.js +3 -3
  48. package/constants/index.js.map +1 -1
  49. package/entities/entity-store.d.ts +1 -1
  50. package/entities/entity-store.d.ts.map +1 -1
  51. package/entities/entity-store.js +2 -2
  52. package/entities/entity-store.js.map +1 -1
  53. package/entities/if-entity.d.ts +3 -3
  54. package/entities/if-entity.d.ts.map +1 -1
  55. package/entities/if-entity.js +38 -34
  56. package/entities/if-entity.js.map +1 -1
  57. package/entities/index.d.ts +6 -6
  58. package/entities/index.d.ts.map +1 -1
  59. package/entities/index.js +10 -10
  60. package/entities/index.js.map +1 -1
  61. package/entities/trait-rehydrator.d.ts +43 -0
  62. package/entities/trait-rehydrator.d.ts.map +1 -0
  63. package/entities/trait-rehydrator.js +45 -0
  64. package/entities/trait-rehydrator.js.map +1 -0
  65. package/entities/wall-entity.d.ts +2 -2
  66. package/entities/wall-entity.d.ts.map +1 -1
  67. package/entities/wall-entity.js +2 -2
  68. package/entities/wall-entity.js.map +1 -1
  69. package/examples/event-handler-registration.d.ts +1 -1
  70. package/examples/event-handler-registration.d.ts.map +1 -1
  71. package/examples/event-handler-registration.js +24 -24
  72. package/examples/event-handler-registration.js.map +1 -1
  73. package/extensions/base-extension.d.ts +3 -3
  74. package/extensions/base-extension.d.ts.map +1 -1
  75. package/extensions/index.d.ts +4 -4
  76. package/extensions/index.d.ts.map +1 -1
  77. package/extensions/index.js +11 -11
  78. package/extensions/index.js.map +1 -1
  79. package/extensions/loader.d.ts +1 -1
  80. package/extensions/loader.d.ts.map +1 -1
  81. package/extensions/loader.js +2 -2
  82. package/extensions/loader.js.map +1 -1
  83. package/extensions/manager.d.ts +1 -1
  84. package/extensions/manager.d.ts.map +1 -1
  85. package/extensions/manager.js +2 -2
  86. package/extensions/manager.js.map +1 -1
  87. package/extensions/registry.d.ts +2 -2
  88. package/extensions/registry.d.ts.map +1 -1
  89. package/extensions/registry.js +4 -4
  90. package/extensions/registry.js.map +1 -1
  91. package/extensions/types.d.ts +2 -2
  92. package/extensions/types.d.ts.map +1 -1
  93. package/index.d.ts +58 -46
  94. package/index.d.ts.map +1 -1
  95. package/index.js +72 -50
  96. package/index.js.map +1 -1
  97. package/interfaces/command-executor.d.ts +1 -1
  98. package/interfaces/command-executor.d.ts.map +1 -1
  99. package/interfaces/command-processor.d.ts +1 -1
  100. package/interfaces/command-processor.d.ts.map +1 -1
  101. package/interfaces/command-validator.d.ts +1 -1
  102. package/interfaces/command-validator.d.ts.map +1 -1
  103. package/interfaces/index.d.ts +4 -4
  104. package/interfaces/index.d.ts.map +1 -1
  105. package/interfaces/index.js +4 -4
  106. package/interfaces/index.js.map +1 -1
  107. package/interfaces/parser.d.ts +1 -1
  108. package/interfaces/parser.d.ts.map +1 -1
  109. package/package.json +3 -3
  110. package/scope/index.d.ts +3 -3
  111. package/scope/index.d.ts.map +1 -1
  112. package/scope/index.js +3 -3
  113. package/scope/index.js.map +1 -1
  114. package/scope/scope-evaluator.d.ts +2 -2
  115. package/scope/scope-evaluator.d.ts.map +1 -1
  116. package/scope/scope-registry.d.ts +1 -1
  117. package/scope/scope-registry.d.ts.map +1 -1
  118. package/state-adjectives.d.ts +1 -1
  119. package/state-adjectives.d.ts.map +1 -1
  120. package/state-adjectives.js +5 -5
  121. package/state-adjectives.js.map +1 -1
  122. package/state-clauses.d.ts +1 -1
  123. package/state-clauses.d.ts.map +1 -1
  124. package/state-clauses.js +5 -5
  125. package/state-clauses.js.map +1 -1
  126. package/test-structure.d.ts +1 -1
  127. package/test-structure.d.ts.map +1 -1
  128. package/test-structure.js +7 -7
  129. package/test-structure.js.map +1 -1
  130. package/traits/acoustic/acousticDampenerTrait.d.ts +1 -1
  131. package/traits/acoustic/acousticDampenerTrait.d.ts.map +1 -1
  132. package/traits/acoustic/acousticDampenerTrait.js +3 -3
  133. package/traits/acoustic/acousticDampenerTrait.js.map +1 -1
  134. package/traits/acoustic/acousticTrait.d.ts +1 -1
  135. package/traits/acoustic/acousticTrait.d.ts.map +1 -1
  136. package/traits/acoustic/acousticTrait.js +3 -3
  137. package/traits/acoustic/acousticTrait.js.map +1 -1
  138. package/traits/acoustic/index.d.ts +2 -2
  139. package/traits/acoustic/index.d.ts.map +1 -1
  140. package/traits/acoustic/index.js +5 -5
  141. package/traits/acoustic/index.js.map +1 -1
  142. package/traits/actor/actorBehavior.d.ts +4 -4
  143. package/traits/actor/actorBehavior.d.ts.map +1 -1
  144. package/traits/actor/actorBehavior.js +38 -34
  145. package/traits/actor/actorBehavior.js.map +1 -1
  146. package/traits/actor/actorTrait.d.ts +1 -1
  147. package/traits/actor/actorTrait.d.ts.map +1 -1
  148. package/traits/actor/actorTrait.js +3 -3
  149. package/traits/actor/actorTrait.js.map +1 -1
  150. package/traits/actor/index.d.ts +2 -2
  151. package/traits/actor/index.d.ts.map +1 -1
  152. package/traits/actor/index.js +6 -6
  153. package/traits/actor/index.js.map +1 -1
  154. package/traits/all-traits.d.ts +30 -33
  155. package/traits/all-traits.d.ts.map +1 -1
  156. package/traits/all-traits.js +56 -62
  157. package/traits/all-traits.js.map +1 -1
  158. package/traits/attached/attachedTrait.d.ts +1 -1
  159. package/traits/attached/attachedTrait.d.ts.map +1 -1
  160. package/traits/attached/attachedTrait.js +3 -3
  161. package/traits/attached/attachedTrait.js.map +1 -1
  162. package/traits/attached/index.d.ts +1 -1
  163. package/traits/attached/index.d.ts.map +1 -1
  164. package/traits/attached/index.js +1 -1
  165. package/traits/attached/index.js.map +1 -1
  166. package/traits/breakable/breakableBehavior.d.ts +3 -3
  167. package/traits/breakable/breakableBehavior.d.ts.map +1 -1
  168. package/traits/breakable/breakableBehavior.js +10 -10
  169. package/traits/breakable/breakableBehavior.js.map +1 -1
  170. package/traits/breakable/breakableTrait.d.ts +1 -1
  171. package/traits/breakable/breakableTrait.d.ts.map +1 -1
  172. package/traits/breakable/index.d.ts +2 -2
  173. package/traits/breakable/index.d.ts.map +1 -1
  174. package/traits/breakable/index.js +4 -4
  175. package/traits/breakable/index.js.map +1 -1
  176. package/traits/button/buttonTrait.d.ts +1 -1
  177. package/traits/button/buttonTrait.d.ts.map +1 -1
  178. package/traits/button/buttonTrait.js +3 -3
  179. package/traits/button/buttonTrait.js.map +1 -1
  180. package/traits/button/index.d.ts +1 -1
  181. package/traits/button/index.d.ts.map +1 -1
  182. package/traits/button/index.js +1 -1
  183. package/traits/button/index.js.map +1 -1
  184. package/traits/character-model/characterModelTrait.d.ts +2 -2
  185. package/traits/character-model/characterModelTrait.d.ts.map +1 -1
  186. package/traits/character-model/characterModelTrait.js +16 -16
  187. package/traits/character-model/characterModelTrait.js.map +1 -1
  188. package/traits/character-model/index.d.ts +2 -2
  189. package/traits/character-model/index.d.ts.map +1 -1
  190. package/traits/character-model/index.js +3 -3
  191. package/traits/character-model/index.js.map +1 -1
  192. package/traits/climbable/climbableBehavior.d.ts +1 -1
  193. package/traits/climbable/climbableBehavior.d.ts.map +1 -1
  194. package/traits/climbable/climbableBehavior.js +9 -9
  195. package/traits/climbable/climbableBehavior.js.map +1 -1
  196. package/traits/climbable/climbableTrait.d.ts +1 -1
  197. package/traits/climbable/climbableTrait.d.ts.map +1 -1
  198. package/traits/climbable/climbableTrait.js +4 -4
  199. package/traits/climbable/climbableTrait.js.map +1 -1
  200. package/traits/climbable/index.d.ts +2 -2
  201. package/traits/climbable/index.d.ts.map +1 -1
  202. package/traits/climbable/index.js +2 -2
  203. package/traits/climbable/index.js.map +1 -1
  204. package/traits/clothing/clothingTrait.d.ts +2 -2
  205. package/traits/clothing/clothingTrait.d.ts.map +1 -1
  206. package/traits/clothing/clothingTrait.js +3 -3
  207. package/traits/clothing/clothingTrait.js.map +1 -1
  208. package/traits/clothing/index.d.ts +1 -1
  209. package/traits/clothing/index.d.ts.map +1 -1
  210. package/traits/clothing/index.js +1 -1
  211. package/traits/clothing/index.js.map +1 -1
  212. package/traits/combatant/combatantBehavior.d.ts +26 -21
  213. package/traits/combatant/combatantBehavior.d.ts.map +1 -1
  214. package/traits/combatant/combatantBehavior.js +58 -56
  215. package/traits/combatant/combatantBehavior.js.map +1 -1
  216. package/traits/combatant/combatantTrait.d.ts +15 -49
  217. package/traits/combatant/combatantTrait.d.ts.map +1 -1
  218. package/traits/combatant/combatantTrait.js +13 -80
  219. package/traits/combatant/combatantTrait.js.map +1 -1
  220. package/traits/combatant/index.d.ts +2 -2
  221. package/traits/combatant/index.d.ts.map +1 -1
  222. package/traits/combatant/index.js +4 -4
  223. package/traits/combatant/index.js.map +1 -1
  224. package/traits/concealment/concealedStateTrait.d.ts +3 -3
  225. package/traits/concealment/concealedStateTrait.d.ts.map +1 -1
  226. package/traits/concealment/concealedStateTrait.js +2 -2
  227. package/traits/concealment/concealedStateTrait.js.map +1 -1
  228. package/traits/concealment/concealedVisibilityBehavior.d.ts +2 -2
  229. package/traits/concealment/concealedVisibilityBehavior.d.ts.map +1 -1
  230. package/traits/concealment/concealedVisibilityBehavior.js +3 -3
  231. package/traits/concealment/concealedVisibilityBehavior.js.map +1 -1
  232. package/traits/concealment/concealmentTrait.d.ts +1 -1
  233. package/traits/concealment/concealmentTrait.d.ts.map +1 -1
  234. package/traits/concealment/index.d.ts +3 -3
  235. package/traits/concealment/index.d.ts.map +1 -1
  236. package/traits/concealment/index.js +3 -3
  237. package/traits/concealment/index.js.map +1 -1
  238. package/traits/container/container-utils.d.ts +2 -2
  239. package/traits/container/container-utils.d.ts.map +1 -1
  240. package/traits/container/container-utils.js +14 -14
  241. package/traits/container/container-utils.js.map +1 -1
  242. package/traits/container/containerBehavior.d.ts +7 -2
  243. package/traits/container/containerBehavior.d.ts.map +1 -1
  244. package/traits/container/containerBehavior.js +26 -26
  245. package/traits/container/containerBehavior.js.map +1 -1
  246. package/traits/container/containerTrait.d.ts +1 -1
  247. package/traits/container/containerTrait.d.ts.map +1 -1
  248. package/traits/container/containerTrait.js +3 -3
  249. package/traits/container/containerTrait.js.map +1 -1
  250. package/traits/container/index.d.ts +3 -3
  251. package/traits/container/index.d.ts.map +1 -1
  252. package/traits/container/index.js +9 -9
  253. package/traits/container/index.js.map +1 -1
  254. package/traits/cuttable/cuttableBehavior.d.ts +23 -0
  255. package/traits/cuttable/cuttableBehavior.d.ts.map +1 -0
  256. package/traits/cuttable/cuttableBehavior.js +39 -0
  257. package/traits/cuttable/cuttableBehavior.js.map +1 -0
  258. package/traits/cuttable/cuttableTrait.d.ts +37 -0
  259. package/traits/cuttable/cuttableTrait.d.ts.map +1 -0
  260. package/traits/cuttable/cuttableTrait.js +30 -0
  261. package/traits/cuttable/cuttableTrait.js.map +1 -0
  262. package/traits/cuttable/index.d.ts +3 -0
  263. package/traits/cuttable/index.d.ts.map +1 -0
  264. package/traits/cuttable/index.js +20 -0
  265. package/traits/cuttable/index.js.map +1 -0
  266. package/traits/deadly-room/deadlyRoomBehavior.d.ts +48 -0
  267. package/traits/deadly-room/deadlyRoomBehavior.d.ts.map +1 -0
  268. package/traits/deadly-room/deadlyRoomBehavior.js +59 -0
  269. package/traits/deadly-room/deadlyRoomBehavior.js.map +1 -0
  270. package/traits/deadly-room/deadlyRoomTrait.d.ts +51 -0
  271. package/traits/deadly-room/deadlyRoomTrait.d.ts.map +1 -0
  272. package/traits/deadly-room/deadlyRoomTrait.js +37 -0
  273. package/traits/deadly-room/deadlyRoomTrait.js.map +1 -0
  274. package/traits/deadly-room/index.d.ts +3 -0
  275. package/traits/deadly-room/index.d.ts.map +1 -0
  276. package/traits/deadly-room/index.js +8 -0
  277. package/traits/deadly-room/index.js.map +1 -0
  278. package/traits/destructible/destructibleBehavior.d.ts +3 -3
  279. package/traits/destructible/destructibleBehavior.d.ts.map +1 -1
  280. package/traits/destructible/destructibleBehavior.js +12 -12
  281. package/traits/destructible/destructibleBehavior.js.map +1 -1
  282. package/traits/destructible/destructibleTrait.d.ts +1 -1
  283. package/traits/destructible/destructibleTrait.d.ts.map +1 -1
  284. package/traits/destructible/index.d.ts +2 -2
  285. package/traits/destructible/index.d.ts.map +1 -1
  286. package/traits/destructible/index.js +4 -4
  287. package/traits/destructible/index.js.map +1 -1
  288. package/traits/diggable/diggableBehavior.d.ts +23 -0
  289. package/traits/diggable/diggableBehavior.d.ts.map +1 -0
  290. package/traits/diggable/diggableBehavior.js +39 -0
  291. package/traits/diggable/diggableBehavior.js.map +1 -0
  292. package/traits/diggable/diggableTrait.d.ts +37 -0
  293. package/traits/diggable/diggableTrait.d.ts.map +1 -0
  294. package/traits/diggable/diggableTrait.js +30 -0
  295. package/traits/diggable/diggableTrait.js.map +1 -0
  296. package/traits/diggable/index.d.ts +3 -0
  297. package/traits/diggable/index.d.ts.map +1 -0
  298. package/traits/diggable/index.js +20 -0
  299. package/traits/diggable/index.js.map +1 -0
  300. package/traits/door/doorBehavior.d.ts +2 -2
  301. package/traits/door/doorBehavior.d.ts.map +1 -1
  302. package/traits/door/doorBehavior.js +11 -11
  303. package/traits/door/doorBehavior.js.map +1 -1
  304. package/traits/door/doorTrait.d.ts +1 -1
  305. package/traits/door/doorTrait.d.ts.map +1 -1
  306. package/traits/door/doorTrait.js +3 -3
  307. package/traits/door/doorTrait.js.map +1 -1
  308. package/traits/door/index.d.ts +2 -2
  309. package/traits/door/index.d.ts.map +1 -1
  310. package/traits/door/index.js +4 -4
  311. package/traits/door/index.js.map +1 -1
  312. package/traits/edible/edibleBehavior.d.ts +3 -3
  313. package/traits/edible/edibleBehavior.d.ts.map +1 -1
  314. package/traits/edible/edibleBehavior.js +20 -20
  315. package/traits/edible/edibleBehavior.js.map +1 -1
  316. package/traits/edible/edibleTrait.d.ts +1 -1
  317. package/traits/edible/edibleTrait.d.ts.map +1 -1
  318. package/traits/edible/edibleTrait.js +3 -3
  319. package/traits/edible/edibleTrait.js.map +1 -1
  320. package/traits/edible/index.d.ts +2 -2
  321. package/traits/edible/index.d.ts.map +1 -1
  322. package/traits/edible/index.js +2 -2
  323. package/traits/edible/index.js.map +1 -1
  324. package/traits/enterable/enterableTrait.d.ts +1 -1
  325. package/traits/enterable/enterableTrait.d.ts.map +1 -1
  326. package/traits/enterable/enterableTrait.js +4 -4
  327. package/traits/enterable/enterableTrait.js.map +1 -1
  328. package/traits/enterable/index.d.ts +1 -1
  329. package/traits/enterable/index.d.ts.map +1 -1
  330. package/traits/enterable/index.js +1 -1
  331. package/traits/enterable/index.js.map +1 -1
  332. package/traits/equipped/equippedTrait.d.ts +1 -1
  333. package/traits/equipped/equippedTrait.d.ts.map +1 -1
  334. package/traits/equipped/index.d.ts +1 -1
  335. package/traits/equipped/index.d.ts.map +1 -1
  336. package/traits/equipped/index.js +2 -2
  337. package/traits/equipped/index.js.map +1 -1
  338. package/traits/exit/exitBehavior.d.ts +2 -2
  339. package/traits/exit/exitBehavior.d.ts.map +1 -1
  340. package/traits/exit/exitBehavior.js +27 -27
  341. package/traits/exit/exitBehavior.js.map +1 -1
  342. package/traits/exit/exitTrait.d.ts +1 -1
  343. package/traits/exit/exitTrait.d.ts.map +1 -1
  344. package/traits/exit/exitTrait.js +3 -3
  345. package/traits/exit/exitTrait.js.map +1 -1
  346. package/traits/exit/index.d.ts +2 -2
  347. package/traits/exit/index.d.ts.map +1 -1
  348. package/traits/exit/index.js +4 -4
  349. package/traits/exit/index.js.map +1 -1
  350. package/traits/health/healthBehavior.d.ts +66 -0
  351. package/traits/health/healthBehavior.d.ts.map +1 -0
  352. package/traits/health/healthBehavior.js +98 -0
  353. package/traits/health/healthBehavior.js.map +1 -0
  354. package/traits/health/healthTrait.d.ts +60 -0
  355. package/traits/health/healthTrait.d.ts.map +1 -0
  356. package/traits/health/healthTrait.js +49 -0
  357. package/traits/health/healthTrait.js.map +1 -0
  358. package/traits/health/index.d.ts +3 -0
  359. package/traits/health/index.d.ts.map +1 -0
  360. package/traits/health/index.js +8 -0
  361. package/traits/health/index.js.map +1 -0
  362. package/traits/identity/identityBehavior.d.ts +2 -2
  363. package/traits/identity/identityBehavior.d.ts.map +1 -1
  364. package/traits/identity/identityBehavior.js +16 -16
  365. package/traits/identity/identityBehavior.js.map +1 -1
  366. package/traits/identity/identityTrait.d.ts +8 -1
  367. package/traits/identity/identityTrait.d.ts.map +1 -1
  368. package/traits/identity/identityTrait.js +10 -3
  369. package/traits/identity/identityTrait.js.map +1 -1
  370. package/traits/identity/index.d.ts +3 -2
  371. package/traits/identity/index.d.ts.map +1 -1
  372. package/traits/identity/index.js +3 -2
  373. package/traits/identity/index.js.map +1 -1
  374. package/traits/identity/name-vocabulary.d.ts +31 -0
  375. package/traits/identity/name-vocabulary.d.ts.map +1 -0
  376. package/traits/identity/name-vocabulary.js +57 -0
  377. package/traits/identity/name-vocabulary.js.map +1 -0
  378. package/traits/implementations.d.ts +65 -38
  379. package/traits/implementations.d.ts.map +1 -1
  380. package/traits/implementations.js +165 -117
  381. package/traits/implementations.js.map +1 -1
  382. package/traits/index.d.ts +47 -44
  383. package/traits/index.d.ts.map +1 -1
  384. package/traits/index.js +48 -44
  385. package/traits/index.js.map +1 -1
  386. package/traits/light-source/index.d.ts +2 -2
  387. package/traits/light-source/index.d.ts.map +1 -1
  388. package/traits/light-source/index.js +4 -4
  389. package/traits/light-source/index.js.map +1 -1
  390. package/traits/light-source/lightSourceBehavior.d.ts +2 -2
  391. package/traits/light-source/lightSourceBehavior.d.ts.map +1 -1
  392. package/traits/light-source/lightSourceBehavior.js +16 -16
  393. package/traits/light-source/lightSourceBehavior.js.map +1 -1
  394. package/traits/light-source/lightSourceTrait.d.ts +1 -1
  395. package/traits/light-source/lightSourceTrait.d.ts.map +1 -1
  396. package/traits/light-source/lightSourceTrait.js +3 -3
  397. package/traits/light-source/lightSourceTrait.js.map +1 -1
  398. package/traits/listener/index.d.ts +1 -1
  399. package/traits/listener/index.d.ts.map +1 -1
  400. package/traits/listener/index.js +2 -2
  401. package/traits/listener/index.js.map +1 -1
  402. package/traits/listener/listenerTrait.d.ts +1 -1
  403. package/traits/listener/listenerTrait.d.ts.map +1 -1
  404. package/traits/listener/listenerTrait.js +3 -3
  405. package/traits/listener/listenerTrait.js.map +1 -1
  406. package/traits/lockable/index.d.ts +2 -2
  407. package/traits/lockable/index.d.ts.map +1 -1
  408. package/traits/lockable/index.js +2 -2
  409. package/traits/lockable/index.js.map +1 -1
  410. package/traits/lockable/lockableBehavior.d.ts +2 -2
  411. package/traits/lockable/lockableBehavior.d.ts.map +1 -1
  412. package/traits/lockable/lockableBehavior.js +19 -19
  413. package/traits/lockable/lockableBehavior.js.map +1 -1
  414. package/traits/lockable/lockableTrait.d.ts +1 -1
  415. package/traits/lockable/lockableTrait.d.ts.map +1 -1
  416. package/traits/lockable/lockableTrait.js +3 -3
  417. package/traits/lockable/lockableTrait.js.map +1 -1
  418. package/traits/moveable-scenery/index.d.ts +1 -1
  419. package/traits/moveable-scenery/index.d.ts.map +1 -1
  420. package/traits/moveable-scenery/index.js +1 -1
  421. package/traits/moveable-scenery/index.js.map +1 -1
  422. package/traits/moveable-scenery/moveableSceneryTrait.d.ts +1 -1
  423. package/traits/moveable-scenery/moveableSceneryTrait.d.ts.map +1 -1
  424. package/traits/moveable-scenery/moveableSceneryTrait.js +3 -3
  425. package/traits/moveable-scenery/moveableSceneryTrait.js.map +1 -1
  426. package/traits/npc/index.d.ts +1 -1
  427. package/traits/npc/index.d.ts.map +1 -1
  428. package/traits/npc/index.js +2 -2
  429. package/traits/npc/index.js.map +1 -1
  430. package/traits/npc/npcTrait.d.ts +6 -28
  431. package/traits/npc/npcTrait.d.ts.map +1 -1
  432. package/traits/npc/npcTrait.js +0 -38
  433. package/traits/npc/npcTrait.js.map +1 -1
  434. package/traits/obstructor-protocol.d.ts +3 -3
  435. package/traits/obstructor-protocol.d.ts.map +1 -1
  436. package/traits/open-inventory/index.d.ts +1 -1
  437. package/traits/open-inventory/index.d.ts.map +1 -1
  438. package/traits/open-inventory/index.js +2 -2
  439. package/traits/open-inventory/index.js.map +1 -1
  440. package/traits/open-inventory/openInventoryTrait.d.ts +1 -1
  441. package/traits/open-inventory/openInventoryTrait.d.ts.map +1 -1
  442. package/traits/open-inventory/openInventoryTrait.js +3 -3
  443. package/traits/open-inventory/openInventoryTrait.js.map +1 -1
  444. package/traits/openable/index.d.ts +2 -2
  445. package/traits/openable/index.d.ts.map +1 -1
  446. package/traits/openable/index.js +2 -2
  447. package/traits/openable/index.js.map +1 -1
  448. package/traits/openable/openableBehavior.d.ts +12 -2
  449. package/traits/openable/openableBehavior.d.ts.map +1 -1
  450. package/traits/openable/openableBehavior.js +32 -11
  451. package/traits/openable/openableBehavior.js.map +1 -1
  452. package/traits/openable/openableTrait.d.ts +8 -1
  453. package/traits/openable/openableTrait.d.ts.map +1 -1
  454. package/traits/openable/openableTrait.js +7 -3
  455. package/traits/openable/openableTrait.js.map +1 -1
  456. package/traits/pullable/index.d.ts +1 -1
  457. package/traits/pullable/index.d.ts.map +1 -1
  458. package/traits/pullable/index.js +1 -1
  459. package/traits/pullable/index.js.map +1 -1
  460. package/traits/pullable/pullableTrait.d.ts +1 -1
  461. package/traits/pullable/pullableTrait.d.ts.map +1 -1
  462. package/traits/pullable/pullableTrait.js +3 -3
  463. package/traits/pullable/pullableTrait.js.map +1 -1
  464. package/traits/pushable/index.d.ts +1 -1
  465. package/traits/pushable/index.d.ts.map +1 -1
  466. package/traits/pushable/index.js +1 -1
  467. package/traits/pushable/index.js.map +1 -1
  468. package/traits/pushable/pushableTrait.d.ts +1 -1
  469. package/traits/pushable/pushableTrait.d.ts.map +1 -1
  470. package/traits/pushable/pushableTrait.js +3 -3
  471. package/traits/pushable/pushableTrait.js.map +1 -1
  472. package/traits/readable/index.d.ts +2 -2
  473. package/traits/readable/index.d.ts.map +1 -1
  474. package/traits/readable/index.js +4 -4
  475. package/traits/readable/index.js.map +1 -1
  476. package/traits/readable/readableBehavior.d.ts +1 -1
  477. package/traits/readable/readableBehavior.d.ts.map +1 -1
  478. package/traits/readable/readableBehavior.js +10 -10
  479. package/traits/readable/readableBehavior.js.map +1 -1
  480. package/traits/readable/readableTrait.d.ts +1 -1
  481. package/traits/readable/readableTrait.d.ts.map +1 -1
  482. package/traits/readable/readableTrait.js +3 -3
  483. package/traits/readable/readableTrait.js.map +1 -1
  484. package/traits/region/index.d.ts +1 -1
  485. package/traits/region/index.d.ts.map +1 -1
  486. package/traits/region/index.js +2 -2
  487. package/traits/region/index.js.map +1 -1
  488. package/traits/region/regionTrait.d.ts +1 -1
  489. package/traits/region/regionTrait.d.ts.map +1 -1
  490. package/traits/region/regionTrait.js +3 -3
  491. package/traits/region/regionTrait.js.map +1 -1
  492. package/traits/room/index.d.ts +2 -2
  493. package/traits/room/index.d.ts.map +1 -1
  494. package/traits/room/index.js +4 -4
  495. package/traits/room/index.js.map +1 -1
  496. package/traits/room/roomBehavior.d.ts +4 -4
  497. package/traits/room/roomBehavior.d.ts.map +1 -1
  498. package/traits/room/roomBehavior.js +25 -25
  499. package/traits/room/roomBehavior.js.map +1 -1
  500. package/traits/room/roomTrait.d.ts +10 -5
  501. package/traits/room/roomTrait.d.ts.map +1 -1
  502. package/traits/room/roomTrait.js +5 -5
  503. package/traits/room/roomTrait.js.map +1 -1
  504. package/traits/scene/index.d.ts +1 -1
  505. package/traits/scene/index.d.ts.map +1 -1
  506. package/traits/scene/index.js +2 -2
  507. package/traits/scene/index.js.map +1 -1
  508. package/traits/scene/sceneTrait.d.ts +1 -1
  509. package/traits/scene/sceneTrait.d.ts.map +1 -1
  510. package/traits/scene/sceneTrait.js +3 -3
  511. package/traits/scene/sceneTrait.js.map +1 -1
  512. package/traits/scenery/index.d.ts +2 -2
  513. package/traits/scenery/index.d.ts.map +1 -1
  514. package/traits/scenery/index.js +4 -4
  515. package/traits/scenery/index.js.map +1 -1
  516. package/traits/scenery/sceneryBehavior.d.ts +1 -1
  517. package/traits/scenery/sceneryBehavior.d.ts.map +1 -1
  518. package/traits/scenery/sceneryBehavior.js +5 -5
  519. package/traits/scenery/sceneryBehavior.js.map +1 -1
  520. package/traits/scenery/sceneryTrait.d.ts +1 -1
  521. package/traits/scenery/sceneryTrait.d.ts.map +1 -1
  522. package/traits/scenery/sceneryTrait.js +3 -3
  523. package/traits/scenery/sceneryTrait.js.map +1 -1
  524. package/traits/story-info/index.d.ts +1 -1
  525. package/traits/story-info/index.d.ts.map +1 -1
  526. package/traits/story-info/index.js +2 -2
  527. package/traits/story-info/index.js.map +1 -1
  528. package/traits/story-info/storyInfoTrait.d.ts +1 -1
  529. package/traits/story-info/storyInfoTrait.d.ts.map +1 -1
  530. package/traits/supporter/index.d.ts +2 -2
  531. package/traits/supporter/index.d.ts.map +1 -1
  532. package/traits/supporter/index.js +4 -4
  533. package/traits/supporter/index.js.map +1 -1
  534. package/traits/supporter/supporterBehavior.d.ts +3 -3
  535. package/traits/supporter/supporterBehavior.d.ts.map +1 -1
  536. package/traits/supporter/supporterBehavior.js +15 -15
  537. package/traits/supporter/supporterBehavior.js.map +1 -1
  538. package/traits/supporter/supporterTrait.d.ts +1 -1
  539. package/traits/supporter/supporterTrait.d.ts.map +1 -1
  540. package/traits/supporter/supporterTrait.js +3 -3
  541. package/traits/supporter/supporterTrait.js.map +1 -1
  542. package/traits/switchable/index.d.ts +2 -2
  543. package/traits/switchable/index.d.ts.map +1 -1
  544. package/traits/switchable/index.js +2 -2
  545. package/traits/switchable/index.js.map +1 -1
  546. package/traits/switchable/switchableBehavior.d.ts +2 -2
  547. package/traits/switchable/switchableBehavior.d.ts.map +1 -1
  548. package/traits/switchable/switchableBehavior.js +18 -18
  549. package/traits/switchable/switchableBehavior.js.map +1 -1
  550. package/traits/switchable/switchableTrait.d.ts +1 -1
  551. package/traits/switchable/switchableTrait.d.ts.map +1 -1
  552. package/traits/switchable/switchableTrait.js +3 -3
  553. package/traits/switchable/switchableTrait.js.map +1 -1
  554. package/traits/trait-types.d.ts +4 -1
  555. package/traits/trait-types.d.ts.map +1 -1
  556. package/traits/trait-types.js +12 -2
  557. package/traits/trait-types.js.map +1 -1
  558. package/traits/trait.d.ts +1 -1
  559. package/traits/trait.d.ts.map +1 -1
  560. package/traits/vehicle/index.d.ts +2 -2
  561. package/traits/vehicle/index.d.ts.map +1 -1
  562. package/traits/vehicle/index.js +2 -2
  563. package/traits/vehicle/index.js.map +1 -1
  564. package/traits/vehicle/vehicleBehavior.d.ts +2 -2
  565. package/traits/vehicle/vehicleBehavior.d.ts.map +1 -1
  566. package/traits/vehicle/vehicleBehavior.js +7 -7
  567. package/traits/vehicle/vehicleBehavior.js.map +1 -1
  568. package/traits/vehicle/vehicleTrait.d.ts +1 -1
  569. package/traits/vehicle/vehicleTrait.d.ts.map +1 -1
  570. package/traits/vehicle/vehicleTrait.js +4 -4
  571. package/traits/vehicle/vehicleTrait.js.map +1 -1
  572. package/traits/weapon/index.d.ts +2 -2
  573. package/traits/weapon/index.d.ts.map +1 -1
  574. package/traits/weapon/index.js +4 -4
  575. package/traits/weapon/index.js.map +1 -1
  576. package/traits/weapon/weaponBehavior.d.ts +11 -4
  577. package/traits/weapon/weaponBehavior.d.ts.map +1 -1
  578. package/traits/weapon/weaponBehavior.js +24 -19
  579. package/traits/weapon/weaponBehavior.js.map +1 -1
  580. package/traits/weapon/weaponTrait.d.ts +1 -1
  581. package/traits/weapon/weaponTrait.d.ts.map +1 -1
  582. package/traits/wearable/index.d.ts +2 -2
  583. package/traits/wearable/index.d.ts.map +1 -1
  584. package/traits/wearable/index.js +2 -2
  585. package/traits/wearable/index.js.map +1 -1
  586. package/traits/wearable/wearableBehavior.d.ts +1 -1
  587. package/traits/wearable/wearableBehavior.d.ts.map +1 -1
  588. package/traits/wearable/wearableBehavior.js +11 -11
  589. package/traits/wearable/wearableBehavior.js.map +1 -1
  590. package/traits/wearable/wearableTrait.d.ts +1 -1
  591. package/traits/wearable/wearableTrait.d.ts.map +1 -1
  592. package/traits/wearable/wearableTrait.js +3 -3
  593. package/traits/wearable/wearableTrait.js.map +1 -1
  594. package/world/AuthorModel.d.ts +23 -17
  595. package/world/AuthorModel.d.ts.map +1 -1
  596. package/world/AuthorModel.js +15 -4
  597. package/world/AuthorModel.js.map +1 -1
  598. package/world/SharedDataStore.d.ts +2 -2
  599. package/world/SharedDataStore.d.ts.map +1 -1
  600. package/world/SharedDataStore.js +2 -2
  601. package/world/SharedDataStore.js.map +1 -1
  602. package/world/VisibilityBehavior.d.ts +60 -4
  603. package/world/VisibilityBehavior.d.ts.map +1 -1
  604. package/world/VisibilityBehavior.js +193 -101
  605. package/world/VisibilityBehavior.js.map +1 -1
  606. package/world/WorldEventSystem.d.ts +1 -1
  607. package/world/WorldEventSystem.d.ts.map +1 -1
  608. package/world/WorldModel.d.ts +65 -18
  609. package/world/WorldModel.d.ts.map +1 -1
  610. package/world/WorldModel.js +164 -114
  611. package/world/WorldModel.js.map +1 -1
  612. package/world/WorldSerializer.d.ts +4 -4
  613. package/world/WorldSerializer.d.ts.map +1 -1
  614. package/world/WorldSerializer.js +2 -2
  615. package/world/WorldSerializer.js.map +1 -1
  616. package/world/default-trait-registry.d.ts +1 -1
  617. package/world/default-trait-registry.d.ts.map +1 -1
  618. package/world/default-trait-registry.js +3 -3
  619. package/world/default-trait-registry.js.map +1 -1
  620. package/world/index.d.ts +9 -9
  621. package/world/index.d.ts.map +1 -1
  622. package/world/index.js +17 -16
  623. package/world/index.js.map +1 -1
  624. package/world/wall-creation.d.ts +2 -2
  625. package/world/wall-creation.d.ts.map +1 -1
  626. package/world/wall-creation.js +6 -6
  627. package/world/wall-creation.js.map +1 -1
  628. package/world/wall-validation.d.ts +2 -2
  629. package/world/wall-validation.d.ts.map +1 -1
  630. package/world/wall-validation.js +3 -3
  631. package/world/wall-validation.js.map +1 -1
@@ -2,22 +2,22 @@
2
2
  // packages/world-model/src/traits/exit/exitBehavior.ts
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.ExitBehavior = void 0;
5
- const if_entity_1 = require("../../entities/if-entity");
6
- const trait_types_1 = require("../trait-types");
7
- const exitTrait_1 = require("./exitTrait");
5
+ const if_entity_js_1 = require("../../entities/if-entity.js");
6
+ const trait_types_js_1 = require("../trait-types.js");
7
+ const exitTrait_js_1 = require("./exitTrait.js");
8
8
  const core_1 = require("@sharpee/core");
9
- const if_events_1 = require("../../constants/if-events");
9
+ const if_events_js_1 = require("../../constants/if-events.js");
10
10
  /**
11
11
  * Behavior for exit entities.
12
12
  * Handles all logic related to movement through exits.
13
13
  */
14
14
  class ExitBehavior {
15
- static requiredTraits = [trait_types_1.TraitType.EXIT];
15
+ static requiredTraits = [trait_types_js_1.TraitType.EXIT];
16
16
  /**
17
17
  * Check if an exit matches a command
18
18
  */
19
19
  static matchesCommand(exit, command) {
20
- const trait = exit.get(trait_types_1.TraitType.EXIT);
20
+ const trait = exit.get(trait_types_js_1.TraitType.EXIT);
21
21
  if (!trait)
22
22
  return false;
23
23
  // Check main command
@@ -38,7 +38,7 @@ class ExitBehavior {
38
38
  * Check if an exit can be used
39
39
  */
40
40
  static canUse(exit, actor, world) {
41
- const trait = exit.get(trait_types_1.TraitType.EXIT);
41
+ const trait = exit.get(trait_types_js_1.TraitType.EXIT);
42
42
  if (!trait)
43
43
  return false;
44
44
  // Check if exit is visible
@@ -52,14 +52,14 @@ class ExitBehavior {
52
52
  return true; // For now, allow all conditional exits
53
53
  }
54
54
  // Check if exit is blocked (door closed, etc.)
55
- if (exit.has(trait_types_1.TraitType.OPENABLE)) {
56
- const openable = exit.get(trait_types_1.TraitType.OPENABLE);
55
+ if (exit.has(trait_types_js_1.TraitType.OPENABLE)) {
56
+ const openable = exit.get(trait_types_js_1.TraitType.OPENABLE);
57
57
  if (openable && !openable.isOpen) {
58
58
  return false;
59
59
  }
60
60
  }
61
- if (exit.has(trait_types_1.TraitType.LOCKABLE)) {
62
- const lockable = exit.get(trait_types_1.TraitType.LOCKABLE);
61
+ if (exit.has(trait_types_js_1.TraitType.LOCKABLE)) {
62
+ const lockable = exit.get(trait_types_js_1.TraitType.LOCKABLE);
63
63
  if (lockable && lockable.isLocked) {
64
64
  return false;
65
65
  }
@@ -70,10 +70,10 @@ class ExitBehavior {
70
70
  * Use an exit to move between locations
71
71
  */
72
72
  static use(exit, actor, world) {
73
- const trait = exit.get(trait_types_1.TraitType.EXIT);
73
+ const trait = exit.get(trait_types_js_1.TraitType.EXIT);
74
74
  if (!trait) {
75
75
  return [
76
- (0, core_1.createEvent)(if_events_1.IFEvents.ACTION_FAILED, {
76
+ (0, core_1.createEvent)(if_events_js_1.IFEvents.ACTION_FAILED, {
77
77
  action: 'use_exit',
78
78
  reason: 'not_an_exit'
79
79
  }, { target: exit.id, actor: actor.id })
@@ -83,7 +83,7 @@ class ExitBehavior {
83
83
  if (!this.canUse(exit, actor, world)) {
84
84
  const reason = this.getBlockedReason(exit);
85
85
  return [
86
- (0, core_1.createEvent)(if_events_1.IFEvents.ACTION_FAILED, {
86
+ (0, core_1.createEvent)(if_events_js_1.IFEvents.ACTION_FAILED, {
87
87
  action: 'use_exit',
88
88
  reason,
89
89
  message: trait.blockedMessage
@@ -94,10 +94,10 @@ class ExitBehavior {
94
94
  const events = [];
95
95
  // Custom use message event
96
96
  if (trait.useMessage) {
97
- events.push((0, core_1.createEvent)(if_events_1.IFEvents.CUSTOM_MESSAGE, { message: trait.useMessage }, { actor: actor.id }));
97
+ events.push((0, core_1.createEvent)(if_events_js_1.IFEvents.CUSTOM_MESSAGE, { message: trait.useMessage }, { actor: actor.id }));
98
98
  }
99
99
  // Movement event
100
- events.push((0, core_1.createEvent)(if_events_1.IFEvents.MOVED, {
100
+ events.push((0, core_1.createEvent)(if_events_js_1.IFEvents.MOVED, {
101
101
  from: trait.from,
102
102
  to: trait.to,
103
103
  via: exit.id,
@@ -110,20 +110,20 @@ class ExitBehavior {
110
110
  * Get reason why exit is blocked
111
111
  */
112
112
  static getBlockedReason(exit) {
113
- const trait = exit.get(trait_types_1.TraitType.EXIT);
113
+ const trait = exit.get(trait_types_js_1.TraitType.EXIT);
114
114
  if (!trait)
115
115
  return 'not_an_exit';
116
116
  if (!trait.visible) {
117
117
  return 'exit_not_visible';
118
118
  }
119
- if (exit.has(trait_types_1.TraitType.LOCKABLE)) {
120
- const lockable = exit.get(trait_types_1.TraitType.LOCKABLE);
119
+ if (exit.has(trait_types_js_1.TraitType.LOCKABLE)) {
120
+ const lockable = exit.get(trait_types_js_1.TraitType.LOCKABLE);
121
121
  if (lockable && lockable.isLocked) {
122
122
  return 'exit_locked';
123
123
  }
124
124
  }
125
- if (exit.has(trait_types_1.TraitType.OPENABLE)) {
126
- const openable = exit.get(trait_types_1.TraitType.OPENABLE);
125
+ if (exit.has(trait_types_js_1.TraitType.OPENABLE)) {
126
+ const openable = exit.get(trait_types_js_1.TraitType.OPENABLE);
127
127
  if (openable && !openable.isOpen) {
128
128
  return 'exit_closed';
129
129
  }
@@ -149,7 +149,7 @@ class ExitBehavior {
149
149
  */
150
150
  static getVisibleExitsFrom(locationId, world) {
151
151
  return this.getExitsFrom(locationId, world).filter(exit => {
152
- const trait = exit.get(trait_types_1.TraitType.EXIT);
152
+ const trait = exit.get(trait_types_js_1.TraitType.EXIT);
153
153
  return trait && trait.visible;
154
154
  });
155
155
  }
@@ -158,7 +158,7 @@ class ExitBehavior {
158
158
  */
159
159
  static getListedExitsFrom(locationId, world) {
160
160
  return this.getExitsFrom(locationId, world).filter(exit => {
161
- const trait = exit.get(trait_types_1.TraitType.EXIT);
161
+ const trait = exit.get(trait_types_js_1.TraitType.EXIT);
162
162
  return trait && trait.visible && trait.listed;
163
163
  });
164
164
  }
@@ -171,14 +171,14 @@ class ExitBehavior {
171
171
  }
172
172
  // Create forward exit
173
173
  const forwardId = `${exitData.from}-to-${exitData.to}`;
174
- const forward = new if_entity_1.IFEntity(forwardId, 'exit');
175
- forward.add(new exitTrait_1.ExitTrait({
174
+ const forward = new if_entity_js_1.IFEntity(forwardId, 'exit');
175
+ forward.add(new exitTrait_js_1.ExitTrait({
176
176
  ...exitData,
177
177
  bidirectional: true
178
178
  }));
179
179
  // Create reverse exit
180
180
  const reverseId = `${exitData.to}-to-${exitData.from}`;
181
- const reverse = new if_entity_1.IFEntity(reverseId, 'exit');
181
+ const reverse = new if_entity_js_1.IFEntity(reverseId, 'exit');
182
182
  const reverseData = {
183
183
  from: exitData.to,
184
184
  to: exitData.from,
@@ -188,7 +188,7 @@ class ExitBehavior {
188
188
  listed: exitData.listed,
189
189
  bidirectional: true
190
190
  };
191
- reverse.add(new exitTrait_1.ExitTrait(reverseData));
191
+ reverse.add(new exitTrait_js_1.ExitTrait(reverseData));
192
192
  return [forward, reverse];
193
193
  }
194
194
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"exitBehavior.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/exit/exitBehavior.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exitBehavior.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/exit/exitBehavior.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
  * Exit trait for entities that represent passages between locations.
4
4
  * Used for doors, passages, portals, and any custom exits like "xyzzy".
@@ -1 +1 @@
1
- {"version":3,"file":"exitTrait.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/exit/exitTrait.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC;;;;;GAKG;AACH,qBAAa,SAAU,YAAW,MAAM;IACtC,MAAM,CAAC,QAAQ,CAAC,IAAI,SAAkB;IACtC,QAAQ,CAAC,IAAI,SAAkB;IAE/B,4DAA4D;IAC5D,IAAI,EAAE,MAAM,CAAC;IAEb,iEAAiE;IACjE,EAAE,EAAE,MAAM,CAAC;IAEX,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,2EAA2E;IAC3E,OAAO,EAAE,MAAM,CAAC;IAEhB,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB,8CAA8C;IAC9C,OAAO,EAAE,OAAO,CAAQ;IAExB,qDAAqD;IACrD,MAAM,EAAE,OAAO,CAAQ;IAEvB,yDAAyD;IACzD,aAAa,EAAE,OAAO,CAAS;IAE/B,2CAA2C;IAC3C,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,6CAA6C;IAC7C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,+CAA+C;IAC/C,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,oDAAoD;IACpD,WAAW,EAAE,OAAO,CAAS;IAE7B,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAC;gBAET,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC;CAqBrC"}
1
+ {"version":3,"file":"exitTrait.d.ts","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/exit/exitTrait.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrC;;;;;GAKG;AACH,qBAAa,SAAU,YAAW,MAAM;IACtC,MAAM,CAAC,QAAQ,CAAC,IAAI,SAAkB;IACtC,QAAQ,CAAC,IAAI,SAAkB;IAE/B,4DAA4D;IAC5D,IAAI,EAAE,MAAM,CAAC;IAEb,iEAAiE;IACjE,EAAE,EAAE,MAAM,CAAC;IAEX,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,2EAA2E;IAC3E,OAAO,EAAE,MAAM,CAAC;IAEhB,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB,8CAA8C;IAC9C,OAAO,EAAE,OAAO,CAAQ;IAExB,qDAAqD;IACrD,MAAM,EAAE,OAAO,CAAQ;IAEvB,yDAAyD;IACzD,aAAa,EAAE,OAAO,CAAS;IAE/B,2CAA2C;IAC3C,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,6CAA6C;IAC7C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,+CAA+C;IAC/C,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,oDAAoD;IACpD,WAAW,EAAE,OAAO,CAAS;IAE7B,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAC;gBAET,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC;CAqBrC"}
@@ -2,7 +2,7 @@
2
2
  // packages/world-model/src/traits/exit/exitTrait.ts
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.ExitTrait = void 0;
5
- const trait_types_1 = require("../trait-types");
5
+ const trait_types_js_1 = require("../trait-types.js");
6
6
  /**
7
7
  * Exit trait for entities that represent passages between locations.
8
8
  * Used for doors, passages, portals, and any custom exits like "xyzzy".
@@ -10,8 +10,8 @@ const trait_types_1 = require("../trait-types");
10
10
  * This trait contains only data - all behavior is in ExitBehavior.
11
11
  */
12
12
  class ExitTrait {
13
- static type = trait_types_1.TraitType.EXIT;
14
- type = trait_types_1.TraitType.EXIT;
13
+ static type = trait_types_js_1.TraitType.EXIT;
14
+ type = trait_types_js_1.TraitType.EXIT;
15
15
  /** Source location ID (must be an entity ID, not a name) */
16
16
  from;
17
17
  /** Destination location ID (must be an entity ID, not a name) */
@@ -1 +1 @@
1
- {"version":3,"file":"exitTrait.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/exit/exitTrait.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAGpD,gDAA2C;AAE3C;;;;;GAKG;AACH,MAAa,SAAS;IACpB,MAAM,CAAU,IAAI,GAAG,uBAAS,CAAC,IAAI,CAAC;IAC7B,IAAI,GAAG,uBAAS,CAAC,IAAI,CAAC;IAE/B,4DAA4D;IAC5D,IAAI,CAAS;IAEb,iEAAiE;IACjE,EAAE,CAAS;IAEX,6DAA6D;IAC7D,SAAS,CAAU;IAEnB,2EAA2E;IAC3E,OAAO,CAAS;IAEhB,mDAAmD;IACnD,OAAO,CAAY;IAEnB,8CAA8C;IAC9C,OAAO,GAAY,IAAI,CAAC;IAExB,qDAAqD;IACrD,MAAM,GAAY,IAAI,CAAC;IAEvB,yDAAyD;IACzD,aAAa,GAAY,KAAK,CAAC;IAE/B,2CAA2C;IAC3C,cAAc,CAAU;IAExB,6CAA6C;IAC7C,gBAAgB,CAAU;IAE1B,0CAA0C;IAC1C,UAAU,CAAU;IAEpB,+CAA+C;IAC/C,cAAc,CAAU;IAExB,oDAAoD;IACpD,WAAW,GAAY,KAAK,CAAC;IAE7B,kDAAkD;IAClD,WAAW,CAAU;IAErB,YAAY,IAAwB;QAClC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE5B,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;YAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAClE,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5D,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5D,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;YAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACzD,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS;YAAE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QAC9E,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS;YAAE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACjF,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS;YAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACvF,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS;YAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACrE,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS;YAAE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACjF,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACxE,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IAC1E,CAAC;;AAlEH,8BAmEC"}
1
+ {"version":3,"file":"exitTrait.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/exit/exitTrait.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAGpD,sDAA8C;AAE9C;;;;;GAKG;AACH,MAAa,SAAS;IACpB,MAAM,CAAU,IAAI,GAAG,0BAAS,CAAC,IAAI,CAAC;IAC7B,IAAI,GAAG,0BAAS,CAAC,IAAI,CAAC;IAE/B,4DAA4D;IAC5D,IAAI,CAAS;IAEb,iEAAiE;IACjE,EAAE,CAAS;IAEX,6DAA6D;IAC7D,SAAS,CAAU;IAEnB,2EAA2E;IAC3E,OAAO,CAAS;IAEhB,mDAAmD;IACnD,OAAO,CAAY;IAEnB,8CAA8C;IAC9C,OAAO,GAAY,IAAI,CAAC;IAExB,qDAAqD;IACrD,MAAM,GAAY,IAAI,CAAC;IAEvB,yDAAyD;IACzD,aAAa,GAAY,KAAK,CAAC;IAE/B,2CAA2C;IAC3C,cAAc,CAAU;IAExB,6CAA6C;IAC7C,gBAAgB,CAAU;IAE1B,0CAA0C;IAC1C,UAAU,CAAU;IAEpB,+CAA+C;IAC/C,cAAc,CAAU;IAExB,oDAAoD;IACpD,WAAW,GAAY,KAAK,CAAC;IAE7B,kDAAkD;IAClD,WAAW,CAAU;IAErB,YAAY,IAAwB;QAClC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE5B,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;YAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAClE,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5D,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5D,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;YAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACzD,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS;YAAE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QAC9E,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS;YAAE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACjF,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS;YAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACvF,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS;YAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACrE,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS;YAAE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACjF,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACxE,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IAC1E,CAAC;;AAlEH,8BAmEC"}
@@ -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,aAAa,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
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"}
@@ -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 exitTrait_1 = require("./exitTrait");
6
- Object.defineProperty(exports, "ExitTrait", { enumerable: true, get: function () { return exitTrait_1.ExitTrait; } });
7
- var exitBehavior_1 = require("./exitBehavior");
8
- Object.defineProperty(exports, "ExitBehavior", { enumerable: true, get: function () { return exitBehavior_1.ExitBehavior; } });
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
@@ -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,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAClB,+CAA8C;AAArC,4GAAA,YAAY,OAAA"}
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"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Behavior for the HEALTH layer (ADR-226).
3
+ *
4
+ * All derivation and mutation over {@link HealthTrait} data. Consumers call these
5
+ * static methods rather than reading the trait's fields through getters, so the
6
+ * model survives `loadJSON()` (the `npc-service` `canAct`-getter footgun this layer
7
+ * removes). Consciousness is purely derived from `health` — there is no stored
8
+ * knocked-out flag, no `knockOut`/`wakeUp`, and no recovery timer (ADR-226 §1 F1).
9
+ *
10
+ * Public interface: `isAlive` / `isConscious` / `canAct` (pure derivation) and
11
+ * `takeDamage` / `heal` / `kill` (mutation). All operate on a `HealthTrait` directly;
12
+ * callers first confirm the entity has one (an entity with no `HealthTrait` is alive
13
+ * and conscious by default — ADR-226 §3 opt-in rule — a check owned by the caller).
14
+ * Owner context: `@sharpee/world-model` — HEALTH layer (ADR-223 child A).
15
+ */
16
+ import { Behavior } from '../../behaviors/behavior.js';
17
+ import { HealthTrait } from './healthTrait.js';
18
+ export declare class HealthBehavior extends Behavior {
19
+ static requiredTraits: "health"[];
20
+ /**
21
+ * Whether the entity is alive: not terminally dead and above zero health.
22
+ * @param t the entity's health trait
23
+ */
24
+ static isAlive(t: HealthTrait): boolean;
25
+ /**
26
+ * Whether the entity is conscious: alive, not asleep, and above the
27
+ * unconsciousness threshold. Consciousness is derived from `health` alone.
28
+ * @param t the entity's health trait
29
+ */
30
+ static isConscious(t: HealthTrait): boolean;
31
+ /**
32
+ * Whether the entity can take a turn / act. Alias of {@link isConscious} — the
33
+ * turn loop's eligibility predicate (replaces `NpcTrait.canAct`).
34
+ * @param t the entity's health trait
35
+ */
36
+ static canAct(t: HealthTrait): boolean;
37
+ /**
38
+ * Apply damage to health. Armor is the caller's concern (a `CombatantTrait` stat),
39
+ * so `amount` is already post-armor. On reaching zero health the entity dies with
40
+ * the given `cause`.
41
+ * @param t the entity's health trait
42
+ * @param amount post-armor damage; negatives are treated as zero
43
+ * @param cause cause recorded if this blow is lethal (default 'damage')
44
+ * @returns `true` iff the entity is now dead
45
+ */
46
+ static takeDamage(t: HealthTrait, amount: number, cause?: string): boolean;
47
+ /**
48
+ * Restore health, clamped to `maxHealth`. Healing back above the unconsciousness
49
+ * threshold *is* regaining consciousness (no separate wake step). The dead do not
50
+ * heal — resurrection is a deliberate separate act, not `heal`.
51
+ * @param t the entity's health trait
52
+ * @param amount healing; negatives are treated as zero
53
+ * @returns the actual amount healed
54
+ */
55
+ static heal(t: HealthTrait, amount: number): number;
56
+ /**
57
+ * Kill the entity: set the terminal `dead` flag and its `cause`, leaving `health`
58
+ * untouched. This is death's single writer — non-damage deaths (grue/fall/drown,
59
+ * ADR-224 `killPlayer`) call it directly; `takeDamage` calls it on a lethal blow.
60
+ * Death is distinct from `health === 0` (an entity can be dead at full health).
61
+ * @param t the entity's health trait
62
+ * @param cause the cause of death (e.g. 'grue', 'fall', 'combat')
63
+ */
64
+ static kill(t: HealthTrait, cause: string): void;
65
+ }
66
+ //# sourceMappingURL=healthBehavior.d.ts.map
@@ -0,0 +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,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"}
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ /**
3
+ * Behavior for the HEALTH layer (ADR-226).
4
+ *
5
+ * All derivation and mutation over {@link HealthTrait} data. Consumers call these
6
+ * static methods rather than reading the trait's fields through getters, so the
7
+ * model survives `loadJSON()` (the `npc-service` `canAct`-getter footgun this layer
8
+ * removes). Consciousness is purely derived from `health` — there is no stored
9
+ * knocked-out flag, no `knockOut`/`wakeUp`, and no recovery timer (ADR-226 §1 F1).
10
+ *
11
+ * Public interface: `isAlive` / `isConscious` / `canAct` (pure derivation) and
12
+ * `takeDamage` / `heal` / `kill` (mutation). All operate on a `HealthTrait` directly;
13
+ * callers first confirm the entity has one (an entity with no `HealthTrait` is alive
14
+ * and conscious by default — ADR-226 §3 opt-in rule — a check owned by the caller).
15
+ * Owner context: `@sharpee/world-model` — HEALTH layer (ADR-223 child A).
16
+ */
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.HealthBehavior = void 0;
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
+ // ---- Derivation (pure — no mutation) ----
24
+ /**
25
+ * Whether the entity is alive: not terminally dead and above zero health.
26
+ * @param t the entity's health trait
27
+ */
28
+ static isAlive(t) {
29
+ return !t.dead && t.health > 0;
30
+ }
31
+ /**
32
+ * Whether the entity is conscious: alive, not asleep, and above the
33
+ * unconsciousness threshold. Consciousness is derived from `health` alone.
34
+ * @param t the entity's health trait
35
+ */
36
+ static isConscious(t) {
37
+ return (HealthBehavior.isAlive(t) &&
38
+ !t.asleep &&
39
+ t.health > t.maxHealth * t.unconsciousThreshold);
40
+ }
41
+ /**
42
+ * Whether the entity can take a turn / act. Alias of {@link isConscious} — the
43
+ * turn loop's eligibility predicate (replaces `NpcTrait.canAct`).
44
+ * @param t the entity's health trait
45
+ */
46
+ static canAct(t) {
47
+ return HealthBehavior.isConscious(t);
48
+ }
49
+ // ---- Mutation (behaviors own mutations) ----
50
+ /**
51
+ * Apply damage to health. Armor is the caller's concern (a `CombatantTrait` stat),
52
+ * so `amount` is already post-armor. On reaching zero health the entity dies with
53
+ * the given `cause`.
54
+ * @param t the entity's health trait
55
+ * @param amount post-armor damage; negatives are treated as zero
56
+ * @param cause cause recorded if this blow is lethal (default 'damage')
57
+ * @returns `true` iff the entity is now dead
58
+ */
59
+ static takeDamage(t, amount, cause = 'damage') {
60
+ if (t.dead)
61
+ return true; // a corpse takes no further damage (idempotent)
62
+ t.health = Math.max(0, t.health - Math.max(0, amount));
63
+ if (t.health <= 0) {
64
+ HealthBehavior.kill(t, cause);
65
+ return true;
66
+ }
67
+ return false;
68
+ }
69
+ /**
70
+ * Restore health, clamped to `maxHealth`. Healing back above the unconsciousness
71
+ * threshold *is* regaining consciousness (no separate wake step). The dead do not
72
+ * heal — resurrection is a deliberate separate act, not `heal`.
73
+ * @param t the entity's health trait
74
+ * @param amount healing; negatives are treated as zero
75
+ * @returns the actual amount healed
76
+ */
77
+ static heal(t, amount) {
78
+ if (t.dead)
79
+ return 0;
80
+ const before = t.health;
81
+ t.health = Math.min(t.maxHealth, t.health + Math.max(0, amount));
82
+ return t.health - before;
83
+ }
84
+ /**
85
+ * Kill the entity: set the terminal `dead` flag and its `cause`, leaving `health`
86
+ * untouched. This is death's single writer — non-damage deaths (grue/fall/drown,
87
+ * ADR-224 `killPlayer`) call it directly; `takeDamage` calls it on a lethal blow.
88
+ * Death is distinct from `health === 0` (an entity can be dead at full health).
89
+ * @param t the entity's health trait
90
+ * @param cause the cause of death (e.g. 'grue', 'fall', 'combat')
91
+ */
92
+ static kill(t, cause) {
93
+ t.dead = true;
94
+ t.causeOfDeath = cause;
95
+ }
96
+ }
97
+ exports.HealthBehavior = HealthBehavior;
98
+ //# sourceMappingURL=healthBehavior.js.map
@@ -0,0 +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,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"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Health Trait (ADR-226 — the HEALTH layer of ADR-223's four-layer NPC model).
3
+ *
4
+ * The single creature life-state model: current/max health, a derived
5
+ * consciousness threshold, an `asleep` flag, and a first-class terminal
6
+ * dead-by-cause state. This is the one source of mortality/consciousness truth —
7
+ * `CombatantTrait` and `NpcTrait` no longer carry their own `isAlive`/`isConscious`.
8
+ *
9
+ * Data only — no methods. All derivation (alive/conscious/can-act) and mutation
10
+ * (takeDamage/heal/kill) live in {@link HealthBehavior}, because a getter on the
11
+ * trait does not survive `loadJSON()` deserialization (the `npc-service` `canAct`
12
+ * footgun this layer removes).
13
+ *
14
+ * Public interface: read life-state via `HealthBehavior.{isAlive,isConscious,canAct}`
15
+ * and mutate via `HealthBehavior.{takeDamage,heal,kill}`.
16
+ * Owner context: `@sharpee/world-model` — HEALTH layer (ADR-223 child A).
17
+ */
18
+ import { ITrait } from '../trait.js';
19
+ /**
20
+ * Constructor/serialization data for {@link HealthTrait}. Every field is optional;
21
+ * see the class constructor for defaults.
22
+ */
23
+ export interface IHealthData {
24
+ /** Current health. Defaults to `maxHealth`. */
25
+ health?: number;
26
+ /** Maximum health; `heal` clamps to this. Defaults to `health`, else 10. */
27
+ maxHealth?: number;
28
+ /** Terminal dead-by-cause flag (ADR-224). Defaults to `false`. */
29
+ dead?: boolean;
30
+ /** Cause recorded alongside `dead` (e.g. 'combat', 'grue', 'fall'). */
31
+ causeOfDeath?: string;
32
+ /** Full health but voluntarily not acting (a daemon/story concern). Defaults to `false`. */
33
+ asleep?: boolean;
34
+ /**
35
+ * Fraction of `maxHealth` at/below which the entity is unconscious.
36
+ * Defaults to `0.2` (ADR-072 20%-health parity).
37
+ */
38
+ unconsciousThreshold?: number;
39
+ }
40
+ /**
41
+ * The creature life-state trait. Data-only; see file header.
42
+ *
43
+ * Invariants (enforced by {@link HealthBehavior}, not by getters here):
44
+ * - `alive` ⇔ `!dead && health > 0`
45
+ * - `conscious` ⇔ `alive && !asleep && health > maxHealth * unconsciousThreshold`
46
+ * There is no stored knocked-out flag and no recovery timer — consciousness is
47
+ * purely derived from `health` (ADR-226 §1 F1).
48
+ */
49
+ export declare class HealthTrait implements ITrait, IHealthData {
50
+ static readonly type: "health";
51
+ readonly type: "health";
52
+ health: number;
53
+ maxHealth: number;
54
+ dead: boolean;
55
+ causeOfDeath?: string;
56
+ asleep: boolean;
57
+ unconsciousThreshold: number;
58
+ constructor(data?: IHealthData);
59
+ }
60
+ //# sourceMappingURL=healthTrait.d.ts.map
@@ -0,0 +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,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"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ /**
3
+ * Health Trait (ADR-226 — the HEALTH layer of ADR-223's four-layer NPC model).
4
+ *
5
+ * The single creature life-state model: current/max health, a derived
6
+ * consciousness threshold, an `asleep` flag, and a first-class terminal
7
+ * dead-by-cause state. This is the one source of mortality/consciousness truth —
8
+ * `CombatantTrait` and `NpcTrait` no longer carry their own `isAlive`/`isConscious`.
9
+ *
10
+ * Data only — no methods. All derivation (alive/conscious/can-act) and mutation
11
+ * (takeDamage/heal/kill) live in {@link HealthBehavior}, because a getter on the
12
+ * trait does not survive `loadJSON()` deserialization (the `npc-service` `canAct`
13
+ * footgun this layer removes).
14
+ *
15
+ * Public interface: read life-state via `HealthBehavior.{isAlive,isConscious,canAct}`
16
+ * and mutate via `HealthBehavior.{takeDamage,heal,kill}`.
17
+ * Owner context: `@sharpee/world-model` — HEALTH layer (ADR-223 child A).
18
+ */
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.HealthTrait = void 0;
21
+ /**
22
+ * The creature life-state trait. Data-only; see file header.
23
+ *
24
+ * Invariants (enforced by {@link HealthBehavior}, not by getters here):
25
+ * - `alive` ⇔ `!dead && health > 0`
26
+ * - `conscious` ⇔ `alive && !asleep && health > maxHealth * unconsciousThreshold`
27
+ * There is no stored knocked-out flag and no recovery timer — consciousness is
28
+ * purely derived from `health` (ADR-226 §1 F1).
29
+ */
30
+ class HealthTrait {
31
+ static type = 'health';
32
+ type = 'health';
33
+ health;
34
+ maxHealth;
35
+ dead;
36
+ causeOfDeath;
37
+ asleep;
38
+ unconsciousThreshold;
39
+ constructor(data = {}) {
40
+ this.maxHealth = data.maxHealth ?? data.health ?? 10;
41
+ this.health = data.health ?? this.maxHealth;
42
+ this.dead = data.dead ?? false;
43
+ this.causeOfDeath = data.causeOfDeath;
44
+ this.asleep = data.asleep ?? false;
45
+ this.unconsciousThreshold = data.unconsciousThreshold ?? 0.2;
46
+ }
47
+ }
48
+ exports.HealthTrait = HealthTrait;
49
+ //# sourceMappingURL=healthTrait.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"healthTrait.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee_v2/packages/world-model/src/traits/health/healthTrait.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AA+BH;;;;;;;;GAQG;AACH,MAAa,WAAW;IACtB,MAAM,CAAU,IAAI,GAAG,QAAiB,CAAC;IAChC,IAAI,GAAG,QAAiB,CAAC;IAElC,MAAM,CAAS;IACf,SAAS,CAAS;IAClB,IAAI,CAAU;IACd,YAAY,CAAU;IACtB,MAAM,CAAU;IAChB,oBAAoB,CAAS;IAE7B,YAAY,OAAoB,EAAE;QAChC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;QACrD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC;QAC5C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC;QAC/B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC;QACnC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,IAAI,GAAG,CAAC;IAC/D,CAAC;;AAlBH,kCAmBC"}
@@ -0,0 +1,3 @@
1
+ export { HealthTrait, IHealthData } from './healthTrait.js';
2
+ export { HealthBehavior } from './healthBehavior.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +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,kBAAkB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HealthBehavior = exports.HealthTrait = void 0;
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
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
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,0BAA0B,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAIpD;;;;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"}
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"}