warscript 0.0.1-dev.404878c

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 (493) hide show
  1. package/LICENSE +23 -0
  2. package/binaryreader.d.ts +20 -0
  3. package/binaryreader.lua +50 -0
  4. package/binarywriter.d.ts +21 -0
  5. package/binarywriter.lua +90 -0
  6. package/core/dummy.d.ts +22 -0
  7. package/core/dummy.lua +133 -0
  8. package/core/game.d.ts +3 -0
  9. package/core/game.lua +24 -0
  10. package/core/mapbounds.d.ts +8 -0
  11. package/core/mapbounds.lua +12 -0
  12. package/core/thread.d.ts +8 -0
  13. package/core/thread.lua +40 -0
  14. package/core/types/ability.d.ts +4 -0
  15. package/core/types/ability.lua +10 -0
  16. package/core/types/async.d.ts +3 -0
  17. package/core/types/async.lua +2 -0
  18. package/core/types/camera.d.ts +4 -0
  19. package/core/types/camera.lua +21 -0
  20. package/core/types/cameraField.d.ts +15 -0
  21. package/core/types/cameraField.lua +38 -0
  22. package/core/types/color.d.ts +16 -0
  23. package/core/types/color.lua +93 -0
  24. package/core/types/destructable.d.ts +31 -0
  25. package/core/types/destructable.lua +245 -0
  26. package/core/types/effect.d.ts +31 -0
  27. package/core/types/effect.lua +209 -0
  28. package/core/types/frame.d.ts +140 -0
  29. package/core/types/frame.lua +882 -0
  30. package/core/types/game.d.ts +8 -0
  31. package/core/types/game.lua +41 -0
  32. package/core/types/group.d.ts +22 -0
  33. package/core/types/group.lua +94 -0
  34. package/core/types/handle.d.ts +48 -0
  35. package/core/types/handle.lua +169 -0
  36. package/core/types/image.d.ts +30 -0
  37. package/core/types/image.lua +121 -0
  38. package/core/types/internal/ability+cooldownRemaining.d.ts +1 -0
  39. package/core/types/internal/ability+cooldownRemaining.lua +0 -0
  40. package/core/types/item.d.ts +4 -0
  41. package/core/types/item.lua +6 -0
  42. package/core/types/missile.d.ts +22 -0
  43. package/core/types/missile.lua +233 -0
  44. package/core/types/order.d.ts +25 -0
  45. package/core/types/order.lua +55 -0
  46. package/core/types/player.d.ts +71 -0
  47. package/core/types/player.lua +448 -0
  48. package/core/types/playerCamera.d.ts +32 -0
  49. package/core/types/playerCamera.lua +162 -0
  50. package/core/types/playerColor.d.ts +40 -0
  51. package/core/types/playerColor.lua +203 -0
  52. package/core/types/rect.d.ts +39 -0
  53. package/core/types/rect.lua +152 -0
  54. package/core/types/region.d.ts +14 -0
  55. package/core/types/region.lua +84 -0
  56. package/core/types/sound.d.ts +69 -0
  57. package/core/types/sound.lua +247 -0
  58. package/core/types/tileCell.d.ts +13 -0
  59. package/core/types/tileCell.lua +100 -0
  60. package/core/types/timer.d.ts +36 -0
  61. package/core/types/timer.lua +230 -0
  62. package/core/types/timerDialog.d.ts +19 -0
  63. package/core/types/timerDialog.lua +95 -0
  64. package/core/types/unit.d.ts +10 -0
  65. package/core/types/unit.lua +24 -0
  66. package/core/types/widget.d.ts +5 -0
  67. package/core/types/widget.lua +2 -0
  68. package/core/util.d.ts +62 -0
  69. package/core/util.lua +464 -0
  70. package/core/vecmath/common.d.ts +18 -0
  71. package/core/vecmath/common.lua +29 -0
  72. package/core/vecmath/mat2.d.ts +73 -0
  73. package/core/vecmath/mat2.lua +261 -0
  74. package/core/vecmath/vec3.d.ts +47 -0
  75. package/core/vecmath/vec3.lua +350 -0
  76. package/core/vecmath/vec4.d.ts +54 -0
  77. package/core/vecmath/vec4.lua +400 -0
  78. package/crypto/ecc.d.ts +6 -0
  79. package/crypto/ecc.lua +1734 -0
  80. package/decl/index.d.ts +116 -0
  81. package/decl/native.d.ts +8198 -0
  82. package/destroyable.d.ts +20 -0
  83. package/destroyable.lua +31 -0
  84. package/engine/ability.d.ts +5 -0
  85. package/engine/ability.lua +7 -0
  86. package/engine/behavior.d.ts +28 -0
  87. package/engine/behavior.lua +181 -0
  88. package/engine/behaviour/ability/apply-buff.d.ts +38 -0
  89. package/engine/behaviour/ability/apply-buff.lua +126 -0
  90. package/engine/behaviour/ability/apply-unit-behavior.d.ts +12 -0
  91. package/engine/behaviour/ability/apply-unit-behavior.lua +36 -0
  92. package/engine/behaviour/ability/damage.d.ts +25 -0
  93. package/engine/behaviour/ability/damage.lua +75 -0
  94. package/engine/behaviour/ability/heal.d.ts +16 -0
  95. package/engine/behaviour/ability/heal.lua +35 -0
  96. package/engine/behaviour/ability/instant-impact.d.ts +6 -0
  97. package/engine/behaviour/ability/instant-impact.lua +25 -0
  98. package/engine/behaviour/ability.d.ts +40 -0
  99. package/engine/behaviour/ability.lua +175 -0
  100. package/engine/behaviour/unit/stun-immunity.d.ts +19 -0
  101. package/engine/behaviour/unit/stun-immunity.lua +67 -0
  102. package/engine/behaviour/unit.d.ts +20 -0
  103. package/engine/behaviour/unit.lua +75 -0
  104. package/engine/buff.d.ts +221 -0
  105. package/engine/buff.lua +1093 -0
  106. package/engine/constants.d.ts +7 -0
  107. package/engine/constants.lua +8 -0
  108. package/engine/index.d.ts +5 -0
  109. package/engine/index.lua +2 -0
  110. package/engine/internal/ability.d.ts +91 -0
  111. package/engine/internal/ability.lua +531 -0
  112. package/engine/internal/item/ability.d.ts +2 -0
  113. package/engine/internal/item/ability.lua +48 -0
  114. package/engine/internal/item+owner.d.ts +7 -0
  115. package/engine/internal/item+owner.lua +22 -0
  116. package/engine/internal/item.d.ts +86 -0
  117. package/engine/internal/item.lua +580 -0
  118. package/engine/internal/mechanics/ability-duration.d.ts +4 -0
  119. package/engine/internal/mechanics/ability-duration.lua +11 -0
  120. package/engine/internal/mechanics/area-damage.d.ts +2 -0
  121. package/engine/internal/mechanics/area-damage.lua +33 -0
  122. package/engine/internal/misc/dummy-units.d.ts +2 -0
  123. package/engine/internal/misc/dummy-units.lua +14 -0
  124. package/engine/internal/object-data/armor-increase.d.ts +2 -0
  125. package/engine/internal/object-data/armor-increase.lua +19 -0
  126. package/engine/internal/object-data/attribute-bonus.d.ts +2 -0
  127. package/engine/internal/object-data/attribute-bonus.lua +15 -0
  128. package/engine/internal/object-data/auto-attack-damage-increase.d.ts +2 -0
  129. package/engine/internal/object-data/auto-attack-damage-increase.lua +17 -0
  130. package/engine/internal/object-data/auto-attack-speed-increase.d.ts +2 -0
  131. package/engine/internal/object-data/auto-attack-speed-increase.lua +14 -0
  132. package/engine/internal/object-data/dummy-inventory.d.ts +2 -0
  133. package/engine/internal/object-data/dummy-inventory.lua +16 -0
  134. package/engine/internal/object-data/dummy-item.d.ts +2 -0
  135. package/engine/internal/object-data/dummy-item.lua +10 -0
  136. package/engine/internal/object-data/ghost-visible.d.ts +2 -0
  137. package/engine/internal/object-data/ghost-visible.lua +15 -0
  138. package/engine/internal/object-data/invulnerable.d.ts +2 -0
  139. package/engine/internal/object-data/invulnerable.lua +11 -0
  140. package/engine/internal/object-data/movement-speed-increase-factor.d.ts +2 -0
  141. package/engine/internal/object-data/movement-speed-increase-factor.lua +18 -0
  142. package/engine/internal/unit/ability.d.ts +143 -0
  143. package/engine/internal/unit/ability.lua +369 -0
  144. package/engine/internal/unit/allowed-targets.d.ts +17 -0
  145. package/engine/internal/unit/allowed-targets.lua +19 -0
  146. package/engine/internal/unit/band-aids/ancestral-spirit-cannibalize.d.ts +2 -0
  147. package/engine/internal/unit/band-aids/ancestral-spirit-cannibalize.lua +21 -0
  148. package/engine/internal/unit/bonus.d.ts +41 -0
  149. package/engine/internal/unit/bonus.lua +188 -0
  150. package/engine/internal/unit/buff.d.ts +38 -0
  151. package/engine/internal/unit/buff.lua +81 -0
  152. package/engine/internal/unit/expiration-timer.d.ts +22 -0
  153. package/engine/internal/unit/expiration-timer.lua +44 -0
  154. package/engine/internal/unit/ghost-counter.d.ts +12 -0
  155. package/engine/internal/unit/ghost-counter.lua +26 -0
  156. package/engine/internal/unit/invulnerability-counter.d.ts +12 -0
  157. package/engine/internal/unit/invulnerability-counter.lua +26 -0
  158. package/engine/internal/unit/missile.d.ts +42 -0
  159. package/engine/internal/unit/missile.lua +70 -0
  160. package/engine/internal/unit/movement-speed.d.ts +18 -0
  161. package/engine/internal/unit/movement-speed.lua +42 -0
  162. package/engine/internal/unit/summon-event.d.ts +12 -0
  163. package/engine/internal/unit/summon-event.lua +50 -0
  164. package/engine/internal/unit+ability.d.ts +9 -0
  165. package/engine/internal/unit+ability.lua +59 -0
  166. package/engine/internal/unit+bonus.d.ts +8 -0
  167. package/engine/internal/unit+bonus.lua +40 -0
  168. package/engine/internal/unit+damage.d.ts +69 -0
  169. package/engine/internal/unit+damage.lua +123 -0
  170. package/engine/internal/unit+rally.d.ts +10 -0
  171. package/engine/internal/unit+rally.lua +159 -0
  172. package/engine/internal/unit+spellSteal.d.ts +7 -0
  173. package/engine/internal/unit+spellSteal.lua +64 -0
  174. package/engine/internal/unit+transport.d.ts +12 -0
  175. package/engine/internal/unit+transport.lua +102 -0
  176. package/engine/internal/unit-missile-data.d.ts +2 -0
  177. package/engine/internal/unit-missile-data.lua +107 -0
  178. package/engine/internal/unit-missile-launch.d.ts +7 -0
  179. package/engine/internal/unit-missile-launch.lua +32 -0
  180. package/engine/internal/unit.d.ts +312 -0
  181. package/engine/internal/unit.lua +2430 -0
  182. package/engine/internal/utility.d.ts +2 -0
  183. package/engine/internal/utility.lua +13 -0
  184. package/engine/lightning.d.ts +51 -0
  185. package/engine/lightning.lua +303 -0
  186. package/engine/local-client.d.ts +16 -0
  187. package/engine/local-client.lua +86 -0
  188. package/engine/object-data/auxiliary/animation-name.d.ts +14 -0
  189. package/engine/object-data/auxiliary/animation-name.lua +2 -0
  190. package/engine/object-data/auxiliary/animation-qualifier.d.ts +53 -0
  191. package/engine/object-data/auxiliary/animation-qualifier.lua +2 -0
  192. package/engine/object-data/auxiliary/armor-sound-type.d.ts +8 -0
  193. package/engine/object-data/auxiliary/armor-sound-type.lua +2 -0
  194. package/engine/object-data/auxiliary/attachment-preset.d.ts +15 -0
  195. package/engine/object-data/auxiliary/attachment-preset.lua +29 -0
  196. package/engine/object-data/auxiliary/attack-type.d.ts +11 -0
  197. package/engine/object-data/auxiliary/attack-type.lua +2 -0
  198. package/engine/object-data/auxiliary/buff-polarity.d.ts +6 -0
  199. package/engine/object-data/auxiliary/buff-polarity.lua +2 -0
  200. package/engine/object-data/auxiliary/buff-resistance-type.d.ts +6 -0
  201. package/engine/object-data/auxiliary/buff-resistance-type.lua +2 -0
  202. package/engine/object-data/auxiliary/combat-classification.d.ts +46 -0
  203. package/engine/object-data/auxiliary/combat-classification.lua +206 -0
  204. package/engine/object-data/auxiliary/detection-type.d.ts +7 -0
  205. package/engine/object-data/auxiliary/detection-type.lua +2 -0
  206. package/engine/object-data/auxiliary/model-node-name.d.ts +12 -0
  207. package/engine/object-data/auxiliary/model-node-name.lua +2 -0
  208. package/engine/object-data/auxiliary/model-node-qualifier.d.ts +21 -0
  209. package/engine/object-data/auxiliary/model-node-qualifier.lua +2 -0
  210. package/engine/object-data/auxiliary/movement-type.d.ts +10 -0
  211. package/engine/object-data/auxiliary/movement-type.lua +2 -0
  212. package/engine/object-data/auxiliary/race.d.ts +14 -0
  213. package/engine/object-data/auxiliary/race.lua +2 -0
  214. package/engine/object-data/auxiliary/sound-preset-name.d.ts +8 -0
  215. package/engine/object-data/auxiliary/sound-preset-name.lua +2 -0
  216. package/engine/object-data/auxiliary/sound-set-name.d.ts +35 -0
  217. package/engine/object-data/auxiliary/sound-set-name.lua +2 -0
  218. package/engine/object-data/auxiliary/targeting-type.d.ts +8 -0
  219. package/engine/object-data/auxiliary/targeting-type.lua +2 -0
  220. package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +16 -0
  221. package/engine/object-data/auxiliary/tech-tree-dependency.lua +8 -0
  222. package/engine/object-data/auxiliary/unit-classification.d.ts +19 -0
  223. package/engine/object-data/auxiliary/unit-classification.lua +50 -0
  224. package/engine/object-data/auxiliary/weapon-sound-type.d.ts +17 -0
  225. package/engine/object-data/auxiliary/weapon-sound-type.lua +2 -0
  226. package/engine/object-data/entry/ability-type/armor-increase.d.ts +8 -0
  227. package/engine/object-data/entry/ability-type/armor-increase.lua +26 -0
  228. package/engine/object-data/entry/ability-type/attribute-increase.d.ts +12 -0
  229. package/engine/object-data/entry/ability-type/attribute-increase.lua +52 -0
  230. package/engine/object-data/entry/ability-type/auto-attack-damage-increase.d.ts +8 -0
  231. package/engine/object-data/entry/ability-type/auto-attack-damage-increase.lua +26 -0
  232. package/engine/object-data/entry/ability-type/auto-attack-heal-reduction-effect.d.ts +12 -0
  233. package/engine/object-data/entry/ability-type/auto-attack-heal-reduction-effect.lua +52 -0
  234. package/engine/object-data/entry/ability-type/auto-attack-speed-increase.d.ts +8 -0
  235. package/engine/object-data/entry/ability-type/auto-attack-speed-increase.lua +26 -0
  236. package/engine/object-data/entry/ability-type/bash.d.ts +16 -0
  237. package/engine/object-data/entry/ability-type/bash.lua +78 -0
  238. package/engine/object-data/entry/ability-type/berserk.d.ts +10 -0
  239. package/engine/object-data/entry/ability-type/berserk.lua +39 -0
  240. package/engine/object-data/entry/ability-type/blank-configurable.d.ts +21 -0
  241. package/engine/object-data/entry/ability-type/blank-configurable.lua +249 -0
  242. package/engine/object-data/entry/ability-type/blank-passive.d.ts +7 -0
  243. package/engine/object-data/entry/ability-type/blank-passive.lua +28 -0
  244. package/engine/object-data/entry/ability-type/blizzard.d.ts +16 -0
  245. package/engine/object-data/entry/ability-type/blizzard.lua +78 -0
  246. package/engine/object-data/entry/ability-type/blood-lust.d.ts +12 -0
  247. package/engine/object-data/entry/ability-type/blood-lust.lua +52 -0
  248. package/engine/object-data/entry/ability-type/chain-lightning.d.ts +12 -0
  249. package/engine/object-data/entry/ability-type/chain-lightning.lua +52 -0
  250. package/engine/object-data/entry/ability-type/channel.d.ts +48 -0
  251. package/engine/object-data/entry/ability-type/channel.lua +140 -0
  252. package/engine/object-data/entry/ability-type/charge-gold-and-lumber.d.ts +14 -0
  253. package/engine/object-data/entry/ability-type/charge-gold-and-lumber.lua +65 -0
  254. package/engine/object-data/entry/ability-type/cleaving-attack.d.ts +8 -0
  255. package/engine/object-data/entry/ability-type/cleaving-attack.lua +26 -0
  256. package/engine/object-data/entry/ability-type/cluster-rockets.d.ts +18 -0
  257. package/engine/object-data/entry/ability-type/cluster-rockets.lua +91 -0
  258. package/engine/object-data/entry/ability-type/cripple.d.ts +12 -0
  259. package/engine/object-data/entry/ability-type/cripple.lua +52 -0
  260. package/engine/object-data/entry/ability-type/critical-strike.d.ts +18 -0
  261. package/engine/object-data/entry/ability-type/critical-strike.lua +91 -0
  262. package/engine/object-data/entry/ability-type/curse.d.ts +8 -0
  263. package/engine/object-data/entry/ability-type/curse.lua +26 -0
  264. package/engine/object-data/entry/ability-type/dark-summoning.d.ts +10 -0
  265. package/engine/object-data/entry/ability-type/dark-summoning.lua +39 -0
  266. package/engine/object-data/entry/ability-type/death-coil.d.ts +8 -0
  267. package/engine/object-data/entry/ability-type/death-coil.lua +26 -0
  268. package/engine/object-data/entry/ability-type/disease-cloud.d.ts +15 -0
  269. package/engine/object-data/entry/ability-type/disease-cloud.lua +65 -0
  270. package/engine/object-data/entry/ability-type/divine-shield.d.ts +5 -0
  271. package/engine/object-data/entry/ability-type/divine-shield.lua +12 -0
  272. package/engine/object-data/entry/ability-type/endurance-aura.d.ts +10 -0
  273. package/engine/object-data/entry/ability-type/endurance-aura.lua +39 -0
  274. package/engine/object-data/entry/ability-type/engineering-upgrade.d.ts +13 -0
  275. package/engine/object-data/entry/ability-type/engineering-upgrade.lua +88 -0
  276. package/engine/object-data/entry/ability-type/evasion.d.ts +8 -0
  277. package/engine/object-data/entry/ability-type/evasion.lua +26 -0
  278. package/engine/object-data/entry/ability-type/faerie-fire.d.ts +10 -0
  279. package/engine/object-data/entry/ability-type/faerie-fire.lua +39 -0
  280. package/engine/object-data/entry/ability-type/far-sight.d.ts +9 -0
  281. package/engine/object-data/entry/ability-type/far-sight.lua +26 -0
  282. package/engine/object-data/entry/ability-type/feral-spirit.d.ts +11 -0
  283. package/engine/object-data/entry/ability-type/feral-spirit.lua +39 -0
  284. package/engine/object-data/entry/ability-type/frenzy.d.ts +12 -0
  285. package/engine/object-data/entry/ability-type/frenzy.lua +52 -0
  286. package/engine/object-data/entry/ability-type/frost-nova.d.ts +12 -0
  287. package/engine/object-data/entry/ability-type/frost-nova.lua +52 -0
  288. package/engine/object-data/entry/ability-type/ghost-visible.d.ts +10 -0
  289. package/engine/object-data/entry/ability-type/ghost-visible.lua +39 -0
  290. package/engine/object-data/entry/ability-type/gold-mine.d.ts +12 -0
  291. package/engine/object-data/entry/ability-type/gold-mine.lua +52 -0
  292. package/engine/object-data/entry/ability-type/heal.d.ts +8 -0
  293. package/engine/object-data/entry/ability-type/heal.lua +26 -0
  294. package/engine/object-data/entry/ability-type/healing-salve.d.ts +22 -0
  295. package/engine/object-data/entry/ability-type/healing-salve.lua +78 -0
  296. package/engine/object-data/entry/ability-type/healing-spray.d.ts +18 -0
  297. package/engine/object-data/entry/ability-type/healing-spray.lua +91 -0
  298. package/engine/object-data/entry/ability-type/healing-wave.d.ts +12 -0
  299. package/engine/object-data/entry/ability-type/healing-wave.lua +52 -0
  300. package/engine/object-data/entry/ability-type/holy-light.d.ts +8 -0
  301. package/engine/object-data/entry/ability-type/holy-light.lua +26 -0
  302. package/engine/object-data/entry/ability-type/incinerate.d.ts +18 -0
  303. package/engine/object-data/entry/ability-type/incinerate.lua +91 -0
  304. package/engine/object-data/entry/ability-type/inner-fire.d.ts +14 -0
  305. package/engine/object-data/entry/ability-type/inner-fire.lua +65 -0
  306. package/engine/object-data/entry/ability-type/inventory.d.ts +16 -0
  307. package/engine/object-data/entry/ability-type/inventory.lua +78 -0
  308. package/engine/object-data/entry/ability-type/invulnerable.d.ts +5 -0
  309. package/engine/object-data/entry/ability-type/invulnerable.lua +12 -0
  310. package/engine/object-data/entry/ability-type/lightning-shield.d.ts +8 -0
  311. package/engine/object-data/entry/ability-type/lightning-shield.lua +26 -0
  312. package/engine/object-data/entry/ability-type/movement-speed-increase.d.ts +8 -0
  313. package/engine/object-data/entry/ability-type/movement-speed-increase.lua +26 -0
  314. package/engine/object-data/entry/ability-type/permanent-immolation.d.ts +8 -0
  315. package/engine/object-data/entry/ability-type/permanent-immolation.lua +26 -0
  316. package/engine/object-data/entry/ability-type/phoenix-morph.d.ts +25 -0
  317. package/engine/object-data/entry/ability-type/phoenix-morph.lua +130 -0
  318. package/engine/object-data/entry/ability-type/recall.d.ts +10 -0
  319. package/engine/object-data/entry/ability-type/recall.lua +39 -0
  320. package/engine/object-data/entry/ability-type/rejuvenation.d.ts +20 -0
  321. package/engine/object-data/entry/ability-type/rejuvenation.lua +65 -0
  322. package/engine/object-data/entry/ability-type/searing-arrows.d.ts +8 -0
  323. package/engine/object-data/entry/ability-type/searing-arrows.lua +26 -0
  324. package/engine/object-data/entry/ability-type/shock-wave.d.ts +10 -0
  325. package/engine/object-data/entry/ability-type/shock-wave.lua +39 -0
  326. package/engine/object-data/entry/ability-type/slow-poison.d.ts +12 -0
  327. package/engine/object-data/entry/ability-type/slow-poison.lua +52 -0
  328. package/engine/object-data/entry/ability-type/slow.d.ts +12 -0
  329. package/engine/object-data/entry/ability-type/slow.lua +52 -0
  330. package/engine/object-data/entry/ability-type/spell-damage-reduction.d.ts +10 -0
  331. package/engine/object-data/entry/ability-type/spell-damage-reduction.lua +39 -0
  332. package/engine/object-data/entry/ability-type/spiked-carapace.d.ts +12 -0
  333. package/engine/object-data/entry/ability-type/spiked-carapace.lua +52 -0
  334. package/engine/object-data/entry/ability-type/spirit-touch.d.ts +14 -0
  335. package/engine/object-data/entry/ability-type/spirit-touch.lua +65 -0
  336. package/engine/object-data/entry/ability-type/storm-bolt.d.ts +8 -0
  337. package/engine/object-data/entry/ability-type/storm-bolt.lua +26 -0
  338. package/engine/object-data/entry/ability-type/summon-quilbeast.d.ts +11 -0
  339. package/engine/object-data/entry/ability-type/summon-quilbeast.lua +39 -0
  340. package/engine/object-data/entry/ability-type/summon-water-elemental.d.ts +11 -0
  341. package/engine/object-data/entry/ability-type/summon-water-elemental.lua +39 -0
  342. package/engine/object-data/entry/ability-type.d.ts +148 -0
  343. package/engine/object-data/entry/ability-type.lua +1058 -0
  344. package/engine/object-data/entry/buff-type/applicable.d.ts +16 -0
  345. package/engine/object-data/entry/buff-type/applicable.lua +377 -0
  346. package/engine/object-data/entry/buff-type/blank.d.ts +8 -0
  347. package/engine/object-data/entry/buff-type/blank.lua +17 -0
  348. package/engine/object-data/entry/buff-type.d.ts +64 -0
  349. package/engine/object-data/entry/buff-type.lua +316 -0
  350. package/engine/object-data/entry/destructible-type.d.ts +21 -0
  351. package/engine/object-data/entry/destructible-type.lua +83 -0
  352. package/engine/object-data/entry/item-type/blank.d.ts +8 -0
  353. package/engine/object-data/entry/item-type/blank.lua +21 -0
  354. package/engine/object-data/entry/item-type.d.ts +49 -0
  355. package/engine/object-data/entry/item-type.lua +259 -0
  356. package/engine/object-data/entry/lightning-type.d.ts +37 -0
  357. package/engine/object-data/entry/lightning-type.lua +191 -0
  358. package/engine/object-data/entry/unit-type/blank.d.ts +6 -0
  359. package/engine/object-data/entry/unit-type/blank.lua +13 -0
  360. package/engine/object-data/entry/unit-type.d.ts +218 -0
  361. package/engine/object-data/entry/unit-type.lua +1306 -0
  362. package/engine/object-data/entry/upgrade/blank.d.ts +8 -0
  363. package/engine/object-data/entry/upgrade/blank.lua +22 -0
  364. package/engine/object-data/entry/upgrade.d.ts +59 -0
  365. package/engine/object-data/entry/upgrade.lua +238 -0
  366. package/engine/object-data/entry.d.ts +80 -0
  367. package/engine/object-data/entry.lua +634 -0
  368. package/engine/object-data/utility/object-data-entry-id-generator.d.ts +6 -0
  369. package/engine/object-data/utility/object-data-entry-id-generator.lua +63 -0
  370. package/engine/object-data/utility/order-type-string-id-factory.d.ts +9 -0
  371. package/engine/object-data/utility/order-type-string-id-factory.lua +368 -0
  372. package/engine/object-field/ability.d.ts +115 -0
  373. package/engine/object-field/ability.lua +471 -0
  374. package/engine/object-field/unit.d.ts +15 -0
  375. package/engine/object-field/unit.lua +49 -0
  376. package/engine/object-field.d.ts +84 -0
  377. package/engine/object-field.lua +444 -0
  378. package/engine/random.d.ts +10 -0
  379. package/engine/random.lua +9 -0
  380. package/engine/standard/entries/ability-type.d.ts +8 -0
  381. package/engine/standard/entries/ability-type.lua +8 -0
  382. package/engine/standard/entries/lightning-type.d.ts +16 -0
  383. package/engine/standard/entries/lightning-type.lua +16 -0
  384. package/engine/standard/entries/unit-type.d.ts +63 -0
  385. package/engine/standard/entries/unit-type.lua +63 -0
  386. package/engine/standard/entries/upgrade.d.ts +92 -0
  387. package/engine/standard/entries/upgrade.lua +92 -0
  388. package/engine/standard/fields/ability.d.ts +737 -0
  389. package/engine/standard/fields/ability.lua +749 -0
  390. package/engine/standard/pathing-textures.d.ts +6 -0
  391. package/engine/standard/pathing-textures.lua +7 -0
  392. package/engine/text-tag.d.ts +25 -0
  393. package/engine/text-tag.lua +109 -0
  394. package/engine/unit.d.ts +20 -0
  395. package/engine/unit.lua +31 -0
  396. package/event.d.ts +53 -0
  397. package/event.lua +269 -0
  398. package/exception.d.ts +17 -0
  399. package/exception.lua +53 -0
  400. package/file.d.ts +4 -0
  401. package/file.lua +42 -0
  402. package/global/math.d.ts +21 -0
  403. package/global/math.lua +72 -0
  404. package/global/vec2.d.ts +66 -0
  405. package/global/vec2.lua +159 -0
  406. package/index.d.ts +8 -0
  407. package/index.lua +9 -0
  408. package/lualib_bundle.lua +2629 -0
  409. package/math/vec2.d.ts +18 -0
  410. package/math/vec2.lua +42 -0
  411. package/math.d.ts +39 -0
  412. package/math.lua +91 -0
  413. package/net/signal.d.ts +11 -0
  414. package/net/signal.lua +56 -0
  415. package/net/socket.d.ts +9 -0
  416. package/net/socket.lua +26 -0
  417. package/network.d.ts +31 -0
  418. package/network.lua +194 -0
  419. package/objutil/ability.d.ts +710 -0
  420. package/objutil/ability.lua +3781 -0
  421. package/objutil/buff.d.ts +110 -0
  422. package/objutil/buff.lua +769 -0
  423. package/objutil/dummy.d.ts +2 -0
  424. package/objutil/dummy.lua +49 -0
  425. package/objutil/idgen.d.ts +9 -0
  426. package/objutil/idgen.lua +92 -0
  427. package/objutil/item.d.ts +38 -0
  428. package/objutil/item.lua +254 -0
  429. package/objutil/object.d.ts +43 -0
  430. package/objutil/object.lua +213 -0
  431. package/objutil/unit.d.ts +134 -0
  432. package/objutil/unit.lua +913 -0
  433. package/objutil/upgrade.d.ts +22 -0
  434. package/objutil/upgrade.lua +127 -0
  435. package/operation.d.ts +35 -0
  436. package/operation.lua +179 -0
  437. package/package.json +47 -0
  438. package/patch-lualib.d.ts +2 -0
  439. package/patch-lualib.lua +67 -0
  440. package/patch-natives.d.ts +11 -0
  441. package/patch-natives.lua +14 -0
  442. package/string.d.ts +106 -0
  443. package/string.lua +34 -0
  444. package/time/dayOfWeek.d.ts +97 -0
  445. package/time/dayOfWeek.lua +53 -0
  446. package/time/localDate.d.ts +145 -0
  447. package/time/localDate.lua +236 -0
  448. package/time/localDateTime.d.ts +133 -0
  449. package/time/localDateTime.lua +154 -0
  450. package/time/localTime.d.ts +87 -0
  451. package/time/localTime.lua +91 -0
  452. package/time/month.d.ts +146 -0
  453. package/time/month.lua +129 -0
  454. package/time/year.d.ts +117 -0
  455. package/time/year.lua +81 -0
  456. package/types.d.ts +13 -0
  457. package/types.lua +0 -0
  458. package/util/objectPool.d.ts +6 -0
  459. package/util/objectPool.lua +28 -0
  460. package/util/stream.d.ts +29 -0
  461. package/util/stream.lua +453 -0
  462. package/util/stringBuilder.d.ts +8 -0
  463. package/util/stringBuilder.lua +25 -0
  464. package/utility/arrays.d.ts +57 -0
  465. package/utility/arrays.lua +369 -0
  466. package/utility/base64.d.ts +23 -0
  467. package/utility/base64.lua +177 -0
  468. package/utility/bit-set.d.ts +18 -0
  469. package/utility/bit-set.lua +12 -0
  470. package/utility/functions.d.ts +5 -0
  471. package/utility/functions.lua +90 -0
  472. package/utility/json.d.ts +2 -0
  473. package/utility/json.lua +400 -0
  474. package/utility/linked-set.d.ts +49 -0
  475. package/utility/linked-set.lua +181 -0
  476. package/utility/lua-maps.d.ts +6 -0
  477. package/utility/lua-maps.lua +25 -0
  478. package/utility/lua-sets.d.ts +6 -0
  479. package/utility/lua-sets.lua +37 -0
  480. package/utility/lzw.d.ts +2 -0
  481. package/utility/lzw.lua +161 -0
  482. package/utility/observable-array.d.ts +17 -0
  483. package/utility/observable-array.lua +30 -0
  484. package/utility/preconditions.d.ts +23 -0
  485. package/utility/preconditions.lua +58 -0
  486. package/utility/records.d.ts +3 -0
  487. package/utility/records.lua +9 -0
  488. package/utility/reflection.d.ts +4 -0
  489. package/utility/reflection.lua +31 -0
  490. package/utility/strings.d.ts +2 -0
  491. package/utility/strings.lua +44 -0
  492. package/utility/types.d.ts +39 -0
  493. package/utility/types.lua +2 -0
