@sharpee/world-model 0.9.65-beta → 0.9.66-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/package.json +6 -18
  2. package/dist-npm/annotations/index.d.ts +0 -2
  3. package/dist-npm/annotations/index.d.ts.map +0 -1
  4. package/dist-npm/annotations/index.js +0 -18
  5. package/dist-npm/annotations/index.js.map +0 -1
  6. package/dist-npm/annotations/types.d.ts +0 -35
  7. package/dist-npm/annotations/types.d.ts.map +0 -1
  8. package/dist-npm/annotations/types.js +0 -9
  9. package/dist-npm/annotations/types.js.map +0 -1
  10. package/dist-npm/behaviors/attack.d.ts +0 -52
  11. package/dist-npm/behaviors/attack.d.ts.map +0 -1
  12. package/dist-npm/behaviors/attack.js +0 -161
  13. package/dist-npm/behaviors/attack.js.map +0 -1
  14. package/dist-npm/behaviors/behavior.d.ts +0 -67
  15. package/dist-npm/behaviors/behavior.d.ts.map +0 -1
  16. package/dist-npm/behaviors/behavior.js +0 -80
  17. package/dist-npm/behaviors/behavior.js.map +0 -1
  18. package/dist-npm/behaviors/index.d.ts +0 -21
  19. package/dist-npm/behaviors/index.d.ts.map +0 -1
  20. package/dist-npm/behaviors/index.js +0 -39
  21. package/dist-npm/behaviors/index.js.map +0 -1
  22. package/dist-npm/capabilities/action-interceptor.d.ts +0 -169
  23. package/dist-npm/capabilities/action-interceptor.d.ts.map +0 -1
  24. package/dist-npm/capabilities/action-interceptor.js +0 -15
  25. package/dist-npm/capabilities/action-interceptor.js.map +0 -1
  26. package/dist-npm/capabilities/capability-behavior.d.ts +0 -112
  27. package/dist-npm/capabilities/capability-behavior.d.ts.map +0 -1
  28. package/dist-npm/capabilities/capability-behavior.js +0 -9
  29. package/dist-npm/capabilities/capability-behavior.js.map +0 -1
  30. package/dist-npm/capabilities/capability-defaults.d.ts +0 -67
  31. package/dist-npm/capabilities/capability-defaults.d.ts.map +0 -1
  32. package/dist-npm/capabilities/capability-defaults.js +0 -81
  33. package/dist-npm/capabilities/capability-defaults.js.map +0 -1
  34. package/dist-npm/capabilities/capability-helpers.d.ts +0 -76
  35. package/dist-npm/capabilities/capability-helpers.d.ts.map +0 -1
  36. package/dist-npm/capabilities/capability-helpers.js +0 -112
  37. package/dist-npm/capabilities/capability-helpers.js.map +0 -1
  38. package/dist-npm/capabilities/capability-registry.d.ts +0 -115
  39. package/dist-npm/capabilities/capability-registry.d.ts.map +0 -1
  40. package/dist-npm/capabilities/capability-registry.js +0 -136
  41. package/dist-npm/capabilities/capability-registry.js.map +0 -1
  42. package/dist-npm/capabilities/entity-builder.d.ts +0 -79
  43. package/dist-npm/capabilities/entity-builder.d.ts.map +0 -1
  44. package/dist-npm/capabilities/entity-builder.js +0 -116
  45. package/dist-npm/capabilities/entity-builder.js.map +0 -1
  46. package/dist-npm/capabilities/index.d.ts +0 -16
  47. package/dist-npm/capabilities/index.d.ts.map +0 -1
  48. package/dist-npm/capabilities/index.js +0 -56
  49. package/dist-npm/capabilities/index.js.map +0 -1
  50. package/dist-npm/capabilities/interceptor-helpers.d.ts +0 -74
  51. package/dist-npm/capabilities/interceptor-helpers.d.ts.map +0 -1
  52. package/dist-npm/capabilities/interceptor-helpers.js +0 -111
  53. package/dist-npm/capabilities/interceptor-helpers.js.map +0 -1
  54. package/dist-npm/capabilities/interceptor-registry.d.ts +0 -125
  55. package/dist-npm/capabilities/interceptor-registry.d.ts.map +0 -1
  56. package/dist-npm/capabilities/interceptor-registry.js +0 -176
  57. package/dist-npm/capabilities/interceptor-registry.js.map +0 -1
  58. package/dist-npm/capabilities/types.d.ts +0 -35
  59. package/dist-npm/capabilities/types.d.ts.map +0 -1
  60. package/dist-npm/capabilities/types.js +0 -16
  61. package/dist-npm/capabilities/types.js.map +0 -1
  62. package/dist-npm/commands/command-types.d.ts +0 -30
  63. package/dist-npm/commands/command-types.d.ts.map +0 -1
  64. package/dist-npm/commands/command-types.js +0 -6
  65. package/dist-npm/commands/command-types.js.map +0 -1
  66. package/dist-npm/commands/index.d.ts +0 -7
  67. package/dist-npm/commands/index.d.ts.map +0 -1
  68. package/dist-npm/commands/index.js +0 -23
  69. package/dist-npm/commands/index.js.map +0 -1
  70. package/dist-npm/commands/parsed-command.d.ts +0 -204
  71. package/dist-npm/commands/parsed-command.d.ts.map +0 -1
  72. package/dist-npm/commands/parsed-command.js +0 -25
  73. package/dist-npm/commands/parsed-command.js.map +0 -1
  74. package/dist-npm/commands/validated-command.d.ts +0 -52
  75. package/dist-npm/commands/validated-command.d.ts.map +0 -1
  76. package/dist-npm/commands/validated-command.js +0 -8
  77. package/dist-npm/commands/validated-command.js.map +0 -1
  78. package/dist-npm/constants/action-failures.d.ts +0 -54
  79. package/dist-npm/constants/action-failures.d.ts.map +0 -1
  80. package/dist-npm/constants/action-failures.js +0 -68
  81. package/dist-npm/constants/action-failures.js.map +0 -1
  82. package/dist-npm/constants/directions.d.ts +0 -32
  83. package/dist-npm/constants/directions.d.ts.map +0 -1
  84. package/dist-npm/constants/directions.js +0 -53
  85. package/dist-npm/constants/directions.js.map +0 -1
  86. package/dist-npm/constants/if-events.d.ts +0 -5
  87. package/dist-npm/constants/if-events.d.ts.map +0 -1
  88. package/dist-npm/constants/if-events.js +0 -10
  89. package/dist-npm/constants/if-events.js.map +0 -1
  90. package/dist-npm/constants/index.d.ts +0 -9
  91. package/dist-npm/constants/index.d.ts.map +0 -1
  92. package/dist-npm/constants/index.js +0 -25
  93. package/dist-npm/constants/index.js.map +0 -1
  94. package/dist-npm/entities/entity-store.d.ts +0 -66
  95. package/dist-npm/entities/entity-store.d.ts.map +0 -1
  96. package/dist-npm/entities/entity-store.js +0 -116
  97. package/dist-npm/entities/entity-store.js.map +0 -1
  98. package/dist-npm/entities/entity-types.d.ts +0 -40
  99. package/dist-npm/entities/entity-types.d.ts.map +0 -1
  100. package/dist-npm/entities/entity-types.js +0 -56
  101. package/dist-npm/entities/entity-types.js.map +0 -1
  102. package/dist-npm/entities/if-entity.d.ts +0 -314
  103. package/dist-npm/entities/if-entity.d.ts.map +0 -1
  104. package/dist-npm/entities/if-entity.js +0 -621
  105. package/dist-npm/entities/if-entity.js.map +0 -1
  106. package/dist-npm/entities/index.d.ts +0 -5
  107. package/dist-npm/entities/index.d.ts.map +0 -1
  108. package/dist-npm/entities/index.js +0 -13
  109. package/dist-npm/entities/index.js.map +0 -1
  110. package/dist-npm/events/types.d.ts +0 -45
  111. package/dist-npm/events/types.d.ts.map +0 -1
  112. package/dist-npm/events/types.js +0 -9
  113. package/dist-npm/events/types.js.map +0 -1
  114. package/dist-npm/examples/event-handler-registration.d.ts +0 -14
  115. package/dist-npm/examples/event-handler-registration.d.ts.map +0 -1
  116. package/dist-npm/examples/event-handler-registration.js +0 -158
  117. package/dist-npm/examples/event-handler-registration.js.map +0 -1
  118. package/dist-npm/extensions/base-extension.d.ts +0 -69
  119. package/dist-npm/extensions/base-extension.d.ts.map +0 -1
  120. package/dist-npm/extensions/base-extension.js +0 -83
  121. package/dist-npm/extensions/base-extension.js.map +0 -1
  122. package/dist-npm/extensions/index.d.ts +0 -11
  123. package/dist-npm/extensions/index.d.ts.map +0 -1
  124. package/dist-npm/extensions/index.js +0 -39
  125. package/dist-npm/extensions/index.js.map +0 -1
  126. package/dist-npm/extensions/loader.d.ts +0 -52
  127. package/dist-npm/extensions/loader.d.ts.map +0 -1
  128. package/dist-npm/extensions/loader.js +0 -177
  129. package/dist-npm/extensions/loader.js.map +0 -1
  130. package/dist-npm/extensions/manager.d.ts +0 -68
  131. package/dist-npm/extensions/manager.d.ts.map +0 -1
  132. package/dist-npm/extensions/manager.js +0 -164
  133. package/dist-npm/extensions/manager.js.map +0 -1
  134. package/dist-npm/extensions/registry.d.ts +0 -100
  135. package/dist-npm/extensions/registry.d.ts.map +0 -1
  136. package/dist-npm/extensions/registry.js +0 -193
  137. package/dist-npm/extensions/registry.js.map +0 -1
  138. package/dist-npm/extensions/types.d.ts +0 -226
  139. package/dist-npm/extensions/types.d.ts.map +0 -1
  140. package/dist-npm/extensions/types.js +0 -28
  141. package/dist-npm/extensions/types.js.map +0 -1
  142. package/dist-npm/index.d.ts +0 -41
  143. package/dist-npm/index.d.ts.map +0 -1
  144. package/dist-npm/index.js +0 -71
  145. package/dist-npm/index.js.map +0 -1
  146. package/dist-npm/interfaces/command-executor.d.ts +0 -17
  147. package/dist-npm/interfaces/command-executor.d.ts.map +0 -1
  148. package/dist-npm/interfaces/command-executor.js +0 -6
  149. package/dist-npm/interfaces/command-executor.js.map +0 -1
  150. package/dist-npm/interfaces/command-processor.d.ts +0 -17
  151. package/dist-npm/interfaces/command-processor.d.ts.map +0 -1
  152. package/dist-npm/interfaces/command-processor.js +0 -6
  153. package/dist-npm/interfaces/command-processor.js.map +0 -1
  154. package/dist-npm/interfaces/command-validator.d.ts +0 -17
  155. package/dist-npm/interfaces/command-validator.d.ts.map +0 -1
  156. package/dist-npm/interfaces/command-validator.js +0 -6
  157. package/dist-npm/interfaces/command-validator.js.map +0 -1
  158. package/dist-npm/interfaces/index.d.ts +0 -8
  159. package/dist-npm/interfaces/index.d.ts.map +0 -1
  160. package/dist-npm/interfaces/index.js +0 -24
  161. package/dist-npm/interfaces/index.js.map +0 -1
  162. package/dist-npm/interfaces/language-provider.d.ts +0 -86
  163. package/dist-npm/interfaces/language-provider.d.ts.map +0 -1
  164. package/dist-npm/interfaces/language-provider.js +0 -14
  165. package/dist-npm/interfaces/language-provider.js.map +0 -1
  166. package/dist-npm/interfaces/parser.d.ts +0 -16
  167. package/dist-npm/interfaces/parser.d.ts.map +0 -1
  168. package/dist-npm/interfaces/parser.js +0 -6
  169. package/dist-npm/interfaces/parser.js.map +0 -1
  170. package/dist-npm/scope/index.d.ts +0 -8
  171. package/dist-npm/scope/index.d.ts.map +0 -1
  172. package/dist-npm/scope/index.js +0 -24
  173. package/dist-npm/scope/index.js.map +0 -1
  174. package/dist-npm/scope/scope-evaluator.d.ts +0 -58
  175. package/dist-npm/scope/scope-evaluator.d.ts.map +0 -1
  176. package/dist-npm/scope/scope-evaluator.js +0 -207
  177. package/dist-npm/scope/scope-evaluator.js.map +0 -1
  178. package/dist-npm/scope/scope-registry.d.ts +0 -59
  179. package/dist-npm/scope/scope-registry.d.ts.map +0 -1
  180. package/dist-npm/scope/scope-registry.js +0 -182
  181. package/dist-npm/scope/scope-registry.js.map +0 -1
  182. package/dist-npm/scope/scope-rule.d.ts +0 -86
  183. package/dist-npm/scope/scope-rule.d.ts.map +0 -1
  184. package/dist-npm/scope/scope-rule.js +0 -7
  185. package/dist-npm/scope/scope-rule.js.map +0 -1
  186. package/dist-npm/services/ScopeService.d.ts +0 -8
  187. package/dist-npm/services/ScopeService.d.ts.map +0 -1
  188. package/dist-npm/services/ScopeService.js +0 -19
  189. package/dist-npm/services/ScopeService.js.map +0 -1
  190. package/dist-npm/services/index.d.ts +0 -2
  191. package/dist-npm/services/index.d.ts.map +0 -1
  192. package/dist-npm/services/index.js +0 -6
  193. package/dist-npm/services/index.js.map +0 -1
  194. package/dist-npm/test-structure.d.ts +0 -3
  195. package/dist-npm/test-structure.d.ts.map +0 -1
  196. package/dist-npm/test-structure.js +0 -26
  197. package/dist-npm/test-structure.js.map +0 -1
  198. package/dist-npm/traits/actor/actorBehavior.d.ts +0 -121
  199. package/dist-npm/traits/actor/actorBehavior.d.ts.map +0 -1
  200. package/dist-npm/traits/actor/actorBehavior.js +0 -288
  201. package/dist-npm/traits/actor/actorBehavior.js.map +0 -1
  202. package/dist-npm/traits/actor/actorTrait.d.ts +0 -158
  203. package/dist-npm/traits/actor/actorTrait.d.ts.map +0 -1
  204. package/dist-npm/traits/actor/actorTrait.js +0 -152
  205. package/dist-npm/traits/actor/actorTrait.js.map +0 -1
  206. package/dist-npm/traits/actor/index.d.ts +0 -3
  207. package/dist-npm/traits/actor/index.d.ts.map +0 -1
  208. package/dist-npm/traits/actor/index.js +0 -11
  209. package/dist-npm/traits/actor/index.js.map +0 -1
  210. package/dist-npm/traits/all-traits.d.ts +0 -95
  211. package/dist-npm/traits/all-traits.d.ts.map +0 -1
  212. package/dist-npm/traits/all-traits.js +0 -178
  213. package/dist-npm/traits/all-traits.js.map +0 -1
  214. package/dist-npm/traits/attached/attachedTrait.d.ts +0 -61
  215. package/dist-npm/traits/attached/attachedTrait.d.ts.map +0 -1
  216. package/dist-npm/traits/attached/attachedTrait.js +0 -36
  217. package/dist-npm/traits/attached/attachedTrait.js.map +0 -1
  218. package/dist-npm/traits/attached/index.d.ts +0 -2
  219. package/dist-npm/traits/attached/index.d.ts.map +0 -1
  220. package/dist-npm/traits/attached/index.js +0 -18
  221. package/dist-npm/traits/attached/index.js.map +0 -1
  222. package/dist-npm/traits/breakable/breakableBehavior.d.ts +0 -43
  223. package/dist-npm/traits/breakable/breakableBehavior.d.ts.map +0 -1
  224. package/dist-npm/traits/breakable/breakableBehavior.js +0 -70
  225. package/dist-npm/traits/breakable/breakableBehavior.js.map +0 -1
  226. package/dist-npm/traits/breakable/breakableTrait.d.ts +0 -22
  227. package/dist-npm/traits/breakable/breakableTrait.d.ts.map +0 -1
  228. package/dist-npm/traits/breakable/breakableTrait.js +0 -25
  229. package/dist-npm/traits/breakable/breakableTrait.js.map +0 -1
  230. package/dist-npm/traits/breakable/index.d.ts +0 -3
  231. package/dist-npm/traits/breakable/index.d.ts.map +0 -1
  232. package/dist-npm/traits/breakable/index.js +0 -8
  233. package/dist-npm/traits/breakable/index.js.map +0 -1
  234. package/dist-npm/traits/button/buttonTrait.d.ts +0 -53
  235. package/dist-npm/traits/button/buttonTrait.d.ts.map +0 -1
  236. package/dist-npm/traits/button/buttonTrait.js +0 -36
  237. package/dist-npm/traits/button/buttonTrait.js.map +0 -1
  238. package/dist-npm/traits/button/index.d.ts +0 -2
  239. package/dist-npm/traits/button/index.d.ts.map +0 -1
  240. package/dist-npm/traits/button/index.js +0 -18
  241. package/dist-npm/traits/button/index.js.map +0 -1
  242. package/dist-npm/traits/climbable/climbableBehavior.d.ts +0 -37
  243. package/dist-npm/traits/climbable/climbableBehavior.d.ts.map +0 -1
  244. package/dist-npm/traits/climbable/climbableBehavior.js +0 -70
  245. package/dist-npm/traits/climbable/climbableBehavior.js.map +0 -1
  246. package/dist-npm/traits/climbable/climbableTrait.d.ts +0 -31
  247. package/dist-npm/traits/climbable/climbableTrait.d.ts.map +0 -1
  248. package/dist-npm/traits/climbable/climbableTrait.js +0 -47
  249. package/dist-npm/traits/climbable/climbableTrait.js.map +0 -1
  250. package/dist-npm/traits/climbable/index.d.ts +0 -6
  251. package/dist-npm/traits/climbable/index.d.ts.map +0 -1
  252. package/dist-npm/traits/climbable/index.js +0 -22
  253. package/dist-npm/traits/climbable/index.js.map +0 -1
  254. package/dist-npm/traits/clothing/clothingTrait.d.ts +0 -58
  255. package/dist-npm/traits/clothing/clothingTrait.d.ts.map +0 -1
  256. package/dist-npm/traits/clothing/clothingTrait.js +0 -78
  257. package/dist-npm/traits/clothing/clothingTrait.js.map +0 -1
  258. package/dist-npm/traits/clothing/index.d.ts +0 -2
  259. package/dist-npm/traits/clothing/index.d.ts.map +0 -1
  260. package/dist-npm/traits/clothing/index.js +0 -19
  261. package/dist-npm/traits/clothing/index.js.map +0 -1
  262. package/dist-npm/traits/combatant/combatantBehavior.d.ts +0 -70
  263. package/dist-npm/traits/combatant/combatantBehavior.d.ts.map +0 -1
  264. package/dist-npm/traits/combatant/combatantBehavior.js +0 -155
  265. package/dist-npm/traits/combatant/combatantBehavior.js.map +0 -1
  266. package/dist-npm/traits/combatant/combatantTrait.d.ts +0 -98
  267. package/dist-npm/traits/combatant/combatantTrait.d.ts.map +0 -1
  268. package/dist-npm/traits/combatant/combatantTrait.js +0 -122
  269. package/dist-npm/traits/combatant/combatantTrait.js.map +0 -1
  270. package/dist-npm/traits/combatant/index.d.ts +0 -3
  271. package/dist-npm/traits/combatant/index.d.ts.map +0 -1
  272. package/dist-npm/traits/combatant/index.js +0 -8
  273. package/dist-npm/traits/combatant/index.js.map +0 -1
  274. package/dist-npm/traits/container/container-utils.d.ts +0 -39
  275. package/dist-npm/traits/container/container-utils.d.ts.map +0 -1
  276. package/dist-npm/traits/container/container-utils.js +0 -72
  277. package/dist-npm/traits/container/container-utils.js.map +0 -1
  278. package/dist-npm/traits/container/containerBehavior.d.ts +0 -94
  279. package/dist-npm/traits/container/containerBehavior.d.ts.map +0 -1
  280. package/dist-npm/traits/container/containerBehavior.js +0 -256
  281. package/dist-npm/traits/container/containerBehavior.js.map +0 -1
  282. package/dist-npm/traits/container/containerTrait.d.ts +0 -30
  283. package/dist-npm/traits/container/containerTrait.d.ts.map +0 -1
  284. package/dist-npm/traits/container/containerTrait.js +0 -45
  285. package/dist-npm/traits/container/containerTrait.js.map +0 -1
  286. package/dist-npm/traits/container/index.d.ts +0 -4
  287. package/dist-npm/traits/container/index.d.ts.map +0 -1
  288. package/dist-npm/traits/container/index.js +0 -14
  289. package/dist-npm/traits/container/index.js.map +0 -1
  290. package/dist-npm/traits/destructible/destructibleBehavior.d.ts +0 -57
  291. package/dist-npm/traits/destructible/destructibleBehavior.d.ts.map +0 -1
  292. package/dist-npm/traits/destructible/destructibleBehavior.js +0 -145
  293. package/dist-npm/traits/destructible/destructibleBehavior.js.map +0 -1
  294. package/dist-npm/traits/destructible/destructibleTrait.d.ts +0 -49
  295. package/dist-npm/traits/destructible/destructibleTrait.d.ts.map +0 -1
  296. package/dist-npm/traits/destructible/destructibleTrait.js +0 -43
  297. package/dist-npm/traits/destructible/destructibleTrait.js.map +0 -1
  298. package/dist-npm/traits/destructible/index.d.ts +0 -3
  299. package/dist-npm/traits/destructible/index.d.ts.map +0 -1
  300. package/dist-npm/traits/destructible/index.js +0 -8
  301. package/dist-npm/traits/destructible/index.js.map +0 -1
  302. package/dist-npm/traits/door/doorBehavior.d.ts +0 -42
  303. package/dist-npm/traits/door/doorBehavior.d.ts.map +0 -1
  304. package/dist-npm/traits/door/doorBehavior.js +0 -76
  305. package/dist-npm/traits/door/doorBehavior.js.map +0 -1
  306. package/dist-npm/traits/door/doorTrait.d.ts +0 -19
  307. package/dist-npm/traits/door/doorTrait.d.ts.map +0 -1
  308. package/dist-npm/traits/door/doorTrait.js +0 -33
  309. package/dist-npm/traits/door/doorTrait.js.map +0 -1
  310. package/dist-npm/traits/door/index.d.ts +0 -3
  311. package/dist-npm/traits/door/index.d.ts.map +0 -1
  312. package/dist-npm/traits/door/index.js +0 -9
  313. package/dist-npm/traits/door/index.js.map +0 -1
  314. package/dist-npm/traits/edible/edibleBehavior.d.ts +0 -63
  315. package/dist-npm/traits/edible/edibleBehavior.d.ts.map +0 -1
  316. package/dist-npm/traits/edible/edibleBehavior.js +0 -157
  317. package/dist-npm/traits/edible/edibleBehavior.js.map +0 -1
  318. package/dist-npm/traits/edible/edibleTrait.d.ts +0 -57
  319. package/dist-npm/traits/edible/edibleTrait.d.ts.map +0 -1
  320. package/dist-npm/traits/edible/edibleTrait.js +0 -51
  321. package/dist-npm/traits/edible/edibleTrait.js.map +0 -1
  322. package/dist-npm/traits/edible/index.d.ts +0 -3
  323. package/dist-npm/traits/edible/index.d.ts.map +0 -1
  324. package/dist-npm/traits/edible/index.js +0 -20
  325. package/dist-npm/traits/edible/index.js.map +0 -1
  326. package/dist-npm/traits/enterable/enterableTrait.d.ts +0 -33
  327. package/dist-npm/traits/enterable/enterableTrait.d.ts.map +0 -1
  328. package/dist-npm/traits/enterable/enterableTrait.js +0 -38
  329. package/dist-npm/traits/enterable/enterableTrait.js.map +0 -1
  330. package/dist-npm/traits/enterable/index.d.ts +0 -5
  331. package/dist-npm/traits/enterable/index.d.ts.map +0 -1
  332. package/dist-npm/traits/enterable/index.js +0 -21
  333. package/dist-npm/traits/enterable/index.js.map +0 -1
  334. package/dist-npm/traits/equipped/equippedTrait.d.ts +0 -46
  335. package/dist-npm/traits/equipped/equippedTrait.d.ts.map +0 -1
  336. package/dist-npm/traits/equipped/equippedTrait.js +0 -34
  337. package/dist-npm/traits/equipped/equippedTrait.js.map +0 -1
  338. package/dist-npm/traits/equipped/index.d.ts +0 -2
  339. package/dist-npm/traits/equipped/index.d.ts.map +0 -1
  340. package/dist-npm/traits/equipped/index.js +0 -6
  341. package/dist-npm/traits/equipped/index.js.map +0 -1
  342. package/dist-npm/traits/exit/exitBehavior.d.ts +0 -51
  343. package/dist-npm/traits/exit/exitBehavior.d.ts.map +0 -1
  344. package/dist-npm/traits/exit/exitBehavior.js +0 -231
  345. package/dist-npm/traits/exit/exitBehavior.js.map +0 -1
  346. package/dist-npm/traits/exit/exitTrait.d.ts +0 -41
  347. package/dist-npm/traits/exit/exitTrait.d.ts.map +0 -1
  348. package/dist-npm/traits/exit/exitTrait.js +0 -75
  349. package/dist-npm/traits/exit/exitTrait.js.map +0 -1
  350. package/dist-npm/traits/exit/index.d.ts +0 -3
  351. package/dist-npm/traits/exit/index.d.ts.map +0 -1
  352. package/dist-npm/traits/exit/index.js +0 -9
  353. package/dist-npm/traits/exit/index.js.map +0 -1
  354. package/dist-npm/traits/identity/identityBehavior.d.ts +0 -64
  355. package/dist-npm/traits/identity/identityBehavior.d.ts.map +0 -1
  356. package/dist-npm/traits/identity/identityBehavior.js +0 -154
  357. package/dist-npm/traits/identity/identityBehavior.js.map +0 -1
  358. package/dist-npm/traits/identity/identityTrait.d.ts +0 -70
  359. package/dist-npm/traits/identity/identityTrait.d.ts.map +0 -1
  360. package/dist-npm/traits/identity/identityTrait.js +0 -79
  361. package/dist-npm/traits/identity/identityTrait.js.map +0 -1
  362. package/dist-npm/traits/identity/index.d.ts +0 -3
  363. package/dist-npm/traits/identity/index.d.ts.map +0 -1
  364. package/dist-npm/traits/identity/index.js +0 -20
  365. package/dist-npm/traits/identity/index.js.map +0 -1
  366. package/dist-npm/traits/implementations.d.ts +0 -52
  367. package/dist-npm/traits/implementations.d.ts.map +0 -1
  368. package/dist-npm/traits/implementations.js +0 -150
  369. package/dist-npm/traits/implementations.js.map +0 -1
  370. package/dist-npm/traits/index.d.ts +0 -37
  371. package/dist-npm/traits/index.d.ts.map +0 -1
  372. package/dist-npm/traits/index.js +0 -64
  373. package/dist-npm/traits/index.js.map +0 -1
  374. package/dist-npm/traits/light-source/index.d.ts +0 -3
  375. package/dist-npm/traits/light-source/index.d.ts.map +0 -1
  376. package/dist-npm/traits/light-source/index.js +0 -9
  377. package/dist-npm/traits/light-source/index.js.map +0 -1
  378. package/dist-npm/traits/light-source/lightSourceBehavior.d.ts +0 -57
  379. package/dist-npm/traits/light-source/lightSourceBehavior.d.ts.map +0 -1
  380. package/dist-npm/traits/light-source/lightSourceBehavior.js +0 -135
  381. package/dist-npm/traits/light-source/lightSourceBehavior.js.map +0 -1
  382. package/dist-npm/traits/light-source/lightSourceTrait.d.ts +0 -28
  383. package/dist-npm/traits/light-source/lightSourceTrait.d.ts.map +0 -1
  384. package/dist-npm/traits/light-source/lightSourceTrait.js +0 -37
  385. package/dist-npm/traits/light-source/lightSourceTrait.js.map +0 -1
  386. package/dist-npm/traits/lockable/index.d.ts +0 -3
  387. package/dist-npm/traits/lockable/index.d.ts.map +0 -1
  388. package/dist-npm/traits/lockable/index.js +0 -20
  389. package/dist-npm/traits/lockable/index.js.map +0 -1
  390. package/dist-npm/traits/lockable/lockableBehavior.d.ts +0 -88
  391. package/dist-npm/traits/lockable/lockableBehavior.d.ts.map +0 -1
  392. package/dist-npm/traits/lockable/lockableBehavior.js +0 -196
  393. package/dist-npm/traits/lockable/lockableBehavior.js.map +0 -1
  394. package/dist-npm/traits/lockable/lockableTrait.d.ts +0 -59
  395. package/dist-npm/traits/lockable/lockableTrait.d.ts.map +0 -1
  396. package/dist-npm/traits/lockable/lockableTrait.js +0 -50
  397. package/dist-npm/traits/lockable/lockableTrait.js.map +0 -1
  398. package/dist-npm/traits/moveable-scenery/index.d.ts +0 -2
  399. package/dist-npm/traits/moveable-scenery/index.d.ts.map +0 -1
  400. package/dist-npm/traits/moveable-scenery/index.js +0 -18
  401. package/dist-npm/traits/moveable-scenery/index.js.map +0 -1
  402. package/dist-npm/traits/moveable-scenery/moveableSceneryTrait.d.ts +0 -69
  403. package/dist-npm/traits/moveable-scenery/moveableSceneryTrait.d.ts.map +0 -1
  404. package/dist-npm/traits/moveable-scenery/moveableSceneryTrait.js +0 -43
  405. package/dist-npm/traits/moveable-scenery/moveableSceneryTrait.js.map +0 -1
  406. package/dist-npm/traits/npc/index.d.ts +0 -5
  407. package/dist-npm/traits/npc/index.d.ts.map +0 -1
  408. package/dist-npm/traits/npc/index.js +0 -9
  409. package/dist-npm/traits/npc/index.js.map +0 -1
  410. package/dist-npm/traits/npc/npcTrait.d.ts +0 -128
  411. package/dist-npm/traits/npc/npcTrait.d.ts.map +0 -1
  412. package/dist-npm/traits/npc/npcTrait.js +0 -180
  413. package/dist-npm/traits/npc/npcTrait.js.map +0 -1
  414. package/dist-npm/traits/openable/index.d.ts +0 -3
  415. package/dist-npm/traits/openable/index.d.ts.map +0 -1
  416. package/dist-npm/traits/openable/index.js +0 -20
  417. package/dist-npm/traits/openable/index.js.map +0 -1
  418. package/dist-npm/traits/openable/openableBehavior.d.ts +0 -64
  419. package/dist-npm/traits/openable/openableBehavior.d.ts.map +0 -1
  420. package/dist-npm/traits/openable/openableBehavior.js +0 -109
  421. package/dist-npm/traits/openable/openableBehavior.js.map +0 -1
  422. package/dist-npm/traits/openable/openableTrait.d.ts +0 -46
  423. package/dist-npm/traits/openable/openableTrait.d.ts.map +0 -1
  424. package/dist-npm/traits/openable/openableTrait.js +0 -42
  425. package/dist-npm/traits/openable/openableTrait.js.map +0 -1
  426. package/dist-npm/traits/pullable/index.d.ts +0 -2
  427. package/dist-npm/traits/pullable/index.d.ts.map +0 -1
  428. package/dist-npm/traits/pullable/index.js +0 -18
  429. package/dist-npm/traits/pullable/index.js.map +0 -1
  430. package/dist-npm/traits/pullable/pullableTrait.d.ts +0 -81
  431. package/dist-npm/traits/pullable/pullableTrait.d.ts.map +0 -1
  432. package/dist-npm/traits/pullable/pullableTrait.js +0 -44
  433. package/dist-npm/traits/pullable/pullableTrait.js.map +0 -1
  434. package/dist-npm/traits/pushable/index.d.ts +0 -2
  435. package/dist-npm/traits/pushable/index.d.ts.map +0 -1
  436. package/dist-npm/traits/pushable/index.js +0 -18
  437. package/dist-npm/traits/pushable/index.js.map +0 -1
  438. package/dist-npm/traits/pushable/pushableTrait.d.ts +0 -81
  439. package/dist-npm/traits/pushable/pushableTrait.d.ts.map +0 -1
  440. package/dist-npm/traits/pushable/pushableTrait.js +0 -44
  441. package/dist-npm/traits/pushable/pushableTrait.js.map +0 -1
  442. package/dist-npm/traits/readable/index.d.ts +0 -3
  443. package/dist-npm/traits/readable/index.d.ts.map +0 -1
  444. package/dist-npm/traits/readable/index.js +0 -9
  445. package/dist-npm/traits/readable/index.js.map +0 -1
  446. package/dist-npm/traits/readable/readableBehavior.d.ts +0 -42
  447. package/dist-npm/traits/readable/readableBehavior.d.ts.map +0 -1
  448. package/dist-npm/traits/readable/readableBehavior.js +0 -174
  449. package/dist-npm/traits/readable/readableBehavior.js.map +0 -1
  450. package/dist-npm/traits/readable/readableTrait.d.ts +0 -37
  451. package/dist-npm/traits/readable/readableTrait.d.ts.map +0 -1
  452. package/dist-npm/traits/readable/readableTrait.js +0 -51
  453. package/dist-npm/traits/readable/readableTrait.js.map +0 -1
  454. package/dist-npm/traits/register-all.d.ts +0 -10
  455. package/dist-npm/traits/register-all.d.ts.map +0 -1
  456. package/dist-npm/traits/register-all.js +0 -19
  457. package/dist-npm/traits/register-all.js.map +0 -1
  458. package/dist-npm/traits/room/index.d.ts +0 -9
  459. package/dist-npm/traits/room/index.d.ts.map +0 -1
  460. package/dist-npm/traits/room/index.js +0 -14
  461. package/dist-npm/traits/room/index.js.map +0 -1
  462. package/dist-npm/traits/room/roomBehavior.d.ts +0 -87
  463. package/dist-npm/traits/room/roomBehavior.d.ts.map +0 -1
  464. package/dist-npm/traits/room/roomBehavior.js +0 -232
  465. package/dist-npm/traits/room/roomBehavior.js.map +0 -1
  466. package/dist-npm/traits/room/roomTrait.d.ts +0 -101
  467. package/dist-npm/traits/room/roomTrait.d.ts.map +0 -1
  468. package/dist-npm/traits/room/roomTrait.js +0 -59
  469. package/dist-npm/traits/room/roomTrait.js.map +0 -1
  470. package/dist-npm/traits/scenery/index.d.ts +0 -3
  471. package/dist-npm/traits/scenery/index.d.ts.map +0 -1
  472. package/dist-npm/traits/scenery/index.js +0 -9
  473. package/dist-npm/traits/scenery/index.js.map +0 -1
  474. package/dist-npm/traits/scenery/sceneryBehavior.d.ts +0 -21
  475. package/dist-npm/traits/scenery/sceneryBehavior.d.ts.map +0 -1
  476. package/dist-npm/traits/scenery/sceneryBehavior.js +0 -42
  477. package/dist-npm/traits/scenery/sceneryBehavior.js.map +0 -1
  478. package/dist-npm/traits/scenery/sceneryTrait.d.ts +0 -30
  479. package/dist-npm/traits/scenery/sceneryTrait.d.ts.map +0 -1
  480. package/dist-npm/traits/scenery/sceneryTrait.js +0 -39
  481. package/dist-npm/traits/scenery/sceneryTrait.js.map +0 -1
  482. package/dist-npm/traits/story-info/index.d.ts +0 -2
  483. package/dist-npm/traits/story-info/index.d.ts.map +0 -1
  484. package/dist-npm/traits/story-info/index.js +0 -6
  485. package/dist-npm/traits/story-info/index.js.map +0 -1
  486. package/dist-npm/traits/story-info/storyInfoTrait.d.ts +0 -22
  487. package/dist-npm/traits/story-info/storyInfoTrait.d.ts.map +0 -1
  488. package/dist-npm/traits/story-info/storyInfoTrait.js +0 -30
  489. package/dist-npm/traits/story-info/storyInfoTrait.js.map +0 -1
  490. package/dist-npm/traits/supporter/index.d.ts +0 -3
  491. package/dist-npm/traits/supporter/index.d.ts.map +0 -1
  492. package/dist-npm/traits/supporter/index.js +0 -9
  493. package/dist-npm/traits/supporter/index.js.map +0 -1
  494. package/dist-npm/traits/supporter/supporterBehavior.d.ts +0 -83
  495. package/dist-npm/traits/supporter/supporterBehavior.d.ts.map +0 -1
  496. package/dist-npm/traits/supporter/supporterBehavior.js +0 -210
  497. package/dist-npm/traits/supporter/supporterBehavior.js.map +0 -1
  498. package/dist-npm/traits/supporter/supporterTrait.d.ts +0 -26
  499. package/dist-npm/traits/supporter/supporterTrait.d.ts.map +0 -1
  500. package/dist-npm/traits/supporter/supporterTrait.js +0 -30
  501. package/dist-npm/traits/supporter/supporterTrait.js.map +0 -1
  502. package/dist-npm/traits/switchable/index.d.ts +0 -3
  503. package/dist-npm/traits/switchable/index.d.ts.map +0 -1
  504. package/dist-npm/traits/switchable/index.js +0 -20
  505. package/dist-npm/traits/switchable/index.js.map +0 -1
  506. package/dist-npm/traits/switchable/switchableBehavior.d.ts +0 -73
  507. package/dist-npm/traits/switchable/switchableBehavior.d.ts.map +0 -1
  508. package/dist-npm/traits/switchable/switchableBehavior.js +0 -191
  509. package/dist-npm/traits/switchable/switchableBehavior.js.map +0 -1
  510. package/dist-npm/traits/switchable/switchableTrait.d.ts +0 -61
  511. package/dist-npm/traits/switchable/switchableTrait.d.ts.map +0 -1
  512. package/dist-npm/traits/switchable/switchableTrait.js +0 -52
  513. package/dist-npm/traits/switchable/switchableTrait.js.map +0 -1
  514. package/dist-npm/traits/trait-types.d.ts +0 -82
  515. package/dist-npm/traits/trait-types.d.ts.map +0 -1
  516. package/dist-npm/traits/trait-types.js +0 -150
  517. package/dist-npm/traits/trait-types.js.map +0 -1
  518. package/dist-npm/traits/trait.d.ts +0 -44
  519. package/dist-npm/traits/trait.d.ts.map +0 -1
  520. package/dist-npm/traits/trait.js +0 -42
  521. package/dist-npm/traits/trait.js.map +0 -1
  522. package/dist-npm/traits/vehicle/index.d.ts +0 -6
  523. package/dist-npm/traits/vehicle/index.d.ts.map +0 -1
  524. package/dist-npm/traits/vehicle/index.js +0 -22
  525. package/dist-npm/traits/vehicle/index.js.map +0 -1
  526. package/dist-npm/traits/vehicle/vehicleBehavior.d.ts +0 -62
  527. package/dist-npm/traits/vehicle/vehicleBehavior.d.ts.map +0 -1
  528. package/dist-npm/traits/vehicle/vehicleBehavior.js +0 -145
  529. package/dist-npm/traits/vehicle/vehicleBehavior.js.map +0 -1
  530. package/dist-npm/traits/vehicle/vehicleTrait.d.ts +0 -77
  531. package/dist-npm/traits/vehicle/vehicleTrait.d.ts.map +0 -1
  532. package/dist-npm/traits/vehicle/vehicleTrait.js +0 -92
  533. package/dist-npm/traits/vehicle/vehicleTrait.js.map +0 -1
  534. package/dist-npm/traits/weapon/index.d.ts +0 -3
  535. package/dist-npm/traits/weapon/index.d.ts.map +0 -1
  536. package/dist-npm/traits/weapon/index.js +0 -8
  537. package/dist-npm/traits/weapon/index.js.map +0 -1
  538. package/dist-npm/traits/weapon/weaponBehavior.d.ts +0 -47
  539. package/dist-npm/traits/weapon/weaponBehavior.d.ts.map +0 -1
  540. package/dist-npm/traits/weapon/weaponBehavior.js +0 -106
  541. package/dist-npm/traits/weapon/weaponBehavior.js.map +0 -1
  542. package/dist-npm/traits/weapon/weaponTrait.d.ts +0 -67
  543. package/dist-npm/traits/weapon/weaponTrait.d.ts.map +0 -1
  544. package/dist-npm/traits/weapon/weaponTrait.js +0 -60
  545. package/dist-npm/traits/weapon/weaponTrait.js.map +0 -1
  546. package/dist-npm/traits/wearable/index.d.ts +0 -3
  547. package/dist-npm/traits/wearable/index.d.ts.map +0 -1
  548. package/dist-npm/traits/wearable/index.js +0 -20
  549. package/dist-npm/traits/wearable/index.js.map +0 -1
  550. package/dist-npm/traits/wearable/wearableBehavior.d.ts +0 -64
  551. package/dist-npm/traits/wearable/wearableBehavior.d.ts.map +0 -1
  552. package/dist-npm/traits/wearable/wearableBehavior.js +0 -142
  553. package/dist-npm/traits/wearable/wearableBehavior.js.map +0 -1
  554. package/dist-npm/traits/wearable/wearableTrait.d.ts +0 -54
  555. package/dist-npm/traits/wearable/wearableTrait.d.ts.map +0 -1
  556. package/dist-npm/traits/wearable/wearableTrait.js +0 -53
  557. package/dist-npm/traits/wearable/wearableTrait.js.map +0 -1
  558. package/dist-npm/utils/event-utils.d.ts +0 -30
  559. package/dist-npm/utils/event-utils.d.ts.map +0 -1
  560. package/dist-npm/utils/event-utils.js +0 -33
  561. package/dist-npm/utils/event-utils.js.map +0 -1
  562. package/dist-npm/world/AuthorModel.d.ts +0 -151
  563. package/dist-npm/world/AuthorModel.d.ts.map +0 -1
  564. package/dist-npm/world/AuthorModel.js +0 -416
  565. package/dist-npm/world/AuthorModel.js.map +0 -1
  566. package/dist-npm/world/SharedDataStore.d.ts +0 -24
  567. package/dist-npm/world/SharedDataStore.d.ts.map +0 -1
  568. package/dist-npm/world/SharedDataStore.js +0 -50
  569. package/dist-npm/world/SharedDataStore.js.map +0 -1
  570. package/dist-npm/world/SpatialIndex.d.ts +0 -16
  571. package/dist-npm/world/SpatialIndex.d.ts.map +0 -1
  572. package/dist-npm/world/SpatialIndex.js +0 -117
  573. package/dist-npm/world/SpatialIndex.js.map +0 -1
  574. package/dist-npm/world/VisibilityBehavior.d.ts +0 -83
  575. package/dist-npm/world/VisibilityBehavior.d.ts.map +0 -1
  576. package/dist-npm/world/VisibilityBehavior.js +0 -484
  577. package/dist-npm/world/VisibilityBehavior.js.map +0 -1
  578. package/dist-npm/world/WorldModel.d.ts +0 -301
  579. package/dist-npm/world/WorldModel.d.ts.map +0 -1
  580. package/dist-npm/world/WorldModel.js +0 -1085
  581. package/dist-npm/world/WorldModel.js.map +0 -1
  582. package/dist-npm/world/capabilities.d.ts +0 -36
  583. package/dist-npm/world/capabilities.d.ts.map +0 -1
  584. package/dist-npm/world/capabilities.js +0 -18
  585. package/dist-npm/world/capabilities.js.map +0 -1
  586. package/dist-npm/world/index.d.ts +0 -7
  587. package/dist-npm/world/index.d.ts.map +0 -1
  588. package/dist-npm/world/index.js +0 -21
  589. package/dist-npm/world/index.js.map +0 -1
