warscript 0.0.1-dev.7a0548b → 0.0.1-dev.7a5b782

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 (396) hide show
  1. package/attributes.d.ts +6 -0
  2. package/attributes.lua +17 -1
  3. package/core/dummy.lua +4 -2
  4. package/core/types/effect.d.ts +12 -4
  5. package/core/types/effect.lua +67 -104
  6. package/core/types/frame.d.ts +1 -0
  7. package/core/types/frame.lua +136 -58
  8. package/core/types/handle.lua +9 -9
  9. package/core/types/item.d.ts +1 -0
  10. package/core/types/item.lua +1 -0
  11. package/core/types/player.d.ts +18 -1
  12. package/core/types/player.lua +76 -26
  13. package/core/types/playerCamera.d.ts +2 -0
  14. package/core/types/playerCamera.lua +123 -5
  15. package/core/types/playerColor.lua +4 -3
  16. package/core/types/sound.d.ts +1 -1
  17. package/core/types/sound.lua +19 -9
  18. package/core/types/tileCell.d.ts +11 -1
  19. package/core/types/tileCell.lua +97 -0
  20. package/core/types/timer.d.ts +9 -8
  21. package/core/types/timer.lua +45 -23
  22. package/core/types/unit.d.ts +5 -0
  23. package/core/types/unit.lua +5 -0
  24. package/core/util.d.ts +3 -1
  25. package/core/util.lua +109 -3
  26. package/decl/native.d.ts +1718 -964
  27. package/destroyable.d.ts +1 -0
  28. package/destroyable.lua +9 -0
  29. package/engine/behavior.d.ts +14 -1
  30. package/engine/behavior.lua +230 -70
  31. package/engine/behaviour/ability/apply-buff.lua +5 -5
  32. package/engine/behaviour/ability/apply-unit-behavior.lua +5 -0
  33. package/engine/behaviour/ability/damage.d.ts +10 -3
  34. package/engine/behaviour/ability/damage.lua +41 -49
  35. package/engine/behaviour/ability/emulate-impact.d.ts +1 -1
  36. package/engine/behaviour/ability/emulate-impact.lua +23 -7
  37. package/engine/behaviour/ability/on-command-impact.d.ts +1 -0
  38. package/engine/behaviour/ability/on-command-impact.lua +1 -0
  39. package/engine/behaviour/ability/remove-buffs.d.ts +9 -0
  40. package/engine/behaviour/ability/remove-buffs.lua +21 -0
  41. package/engine/behaviour/ability/restore-mana.d.ts +1 -1
  42. package/engine/behaviour/ability/restore-mana.lua +6 -6
  43. package/engine/behaviour/ability.d.ts +16 -6
  44. package/engine/behaviour/ability.lua +69 -21
  45. package/engine/behaviour/unit/stun-immunity.d.ts +12 -6
  46. package/engine/behaviour/unit/stun-immunity.lua +57 -31
  47. package/engine/behaviour/unit.d.ts +40 -3
  48. package/engine/behaviour/unit.lua +270 -6
  49. package/engine/buff.d.ts +75 -28
  50. package/engine/buff.lua +433 -196
  51. package/engine/index.d.ts +2 -1
  52. package/engine/internal/ability.d.ts +14 -1
  53. package/engine/internal/ability.lua +113 -44
  54. package/engine/internal/item/ability.lua +63 -11
  55. package/engine/internal/item/fields.d.ts +12 -0
  56. package/engine/internal/item/fields.lua +33 -0
  57. package/engine/internal/item/owner-cache.d.ts +5 -0
  58. package/engine/internal/item/owner-cache.lua +4 -0
  59. package/engine/internal/item+owner.d.ts +2 -0
  60. package/engine/internal/item+owner.lua +37 -8
  61. package/engine/internal/item.d.ts +32 -16
  62. package/engine/internal/item.lua +257 -82
  63. package/engine/internal/mechanics/cast-ability.lua +6 -3
  64. package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
  65. package/engine/internal/misc/frame-coordinates.d.ts +2 -0
  66. package/engine/internal/misc/frame-coordinates.lua +21 -0
  67. package/engine/internal/misc/get-terrain-z.d.ts +2 -0
  68. package/engine/internal/misc/get-terrain-z.lua +11 -0
  69. package/engine/internal/misc/player-local-handle.d.ts +2 -0
  70. package/engine/internal/misc/player-local-handle.lua +5 -0
  71. package/engine/internal/misc/unit-ability-level-natives.d.ts +2 -0
  72. package/engine/internal/misc/unit-ability-level-natives.lua +12 -0
  73. package/engine/internal/object-data/armor-bonus.d.ts +2 -0
  74. package/engine/internal/object-data/attribute-bonus.lua +2 -2
  75. package/engine/internal/object-data/health-bonus.d.ts +2 -0
  76. package/engine/internal/object-data/health-bonus.lua +16 -0
  77. package/engine/internal/object-data/health-regeneration-rate-increase.d.ts +2 -0
  78. package/engine/internal/object-data/health-regeneration-rate-increase.lua +48 -0
  79. package/engine/internal/object-data/mana-bonus.d.ts +2 -0
  80. package/engine/internal/object-data/mana-bonus.lua +16 -0
  81. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.d.ts +2 -0
  82. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
  83. package/engine/internal/unit/ability.d.ts +35 -0
  84. package/engine/internal/unit/ability.lua +113 -12
  85. package/engine/internal/unit/add-item-to-slot-init.lua +3 -14
  86. package/engine/internal/unit/add-item-to-slot.lua +53 -12
  87. package/engine/internal/unit/allowed-targets.d.ts +1 -1
  88. package/engine/internal/unit/allowed-targets.lua +9 -1
  89. package/engine/internal/unit/appearance.d.ts +15 -0
  90. package/engine/internal/unit/appearance.lua +85 -0
  91. package/engine/internal/unit/attributes.d.ts +17 -0
  92. package/engine/internal/unit/attributes.lua +46 -0
  93. package/engine/internal/unit/bonus.d.ts +14 -0
  94. package/engine/internal/unit/bonus.lua +102 -8
  95. package/engine/internal/unit/buff.d.ts +2 -2
  96. package/engine/internal/unit/buff.lua +34 -19
  97. package/engine/internal/unit/equipment-inventory.d.ts +44 -0
  98. package/engine/internal/unit/equipment-inventory.lua +233 -0
  99. package/engine/internal/unit/expiration-timer.lua +1 -1
  100. package/engine/internal/unit/extended-inventory.d.ts +25 -0
  101. package/engine/internal/unit/extended-inventory.lua +99 -0
  102. package/engine/internal/unit/fly-height.d.ts +7 -0
  103. package/engine/internal/unit/fly-height.lua +20 -0
  104. package/engine/internal/unit/ignore-events-items.lua +10 -1
  105. package/engine/internal/unit/interrupts.d.ts +12 -0
  106. package/engine/internal/unit/interrupts.lua +28 -0
  107. package/engine/internal/unit/{item.d.ts → inventory.d.ts} +7 -3
  108. package/engine/internal/unit/inventory.lua +87 -0
  109. package/engine/internal/unit/item-container.d.ts +25 -0
  110. package/engine/internal/unit/item-container.lua +11 -0
  111. package/engine/internal/unit/item-order-events.d.ts +17 -0
  112. package/engine/internal/unit/item-order-events.lua +67 -0
  113. package/engine/internal/unit/item-slot.d.ts +27 -0
  114. package/engine/internal/unit/item-slot.lua +92 -0
  115. package/engine/internal/unit/main-selected.lua +12 -27
  116. package/engine/internal/unit/order.d.ts +20 -0
  117. package/engine/internal/unit/order.lua +136 -0
  118. package/engine/internal/unit/pseudo-passive-abilities.d.ts +2 -0
  119. package/engine/internal/unit/pseudo-passive-abilities.lua +11 -0
  120. package/engine/internal/unit/range-event.d.ts +12 -0
  121. package/engine/internal/unit/range-event.lua +90 -0
  122. package/engine/internal/unit/scale.d.ts +7 -0
  123. package/engine/internal/unit/scale.lua +20 -0
  124. package/engine/internal/unit+ability.d.ts +2 -1
  125. package/engine/internal/unit+ability.lua +73 -3
  126. package/engine/internal/unit+bonus.lua +3 -3
  127. package/engine/internal/unit+damage.d.ts +11 -11
  128. package/engine/internal/unit+damage.lua +43 -14
  129. package/engine/internal/unit+rally.lua +9 -31
  130. package/engine/internal/unit+spellSteal.lua +1 -2
  131. package/engine/internal/unit-missile-data.lua +58 -32
  132. package/engine/internal/unit-missile-launch.lua +65 -27
  133. package/engine/internal/unit.d.ts +41 -36
  134. package/engine/internal/unit.lua +396 -328
  135. package/engine/local-client.d.ts +28 -0
  136. package/engine/local-client.lua +324 -54
  137. package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
  138. package/engine/object-data/auxiliary/armor-type.lua +46 -0
  139. package/engine/object-data/auxiliary/attachment-preset.d.ts +14 -2
  140. package/engine/object-data/auxiliary/attachment-preset.lua +11 -3
  141. package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
  142. package/engine/object-data/auxiliary/attack-type.lua +42 -0
  143. package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
  144. package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
  145. package/engine/object-data/auxiliary/equipment-type.d.ts +12 -0
  146. package/engine/object-data/auxiliary/equipment-type.lua +26 -0
  147. package/engine/object-data/auxiliary/health-regeneration-type.d.ts +8 -0
  148. package/engine/object-data/auxiliary/health-regeneration-type.lua +2 -0
  149. package/engine/object-data/auxiliary/item-class.d.ts +11 -0
  150. package/engine/object-data/auxiliary/item-class.lua +2 -0
  151. package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
  152. package/engine/object-data/auxiliary/item-tag.lua +2 -0
  153. package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
  154. package/engine/object-data/auxiliary/movement-type.lua +22 -0
  155. package/engine/object-data/auxiliary/order-type.d.ts +939 -0
  156. package/engine/object-data/auxiliary/order-type.lua +2 -0
  157. package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
  158. package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
  159. package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
  160. package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
  161. package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
  162. package/engine/object-data/entry/ability-type/armor-bonus.d.ts +8 -0
  163. package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
  164. package/engine/object-data/entry/ability-type/aura-of-blight.d.ts +13 -0
  165. package/engine/object-data/entry/ability-type/aura-of-blight.lua +39 -0
  166. package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
  167. package/engine/object-data/entry/ability-type/banshee.lua +13 -0
  168. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
  169. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
  170. package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
  171. package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
  172. package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
  173. package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
  174. package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
  175. package/engine/object-data/entry/ability-type/berserk.lua +13 -0
  176. package/engine/object-data/entry/ability-type/blank-configurable.d.ts +3 -0
  177. package/engine/object-data/entry/ability-type/blank-configurable.lua +30 -0
  178. package/engine/object-data/entry/ability-type/blank-passive.d.ts +4 -0
  179. package/engine/object-data/entry/ability-type/blank-passive.lua +27 -7
  180. package/engine/object-data/entry/ability-type/breath-of-fire.d.ts +11 -0
  181. package/engine/object-data/entry/ability-type/breath-of-fire.lua +27 -0
  182. package/engine/object-data/entry/ability-type/carrion-swarm.d.ts +14 -0
  183. package/engine/object-data/entry/ability-type/carrion-swarm.lua +65 -0
  184. package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
  185. package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
  186. package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
  187. package/engine/object-data/entry/ability-type/consecration.lua +52 -0
  188. package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
  189. package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
  190. package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
  191. package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
  192. package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
  193. package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
  194. package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
  195. package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
  196. package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
  197. package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
  198. package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
  199. package/engine/object-data/entry/ability-type/equipment.lua +27 -0
  200. package/engine/object-data/entry/ability-type/firebolt.d.ts +7 -0
  201. package/engine/object-data/entry/ability-type/firebolt.lua +13 -0
  202. package/engine/object-data/entry/ability-type/flame-strike.d.ts +25 -0
  203. package/engine/object-data/entry/ability-type/flame-strike.lua +92 -0
  204. package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
  205. package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
  206. package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
  207. package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
  208. package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
  209. package/engine/object-data/entry/ability-type/grit.lua +65 -0
  210. package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
  211. package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
  212. package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
  213. package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
  214. package/engine/object-data/entry/ability-type/{armor-increase.d.ts → healing-modifier.d.ts} +4 -3
  215. package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
  216. package/engine/object-data/entry/ability-type/healing-ward-aura.d.ts +13 -0
  217. package/engine/object-data/entry/ability-type/healing-ward-aura.lua +39 -0
  218. package/engine/object-data/entry/ability-type/health-bonus.d.ts +8 -0
  219. package/engine/object-data/entry/ability-type/health-bonus.lua +26 -0
  220. package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
  221. package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
  222. package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
  223. package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
  224. package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
  225. package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
  226. package/engine/object-data/entry/ability-type/item-life-regeneration.d.ts +10 -0
  227. package/engine/object-data/entry/ability-type/item-life-regeneration.lua +26 -0
  228. package/engine/object-data/entry/ability-type/life-drain.d.ts +37 -0
  229. package/engine/object-data/entry/ability-type/life-drain.lua +144 -0
  230. package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
  231. package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
  232. package/engine/object-data/entry/ability-type/mana-bonus.d.ts +8 -0
  233. package/engine/object-data/entry/ability-type/mana-bonus.lua +26 -0
  234. package/engine/object-data/entry/ability-type/mana-efficiency.d.ts +12 -0
  235. package/engine/object-data/entry/ability-type/mana-efficiency.lua +39 -0
  236. package/engine/object-data/entry/ability-type/mana-regeneration.d.ts +8 -0
  237. package/engine/object-data/entry/ability-type/mana-regeneration.lua +26 -0
  238. package/engine/object-data/entry/ability-type/mind-control.d.ts +21 -0
  239. package/engine/object-data/entry/ability-type/mind-control.lua +78 -0
  240. package/engine/object-data/entry/ability-type/on-attack-cast-spell.d.ts +21 -0
  241. package/engine/object-data/entry/ability-type/on-attack-cast-spell.lua +52 -0
  242. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.d.ts +19 -0
  243. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.lua +65 -0
  244. package/engine/object-data/entry/ability-type/on-hit-cast-spell.d.ts +15 -0
  245. package/engine/object-data/entry/ability-type/on-hit-cast-spell.lua +26 -0
  246. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.d.ts +6 -0
  247. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.lua +12 -0
  248. package/engine/object-data/entry/ability-type/permanent-invisibility.d.ts +8 -0
  249. package/engine/object-data/entry/ability-type/permanent-invisibility.lua +26 -0
  250. package/engine/object-data/entry/ability-type/phase-shift.d.ts +10 -0
  251. package/engine/object-data/entry/ability-type/phase-shift.lua +39 -0
  252. package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
  253. package/engine/object-data/entry/ability-type/provoke.lua +66 -0
  254. package/engine/object-data/entry/ability-type/rain-of-fire.d.ts +7 -0
  255. package/engine/object-data/entry/ability-type/rain-of-fire.lua +13 -0
  256. package/engine/object-data/entry/ability-type/raise-the-banner.d.ts +9 -0
  257. package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
  258. package/engine/object-data/entry/ability-type/reincarnation.d.ts +8 -0
  259. package/engine/object-data/entry/ability-type/reincarnation.lua +26 -0
  260. package/engine/object-data/entry/ability-type/resolve.d.ts +12 -0
  261. package/engine/object-data/entry/ability-type/resolve.lua +39 -0
  262. package/engine/object-data/entry/ability-type/righteous-fury.d.ts +33 -0
  263. package/engine/object-data/entry/ability-type/righteous-fury.lua +130 -0
  264. package/engine/object-data/entry/ability-type/sacred-aura.d.ts +27 -0
  265. package/engine/object-data/entry/ability-type/sacred-aura.lua +104 -0
  266. package/engine/object-data/entry/ability-type/shock-wave.d.ts +4 -0
  267. package/engine/object-data/entry/ability-type/shock-wave.lua +26 -0
  268. package/engine/object-data/entry/ability-type/slow-poison.d.ts +10 -0
  269. package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
  270. package/engine/object-data/entry/ability-type/soul-burn.d.ts +22 -0
  271. package/engine/object-data/entry/ability-type/soul-burn.lua +79 -0
  272. package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
  273. package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
  274. package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
  275. package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
  276. package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
  277. package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
  278. package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
  279. package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
  280. package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
  281. package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
  282. package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
  283. package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
  284. package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
  285. package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
  286. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
  287. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
  288. package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
  289. package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
  290. package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
  291. package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
  292. package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
  293. package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
  294. package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
  295. package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
  296. package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
  297. package/engine/object-data/entry/ability-type/talents.lua +27 -0
  298. package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
  299. package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
  300. package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
  301. package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
  302. package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
  303. package/engine/object-data/entry/ability-type/warcry.lua +26 -0
  304. package/engine/object-data/entry/ability-type/web.d.ts +12 -0
  305. package/engine/object-data/entry/ability-type/web.lua +52 -0
  306. package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
  307. package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
  308. package/engine/object-data/entry/ability-type.d.ts +34 -15
  309. package/engine/object-data/entry/ability-type.lua +275 -17
  310. package/engine/object-data/entry/buff-type/applicable.lua +113 -104
  311. package/engine/object-data/entry/buff-type.d.ts +10 -12
  312. package/engine/object-data/entry/buff-type.lua +37 -27
  313. package/engine/object-data/entry/destructible-type.d.ts +32 -2
  314. package/engine/object-data/entry/destructible-type.lua +181 -0
  315. package/engine/object-data/entry/item-type.d.ts +18 -3
  316. package/engine/object-data/entry/item-type.lua +84 -0
  317. package/engine/object-data/entry/lightning-type.d.ts +6 -8
  318. package/engine/object-data/entry/lightning-type.lua +1 -1
  319. package/engine/object-data/entry/sound-preset.d.ts +2 -2
  320. package/engine/object-data/entry/unit-type.d.ts +64 -6
  321. package/engine/object-data/entry/unit-type.lua +531 -85
  322. package/engine/object-data/entry/upgrade.d.ts +2 -2
  323. package/engine/object-data/entry.d.ts +6 -1
  324. package/engine/object-data/entry.lua +8 -0
  325. package/engine/object-field/ability.d.ts +4 -4
  326. package/engine/object-field/ability.lua +9 -8
  327. package/engine/object-field/item.d.ts +22 -0
  328. package/engine/object-field/item.lua +118 -0
  329. package/engine/object-field/unit.d.ts +72 -3
  330. package/engine/object-field/unit.lua +268 -7
  331. package/engine/object-field.d.ts +26 -7
  332. package/engine/object-field.lua +360 -119
  333. package/engine/random.d.ts +10 -0
  334. package/engine/random.lua +21 -0
  335. package/engine/standard/entries/ability-type.d.ts +3102 -7
  336. package/engine/standard/entries/ability-type.lua +0 -6
  337. package/engine/standard/entries/buff-type.d.ts +48 -0
  338. package/engine/standard/entries/buff-type.lua +46 -0
  339. package/engine/standard/entries/item-type.d.ts +1299 -0
  340. package/engine/standard/entries/item-type.lua +2 -0
  341. package/engine/standard/entries/lightning-type.d.ts +42 -15
  342. package/engine/standard/entries/lightning-type.lua +0 -14
  343. package/engine/standard/entries/unit-type.d.ts +5 -0
  344. package/engine/standard/entries/unit-type.lua +5 -0
  345. package/engine/standard/fields/ability.d.ts +2 -2
  346. package/engine/standard/fields/ability.lua +2 -2
  347. package/engine/standard/fields/item.d.ts +4 -0
  348. package/engine/standard/fields/item.lua +6 -0
  349. package/engine/standard/fields/unit.d.ts +12 -0
  350. package/engine/standard/fields/unit.lua +20 -0
  351. package/engine/synchronization.d.ts +11 -0
  352. package/engine/synchronization.lua +77 -0
  353. package/engine/text-tag.d.ts +36 -2
  354. package/engine/text-tag.lua +250 -10
  355. package/engine/unit.d.ts +11 -1
  356. package/engine/unit.lua +11 -1
  357. package/event.d.ts +1 -1
  358. package/lualib_bundle.lua +1 -1
  359. package/math.d.ts +2 -0
  360. package/math.lua +14 -0
  361. package/net/socket.lua +1 -1
  362. package/network.lua +25 -1
  363. package/objutil/buff.lua +12 -11
  364. package/objutil/object.lua +1 -1
  365. package/operation.d.ts +8 -1
  366. package/operation.lua +38 -18
  367. package/package.json +3 -23
  368. package/patch-lua.lua +15 -0
  369. package/patch-lualib.lua +1 -1
  370. package/utility/arrays.d.ts +3 -0
  371. package/utility/arrays.lua +23 -0
  372. package/utility/callback-array.d.ts +17 -0
  373. package/utility/callback-array.lua +61 -0
  374. package/utility/functions.d.ts +8 -0
  375. package/utility/functions.lua +13 -0
  376. package/utility/linked-map.d.ts +35 -0
  377. package/utility/linked-map.lua +107 -0
  378. package/utility/linked-set.d.ts +5 -1
  379. package/utility/linked-set.lua +49 -1
  380. package/utility/lua-maps.d.ts +15 -2
  381. package/utility/lua-maps.lua +53 -2
  382. package/utility/lua-sets.d.ts +2 -0
  383. package/utility/lua-sets.lua +7 -0
  384. package/utility/random.d.ts +102 -0
  385. package/utility/random.lua +273 -0
  386. package/utility/records.lua +20 -1
  387. package/utility/types.d.ts +3 -0
  388. package/utility/unordered-map.d.ts +27 -0
  389. package/utility/unordered-map.lua +99 -0
  390. package/core/types/order.d.ts +0 -25
  391. package/core/types/order.lua +0 -55
  392. package/engine/internal/unit/item.lua +0 -78
  393. /package/engine/internal/{object-data/armor-increase.d.ts → misc/damage-metadata-by-target.d.ts} +0 -0
  394. /package/engine/internal/object-data/{armor-increase.lua → armor-bonus.lua} +0 -0
  395. /package/engine/object-data/entry/ability-type/{attribute-increase.d.ts → attribute-bonus.d.ts} +0 -0
  396. /package/engine/object-data/entry/ability-type/{attribute-increase.lua → attribute-bonus.lua} +0 -0