@@ -0,0 +1,471 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
5
+ local __TS__ObjectDefineProperty = ____lualib.__TS__ObjectDefineProperty
6
+ local __TS__InstanceOf = ____lualib.__TS__InstanceOf
7
+ local ____exports = {}
8
+ local ____ability = require("engine.internal.ability")
9
+ local Ability = ____ability.Ability
10
+ local ____object_2Dfield = require("engine.object-field")
11
+ local ObjectArrayField = ____object_2Dfield.ObjectArrayField
12
+ local ObjectField = ____object_2Dfield.ObjectField
13
+ local ObjectLevelField = ____object_2Dfield.ObjectLevelField
14
+ local ____ability_2Dtype = require("engine.object-data.entry.ability-type")
15
+ local AbilityType = ____ability_2Dtype.AbilityType
16
+ local convertAbilityBooleanField = _G.ConvertAbilityBooleanField
17
+ local convertAbilityIntegerField = _G.ConvertAbilityIntegerField
18
+ local convertAbilityRealField = _G.ConvertAbilityRealField
19
+ local convertAbilityStringField = _G.ConvertAbilityStringField
20
+ local convertAbilityIntegerLevelField = _G.ConvertAbilityIntegerLevelField
21
+ local convertAbilityRealLevelField = _G.ConvertAbilityRealLevelField
22
+ local convertAbilityStringLevelField = _G.ConvertAbilityStringLevelField
23
+ ____exports.AbilityField = __TS__Class()
24
+ local AbilityField = ____exports.AbilityField
25
+ AbilityField.name = "AbilityField"
26
+ __TS__ClassExtends(AbilityField, ObjectField)
27
+ function AbilityField.prototype.getObjectDataEntryId(self, instance)
28
+ return instance.typeId
29
+ end
30
+ __TS__SetDescriptor(
31
+ AbilityField.prototype,
32
+ "instanceClass",
33
+ {get = function(self)
34
+ return Ability
35
+ end},
36
+ true
37
+ )
38
+ __TS__ObjectDefineProperty(
39
+ AbilityField,
40
+ "valueChangeEvent",
41
+ {get = function(self)
42
+ return self:getOrCreateValueChangeEvent()
43
+ end}
44
+ )
45
+ ____exports.AbilityBooleanField = __TS__Class()
46
+ local AbilityBooleanField = ____exports.AbilityBooleanField
47
+ AbilityBooleanField.name = "AbilityBooleanField"
48
+ __TS__ClassExtends(AbilityBooleanField, ____exports.AbilityField)
49
+ function AbilityBooleanField.prototype.getNativeFieldById(self, id)
50
+ return convertAbilityBooleanField(id)
51
+ end
52
+ function AbilityBooleanField.prototype.getNativeFieldValue(self, instance)
53
+ return instance:getField(self.nativeField)
54
+ end
55
+ function AbilityBooleanField.prototype.setNativeFieldValue(self, instance, value)
56
+ return instance:setField(self.nativeField, value)
57
+ end
58
+ __TS__SetDescriptor(
59
+ AbilityBooleanField.prototype,
60
+ "defaultValue",
61
+ {get = function(self)
62
+ return false
63
+ end},
64
+ true
65
+ )
66
+ __TS__ObjectDefineProperty(
67
+ AbilityBooleanField,
68
+ "valueChangeEvent",
69
+ {get = function(self)
70
+ return self:getOrCreateValueChangeEvent()
71
+ end}
72
+ )
73
+ ____exports.AbilityNumberField = __TS__Class()
74
+ local AbilityNumberField = ____exports.AbilityNumberField
75
+ AbilityNumberField.name = "AbilityNumberField"
76
+ __TS__ClassExtends(AbilityNumberField, ____exports.AbilityField)
77
+ __TS__SetDescriptor(
78
+ AbilityNumberField.prototype,
79
+ "defaultValue",
80
+ {get = function(self)
81
+ return 0
82
+ end},
83
+ true
84
+ )
85
+ __TS__ObjectDefineProperty(
86
+ AbilityNumberField,
87
+ "valueChangeEvent",
88
+ {get = function(self)
89
+ return self:getOrCreateValueChangeEvent()
90
+ end}
91
+ )
92
+ ____exports.AbilityFloatField = __TS__Class()
93
+ local AbilityFloatField = ____exports.AbilityFloatField
94
+ AbilityFloatField.name = "AbilityFloatField"
95
+ __TS__ClassExtends(AbilityFloatField, ____exports.AbilityNumberField)
96
+ function AbilityFloatField.prototype.getNativeFieldById(self, id)
97
+ return convertAbilityRealField(id)
98
+ end
99
+ function AbilityFloatField.prototype.getNativeFieldValue(self, instance)
100
+ return instance:getField(self.nativeField)
101
+ end
102
+ function AbilityFloatField.prototype.setNativeFieldValue(self, instance, value)
103
+ return instance:setField(self.nativeField, value)
104
+ end
105
+ __TS__ObjectDefineProperty(
106
+ AbilityFloatField,
107
+ "valueChangeEvent",
108
+ {get = function(self)
109
+ return self:getOrCreateValueChangeEvent()
110
+ end}
111
+ )
112
+ ____exports.AbilityIntegerField = __TS__Class()
113
+ local AbilityIntegerField = ____exports.AbilityIntegerField
114
+ AbilityIntegerField.name = "AbilityIntegerField"
115
+ __TS__ClassExtends(AbilityIntegerField, ____exports.AbilityNumberField)
116
+ function AbilityIntegerField.prototype.getNativeFieldById(self, id)
117
+ return convertAbilityIntegerField(id)
118
+ end
119
+ function AbilityIntegerField.prototype.getNativeFieldValue(self, instance)
120
+ return instance:getField(self.nativeField)
121
+ end
122
+ function AbilityIntegerField.prototype.setNativeFieldValue(self, instance, value)
123
+ return instance:setField(self.nativeField, value)
124
+ end
125
+ __TS__ObjectDefineProperty(
126
+ AbilityIntegerField,
127
+ "valueChangeEvent",
128
+ {get = function(self)
129
+ return self:getOrCreateValueChangeEvent()
130
+ end}
131
+ )
132
+ local stringValueByAbilityTypeIdByFieldId = postcompile(function()
133
+ local stringValueByAbilityTypeIdByFieldId = {}
134
+ for ____, rawFieldId in ipairs({
135
+ "acap",
136
+ "aca1",
137
+ "aspt",
138
+ "ata0",
139
+ "ata1",
140
+ "ata2",
141
+ "ata3",
142
+ "ata4",
143
+ "ata5"
144
+ }) do
145
+ local stringValueByAbilityTypeId = {}
146
+ for ____, abilityType in ipairs(AbilityType:getAll()) do
147
+ local stringValue = abilityType.getStringField(abilityType, rawFieldId)
148
+ if stringValue ~= "" then
149
+ stringValueByAbilityTypeId[abilityType.id] = stringValue
150
+ end
151
+ end
152
+ stringValueByAbilityTypeIdByFieldId[fourCC(rawFieldId)] = stringValueByAbilityTypeId
153
+ end
154
+ return stringValueByAbilityTypeIdByFieldId
155
+ end)
156
+ ____exports.AbilityStringField = __TS__Class()
157
+ local AbilityStringField = ____exports.AbilityStringField
158
+ AbilityStringField.name = "AbilityStringField"
159
+ __TS__ClassExtends(AbilityStringField, ____exports.AbilityField)
160
+ function AbilityStringField.prototype.getNativeFieldById(self, id)
161
+ return convertAbilityStringField(id)
162
+ end
163
+ function AbilityStringField.prototype.getNativeFieldValue(self, instance)
164
+ if stringValueByAbilityTypeIdByFieldId[self.id] ~= nil then
165
+ local ____opt_0 = stringValueByAbilityTypeIdByFieldId[self.id]
166
+ return ____opt_0 and ____opt_0[instance.typeId] or self.defaultValue
167
+ end
168
+ return instance:getField(self.nativeField)
169
+ end
170
+ function AbilityStringField.prototype.setNativeFieldValue(self, instance, value)
171
+ return instance:setField(self.nativeField, value)
172
+ end
173
+ __TS__SetDescriptor(
174
+ AbilityStringField.prototype,
175
+ "defaultValue",
176
+ {get = function(self)
177
+ return ""
178
+ end},
179
+ true
180
+ )
181
+ __TS__ObjectDefineProperty(
182
+ AbilityStringField,
183
+ "valueChangeEvent",
184
+ {get = function(self)
185
+ return self:getOrCreateValueChangeEvent()
186
+ end}
187
+ )
188
+ ____exports.AbilityArrayField = __TS__Class()
189
+ local AbilityArrayField = ____exports.AbilityArrayField
190
+ AbilityArrayField.name = "AbilityArrayField"
191
+ __TS__ClassExtends(AbilityArrayField, ObjectArrayField)
192
+ function AbilityArrayField.prototype.getObjectDataEntryId(self, instance)
193
+ return instance.typeId
194
+ end
195
+ __TS__SetDescriptor(
196
+ AbilityArrayField.prototype,
197
+ "instanceClass",
198
+ {get = function(self)
199
+ return Ability
200
+ end},
201
+ true
202
+ )
203
+ ____exports.AbilityStringArrayField = __TS__Class()
204
+ local AbilityStringArrayField = ____exports.AbilityStringArrayField
205
+ AbilityStringArrayField.name = "AbilityStringArrayField"
206
+ __TS__ClassExtends(AbilityStringArrayField, ____exports.AbilityArrayField)
207
+ function AbilityStringArrayField.prototype.getNativeFieldById(self, id)
208
+ return convertAbilityStringLevelField(id)
209
+ end
210
+ function AbilityStringArrayField.prototype.getNativeFieldValue(self, instance, index)
211
+ return instance:getField(self.nativeField, index)
212
+ end
213
+ function AbilityStringArrayField.prototype.setNativeFieldValue(self, instance, index, value)
214
+ return instance:setField(self.nativeField, index, value)
215
+ end
216
+ __TS__SetDescriptor(
217
+ AbilityStringArrayField.prototype,
218
+ "defaultValue",
219
+ {get = function(self)
220
+ return ""
221
+ end},
222
+ true
223
+ )
224
+ ____exports.AbilityObjectDataEntryIdArrayField = __TS__Class()
225
+ local AbilityObjectDataEntryIdArrayField = ____exports.AbilityObjectDataEntryIdArrayField
226
+ AbilityObjectDataEntryIdArrayField.name = "AbilityObjectDataEntryIdArrayField"
227
+ __TS__ClassExtends(AbilityObjectDataEntryIdArrayField, ____exports.AbilityArrayField)
228
+ function AbilityObjectDataEntryIdArrayField.prototype.getNativeFieldById(self, id)
229
+ return convertAbilityStringLevelField(id)
230
+ end
231
+ function AbilityObjectDataEntryIdArrayField.prototype.getNativeFieldValue(self, instance, index)
232
+ local value = instance:getField(self.nativeField, index)
233
+ return value == "" and 0 or util.s2id(value)
234
+ end
235
+ function AbilityObjectDataEntryIdArrayField.prototype.setNativeFieldValue(self, instance, index, value)
236
+ return instance:setField(
237
+ self.nativeField,
238
+ index,
239
+ util.id2s(value)
240
+ )
241
+ end
242
+ __TS__SetDescriptor(
243
+ AbilityObjectDataEntryIdArrayField.prototype,
244
+ "defaultValue",
245
+ {get = function(self)
246
+ return 0
247
+ end},
248
+ true
249
+ )
250
+ ____exports.AbilityLightningTypeIdArrayField = __TS__Class()
251
+ local AbilityLightningTypeIdArrayField = ____exports.AbilityLightningTypeIdArrayField
252
+ AbilityLightningTypeIdArrayField.name = "AbilityLightningTypeIdArrayField"
253
+ __TS__ClassExtends(AbilityLightningTypeIdArrayField, ____exports.AbilityObjectDataEntryIdArrayField)
254
+ ____exports.AbilityLevelField = __TS__Class()
255
+ local AbilityLevelField = ____exports.AbilityLevelField
256
+ AbilityLevelField.name = "AbilityLevelField"
257
+ __TS__ClassExtends(AbilityLevelField, ObjectLevelField)
258
+ function AbilityLevelField.prototype.getLevelCount(self, entry)
259
+ return __TS__InstanceOf(entry, Ability) and #entry.levels or entry.levelCount
260
+ end
261
+ function AbilityLevelField.prototype.getObjectDataEntryId(self, instance)
262
+ return instance.typeId
263
+ end
264
+ __TS__SetDescriptor(
265
+ AbilityLevelField.prototype,
266
+ "instanceClass",
267
+ {get = function(self)
268
+ return Ability
269
+ end},
270
+ true
271
+ )
272
+ __TS__ObjectDefineProperty(
273
+ AbilityLevelField,
274
+ "valueChangeEvent",
275
+ {get = function(self)
276
+ return self:getOrCreateValueChangeEvent()
277
+ end}
278
+ )
279
+ ____exports.AbilityBooleanLevelField = __TS__Class()
280
+ local AbilityBooleanLevelField = ____exports.AbilityBooleanLevelField
281
+ AbilityBooleanLevelField.name = "AbilityBooleanLevelField"
282
+ __TS__ClassExtends(AbilityBooleanLevelField, ____exports.AbilityLevelField)
283
+ function AbilityBooleanLevelField.prototype.getNativeFieldById(self, id)
284
+ return convertAbilityIntegerLevelField(id)
285
+ end
286
+ function AbilityBooleanLevelField.prototype.getNativeFieldValue(self, instance, level)
287
+ return instance:getField(self.nativeField, level) ~= 0
288
+ end
289
+ function AbilityBooleanLevelField.prototype.setNativeFieldValue(self, instance, level, value)
290
+ return instance:setField(self.nativeField, level, value and 1 or 0)
291
+ end
292
+ __TS__SetDescriptor(
293
+ AbilityBooleanLevelField.prototype,
294
+ "defaultValue",
295
+ {get = function(self)
296
+ return false
297
+ end},
298
+ true
299
+ )
300
+ __TS__ObjectDefineProperty(
301
+ AbilityBooleanLevelField,
302
+ "valueChangeEvent",
303
+ {get = function(self)
304
+ return self:getOrCreateValueChangeEvent()
305
+ end}
306
+ )
307
+ ____exports.AbilityNumberLevelField = __TS__Class()
308
+ local AbilityNumberLevelField = ____exports.AbilityNumberLevelField
309
+ AbilityNumberLevelField.name = "AbilityNumberLevelField"
310
+ __TS__ClassExtends(AbilityNumberLevelField, ____exports.AbilityLevelField)
311
+ __TS__SetDescriptor(
312
+ AbilityNumberLevelField.prototype,
313
+ "defaultValue",
314
+ {get = function(self)
315
+ return 0
316
+ end},
317
+ true
318
+ )
319
+ __TS__ObjectDefineProperty(
320
+ AbilityNumberLevelField,
321
+ "valueChangeEvent",
322
+ {get = function(self)
323
+ return self:getOrCreateValueChangeEvent()
324
+ end}
325
+ )
326
+ ____exports.AbilityFloatLevelField = __TS__Class()
327
+ local AbilityFloatLevelField = ____exports.AbilityFloatLevelField
328
+ AbilityFloatLevelField.name = "AbilityFloatLevelField"
329
+ __TS__ClassExtends(AbilityFloatLevelField, ____exports.AbilityNumberLevelField)
330
+ function AbilityFloatLevelField.prototype.getNativeFieldById(self, id)
331
+ return convertAbilityRealLevelField(id)
332
+ end
333
+ function AbilityFloatLevelField.prototype.getNativeFieldValue(self, instance, level)
334
+ return instance:getField(self.nativeField, level)
335
+ end
336
+ function AbilityFloatLevelField.prototype.setNativeFieldValue(self, instance, level, value)
337
+ return instance:setField(self.nativeField, level, value)
338
+ end
339
+ __TS__ObjectDefineProperty(
340
+ AbilityFloatLevelField,
341
+ "valueChangeEvent",
342
+ {get = function(self)
343
+ return self:getOrCreateValueChangeEvent()
344
+ end}
345
+ )
346
+ ____exports.AbilityIntegerLevelField = __TS__Class()
347
+ local AbilityIntegerLevelField = ____exports.AbilityIntegerLevelField
348
+ AbilityIntegerLevelField.name = "AbilityIntegerLevelField"
349
+ __TS__ClassExtends(AbilityIntegerLevelField, ____exports.AbilityNumberLevelField)
350
+ function AbilityIntegerLevelField.prototype.getNativeFieldById(self, id)
351
+ return convertAbilityIntegerLevelField(id)
352
+ end
353
+ function AbilityIntegerLevelField.prototype.getNativeFieldValue(self, instance, level)
354
+ return instance:getField(self.nativeField, level)
355
+ end
356
+ function AbilityIntegerLevelField.prototype.setNativeFieldValue(self, instance, level, value)
357
+ return instance:setField(self.nativeField, level, value)
358
+ end
359
+ __TS__ObjectDefineProperty(
360
+ AbilityIntegerLevelField,
361
+ "valueChangeEvent",
362
+ {get = function(self)
363
+ return self:getOrCreateValueChangeEvent()
364
+ end}
365
+ )
366
+ ____exports.AbilityStringLevelField = __TS__Class()
367
+ local AbilityStringLevelField = ____exports.AbilityStringLevelField
368
+ AbilityStringLevelField.name = "AbilityStringLevelField"
369
+ __TS__ClassExtends(AbilityStringLevelField, ____exports.AbilityLevelField)
370
+ function AbilityStringLevelField.prototype.getNativeFieldById(self, id)
371
+ return convertAbilityStringLevelField(id)
372
+ end
373
+ function AbilityStringLevelField.prototype.getNativeFieldValue(self, instance, level)
374
+ return instance:getField(self.nativeField, level)
375
+ end
376
+ function AbilityStringLevelField.prototype.setNativeFieldValue(self, instance, level, value)
377
+ return instance:setField(self.nativeField, level, value)
378
+ end
379
+ __TS__SetDescriptor(
380
+ AbilityStringLevelField.prototype,
381
+ "defaultValue",
382
+ {get = function(self)
383
+ return ""
384
+ end},
385
+ true
386
+ )
387
+ __TS__ObjectDefineProperty(
388
+ AbilityStringLevelField,
389
+ "valueChangeEvent",
390
+ {get = function(self)
391
+ return self:getOrCreateValueChangeEvent()
392
+ end}
393
+ )
394
+ ____exports.AbilityObjectDataEntryIdLevelField = __TS__Class()
395
+ local AbilityObjectDataEntryIdLevelField = ____exports.AbilityObjectDataEntryIdLevelField
396
+ AbilityObjectDataEntryIdLevelField.name = "AbilityObjectDataEntryIdLevelField"
397
+ __TS__ClassExtends(AbilityObjectDataEntryIdLevelField, ____exports.AbilityLevelField)
398
+ function AbilityObjectDataEntryIdLevelField.prototype.getNativeFieldById(self, id)
399
+ return convertAbilityStringLevelField(id)
400
+ end
401
+ function AbilityObjectDataEntryIdLevelField.prototype.getNativeFieldValue(self, instance, level)
402
+ local value = instance:getField(self.nativeField, level)
403
+ return value == "" and 0 or util.s2id(value)
404
+ end
405
+ function AbilityObjectDataEntryIdLevelField.prototype.setNativeFieldValue(self, instance, level, value)
406
+ return instance:setField(
407
+ self.nativeField,
408
+ level,
409
+ util.id2s(value)
410
+ )
411
+ end
412
+ __TS__SetDescriptor(
413
+ AbilityObjectDataEntryIdLevelField.prototype,
414
+ "defaultValue",
415
+ {get = function(self)
416
+ return 0
417
+ end},
418
+ true
419
+ )
420
+ ____exports.AbilityAbilityTypeIdLevelField = __TS__Class()
421
+ local AbilityAbilityTypeIdLevelField = ____exports.AbilityAbilityTypeIdLevelField
422
+ AbilityAbilityTypeIdLevelField.name = "AbilityAbilityTypeIdLevelField"
423
+ __TS__ClassExtends(AbilityAbilityTypeIdLevelField, ____exports.AbilityObjectDataEntryIdLevelField)
424
+ ____exports.AbilityUnitTypeIdLevelField = __TS__Class()
425
+ local AbilityUnitTypeIdLevelField = ____exports.AbilityUnitTypeIdLevelField
426
+ AbilityUnitTypeIdLevelField.name = "AbilityUnitTypeIdLevelField"
427
+ __TS__ClassExtends(AbilityUnitTypeIdLevelField, ____exports.AbilityObjectDataEntryIdLevelField)
428
+ local allowedTargetCombatClassificationsByLevelByAbilityTypeId = postcompile(function()
429
+ local allowedTargetCombatClassificationsByLevelByAbilityTypeId = {}
430
+ for ____, abilityType in ipairs(AbilityType:getAll()) do
431
+ allowedTargetCombatClassificationsByLevelByAbilityTypeId[abilityType.id] = abilityType.allowedTargetCombatClassifications
432
+ end
433
+ return allowedTargetCombatClassificationsByLevelByAbilityTypeId
434
+ end)
435
+ ____exports.AbilityCombatClassificationsLevelField = __TS__Class()
436
+ local AbilityCombatClassificationsLevelField = ____exports.AbilityCombatClassificationsLevelField
437
+ AbilityCombatClassificationsLevelField.name = "AbilityCombatClassificationsLevelField"
438
+ __TS__ClassExtends(AbilityCombatClassificationsLevelField, ____exports.AbilityLevelField)
439
+ function AbilityCombatClassificationsLevelField.prototype.getNativeFieldById(self, id)
440
+ return convertAbilityIntegerLevelField(id)
441
+ end
442
+ function AbilityCombatClassificationsLevelField.prototype.getNativeFieldValue(self, instance, level)
443
+ if self.id == fourCC("atar") then
444
+ local ____opt_2 = allowedTargetCombatClassificationsByLevelByAbilityTypeId[instance.typeId]
445
+ return ____opt_2 and ____opt_2[level + 1] or self.defaultValue
446
+ end
447
+ return instance:getField(self.nativeField, level)
448
+ end
449
+ function AbilityCombatClassificationsLevelField.prototype.setNativeFieldValue(self, instance, level, value)
450
+ return instance:setField(self.nativeField, level, value)
451
+ end
452
+ __TS__SetDescriptor(
453
+ AbilityCombatClassificationsLevelField.prototype,
454
+ "defaultValue",
455
+ {get = function(self)
456
+ return 0
457
+ end},
458
+ true
459
+ )
460
+ ____exports.resolveCurrentAbilityDependentValue = function(ability, value)
461
+ if __TS__InstanceOf(value, ____exports.AbilityField) then
462
+ return value:getValue(ability)
463
+ elseif __TS__InstanceOf(value, ____exports.AbilityLevelField) then
464
+ return value:getValue(ability, ability.level)
465
+ elseif type(value) == "function" then
466
+ return value(ability)
467
+ else
468
+ return value
469
+ end
470
+ end
471
+ return ____exports
@@ -0,0 +1,15 @@
1
+ /** @noSelfInFile */
2
+ import { Unit } from "../internal/unit";
3
+ import { ObjectField } from "../object-field";
4
+ import { UnitType, UnitTypeId } from "../object-data/entry/unit-type";
5
+ export declare abstract class UnitField<ValueType extends number | string | boolean = number | string | boolean, NativeFieldType = any> extends ObjectField<UnitType, Unit, ValueType, NativeFieldType> {
6
+ protected get instanceClass(): typeof Unit;
7
+ protected getObjectDataEntryId(instance: Unit): UnitTypeId;
8
+ }
9
+ export declare class UnitStringField extends UnitField<string, junitstringfield> {
10
+ protected get defaultValue(): string;
11
+ protected getNativeFieldById(id: number): junitstringfield;
12
+ protected getNativeFieldValue(instance: Unit): string;
13
+ protected getObjectDataEntryId(instance: Unit): UnitTypeId;
14
+ protected setNativeFieldValue(instance: Unit, value: string): boolean;
15
+ }
@@ -0,0 +1,49 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
5
+ local ____exports = {}
6
+ local ____unit = require("engine.internal.unit")
7
+ local Unit = ____unit.Unit
8
+ local ____object_2Dfield = require("engine.object-field")
9
+ local ObjectField = ____object_2Dfield.ObjectField
10
+ ____exports.UnitField = __TS__Class()
11
+ local UnitField = ____exports.UnitField
12
+ UnitField.name = "UnitField"
13
+ __TS__ClassExtends(UnitField, ObjectField)
14
+ function UnitField.prototype.getObjectDataEntryId(self, instance)
15
+ return instance.typeId
16
+ end
17
+ __TS__SetDescriptor(
18
+ UnitField.prototype,
19
+ "instanceClass",
20
+ {get = function(self)
21
+ return Unit
22
+ end},
23
+ true
24
+ )
25
+ ____exports.UnitStringField = __TS__Class()
26
+ local UnitStringField = ____exports.UnitStringField
27
+ UnitStringField.name = "UnitStringField"
28
+ __TS__ClassExtends(UnitStringField, ____exports.UnitField)
29
+ function UnitStringField.prototype.getNativeFieldById(self, id)
30
+ return ConvertUnitStringField(id)
31
+ end
32
+ function UnitStringField.prototype.getNativeFieldValue(self, instance)
33
+ return instance:getField(self.nativeField)
34
+ end
35
+ function UnitStringField.prototype.getObjectDataEntryId(self, instance)
36
+ return instance.typeId
37
+ end
38
+ function UnitStringField.prototype.setNativeFieldValue(self, instance, value)
39
+ return instance:setField(self.nativeField, value)
40
+ end
41
+ __TS__SetDescriptor(
42
+ UnitStringField.prototype,
43
+ "defaultValue",
44
+ {get = function(self)
45
+ return ""
46
+ end},
47
+ true
48
+ )
49
+ return ____exports
@@ -0,0 +1,84 @@
1
+ /// <reference types="@typescript-to-lua/language-extensions" />
2
+ /** @noSelfInFile */
3
+ import { DispatchingEvent } from "../event";
4
+ import { AbstractConstructor } from "../utility/types";
5
+ import { ObjectDataEntry, ObjectDataEntryIdType, ObjectDataEntryLevelFieldValueSupplier } from "./object-data/entry";
6
+ export type ObjectFieldId = number & {
7
+ readonly __objectDataEntryFieldId: unique symbol;
8
+ };
9
+ export type ObjectFieldConstructor<T extends ObjectFieldBase<any, any, any, any>> = OmitConstructor<typeof ObjectFieldBase> & (new (id: number) => T);
10
+ export type ObjectFieldAbstractConstructor<T extends ObjectFieldBase<any, any, any, any>> = OmitConstructor<typeof ObjectFieldBase> & (abstract new (id: number) => T);
11
+ declare abstract class ObjectFieldBase<ObjectDataEntryType extends ObjectDataEntry, InstanceType extends AnyNotNil, ValueType, NativeFieldType> {
12
+ protected readonly valueByInstance: LuaMap<InstanceType, ValueType>;
13
+ protected abstract readonly instanceClass: AbstractConstructor<InstanceType> | Function;
14
+ supports(instance: AnyNotNil): instance is InstanceType & {
15
+ readonly __oneSidedTypeGuard: unique symbol;
16
+ };
17
+ protected get nativeField(): NativeFieldType;
18
+ readonly id: ObjectFieldId;
19
+ protected abstract getNativeFieldById(id: number): NativeFieldType;
20
+ protected abstract getObjectDataEntryId(instance: InstanceType): ObjectDataEntryIdType<ObjectDataEntryType>;
21
+ constructor(id: number);
22
+ static create<T extends ObjectFieldBase<any, any, any, any>>(this: ObjectFieldConstructor<T>, id?: number): T & symbol;
23
+ static of<T extends ObjectFieldBase<any, any, any, any>>(this: ObjectFieldAbstractConstructor<T>, id: number): T | undefined;
24
+ }
25
+ export type ObjectFieldValueChangeEvent<T extends ObjectField<any, any, any, any> | ReadonlyObjectFieldType<ObjectField<any, any, any, any>>> = T extends ObjectField<any, infer InstanceType, infer ValueType, any> ? DispatchingEvent<[
26
+ instance: InstanceType,
27
+ field: T,
28
+ previousValue: ValueType,
29
+ newValue: ValueType
30
+ ]> : T extends ReadonlyObjectFieldType<ObjectField<any, infer InstanceType, infer ValueType, any>> ? DispatchingEvent<[
31
+ instance: InstanceType,
32
+ field: T,
33
+ previousValue: ValueType,
34
+ newValue: ValueType
35
+ ]> : never;
36
+ export type ReadonlyObjectFieldType<T extends ObjectField<any, any, any, any>> = Omit<T, "setValue" | "removeValue">;
37
+ type ReadonlyObjectFieldConstructor<T extends ObjectField> = OmitConstructor<typeof ObjectField> & (abstract new (...args: any[]) => ReadonlyObjectFieldType<T>);
38
+ export declare abstract class ObjectField<ObjectDataEntryType extends ObjectDataEntry = ObjectDataEntry, InstanceType extends AnyNotNil = AnyNotNil, ValueType extends number | string | boolean = number | string | boolean, NativeFieldType = unknown> extends ObjectFieldBase<ObjectDataEntryType, InstanceType, ValueType, NativeFieldType> {
39
+ protected abstract readonly defaultValue: ValueType;
40
+ protected abstract getNativeFieldValue(instance: InstanceType): ValueType;
41
+ protected abstract setNativeFieldValue(instance: InstanceType, value: ValueType): boolean;
42
+ getValue(entry: ObjectDataEntryType | InstanceType): ValueType;
43
+ setValue(entry: ObjectDataEntryType | InstanceType, value: ValueType): boolean;
44
+ removeValue(entry: ObjectDataEntryType): boolean;
45
+ private invokeValueChangeEvent;
46
+ private invokeValueChangeEventRecursive;
47
+ protected static getOrCreateValueChangeEvent<T extends ObjectField, R extends ReadonlyObjectFieldType<T>>(this: ReadonlyObjectFieldConstructor<T>): ObjectFieldValueChangeEvent<R>;
48
+ static get valueChangeEvent(): ObjectFieldValueChangeEvent<ReadonlyObjectFieldType<ObjectField>>;
49
+ }
50
+ export type ReadonlyObjectLevelFieldType<T extends ObjectLevelField<any, any, any, any>> = Omit<T, "setValue">;
51
+ export type ObjectLevelFieldValueChangeEvent<T extends ObjectLevelField<any, any, any, any> | ReadonlyObjectLevelFieldType<ObjectLevelField<any, any, any, any>>> = T extends ObjectLevelField<any, infer InstanceType, infer ValueType, any, any> ? DispatchingEvent<[
52
+ instance: InstanceType,
53
+ field: T,
54
+ level: number,
55
+ previousValue: ValueType,
56
+ newValue: ValueType
57
+ ]> : T extends ReadonlyObjectLevelFieldType<ObjectLevelField<any, infer InstanceType, infer ValueType, any, any>> ? DispatchingEvent<[
58
+ instance: InstanceType,
59
+ field: T,
60
+ level: number,
61
+ previousValue: ValueType,
62
+ newValue: ValueType
63
+ ]> : never;
64
+ type ReadonlyObjectLevelFieldConstructor<T extends ObjectLevelField> = OmitConstructor<typeof ObjectLevelField> & (abstract new (...args: any[]) => ReadonlyObjectLevelFieldType<T>);
65
+ export declare abstract class ObjectArrayField<ObjectDataEntryType extends ObjectDataEntry = ObjectDataEntry, InstanceType extends AnyNotNil = AnyNotNil, ValueType extends number | string | boolean = number | string | boolean, NativeFieldType = unknown> extends ObjectFieldBase<ObjectDataEntryType, InstanceType, ValueType[], NativeFieldType> {
66
+ protected abstract readonly defaultValue: ValueType;
67
+ protected abstract getNativeFieldValue(instance: InstanceType, index: number): ValueType;
68
+ protected abstract setNativeFieldValue(instance: InstanceType, index: number, value: ValueType): boolean;
69
+ getValue<IndexType extends [number] | []>(entry: ObjectDataEntryType | InstanceType, ...[index]: IndexType): IndexType extends [number] ? ValueType : ValueType[];
70
+ setValue(entry: ObjectDataEntryType | InstanceType, value: ValueType[]): boolean;
71
+ }
72
+ export declare abstract class ObjectLevelField<ObjectDataEntryType extends ObjectDataEntry = ObjectDataEntry, InstanceType extends AnyNotNil = AnyNotNil, ValueType extends number | string | boolean = number | string | boolean, InputValueType extends ValueType = never, NativeFieldType = unknown> extends ObjectFieldBase<ObjectDataEntryType, InstanceType, ValueType[], NativeFieldType> {
73
+ protected abstract readonly defaultValue: ValueType;
74
+ protected abstract getNativeFieldValue(instance: InstanceType, level: number): ValueType;
75
+ protected abstract setNativeFieldValue(instance: InstanceType, level: number, value: ValueType): boolean;
76
+ protected abstract getLevelCount(entry: ObjectDataEntryType | InstanceType): number;
77
+ getValue<LevelType extends [number] | []>(entry: ObjectDataEntryType | InstanceType, ...[level]: LevelType): LevelType extends [number] ? ValueType : ValueType[];
78
+ setValue(entry: ObjectDataEntryType | InstanceType, ...[levelOrValue, value]: [value: ObjectDataEntryLevelFieldValueSupplier<InputValueType, ValueType>] | [level: number, value: InputValueType]): boolean;
79
+ private invokeValueChangeEvent;
80
+ private invokeValueChangeEventRecursive;
81
+ protected static getOrCreateValueChangeEvent<T extends ObjectLevelField, R extends ReadonlyObjectLevelFieldType<T>>(this: ReadonlyObjectLevelFieldConstructor<T>): ObjectLevelFieldValueChangeEvent<R>;
82
+ static get valueChangeEvent(): ObjectLevelFieldValueChangeEvent<ReadonlyObjectLevelFieldType<ObjectLevelField>>;
83
+ }
84
+ export {};