@@ -1,73 +0,0 @@
1
- import { Behavior } from '../../behaviors/behavior';
2
- import { IFEntity } from '../../entities/if-entity';
3
- import { ISemanticEvent } from "../../../../core/dist-npm/src/index";
4
- export interface ISwitchOnResult {
5
- success: boolean;
6
- wasOn?: boolean;
7
- noPower?: boolean;
8
- autoOffTime?: number;
9
- powerConsumption?: number;
10
- runningSound?: string;
11
- onSound?: string;
12
- onMessage?: string;
13
- }
14
- export interface ISwitchOffResult {
15
- success: boolean;
16
- wasOff?: boolean;
17
- offSound?: string;
18
- offMessage?: string;
19
- }
20
- /**
21
- * Behavior for switchable entities.
22
- *
23
- * Handles the logic for turning devices on and off.
24
- */
25
- export declare class SwitchableBehavior extends Behavior {
26
- static requiredTraits: "switchable"[];
27
- /**
28
- * Check if the device can be turned on
29
- */
30
- static canSwitchOn(entity: IFEntity): boolean;
31
- /**
32
- * Check if the device can be turned off
33
- */
34
- static canSwitchOff(entity: IFEntity): boolean;
35
- /**
36
- * Turn the entity on
37
- * @returns Result object describing what happened
38
- */
39
- static switchOn(entity: IFEntity): ISwitchOnResult;
40
- /**
41
- * Turn the entity off
42
- * @returns Result object describing what happened
43
- */
44
- static switchOff(entity: IFEntity): ISwitchOffResult;
45
- /**
46
- * Toggle on/off state
47
- * @returns Result from either switch on or off
48
- */
49
- static toggle(entity: IFEntity): ISwitchOnResult | ISwitchOffResult;
50
- /**
51
- * Update power state
52
- * @returns Events if device was forced off due to power loss
53
- */
54
- static setPower(entity: IFEntity, hasPower: boolean): ISemanticEvent[];
55
- /**
56
- * Process turn-based updates (for auto-off)
57
- * @returns Events if device auto-turned off
58
- */
59
- static updateTurn(entity: IFEntity): ISemanticEvent[];
60
- /**
61
- * Check if entity is currently on
62
- */
63
- static isOn(entity: IFEntity): boolean;
64
- /**
65
- * Get time remaining before auto-off
66
- */
67
- static getTimeRemaining(entity: IFEntity): number;
68
- /**
69
- * Get power consumption
70
- */
71
- static getPowerConsumption(entity: IFEntity): number;
72
- }
73
- //# sourceMappingURL=switchableBehavior.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"switchableBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/traits/switchable/switchableBehavior.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAI/C,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,qBAAa,kBAAmB,SAAQ,QAAQ;IAC9C,MAAM,CAAC,cAAc,iBAA0B;IAE/C;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO;IAS7C;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO;IAK9C;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,eAAe;IAmClD;;;OAGG;IACH,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,GAAG,gBAAgB;IAqBpD;;;OAGG;IACH,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,GAAG,eAAe,GAAG,gBAAgB;IAUnE;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,GAAG,cAAc,EAAE;IA4CtE;;;OAGG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,GAAG,cAAc,EAAE;IA2BrD;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO;IAKtC;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM;IAKjD;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM;CAIrD"}
@@ -1,191 +0,0 @@
1
- "use strict";
2
- // packages/world-model/src/traits/switchable/switchableBehavior.ts
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.SwitchableBehavior = void 0;
5
- const behavior_1 = require("../../behaviors/behavior");
6
- const trait_types_1 = require("../trait-types");
7
- const if_events_1 = require("../../constants/if-events");
8
- /**
9
- * Behavior for switchable entities.
10
- *
11
- * Handles the logic for turning devices on and off.
12
- */
13
- class SwitchableBehavior extends behavior_1.Behavior {
14
- static requiredTraits = [trait_types_1.TraitType.SWITCHABLE];
15
- /**
16
- * Check if the device can be turned on
17
- */
18
- static canSwitchOn(entity) {
19
- const switchable = SwitchableBehavior.require(entity, trait_types_1.TraitType.SWITCHABLE);
20
- if (switchable.isOn)
21
- return false;
22
- if (switchable.requiresPower && !switchable.hasPower)
23
- return false;
24
- return true;
25
- }
26
- /**
27
- * Check if the device can be turned off
28
- */
29
- static canSwitchOff(entity) {
30
- const switchable = SwitchableBehavior.require(entity, trait_types_1.TraitType.SWITCHABLE);
31
- return switchable.isOn;
32
- }
33
- /**
34
- * Turn the entity on
35
- * @returns Result object describing what happened
36
- */
37
- static switchOn(entity) {
38
- const switchable = SwitchableBehavior.require(entity, trait_types_1.TraitType.SWITCHABLE);
39
- if (switchable.isOn) {
40
- return {
41
- success: false,
42
- wasOn: true
43
- };
44
- }
45
- if (switchable.requiresPower && !switchable.hasPower) {
46
- return {
47
- success: false,
48
- noPower: true
49
- };
50
- }
51
- // Turn it on
52
- switchable.isOn = true;
53
- // Set auto-off timer
54
- if (switchable.autoOffTime > 0) {
55
- switchable.autoOffCounter = switchable.autoOffTime;
56
- }
57
- return {
58
- success: true,
59
- autoOffTime: switchable.autoOffTime > 0 ? switchable.autoOffTime : undefined,
60
- powerConsumption: switchable.powerConsumption,
61
- runningSound: switchable.runningSound,
62
- onSound: switchable.onSound,
63
- onMessage: switchable.onMessage
64
- };
65
- }
66
- /**
67
- * Turn the entity off
68
- * @returns Result object describing what happened
69
- */
70
- static switchOff(entity) {
71
- const switchable = SwitchableBehavior.require(entity, trait_types_1.TraitType.SWITCHABLE);
72
- if (!switchable.isOn) {
73
- return {
74
- success: false,
75
- wasOff: true
76
- };
77
- }
78
- // Turn it off
79
- switchable.isOn = false;
80
- switchable.autoOffCounter = 0;
81
- return {
82
- success: true,
83
- offSound: switchable.offSound,
84
- offMessage: switchable.offMessage
85
- };
86
- }
87
- /**
88
- * Toggle on/off state
89
- * @returns Result from either switch on or off
90
- */
91
- static toggle(entity) {
92
- const switchable = SwitchableBehavior.require(entity, trait_types_1.TraitType.SWITCHABLE);
93
- if (switchable.isOn) {
94
- return this.switchOff(entity);
95
- }
96
- else {
97
- return this.switchOn(entity);
98
- }
99
- }
100
- /**
101
- * Update power state
102
- * @returns Events if device was forced off due to power loss
103
- */
104
- static setPower(entity, hasPower) {
105
- const switchable = SwitchableBehavior.require(entity, trait_types_1.TraitType.SWITCHABLE);
106
- const hadPower = switchable.hasPower;
107
- switchable.hasPower = hasPower;
108
- // Turn off if loses power while on
109
- if (!hasPower && switchable.isOn && switchable.requiresPower) {
110
- switchable.isOn = false;
111
- switchable.autoOffCounter = 0;
112
- return [{
113
- id: `${Date.now()}-${Math.random()}`,
114
- timestamp: Date.now(),
115
- type: if_events_1.IFEvents.DEVICE_SWITCHED_OFF,
116
- entities: {
117
- target: entity.id
118
- },
119
- data: {
120
- reason: 'power_loss',
121
- customMessage: "The device powers down as it loses power."
122
- }
123
- }];
124
- }
125
- // Notify if power restored
126
- if (hasPower && !hadPower) {
127
- return [{
128
- id: `${Date.now()}-${Math.random()}`,
129
- timestamp: Date.now(),
130
- type: if_events_1.IFEvents.DEVICE_ACTIVATED,
131
- entities: {
132
- target: entity.id
133
- },
134
- data: {
135
- reason: 'power_restored',
136
- customMessage: "Power is restored to the device."
137
- }
138
- }];
139
- }
140
- return [];
141
- }
142
- /**
143
- * Process turn-based updates (for auto-off)
144
- * @returns Events if device auto-turned off
145
- */
146
- static updateTurn(entity) {
147
- const switchable = SwitchableBehavior.require(entity, trait_types_1.TraitType.SWITCHABLE);
148
- if (switchable.isOn && switchable.autoOffCounter > 0) {
149
- switchable.autoOffCounter--;
150
- if (switchable.autoOffCounter === 0) {
151
- switchable.isOn = false;
152
- return [{
153
- id: `${Date.now()}-${Math.random()}`,
154
- timestamp: Date.now(),
155
- type: if_events_1.IFEvents.DEVICE_SWITCHED_OFF,
156
- entities: {
157
- target: entity.id
158
- },
159
- data: {
160
- reason: 'auto_off',
161
- customMessage: "The device automatically switches off."
162
- }
163
- }];
164
- }
165
- }
166
- return [];
167
- }
168
- /**
169
- * Check if entity is currently on
170
- */
171
- static isOn(entity) {
172
- const switchable = SwitchableBehavior.require(entity, trait_types_1.TraitType.SWITCHABLE);
173
- return switchable.isOn;
174
- }
175
- /**
176
- * Get time remaining before auto-off
177
- */
178
- static getTimeRemaining(entity) {
179
- const switchable = SwitchableBehavior.require(entity, trait_types_1.TraitType.SWITCHABLE);
180
- return switchable.isOn ? switchable.autoOffCounter : 0;
181
- }
182
- /**
183
- * Get power consumption
184
- */
185
- static getPowerConsumption(entity) {
186
- const switchable = SwitchableBehavior.require(entity, trait_types_1.TraitType.SWITCHABLE);
187
- return switchable.isOn ? switchable.powerConsumption : 0;
188
- }
189
- }
190
- exports.SwitchableBehavior = SwitchableBehavior;
191
- //# sourceMappingURL=switchableBehavior.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"switchableBehavior.js","sourceRoot":"","sources":["../../../../../../src/traits/switchable/switchableBehavior.ts"],"names":[],"mappings":"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"}
@@ -1,61 +0,0 @@
1
- import { ITrait } from '../trait';
2
- export interface ISwitchableData {
3
- /** Whether the entity is currently on */
4
- isOn?: boolean;
5
- /** Whether the entity starts on */
6
- startsOn?: boolean;
7
- /** Power consumption when on (arbitrary units) */
8
- powerConsumption?: number;
9
- /** Whether this requires power to operate */
10
- requiresPower?: boolean;
11
- /** Whether power is currently available */
12
- hasPower?: boolean;
13
- /** Custom message when turning on */
14
- onMessage?: string;
15
- /** Custom message when turning off */
16
- offMessage?: string;
17
- /** Custom message when already on */
18
- alreadyOnMessage?: string;
19
- /** Custom message when already off */
20
- alreadyOffMessage?: string;
21
- /** Custom message when no power available */
22
- noPowerMessage?: string;
23
- /** Sound made when switching on */
24
- onSound?: string;
25
- /** Sound made when switching off */
26
- offSound?: string;
27
- /** Continuous sound while on */
28
- runningSound?: string;
29
- /** Time in turns before auto-off (0 = never) */
30
- autoOffTime?: number;
31
- /** Turns remaining before auto-off */
32
- autoOffCounter?: number;
33
- }
34
- /**
35
- * Switchable trait for entities that can be turned on and off.
36
- * Used for lights, machines, devices, etc.
37
- *
38
- * This trait contains only data - all switching logic
39
- * is in SwitchableBehavior.
40
- */
41
- export declare class SwitchableTrait implements ITrait, ISwitchableData {
42
- static readonly type: "switchable";
43
- readonly type: "switchable";
44
- isOn: boolean;
45
- startsOn: boolean;
46
- powerConsumption: number;
47
- requiresPower: boolean;
48
- hasPower: boolean;
49
- onMessage?: string;
50
- offMessage?: string;
51
- alreadyOnMessage?: string;
52
- alreadyOffMessage?: string;
53
- noPowerMessage?: string;
54
- onSound?: string;
55
- offSound?: string;
56
- runningSound?: string;
57
- autoOffTime: number;
58
- autoOffCounter: number;
59
- constructor(data?: ISwitchableData);
60
- }
61
- //# sourceMappingURL=switchableTrait.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"switchableTrait.d.ts","sourceRoot":"","sources":["../../../../../../src/traits/switchable/switchableTrait.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,MAAM,WAAW,eAAe;IAC9B,yCAAyC;IACzC,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,mCAAmC;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,6CAA6C;IAC7C,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,qCAAqC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,qCAAqC;IACrC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,sCAAsC;IACtC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,6CAA6C;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,gCAAgC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,gDAAgD;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,sCAAsC;IACtC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;GAMG;AACH,qBAAa,eAAgB,YAAW,MAAM,EAAE,eAAe;IAC7D,MAAM,CAAC,QAAQ,CAAC,IAAI,eAAwB;IAC5C,QAAQ,CAAC,IAAI,eAAwB;IAGrC,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;gBAEX,IAAI,GAAE,eAAoB;CAkBvC"}
@@ -1,52 +0,0 @@
1
- "use strict";
2
- // packages/world-model/src/traits/switchable/switchableTrait.ts
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.SwitchableTrait = void 0;
5
- const trait_types_1 = require("../trait-types");
6
- /**
7
- * Switchable trait for entities that can be turned on and off.
8
- * Used for lights, machines, devices, etc.
9
- *
10
- * This trait contains only data - all switching logic
11
- * is in SwitchableBehavior.
12
- */
13
- class SwitchableTrait {
14
- static type = trait_types_1.TraitType.SWITCHABLE;
15
- type = trait_types_1.TraitType.SWITCHABLE;
16
- // SwitchableData properties
17
- isOn;
18
- startsOn;
19
- powerConsumption;
20
- requiresPower;
21
- hasPower;
22
- onMessage;
23
- offMessage;
24
- alreadyOnMessage;
25
- alreadyOffMessage;
26
- noPowerMessage;
27
- onSound;
28
- offSound;
29
- runningSound;
30
- autoOffTime;
31
- autoOffCounter;
32
- constructor(data = {}) {
33
- // Set defaults and merge with provided data
34
- this.startsOn = data.startsOn ?? false;
35
- this.requiresPower = data.requiresPower ?? false;
36
- this.hasPower = data.hasPower ?? true;
37
- this.isOn = data.isOn ?? (this.startsOn && this.hasPower);
38
- this.powerConsumption = data.powerConsumption ?? 1;
39
- this.onMessage = data.onMessage;
40
- this.offMessage = data.offMessage;
41
- this.alreadyOnMessage = data.alreadyOnMessage;
42
- this.alreadyOffMessage = data.alreadyOffMessage;
43
- this.noPowerMessage = data.noPowerMessage;
44
- this.onSound = data.onSound;
45
- this.offSound = data.offSound;
46
- this.runningSound = data.runningSound;
47
- this.autoOffTime = data.autoOffTime ?? 0;
48
- this.autoOffCounter = data.autoOffCounter ?? (this.isOn && this.autoOffTime > 0 ? this.autoOffTime : 0);
49
- }
50
- }
51
- exports.SwitchableTrait = SwitchableTrait;
52
- //# sourceMappingURL=switchableTrait.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"switchableTrait.js","sourceRoot":"","sources":["../../../../../../src/traits/switchable/switchableTrait.ts"],"names":[],"mappings":";AAAA,gEAAgE;;;AAGhE,gDAA2C;AAiD3C;;;;;;GAMG;AACH,MAAa,eAAe;IAC1B,MAAM,CAAU,IAAI,GAAG,uBAAS,CAAC,UAAU,CAAC;IACnC,IAAI,GAAG,uBAAS,CAAC,UAAU,CAAC;IAErC,4BAA4B;IAC5B,IAAI,CAAU;IACd,QAAQ,CAAU;IAClB,gBAAgB,CAAS;IACzB,aAAa,CAAU;IACvB,QAAQ,CAAU;IAClB,SAAS,CAAU;IACnB,UAAU,CAAU;IACpB,gBAAgB,CAAU;IAC1B,iBAAiB,CAAU;IAC3B,cAAc,CAAU;IACxB,OAAO,CAAU;IACjB,QAAQ,CAAU;IAClB,YAAY,CAAU;IACtB,WAAW,CAAS;IACpB,cAAc,CAAS;IAEvB,YAAY,OAAwB,EAAE;QACpC,4CAA4C;QAC5C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC;QACvC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,KAAK,CAAC;QACjD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC;QACtC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC9C,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAChD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC1C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1G,CAAC;;AAtCH,0CAuCC"}
@@ -1,82 +0,0 @@
1
- /**
2
- * Centralized trait type definitions
3
- *
4
- * All trait types used in the world model system
5
- */
6
- /**
7
- * Trait types as a const object for extensibility
8
- */
9
- export declare const TraitType: {
10
- readonly IDENTITY: "identity";
11
- readonly CONTAINER: "container";
12
- readonly SUPPORTER: "supporter";
13
- readonly ROOM: "room";
14
- readonly WEARABLE: "wearable";
15
- readonly CLOTHING: "clothing";
16
- readonly EDIBLE: "edible";
17
- readonly SCENERY: "scenery";
18
- readonly OPENABLE: "openable";
19
- readonly LOCKABLE: "lockable";
20
- readonly SWITCHABLE: "switchable";
21
- readonly READABLE: "readable";
22
- readonly LIGHT_SOURCE: "lightSource";
23
- readonly PULLABLE: "pullable";
24
- readonly ATTACHED: "attached";
25
- readonly PUSHABLE: "pushable";
26
- readonly BUTTON: "button";
27
- readonly MOVEABLE_SCENERY: "moveableScenery";
28
- readonly DOOR: "door";
29
- readonly CLIMBABLE: "climbable";
30
- readonly ACTOR: "actor";
31
- readonly EXIT: "exit";
32
- readonly WEAPON: "weapon";
33
- readonly BREAKABLE: "breakable";
34
- readonly DESTRUCTIBLE: "destructible";
35
- readonly COMBATANT: "combatant";
36
- readonly EQUIPPED: "equipped";
37
- readonly NPC: "npc";
38
- readonly VEHICLE: "vehicle";
39
- readonly ENTERABLE: "enterable";
40
- readonly STORY_INFO: "storyInfo";
41
- };
42
- /**
43
- * Type for trait type values
44
- */
45
- export type TraitType = typeof TraitType[keyof typeof TraitType];
46
- /**
47
- * Trait categories for organization
48
- */
49
- export declare const TraitCategory: {
50
- readonly STANDARD: "standard";
51
- readonly INTERACTIVE: "interactive";
52
- readonly ADVANCED: "advanced";
53
- };
54
- /**
55
- * Type for trait category values
56
- */
57
- export type TraitCategory = typeof TraitCategory[keyof typeof TraitCategory];
58
- /**
59
- * Map trait types to categories
60
- */
61
- export declare const TRAIT_CATEGORIES: Record<TraitType, TraitCategory>;
62
- /**
63
- * Helper to check if a trait type exists
64
- */
65
- export declare function isValidTraitType(type: string): type is TraitType;
66
- /**
67
- * Get trait category
68
- */
69
- export declare function getTraitCategory(type: TraitType): TraitCategory;
70
- /**
71
- * Get all trait types in a category
72
- */
73
- export declare function getTraitsByCategory(category: TraitCategory): TraitType[];
74
- /**
75
- * Get all trait types
76
- */
77
- export declare function getAllTraitTypes(): TraitType[];
78
- /**
79
- * Add a new trait type at runtime (for extensions)
80
- */
81
- export declare function registerTraitType(name: string, value: string, category?: TraitCategory): void;
82
- //# sourceMappingURL=trait-types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"trait-types.d.ts","sourceRoot":"","sources":["../../../../../src/traits/trait-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDZ,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,MAAM,OAAO,SAAS,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,aAAa;;;;CAIhB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,SAAS,EAAE,aAAa,CAmD7D,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,SAAS,CAEhE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,GAAG,aAAa,CAE/D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,EAAE,CAIxE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,SAAS,EAAE,CAE9C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,aAAsC,GAAG,IAAI,CAMrH"}
@@ -1,150 +0,0 @@
1
- "use strict";
2
- /**
3
- * Centralized trait type definitions
4
- *
5
- * All trait types used in the world model system
6
- */
7
- Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.TRAIT_CATEGORIES = exports.TraitCategory = exports.TraitType = void 0;
9
- exports.isValidTraitType = isValidTraitType;
10
- exports.getTraitCategory = getTraitCategory;
11
- exports.getTraitsByCategory = getTraitsByCategory;
12
- exports.getAllTraitTypes = getAllTraitTypes;
13
- exports.registerTraitType = registerTraitType;
14
- /**
15
- * Trait types as a const object for extensibility
16
- */
17
- exports.TraitType = {
18
- // Standard traits
19
- IDENTITY: 'identity',
20
- CONTAINER: 'container',
21
- SUPPORTER: 'supporter',
22
- ROOM: 'room',
23
- WEARABLE: 'wearable',
24
- CLOTHING: 'clothing',
25
- EDIBLE: 'edible',
26
- SCENERY: 'scenery',
27
- // Interactive traits
28
- OPENABLE: 'openable',
29
- LOCKABLE: 'lockable',
30
- SWITCHABLE: 'switchable',
31
- READABLE: 'readable',
32
- LIGHT_SOURCE: 'lightSource',
33
- // Manipulation traits
34
- PULLABLE: 'pullable',
35
- ATTACHED: 'attached',
36
- PUSHABLE: 'pushable',
37
- BUTTON: 'button',
38
- MOVEABLE_SCENERY: 'moveableScenery',
39
- // Spatial traits
40
- DOOR: 'door',
41
- CLIMBABLE: 'climbable',
42
- // Object property traits
43
- // Basic traits
44
- ACTOR: 'actor',
45
- // New traits
46
- EXIT: 'exit',
47
- // Combat traits
48
- WEAPON: 'weapon',
49
- BREAKABLE: 'breakable',
50
- DESTRUCTIBLE: 'destructible',
51
- COMBATANT: 'combatant',
52
- EQUIPPED: 'equipped',
53
- // NPC traits (ADR-070)
54
- NPC: 'npc',
55
- // Transport traits
56
- VEHICLE: 'vehicle',
57
- ENTERABLE: 'enterable',
58
- // System traits
59
- STORY_INFO: 'storyInfo'
60
- };
61
- /**
62
- * Trait categories for organization
63
- */
64
- exports.TraitCategory = {
65
- STANDARD: 'standard',
66
- INTERACTIVE: 'interactive',
67
- ADVANCED: 'advanced'
68
- };
69
- /**
70
- * Map trait types to categories
71
- */
72
- exports.TRAIT_CATEGORIES = {
73
- // Standard
74
- [exports.TraitType.IDENTITY]: exports.TraitCategory.STANDARD,
75
- [exports.TraitType.CONTAINER]: exports.TraitCategory.STANDARD,
76
- [exports.TraitType.SUPPORTER]: exports.TraitCategory.STANDARD,
77
- [exports.TraitType.ROOM]: exports.TraitCategory.STANDARD,
78
- [exports.TraitType.WEARABLE]: exports.TraitCategory.STANDARD,
79
- [exports.TraitType.CLOTHING]: exports.TraitCategory.STANDARD,
80
- [exports.TraitType.EDIBLE]: exports.TraitCategory.STANDARD,
81
- [exports.TraitType.SCENERY]: exports.TraitCategory.STANDARD,
82
- // Interactive
83
- [exports.TraitType.OPENABLE]: exports.TraitCategory.INTERACTIVE,
84
- [exports.TraitType.LOCKABLE]: exports.TraitCategory.INTERACTIVE,
85
- [exports.TraitType.SWITCHABLE]: exports.TraitCategory.INTERACTIVE,
86
- [exports.TraitType.READABLE]: exports.TraitCategory.INTERACTIVE,
87
- [exports.TraitType.LIGHT_SOURCE]: exports.TraitCategory.INTERACTIVE,
88
- // Manipulation
89
- [exports.TraitType.PULLABLE]: exports.TraitCategory.INTERACTIVE,
90
- [exports.TraitType.ATTACHED]: exports.TraitCategory.INTERACTIVE,
91
- [exports.TraitType.PUSHABLE]: exports.TraitCategory.INTERACTIVE,
92
- [exports.TraitType.BUTTON]: exports.TraitCategory.INTERACTIVE,
93
- [exports.TraitType.MOVEABLE_SCENERY]: exports.TraitCategory.INTERACTIVE,
94
- // Spatial
95
- [exports.TraitType.DOOR]: exports.TraitCategory.STANDARD,
96
- [exports.TraitType.CLIMBABLE]: exports.TraitCategory.INTERACTIVE,
97
- [exports.TraitType.EXIT]: exports.TraitCategory.STANDARD,
98
- // Object property
99
- // Basic
100
- [exports.TraitType.ACTOR]: exports.TraitCategory.STANDARD,
101
- // Combat
102
- [exports.TraitType.WEAPON]: exports.TraitCategory.INTERACTIVE,
103
- [exports.TraitType.BREAKABLE]: exports.TraitCategory.INTERACTIVE,
104
- [exports.TraitType.DESTRUCTIBLE]: exports.TraitCategory.INTERACTIVE,
105
- [exports.TraitType.COMBATANT]: exports.TraitCategory.INTERACTIVE,
106
- [exports.TraitType.EQUIPPED]: exports.TraitCategory.INTERACTIVE,
107
- // NPC traits
108
- [exports.TraitType.NPC]: exports.TraitCategory.STANDARD,
109
- // Transport traits
110
- [exports.TraitType.VEHICLE]: exports.TraitCategory.INTERACTIVE,
111
- [exports.TraitType.ENTERABLE]: exports.TraitCategory.INTERACTIVE,
112
- // System traits
113
- [exports.TraitType.STORY_INFO]: exports.TraitCategory.STANDARD
114
- };
115
- /**
116
- * Helper to check if a trait type exists
117
- */
118
- function isValidTraitType(type) {
119
- return Object.values(exports.TraitType).includes(type);
120
- }
121
- /**
122
- * Get trait category
123
- */
124
- function getTraitCategory(type) {
125
- return exports.TRAIT_CATEGORIES[type];
126
- }
127
- /**
128
- * Get all trait types in a category
129
- */
130
- function getTraitsByCategory(category) {
131
- return Object.entries(exports.TRAIT_CATEGORIES)
132
- .filter(([_, cat]) => cat === category)
133
- .map(([type, _]) => type);
134
- }
135
- /**
136
- * Get all trait types
137
- */
138
- function getAllTraitTypes() {
139
- return Object.values(exports.TraitType);
140
- }
141
- /**
142
- * Add a new trait type at runtime (for extensions)
143
- */
144
- function registerTraitType(name, value, category = exports.TraitCategory.STANDARD) {
145
- // Add to TraitType object (note: this modifies the const object)
146
- exports.TraitType[name] = value;
147
- // Add to categories
148
- exports.TRAIT_CATEGORIES[value] = category;
149
- }
150
- //# sourceMappingURL=trait-types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"trait-types.js","sourceRoot":"","sources":["../../../../../src/traits/trait-types.ts"],"names":[],"mappings":"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"}