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,26 @@
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 ____ability_2Dtype = require("engine.object-data.entry.ability-type")
7
+ local AbilityType = ____ability_2Dtype.AbilityType
8
+ ____exports.DamageIncreaseAbilityType = __TS__Class()
9
+ local DamageIncreaseAbilityType = ____exports.DamageIncreaseAbilityType
10
+ DamageIncreaseAbilityType.name = "DamageIncreaseAbilityType"
11
+ __TS__ClassExtends(DamageIncreaseAbilityType, AbilityType)
12
+ DamageIncreaseAbilityType.BASE_ID = fourCC("AItg")
13
+ __TS__SetDescriptor(
14
+ DamageIncreaseAbilityType.prototype,
15
+ "autoAttackDamageIncrease",
16
+ {
17
+ get = function(self)
18
+ return self:getNumberLevelField("Iatt")
19
+ end,
20
+ set = function(self, autoAttackDamageIncrease)
21
+ self:setNumberLevelField("Iatt", autoAttackDamageIncrease)
22
+ end
23
+ },
24
+ true
25
+ )
26
+ return ____exports
@@ -0,0 +1,12 @@
1
+ /** @noSelfInFile */
2
+ import { AbilityType, AbilityTypeId } from "../ability-type";
3
+ import { ObjectDataEntryLevelFieldValueSupplier } from "../../entry";
4
+ export declare class AutoAttackHealReductionEffectAbilityType extends AbilityType {
5
+ static readonly BASE_ID: AbilityTypeId;
6
+ get healingFactor(): number[];
7
+ set healingFactor(healingFactor: ObjectDataEntryLevelFieldValueSupplier<number>);
8
+ get autoAttackDamageIncrease(): number[];
9
+ set autoAttackDamageIncrease(autoAttackDamageIncrease: ObjectDataEntryLevelFieldValueSupplier<number>);
10
+ get enabledWeaponIndex(): number[];
11
+ set enabledWeaponIndex(enabledWeaponIndex: ObjectDataEntryLevelFieldValueSupplier<number>);
12
+ }
@@ -0,0 +1,52 @@
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 ____ability_2Dtype = require("engine.object-data.entry.ability-type")
7
+ local AbilityType = ____ability_2Dtype.AbilityType
8
+ ____exports.AutoAttackHealReductionEffectAbilityType = __TS__Class()
9
+ local AutoAttackHealReductionEffectAbilityType = ____exports.AutoAttackHealReductionEffectAbilityType
10
+ AutoAttackHealReductionEffectAbilityType.name = "AutoAttackHealReductionEffectAbilityType"
11
+ __TS__ClassExtends(AutoAttackHealReductionEffectAbilityType, AbilityType)
12
+ AutoAttackHealReductionEffectAbilityType.BASE_ID = fourCC("AIf2")
13
+ __TS__SetDescriptor(
14
+ AutoAttackHealReductionEffectAbilityType.prototype,
15
+ "healingFactor",
16
+ {
17
+ get = function(self)
18
+ return self:getNumberLevelField("Iofr")
19
+ end,
20
+ set = function(self, healingFactor)
21
+ self:setNumberLevelField("Iofr", healingFactor)
22
+ end
23
+ },
24
+ true
25
+ )
26
+ __TS__SetDescriptor(
27
+ AutoAttackHealReductionEffectAbilityType.prototype,
28
+ "autoAttackDamageIncrease",
29
+ {
30
+ get = function(self)
31
+ return self:getNumberLevelField("Idam")
32
+ end,
33
+ set = function(self, autoAttackDamageIncrease)
34
+ self:setNumberLevelField("Idam", autoAttackDamageIncrease)
35
+ end
36
+ },
37
+ true
38
+ )
39
+ __TS__SetDescriptor(
40
+ AutoAttackHealReductionEffectAbilityType.prototype,
41
+ "enabledWeaponIndex",
42
+ {
43
+ get = function(self)
44
+ return self:getNumberLevelField("Iob5")
45
+ end,
46
+ set = function(self, enabledWeaponIndex)
47
+ self:setNumberLevelField("Iob5", enabledWeaponIndex)
48
+ end
49
+ },
50
+ true
51
+ )
52
+ return ____exports
@@ -0,0 +1,8 @@
1
+ /** @noSelfInFile */
2
+ import { AbilityType, AbilityTypeId } from "../ability-type";
3
+ import { ObjectDataEntryLevelFieldValueSupplier } from "../../entry";
4
+ export declare class AutoAttackSpeedIncreaseAbilityType extends AbilityType {
5
+ static readonly BASE_ID: AbilityTypeId;
6
+ get autoAttackSpeedIncreaseFactor(): number[];
7
+ set autoAttackSpeedIncreaseFactor(autoAttackSpeedIncreaseFactor: ObjectDataEntryLevelFieldValueSupplier<number>);
8
+ }
@@ -0,0 +1,26 @@
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 ____ability_2Dtype = require("engine.object-data.entry.ability-type")
7
+ local AbilityType = ____ability_2Dtype.AbilityType
8
+ ____exports.AutoAttackSpeedIncreaseAbilityType = __TS__Class()
9
+ local AutoAttackSpeedIncreaseAbilityType = ____exports.AutoAttackSpeedIncreaseAbilityType
10
+ AutoAttackSpeedIncreaseAbilityType.name = "AutoAttackSpeedIncreaseAbilityType"
11
+ __TS__ClassExtends(AutoAttackSpeedIncreaseAbilityType, AbilityType)
12
+ AutoAttackSpeedIncreaseAbilityType.BASE_ID = fourCC("AIsx")
13
+ __TS__SetDescriptor(
14
+ AutoAttackSpeedIncreaseAbilityType.prototype,
15
+ "autoAttackSpeedIncreaseFactor",
16
+ {
17
+ get = function(self)
18
+ return self:getNumberLevelField("Isx1")
19
+ end,
20
+ set = function(self, autoAttackSpeedIncreaseFactor)
21
+ self:setNumberLevelField("Isx1", autoAttackSpeedIncreaseFactor)
22
+ end
23
+ },
24
+ true
25
+ )
26
+ return ____exports
@@ -0,0 +1,16 @@
1
+ /** @noSelfInFile */
2
+ import { AbilityType, AbilityTypeId } from "../ability-type";
3
+ import { ObjectDataEntryLevelFieldValueSupplier } from "../../entry";
4
+ export declare class BashAbilityType extends AbilityType {
5
+ static readonly BASE_ID: AbilityTypeId;
6
+ get bashPercentageProbability(): number[];
7
+ set bashPercentageProbability(bashPercentageProbability: ObjectDataEntryLevelFieldValueSupplier<number>);
8
+ get damageFactor(): number[];
9
+ set damageFactor(damageFactor: ObjectDataEntryLevelFieldValueSupplier<number>);
10
+ get damageIncrease(): number[];
11
+ set damageIncrease(damageIncrease: ObjectDataEntryLevelFieldValueSupplier<number>);
12
+ get evasionProbability(): number[];
13
+ set evasionProbability(evasionProbability: ObjectDataEntryLevelFieldValueSupplier<number>);
14
+ get shouldNeverMiss(): boolean[];
15
+ set shouldNeverMiss(shouldNeverMiss: ObjectDataEntryLevelFieldValueSupplier<boolean>);
16
+ }
@@ -0,0 +1,78 @@
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 ____ability_2Dtype = require("engine.object-data.entry.ability-type")
7
+ local AbilityType = ____ability_2Dtype.AbilityType
8
+ ____exports.BashAbilityType = __TS__Class()
9
+ local BashAbilityType = ____exports.BashAbilityType
10
+ BashAbilityType.name = "BashAbilityType"
11
+ __TS__ClassExtends(BashAbilityType, AbilityType)
12
+ BashAbilityType.BASE_ID = fourCC("AHbh")
13
+ __TS__SetDescriptor(
14
+ BashAbilityType.prototype,
15
+ "bashPercentageProbability",
16
+ {
17
+ get = function(self)
18
+ return self:getNumberLevelField("Hbh1")
19
+ end,
20
+ set = function(self, bashPercentageProbability)
21
+ self:setNumberLevelField("Hbh1", bashPercentageProbability)
22
+ end
23
+ },
24
+ true
25
+ )
26
+ __TS__SetDescriptor(
27
+ BashAbilityType.prototype,
28
+ "damageFactor",
29
+ {
30
+ get = function(self)
31
+ return self:getNumberLevelField("Hbh2")
32
+ end,
33
+ set = function(self, damageFactor)
34
+ self:setNumberLevelField("Hbh2", damageFactor)
35
+ end
36
+ },
37
+ true
38
+ )
39
+ __TS__SetDescriptor(
40
+ BashAbilityType.prototype,
41
+ "damageIncrease",
42
+ {
43
+ get = function(self)
44
+ return self:getNumberLevelField("Hbh3")
45
+ end,
46
+ set = function(self, damageIncrease)
47
+ self:setNumberLevelField("Hbh3", damageIncrease)
48
+ end
49
+ },
50
+ true
51
+ )
52
+ __TS__SetDescriptor(
53
+ BashAbilityType.prototype,
54
+ "evasionProbability",
55
+ {
56
+ get = function(self)
57
+ return self:getNumberLevelField("Hbh4")
58
+ end,
59
+ set = function(self, evasionProbability)
60
+ self:setNumberLevelField("Hbh4", evasionProbability)
61
+ end
62
+ },
63
+ true
64
+ )
65
+ __TS__SetDescriptor(
66
+ BashAbilityType.prototype,
67
+ "shouldNeverMiss",
68
+ {
69
+ get = function(self)
70
+ return self:getBooleanLevelField("Hbh5")
71
+ end,
72
+ set = function(self, shouldNeverMiss)
73
+ self:setBooleanLevelField("Hbh5", shouldNeverMiss)
74
+ end
75
+ },
76
+ true
77
+ )
78
+ return ____exports
@@ -0,0 +1,10 @@
1
+ /** @noSelfInFile */
2
+ import { AbilityType, AbilityTypeId } from "../ability-type";
3
+ import { ObjectDataEntryLevelFieldValueSupplier } from "../../entry";
4
+ export declare class BerserkAbilityType extends AbilityType {
5
+ static readonly BASE_ID: AbilityTypeId;
6
+ get movementSpeedIncreaseFactor(): number[];
7
+ set movementSpeedIncreaseFactor(movementSpeedIncreaseFactor: ObjectDataEntryLevelFieldValueSupplier<number>);
8
+ get attackSpeedIncreaseFactor(): number[];
9
+ set attackSpeedIncreaseFactor(attackSpeedIncreaseFactor: ObjectDataEntryLevelFieldValueSupplier<number>);
10
+ }
@@ -0,0 +1,39 @@
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 ____ability_2Dtype = require("engine.object-data.entry.ability-type")
7
+ local AbilityType = ____ability_2Dtype.AbilityType
8
+ ____exports.BerserkAbilityType = __TS__Class()
9
+ local BerserkAbilityType = ____exports.BerserkAbilityType
10
+ BerserkAbilityType.name = "BerserkAbilityType"
11
+ __TS__ClassExtends(BerserkAbilityType, AbilityType)
12
+ BerserkAbilityType.BASE_ID = fourCC("Absk")
13
+ __TS__SetDescriptor(
14
+ BerserkAbilityType.prototype,
15
+ "movementSpeedIncreaseFactor",
16
+ {
17
+ get = function(self)
18
+ return self:getNumberLevelField("bsk1")
19
+ end,
20
+ set = function(self, movementSpeedIncreaseFactor)
21
+ self:setNumberLevelField("bsk1", movementSpeedIncreaseFactor)
22
+ end
23
+ },
24
+ true
25
+ )
26
+ __TS__SetDescriptor(
27
+ BerserkAbilityType.prototype,
28
+ "attackSpeedIncreaseFactor",
29
+ {
30
+ get = function(self)
31
+ return self:getNumberLevelField("bsk2")
32
+ end,
33
+ set = function(self, attackSpeedIncreaseFactor)
34
+ self:setNumberLevelField("bsk2", attackSpeedIncreaseFactor)
35
+ end
36
+ },
37
+ true
38
+ )
39
+ return ____exports
@@ -0,0 +1,21 @@
1
+ /// <reference types="warpack-types/warpack" />
2
+ /** @noSelfInFile */
3
+ import { ChannelAbilityType, ChannelAbilityTypeTargetingType } from "./channel";
4
+ import { ObjectDataEntryLevelFieldValueSupplier } from "../../entry";
5
+ export declare class BlankConfigurableAbilityType extends ChannelAbilityType {
6
+ static readonly IS_SYNTHETIC = true;
7
+ private autoOrderTypeStringIdsEnabled;
8
+ private readonly autoOrderTypeStringIdByTargetingType;
9
+ private _usesAttackAnimation;
10
+ private _isChanneling;
11
+ constructor(object: WarObject);
12
+ get usesAttackAnimation(): boolean;
13
+ set usesAttackAnimation(usesAttackAnimation: boolean);
14
+ get isChanneling(): boolean;
15
+ set isChanneling(isChanneling: boolean);
16
+ get targetingType(): ChannelAbilityTypeTargetingType[];
17
+ set targetingType(targetingType: ObjectDataEntryLevelFieldValueSupplier<ChannelAbilityTypeTargetingType>);
18
+ get baseOrderTypeStringId(): string[];
19
+ set baseOrderTypeStringId(baseOrderTypeStringId: ObjectDataEntryLevelFieldValueSupplier<string>);
20
+ private setAutoOrderTypeStringIds;
21
+ }
@@ -0,0 +1,249 @@
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__New = ____lualib.__TS__New
6
+ local ____exports = {}
7
+ local ____channel = require("engine.object-data.entry.ability-type.channel")
8
+ local ChannelAbilityType = ____channel.ChannelAbilityType
9
+ local ____order_2Dtype_2Dstring_2Did_2Dfactory = require("engine.object-data.utility.order-type-string-id-factory")
10
+ local orderTypeStringIdFactory = ____order_2Dtype_2Dstring_2Did_2Dfactory.orderTypeStringIdFactory
11
+ local ____timer = require("core.types.timer")
12
+ local Timer = ____timer.Timer
13
+ local ____unit = require("core.types.unit")
14
+ local Unit = ____unit.Unit
15
+ local ____arrays = require("utility.arrays")
16
+ local toLuaSet = ____arrays.toLuaSet
17
+ local ____preconditions = require("utility.preconditions")
18
+ local checkNotNull = ____preconditions.checkNotNull
19
+ local ____ability = require("engine.standard.fields.ability")
20
+ local ALLOWED_TARGETS_ABILITY_COMBAT_CLASSIFICATIONS_LEVEL_FIELD = ____ability.ALLOWED_TARGETS_ABILITY_COMBAT_CLASSIFICATIONS_LEVEL_FIELD
21
+ local AREA_OF_EFFECT_ABILITY_FLOAT_LEVEL_FIELD = ____ability.AREA_OF_EFFECT_ABILITY_FLOAT_LEVEL_FIELD
22
+ local ____linked_2Dset = require("utility.linked-set")
23
+ local LinkedSet = ____linked_2Dset.LinkedSet
24
+ local isChannelingAbilityTypeIds = {}
25
+ local usesAttackAnimationByAbilityTypeId = {}
26
+ ____exports.BlankConfigurableAbilityType = __TS__Class()
27
+ local BlankConfigurableAbilityType = ____exports.BlankConfigurableAbilityType
28
+ BlankConfigurableAbilityType.name = "BlankConfigurableAbilityType"
29
+ __TS__ClassExtends(BlankConfigurableAbilityType, ChannelAbilityType)
30
+ function BlankConfigurableAbilityType.prototype.____constructor(self, object)
31
+ ChannelAbilityType.prototype.____constructor(self, object)
32
+ self.autoOrderTypeStringIdsEnabled = true
33
+ self.autoOrderTypeStringIdByTargetingType = {}
34
+ self._usesAttackAnimation = false
35
+ self._isChanneling = false
36
+ self.buttonPositionX = 0
37
+ self.buttonPositionY = 0
38
+ self.casterAttachmentPresets = {}
39
+ self.effectModelPaths = {}
40
+ self.targetEffectPresets = {}
41
+ self.levelCount = 1
42
+ self.channelingDuration = 0
43
+ self.isTargetingImageVisible = false
44
+ self.isPhysical = false
45
+ self.isUniversal = false
46
+ self.isUniqueCast = true
47
+ self.casterAttachmentPresetsDuration = 0
48
+ self.disablesOtherAbilities = false
49
+ self:setAutoOrderTypeStringIds()
50
+ usesAttackAnimationByAbilityTypeId[self.id] = false
51
+ end
52
+ function BlankConfigurableAbilityType.prototype.setAutoOrderTypeStringIds(self)
53
+ local targetingTypes = toLuaSet(self.targetingType)
54
+ local unusedTargetingTypes = {}
55
+ for targetingType, orderTypeStringId in pairs(self.autoOrderTypeStringIdByTargetingType) do
56
+ if not (targetingTypes[targetingType] ~= nil) then
57
+ unusedTargetingTypes[#unusedTargetingTypes + 1] = targetingType
58
+ orderTypeStringIdFactory:recycle(orderTypeStringId)
59
+ end
60
+ end
61
+ for ____, unusedTargetingType in ipairs(unusedTargetingTypes) do
62
+ self.autoOrderTypeStringIdByTargetingType[unusedTargetingType] = nil
63
+ end
64
+ for targetingType in pairs(targetingTypes) do
65
+ if self.autoOrderTypeStringIdByTargetingType[targetingType] == nil then
66
+ self.autoOrderTypeStringIdByTargetingType[targetingType] = orderTypeStringIdFactory:next(targetingType)
67
+ end
68
+ end
69
+ self.baseOrderTypeStringId = function(level)
70
+ return checkNotNull(self.autoOrderTypeStringIdByTargetingType[self.targetingType[level + 1]])
71
+ end
72
+ end
73
+ BlankConfigurableAbilityType.IS_SYNTHETIC = true
74
+ __TS__SetDescriptor(
75
+ BlankConfigurableAbilityType.prototype,
76
+ "usesAttackAnimation",
77
+ {
78
+ get = function(self)
79
+ return self._usesAttackAnimation
80
+ end,
81
+ set = function(self, usesAttackAnimation)
82
+ usesAttackAnimationByAbilityTypeId[self.id] = usesAttackAnimation
83
+ self._usesAttackAnimation = usesAttackAnimation
84
+ end
85
+ },
86
+ true
87
+ )
88
+ __TS__SetDescriptor(
89
+ BlankConfigurableAbilityType.prototype,
90
+ "isChanneling",
91
+ {
92
+ get = function(self)
93
+ return self._isChanneling
94
+ end,
95
+ set = function(self, isChanneling)
96
+ if isChanneling then
97
+ isChannelingAbilityTypeIds[self.id] = true
98
+ else
99
+ isChannelingAbilityTypeIds[self.id] = nil
100
+ end
101
+ self._isChanneling = isChanneling
102
+ end
103
+ },
104
+ true
105
+ )
106
+ __TS__SetDescriptor(
107
+ BlankConfigurableAbilityType.prototype,
108
+ "targetingType",
109
+ {
110
+ get = function(self)
111
+ return self:getNumberLevelField("Ncl2")
112
+ end,
113
+ set = function(self, targetingType)
114
+ self:setNumberLevelField("Ncl2", targetingType)
115
+ if self.autoOrderTypeStringIdsEnabled then
116
+ self:setAutoOrderTypeStringIds()
117
+ end
118
+ end
119
+ },
120
+ true
121
+ )
122
+ __TS__SetDescriptor(
123
+ BlankConfigurableAbilityType.prototype,
124
+ "baseOrderTypeStringId",
125
+ {
126
+ get = function(self)
127
+ return self:getStringLevelField("Ncl6")
128
+ end,
129
+ set = function(self, baseOrderTypeStringId)
130
+ self.autoOrderTypeStringIdsEnabled = false
131
+ self:setStringLevelField("Ncl6", baseOrderTypeStringId)
132
+ end
133
+ },
134
+ true
135
+ )
136
+ do
137
+ local channelInfoByCaster = {}
138
+ local castersByTarget = {}
139
+ local targets = __TS__New(LinkedSet)
140
+ do
141
+ local function abilityUnitTargetChannelingStartEventListener(caster, ability, target)
142
+ targets:add(target)
143
+ local casters = castersByTarget[target]
144
+ if casters == nil then
145
+ casters = __TS__New(LinkedSet)
146
+ castersByTarget[target] = casters
147
+ end
148
+ casters:add(caster)
149
+ channelInfoByCaster[caster] = {
150
+ abilityTypeId = ability.typeId,
151
+ areaOfEffect = AREA_OF_EFFECT_ABILITY_FLOAT_LEVEL_FIELD:getValue(ability, ability.level),
152
+ allowedTargetCombatClassifications = ALLOWED_TARGETS_ABILITY_COMBAT_CLASSIFICATIONS_LEVEL_FIELD:getValue(ability, ability.level),
153
+ target = target
154
+ }
155
+ end
156
+ local function abilityStopEventListener(caster)
157
+ local channelInfo = channelInfoByCaster[caster]
158
+ if channelInfo ~= nil then
159
+ channelInfoByCaster[caster] = nil
160
+ local casters = castersByTarget[channelInfo.target]
161
+ if casters ~= nil then
162
+ casters:remove(caster)
163
+ end
164
+ targets:remove(channelInfo.target)
165
+ end
166
+ end
167
+ for abilityTypeId in pairs(postcompile(function() return isChannelingAbilityTypeIds end)) do
168
+ Unit.abilityUnitTargetChannelingStartEvent[abilityTypeId]:addListener(0, abilityUnitTargetChannelingStartEventListener)
169
+ Unit.abilityStopEvent[abilityTypeId]:addListener(abilityStopEventListener)
170
+ end
171
+ end
172
+ local function unitChangeEventListener(unit)
173
+ local casters = castersByTarget[unit]
174
+ if casters ~= nil then
175
+ for caster in pairs(casters) do
176
+ local channelInfo = channelInfoByCaster[caster]
177
+ if channelInfo ~= nil then
178
+ if not unit:isAllowedTarget(caster, channelInfo.allowedTargetCombatClassifications) or unit:isInvisibleTo(caster.owner) or channelInfo.areaOfEffect > 0 and caster:getCollisionDistanceTo(unit) > channelInfo.areaOfEffect or unit.transport ~= nil then
179
+ caster:interruptCast(channelInfo.abilityTypeId)
180
+ end
181
+ end
182
+ end
183
+ end
184
+ end
185
+ Unit.abilityChannelingStartEvent:addListener(
186
+ 4,
187
+ function(caster)
188
+ unitChangeEventListener(caster)
189
+ Timer:run(unitChangeEventListener, caster)
190
+ end
191
+ )
192
+ Unit.abilityUnitTargetChannelingStartEvent:addListener(
193
+ 4,
194
+ function(caster, ability, target)
195
+ unitChangeEventListener(target)
196
+ Timer:run(unitChangeEventListener, target)
197
+ end
198
+ )
199
+ Unit.onBoard:addListener(4, unitChangeEventListener)
200
+ Unit.deathEvent:addListener(4, unitChangeEventListener)
201
+ Timer.onPeriod[1]:addListener(
202
+ 4,
203
+ function()
204
+ for target in pairs(targets) do
205
+ unitChangeEventListener(target)
206
+ end
207
+ end
208
+ )
209
+ end
210
+ for abilityTypeId, usesAttackAnimation in pairs(postcompile(function()
211
+ for abilityTypeId, usesAttackAnimation in pairs(usesAttackAnimationByAbilityTypeId) do
212
+ if usesAttackAnimation then
213
+ local abilityType = checkNotNull(____exports.BlankConfigurableAbilityType:of(abilityTypeId))
214
+ abilityType.channelingAnimation = {"attack"}
215
+ end
216
+ end
217
+ return usesAttackAnimationByAbilityTypeId
218
+ end)) do
219
+ if usesAttackAnimation then
220
+ Unit.abilityCastingStartEvent[abilityTypeId]:addListener(
221
+ 4,
222
+ function(caster, ability)
223
+ if ability:getField(ABILITY_RLF_CASTING_TIME) ~= 0 then
224
+ Timer:run(function()
225
+ caster:playAnimation("ready")
226
+ end)
227
+ end
228
+ end
229
+ )
230
+ Unit.abilityCastingFinishEvent[abilityTypeId]:addListener(function(caster, ability)
231
+ if ability:getField(ABILITY_RLF_FOLLOW_THROUGH_TIME) == 0 then
232
+ ability:setField(
233
+ ABILITY_RLF_FOLLOW_THROUGH_TIME,
234
+ BlzGetUnitWeaponRealField(caster.handle, UNIT_WEAPON_RF_ATTACK_BACKSWING_POINT, 0) + BlzGetUnitWeaponRealField(caster.handle, UNIT_WEAPON_RF_ATTACK_DAMAGE_POINT, 0) - caster:getField(UNIT_RF_CAST_POINT)
235
+ )
236
+ end
237
+ end)
238
+ else
239
+ Unit.abilityCastingFinishEvent[abilityTypeId]:addListener(function(caster, ability)
240
+ if ability:getField(ABILITY_RLF_FOLLOW_THROUGH_TIME) == 0 then
241
+ ability:setField(
242
+ ABILITY_RLF_FOLLOW_THROUGH_TIME,
243
+ caster:getField(UNIT_RF_CAST_BACK_SWING)
244
+ )
245
+ end
246
+ end)
247
+ end
248
+ end
249
+ return ____exports
@@ -0,0 +1,7 @@
1
+ /// <reference types="warpack-types/warpack" />
2
+ /** @noSelfInFile */
3
+ import { DiseaseCloudAbilityType } from "./disease-cloud";
4
+ export declare class BlankPassiveAbilityType extends DiseaseCloudAbilityType {
5
+ static readonly IS_SYNTHETIC = true;
6
+ constructor(object: WarObject);
7
+ }
@@ -0,0 +1,28 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local ____exports = {}
5
+ local ____disease_2Dcloud = require("engine.object-data.entry.ability-type.disease-cloud")
6
+ local DiseaseCloudAbilityType = ____disease_2Dcloud.DiseaseCloudAbilityType
7
+ local ____combat_2Dclassification = require("engine.object-data.auxiliary.combat-classification")
8
+ local combatClassificationsOf = ____combat_2Dclassification.combatClassificationsOf
9
+ ____exports.BlankPassiveAbilityType = __TS__Class()
10
+ local BlankPassiveAbilityType = ____exports.BlankPassiveAbilityType
11
+ BlankPassiveAbilityType.name = "BlankPassiveAbilityType"
12
+ __TS__ClassExtends(BlankPassiveAbilityType, DiseaseCloudAbilityType)
13
+ function BlankPassiveAbilityType.prototype.____constructor(self, object)
14
+ DiseaseCloudAbilityType.prototype.____constructor(self, object)
15
+ self.levelCount = 1
16
+ self.iconPath = ""
17
+ self.targetEffectPresets = {}
18
+ self.diseaseDuration = 0
19
+ self.damagePerSecond = 0
20
+ self.plagueWardDuration = 0
21
+ self.plagueWardUnitTypeId = 0
22
+ self.allowedTargetCombatClassifications = combatClassificationsOf(1)
23
+ self.areaOfEffect = 0
24
+ self.buffTypeIds = {}
25
+ self.techTreeDependencies = {}
26
+ end
27
+ BlankPassiveAbilityType.IS_SYNTHETIC = true
28
+ return ____exports
@@ -0,0 +1,16 @@
1
+ /** @noSelfInFile */
2
+ import { AbilityType, AbilityTypeId } from "../ability-type";
3
+ import { ObjectDataEntryLevelFieldValueSupplier } from "../../entry";
4
+ export declare class BlizzardAbilityType extends AbilityType {
5
+ static readonly BASE_ID: AbilityTypeId;
6
+ get waveCount(): number[];
7
+ set waveCount(waveCount: ObjectDataEntryLevelFieldValueSupplier<number>);
8
+ get damage(): number[];
9
+ set damage(damage: ObjectDataEntryLevelFieldValueSupplier<number>);
10
+ get shardCount(): number[];
11
+ set shardCount(shardCount: ObjectDataEntryLevelFieldValueSupplier<number>);
12
+ get structureDamageDecreaseFactor(): number[];
13
+ set structureDamageDecreaseFactor(structureDamageDecreaseFactor: ObjectDataEntryLevelFieldValueSupplier<number>);
14
+ get damagePerSecond(): number[];
15
+ set damagePerSecond(damagePerSecond: ObjectDataEntryLevelFieldValueSupplier<number>);
16
+ }