@@ -1,7 +1,14 @@
1
1
  local ____lualib = require("lualib_bundle")
2
2
  local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
3
4
  local __TS__New = ____lualib.__TS__New
5
+ local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
4
6
  local ____exports = {}
7
+ local ____attributes = require("attributes")
8
+ local AttributesHolder = ____attributes.AttributesHolder
9
+ local getTerrainType = GetTerrainType
10
+ local setTerrainType = SetTerrainType
11
+ local getTerrainVariance = GetTerrainVariance
5
12
  local abs = math.abs
6
13
  local ____type = math.type
7
14
  local ult = math.ult
@@ -9,13 +16,27 @@ local tileCellById = {}
9
16
  ____exports.TileCell = __TS__Class()
10
17
  local TileCell = ____exports.TileCell
11
18
  TileCell.name = "TileCell"
19
+ __TS__ClassExtends(TileCell, AttributesHolder)
12
20
  function TileCell.prototype.____constructor(self, id, x, y, z)
21
+ AttributesHolder.prototype.____constructor(self)
13
22
  self.id = id
14
23
  self.x = x
15
24
  self.y = y
16
25
  self.z = z
17
26
  tileCellById[id] = self
18
27
  end
28
+ function TileCell.prototype.randomizeTerrainVariance(self)
29
+ local x = self.x
30
+ local y = self.y
31
+ setTerrainType(
32
+ x,
33
+ y,
34
+ getTerrainType(x, y),
35
+ -1,
36
+ 1,
37
+ 1
38
+ )
39
+ end
19
40
  function TileCell.prototype.isInRangeOf(self, x, y, range)
