@sharpee/world-model 0.9.66-beta → 0.9.67-beta

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 (589) hide show
  1. package/annotations/index.d.ts +2 -0
  2. package/annotations/index.d.ts.map +1 -0
  3. package/annotations/index.js +18 -0
  4. package/annotations/index.js.map +1 -0
  5. package/annotations/types.d.ts +35 -0
  6. package/annotations/types.d.ts.map +1 -0
  7. package/annotations/types.js +9 -0
  8. package/annotations/types.js.map +1 -0
  9. package/behaviors/attack.d.ts +52 -0
  10. package/behaviors/attack.d.ts.map +1 -0
  11. package/behaviors/attack.js +161 -0
  12. package/behaviors/attack.js.map +1 -0
  13. package/behaviors/behavior.d.ts +67 -0
  14. package/behaviors/behavior.d.ts.map +1 -0
  15. package/behaviors/behavior.js +80 -0
  16. package/behaviors/behavior.js.map +1 -0
  17. package/behaviors/index.d.ts +21 -0
  18. package/behaviors/index.d.ts.map +1 -0
  19. package/behaviors/index.js +39 -0
  20. package/behaviors/index.js.map +1 -0
  21. package/capabilities/action-interceptor.d.ts +169 -0
  22. package/capabilities/action-interceptor.d.ts.map +1 -0
  23. package/capabilities/action-interceptor.js +15 -0
  24. package/capabilities/action-interceptor.js.map +1 -0
  25. package/capabilities/capability-behavior.d.ts +112 -0
  26. package/capabilities/capability-behavior.d.ts.map +1 -0
  27. package/capabilities/capability-behavior.js +9 -0
  28. package/capabilities/capability-behavior.js.map +1 -0
  29. package/capabilities/capability-defaults.d.ts +67 -0
  30. package/capabilities/capability-defaults.d.ts.map +1 -0
  31. package/capabilities/capability-defaults.js +81 -0
  32. package/capabilities/capability-defaults.js.map +1 -0
  33. package/capabilities/capability-helpers.d.ts +76 -0
  34. package/capabilities/capability-helpers.d.ts.map +1 -0
  35. package/capabilities/capability-helpers.js +112 -0
  36. package/capabilities/capability-helpers.js.map +1 -0
  37. package/capabilities/capability-registry.d.ts +115 -0
  38. package/capabilities/capability-registry.d.ts.map +1 -0
  39. package/capabilities/capability-registry.js +136 -0
  40. package/capabilities/capability-registry.js.map +1 -0
  41. package/capabilities/entity-builder.d.ts +79 -0
  42. package/capabilities/entity-builder.d.ts.map +1 -0
  43. package/capabilities/entity-builder.js +116 -0
  44. package/capabilities/entity-builder.js.map +1 -0
  45. package/capabilities/index.d.ts +16 -0
  46. package/capabilities/index.d.ts.map +1 -0
  47. package/capabilities/index.js +56 -0
  48. package/capabilities/index.js.map +1 -0
  49. package/capabilities/interceptor-helpers.d.ts +74 -0
  50. package/capabilities/interceptor-helpers.d.ts.map +1 -0
  51. package/capabilities/interceptor-helpers.js +111 -0
  52. package/capabilities/interceptor-helpers.js.map +1 -0
  53. package/capabilities/interceptor-registry.d.ts +125 -0
  54. package/capabilities/interceptor-registry.d.ts.map +1 -0
  55. package/capabilities/interceptor-registry.js +176 -0
  56. package/capabilities/interceptor-registry.js.map +1 -0
  57. package/capabilities/types.d.ts +35 -0
  58. package/capabilities/types.d.ts.map +1 -0
  59. package/capabilities/types.js +16 -0
  60. package/capabilities/types.js.map +1 -0
  61. package/commands/command-types.d.ts +30 -0
  62. package/commands/command-types.d.ts.map +1 -0
  63. package/commands/command-types.js +6 -0
  64. package/commands/command-types.js.map +1 -0
  65. package/commands/index.d.ts +7 -0
  66. package/commands/index.d.ts.map +1 -0
  67. package/commands/index.js +23 -0
  68. package/commands/index.js.map +1 -0
  69. package/commands/parsed-command.d.ts +204 -0
  70. package/commands/parsed-command.d.ts.map +1 -0
  71. package/commands/parsed-command.js +25 -0
  72. package/commands/parsed-command.js.map +1 -0
  73. package/commands/validated-command.d.ts +52 -0
  74. package/commands/validated-command.d.ts.map +1 -0
  75. package/commands/validated-command.js +8 -0
  76. package/commands/validated-command.js.map +1 -0
  77. package/constants/action-failures.d.ts +54 -0
  78. package/constants/action-failures.d.ts.map +1 -0
  79. package/constants/action-failures.js +68 -0
  80. package/constants/action-failures.js.map +1 -0
  81. package/constants/directions.d.ts +32 -0
  82. package/constants/directions.d.ts.map +1 -0
  83. package/constants/directions.js +53 -0
  84. package/constants/directions.js.map +1 -0
  85. package/constants/if-events.d.ts +5 -0
  86. package/constants/if-events.d.ts.map +1 -0
  87. package/constants/if-events.js +10 -0
  88. package/constants/if-events.js.map +1 -0
  89. package/constants/index.d.ts +9 -0
  90. package/constants/index.d.ts.map +1 -0
  91. package/constants/index.js +25 -0
  92. package/constants/index.js.map +1 -0
  93. package/entities/entity-store.d.ts +66 -0
  94. package/entities/entity-store.d.ts.map +1 -0
  95. package/entities/entity-store.js +116 -0
  96. package/entities/entity-store.js.map +1 -0
  97. package/entities/entity-types.d.ts +40 -0
  98. package/entities/entity-types.d.ts.map +1 -0
  99. package/entities/entity-types.js +56 -0
  100. package/entities/entity-types.js.map +1 -0
  101. package/entities/if-entity.d.ts +314 -0
  102. package/entities/if-entity.d.ts.map +1 -0
  103. package/entities/if-entity.js +621 -0
  104. package/entities/if-entity.js.map +1 -0
  105. package/entities/index.d.ts +5 -0
  106. package/entities/index.d.ts.map +1 -0
  107. package/entities/index.js +13 -0
  108. package/entities/index.js.map +1 -0
  109. package/events/types.d.ts +45 -0
  110. package/events/types.d.ts.map +1 -0
  111. package/events/types.js +9 -0
  112. package/events/types.js.map +1 -0
  113. package/examples/event-handler-registration.d.ts +14 -0
  114. package/examples/event-handler-registration.d.ts.map +1 -0
  115. package/examples/event-handler-registration.js +158 -0
  116. package/examples/event-handler-registration.js.map +1 -0
  117. package/extensions/base-extension.d.ts +69 -0
  118. package/extensions/base-extension.d.ts.map +1 -0
  119. package/extensions/base-extension.js +83 -0
  120. package/extensions/base-extension.js.map +1 -0
  121. package/extensions/index.d.ts +11 -0
  122. package/extensions/index.d.ts.map +1 -0
  123. package/extensions/index.js +39 -0
  124. package/extensions/index.js.map +1 -0
  125. package/extensions/loader.d.ts +52 -0
  126. package/extensions/loader.d.ts.map +1 -0
  127. package/extensions/loader.js +177 -0
  128. package/extensions/loader.js.map +1 -0
  129. package/extensions/manager.d.ts +68 -0
  130. package/extensions/manager.d.ts.map +1 -0
  131. package/extensions/manager.js +164 -0
  132. package/extensions/manager.js.map +1 -0
  133. package/extensions/registry.d.ts +100 -0
  134. package/extensions/registry.d.ts.map +1 -0
  135. package/extensions/registry.js +193 -0
  136. package/extensions/registry.js.map +1 -0
  137. package/extensions/types.d.ts +226 -0
  138. package/extensions/types.d.ts.map +1 -0
  139. package/extensions/types.js +28 -0
  140. package/extensions/types.js.map +1 -0
  141. package/index.d.ts +41 -0
  142. package/index.d.ts.map +1 -0
  143. package/index.js +71 -0
  144. package/index.js.map +1 -0
  145. package/interfaces/command-executor.d.ts +17 -0
  146. package/interfaces/command-executor.d.ts.map +1 -0
  147. package/interfaces/command-executor.js +6 -0
  148. package/interfaces/command-executor.js.map +1 -0
  149. package/interfaces/command-processor.d.ts +17 -0
  150. package/interfaces/command-processor.d.ts.map +1 -0
  151. package/interfaces/command-processor.js +6 -0
  152. package/interfaces/command-processor.js.map +1 -0
  153. package/interfaces/command-validator.d.ts +17 -0
  154. package/interfaces/command-validator.d.ts.map +1 -0
  155. package/interfaces/command-validator.js +6 -0
  156. package/interfaces/command-validator.js.map +1 -0
  157. package/interfaces/index.d.ts +8 -0
  158. package/interfaces/index.d.ts.map +1 -0
  159. package/interfaces/index.js +24 -0
  160. package/interfaces/index.js.map +1 -0
  161. package/interfaces/language-provider.d.ts +86 -0
  162. package/interfaces/language-provider.d.ts.map +1 -0
  163. package/interfaces/language-provider.js +14 -0
  164. package/interfaces/language-provider.js.map +1 -0
  165. package/interfaces/parser.d.ts +16 -0
  166. package/interfaces/parser.d.ts.map +1 -0
  167. package/interfaces/parser.js +6 -0
  168. package/interfaces/parser.js.map +1 -0
  169. package/package.json +1 -16
  170. package/scope/index.d.ts +8 -0
  171. package/scope/index.d.ts.map +1 -0
  172. package/scope/index.js +24 -0
  173. package/scope/index.js.map +1 -0
  174. package/scope/scope-evaluator.d.ts +58 -0
  175. package/scope/scope-evaluator.d.ts.map +1 -0
  176. package/scope/scope-evaluator.js +207 -0
  177. package/scope/scope-evaluator.js.map +1 -0
  178. package/scope/scope-registry.d.ts +59 -0
  179. package/scope/scope-registry.d.ts.map +1 -0
  180. package/scope/scope-registry.js +182 -0
  181. package/scope/scope-registry.js.map +1 -0
  182. package/scope/scope-rule.d.ts +86 -0
  183. package/scope/scope-rule.d.ts.map +1 -0
  184. package/scope/scope-rule.js +7 -0
  185. package/scope/scope-rule.js.map +1 -0
  186. package/services/ScopeService.d.ts +8 -0
  187. package/services/ScopeService.d.ts.map +1 -0
  188. package/services/ScopeService.js +19 -0
  189. package/services/ScopeService.js.map +1 -0
  190. package/services/index.d.ts +2 -0
  191. package/services/index.d.ts.map +1 -0
  192. package/services/index.js +6 -0
  193. package/services/index.js.map +1 -0
  194. package/test-structure.d.ts +3 -0
  195. package/test-structure.d.ts.map +1 -0
  196. package/test-structure.js +26 -0
  197. package/test-structure.js.map +1 -0
  198. package/traits/actor/actorBehavior.d.ts +121 -0
  199. package/traits/actor/actorBehavior.d.ts.map +1 -0
  200. package/traits/actor/actorBehavior.js +288 -0
  201. package/traits/actor/actorBehavior.js.map +1 -0
  202. package/traits/actor/actorTrait.d.ts +158 -0
  203. package/traits/actor/actorTrait.d.ts.map +1 -0
  204. package/traits/actor/actorTrait.js +152 -0
  205. package/traits/actor/actorTrait.js.map +1 -0
  206. package/traits/actor/index.d.ts +3 -0
  207. package/traits/actor/index.d.ts.map +1 -0
  208. package/traits/actor/index.js +11 -0
  209. package/traits/actor/index.js.map +1 -0
  210. package/traits/all-traits.d.ts +95 -0
  211. package/traits/all-traits.d.ts.map +1 -0
  212. package/traits/all-traits.js +178 -0
  213. package/traits/all-traits.js.map +1 -0
  214. package/traits/attached/attachedTrait.d.ts +61 -0
  215. package/traits/attached/attachedTrait.d.ts.map +1 -0
  216. package/traits/attached/attachedTrait.js +36 -0
  217. package/traits/attached/attachedTrait.js.map +1 -0
  218. package/traits/attached/index.d.ts +2 -0
  219. package/traits/attached/index.d.ts.map +1 -0
  220. package/traits/attached/index.js +18 -0
  221. package/traits/attached/index.js.map +1 -0
  222. package/traits/breakable/breakableBehavior.d.ts +43 -0
  223. package/traits/breakable/breakableBehavior.d.ts.map +1 -0
  224. package/traits/breakable/breakableBehavior.js +70 -0
  225. package/traits/breakable/breakableBehavior.js.map +1 -0
  226. package/traits/breakable/breakableTrait.d.ts +22 -0
  227. package/traits/breakable/breakableTrait.d.ts.map +1 -0
  228. package/traits/breakable/breakableTrait.js +25 -0
  229. package/traits/breakable/breakableTrait.js.map +1 -0
  230. package/traits/breakable/index.d.ts +3 -0
  231. package/traits/breakable/index.d.ts.map +1 -0
  232. package/traits/breakable/index.js +8 -0
  233. package/traits/breakable/index.js.map +1 -0
  234. package/traits/button/buttonTrait.d.ts +53 -0
  235. package/traits/button/buttonTrait.d.ts.map +1 -0
  236. package/traits/button/buttonTrait.js +36 -0
  237. package/traits/button/buttonTrait.js.map +1 -0
  238. package/traits/button/index.d.ts +2 -0
  239. package/traits/button/index.d.ts.map +1 -0
  240. package/traits/button/index.js +18 -0
  241. package/traits/button/index.js.map +1 -0
  242. package/traits/climbable/climbableBehavior.d.ts +37 -0
  243. package/traits/climbable/climbableBehavior.d.ts.map +1 -0
  244. package/traits/climbable/climbableBehavior.js +70 -0
  245. package/traits/climbable/climbableBehavior.js.map +1 -0
  246. package/traits/climbable/climbableTrait.d.ts +31 -0
  247. package/traits/climbable/climbableTrait.d.ts.map +1 -0
  248. package/traits/climbable/climbableTrait.js +47 -0
  249. package/traits/climbable/climbableTrait.js.map +1 -0
  250. package/traits/climbable/index.d.ts +6 -0
  251. package/traits/climbable/index.d.ts.map +1 -0
  252. package/traits/climbable/index.js +22 -0
  253. package/traits/climbable/index.js.map +1 -0
  254. package/traits/clothing/clothingTrait.d.ts +58 -0
  255. package/traits/clothing/clothingTrait.d.ts.map +1 -0
  256. package/traits/clothing/clothingTrait.js +78 -0
  257. package/traits/clothing/clothingTrait.js.map +1 -0
  258. package/traits/clothing/index.d.ts +2 -0
  259. package/traits/clothing/index.d.ts.map +1 -0
  260. package/traits/clothing/index.js +19 -0
  261. package/traits/clothing/index.js.map +1 -0
  262. package/traits/combatant/combatantBehavior.d.ts +70 -0
  263. package/traits/combatant/combatantBehavior.d.ts.map +1 -0
  264. package/traits/combatant/combatantBehavior.js +155 -0
  265. package/traits/combatant/combatantBehavior.js.map +1 -0
  266. package/traits/combatant/combatantTrait.d.ts +98 -0
  267. package/traits/combatant/combatantTrait.d.ts.map +1 -0
  268. package/traits/combatant/combatantTrait.js +122 -0
  269. package/traits/combatant/combatantTrait.js.map +1 -0
  270. package/traits/combatant/index.d.ts +3 -0
  271. package/traits/combatant/index.d.ts.map +1 -0
  272. package/traits/combatant/index.js +8 -0
  273. package/traits/combatant/index.js.map +1 -0
  274. package/traits/container/container-utils.d.ts +39 -0
  275. package/traits/container/container-utils.d.ts.map +1 -0
  276. package/traits/container/container-utils.js +72 -0
  277. package/traits/container/container-utils.js.map +1 -0
  278. package/traits/container/containerBehavior.d.ts +94 -0
  279. package/traits/container/containerBehavior.d.ts.map +1 -0
  280. package/traits/container/containerBehavior.js +256 -0
  281. package/traits/container/containerBehavior.js.map +1 -0
  282. package/traits/container/containerTrait.d.ts +30 -0
  283. package/traits/container/containerTrait.d.ts.map +1 -0
  284. package/traits/container/containerTrait.js +45 -0
  285. package/traits/container/containerTrait.js.map +1 -0
  286. package/traits/container/index.d.ts +4 -0
  287. package/traits/container/index.d.ts.map +1 -0
  288. package/traits/container/index.js +14 -0
  289. package/traits/container/index.js.map +1 -0
  290. package/traits/destructible/destructibleBehavior.d.ts +57 -0
  291. package/traits/destructible/destructibleBehavior.d.ts.map +1 -0
  292. package/traits/destructible/destructibleBehavior.js +145 -0
  293. package/traits/destructible/destructibleBehavior.js.map +1 -0
  294. package/traits/destructible/destructibleTrait.d.ts +49 -0
  295. package/traits/destructible/destructibleTrait.d.ts.map +1 -0
  296. package/traits/destructible/destructibleTrait.js +43 -0
  297. package/traits/destructible/destructibleTrait.js.map +1 -0
  298. package/traits/destructible/index.d.ts +3 -0
  299. package/traits/destructible/index.d.ts.map +1 -0
  300. package/traits/destructible/index.js +8 -0
  301. package/traits/destructible/index.js.map +1 -0
  302. package/traits/door/doorBehavior.d.ts +42 -0
  303. package/traits/door/doorBehavior.d.ts.map +1 -0
  304. package/traits/door/doorBehavior.js +76 -0
  305. package/traits/door/doorBehavior.js.map +1 -0
  306. package/traits/door/doorTrait.d.ts +19 -0
  307. package/traits/door/doorTrait.d.ts.map +1 -0
  308. package/traits/door/doorTrait.js +33 -0
  309. package/traits/door/doorTrait.js.map +1 -0
  310. package/traits/door/index.d.ts +3 -0
  311. package/traits/door/index.d.ts.map +1 -0
  312. package/traits/door/index.js +9 -0
  313. package/traits/door/index.js.map +1 -0
  314. package/traits/edible/edibleBehavior.d.ts +63 -0
  315. package/traits/edible/edibleBehavior.d.ts.map +1 -0
  316. package/traits/edible/edibleBehavior.js +157 -0
  317. package/traits/edible/edibleBehavior.js.map +1 -0
  318. package/traits/edible/edibleTrait.d.ts +57 -0
  319. package/traits/edible/edibleTrait.d.ts.map +1 -0
  320. package/traits/edible/edibleTrait.js +51 -0
  321. package/traits/edible/edibleTrait.js.map +1 -0
  322. package/traits/edible/index.d.ts +3 -0
  323. package/traits/edible/index.d.ts.map +1 -0
  324. package/traits/edible/index.js +20 -0
  325. package/traits/edible/index.js.map +1 -0
  326. package/traits/enterable/enterableTrait.d.ts +33 -0
  327. package/traits/enterable/enterableTrait.d.ts.map +1 -0
  328. package/traits/enterable/enterableTrait.js +38 -0
  329. package/traits/enterable/enterableTrait.js.map +1 -0
  330. package/traits/enterable/index.d.ts +5 -0
  331. package/traits/enterable/index.d.ts.map +1 -0
  332. package/traits/enterable/index.js +21 -0
  333. package/traits/enterable/index.js.map +1 -0
  334. package/traits/equipped/equippedTrait.d.ts +46 -0
  335. package/traits/equipped/equippedTrait.d.ts.map +1 -0
  336. package/traits/equipped/equippedTrait.js +34 -0
  337. package/traits/equipped/equippedTrait.js.map +1 -0
  338. package/traits/equipped/index.d.ts +2 -0
  339. package/traits/equipped/index.d.ts.map +1 -0
  340. package/traits/equipped/index.js +6 -0
  341. package/traits/equipped/index.js.map +1 -0
  342. package/traits/exit/exitBehavior.d.ts +51 -0
  343. package/traits/exit/exitBehavior.d.ts.map +1 -0
  344. package/traits/exit/exitBehavior.js +231 -0
  345. package/traits/exit/exitBehavior.js.map +1 -0
  346. package/traits/exit/exitTrait.d.ts +41 -0
  347. package/traits/exit/exitTrait.d.ts.map +1 -0
  348. package/traits/exit/exitTrait.js +75 -0
  349. package/traits/exit/exitTrait.js.map +1 -0
  350. package/traits/exit/index.d.ts +3 -0
  351. package/traits/exit/index.d.ts.map +1 -0
  352. package/traits/exit/index.js +9 -0
  353. package/traits/exit/index.js.map +1 -0
  354. package/traits/identity/identityBehavior.d.ts +64 -0
  355. package/traits/identity/identityBehavior.d.ts.map +1 -0
  356. package/traits/identity/identityBehavior.js +154 -0
  357. package/traits/identity/identityBehavior.js.map +1 -0
  358. package/traits/identity/identityTrait.d.ts +70 -0
  359. package/traits/identity/identityTrait.d.ts.map +1 -0
  360. package/traits/identity/identityTrait.js +79 -0
  361. package/traits/identity/identityTrait.js.map +1 -0
  362. package/traits/identity/index.d.ts +3 -0
  363. package/traits/identity/index.d.ts.map +1 -0
  364. package/traits/identity/index.js +20 -0
  365. package/traits/identity/index.js.map +1 -0
  366. package/traits/implementations.d.ts +52 -0
  367. package/traits/implementations.d.ts.map +1 -0
  368. package/traits/implementations.js +150 -0
  369. package/traits/implementations.js.map +1 -0
  370. package/traits/index.d.ts +37 -0
  371. package/traits/index.d.ts.map +1 -0
  372. package/traits/index.js +64 -0
  373. package/traits/index.js.map +1 -0
  374. package/traits/light-source/index.d.ts +3 -0
  375. package/traits/light-source/index.d.ts.map +1 -0
  376. package/traits/light-source/index.js +9 -0
  377. package/traits/light-source/index.js.map +1 -0
  378. package/traits/light-source/lightSourceBehavior.d.ts +57 -0
  379. package/traits/light-source/lightSourceBehavior.d.ts.map +1 -0
  380. package/traits/light-source/lightSourceBehavior.js +135 -0
  381. package/traits/light-source/lightSourceBehavior.js.map +1 -0
  382. package/traits/light-source/lightSourceTrait.d.ts +28 -0
  383. package/traits/light-source/lightSourceTrait.d.ts.map +1 -0
  384. package/traits/light-source/lightSourceTrait.js +37 -0
  385. package/traits/light-source/lightSourceTrait.js.map +1 -0
  386. package/traits/lockable/index.d.ts +3 -0
  387. package/traits/lockable/index.d.ts.map +1 -0
  388. package/traits/lockable/index.js +20 -0
  389. package/traits/lockable/index.js.map +1 -0
  390. package/traits/lockable/lockableBehavior.d.ts +88 -0
  391. package/traits/lockable/lockableBehavior.d.ts.map +1 -0
  392. package/traits/lockable/lockableBehavior.js +196 -0
  393. package/traits/lockable/lockableBehavior.js.map +1 -0
  394. package/traits/lockable/lockableTrait.d.ts +59 -0
  395. package/traits/lockable/lockableTrait.d.ts.map +1 -0
  396. package/traits/lockable/lockableTrait.js +50 -0
  397. package/traits/lockable/lockableTrait.js.map +1 -0
  398. package/traits/moveable-scenery/index.d.ts +2 -0
  399. package/traits/moveable-scenery/index.d.ts.map +1 -0
  400. package/traits/moveable-scenery/index.js +18 -0
  401. package/traits/moveable-scenery/index.js.map +1 -0
  402. package/traits/moveable-scenery/moveableSceneryTrait.d.ts +69 -0
  403. package/traits/moveable-scenery/moveableSceneryTrait.d.ts.map +1 -0
  404. package/traits/moveable-scenery/moveableSceneryTrait.js +43 -0
  405. package/traits/moveable-scenery/moveableSceneryTrait.js.map +1 -0
  406. package/traits/npc/index.d.ts +5 -0
  407. package/traits/npc/index.d.ts.map +1 -0
  408. package/traits/npc/index.js +9 -0
  409. package/traits/npc/index.js.map +1 -0
  410. package/traits/npc/npcTrait.d.ts +128 -0
  411. package/traits/npc/npcTrait.d.ts.map +1 -0
  412. package/traits/npc/npcTrait.js +180 -0
  413. package/traits/npc/npcTrait.js.map +1 -0
  414. package/traits/openable/index.d.ts +3 -0
  415. package/traits/openable/index.d.ts.map +1 -0
  416. package/traits/openable/index.js +20 -0
  417. package/traits/openable/index.js.map +1 -0
  418. package/traits/openable/openableBehavior.d.ts +64 -0
  419. package/traits/openable/openableBehavior.d.ts.map +1 -0
  420. package/traits/openable/openableBehavior.js +109 -0
  421. package/traits/openable/openableBehavior.js.map +1 -0
  422. package/traits/openable/openableTrait.d.ts +46 -0
  423. package/traits/openable/openableTrait.d.ts.map +1 -0
  424. package/traits/openable/openableTrait.js +42 -0
  425. package/traits/openable/openableTrait.js.map +1 -0
  426. package/traits/pullable/index.d.ts +2 -0
  427. package/traits/pullable/index.d.ts.map +1 -0
  428. package/traits/pullable/index.js +18 -0
  429. package/traits/pullable/index.js.map +1 -0
  430. package/traits/pullable/pullableTrait.d.ts +81 -0
  431. package/traits/pullable/pullableTrait.d.ts.map +1 -0
  432. package/traits/pullable/pullableTrait.js +44 -0
  433. package/traits/pullable/pullableTrait.js.map +1 -0
  434. package/traits/pushable/index.d.ts +2 -0
  435. package/traits/pushable/index.d.ts.map +1 -0
  436. package/traits/pushable/index.js +18 -0
  437. package/traits/pushable/index.js.map +1 -0
  438. package/traits/pushable/pushableTrait.d.ts +81 -0
  439. package/traits/pushable/pushableTrait.d.ts.map +1 -0
  440. package/traits/pushable/pushableTrait.js +44 -0
  441. package/traits/pushable/pushableTrait.js.map +1 -0
  442. package/traits/readable/index.d.ts +3 -0
  443. package/traits/readable/index.d.ts.map +1 -0
  444. package/traits/readable/index.js +9 -0
  445. package/traits/readable/index.js.map +1 -0
  446. package/traits/readable/readableBehavior.d.ts +42 -0
  447. package/traits/readable/readableBehavior.d.ts.map +1 -0
  448. package/traits/readable/readableBehavior.js +174 -0
  449. package/traits/readable/readableBehavior.js.map +1 -0
  450. package/traits/readable/readableTrait.d.ts +37 -0
  451. package/traits/readable/readableTrait.d.ts.map +1 -0
  452. package/traits/readable/readableTrait.js +51 -0
  453. package/traits/readable/readableTrait.js.map +1 -0
  454. package/traits/register-all.d.ts +10 -0
  455. package/traits/register-all.d.ts.map +1 -0
  456. package/traits/register-all.js +19 -0
  457. package/traits/register-all.js.map +1 -0
  458. package/traits/room/index.d.ts +9 -0
  459. package/traits/room/index.d.ts.map +1 -0
  460. package/traits/room/index.js +14 -0
  461. package/traits/room/index.js.map +1 -0
  462. package/traits/room/roomBehavior.d.ts +87 -0
  463. package/traits/room/roomBehavior.d.ts.map +1 -0
  464. package/traits/room/roomBehavior.js +232 -0
  465. package/traits/room/roomBehavior.js.map +1 -0
  466. package/traits/room/roomTrait.d.ts +101 -0
  467. package/traits/room/roomTrait.d.ts.map +1 -0
  468. package/traits/room/roomTrait.js +59 -0
  469. package/traits/room/roomTrait.js.map +1 -0
  470. package/traits/scenery/index.d.ts +3 -0
  471. package/traits/scenery/index.d.ts.map +1 -0
  472. package/traits/scenery/index.js +9 -0
  473. package/traits/scenery/index.js.map +1 -0
  474. package/traits/scenery/sceneryBehavior.d.ts +21 -0
  475. package/traits/scenery/sceneryBehavior.d.ts.map +1 -0
  476. package/traits/scenery/sceneryBehavior.js +42 -0
  477. package/traits/scenery/sceneryBehavior.js.map +1 -0
  478. package/traits/scenery/sceneryTrait.d.ts +30 -0
  479. package/traits/scenery/sceneryTrait.d.ts.map +1 -0
  480. package/traits/scenery/sceneryTrait.js +39 -0
  481. package/traits/scenery/sceneryTrait.js.map +1 -0
  482. package/traits/story-info/index.d.ts +2 -0
  483. package/traits/story-info/index.d.ts.map +1 -0
  484. package/traits/story-info/index.js +6 -0
  485. package/traits/story-info/index.js.map +1 -0
  486. package/traits/story-info/storyInfoTrait.d.ts +22 -0
  487. package/traits/story-info/storyInfoTrait.d.ts.map +1 -0
  488. package/traits/story-info/storyInfoTrait.js +30 -0
  489. package/traits/story-info/storyInfoTrait.js.map +1 -0
  490. package/traits/supporter/index.d.ts +3 -0
  491. package/traits/supporter/index.d.ts.map +1 -0
  492. package/traits/supporter/index.js +9 -0
  493. package/traits/supporter/index.js.map +1 -0
  494. package/traits/supporter/supporterBehavior.d.ts +83 -0
  495. package/traits/supporter/supporterBehavior.d.ts.map +1 -0
  496. package/traits/supporter/supporterBehavior.js +210 -0
  497. package/traits/supporter/supporterBehavior.js.map +1 -0
  498. package/traits/supporter/supporterTrait.d.ts +26 -0
  499. package/traits/supporter/supporterTrait.d.ts.map +1 -0
  500. package/traits/supporter/supporterTrait.js +30 -0
  501. package/traits/supporter/supporterTrait.js.map +1 -0
  502. package/traits/switchable/index.d.ts +3 -0
  503. package/traits/switchable/index.d.ts.map +1 -0
  504. package/traits/switchable/index.js +20 -0
  505. package/traits/switchable/index.js.map +1 -0
  506. package/traits/switchable/switchableBehavior.d.ts +73 -0
  507. package/traits/switchable/switchableBehavior.d.ts.map +1 -0
  508. package/traits/switchable/switchableBehavior.js +191 -0
  509. package/traits/switchable/switchableBehavior.js.map +1 -0
  510. package/traits/switchable/switchableTrait.d.ts +61 -0
  511. package/traits/switchable/switchableTrait.d.ts.map +1 -0
  512. package/traits/switchable/switchableTrait.js +52 -0
  513. package/traits/switchable/switchableTrait.js.map +1 -0
  514. package/traits/trait-types.d.ts +82 -0
  515. package/traits/trait-types.d.ts.map +1 -0
  516. package/traits/trait-types.js +150 -0
  517. package/traits/trait-types.js.map +1 -0
  518. package/traits/trait.d.ts +44 -0
  519. package/traits/trait.d.ts.map +1 -0
  520. package/traits/trait.js +42 -0
  521. package/traits/trait.js.map +1 -0
  522. package/traits/vehicle/index.d.ts +6 -0
  523. package/traits/vehicle/index.d.ts.map +1 -0
  524. package/traits/vehicle/index.js +22 -0
  525. package/traits/vehicle/index.js.map +1 -0
  526. package/traits/vehicle/vehicleBehavior.d.ts +62 -0
  527. package/traits/vehicle/vehicleBehavior.d.ts.map +1 -0
  528. package/traits/vehicle/vehicleBehavior.js +145 -0
  529. package/traits/vehicle/vehicleBehavior.js.map +1 -0
  530. package/traits/vehicle/vehicleTrait.d.ts +77 -0
  531. package/traits/vehicle/vehicleTrait.d.ts.map +1 -0
  532. package/traits/vehicle/vehicleTrait.js +92 -0
  533. package/traits/vehicle/vehicleTrait.js.map +1 -0
  534. package/traits/weapon/index.d.ts +3 -0
  535. package/traits/weapon/index.d.ts.map +1 -0
  536. package/traits/weapon/index.js +8 -0
  537. package/traits/weapon/index.js.map +1 -0
  538. package/traits/weapon/weaponBehavior.d.ts +47 -0
  539. package/traits/weapon/weaponBehavior.d.ts.map +1 -0
  540. package/traits/weapon/weaponBehavior.js +106 -0
  541. package/traits/weapon/weaponBehavior.js.map +1 -0
  542. package/traits/weapon/weaponTrait.d.ts +67 -0
  543. package/traits/weapon/weaponTrait.d.ts.map +1 -0
  544. package/traits/weapon/weaponTrait.js +60 -0
  545. package/traits/weapon/weaponTrait.js.map +1 -0
  546. package/traits/wearable/index.d.ts +3 -0
  547. package/traits/wearable/index.d.ts.map +1 -0
  548. package/traits/wearable/index.js +20 -0
  549. package/traits/wearable/index.js.map +1 -0
  550. package/traits/wearable/wearableBehavior.d.ts +64 -0
  551. package/traits/wearable/wearableBehavior.d.ts.map +1 -0
  552. package/traits/wearable/wearableBehavior.js +142 -0
  553. package/traits/wearable/wearableBehavior.js.map +1 -0
  554. package/traits/wearable/wearableTrait.d.ts +54 -0
  555. package/traits/wearable/wearableTrait.d.ts.map +1 -0
  556. package/traits/wearable/wearableTrait.js +53 -0
  557. package/traits/wearable/wearableTrait.js.map +1 -0
  558. package/utils/event-utils.d.ts +30 -0
  559. package/utils/event-utils.d.ts.map +1 -0
  560. package/utils/event-utils.js +33 -0
  561. package/utils/event-utils.js.map +1 -0
  562. package/world/AuthorModel.d.ts +151 -0
  563. package/world/AuthorModel.d.ts.map +1 -0
  564. package/world/AuthorModel.js +416 -0
  565. package/world/AuthorModel.js.map +1 -0
  566. package/world/SharedDataStore.d.ts +24 -0
  567. package/world/SharedDataStore.d.ts.map +1 -0
  568. package/world/SharedDataStore.js +50 -0
  569. package/world/SharedDataStore.js.map +1 -0
  570. package/world/SpatialIndex.d.ts +16 -0
  571. package/world/SpatialIndex.d.ts.map +1 -0
  572. package/world/SpatialIndex.js +117 -0
  573. package/world/SpatialIndex.js.map +1 -0
  574. package/world/VisibilityBehavior.d.ts +83 -0
  575. package/world/VisibilityBehavior.d.ts.map +1 -0
  576. package/world/VisibilityBehavior.js +484 -0
  577. package/world/VisibilityBehavior.js.map +1 -0
  578. package/world/WorldModel.d.ts +301 -0
  579. package/world/WorldModel.d.ts.map +1 -0
  580. package/world/WorldModel.js +1085 -0
  581. package/world/WorldModel.js.map +1 -0
  582. package/world/capabilities.d.ts +36 -0
  583. package/world/capabilities.d.ts.map +1 -0
  584. package/world/capabilities.js +18 -0
  585. package/world/capabilities.js.map +1 -0
  586. package/world/index.d.ts +7 -0
  587. package/world/index.d.ts.map +1 -0
  588. package/world/index.js +21 -0
  589. package/world/index.js.map +1 -0