20
41
  if range == nil then
21
42
  range = y
@@ -97,4 +118,80 @@ function TileCell.of(x, y)
97
118
  nil
98
119
  )
99
120
  end
121
+ __TS__SetDescriptor(
122
+ TileCell.prototype,
123
+ "up",
124
+ {get = function(self)
125
+ return ____exports.TileCell.of(self.x, self.y + 128)
126
+ end},
127
+ true
128
+ )
129
+ __TS__SetDescriptor(
130
+ TileCell.prototype,
131
+ "down",
132
+ {get = function(self)
133
+ return ____exports.TileCell.of(self.x, self.y - 128)
134
+ end},
135
+ true
136
+ )
137
+ __TS__SetDescriptor(
138
+ TileCell.prototype,
139
+ "left",
140
+ {get = function(self)
141
+ return ____exports.TileCell.of(self.x - 128, self.y)
142
+ end},
143
+ true
144
+ )
145
+ __TS__SetDescriptor(
146
+ TileCell.prototype,
147
+ "right",
148
+ {get = function(self)
149
+ return ____exports.TileCell.of(self.x + 128, self.y)
150
+ end},
151
+ true
152
+ )
153
+ __TS__SetDescriptor(
154
+ TileCell.prototype,
155
+ "terrainTypeId",
156
+ {
157
+ get = function(self)
158
+ return getTerrainType(self.x, self.y)
159
+ end,
160
+ set = function(self, terrainTypeId)
161
+ local x = self.x
162
+ local y = self.y
163
+ setTerrainType(
164
+ x,
165
+ y,
166
+ terrainTypeId,
167
+ getTerrainVariance(x, y),
168
+ 1,
169
+ 1
170
+ )
171
+ end
172
+ },
173
+ true
174
+ )
175
+ __TS__SetDescriptor(
176
+ TileCell.prototype,
177
+ "terrainVariance",
178
+ {
179
+ get = function(self)
180
+ return getTerrainVariance(self.x, self.y)
181
+ end,
182
+ set = function(self, terrainVariance)
183
+ local x = self.x
184
+ local y = self.y
185
+ setTerrainType(
186
+ x,
187
+ y,
188
+ getTerrainType(x, y),
189
+ terrainVariance,
190
+ 1,
191
+ 1
192
+ )
193
+ end
194
+ },
195
+ true
196
+ )
100
197
  return ____exports