@@ -0,0 +1,95 @@
1
+ /**
2
+ * All trait classes in one convenient import
3
+ *
4
+ * Usage:
5
+ * import { Traits } from "../src/index";
6
+ *
7
+ * const openable = entity.get(TraitType.OPENABLE) as Traits.OpenableTrait;
8
+ */
9
+ import { ActorTrait } from './actor/actorTrait';
10
+ import { AttachedTrait } from './attached/attachedTrait';
11
+ import { ButtonTrait } from './button/buttonTrait';
12
+ import { ClothingTrait } from './clothing/clothingTrait';
13
+ import { ContainerTrait } from './container/containerTrait';
14
+ import { DoorTrait } from './door/doorTrait';
15
+ import { ClimbableTrait } from './climbable/climbableTrait';
16
+ import { EdibleTrait } from './edible/edibleTrait';
17
+ import { ExitTrait } from './exit/exitTrait';
18
+ import { IdentityTrait } from './identity/identityTrait';
19
+ import { LightSourceTrait } from './light-source/lightSourceTrait';
20
+ import { LockableTrait } from './lockable/lockableTrait';
21
+ import { MoveableSceneryTrait } from './moveable-scenery/moveableSceneryTrait';
22
+ import { OpenableTrait } from './openable/openableTrait';
23
+ import { PullableTrait } from './pullable/pullableTrait';
24
+ import { PushableTrait } from './pushable/pushableTrait';
25
+ import { ReadableTrait } from './readable/readableTrait';
26
+ import { RoomTrait } from './room/roomTrait';
27
+ import { SceneryTrait } from './scenery/sceneryTrait';
28
+ import { SupporterTrait } from './supporter/supporterTrait';
29
+ import { SwitchableTrait } from './switchable/switchableTrait';
30
+ import { WearableTrait } from './wearable/wearableTrait';
31
+ import { WeaponTrait } from './weapon/weaponTrait';
32
+ import { BreakableTrait } from './breakable/breakableTrait';
33
+ import { DestructibleTrait } from './destructible/destructibleTrait';
34
+ import { CombatantTrait } from './combatant/combatantTrait';
35
+ import { EquippedTrait } from './equipped/equippedTrait';
36
+ import { EnterableTrait } from './enterable/enterableTrait';
37
+ export declare const Traits: {
38
+ readonly ActorTrait: typeof ActorTrait;
39
+ readonly AttachedTrait: typeof AttachedTrait;
40
+ readonly ButtonTrait: typeof ButtonTrait;
41
+ readonly ClimbableTrait: typeof ClimbableTrait;
42
+ readonly ClothingTrait: typeof ClothingTrait;
43
+ readonly ContainerTrait: typeof ContainerTrait;
44
+ readonly DoorTrait: typeof DoorTrait;
45
+ readonly EdibleTrait: typeof EdibleTrait;
46
+ readonly ExitTrait: typeof ExitTrait;
47
+ readonly IdentityTrait: typeof IdentityTrait;
48
+ readonly LightSourceTrait: typeof LightSourceTrait;
49
+ readonly LockableTrait: typeof LockableTrait;
50
+ readonly MoveableSceneryTrait: typeof MoveableSceneryTrait;
51
+ readonly OpenableTrait: typeof OpenableTrait;
52
+ readonly PullableTrait: typeof PullableTrait;
53
+ readonly PushableTrait: typeof PushableTrait;
54
+ readonly ReadableTrait: typeof ReadableTrait;
55
+ readonly RoomTrait: typeof RoomTrait;
56
+ readonly SceneryTrait: typeof SceneryTrait;
57
+ readonly SupporterTrait: typeof SupporterTrait;
58
+ readonly SwitchableTrait: typeof SwitchableTrait;
59
+ readonly WearableTrait: typeof WearableTrait;
60
+ readonly WeaponTrait: typeof WeaponTrait;
61
+ readonly BreakableTrait: typeof BreakableTrait;
62
+ readonly DestructibleTrait: typeof DestructibleTrait;
63
+ readonly CombatantTrait: typeof CombatantTrait;
64
+ readonly EquippedTrait: typeof EquippedTrait;
65
+ readonly EnterableTrait: typeof EnterableTrait;
66
+ };
67
+ export type { ActorTrait, AttachedTrait, ButtonTrait, ClimbableTrait, ClothingTrait, ContainerTrait, DoorTrait, EdibleTrait, ExitTrait, IdentityTrait, LightSourceTrait, LockableTrait, MoveableSceneryTrait, OpenableTrait, PullableTrait, PushableTrait, ReadableTrait, RoomTrait, SceneryTrait, SupporterTrait, SwitchableTrait, WearableTrait, WeaponTrait, BreakableTrait, DestructibleTrait, CombatantTrait, EquippedTrait, EnterableTrait, };
68
+ export type AnyTrait = ActorTrait | AttachedTrait | ButtonTrait | ClimbableTrait | ClothingTrait | ContainerTrait | DoorTrait | EdibleTrait | ExitTrait | IdentityTrait | LightSourceTrait | LockableTrait | MoveableSceneryTrait | OpenableTrait | PullableTrait | PushableTrait | ReadableTrait | RoomTrait | SceneryTrait | SupporterTrait | SwitchableTrait | WearableTrait | WeaponTrait | BreakableTrait | DestructibleTrait | CombatantTrait | EquippedTrait | EnterableTrait;
69
+ export declare function isActorTrait(trait: any): trait is ActorTrait;
70
+ export declare function isContainerTrait(trait: any): trait is ContainerTrait;
71
+ export declare function isDoorTrait(trait: any): trait is DoorTrait;
72
+ export declare function isEdibleTrait(trait: any): trait is EdibleTrait;
73
+ export declare function isExitTrait(trait: any): trait is ExitTrait;
74
+ export declare function isIdentityTrait(trait: any): trait is IdentityTrait;
75
+ export declare function isLightSourceTrait(trait: any): trait is LightSourceTrait;
76
+ export declare function isLockableTrait(trait: any): trait is LockableTrait;
77
+ export declare function isOpenableTrait(trait: any): trait is OpenableTrait;
78
+ export declare function isReadableTrait(trait: any): trait is ReadableTrait;
79
+ export declare function isRoomTrait(trait: any): trait is RoomTrait;
80
+ export declare function isSceneryTrait(trait: any): trait is SceneryTrait;
81
+ export declare function isSupporterTrait(trait: any): trait is SupporterTrait;
82
+ export declare function isSwitchableTrait(trait: any): trait is SwitchableTrait;
83
+ export declare function isWearableTrait(trait: any): trait is WearableTrait;
84
+ export declare function isClothingTrait(trait: any): trait is ClothingTrait;
85
+ export declare function isAttachedTrait(trait: any): trait is AttachedTrait;
86
+ export declare function isPullableTrait(trait: any): trait is PullableTrait;
87
+ export declare function isPushableTrait(trait: any): trait is PushableTrait;
88
+ export declare function isButtonTrait(trait: any): trait is ButtonTrait;
89
+ export declare function isMoveableSceneryTrait(trait: any): trait is MoveableSceneryTrait;
90
+ export declare function isWeaponTrait(trait: any): trait is WeaponTrait;
91
+ export declare function isBreakableTrait(trait: any): trait is BreakableTrait;
92
+ export declare function isDestructibleTrait(trait: any): trait is DestructibleTrait;
93
+ export declare function isCombatantTrait(trait: any): trait is CombatantTrait;
94
+ export declare function isEquippedTrait(trait: any): trait is EquippedTrait;
95
+ //# sourceMappingURL=all-traits.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"all-traits.d.ts","sourceRoot":"","sources":["../../../../../../mnt/c/repotemp/sharpee/packages/world-model/src/traits/all-traits.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,178 @@
1
+ "use strict";
2
+ /**
3
+ * All trait classes in one convenient import
4
+ *
5
+ * Usage:
6
+ * import { Traits } from "../src/index.js";
7
+ *
8
+ * const openable = entity.get(TraitType.OPENABLE) as Traits.OpenableTrait;
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.Traits = void 0;
12
+ exports.isActorTrait = isActorTrait;
13
+ exports.isContainerTrait = isContainerTrait;
14
+ exports.isDoorTrait = isDoorTrait;
15
+ exports.isEdibleTrait = isEdibleTrait;
16
+ exports.isExitTrait = isExitTrait;
17
+ exports.isIdentityTrait = isIdentityTrait;
18
+ exports.isLightSourceTrait = isLightSourceTrait;
19
+ exports.isLockableTrait = isLockableTrait;
20
+ exports.isOpenableTrait = isOpenableTrait;
21
+ exports.isReadableTrait = isReadableTrait;
22
+ exports.isRoomTrait = isRoomTrait;
23
+ exports.isSceneryTrait = isSceneryTrait;
24
+ exports.isSupporterTrait = isSupporterTrait;
25
+ exports.isSwitchableTrait = isSwitchableTrait;
26
+ exports.isWearableTrait = isWearableTrait;
27
+ exports.isClothingTrait = isClothingTrait;
28
+ exports.isAttachedTrait = isAttachedTrait;
29
+ exports.isPullableTrait = isPullableTrait;
30
+ exports.isPushableTrait = isPushableTrait;
31
+ exports.isButtonTrait = isButtonTrait;
32
+ exports.isMoveableSceneryTrait = isMoveableSceneryTrait;
33
+ exports.isWeaponTrait = isWeaponTrait;
34
+ exports.isBreakableTrait = isBreakableTrait;
35
+ exports.isDestructibleTrait = isDestructibleTrait;
36
+ exports.isCombatantTrait = isCombatantTrait;
37
+ exports.isEquippedTrait = isEquippedTrait;
38
+ // Import all trait classes
39
+ const actorTrait_1 = require("./actor/actorTrait");
40
+ const attachedTrait_1 = require("./attached/attachedTrait");
41
+ const buttonTrait_1 = require("./button/buttonTrait");
42
+ const clothingTrait_1 = require("./clothing/clothingTrait");
43
+ const containerTrait_1 = require("./container/containerTrait");
44
+ const doorTrait_1 = require("./door/doorTrait");
45
+ const climbableTrait_1 = require("./climbable/climbableTrait");
46
+ const edibleTrait_1 = require("./edible/edibleTrait");
47
+ const exitTrait_1 = require("./exit/exitTrait");
48
+ const identityTrait_1 = require("./identity/identityTrait");
49
+ const lightSourceTrait_1 = require("./light-source/lightSourceTrait");
50
+ const lockableTrait_1 = require("./lockable/lockableTrait");
51
+ const moveableSceneryTrait_1 = require("./moveable-scenery/moveableSceneryTrait");
52
+ const openableTrait_1 = require("./openable/openableTrait");
53
+ const pullableTrait_1 = require("./pullable/pullableTrait");
54
+ const pushableTrait_1 = require("./pushable/pushableTrait");
55
+ const readableTrait_1 = require("./readable/readableTrait");
56
+ const roomTrait_1 = require("./room/roomTrait");
57
+ const sceneryTrait_1 = require("./scenery/sceneryTrait");
58
+ const supporterTrait_1 = require("./supporter/supporterTrait");
59
+ const switchableTrait_1 = require("./switchable/switchableTrait");
60
+ const wearableTrait_1 = require("./wearable/wearableTrait");
61
+ const weaponTrait_1 = require("./weapon/weaponTrait");
62
+ const breakableTrait_1 = require("./breakable/breakableTrait");
63
+ const destructibleTrait_1 = require("./destructible/destructibleTrait");
64
+ const combatantTrait_1 = require("./combatant/combatantTrait");
65
+ const equippedTrait_1 = require("./equipped/equippedTrait");
66
+ const enterableTrait_1 = require("./enterable/enterableTrait");
67
+ // Export as namespace for easy access
68
+ exports.Traits = {
69
+ ActorTrait: actorTrait_1.ActorTrait,
70
+ AttachedTrait: attachedTrait_1.AttachedTrait,
71
+ ButtonTrait: buttonTrait_1.ButtonTrait,
72
+ ClimbableTrait: climbableTrait_1.ClimbableTrait,
73
+ ClothingTrait: clothingTrait_1.ClothingTrait,
74
+ ContainerTrait: containerTrait_1.ContainerTrait,
75
+ DoorTrait: doorTrait_1.DoorTrait,
76
+ EdibleTrait: edibleTrait_1.EdibleTrait,
77
+ ExitTrait: exitTrait_1.ExitTrait,
78
+ IdentityTrait: identityTrait_1.IdentityTrait,
79
+ LightSourceTrait: lightSourceTrait_1.LightSourceTrait,
80
+ LockableTrait: lockableTrait_1.LockableTrait,
81
+ MoveableSceneryTrait: moveableSceneryTrait_1.MoveableSceneryTrait,
82
+ OpenableTrait: openableTrait_1.OpenableTrait,
83
+ PullableTrait: pullableTrait_1.PullableTrait,
84
+ PushableTrait: pushableTrait_1.PushableTrait,
85
+ ReadableTrait: readableTrait_1.ReadableTrait,
86
+ RoomTrait: roomTrait_1.RoomTrait,
87
+ SceneryTrait: sceneryTrait_1.SceneryTrait,
88
+ SupporterTrait: supporterTrait_1.SupporterTrait,
89
+ SwitchableTrait: switchableTrait_1.SwitchableTrait,
90
+ WearableTrait: wearableTrait_1.WearableTrait,
91
+ WeaponTrait: weaponTrait_1.WeaponTrait,
92
+ BreakableTrait: breakableTrait_1.BreakableTrait,
93
+ DestructibleTrait: destructibleTrait_1.DestructibleTrait,
94
+ CombatantTrait: combatantTrait_1.CombatantTrait,
95
+ EquippedTrait: equippedTrait_1.EquippedTrait,
96
+ EnterableTrait: enterableTrait_1.EnterableTrait,
97
+ };
98
+ // Type guards for each trait
99
+ function isActorTrait(trait) {
100
+ return trait?.type === 'actor';
101
+ }
102
+ function isContainerTrait(trait) {
103
+ return trait?.type === 'container';
104
+ }
105
+ function isDoorTrait(trait) {
106
+ return trait?.type === 'door';
107
+ }
108
+ function isEdibleTrait(trait) {
109
+ return trait?.type === 'edible';
110
+ }
111
+ function isExitTrait(trait) {
112
+ return trait?.type === 'exit';
113
+ }
114
+ function isIdentityTrait(trait) {
115
+ return trait?.type === 'identity';
116
+ }
117
+ function isLightSourceTrait(trait) {
118
+ return trait?.type === 'lightSource';
119
+ }
120
+ function isLockableTrait(trait) {
121
+ return trait?.type === 'lockable';
122
+ }
123
+ function isOpenableTrait(trait) {
124
+ return trait?.type === 'openable';
125
+ }
126
+ function isReadableTrait(trait) {
127
+ return trait?.type === 'readable';
128
+ }
129
+ function isRoomTrait(trait) {
130
+ return trait?.type === 'room';
131
+ }
132
+ function isSceneryTrait(trait) {
133
+ return trait?.type === 'scenery';
134
+ }
135
+ function isSupporterTrait(trait) {
136
+ return trait?.type === 'supporter';
137
+ }
138
+ function isSwitchableTrait(trait) {
139
+ return trait?.type === 'switchable';
140
+ }
141
+ function isWearableTrait(trait) {
142
+ return trait?.type === 'wearable';
143
+ }
144
+ function isClothingTrait(trait) {
145
+ return trait?.type === 'clothing';
146
+ }
147
+ function isAttachedTrait(trait) {
148
+ return trait?.type === 'attached';
149
+ }
150
+ function isPullableTrait(trait) {
151
+ return trait?.type === 'pullable';
152
+ }
153
+ function isPushableTrait(trait) {
154
+ return trait?.type === 'pushable';
155
+ }
156
+ function isButtonTrait(trait) {
157
+ return trait?.type === 'button';
158
+ }
159
+ function isMoveableSceneryTrait(trait) {
160
+ return trait?.type === 'moveableScenery';
161
+ }
162
+ function isWeaponTrait(trait) {
163
+ return trait?.type === 'weapon';
164
+ }
165
+ function isBreakableTrait(trait) {
166
+ return trait?.type === 'breakable';
167
+ }
168
+ function isDestructibleTrait(trait) {
169
+ return trait?.type === 'destructible';
170
+ }
171
+ function isCombatantTrait(trait) {
172
+ return trait?.type === 'combatant';
173
+ }
174
+ function isEquippedTrait(trait) {
175
+ return trait?.type === 'equipped';
176
+ }
177
+ // Note: isEnterableTrait is exported from ./enterable/enterableTrait.ts
178
+ //# sourceMappingURL=all-traits.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"all-traits.js","sourceRoot":"","sources":["../../../../../../../../../mnt/c/repotemp/sharpee/packages/world-model/src/traits/all-traits.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Attached trait implementation
3
+ */
4
+ import { ITrait } from '../trait';
5
+ export interface IAttachedData {
6
+ /**
7
+ * What this is attached to (entity ID)
8
+ */
9
+ attachedTo?: string;
10
+ /**
11
+ * How it's attached
12
+ */
13
+ attachmentType?: 'glued' | 'nailed' | 'screwed' | 'tied' | 'welded' | 'magnetic' | 'stuck';
14
+ /**
15
+ * Whether it can be detached by pulling
16
+ */
17
+ detachable?: boolean;
18
+ /**
19
+ * Force required to detach (if detachable)
20
+ */
21
+ detachForce?: number;
22
+ /**
23
+ * Whether it's currently loose
24
+ */
25
+ loose?: boolean;
26
+ /**
27
+ * Sound when detached
28
+ */
29
+ detachSound?: string;
30
+ /**
31
+ * What happens when detached
32
+ */
33
+ onDetach?: {
34
+ breaksObject?: boolean;
35
+ breaksAttachment?: boolean;
36
+ leavesResidue?: boolean;
37
+ };
38
+ }
39
+ /**
40
+ * Attached trait for objects that are attached, fastened, or connected to something
41
+ *
42
+ * This trait contains only data - all logic for detachment
43
+ * is handled by the pulling action.
44
+ */
45
+ export declare class AttachedTrait implements ITrait, IAttachedData {
46
+ static readonly type: "attached";
47
+ readonly type: "attached";
48
+ attachedTo?: string;
49
+ attachmentType: 'glued' | 'nailed' | 'screwed' | 'tied' | 'welded' | 'magnetic' | 'stuck';
50
+ detachable: boolean;
51
+ detachForce?: number;
52
+ loose: boolean;
53
+ detachSound?: string;
54
+ onDetach?: {
55
+ breaksObject?: boolean;
56
+ breaksAttachment?: boolean;
57
+ leavesResidue?: boolean;
58
+ };
59
+ constructor(data?: IAttachedData);
60
+ }
61
+ //# sourceMappingURL=attachedTrait.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attachedTrait.d.ts","sourceRoot":"","sources":["../../../../../../../mnt/c/repotemp/sharpee/packages/world-model/src/traits/attached/attachedTrait.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;IAE3F;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE;QACT,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB,CAAC;CACH;AAED;;;;;GAKG;AACH,qBAAa,aAAc,YAAW,MAAM,EAAE,aAAa;IACzD,MAAM,CAAC,QAAQ,CAAC,IAAI,aAAsB;IAC1C,QAAQ,CAAC,IAAI,aAAsB;IAGnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;IAC1F,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE;QACT,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB,CAAC;gBAEU,IAAI,GAAE,aAAkB;CASrC"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ /**
3
+ * Attached trait implementation
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AttachedTrait = void 0;
7
+ const trait_types_1 = require("../trait-types");
8
+ /**
9
+ * Attached trait for objects that are attached, fastened, or connected to something
10
+ *
11
+ * This trait contains only data - all logic for detachment
12
+ * is handled by the pulling action.
13
+ */
14
+ class AttachedTrait {
15
+ static type = trait_types_1.TraitType.ATTACHED;
16
+ type = trait_types_1.TraitType.ATTACHED;
17
+ // AttachedData properties
18
+ attachedTo;
19
+ attachmentType;
20
+ detachable;
21
+ detachForce;
22
+ loose;
23
+ detachSound;
24
+ onDetach;
25
+ constructor(data = {}) {
26
+ this.attachedTo = data.attachedTo;
27
+ this.attachmentType = data.attachmentType ?? 'stuck';
28
+ this.detachable = data.detachable ?? false;
29
+ this.detachForce = data.detachForce;
30
+ this.loose = data.loose ?? false;
31
+ this.detachSound = data.detachSound;
32
+ this.onDetach = data.onDetach;
33
+ }
34
+ }
35
+ exports.AttachedTrait = AttachedTrait;
36
+ //# sourceMappingURL=attachedTrait.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attachedTrait.js","sourceRoot":"","sources":["../../../../../../../../../../mnt/c/repotemp/sharpee/packages/world-model/src/traits/attached/attachedTrait.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAGH,gDAA2C;AA2C3C;;;;;GAKG;AACH,MAAa,aAAa;IACxB,MAAM,CAAU,IAAI,GAAG,uBAAS,CAAC,QAAQ,CAAC;IACjC,IAAI,GAAG,uBAAS,CAAC,QAAQ,CAAC;IAEnC,0BAA0B;IAC1B,UAAU,CAAU;IACpB,cAAc,CAA4E;IAC1F,UAAU,CAAU;IACpB,WAAW,CAAU;IACrB,KAAK,CAAU;IACf,WAAW,CAAU;IACrB,QAAQ,CAIN;IAEF,YAAY,OAAsB,EAAE;QAClC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,OAAO,CAAC;QACrD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAChC,CAAC;;AAzBH,sCA0BC"}
@@ -0,0 +1,2 @@
1
+ export * from './attachedTrait';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../mnt/c/repotemp/sharpee/packages/world-model/src/traits/attached/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./attachedTrait"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../../../mnt/c/repotemp/sharpee/packages/world-model/src/traits/attached/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Behavior for breakable entities
3
+ */
4
+ import { Behavior } from '../../behaviors/behavior';
5
+ import { IFEntity } from '../../entities/if-entity';
6
+ import { WorldModel } from '../../world/WorldModel';
7
+ import { EntityId } from "../../src/index";
8
+ /**
9
+ * Result of breaking an entity
10
+ */
11
+ export interface IBreakResult {
12
+ success: boolean;
13
+ alreadyBroken?: boolean;
14
+ debrisCreated?: EntityId[];
15
+ itemRemoved?: boolean;
16
+ message?: string;
17
+ sound?: string;
18
+ }
19
+ /**
20
+ * Behavior for breakable entities.
21
+ *
22
+ * Handles breaking entities and creating debris.
23
+ * This is a world-aware behavior because it needs to create/remove entities.
24
+ */
25
+ export declare class BreakableBehavior extends Behavior {
26
+ static requiredTraits: "breakable"[];
27
+ /**
28
+ * Check if an entity can be broken
29
+ */
30
+ static canBreak(entity: IFEntity): boolean;
31
+ /**
32
+ * Break the entity
33
+ * @param entity The entity to break
34
+ * @param world The world model (needed to create debris and remove entity)
35
+ * @returns Result describing what happened
36
+ */
37
+ static break(entity: IFEntity, world: WorldModel): IBreakResult;
38
+ /**
39
+ * Check if entity is broken
40
+ */
41
+ static isBroken(entity: IFEntity): boolean;
42
+ }
43
+ //# sourceMappingURL=breakableBehavior.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breakableBehavior.d.ts","sourceRoot":"","sources":["../../../../../../../mnt/c/repotemp/sharpee/packages/world-model/src/traits/breakable/breakableBehavior.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGpD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,qBAAa,iBAAkB,SAAQ,QAAQ;IAC7C,MAAM,CAAC,cAAc,gBAAyB;IAE9C;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO;IAQ1C;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,GAAG,YAAY;IA+B/D;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO;CAQ3C"}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ /**
3
+ * Behavior for breakable entities
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BreakableBehavior = void 0;
7
+ const behavior_1 = require("../../behaviors/behavior");
8
+ const trait_types_1 = require("../trait-types");
9
+ /**
10
+ * Behavior for breakable entities.
11
+ *
12
+ * Handles breaking entities and creating debris.
13
+ * This is a world-aware behavior because it needs to create/remove entities.
14
+ */
15
+ class BreakableBehavior extends behavior_1.Behavior {
16
+ static requiredTraits = [trait_types_1.TraitType.BREAKABLE];
17
+ /**
18
+ * Check if an entity can be broken
19
+ */
20
+ static canBreak(entity) {
21
+ if (!entity.has(trait_types_1.TraitType.BREAKABLE)) {
22
+ return false;
23
+ }
24
+ const breakable = entity.get(trait_types_1.TraitType.BREAKABLE);
25
+ return !breakable.broken;
26
+ }
27
+ /**
28
+ * Break the entity
29
+ * @param entity The entity to break
30
+ * @param world The world model (needed to create debris and remove entity)
31
+ * @returns Result describing what happened
32
+ */
33
+ static break(entity, world) {
34
+ if (!entity.has(trait_types_1.TraitType.BREAKABLE)) {
35
+ return {
36
+ success: false,
37
+ message: 'Entity is not breakable'
38
+ };
39
+ }
40
+ const breakable = entity.get(trait_types_1.TraitType.BREAKABLE);
41
+ if (breakable.broken) {
42
+ return {
43
+ success: false,
44
+ alreadyBroken: true
45
+ };
46
+ }
47
+ // Mark as broken
48
+ breakable.broken = true;
49
+ const result = {
50
+ success: true
51
+ };
52
+ // If broken item should be removed (common for fragile items)
53
+ // The action can decide whether to remove based on game logic
54
+ // For now we'll mark that removal is recommended
55
+ result.itemRemoved = false; // Let the action decide
56
+ return result;
57
+ }
58
+ /**
59
+ * Check if entity is broken
60
+ */
61
+ static isBroken(entity) {
62
+ if (!entity.has(trait_types_1.TraitType.BREAKABLE)) {
63
+ return false;
64
+ }
65
+ const breakable = entity.get(trait_types_1.TraitType.BREAKABLE);
66
+ return breakable.broken;
67
+ }
68
+ }
69
+ exports.BreakableBehavior = BreakableBehavior;
70
+ //# sourceMappingURL=breakableBehavior.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breakableBehavior.js","sourceRoot":"","sources":["../../../../../../../../../../mnt/c/repotemp/sharpee/packages/world-model/src/traits/breakable/breakableBehavior.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,uDAAoD;AAGpD,gDAA2C;AAgB3C;;;;;GAKG;AACH,MAAa,iBAAkB,SAAQ,mBAAQ;IAC7C,MAAM,CAAC,cAAc,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,CAAC;IAE9C;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,MAAgB;QAC9B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACrC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAiB,uBAAS,CAAC,SAAS,CAAE,CAAC;QACnE,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,MAAgB,EAAE,KAAiB;QAC9C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACrC,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,yBAAyB;aACnC,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAiB,uBAAS,CAAC,SAAS,CAAE,CAAC;QAEnE,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;YACrB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,aAAa,EAAE,IAAI;aACpB,CAAC;QACJ,CAAC;QAED,iBAAiB;QACjB,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC;QAExB,MAAM,MAAM,GAAiB;YAC3B,OAAO,EAAE,IAAI;SACd,CAAC;QAEF,8DAA8D;QAC9D,8DAA8D;QAC9D,iDAAiD;QACjD,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,CAAC,wBAAwB;QAEpD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,MAAgB;QAC9B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACrC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAiB,uBAAS,CAAC,SAAS,CAAE,CAAC;QACnE,OAAO,SAAS,CAAC,MAAM,CAAC;IAC1B,CAAC;;AA5DH,8CA8DC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Breakable trait for entities that can be broken with a single hit
3
+ */
4
+ import { ITrait } from '../trait';
5
+ export interface IBreakableData {
6
+ /** Whether this object is already broken */
7
+ broken?: boolean;
8
+ }
9
+ /**
10
+ * Breakable trait indicates an entity can be broken with a single hit.
11
+ *
12
+ * This trait contains only data - all breaking logic
13
+ * is in BreakableBehavior. Story-specific properties (messages,
14
+ * sounds, debris, etc.) should be handled through event handlers.
15
+ */
16
+ export declare class BreakableTrait implements ITrait, IBreakableData {
17
+ static readonly type: "breakable";
18
+ readonly type: "breakable";
19
+ broken: boolean;
20
+ constructor(data?: IBreakableData);
21
+ }
22
+ //# sourceMappingURL=breakableTrait.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breakableTrait.d.ts","sourceRoot":"","sources":["../../../../../../../mnt/c/repotemp/sharpee/packages/world-model/src/traits/breakable/breakableTrait.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,WAAW,cAAc;IAC7B,4CAA4C;IAC5C,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;GAMG;AACH,qBAAa,cAAe,YAAW,MAAM,EAAE,cAAc;IAC3D,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAG,WAAW,CAAU;IAC5C,QAAQ,CAAC,IAAI,EAAG,WAAW,CAAU;IAGrC,MAAM,EAAE,OAAO,CAAC;gBAEJ,IAAI,GAAE,cAAmB;CAItC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ /**
3
+ * Breakable trait for entities that can be broken with a single hit
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BreakableTrait = void 0;
7
+ /**
8
+ * Breakable trait indicates an entity can be broken with a single hit.
9
+ *
10
+ * This trait contains only data - all breaking logic
11
+ * is in BreakableBehavior. Story-specific properties (messages,
12
+ * sounds, debris, etc.) should be handled through event handlers.
13
+ */
14
+ class BreakableTrait {
15
+ static type = 'breakable';
16
+ type = 'breakable';
17
+ // BreakableData properties
18
+ broken;
19
+ constructor(data = {}) {
20
+ // Set defaults and merge with provided data
21
+ this.broken = data.broken ?? false;
22
+ }
23
+ }
24
+ exports.BreakableTrait = BreakableTrait;
25
+ //# sourceMappingURL=breakableTrait.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breakableTrait.js","sourceRoot":"","sources":["../../../../../../../../../../mnt/c/repotemp/sharpee/packages/world-model/src/traits/breakable/breakableTrait.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AASH;;;;;;GAMG;AACH,MAAa,cAAc;IACzB,MAAM,CAAU,IAAI,GAAG,WAAoB,CAAC;IACnC,IAAI,GAAG,WAAoB,CAAC;IAErC,2BAA2B;IAC3B,MAAM,CAAU;IAEhB,YAAY,OAAuB,EAAE;QACnC,4CAA4C;QAC5C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC;IACrC,CAAC;;AAVH,wCAWC"}
@@ -0,0 +1,3 @@
1
+ export { BreakableTrait, IBreakableData } from './breakableTrait';
2
+ export { BreakableBehavior, IBreakResult } from './breakableBehavior';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../mnt/c/repotemp/sharpee/packages/world-model/src/traits/breakable/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BreakableBehavior = exports.BreakableTrait = void 0;
4
+ var breakableTrait_1 = require("./breakableTrait");
5
+ Object.defineProperty(exports, "BreakableTrait", { enumerable: true, get: function () { return breakableTrait_1.BreakableTrait; } });
6
+ var breakableBehavior_1 = require("./breakableBehavior");
7
+ Object.defineProperty(exports, "BreakableBehavior", { enumerable: true, get: function () { return breakableBehavior_1.BreakableBehavior; } });
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../../../mnt/c/repotemp/sharpee/packages/world-model/src/traits/breakable/index.ts"],"names":[],"mappings":";;;AAAA,mDAAkE;AAAzD,gHAAA,cAAc,OAAA;AACvB,yDAAsE;AAA7D,sHAAA,iBAAiB,OAAA"}