@@ -1,29 +1,30 @@
1
1
  /** @noSelfInFile */
2
2
  import { Event } from "../../event";
3
+ import { AbstractDestroyable, Destructor } from "../../destroyable";
4
+ import { CallbackId } from "../../utility/callback-array";
3
5
  declare const enum TimerPropertyKey {
4
6
  HANDLE = 0,
5
- DESTROYED = 1,
6
- DESTROY_ON_EXPIRATION = 2,
7
- CALLBACK = 3,
8
- ARGS_LENGTH = 4
7
+ DESTROY_ON_EXPIRATION = 1,
8
+ CALLBACK = 2,
9
+ ARGS_LENGTH = 3
9
10
  }
10
- export declare class Timer implements Destroyable {
11
+ export declare class Timer extends AbstractDestroyable {
11
12
  private readonly [TimerPropertyKey.HANDLE];
12
- private [TimerPropertyKey.DESTROYED]?;
13
13
  private [TimerPropertyKey.DESTROY_ON_EXPIRATION]?;
14
14
  private [TimerPropertyKey.CALLBACK]?;
15
15
  private [TimerPropertyKey.ARGS_LENGTH]?;
16
16
  private constructor();
17
17
  get handle(): jtimer;
18
18
  start<Args extends any[]>(timeout: number, periodic: boolean, callback: (...args: Args) => void, ...args: Args): void;
19
+ onDestroy(): Destructor;
19
20
  get elapsed(): number;
20
21
  get remaining(): number;
21
22
  get timeout(): number;
22
23
  pause(): void;
23
24
  resume(): void;
24
- destroy(): void;
25
25
  static create(): Timer;
26
- static run<Args extends any[]>(callback: (...args: Args) => void, ...args: Args): void;
26
+ static run<T, K extends KeysOfType<T, (this: T, ...args: any) => any>>(object: T, key: K, ...parameters: T[K] extends (this: T, ...args: any) => any ? Parameters<T[K]> : never): CallbackId;
27
+ static run<Args extends any[]>(callback: (this: void, ...args: Args) => void, ...args: Args): CallbackId;
27
28
  static simple<Args extends any[]>(timeout: number, callback: (...args: Args) => void, ...args: Args): Timer;
28
29
  static periodic<Args extends any[]>(period: number, callback: (this: void, timer: Timer, ...args: Args) => void, ...args: Args): Timer;
29
30
  static counted(period: number, count: number, callback: (this: void, timer: Timer) => void): Timer;
@@ -1,6 +1,7 @@
1
1
  local ____lualib = require("lualib_bundle")
2
2
  local __TS__New = ____lualib.__TS__New
3
3
  local __TS__Class = ____lualib.__TS__Class
4
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
5
  local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
5
6
  local __TS__Promise = ____lualib.__TS__Promise
6
7
  local ____exports = {}
@@ -9,8 +10,13 @@ local Event = ____event.Event
9
10
  local InitializingEvent = ____event.InitializingEvent
10
11
  local ____objectPool = require("util.objectPool")
11
12
  local ObjectPool = ____objectPool.ObjectPool
12
- local ____exception = require("exception")
13
- local IllegalStateException = ____exception.IllegalStateException
13
+ local ____destroyable = require("destroyable")
14
+ local AbstractDestroyable = ____destroyable.AbstractDestroyable
15
+ local ____callback_2Darray = require("utility.callback-array")
16
+ local addCallback = ____callback_2Darray.addCallback
17
+ local callbackArray = ____callback_2Darray.callbackArray
18
+ local consumeCallback = ____callback_2Darray.consumeCallback
19
+ local consumeCallbacks = ____callback_2Darray.consumeCallbacks
14
20
  local createTimer = CreateTimer
15
21
  local timerStart = TimerStart
16
22
  local pauseTimer = PauseTimer
@@ -23,6 +29,7 @@ local getHandleId = GetHandleId
23
29
  local ____pcall = _G.pcall
24
30
  local ____print = _G.print
25
31
  local select = _G.select
32
+ local ____type = _G.type
26
33
  local safeCall = warpack.safeCall
27
34
  local corunning = coroutine.running
28
35
  local coresume = coroutine.resume
@@ -35,61 +42,76 @@ local timerByHandleId = {}
35
42
  local function timerSafeCall()
36
43
  local timer = timerByHandleId[getHandleId(getExpiredTimer())]
37
44
  if timer ~= nil then
38
- if timer[2] then
45
+ if timer[1] then
39
46
  timer:destroy()
40
47
  end
41
- local callback = timer[3]
48
+ local callback = timer[2]
42
49
  if callback ~= nil then
43
50
  safeCall(
44
51
  callback,
45
- ____unpack(timer, 4 + 1, 4 + (timer[4] or 0))
52
+ ____unpack(timer, 3 + 1, 3 + (timer[3] or 0))
46
53
  )
47
54
  end
48
55
  end
49
56
  end
57
+ local zeroTimerScheduled = false
58
+ local zeroTimerCallbacks = callbackArray()
59
+ ---
60
+ -- @internal For use by internal systems only.
61
+ ____exports.consumeZeroTimerCallback = function(id)
62
+ consumeCallback(zeroTimerCallbacks, id)
63
+ end
64
+ local function invokeZeroTimerCallbacks()
65
+ zeroTimerScheduled = false
66
+ consumeCallbacks(zeroTimerCallbacks)
67
+ end
50
68
  ____exports.Timer = __TS__Class()
51
69
  local Timer = ____exports.Timer
52
70
  Timer.name = "Timer"
71
+ __TS__ClassExtends(Timer, AbstractDestroyable)
53
72
  function Timer.prototype.____constructor(self)
73
+ AbstractDestroyable.prototype.____constructor(self)
54
74
  self[0] = get()
55
75
  timerByHandleId[getHandleId(self[0])] = self
56
76
  end
57
77
  function Timer.prototype.start(self, timeout, periodic, callback, ...)
58
- self[3] = callback
78
+ self[2] = callback
59
79
  local argsLength = select("#", ...)
60
- self[4] = argsLength
80
+ self[3] = argsLength
61
81
  for i = 1, argsLength do
62
- self[4 + i] = (select(i, ...))
82
+ self[3 + i] = (select(i, ...))
63
83
  end
64
84
  timerStart(self.handle, timeout, periodic, timerSafeCall)
65
85
  end
86
+ function Timer.prototype.onDestroy(self)
87
+ local handle = self[0]
88
+ timerByHandleId[getHandleId(handle)] = nil
89
+ release(handle)
90
+ return AbstractDestroyable.prototype.onDestroy(self)
91
+ end
66
92
  function Timer.prototype.pause(self)
67
93
  pauseTimer(self[0])
68
94
  end
69
95
  function Timer.prototype.resume(self)
70
96
  resumeTimer(self[0])
71
97
  end
72
- function Timer.prototype.destroy(self)
73
- if self[1] then
74
- error(
75
- __TS__New(IllegalStateException, "Double-destroy run for timer"),
76
- 0
77
- )
78
- end
79
- local handle = self[0]
80
- timerByHandleId[getHandleId(handle)] = nil
81
- release(handle)
82
- self[1] = true
83
- end
84
98
  function Timer.create(self)
85
99
  return __TS__New(____exports.Timer)
86
100
  end
87
- function Timer.run(self, callback, ...)
88
- ____exports.Timer:simple(0, callback, ...)
101
+ function Timer.run(self, objectOrCallback, keyOrFirstArg, ...)
102
+ if not zeroTimerScheduled then
103
+ zeroTimerScheduled = true
104
+ ____exports.Timer:simple(0, invokeZeroTimerCallbacks)
105
+ end
106
+ if ____type(objectOrCallback) == "function" then
107
+ return addCallback(zeroTimerCallbacks, objectOrCallback, keyOrFirstArg, ...)
108
+ else
109
+ return addCallback(zeroTimerCallbacks, objectOrCallback[keyOrFirstArg], objectOrCallback, ...)
110
+ end
89
111
  end
90
112
  function Timer.simple(self, timeout, callback, ...)
91
113
  local timer = __TS__New(____exports.Timer)
92
- timer[2] = true
114
+ timer[1] = true
93
115
  timer:start(timeout, false, callback, ...)
94
116
  return timer
95
117
  end
@@ -1,6 +1,11 @@
1
1
  /** @noSelfInFile */
2
2
  import "../../engine/internal/unit";
3
3
  import "../../engine/internal/unit/ability";
4
+ import "../../engine/internal/unit/appearance";
5
+ import "../../engine/internal/unit/extended-inventory";
6
+ import "../../engine/internal/unit/equipment-inventory";
7
+ import "../../engine/internal/unit/inventory";
8
+ import "../../engine/internal/unit/item-order-events";
4
9
  import "../../engine/internal/unit+damage";
5
10
  import "../../engine/internal/unit+rally";
6
11
  import "../../engine/internal/unit+spellSteal";
@@ -1,6 +1,11 @@
1
1
  local ____exports = {}
2
2
  require("engine.internal.unit")
3
3
  require("engine.internal.unit.ability")
4
+ require("engine.internal.unit.appearance")
5
+ require("engine.internal.unit.extended-inventory")
6
+ require("engine.internal.unit.equipment-inventory")
7
+ require("engine.internal.unit.inventory")
8
+ require("engine.internal.unit.item-order-events")
4
9
  require("engine.internal.unit+damage")
5
10
  require("engine.internal.unit+rally")
6
11
  require("engine.internal.unit+spellSteal")
package/core/util.d.ts CHANGED
@@ -54,9 +54,11 @@ declare global {
54
54
  function fourCC(id: string): number;
55
55
  }
56
56
  declare namespace inner {
57
- const orderId: (id: "blink" | "stop" | "load" | "sleep" | "absorb" | "acidbomb" | "acolyteharvest" | "ambush" | "ancestralspirit" | "ancestralspirittarget" | "animatedead" | "antimagicshell" | "attack" | "attackground" | "attackonce" | "attributemodskill" | "auraunholy" | "auravampiric" | "autodispel" | "autodispeloff" | "autodispelon" | "autoentangle" | "autoentangleinstant" | "autoharvestgold" | "autoharvestlumber" | "avatar" | "avengerform" | "awaken" | "banish" | "barkskin" | "barkskinoff" | "barkskinon" | "battleroar" | "battlestations" | "bearform" | "berserk" | "blackarrow" | "blackarrowoff" | "blackarrowon" | "blight" | "blizzard" | "bloodlust" | "bloodlustoff" | "bloodluston" | "board" | "breathoffire" | "breathoffrost" | "build" | "burrow" | "cannibalize" | "carrionscarabs" | "carrionscarabsinstant" | "carrionscarabsoff" | "carrionscarabson" | "carrionswarm" | "chainlightning" | "channel" | "charm" | "chemicalrage" | "cloudoffog" | "clusterrockets" | "coldarrows" | "coldarrowstarg" | "controlmagic" | "corporealform" | "corrosivebreath" | "coupleinstant" | "coupletarget" | "creepanimatedead" | "creepdevour" | "creepheal" | "creephealoff" | "creephealon" | "creepthunderbolt" | "creepthunderclap" | "cripple" | "curse" | "curseoff" | "curseon" | "cyclone" | "darkconversion" | "darkportal" | "darkritual" | "darksummoning" | "deathanddecay" | "deathcoil" | "deathpact" | "decouple" | "defend" | "detectaoe" | "detonate" | "devour" | "devourmagic" | "disassociate" | "disenchant" | "dismount" | "dispel" | "divineshield" | "doom" | "drain" | "dreadlordinferno" | "dropitem" | "moveslot0" | "moveslot1" | "moveslot2" | "moveslot3" | "moveslot4" | "moveslot5" | "useslot0" | "useslot1" | "useslot2" | "useslot3" | "useslot4" | "useslot5" | "drunkenhaze" | "earthquake" | "eattree" | "elementalfury" | "ensnare" | "ensnareoff" | "ensnareon" | "entangle" | "entangleinstant" | "entanglingroots" | "etherealform" | "evileye" | "faeriefire" | "faeriefireoff" | "faeriefireon" | "fanofknives" | "farsight" | "fingerofdeath" | "firebolt" | "flamestrike" | "flamingarrows" | "flamingarrowstarg" | "flamingattack" | "flamingattacktarg" | "flare" | "forceboard" | "forceofnature" | "forkedlightning" | "freezingbreath" | "frenzy" | "frenzyoff" | "frenzyon" | "frostarmor" | "frostarmoroff" | "frostarmoron" | "frostnova" | "getitem" | "gold2lumber" | "grabtree" | "harvest" | "heal" | "healingspray" | "healingward" | "healingwave" | "healoff" | "healon" | "hex" | "holdposition" | "holybolt" | "howlofterror" | "humanbuild" | "immolation" | "impale" | "incineratearrow" | "incineratearrowoff" | "incineratearrowon" | "inferno" | "innerfire" | "innerfireoff" | "innerfireon" | "instant" | "invisibility" | "lavamonster" | "lightningshield" | "loadarcher" | "loadcorpse" | "loadcorpseinstant" | "locustswarm" | "lumber2gold" | "magicdefense" | "magicleash" | "magicundefense" | "manaburn" | "manaflareoff" | "manaflareon" | "manashieldoff" | "manashieldon" | "massteleport" | "mechanicalcritter" | "metamorphosis" | "militia" | "militiaconvert" | "militiaoff" | "militiaunconvert" | "mindrot" | "mirrorimage" | "monsoon" | "mount" | "mounthippogryph" | "move" | "moveAI" | "nagabuild" | "neutraldetectaoe" | "neutralinteract" | "neutralspell" | "nightelfbuild" | "orcbuild" | "parasite" | "parasiteoff" | "parasiteon" | "patrol" | "patrolAI" | "phaseshift" | "phaseshiftinstant" | "phaseshiftoff" | "phaseshifton" | "phoenixfire" | "phoenixmorph" | "poisonarrows" | "poisonarrowstarg" | "polymorph" | "possession" | "preservation" | "purge" | "rainofchaos" | "rainoffire" | "raisedead" | "raisedeadoff" | "raisedeadon" | "ravenform" | "recharge" | "rechargeoff" | "rechargeon" | "rejuvination" | "renew" | "renewoff" | "renewon" | "repair" | "repairoff" | "repairon" | "replenish" | "replenishlife" | "replenishlifeoff" | "replenishlifeon" | "replenishmana" | "replenishmanaoff" | "replenishmanaon" | "replenishoff" | "replenishon" | "request_hero" | "requestsacrifice" | "restoration" | "restorationoff" | "restorationon" | "resumebuild" | "resumeharvesting" | "resurrection" | "returnresources" | "revenge" | "revive" | "roar" | "robogoblin" | "root" | "sacrifice" | "sanctuary" | "scout" | "selfdestruct" | "selfdestructoff" | "selfdestructon" | "sentinel" | "follow" | "smart" | "setrally" | "shadowsight" | "shadowstrike" | "shockwave" | "silence" | "slow" | "slowoff" | "slowon" | "soulburn" | "soulpreservation" | "spellshield" | "spellshieldaoe" | "spellsteal" | "spellstealoff" | "spellstealon" | "spies" | "spiritlink" | "spiritofvengeance" | "spirittroll" | "spiritwolf" | "stampede" | "standdown" | "starfall" | "stasistrap" | "steal" | "stomp" | "stoneform" | "stunned" | "submerge" | "summonfactory" | "summongrizzly" | "summonphoenix" | "summonquillbeast" | "summonwareagle" | "tankdroppilot" | "tankloadpilot" | "tankpilot" | "taunt" | "thunderbolt" | "thunderclap" | "tornado" | "townbelloff" | "townbellon" | "tranquility" | "transmute" | "unavatar" | "unavengerform" | "unbearform" | "unburrow" | "uncoldarrows" | "uncorporealform" | "undeadbuild" | "undefend" | "undivineshield" | "unetherealform" | "unflamingarrows" | "unflamingattack" | "unholyfrenzy" | "unimmolation" | "unload" | "unloadall" | "unloadallcorpses" | "unloadallinstant" | "unpoisonarrows" | "unravenform" | "unrobogoblin" | "unroot" | "unstableconcoction" | "unstoneform" | "unsubmerge" | "unsummon" | "unwindwalk" | "vengeance" | "vengeanceinstant" | "vengeanceoff" | "vengeanceon" | "volcano" | "voodoo" | "ward" | "waterelemental" | "wateryminion" | "web" | "weboff" | "webon" | "whirlwind" | "windwalk" | "wispharvest") => number;
57
+ /** @deprecated Use the {@link OrderType} const enum from `warscript/engine/object-data/auxiliary/order-type` instead. */
58
+ const orderId: (id: "blink" | "stop" | "load" | "sleep" | "absorb" | "acidbomb" | "acolyteharvest" | "AImove" | "ambush" | "ancestralspirit" | "ancestralspirittarget" | "animatedead" | "antimagicshell" | "attack" | "attackground" | "attackonce" | "attributemodskill" | "auracalltoarms" | "auraunholy" | "auravampiric" | "autodispel" | "autodispeloff" | "autodispelon" | "autoentangle" | "autoentangleinstant" | "autoharvestgold" | "autoharvestlumber" | "avatar" | "avengerform" | "awaken" | "banish" | "barkskin" | "barkskinoff" | "barkskinon" | "batteringram" | "battleroar" | "battlestations" | "bearform" | "berserk" | "blackarrow" | "blackarrowoff" | "blackarrowon" | "bladedance" | "blight" | "blizzard" | "bloodlust" | "bloodlustoff" | "bloodluston" | "board" | "breathoffire" | "breathoffrost" | "build" | "burrow" | "cannibalize" | "carrionscarabs" | "carrionscarabsinstant" | "carrionscarabsoff" | "carrionscarabson" | "carrionswarm" | "chainlightning" | "challengingcall" | "channel" | "charm" | "chemicalrage" | "cleansingfire" | "cloudoffog" | "clusterrockets" | "coldarrows" | "coldarrowstarg" | "consecration" | "controlmagic" | "corporealform" | "corrosivebreath" | "coupleinstant" | "coupletarget" | "creepanimatedead" | "creepdevour" | "creepheal" | "creephealoff" | "creephealon" | "creepthunderbolt" | "creepthunderclap" | "cripple" | "curse" | "curseoff" | "curseon" | "cyclone" | "darkconversion" | "darkportal" | "darkritual" | "darksummoning" | "deathanddecay" | "deathcoil" | "deathpact" | "deathseekerbow" | "decouple" | "defend" | "detectaoe" | "detonate" | "devour" | "devourmagic" | "disassociate" | "disenchant" | "dismount" | "dispel" | "divineshield" | "doom" | "drain" | "dreadlordinferno" | "dropitem" | "moveslot0" | "moveslot1" | "moveslot2" | "moveslot3" | "moveslot4" | "moveslot5" | "useslot0" | "useslot1" | "useslot2" | "useslot3" | "useslot4" | "useslot5" | "moveslotext0" | "moveslotext1" | "moveslotext2" | "moveslotext3" | "moveslotext4" | "moveslotext5" | "moveslotext6" | "moveslotext7" | "moveslotext8" | "moveslotext9" | "moveslotext10" | "moveslotext11" | "moveslotext12" | "moveslotext13" | "moveslotext14" | "moveslotext15" | "moveslotext16" | "moveslotext17" | "moveslotext18" | "moveslotext19" | "moveslotext20" | "moveslotext21" | "moveslotext22" | "moveslotext23" | "moveslotext24" | "moveslotext25" | "moveslotext26" | "moveslotext27" | "moveslotext28" | "moveslotext29" | "moveslotequip0" | "moveslotequip1" | "moveslotequip2" | "moveslotequip3" | "moveslotequip4" | "moveslotequip5" | "moveslotequip6" | "moveslotequip7" | "moveslotequip8" | "useslotext0" | "useslotext1" | "useslotext2" | "useslotext3" | "useslotext4" | "useslotext5" | "useslotext6" | "useslotext7" | "useslotext8" | "useslotext9" | "useslotext10" | "useslotext11" | "useslotext12" | "useslotext13" | "useslotext14" | "useslotext15" | "useslotext16" | "useslotext17" | "useslotext18" | "useslotext19" | "useslotext20" | "useslotext21" | "useslotext22" | "useslotext23" | "useslotext24" | "useslotext25" | "useslotext26" | "useslotext27" | "useslotext28" | "useslotext29" | "useslotequip0" | "useslotequip1" | "useslotequip2" | "useslotequip3" | "useslotequip4" | "useslotequip5" | "useslotequip6" | "useslotequip7" | "useslotequip8" | "drunkenhaze" | "earthquake" | "eattree" | "elementalfury" | "ensnare" | "ensnareaoe" | "ensnareoff" | "ensnareon" | "entangle" | "entangleinstant" | "entanglingroots" | "etherealform" | "evileye" | "faeriefire" | "faeriefireoff" | "faeriefireon" | "fanofknives" | "farsight" | "fingerofdeath" | "firebolt" | "flamestrike" | "flamingarrows" | "flamingarrowstarg" | "flamingattack" | "flamingattacktarg" | "flare" | "forceboard" | "forceofnature" | "forkedlightning" | "freezingbreath" | "frenzy" | "frenzyoff" | "frenzyon" | "frostarmor" | "frostarmoroff" | "frostarmoron" | "frostnova" | "getitem" | "gold2lumber" | "grabtree" | "grit" | "guidinghand" | "harvest" | "headsplitter" | "heal" | "healingspray" | "healingward" | "healingwave" | "healoff" | "healon" | "heroicchallenge" | "heroicslash" | "hex" | "holdposition" | "holybolt" | "howlofterror" | "humanbuild" | "immolation" | "impale" | "incineratearrow" | "incineratearrowoff" | "incineratearrowon" | "inferno" | "innerfire" | "innerfireoff" | "innerfireon" | "inspirecourage" | "instant" | "invisibility" | "lavamonster" | "lightningshield" | "loadarcher" | "loadcorpse" | "loadcorpseinstant" | "locustswarm" | "lumber2gold" | "magicdefense" | "magicleash" | "magicundefense" | "manaburn" | "manaflareoff" | "manaflareon" | "manashieldoff" | "manashieldon" | "massteleport" | "mechanicalcritter" | "metamorphosis" | "militia" | "militiaconvert" | "militiaoff" | "militiaunconvert" | "mindrot" | "mirrorimage" | "monsoon" | "mount" | "mounthippogryph" | "move" | "nagabuild" | "neutraldetectaoe" | "neutralinteract" | "neutralspell" | "nightelfbuild" | "orcbuild" | "parasite" | "parasiteoff" | "parasiteon" | "patrol" | "AIpatrol" | "phaseshift" | "phaseshiftinstant" | "phaseshiftoff" | "phaseshifton" | "phoenixfire" | "phoenixmorph" | "poisonarrows" | "poisonarrowstarg" | "polymorph" | "possession" | "preservation" | "purge" | "purifierblade" | "rainofchaos" | "rainoffire" | "raisedead" | "raisedeadoff" | "raisedeadon" | "ravenform" | "recharge" | "rechargeoff" | "rechargeon" | "rejuvination" | "renew" | "renewoff" | "renewon" | "repair" | "repairoff" | "repairon" | "replenish" | "replenishlife" | "replenishlifeoff" | "replenishlifeon" | "replenishmana" | "replenishmanaoff" | "replenishmanaon" | "replenishoff" | "replenishon" | "request_hero" | "requestsacrifice" | "restoration" | "restorationoff" | "restorationon" | "resumebuild" | "resumeharvesting" | "resurrection" | "returnresources" | "revenge" | "revive" | "righteousfury" | "ritualdagger" | "roar" | "robogoblin" | "root" | "sacrifice" | "sanctuary" | "scout" | "selfdestruct" | "selfdestructoff" | "selfdestructon" | "sentinel" | "follow" | "smart" | "setrally" | "shadowsight" | "shadowstrike" | "shockwave" | "silence" | "slow" | "slowoff" | "slowon" | "soulburn" | "soullantern" | "soulpreservation" | "spellshield" | "spellshieldaoe" | "spellsteal" | "spellstealoff" | "spellstealon" | "spies" | "spiritlink" | "spiritofvengeance" | "spirittroll" | "spiritwolf" | "stampede" | "standdown" | "starfall" | "stasistrap" | "steal" | "stomp" | "stoneform" | "stunned" | "submerge" | "summonfactory" | "summongrizzly" | "summonphoenix" | "summonquillbeast" | "summonwareagle" | "sweepingstrike" | "tankdroppilot" | "tankloadpilot" | "tankpilot" | "taunt" | "thunderbolt" | "thunderclap" | "tornado" | "townbelloff" | "townbellon" | "tranquility" | "transmute" | "unavatar" | "unavengerform" | "unbearform" | "unburrow" | "uncoldarrows" | "uncorporealform" | "undeadbuild" | "undeadvengeance" | "undefend" | "undivineshield" | "unetherealform" | "unflamingarrows" | "unflamingattack" | "unguidinghand" | "unholyfrenzy" | "unholyfrenzyaoe" | "unimmolation" | "unload" | "unloadall" | "unloadallcorpses" | "unloadallinstant" | "unpoisonarrows" | "unravenform" | "unrobogoblin" | "unroot" | "unsoullantern" | "unstableconcoction" | "unstoneform" | "unsubmerge" | "unsummon" | "unwindwalk" | "valiantcharge" | "vengeance" | "vengeanceinstant" | "vengeanceoff" | "vengeanceon" | "volcano" | "voodoo" | "warcry" | "ward" | "waterelemental" | "wateryminion" | "web" | "weboff" | "webon" | "whirlwind" | "windwalk" | "wispharvest" | "witheringfire") => number;
58
59
  }
59
60
  declare global {
61
+ /** @deprecated Use the {@link OrderType} const enum from `warscript/engine/object-data/auxiliary/order-type` instead. */
60
62
  function orderId(...args: Parameters<typeof inner.orderId>): ReturnType<typeof inner.orderId>;
61
63
  }
62
64
  export {};
package/core/util.lua CHANGED
@@ -100,11 +100,14 @@ macro_define(
100
100
  _G.fourCC = util.s2id
101
101
  local inner = {}
102
102
  do
103
+ ---
104
+ -- @deprecated Use the {@link OrderType } const enum from `warscript/engine/object-data/auxiliary/order-type` instead.
103
105
  inner.orderId = (function()
104
106
  local orders = {
105
107
  absorb = 852529,
106
108
  acidbomb = 852662,
107
109
  acolyteharvest = 852185,
110
+ AImove = 851988,
108
111
  ambush = 852131,
109
112
  ancestralspirit = 852490,
110
113
  ancestralspirittarget = 852491,
@@ -114,6 +117,7 @@ do
114
117
  attackground = 851984,
115
118
  attackonce = 851985,
116
119
  attributemodskill = 852576,
120
+ auracalltoarms = 852688,
117
121
  auraunholy = 852215,
118
122
  auravampiric = 852216,
119
123
  autodispel = 852132,
@@ -130,6 +134,7 @@ do
130
134
  barkskin = 852135,
131
135
  barkskinoff = 852137,
132
136
  barkskinon = 852136,
137
+ batteringram = 852705,
133
138
  battleroar = 852599,
134
139
  battlestations = 852099,
135
140
  bearform = 852138,
@@ -137,6 +142,7 @@ do
137
142
  blackarrow = 852577,
138
143
  blackarrowoff = 852579,
139
144
  blackarrowon = 852578,
145
+ bladedance = 852698,
140
146
  blight = 852187,
141
147
  blink = 852525,
142
148
  blizzard = 852089,
@@ -155,13 +161,16 @@ do
155
161
  carrionscarabson = 852552,
156
162
  carrionswarm = 852218,
157
163
  chainlightning = 852119,
164
+ challengingcall = 852520,
158
165
  channel = 852600,
159
166
  charm = 852581,
160
167
  chemicalrage = 852663,
168
+ cleansingfire = 852704,
161
169
  cloudoffog = 852473,
162
170
  clusterrockets = 852652,
163
171
  coldarrows = 852244,
164
172
  coldarrowstarg = 852243,
173
+ consecration = 852702,
165
174
  controlmagic = 852474,
166
175
  corporealform = 852493,
167
176
  corrosivebreath = 852140,
@@ -186,6 +195,7 @@ do
186
195
  deathanddecay = 852221,
187
196
  deathcoil = 852222,
188
197
  deathpact = 852223,
198
+ deathseekerbow = 852710,
189
199
  decouple = 852509,
190
200
  defend = 852055,
191
201
  detectaoe = 852015,
@@ -213,11 +223,90 @@ do
213
223
  useslot3 = 852011,
214
224
  useslot4 = 852012,
215
225
  useslot5 = 852013,
226
+ moveslotext0 = 852714,
227
+ moveslotext1 = 852715,
228
+ moveslotext2 = 852716,
229
+ moveslotext3 = 852717,
230
+ moveslotext4 = 852718,
231
+ moveslotext5 = 852719,
232
+ moveslotext6 = 852720,
233
+ moveslotext7 = 852721,
234
+ moveslotext8 = 852722,
235
+ moveslotext9 = 852723,
236
+ moveslotext10 = 852724,
237
+ moveslotext11 = 852725,
238
+ moveslotext12 = 852726,
239
+ moveslotext13 = 852727,
240
+ moveslotext14 = 852728,
241
+ moveslotext15 = 852729,
242
+ moveslotext16 = 852730,
243
+ moveslotext17 = 852731,
244
+ moveslotext18 = 852732,
245
+ moveslotext19 = 852733,
246
+ moveslotext20 = 852734,
247
+ moveslotext21 = 852735,
248
+ moveslotext22 = 852736,
249
+ moveslotext23 = 852737,
250
+ moveslotext24 = 852738,
251
+ moveslotext25 = 852739,
252
+ moveslotext26 = 852740,
253
+ moveslotext27 = 852741,
254
+ moveslotext28 = 852742,
255
+ moveslotext29 = 852743,
256
+ moveslotequip0 = 852744,
257
+ moveslotequip1 = 852745,
258
+ moveslotequip2 = 852746,
259
+ moveslotequip3 = 852747,
260
+ moveslotequip4 = 852748,
261
+ moveslotequip5 = 852749,
262
+ moveslotequip6 = 852750,
263
+ moveslotequip7 = 852751,
264
+ moveslotequip8 = 852752,
265
+ useslotext0 = 852771,
266
+ useslotext1 = 852772,
267
+ useslotext2 = 852773,
268
+ useslotext3 = 852774,
269
+ useslotext4 = 852775,
270
+ useslotext5 = 852776,
271
+ useslotext6 = 852777,
272
+ useslotext7 = 852778,
273
+ useslotext8 = 852779,
274
+ useslotext9 = 852780,
275
+ useslotext10 = 852781,
276
+ useslotext11 = 852782,
277
+ useslotext12 = 852783,
278
+ useslotext13 = 852784,
279
+ useslotext14 = 852785,
280
+ useslotext15 = 852786,
281
+ useslotext16 = 852787,
282
+ useslotext17 = 852788,
283
+ useslotext18 = 852789,
284
+ useslotext19 = 852790,
285
+ useslotext20 = 852791,
286
+ useslotext21 = 852792,
287
+ useslotext22 = 852793,
288
+ useslotext23 = 852794,
289
+ useslotext24 = 852795,
290
+ useslotext25 = 852796,
291
+ useslotext26 = 852797,
292
+ useslotext27 = 852798,
293
+ useslotext28 = 852799,
294
+ useslotext29 = 852800,
295
+ useslotequip0 = 852801,
296
+ useslotequip1 = 852802,
297
+ useslotequip2 = 852803,
298
+ useslotequip3 = 852804,
299
+ useslotequip4 = 852805,
300
+ useslotequip5 = 852806,
301
+ useslotequip6 = 852807,
302
+ useslotequip7 = 852808,
303
+ useslotequip8 = 852809,
216
304
  drunkenhaze = 852585,
217
305
  earthquake = 852121,
218
306
  eattree = 852146,
219
307
  elementalfury = 852586,
220
308
  ensnare = 852106,
309
+ ensnareaoe = 852687,
221
310
  ensnareoff = 852108,
222
311
  ensnareon = 852107,
223
312
  entangle = 852147,
@@ -252,13 +341,18 @@ do
252
341
  getitem = 851981,
253
342
  gold2lumber = 852233,
254
343
  grabtree = 852511,
344
+ grit = 852693,
345
+ guidinghand = 852695,
255
346
  harvest = 852018,
347
+ headsplitter = 852691,
256
348
  heal = 852063,
257
349
  healingspray = 852664,
258
350
  healingward = 852109,
259
351
  healingwave = 852501,
260
352
  healoff = 852065,
261
353
  healon = 852064,
354
+ heroicchallenge = 852694,
355
+ heroicslash = 852684,
262
356
  hex = 852502,
263
357
  holdposition = 851993,
264
358
  holybolt = 852092,
@@ -273,6 +367,7 @@ do
273
367
  innerfire = 852066,
274
368
  innerfireoff = 852068,
275
369
  innerfireon = 852067,
370
+ inspirecourage = 852689,
276
371
  instant = 852200,
277
372
  invisibility = 852069,
278
373
  lavamonster = 852667,
@@ -304,7 +399,6 @@ do
304
399
  mount = 852469,
305
400
  mounthippogryph = 852143,
306
401
  move = 851986,
307
- moveAI = 851988,
308
402
  nagabuild = 852467,
309
403
  neutraldetectaoe = 852023,
310
404
  neutralinteract = 852566,
@@ -315,7 +409,7 @@ do
315
409
  parasiteoff = 852603,
316
410
  parasiteon = 852602,
317
411
  patrol = 851990,
318
- patrolAI = 851991,
412
+ AIpatrol = 851991,
319
413
  phaseshift = 852514,
320
414
  phaseshiftinstant = 852517,
321
415
  phaseshiftoff = 852516,
@@ -328,6 +422,7 @@ do
328
422
  possession = 852196,
329
423
  preservation = 852568,
330
424
  purge = 852111,
425
+ purifierblade = 852707,
331
426
  rainofchaos = 852237,
332
427
  rainoffire = 852238,
333
428
  raisedead = 852197,
@@ -364,6 +459,8 @@ do
364
459
  returnresources = 852020,
365
460
  revenge = 852241,
366
461
  revive = 852039,
462
+ righteousfury = 852706,
463
+ ritualdagger = 852674,
367
464
  roar = 852164,
368
465
  robogoblin = 852656,
369
466
  root = 852165,
@@ -386,6 +483,7 @@ do
386
483
  slowoff = 852077,
387
484
  slowon = 852076,
388
485
  soulburn = 852668,
486
+ soullantern = 852708,
389
487
  soulpreservation = 852242,
390
488
  spellshield = 852571,
391
489
  spellshieldaoe = 852572,
@@ -412,6 +510,7 @@ do
412
510
  summonphoenix = 852489,
413
511
  summonquillbeast = 852595,
414
512
  summonwareagle = 852596,
513
+ sweepingstrike = 852680,
415
514
  tankdroppilot = 852079,
416
515
  tankloadpilot = 852080,
417
516
  tankpilot = 852081,
@@ -430,12 +529,15 @@ do
430
529
  uncoldarrows = 852245,
431
530
  uncorporealform = 852494,
432
531
  undeadbuild = 851998,
532
+ undeadvengeance = 852703,
433
533
  undefend = 852056,
434
534
  undivineshield = 852091,
435
535
  unetherealform = 852497,
436
536
  unflamingarrows = 852175,
437
537
  unflamingattack = 852541,
538
+ unguidinghand = 852696,
438
539
  unholyfrenzy = 852209,
540
+ unholyfrenzyaoe = 852675,
439
541
  unimmolation = 852178,
440
542
  unload = 852047,
441
543
  unloadall = 852048,
@@ -445,17 +547,20 @@ do
445
547
  unravenform = 852156,
446
548
  unrobogoblin = 852657,
447
549
  unroot = 852166,
550
+ unsoullantern = 852709,
448
551
  unstableconcoction = 852500,
449
552
  unstoneform = 852207,
450
553
  unsubmerge = 852605,
451
554
  unsummon = 852210,
452
555
  unwindwalk = 852130,
556
+ valiantcharge = 852685,
453
557
  vengeance = 852521,
454
558
  vengeanceinstant = 852524,
455
559
  vengeanceoff = 852523,
456
560
  vengeanceon = 852522,
457
561
  volcano = 852669,
458
562
  voodoo = 852503,
563
+ warcry = 852701,
459
564
  ward = 852504,
460
565
  waterelemental = 852097,
461
566
  wateryminion = 852598,
@@ -464,7 +569,8 @@ do
464
569
  webon = 852212,
465
570
  whirlwind = 852128,
466
571
  windwalk = 852129,
467
- wispharvest = 852214
572
+ wispharvest = 852214,
573
+ witheringfire = 852711
468
574
  }
469
575
  return function(id)
470
576
  return orders[id] or 0