warscript 0.0.1-dev.e0e46c4 → 0.0.1-dev.e147c49

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 (308) hide show
  1. package/attributes.d.ts +1 -0
  2. package/attributes.lua +9 -0
  3. package/core/types/frame.d.ts +1 -0
  4. package/core/types/frame.lua +136 -58
  5. package/core/types/handle.lua +9 -9
  6. package/core/types/item.d.ts +1 -0
  7. package/core/types/item.lua +1 -0
  8. package/core/types/player.d.ts +18 -1
  9. package/core/types/player.lua +76 -26
  10. package/core/types/playerCamera.d.ts +2 -0
  11. package/core/types/playerCamera.lua +123 -5
  12. package/core/types/playerColor.lua +4 -3
  13. package/core/types/sound.d.ts +1 -1
  14. package/core/types/sound.lua +14 -9
  15. package/core/types/tileCell.d.ts +11 -1
  16. package/core/types/tileCell.lua +97 -0
  17. package/core/types/timer.d.ts +3 -1
  18. package/core/types/timer.lua +27 -2
  19. package/core/types/unit.d.ts +4 -0
  20. package/core/types/unit.lua +4 -0
  21. package/decl/native.d.ts +711 -11
  22. package/destroyable.d.ts +1 -0
  23. package/destroyable.lua +9 -0
  24. package/engine/behavior.d.ts +14 -1
  25. package/engine/behavior.lua +230 -70
  26. package/engine/behaviour/ability/apply-buff.lua +4 -4
  27. package/engine/behaviour/ability/damage.d.ts +3 -0
  28. package/engine/behaviour/ability/damage.lua +18 -15
  29. package/engine/behaviour/ability/emulate-impact.d.ts +1 -1
  30. package/engine/behaviour/ability/emulate-impact.lua +7 -5
  31. package/engine/behaviour/ability/remove-buffs.d.ts +9 -0
  32. package/engine/behaviour/ability/remove-buffs.lua +21 -0
  33. package/engine/behaviour/ability/restore-mana.d.ts +1 -1
  34. package/engine/behaviour/ability/restore-mana.lua +6 -6
  35. package/engine/behaviour/ability.d.ts +12 -6
  36. package/engine/behaviour/ability.lua +42 -1
  37. package/engine/behaviour/unit/stun-immunity.d.ts +9 -5
  38. package/engine/behaviour/unit/stun-immunity.lua +17 -7
  39. package/engine/behaviour/unit.d.ts +16 -5
  40. package/engine/behaviour/unit.lua +133 -26
  41. package/engine/buff.d.ts +73 -27
  42. package/engine/buff.lua +424 -193
  43. package/engine/index.d.ts +2 -1
  44. package/engine/internal/ability.d.ts +7 -1
  45. package/engine/internal/ability.lua +86 -44
  46. package/engine/internal/item/fields.d.ts +12 -0
  47. package/engine/internal/item/fields.lua +33 -0
  48. package/engine/internal/item+owner.d.ts +1 -0
  49. package/engine/internal/item+owner.lua +19 -6
  50. package/engine/internal/item.d.ts +23 -14
  51. package/engine/internal/item.lua +169 -82
  52. package/engine/internal/mechanics/cast-ability.lua +6 -3
  53. package/engine/internal/misc/frame-coordinates.lua +21 -0
  54. package/engine/internal/misc/get-terrain-z.d.ts +2 -0
  55. package/engine/internal/misc/get-terrain-z.lua +11 -0
  56. package/engine/internal/misc/player-local-handle.d.ts +2 -0
  57. package/engine/internal/misc/player-local-handle.lua +5 -0
  58. package/engine/internal/object-data/armor-bonus.d.ts +2 -0
  59. package/engine/internal/object-data/attribute-bonus.lua +2 -2
  60. package/engine/internal/object-data/health-bonus.d.ts +2 -0
  61. package/engine/internal/object-data/health-bonus.lua +16 -0
  62. package/engine/internal/object-data/mana-bonus.d.ts +2 -0
  63. package/engine/internal/object-data/mana-bonus.lua +16 -0
  64. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.d.ts +2 -0
  65. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
  66. package/engine/internal/unit/ability.d.ts +14 -14
  67. package/engine/internal/unit/ability.lua +86 -47
  68. package/engine/internal/unit/appearance.d.ts +15 -0
  69. package/engine/internal/unit/appearance.lua +85 -0
  70. package/engine/internal/unit/attributes.d.ts +17 -0
  71. package/engine/internal/unit/attributes.lua +46 -0
  72. package/engine/internal/unit/bag.d.ts +18 -0
  73. package/engine/internal/unit/bag.lua +63 -0
  74. package/engine/internal/unit/bonus.d.ts +6 -0
  75. package/engine/internal/unit/bonus.lua +33 -3
  76. package/engine/internal/unit/buff.d.ts +2 -2
  77. package/engine/internal/unit/buff.lua +34 -19
  78. package/engine/internal/unit/equipment.d.ts +36 -0
  79. package/engine/internal/unit/equipment.lua +169 -0
  80. package/engine/internal/unit/fly-height.d.ts +7 -0
  81. package/engine/internal/unit/fly-height.lua +20 -0
  82. package/engine/internal/unit/interrupts.d.ts +12 -0
  83. package/engine/internal/unit/interrupts.lua +28 -0
  84. package/engine/internal/unit/{item.d.ts → inventory.d.ts} +3 -3
  85. package/engine/internal/unit/{item.lua → inventory.lua} +25 -26
  86. package/engine/internal/unit/main-selected.lua +12 -27
  87. package/engine/internal/unit/pseudo-passive-abilities.d.ts +2 -0
  88. package/engine/internal/unit/pseudo-passive-abilities.lua +11 -0
  89. package/engine/internal/unit/range-event.d.ts +12 -0
  90. package/engine/internal/unit/range-event.lua +90 -0
  91. package/engine/internal/unit/scale.d.ts +7 -0
  92. package/engine/internal/unit/scale.lua +20 -0
  93. package/engine/internal/unit+ability.lua +10 -1
  94. package/engine/internal/unit+bonus.lua +3 -3
  95. package/engine/internal/unit+damage.d.ts +9 -0
  96. package/engine/internal/unit+damage.lua +33 -0
  97. package/engine/internal/unit-missile-data.lua +58 -32
  98. package/engine/internal/unit-missile-launch.lua +52 -14
  99. package/engine/internal/unit.d.ts +18 -24
  100. package/engine/internal/unit.lua +180 -206
  101. package/engine/local-client.d.ts +27 -0
  102. package/engine/local-client.lua +518 -54
  103. package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
  104. package/engine/object-data/auxiliary/armor-type.lua +46 -0
  105. package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
  106. package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
  107. package/engine/object-data/auxiliary/equipment-type.d.ts +13 -0
  108. package/engine/object-data/auxiliary/equipment-type.lua +2 -0
  109. package/engine/object-data/auxiliary/health-regeneration-type.d.ts +8 -0
  110. package/engine/object-data/auxiliary/health-regeneration-type.lua +2 -0
  111. package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
  112. package/engine/object-data/auxiliary/item-tag.lua +2 -0
  113. package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
  114. package/engine/object-data/auxiliary/unit-attribute.lua +1 -1
  115. package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
  116. package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
  117. package/engine/object-data/entry/ability-type/armor-bonus.d.ts +8 -0
  118. package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
  119. package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
  120. package/engine/object-data/entry/ability-type/banshee.lua +13 -0
  121. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
  122. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
  123. package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
  124. package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
  125. package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
  126. package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
  127. package/engine/object-data/entry/ability-type/blank-configurable.d.ts +3 -0
  128. package/engine/object-data/entry/ability-type/blank-configurable.lua +30 -0
  129. package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
  130. package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
  131. package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
  132. package/engine/object-data/entry/ability-type/consecration.lua +52 -0
  133. package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
  134. package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
  135. package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
  136. package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
  137. package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
  138. package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
  139. package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
  140. package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
  141. package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
  142. package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
  143. package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
  144. package/engine/object-data/entry/ability-type/equipment.lua +27 -0
  145. package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
  146. package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
  147. package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
  148. package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
  149. package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
  150. package/engine/object-data/entry/ability-type/grit.lua +65 -0
  151. package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
  152. package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
  153. package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
  154. package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
  155. package/engine/object-data/entry/ability-type/{armor-increase.d.ts → healing-modifier.d.ts} +4 -3
  156. package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
  157. package/engine/object-data/entry/ability-type/health-bonus.d.ts +8 -0
  158. package/engine/object-data/entry/ability-type/health-bonus.lua +26 -0
  159. package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
  160. package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
  161. package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
  162. package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
  163. package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
  164. package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
  165. package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
  166. package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
  167. package/engine/object-data/entry/ability-type/mana-bonus.d.ts +8 -0
  168. package/engine/object-data/entry/ability-type/mana-bonus.lua +26 -0
  169. package/engine/object-data/entry/ability-type/mana-efficiency.d.ts +12 -0
  170. package/engine/object-data/entry/ability-type/mana-efficiency.lua +39 -0
  171. package/engine/object-data/entry/ability-type/mana-regeneration.d.ts +8 -0
  172. package/engine/object-data/entry/ability-type/mana-regeneration.lua +26 -0
  173. package/engine/object-data/entry/ability-type/mind-control.d.ts +21 -0
  174. package/engine/object-data/entry/ability-type/mind-control.lua +78 -0
  175. package/engine/object-data/entry/ability-type/on-attack-cast-spell.d.ts +21 -0
  176. package/engine/object-data/entry/ability-type/on-attack-cast-spell.lua +52 -0
  177. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.d.ts +19 -0
  178. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.lua +65 -0
  179. package/engine/object-data/entry/ability-type/on-hit-cast-spell.d.ts +15 -0
  180. package/engine/object-data/entry/ability-type/on-hit-cast-spell.lua +26 -0
  181. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.d.ts +6 -0
  182. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.lua +12 -0
  183. package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
  184. package/engine/object-data/entry/ability-type/provoke.lua +66 -0
  185. package/engine/object-data/entry/ability-type/raise-the-banner.d.ts +9 -0
  186. package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
  187. package/engine/object-data/entry/ability-type/reincarnation.d.ts +8 -0
  188. package/engine/object-data/entry/ability-type/reincarnation.lua +26 -0
  189. package/engine/object-data/entry/ability-type/resolve.d.ts +12 -0
  190. package/engine/object-data/entry/ability-type/resolve.lua +39 -0
  191. package/engine/object-data/entry/ability-type/righteous-fury.d.ts +33 -0
  192. package/engine/object-data/entry/ability-type/righteous-fury.lua +130 -0
  193. package/engine/object-data/entry/ability-type/sacred-aura.d.ts +27 -0
  194. package/engine/object-data/entry/ability-type/sacred-aura.lua +104 -0
  195. package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
  196. package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
  197. package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
  198. package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
  199. package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
  200. package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
  201. package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
  202. package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
  203. package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
  204. package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
  205. package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
  206. package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
  207. package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
  208. package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
  209. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
  210. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
  211. package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
  212. package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
  213. package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
  214. package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
  215. package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
  216. package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
  217. package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
  218. package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
  219. package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
  220. package/engine/object-data/entry/ability-type/talents.lua +27 -0
  221. package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
  222. package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
  223. package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
  224. package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
  225. package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
  226. package/engine/object-data/entry/ability-type/warcry.lua +26 -0
  227. package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
  228. package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
  229. package/engine/object-data/entry/ability-type.d.ts +12 -3
  230. package/engine/object-data/entry/ability-type.lua +142 -8
  231. package/engine/object-data/entry/buff-type/applicable.lua +113 -109
  232. package/engine/object-data/entry/buff-type.d.ts +6 -2
  233. package/engine/object-data/entry/buff-type.lua +26 -0
  234. package/engine/object-data/entry/destructible-type.d.ts +32 -2
  235. package/engine/object-data/entry/destructible-type.lua +181 -0
  236. package/engine/object-data/entry/item-type.d.ts +12 -3
  237. package/engine/object-data/entry/item-type.lua +52 -0
  238. package/engine/object-data/entry/lightning-type.d.ts +2 -2
  239. package/engine/object-data/entry/sound-preset.d.ts +2 -2
  240. package/engine/object-data/entry/unit-type.d.ts +62 -4
  241. package/engine/object-data/entry/unit-type.lua +474 -38
  242. package/engine/object-data/entry/upgrade.d.ts +2 -2
  243. package/engine/object-data/entry.d.ts +4 -1
  244. package/engine/object-field/ability.d.ts +3 -3
  245. package/engine/object-field/ability.lua +9 -8
  246. package/engine/object-field/item.d.ts +22 -0
  247. package/engine/object-field/item.lua +118 -0
  248. package/engine/object-field/unit.d.ts +27 -5
  249. package/engine/object-field/unit.lua +82 -0
  250. package/engine/object-field.d.ts +12 -4
  251. package/engine/object-field.lua +273 -126
  252. package/engine/random.d.ts +10 -0
  253. package/engine/random.lua +21 -0
  254. package/engine/standard/entries/ability-type.d.ts +3102 -7
  255. package/engine/standard/entries/ability-type.lua +0 -6
  256. package/engine/standard/entries/item-type.d.ts +1299 -0
  257. package/engine/standard/entries/item-type.lua +2 -0
  258. package/engine/standard/entries/unit-type.d.ts +5 -0
  259. package/engine/standard/entries/unit-type.lua +5 -0
  260. package/engine/standard/fields/ability.d.ts +2 -2
  261. package/engine/standard/fields/ability.lua +2 -2
  262. package/engine/standard/fields/item.d.ts +4 -0
  263. package/engine/standard/fields/item.lua +6 -0
  264. package/engine/standard/fields/unit.d.ts +11 -2
  265. package/engine/standard/fields/unit.lua +16 -1
  266. package/engine/synchronization.d.ts +11 -0
  267. package/engine/synchronization.lua +77 -0
  268. package/engine/text-tag.d.ts +1 -1
  269. package/engine/text-tag.lua +92 -17
  270. package/engine/unit.d.ts +9 -1
  271. package/engine/unit.lua +9 -1
  272. package/event.d.ts +1 -1
  273. package/lualib_bundle.lua +1 -1
  274. package/math.d.ts +2 -0
  275. package/math.lua +14 -0
  276. package/net/socket.lua +1 -1
  277. package/network.lua +25 -1
  278. package/objutil/buff.lua +10 -8
  279. package/objutil/object.lua +1 -1
  280. package/operation.d.ts +8 -1
  281. package/operation.lua +38 -18
  282. package/package.json +3 -23
  283. package/patch-lua.lua +15 -0
  284. package/patch-lualib.lua +1 -1
  285. package/utility/arrays.d.ts +1 -0
  286. package/utility/arrays.lua +8 -0
  287. package/utility/callback-array.d.ts +17 -0
  288. package/utility/callback-array.lua +61 -0
  289. package/utility/functions.d.ts +4 -0
  290. package/utility/functions.lua +9 -0
  291. package/utility/linked-map.d.ts +35 -0
  292. package/utility/linked-map.lua +107 -0
  293. package/utility/linked-set.d.ts +4 -1
  294. package/utility/linked-set.lua +46 -1
  295. package/utility/lua-maps.d.ts +11 -2
  296. package/utility/lua-maps.lua +33 -2
  297. package/utility/lua-sets.d.ts +1 -0
  298. package/utility/lua-sets.lua +4 -0
  299. package/utility/random.d.ts +102 -0
  300. package/utility/random.lua +273 -0
  301. package/utility/records.lua +20 -1
  302. package/utility/types.d.ts +3 -0
  303. package/utility/unordered-map.d.ts +27 -0
  304. package/utility/unordered-map.lua +99 -0
  305. /package/engine/internal/{object-data/armor-increase.d.ts → misc/frame-coordinates.d.ts} +0 -0
  306. /package/engine/internal/object-data/{armor-increase.lua → armor-bonus.lua} +0 -0
  307. /package/engine/object-data/entry/ability-type/{attribute-increase.d.ts → attribute-bonus.d.ts} +0 -0
  308. /package/engine/object-data/entry/ability-type/{attribute-increase.lua → attribute-bonus.lua} +0 -0
package/decl/native.d.ts CHANGED
@@ -291,7 +291,7 @@ declare interface jubersplat extends jhandle {
291
291
  declare interface jhashtable extends jagent {
292
292
  __jhashtable: never
293
293
  }
294
- declare interface jframehandle extends jhandle {
294
+ declare interface jframehandle extends jagent {
295
295
  __jframehandle: never
296
296
  }
297
297
  declare interface joriginframetype extends jhandle {
@@ -310,6 +310,9 @@ declare type joskeytype = symbol &
310
310
  jhandle & {
311
311
  __joskeytype: never
312
312
  }
313
+ declare interface jmetakeytype extends jhandle {
314
+ __jmetakeytype: never
315
+ }
313
316
  declare interface jabilityintegerfield extends jhandle {
314
317
  __jabilityintegerfield: never
315
318
  }
@@ -388,15 +391,17 @@ declare interface jmovetype extends jhandle {
388
391
  declare interface jtargetflag extends jhandle {
389
392
  __jtargetflag: never
390
393
  }
391
- declare interface jarmortype extends jhandle {
392
- __jarmortype: never
393
- }
394
+ declare type jarmortype = symbol &
395
+ jhandle & {
396
+ __jarmortype: never
397
+ }
394
398
  declare interface jheroattribute extends jhandle {
395
399
  __jheroattribute: never
396
400
  }
397
- declare interface jdefensetype extends jhandle {
398
- __jdefensetype: never
399
- }
401
+ declare type jdefensetype = symbol &
402
+ jhandle & {
403
+ __jdefensetype: never
404
+ }
400
405
  declare interface jregentype extends jhandle {
401
406
  __jregentype: never
402
407
  }
@@ -409,6 +414,18 @@ declare interface jpathingflag extends jhandle {
409
414
  declare interface jcommandbuttoneffect extends jhandle {
410
415
  __jcommandbuttoneffect: never
411
416
  }
417
+ declare interface jfogstyle extends jhandle {
418
+ __jfogstyle: never
419
+ }
420
+ declare interface jequipmentType extends jhandle {
421
+ __jequipmentType: never
422
+ }
423
+ declare interface jitemTag extends jhandle {
424
+ __jitemTag: never
425
+ }
426
+ declare interface jloadoutslot extends jhandle {
427
+ __jloadoutslot: never
428
+ }
412
429
  declare function ConvertRace(i: number): jrace
413
430
  declare function ConvertAllianceType(i: number): jalliancetype
414
431
  declare function ConvertRacePref(i: number): jracepreference
@@ -493,6 +510,10 @@ declare function ConvertDefenseType(i: number): jdefensetype
493
510
  declare function ConvertRegenType(i: number): jregentype
494
511
  declare function ConvertUnitCategory(i: number): junitcategory
495
512
  declare function ConvertPathingFlag(i: number): jpathingflag
513
+ declare function ConvertFogStyle(i: number): jfogstyle
514
+ declare function ConvertEquipmentType(i: number): jequipmentType
515
+ declare function ConvertItemTag(i: number): jitemTag
516
+ declare function ConvertLoadoutSlot(i: number): jloadoutslot
496
517
  declare function OrderId(orderIdString: string): number
497
518
  declare function OrderId2String(orderId: number): string
498
519
  declare function UnitId(unitIdString: string): number
@@ -535,6 +556,7 @@ declare const PLAYER_COLOR_COAL: jplayercolor
535
556
  declare const PLAYER_COLOR_SNOW: jplayercolor
536
557
  declare const PLAYER_COLOR_EMERALD: jplayercolor
537
558
  declare const PLAYER_COLOR_PEANUT: jplayercolor
559
+ declare const PLAYER_COLOR_BLACK: jplayercolor
538
560
  declare const RACE_HUMAN: jrace
539
561
  declare const RACE_ORC: jrace
540
562
  declare const RACE_UNDEAD: jrace
@@ -691,6 +713,7 @@ declare const RACE_PREF_UNDEAD: jracepreference
691
713
  declare const RACE_PREF_DEMON: jracepreference
692
714
  declare const RACE_PREF_RANDOM: jracepreference
693
715
  declare const RACE_PREF_USER_SELECTABLE: jracepreference
716
+ declare const RACE_PREF_FORSAKEN: jracepreference
694
717
  declare const MAP_CONTROL_USER: jmapcontrol
695
718
  declare const MAP_CONTROL_COMPUTER: jmapcontrol
696
719
  declare const MAP_CONTROL_RESCUABLE: jmapcontrol
@@ -747,6 +770,12 @@ declare const MAP_SPEED_FASTEST: jgamespeed
747
770
  declare const PLAYER_SLOT_STATE_EMPTY: jplayerslotstate
748
771
  declare const PLAYER_SLOT_STATE_PLAYING: jplayerslotstate
749
772
  declare const PLAYER_SLOT_STATE_LEFT: jplayerslotstate
773
+ declare const FOG_STYLE_LINEAR: jfogstyle
774
+ declare const FOG_STYLE_EXP: jfogstyle
775
+ declare const FOG_STYLE_EXP2: jfogstyle
776
+ declare const FOG_STYLE_HEIGHT: jfogstyle
777
+ declare const FOG_STYLE_NEW_EXP: jfogstyle
778
+ declare const FOG_STYLE_NEW_EXP_2: jfogstyle
750
779
  declare const SOUND_VOLUMEGROUP_UNITMOVEMENT: jvolumegroup
751
780
  declare const SOUND_VOLUMEGROUP_UNITSOUNDS: jvolumegroup
752
781
  declare const SOUND_VOLUMEGROUP_COMBAT: jvolumegroup
@@ -755,6 +784,13 @@ declare const SOUND_VOLUMEGROUP_UI: jvolumegroup
755
784
  declare const SOUND_VOLUMEGROUP_MUSIC: jvolumegroup
756
785
  declare const SOUND_VOLUMEGROUP_AMBIENTSOUNDS: jvolumegroup
757
786
  declare const SOUND_VOLUMEGROUP_FIRE: jvolumegroup
787
+ declare const SOUND_VOLUMEGROUP_CINEMATIC_GENERAL: jvolumegroup
788
+ declare const SOUND_VOLUMEGROUP_CINEMATIC_AMBIENT: jvolumegroup
789
+ declare const SOUND_VOLUMEGROUP_CINEMATIC_MUSIC: jvolumegroup
790
+ declare const SOUND_VOLUMEGROUP_CINEMATIC_DIALOGUE: jvolumegroup
791
+ declare const SOUND_VOLUMEGROUP_CINEMATIC_SOUND_EFFECTS_1: jvolumegroup
792
+ declare const SOUND_VOLUMEGROUP_CINEMATIC_SOUND_EFFECTS_2: jvolumegroup
793
+ declare const SOUND_VOLUMEGROUP_CINEMATIC_SOUND_EFFECTS_3: jvolumegroup
758
794
  declare const GAME_STATE_DIVINE_INTERVENTION: jigamestate
759
795
  declare const GAME_STATE_DISCONNECTED: jigamestate
760
796
  declare const GAME_STATE_TIME_OF_DAY: jfgamestate
@@ -861,6 +897,8 @@ declare const EVENT_PLAYER_UNIT_DROP_ITEM: jplayerunitevent
861
897
  declare const EVENT_PLAYER_UNIT_PICKUP_ITEM: jplayerunitevent
862
898
  declare const EVENT_PLAYER_UNIT_USE_ITEM: jplayerunitevent
863
899
  declare const EVENT_PLAYER_UNIT_STACK_ITEM: jplayerunitevent
900
+ declare const EVENT_PLAYER_UNIT_EQUIP_ITEM: jplayerunitevent
901
+ declare const EVENT_PLAYER_UNIT_UNEQUIP_ITEM: jplayerunitevent
864
902
  declare const EVENT_PLAYER_UNIT_LOADED: jplayerunitevent
865
903
  declare const EVENT_PLAYER_UNIT_DAMAGED: jplayerunitevent
866
904
  declare const EVENT_PLAYER_UNIT_DAMAGING: jplayerunitevent
@@ -943,6 +981,9 @@ declare const EVENT_UNIT_SPELL_EFFECT: junitevent
943
981
  declare const EVENT_UNIT_SPELL_FINISH: junitevent
944
982
  declare const EVENT_UNIT_SPELL_ENDCAST: junitevent
945
983
  declare const EVENT_UNIT_PAWN_ITEM: junitevent
984
+ declare const EVENT_UNIT_STACK_ITEM: junitevent
985
+ declare const EVENT_UNIT_EQUIP_ITEM: junitevent
986
+ declare const EVENT_UNIT_UNEQUIP_ITEM: junitevent
946
987
  declare const LESS_THAN: jlimitop
947
988
  declare const LESS_THAN_OR_EQUAL: jlimitop
948
989
  declare const EQUAL: jlimitop
@@ -983,9 +1024,38 @@ declare const ITEM_TYPE_ARTIFACT: jitemtype
983
1024
  declare const ITEM_TYPE_PURCHASABLE: jitemtype
984
1025
  declare const ITEM_TYPE_CAMPAIGN: jitemtype
985
1026
  declare const ITEM_TYPE_MISCELLANEOUS: jitemtype
1027
+ declare const ITEM_TYPE_EQUIPMENT: jitemtype
986
1028
  declare const ITEM_TYPE_UNKNOWN: jitemtype
987
1029
  declare const ITEM_TYPE_ANY: jitemtype
988
1030
  declare const ITEM_TYPE_TOME: jitemtype
1031
+ declare const EQUIPMENT_TYPE_NONE: jequipmentType
1032
+ declare const EQUIPMENT_TYPE_HEAD: jequipmentType
1033
+ declare const EQUIPMENT_TYPE_CHEST: jequipmentType
1034
+ declare const EQUIPMENT_TYPE_GLOVES: jequipmentType
1035
+ declare const EQUIPMENT_TYPE_BOOTS: jequipmentType
1036
+ declare const EQUIPMENT_TYPE_RING: jequipmentType
1037
+ declare const EQUIPMENT_TYPE_PRIMARY: jequipmentType
1038
+ declare const EQUIPMENT_TYPE_OFFHAND: jequipmentType
1039
+ declare const EQUIPMENT_TYPE_TRINKET: jequipmentType
1040
+ declare const EQUIPMENT_TYPE_ANY: jequipmentType
1041
+ declare const ITEMTAG_TYPE_UNDEFINED: jitemTag
1042
+ declare const ITEMTAG_TYPE_DROPPABLE: jitemTag
1043
+ declare const ITEMTAG_TYPE_QUESTREWARD: jitemTag
1044
+ declare const ITEMTAG_TYPE_BOSSDROP: jitemTag
1045
+ declare const ITEMTAG_TYPE_SECRET: jitemTag
1046
+ declare const ITEMTAG_TYPE_PUZZLE: jitemTag
1047
+ declare const ITEMTAG_TYPE_WORLD: jitemTag
1048
+ declare const ITEMTAG_TYPE_SHOP: jitemTag
1049
+ declare const ITEMTAG_TYPE_ANY: jitemTag
1050
+ declare const EQUIPMENT_LOADOUT_SLOT_HEAD: jloadoutslot
1051
+ declare const EQUIPMENT_LOADOUT_SLOT_CHEST: jloadoutslot
1052
+ declare const EQUIPMENT_LOADOUT_SLOT_GLOVES: jloadoutslot
1053
+ declare const EQUIPMENT_LOADOUT_SLOT_BOOTS: jloadoutslot
1054
+ declare const EQUIPMENT_LOADOUT_SLOT_RING: jloadoutslot
1055
+ declare const EQUIPMENT_LOADOUT_SLOT_RINGALT: jloadoutslot
1056
+ declare const EQUIPMENT_LOADOUT_SLOT_PRIMARY: jloadoutslot
1057
+ declare const EQUIPMENT_LOADOUT_SLOT_OFFHAND: jloadoutslot
1058
+ declare const EQUIPMENT_LOADOUT_SLOT_TRINKET: jloadoutslot
989
1059
  declare const CAMERA_FIELD_TARGET_DISTANCE: jcamerafield
990
1060
  declare const CAMERA_FIELD_FARZ: jcamerafield
991
1061
  declare const CAMERA_FIELD_ANGLE_OF_ATTACK: jcamerafield
@@ -997,6 +1067,9 @@ declare const CAMERA_FIELD_NEARZ: jcamerafield
997
1067
  declare const CAMERA_FIELD_LOCAL_PITCH: jcamerafield
998
1068
  declare const CAMERA_FIELD_LOCAL_YAW: jcamerafield
999
1069
  declare const CAMERA_FIELD_LOCAL_ROLL: jcamerafield
1070
+ declare const CAMERA_FIELD_DEPTH_OF_FIELD_DISTANCE: jcamerafield
1071
+ declare const CAMERA_FIELD_DEPTH_OF_FIELD_SCALE: jcamerafield
1072
+ declare const CAMERA_FIELD_ZABSOLUTE: jcamerafield
1000
1073
  declare const BLEND_MODE_NONE: jblendmode
1001
1074
  declare const BLEND_MODE_DONT_CARE: jblendmode
1002
1075
  declare const BLEND_MODE_KEYALPHA: jblendmode
@@ -1269,6 +1342,11 @@ declare const OSKEY_ZOOM: joskeytype
1269
1342
  declare const OSKEY_NONAME: joskeytype
1270
1343
  declare const OSKEY_PA1: joskeytype
1271
1344
  declare const OSKEY_OEM_CLEAR: joskeytype
1345
+ declare const METAKEY_NONE: number
1346
+ declare const METAKEY_SHIFT: number
1347
+ declare const METAKEY_CTRL: number
1348
+ declare const METAKEY_ALT: number
1349
+ declare const METAKEY_WINKEYS: number
1272
1350
  declare const ABILITY_IF_BUTTON_POSITION_NORMAL_X: jabilityintegerfield
1273
1351
  declare const ABILITY_IF_BUTTON_POSITION_NORMAL_Y: jabilityintegerfield
1274
1352
  declare const ABILITY_IF_BUTTON_POSITION_ACTIVATED_X: jabilityintegerfield
@@ -2056,6 +2134,7 @@ declare const UNIT_RF_HIT_POINTS_REGENERATION_RATE: junitrealfield
2056
2134
  declare const UNIT_RF_MANA_REGENERATION: junitrealfield
2057
2135
  declare const UNIT_RF_DEATH_TIME: junitrealfield
2058
2136
  declare const UNIT_RF_FLY_HEIGHT: junitrealfield
2137
+ declare const UNIT_RF_FLY_MAX_HEIGHT: junitrealfield
2059
2138
  declare const UNIT_RF_TURN_RATE: junitrealfield
2060
2139
  declare const UNIT_RF_ELEVATION_SAMPLE_RADIUS: junitrealfield
2061
2140
  declare const UNIT_RF_FOG_OF_WAR_SAMPLE_RADIUS: junitrealfield
@@ -2093,6 +2172,8 @@ declare const UNIT_BF_HIDE_MINIMAP_DISPLAY: junitbooleanfield
2093
2172
  declare const UNIT_BF_SCALE_PROJECTILES: junitbooleanfield
2094
2173
  declare const UNIT_BF_SELECTION_CIRCLE_ON_WATER: junitbooleanfield
2095
2174
  declare const UNIT_BF_HAS_WATER_SHADOW: junitbooleanfield
2175
+ declare const UNIT_BF_SHOW_AIR_TO_GROUND: junitbooleanfield
2176
+ declare const UNIT_BF_FORCE_DISPLAY_HP: junitbooleanfield
2096
2177
  declare const UNIT_SF_NAME: junitstringfield
2097
2178
  declare const UNIT_SF_PROPER_NAMES: junitstringfield
2098
2179
  declare const UNIT_SF_GROUND_TEXTURE: junitstringfield
@@ -2272,6 +2353,7 @@ declare function SetPlayerRacePreference(
2272
2353
  whichPlayer: jplayer,
2273
2354
  whichRacePreference: jracepreference,
2274
2355
  ): void
2356
+ declare function SetPlayerRaceSkin(whichPlayer: jplayer, whichRacePreference: jracepreference): void
2275
2357
  declare function SetPlayerRaceSelectable(whichPlayer: jplayer, value: boolean): void
2276
2358
  declare function SetPlayerController(whichPlayer: jplayer, controlType: jmapcontrol): void
2277
2359
  declare function SetPlayerName(whichPlayer: jplayer, name: string): void
@@ -2577,11 +2659,13 @@ declare function GetChangingUnit(): junit
2577
2659
  declare function GetChangingUnitPrevOwner(): jplayer
2578
2660
  declare function GetManipulatingUnit(): junit
2579
2661
  declare function GetManipulatedItem(): jitem
2662
+ declare function GetEquippedItem(): jitem
2663
+ declare function GetUnequippedItem(): jitem
2580
2664
  declare function BlzGetAbsorbingItem(): jitem
2581
- declare function BlzGetManipulatedItemWasAbsorbed(): jitem
2665
+ declare function BlzGetManipulatedItemWasAbsorbed(): boolean
2582
2666
  declare function BlzGetStackingItemSource(): jitem
2583
2667
  declare function BlzGetStackingItemTarget(): jitem
2584
- declare function BlzGetStackingItemTargetPreviousCharges(): jitem
2668
+ declare function BlzGetStackingItemTargetPreviousCharges(): number
2585
2669
  declare function GetOrderedUnit(): junit
2586
2670
  declare function GetIssuedOrderId(): number
2587
2671
  declare function GetOrderPointX(): number
@@ -2671,6 +2755,8 @@ declare function TriggerExecute(whichTrigger: jtrigger): void
2671
2755
  declare function TriggerExecuteWait(whichTrigger: jtrigger): void
2672
2756
  declare function TriggerSyncStart(): void
2673
2757
  declare function TriggerSyncReady(): void
2758
+ declare function BlzTriggerIsRunning(whichTrigger: jtrigger): boolean
2759
+ declare function BlzTriggerInterrupt(whichTrigger: jtrigger): void
2674
2760
  declare function GetWidgetLife(whichWidget: jwidget): number
2675
2761
  declare function SetWidgetLife(whichWidget: jwidget, newLife: number): void
2676
2762
  declare function GetWidgetX(whichWidget: jwidget): number
@@ -2730,6 +2816,7 @@ declare function DestructableRestoreLife(d: jdestructable, life: number, birth:
2730
2816
  declare function QueueDestructableAnimation(d: jdestructable, whichAnimation: string): void
2731
2817
  declare function SetDestructableAnimation(d: jdestructable, whichAnimation: string): void
2732
2818
  declare function SetDestructableAnimationSpeed(d: jdestructable, speedFactor: number): void
2819
+ declare function SetDestructableColor(d: jdestructable, color: jplayercolor): void
2733
2820
  declare function ShowDestructable(d: jdestructable, flag: boolean): void
2734
2821
  declare function GetDestructableOccluderHeight(d: jdestructable): number
2735
2822
  declare function SetDestructableOccluderHeight(d: jdestructable, height: number): void
@@ -2742,12 +2829,15 @@ declare function GetItemTypeId(i: jitem): number
2742
2829
  declare function GetItemX(i: jitem): number
2743
2830
  declare function GetItemY(i: jitem): number
2744
2831
  declare function SetItemPosition(i: jitem, x: number, y: number): void
2832
+ declare function SetItemColor(whichItem: jitem, whichColor: jplayercolor): void
2745
2833
  declare function SetItemDropOnDeath(whichItem: jitem, flag: boolean): void
2746
2834
  declare function SetItemDroppable(i: jitem, flag: boolean): void
2747
2835
  declare function SetItemPawnable(i: jitem, flag: boolean): void
2748
2836
  declare function SetItemPlayer(whichItem: jitem, whichPlayer: jplayer, changeColor: boolean): void
2749
2837
  declare function SetItemInvulnerable(whichItem: jitem, flag: boolean): void
2750
2838
  declare function IsItemInvulnerable(whichItem: jitem): boolean
2839
+ declare function IsItemEquipped(whichItem: jitem): boolean
2840
+ declare function IsItemInBag(whichItem: jitem): boolean
2751
2841
  declare function SetItemVisible(whichItem: jitem, show: boolean): void
2752
2842
  declare function IsItemVisible(whichItem: jitem): boolean
2753
2843
  declare function IsItemOwned(whichItem: jitem): boolean
@@ -2766,6 +2856,8 @@ declare function GetItemCharges(whichItem: jitem): number
2766
2856
  declare function SetItemCharges(whichItem: jitem, charges: number): void
2767
2857
  declare function GetItemUserData(whichItem: jitem): number
2768
2858
  declare function SetItemUserData(whichItem: jitem, data: number): void
2859
+ declare function GetItemEquipmentType(whichItem: jitem): jequipmentType
2860
+ declare function GetItemTag(whichItem: jitem): jitemTag
2769
2861
  declare function CreateUnit(
2770
2862
  id: jplayer,
2771
2863
  unitid: number,
@@ -2853,6 +2945,11 @@ declare function AddUnitAnimationProperties(
2853
2945
  animProperties: string,
2854
2946
  add: boolean,
2855
2947
  ): void
2948
+ declare function AllowHeroGlowOnUnit(whichUnit: junit): void
2949
+ declare function DisallowHeroGlowOnUnit(whichUnit: junit): void
2950
+ declare function HeroGlowIsAllowedOnUnit(whichUnit: junit): boolean
2951
+ declare function BlzGetUnitAnimationDuration(whichUnit: junit, whichAnimation: string): number
2952
+ declare function BlzGetUnitAnimationDurationByIndex(whichUnit: junit, index: number): number
2856
2953
  declare function SetUnitLookAt(
2857
2954
  whichUnit: junit,
2858
2955
  whichBone: string,
@@ -2901,13 +2998,28 @@ declare function GetUnitWoodCost(unitId: number): number
2901
2998
  declare function GetUnitPointValue(whichUnit: junit): number
2902
2999
  declare function GetUnitPointValueByType(unitType: number): number
2903
3000
  declare function UnitAddItem(whichUnit: junit, whichItem: jitem): boolean
3001
+ declare function UnitEquipItem(whichUnit: junit, whichItem: jitem): boolean
2904
3002
  declare function UnitAddItemById(whichUnit: junit, itemId: number): jitem
2905
3003
  declare function UnitAddItemToSlotById(whichUnit: junit, itemId: number, itemSlot: number): boolean
2906
3004
  declare function UnitRemoveItem(whichUnit: junit, whichItem: jitem): void
2907
3005
  declare function UnitRemoveItemFromSlot(whichUnit: junit, itemSlot: number): jitem
3006
+ declare function UnitUnequipItem(whichUnit: junit, whichItem: jitem): void
3007
+ declare function UnitUnequipItemFromSlot(whichUnit: junit, slot: jloadoutslot): jitem
2908
3008
  declare function UnitHasItem(whichUnit: junit, whichItem: jitem): boolean
3009
+ declare function UnitHasItemBagged(whichUnit: junit, whichItem: jitem): boolean
2909
3010
  declare function UnitItemInSlot(whichUnit: junit, itemSlot: number): jitem
2910
3011
  declare function UnitInventorySize(whichUnit: junit): number
3012
+ declare function UnitExtendedInventorySize(whichUnit: junit): number
3013
+ declare function UnitItemInBagSlot(whichUnit: junit, itemSlot: number): jitem
3014
+ declare function UnitItemInEquipmentSlot(whichUnit: junit, itemSlot: jloadoutslot): jitem
3015
+ declare function UnitHasItemEquipped(whichUnit: junit, whichItem: jitem): boolean
3016
+ declare function UnitHasLoadoutSlotEmpty(whichUnit: junit, itemSlot: jloadoutslot): boolean
3017
+ declare function UnitHasAnyItemEquiped(whichUnit: junit): boolean
3018
+ declare function UnitHasItemEquipmentOfType(whichUnit: junit, equipmentId: jequipmentType): boolean
3019
+ declare function UnitCanEquipItemOfEquipmentType(
3020
+ whichUnit: junit,
3021
+ equipmentId: jequipmentType,
3022
+ ): boolean
2911
3023
  declare function UnitDropItemPoint(
2912
3024
  whichUnit: junit,
2913
3025
  whichItem: jitem,
@@ -3198,6 +3310,277 @@ declare function BlzGetUnitOrderCount(whichUnit: junit): number
3198
3310
  declare function BlzUnitClearOrders(whichUnit: junit, onlyQueued: boolean): void
3199
3311
  // stops the current order and optionally clears the queue
3200
3312
  declare function BlzUnitForceStopOrder(whichUnit: junit, clearQueue: boolean): void
3313
+ declare function BlzCreateDestructablePitchRoll(
3314
+ objectid: number,
3315
+ x: number,
3316
+ y: number,
3317
+ face: number,
3318
+ roll: number,
3319
+ pitch: number,
3320
+ scale: number,
3321
+ variation: number,
3322
+ ): jdestructable
3323
+ declare function BlzCreateDestructableZPitchRoll(
3324
+ objectid: number,
3325
+ x: number,
3326
+ y: number,
3327
+ z: number,
3328
+ face: number,
3329
+ roll: number,
3330
+ pitch: number,
3331
+ scale: number,
3332
+ variation: number,
3333
+ ): jdestructable
3334
+ declare function BlzCreateDeadDestructablePitchRoll(
3335
+ objectid: number,
3336
+ x: number,
3337
+ y: number,
3338
+ face: number,
3339
+ roll: number,
3340
+ pitch: number,
3341
+ scale: number,
3342
+ variation: number,
3343
+ ): jdestructable
3344
+ declare function BlzCreateDeadDestructableZPitchRoll(
3345
+ objectid: number,
3346
+ x: number,
3347
+ y: number,
3348
+ z: number,
3349
+ face: number,
3350
+ roll: number,
3351
+ pitch: number,
3352
+ scale: number,
3353
+ variation: number,
3354
+ ): jdestructable
3355
+ declare function BlzCreateDestructableWithSkinPitchRoll(
3356
+ objectid: number,
3357
+ x: number,
3358
+ y: number,
3359
+ face: number,
3360
+ roll: number,
3361
+ pitch: number,
3362
+ scale: number,
3363
+ variation: number,
3364
+ skinId: number,
3365
+ ): jdestructable
3366
+ declare function BlzCreateDestructableZWithSkinPitchRoll(
3367
+ objectid: number,
3368
+ x: number,
3369
+ y: number,
3370
+ z: number,
3371
+ face: number,
3372
+ roll: number,
3373
+ pitch: number,
3374
+ scale: number,
3375
+ variation: number,
3376
+ skinId: number,
3377
+ ): jdestructable
3378
+ declare function BlzCreateDeadDestructableWithSkinPitchRoll(
3379
+ objectid: number,
3380
+ x: number,
3381
+ y: number,
3382
+ face: number,
3383
+ roll: number,
3384
+ pitch: number,
3385
+ scale: number,
3386
+ variation: number,
3387
+ skinId: number,
3388
+ ): jdestructable
3389
+ declare function BlzCreateDeadDestructableZWithSkinPitchRoll(
3390
+ objectid: number,
3391
+ x: number,
3392
+ y: number,
3393
+ z: number,
3394
+ face: number,
3395
+ roll: number,
3396
+ pitch: number,
3397
+ scale: number,
3398
+ variation: number,
3399
+ skinId: number,
3400
+ ): jdestructable
3401
+ declare function BlzCreateDestructableWithColor(
3402
+ objectid: number,
3403
+ x: number,
3404
+ y: number,
3405
+ face: number,
3406
+ scale: number,
3407
+ variation: number,
3408
+ color: jplayercolor,
3409
+ ): jdestructable
3410
+ declare function BlzCreateDestructableZWithColor(
3411
+ objectid: number,
3412
+ x: number,
3413
+ y: number,
3414
+ z: number,
3415
+ face: number,
3416
+ scale: number,
3417
+ variation: number,
3418
+ color: jplayercolor,
3419
+ ): jdestructable
3420
+ declare function BlzCreateDeadDestructableWithColor(
3421
+ objectid: number,
3422
+ x: number,
3423
+ y: number,
3424
+ face: number,
3425
+ scale: number,
3426
+ variation: number,
3427
+ color: jplayercolor,
3428
+ ): jdestructable
3429
+ declare function BlzCreateDeadDestructableZWithColor(
3430
+ objectid: number,
3431
+ x: number,
3432
+ y: number,
3433
+ z: number,
3434
+ face: number,
3435
+ scale: number,
3436
+ variation: number,
3437
+ color: jplayercolor,
3438
+ ): jdestructable
3439
+ declare function BlzCreateDestructableWithSkinColor(
3440
+ objectid: number,
3441
+ x: number,
3442
+ y: number,
3443
+ face: number,
3444
+ scale: number,
3445
+ variation: number,
3446
+ skinId: number,
3447
+ color: jplayercolor,
3448
+ ): jdestructable
3449
+ declare function BlzCreateDestructableZWithSkinColor(
3450
+ objectid: number,
3451
+ x: number,
3452
+ y: number,
3453
+ z: number,
3454
+ face: number,
3455
+ scale: number,
3456
+ variation: number,
3457
+ skinId: number,
3458
+ color: jplayercolor,
3459
+ ): jdestructable
3460
+ declare function BlzCreateDeadDestructableWithSkinColor(
3461
+ objectid: number,
3462
+ x: number,
3463
+ y: number,
3464
+ face: number,
3465
+ scale: number,
3466
+ variation: number,
3467
+ skinId: number,
3468
+ color: jplayercolor,
3469
+ ): jdestructable
3470
+ declare function BlzCreateDeadDestructableZWithSkinColor(
3471
+ objectid: number,
3472
+ x: number,
3473
+ y: number,
3474
+ z: number,
3475
+ face: number,
3476
+ scale: number,
3477
+ variation: number,
3478
+ skinId: number,
3479
+ color: jplayercolor,
3480
+ ): jdestructable
3481
+ declare function BlzCreateDestructablePitchRollWithColor(
3482
+ objectid: number,
3483
+ x: number,
3484
+ y: number,
3485
+ face: number,
3486
+ roll: number,
3487
+ pitch: number,
3488
+ scale: number,
3489
+ variation: number,
3490
+ color: jplayercolor,
3491
+ ): jdestructable
3492
+ declare function BlzCreateDestructableZPitchRollWithColor(
3493
+ objectid: number,
3494
+ x: number,
3495
+ y: number,
3496
+ z: number,
3497
+ face: number,
3498
+ roll: number,
3499
+ pitch: number,
3500
+ scale: number,
3501
+ variation: number,
3502
+ color: jplayercolor,
3503
+ ): jdestructable
3504
+ declare function BlzCreateDeadDestructablePitchRollWithColor(
3505
+ objectid: number,
3506
+ x: number,
3507
+ y: number,
3508
+ face: number,
3509
+ roll: number,
3510
+ pitch: number,
3511
+ scale: number,
3512
+ variation: number,
3513
+ color: jplayercolor,
3514
+ ): jdestructable
3515
+ declare function BlzCreateDeadDestructableZPitchRollWithColor(
3516
+ objectid: number,
3517
+ x: number,
3518
+ y: number,
3519
+ z: number,
3520
+ face: number,
3521
+ roll: number,
3522
+ pitch: number,
3523
+ scale: number,
3524
+ variation: number,
3525
+ color: jplayercolor,
3526
+ ): jdestructable
3527
+ declare function BlzCreateDestructableWithSkinPitchRollColor(
3528
+ objectid: number,
3529
+ x: number,
3530
+ y: number,
3531
+ face: number,
3532
+ roll: number,
3533
+ pitch: number,
3534
+ scale: number,
3535
+ variation: number,
3536
+ skinId: number,
3537
+ color: jplayercolor,
3538
+ ): jdestructable
3539
+ declare function BlzCreateDestructableZWithSkinPitchRollColor(
3540
+ objectid: number,
3541
+ x: number,
3542
+ y: number,
3543
+ z: number,
3544
+ face: number,
3545
+ roll: number,
3546
+ pitch: number,
3547
+ scale: number,
3548
+ variation: number,
3549
+ skinId: number,
3550
+ color: jplayercolor,
3551
+ ): jdestructable
3552
+ declare function BlzCreateDeadDestructableWithSkinPitchRollColor(
3553
+ objectid: number,
3554
+ x: number,
3555
+ y: number,
3556
+ face: number,
3557
+ roll: number,
3558
+ pitch: number,
3559
+ scale: number,
3560
+ variation: number,
3561
+ skinId: number,
3562
+ color: jplayercolor,
3563
+ ): jdestructable
3564
+ declare function BlzCreateDeadDestructableZWithSkinPitchRollColor(
3565
+ objectid: number,
3566
+ x: number,
3567
+ y: number,
3568
+ z: number,
3569
+ face: number,
3570
+ roll: number,
3571
+ pitch: number,
3572
+ scale: number,
3573
+ variation: number,
3574
+ skinId: number,
3575
+ color: jplayercolor,
3576
+ ): jdestructable
3577
+ declare function SetDestructableVertexColor(
3578
+ whichDestructable: jdestructable,
3579
+ red: number,
3580
+ green: number,
3581
+ blue: number,
3582
+ alpha: number,
3583
+ ): void
3201
3584
  declare function SetResourceAmount(whichUnit: junit, amount: number): void
3202
3585
  declare function AddResourceAmount(whichUnit: junit, amount: number): void
3203
3586
  declare function GetResourceAmount(whichUnit: junit): number
@@ -3888,6 +4271,12 @@ declare function ChooseRandomCreep(level: number): number
3888
4271
  declare function ChooseRandomNPBuilding(): number
3889
4272
  declare function ChooseRandomItem(level: number): number
3890
4273
  declare function ChooseRandomItemEx(whichType: jitemtype, level: number): number
4274
+ declare function ChooseRandomItemExWithFilter(
4275
+ whichType: jitemtype,
4276
+ level: number,
4277
+ whichEquipmentType: jequipmentType,
4278
+ whichTag: jitemTag,
4279
+ ): number
3891
4280
  declare function SetRandomSeed(seed: number): void
3892
4281
  declare function SetTerrainFog(a: number, b: number, c: number, d: number, e: number): void
3893
4282
  declare function ResetTerrainFog(): void
@@ -3901,6 +4290,30 @@ declare function SetTerrainFogEx(
3901
4290
  green: number,
3902
4291
  blue: number,
3903
4292
  ): void
4293
+ declare function SetTerrainFogExV(
4294
+ style: number,
4295
+ zstart: number,
4296
+ zend: number,
4297
+ density: number,
4298
+ heightStart: number,
4299
+ heightEnd: number,
4300
+ linearStart: number,
4301
+ linearEnd: number,
4302
+ red: number,
4303
+ green: number,
4304
+ blue: number,
4305
+ ): void
4306
+ declare function BlzSetTerrainFogStyle(style: jfogstyle): void
4307
+ declare function BlzSetTerrainFogZStart(zStart: number): void
4308
+ declare function BlzSetTerrainFogZEnd(ZEnd: number): void
4309
+ declare function BlzSetTerrainFogDensity(density: number): void
4310
+ declare function BlzSetTerrainFogHeightStart(heightStart: number): void
4311
+ declare function BlzSetTerrainFogHeightEnd(heightEnd: number): void
4312
+ declare function BlzSetTerrainFogLinearStart(linearStart: number): void
4313
+ declare function BlzSetTerrainFogLinearEnd(linearEnd: number): void
4314
+ declare function BlzSetTerrainFogMaxLinearDensity(maxLinearDensity: number): void
4315
+ declare function BlzSetTerrainFogDrawOverSky(drawOverSky: boolean): void
4316
+ declare function BlzSetTerrainFogColor(red: number, green: number, blue: number): void
3904
4317
  declare function DisplayTextToPlayer(toPlayer: jplayer, x: number, y: number, message: string): void
3905
4318
  declare function DisplayTimedTextToPlayer(
3906
4319
  toPlayer: jplayer,
@@ -3988,6 +4401,20 @@ declare function SetIntroShotText(introText: string): void
3988
4401
  declare function SetIntroShotModel(introModelPath: string): void
3989
4402
  declare function EnableWorldFogBoundary(b: boolean): void
3990
4403
  declare function PlayModelCinematic(modelName: string): void
4404
+ declare function BlzPreloadModelCinematicGame(modelName: string): boolean
4405
+ declare function BlzGetModelCinematicGameShotCount(): number
4406
+ declare function BlzGetModelCinematicGameCurrentShot(): number
4407
+ declare function BlzGetModelCinematicGameRemainingTime(): number
4408
+ declare function BlzPlayModelCinematicGameAtPosition(
4409
+ modelName: string,
4410
+ posX: number,
4411
+ posY: number,
4412
+ posZ: number,
4413
+ RotZ: number,
4414
+ ): void
4415
+ declare function BlzSetCinematicEnabledDE(enable: boolean): void
4416
+ declare function BlzSetMinShadowCastingPointLightCount(count: number): void
4417
+ declare function BlzGetMinShadowCastingPointLightCount(): number
3991
4418
  declare function PlayCinematic(movieName: string): void
3992
4419
  declare function ForceUIKey(key: string): void
3993
4420
  declare function ForceUICancel(): void
@@ -4234,6 +4661,11 @@ declare function SetCameraRotateMode(
4234
4661
  ): void
4235
4662
  declare function SetCameraField(whichField: jcamerafield, value: number, duration: number): void
4236
4663
  declare function AdjustCameraField(whichField: jcamerafield, offset: number, duration: number): void
4664
+ declare function SetCameraFieldControlledByInput(
4665
+ whichField: jcamerafield,
4666
+ controlled: boolean,
4667
+ ): void
4668
+ declare function GetCameraFieldControlledByInput(whichField: jcamerafield): boolean
4237
4669
  declare function SetCameraTargetController(
4238
4670
  whichUnit: junit,
4239
4671
  xoffset: number,
@@ -4241,6 +4673,8 @@ declare function SetCameraTargetController(
4241
4673
  inheritOrientation: boolean,
4242
4674
  ): void
4243
4675
  declare function SetCameraOrientController(whichUnit: junit, xoffset: number, yoffset: number): void
4676
+ declare function BlzCameraSetCameraType(cameraType: number): void
4677
+ declare function BlzCameraGetCameraType(): number
4244
4678
  declare function CreateCameraSetup(): jcamerasetup
4245
4679
  declare function CameraSetupSetField(
4246
4680
  whichSetup: jcamerasetup,
@@ -4272,6 +4706,8 @@ declare function CameraSetupApplyForceDurationWithZ(
4272
4706
  ): void
4273
4707
  declare function BlzCameraSetupSetLabel(whichSetup: jcamerasetup, label: string): void
4274
4708
  declare function BlzCameraSetupGetLabel(whichSetup: jcamerasetup): string
4709
+ declare function BlzCameraSetupSetCameraType(whichSetup: jcamerasetup, cameraType: number): void
4710
+ declare function BlzCameraSetupGetCameraType(whichSetup: jcamerasetup): number
4275
4711
  declare function CameraSetTargetNoise(mag: number, velocity: number): void
4276
4712
  declare function CameraSetSourceNoise(mag: number, velocity: number): void
4277
4713
  declare function CameraSetTargetNoiseEx(mag: number, velocity: number, vertOnly: boolean): void
@@ -4311,6 +4747,8 @@ declare function EndCinematicScene(): void
4311
4747
  declare function ForceCinematicSubtitles(flag: boolean): void
4312
4748
  declare function SetCinematicAudio(cinematicAudio: boolean): void
4313
4749
  declare function GetCameraMargin(whichMargin: number): number
4750
+ declare function EnableCameraBlocker(r: jrect, flag: boolean): void
4751
+ declare function AddCameraBlocker(where: jrect): void
4314
4752
  declare function GetCameraBoundMinX(): number
4315
4753
  declare function GetCameraBoundMinY(): number
4316
4754
  declare function GetCameraBoundMaxX(): number
@@ -4374,6 +4812,7 @@ declare function SetSoundPosition(soundHandle: jsound, x: number, y: number, z:
4374
4812
  declare function SetSoundVelocity(soundHandle: jsound, x: number, y: number, z: number): void
4375
4813
  declare function AttachSoundToUnit(soundHandle: jsound, whichUnit: junit): void
4376
4814
  declare function StartSound(soundHandle: jsound): void
4815
+ declare function StartSoundEx(soundHandle: jsound, fadeIn: boolean): void
4377
4816
  declare function StopSound(soundHandle: jsound, killWhenDone: boolean, fadeOut: boolean): void
4378
4817
  declare function KillSoundWhenDone(soundHandle: jsound): void
4379
4818
  declare function SetMapMusic(musicName: string, random: boolean, index: number): void
@@ -4384,9 +4823,11 @@ declare function StopMusic(fadeOut: boolean): void
4384
4823
  declare function ResumeMusic(): void
4385
4824
  declare function PlayThematicMusic(musicFileName: string): void
4386
4825
  declare function PlayThematicMusicEx(musicFileName: string, frommsecs: number): void
4826
+ declare function BlzPauseThematicMusicOnFocusLost(pause: boolean): void
4387
4827
  declare function EndThematicMusic(): void
4388
4828
  declare function SetMusicVolume(volume: number): void
4389
4829
  declare function SetMusicPlayPosition(millisecs: number): void
4830
+ declare function SetThematicMusicVolume(volume: number): void
4390
4831
  declare function SetThematicMusicPlayPosition(millisecs: number): void
4391
4832
  declare function SetSoundDuration(soundHandle: jsound, duration: number): void
4392
4833
  declare function GetSoundDuration(soundHandle: jsound): number
@@ -4551,6 +4992,43 @@ declare function GetAbilitySound(abilityString: string, t: jsoundtype): string
4551
4992
  declare function GetAbilitySoundById(abilityId: number, t: jsoundtype): string
4552
4993
  declare function GetTerrainCliffLevel(x: number, y: number): number
4553
4994
  declare function SetWaterBaseColor(red: number, green: number, blue: number, alpha: number): void
4995
+ declare function SetHDWaterParams(
4996
+ red: number,
4997
+ green: number,
4998
+ blue: number,
4999
+ useColor: boolean,
5000
+ vertexDisplacement: number,
5001
+ minOpacity: number,
5002
+ maxOpacity: number,
5003
+ reflectivity: number,
5004
+ emissivity: number,
5005
+ edgeSoftness: number,
5006
+ waveStrength: number,
5007
+ ): void
5008
+ declare function SetHDWaterParamsEx(
5009
+ red: number,
5010
+ green: number,
5011
+ blue: number,
5012
+ override: boolean,
5013
+ vertexDisplacement: number,
5014
+ minOpacity: number,
5015
+ maxOpacity: number,
5016
+ reflectivity: number,
5017
+ emissivity: number,
5018
+ edgeSoftness: number,
5019
+ waveStrength: number,
5020
+ envMapStrength: number,
5021
+ ): void
5022
+ declare function BlzSetHDWaterColor(red: number, green: number, blue: number): void
5023
+ declare function BlzSetHDWaterColorOverride(override: boolean): void
5024
+ declare function BlzSetHDWaterVertexDisplacement(vertexDisplacement: number): void
5025
+ declare function BlzSetHDWaterMinOpacity(minOpacity: number): void
5026
+ declare function BlzSetHDWaterMaxOpacity(maxOpacity: number): void
5027
+ declare function BlzSetHDWaterReflectivity(reflectivity: number): void
5028
+ declare function BlzSetHDWaterEmissivity(emissivity: number): void
5029
+ declare function BlzSetHDWaterEdgeSoftness(edgeSoftness: number): void
5030
+ declare function BlzSetHDWaterWaveStrength(waveStrength: number): void
5031
+ declare function BlzSetHDWaterEnvMapStrength(envMapStrengthy: number): void
4554
5032
  declare function SetWaterDeforms(val: boolean): void
4555
5033
  declare function GetTerrainType(x: number, y: number): number
4556
5034
  declare function GetTerrainVariance(x: number, y: number): number
@@ -4563,6 +5041,7 @@ declare function SetTerrainType(
4563
5041
  shape: number,
4564
5042
  ): void
4565
5043
  declare function IsTerrainPathable(x: number, y: number, t: jpathingtype): boolean
5044
+ declare function BlzIsTerrainPathableEx(x: number, y: number, t: jpathingtype): boolean
4566
5045
  declare function SetTerrainPathable(x: number, y: number, t: jpathingtype, flag: boolean): void
4567
5046
  declare function CreateImage(
4568
5047
  file: string,
@@ -4646,6 +5125,34 @@ declare function SetDoodadAnimationRect(
4646
5125
  animName: string,
4647
5126
  animRandom: boolean,
4648
5127
  ): void
5128
+ declare function BlzSetSingleDoodadAnimation(
5129
+ index: number,
5130
+ animName: string,
5131
+ animRandom: boolean,
5132
+ ): void
5133
+ declare function SetDoodadColor(
5134
+ x: number,
5135
+ y: number,
5136
+ radius: number,
5137
+ doodadID: number,
5138
+ nearestOnly: boolean,
5139
+ whichColor: jplayercolor,
5140
+ ): void
5141
+ declare function SetDoodadColorRect(r: jrect, doodadID: number, whichColor: jplayercolor): void
5142
+ declare function BlzSetSingleDoodadColor(index: number, whichColor: jplayercolor): void
5143
+ declare function BlzGetDoodadX(index: number): number
5144
+ declare function BlzGetDoodadY(index: number): number
5145
+ declare function BlzGetDoodadZ(index: number): number
5146
+ declare function BlzGetDoodadScaleX(index: number): number
5147
+ declare function BlzGetDoodadScaleY(index: number): number
5148
+ declare function BlzGetDoodadScaleZ(index: number): number
5149
+ declare function BlzGetDoodadIsUsingModelAxes(index: number): boolean
5150
+ declare function BlzGetDoodadYaw(index: number): number
5151
+ declare function BlzGetDoodadPitch(index: number): number
5152
+ declare function BlzGetDoodadRoll(index: number): number
5153
+ declare function BlzGetDoodadVariation(index: number): number
5154
+ declare function BlzGetDoodadId(index: number): number
5155
+ declare function BlzGetNumDoodads(): number
4649
5156
  declare function StartMeleeAI(num: jplayer, script: string): void
4650
5157
  declare function StartCampaignAI(num: jplayer, script: string): void
4651
5158
  declare function CommandAI(num: jplayer, command: number, data: number): void
@@ -4754,6 +5261,7 @@ declare function BlzSetUnitAttackCooldown(
4754
5261
  cooldown: number,
4755
5262
  weaponIndex: number,
4756
5263
  ): void
5264
+ declare function BlzResetUnitAttack(whichUnit: junit, weaponIndex: number): void
4757
5265
  declare function BlzGetHeroPrimaryStat(whichUnit: junit): number
4758
5266
  declare function BlzSetHeroPrimaryStat(whichUnit: junit, value: number): void
4759
5267
  declare function BlzSetSpecialEffectColorByPlayer(whichEffect: jeffect, whichPlayer: jplayer): void
@@ -4805,6 +5313,12 @@ declare function BlzPlaySpecialEffectWithTimeScale(
4805
5313
  whichAnim: janimtype,
4806
5314
  timeScale: number,
4807
5315
  ): void
5316
+ declare function BlzSetSpecialEffectAnimationBlendTime(
5317
+ whichEffect: jeffect,
5318
+ blendTime: number,
5319
+ ): void
5320
+ declare function BlzQueueSpecialEffectAnimation(whichEffect: jeffect, whichAnimation: string): void
5321
+ declare function BlzSetSpecialEffectAnimation(whichEffect: jeffect, whichAnimation: string): void
4808
5322
  declare function BlzGetAnimName(whichAnim: janimtype): string
4809
5323
  declare function BlzGetUnitArmor(whichUnit: junit): number
4810
5324
  declare function BlzSetUnitArmor(whichUnit: junit, armorAmount: number): void
@@ -4815,6 +5329,7 @@ declare function BlzUnitDisableAbility(
4815
5329
  flag: boolean,
4816
5330
  hideUI: boolean,
4817
5331
  ): void
5332
+ declare function BlzUnitEnableAuras(whichUnit: junit, enable: boolean, affectsUI: boolean): void
4818
5333
  declare function BlzUnitCancelTimedLife(whichUnit: junit): void
4819
5334
  declare function BlzIsUnitSelectable(whichUnit: junit): boolean
4820
5335
  declare function BlzIsUnitInvulnerable(whichUnit: junit): boolean
@@ -4830,6 +5345,27 @@ declare function BlzSetUnitAbilityCooldown(
4830
5345
  ): void
4831
5346
  declare function BlzGetUnitAbilityCooldown(whichUnit: junit, abilId: number, level: number): number
4832
5347
  declare function BlzGetUnitAbilityCooldownRemaining(whichUnit: junit, abilId: number): number
5348
+ declare function BlzGetUnitAbilityCooldownPercent(whichUnit: junit, abilId: number): number
5349
+ declare function BlzSetUnitAbilityCooldownRemaining(
5350
+ whichUnit: junit,
5351
+ abilId: number,
5352
+ duration: number,
5353
+ ): void
5354
+ declare function BlzSetUnitAbilityCooldownPercent(
5355
+ whichUnit: junit,
5356
+ abilId: number,
5357
+ percent: number,
5358
+ ): void
5359
+ declare function BlzAdjustUnitAbilityCooldownRemaining(
5360
+ whichUnit: junit,
5361
+ abilId: number,
5362
+ duration: number,
5363
+ ): void
5364
+ declare function BlzAdjustUnitAbilityCooldownPercent(
5365
+ whichUnit: junit,
5366
+ abilId: number,
5367
+ percent: number,
5368
+ ): void
4833
5369
  declare function BlzEndUnitAbilityCooldown(whichUnit: junit, abilCode: number): void
4834
5370
  declare function BlzStartUnitAbilityCooldown(
4835
5371
  whichUnit: junit,
@@ -4990,6 +5526,7 @@ declare function BlzFrameSetTooltip(frame: jframehandle, tooltip: jframehandle):
4990
5526
  declare function BlzFrameCageMouse(frame: jframehandle, enable: boolean): void
4991
5527
  declare function BlzFrameSetValue(frame: jframehandle, value: number): void
4992
5528
  declare function BlzFrameGetValue(frame: jframehandle): number
5529
+ declare function BlzTextAreaFrameSetAutoScroll(frame: jframehandle, value: boolean): void
4993
5530
  declare function BlzFrameSetMinMaxValue(
4994
5531
  frame: jframehandle,
4995
5532
  minValue: number,
@@ -5044,12 +5581,21 @@ declare function BlzTriggerRegisterPlayerKeyEvent(
5044
5581
  declare function BlzGetTriggerPlayerKey(): joskeytype
5045
5582
  declare function BlzGetTriggerPlayerMetaKey(): number
5046
5583
  declare function BlzGetTriggerPlayerIsKeyDown(): boolean
5584
+ declare function BlzIsMetaKeyPressed(metakey: number): boolean
5585
+ declare function BlzIsKeyPressed(key: joskeytype): boolean
5586
+ declare function BlzIsMouseButtonPressed(mouseButtonType: jmousebuttontype): boolean
5587
+ declare function BlzGetMouseScreenPosX(): number
5588
+ declare function BlzGetMouseScreenPosY(): number
5047
5589
  declare function BlzEnableCursor(enable: boolean): void
5048
5590
  declare function BlzSetMousePos(x: number, y: number): void
5049
5591
  declare function BlzGetLocalClientWidth(): number
5050
5592
  declare function BlzGetLocalClientHeight(): number
5051
5593
  declare function BlzIsLocalClientActive(): boolean
5052
5594
  declare function BlzGetMouseFocusUnit(): junit
5595
+ declare function BlzPixelToFrameX(pixelX: number): number
5596
+ declare function BlzPixelToFrameY(pixelY: number): number
5597
+ declare function BlzFrameToPixelX(frameX: number): number
5598
+ declare function BlzFrameToPixelY(frameY: number): number
5053
5599
  declare function BlzChangeMinimapTerrainTex(texFile: string): boolean
5054
5600
  declare function BlzGetLocale(): string
5055
5601
  declare function BlzGetSpecialEffectScale(whichEffect: jeffect): number
@@ -5257,8 +5803,8 @@ declare function BlzRemoveAbilityStringLevelArrayField(
5257
5803
  level: number,
5258
5804
  value: string,
5259
5805
  ): boolean
5260
- declare function BlzGetItemAbilityByIndex(whichItem: jitem, index: number): jability | null
5261
- declare function BlzGetItemAbility(whichItem: jitem, abilCode: number): jability | null
5806
+ declare function BlzGetItemAbilityByIndex(whichItem: jitem, index: number): jability | undefined
5807
+ declare function BlzGetItemAbility(whichItem: jitem, abilCode: number): jability | undefined
5262
5808
  declare function BlzItemAddAbility(whichItem: jitem, abilCode: number): boolean
5263
5809
  declare function BlzGetItemBooleanField(whichItem: jitem, whichField: jitembooleanfield): boolean
5264
5810
  declare function BlzGetItemIntegerField(whichItem: jitem, whichField: jitemintegerfield): number
@@ -5438,6 +5984,8 @@ declare const bj_WAIT_FOR_COND_MIN_INTERVAL: number
5438
5984
  declare const bj_POLLED_WAIT_INTERVAL: number
5439
5985
  declare const bj_POLLED_WAIT_SKIP_THRESHOLD: number
5440
5986
  declare const bj_MAX_INVENTORY: number
5987
+ declare const bj_MAX_EXTENDED_INVENTORY: number
5988
+ declare const bj_MAX_EQUIPMENT_INVENTORY: number
5441
5989
  declare const bj_MAX_PLAYERS: number
5442
5990
  declare const bj_PLAYER_NEUTRAL_VICTIM: number
5443
5991
  declare const bj_PLAYER_NEUTRAL_EXTRA: number
@@ -5514,6 +6062,8 @@ declare const bj_CAMPAIGN_INDEX_XN: number
5514
6062
  declare const bj_CAMPAIGN_INDEX_XH: number
5515
6063
  declare const bj_CAMPAIGN_INDEX_XU: number
5516
6064
  declare const bj_CAMPAIGN_INDEX_XO: number
6065
+ declare const bj_CAMPAIGN_INDEX_RH: number
6066
+ declare const bj_CAMPAIGN_INDEX_RU: number
5517
6067
  declare const bj_CAMPAIGN_OFFSET_T: number
5518
6068
  declare const bj_CAMPAIGN_OFFSET_H: number
5519
6069
  declare const bj_CAMPAIGN_OFFSET_U: number
@@ -5523,6 +6073,8 @@ declare const bj_CAMPAIGN_OFFSET_XN: number
5523
6073
  declare const bj_CAMPAIGN_OFFSET_XH: number
5524
6074
  declare const bj_CAMPAIGN_OFFSET_XU: number
5525
6075
  declare const bj_CAMPAIGN_OFFSET_XO: number
6076
+ declare const bj_CAMPAIGN_OFFSET_RH: number
6077
+ declare const bj_CAMPAIGN_OFFSET_RU: number
5526
6078
  declare const bj_MISSION_INDEX_T00: number
5527
6079
  declare const bj_MISSION_INDEX_T01: number
5528
6080
  declare const bj_MISSION_INDEX_T02: number
@@ -5610,6 +6162,15 @@ declare const bj_MISSION_INDEX_XO00: number
5610
6162
  declare const bj_MISSION_INDEX_XO01: number
5611
6163
  declare const bj_MISSION_INDEX_XO02: number
5612
6164
  declare const bj_MISSION_INDEX_XO03: number
6165
+ declare const bj_MISSION_INDEX_RH00: number
6166
+ declare const bj_MISSION_INDEX_RH01: number
6167
+ declare const bj_MISSION_INDEX_RH02: number
6168
+ declare const bj_MISSION_INDEX_RH03: number
6169
+ declare const bj_MISSION_INDEX_RH04: number
6170
+ declare const bj_MISSION_INDEX_RU00: number
6171
+ declare const bj_MISSION_INDEX_RU01: number
6172
+ declare const bj_MISSION_INDEX_RU02: number
6173
+ declare const bj_MISSION_INDEX_RU03: number
5613
6174
  declare const bj_CINEMATICINDEX_TOP: number
5614
6175
  declare const bj_CINEMATICINDEX_HOP: number
5615
6176
  declare const bj_CINEMATICINDEX_HED: number
@@ -5621,6 +6182,8 @@ declare const bj_CINEMATICINDEX_NOP: number
5621
6182
  declare const bj_CINEMATICINDEX_NED: number
5622
6183
  declare const bj_CINEMATICINDEX_XOP: number
5623
6184
  declare const bj_CINEMATICINDEX_XED: number
6185
+ declare const bj_CINEMATICINDEX_HFO: number
6186
+ declare const bj_CINEMATICINDEX_UFE: number
5624
6187
  declare const bj_ALLIANCE_UNALLIED: number
5625
6188
  declare const bj_ALLIANCE_UNALLIED_VISION: number
5626
6189
  declare const bj_ALLIANCE_ALLIED: number
@@ -5635,6 +6198,7 @@ declare const bj_KEYEVENTKEY_LEFT: number
5635
6198
  declare const bj_KEYEVENTKEY_RIGHT: number
5636
6199
  declare const bj_KEYEVENTKEY_DOWN: number
5637
6200
  declare const bj_KEYEVENTKEY_UP: number
6201
+ declare const bj_KEYEVENTKEY_A: number
5638
6202
  declare const bj_MOUSEEVENTTYPE_DOWN: number
5639
6203
  declare const bj_MOUSEEVENTTYPE_UP: number
5640
6204
  declare const bj_MOUSEEVENTTYPE_MOVE: number
@@ -5859,6 +6423,9 @@ declare let bj_delayedSuspendDecayTimer: jtimer
5859
6423
  declare let bj_delayedSuspendDecayTrig: jtrigger
5860
6424
  declare let bj_livingPlayerUnitsTypeId: number
5861
6425
  declare let bj_lastDyingWidget: jwidget
6426
+ declare let bj_HeroGlowAllUnitsFlag: boolean
6427
+ declare let bj_enableAurasAllUnits: boolean
6428
+ declare let bj_affectsUIAurasAllUnits: boolean
5862
6429
  declare let bj_randDistCount: number
5863
6430
  declare let bj_randDistID: number[]
5864
6431
  declare let bj_randDistChance: number[]
@@ -5893,6 +6460,8 @@ declare let bj_lastCreatedImage: jimage
5893
6460
  declare let bj_lastCreatedUbersplat: jubersplat
5894
6461
  declare let bj_lastCreatedMinimapIcon: jminimapicon
5895
6462
  declare let bj_lastCreatedCommandButtonEffect: jcommandbuttoneffect
6463
+ declare let bj_lastEquippedItem: jitem
6464
+ declare let bj_lastUnequippedItem: jitem
5896
6465
  declare let filterIssueHauntOrderAtLocBJ: jboolexpr
5897
6466
  declare let filterEnumDestructablesInCircleBJ: jboolexpr
5898
6467
  declare let filterGetUnitsInRectOfPlayer: jboolexpr
@@ -5901,8 +6470,13 @@ declare let filterGetUnitsOfPlayerAndTypeId: jboolexpr
5901
6470
  declare let filterMeleeTrainedUnitIsHeroBJ: jboolexpr
5902
6471
  declare let filterLivingPlayerUnitsOfTypeId: jboolexpr
5903
6472
  declare let bj_wantDestroyGroup: boolean
6473
+ declare let bj_destroyEffectAsyncEffect: jeffect
6474
+ declare let bj_destroyEffectAsyncTime: number
5904
6475
  declare let bj_lastInstObjFuncSuccessful: boolean
5905
6476
  declare function BJDebugMsg(msg: string): void
6477
+ declare function SetWantDestroyGroupBJ(): void
6478
+ declare function ClearWantDestroyGroupBJ(): void
6479
+ declare function GetWantDestroyGroupBJ(): boolean
5906
6480
  declare function RMinBJ(a: number, b: number): number
5907
6481
  declare function RMaxBJ(a: number, b: number): number
5908
6482
  declare function RAbsBJ(a: number): number
@@ -5992,6 +6566,11 @@ declare function SetCameraFieldForPlayer(
5992
6566
  value: number,
5993
6567
  duration: number,
5994
6568
  ): void
6569
+ declare function SetCameraFieldControlledByInputForPlayer(
6570
+ whichPlayer: jplayer,
6571
+ whichField: jcamerafield,
6572
+ controlled: boolean,
6573
+ ): void
5995
6574
  declare function SetCameraTargetControllerNoZForPlayer(
5996
6575
  whichPlayer: jplayer,
5997
6576
  whichUnit: junit,
@@ -6105,6 +6684,9 @@ declare function TriggerRegisterPlayerMouseEventBJ(
6105
6684
  whichPlayer: jplayer,
6106
6685
  meType: number,
6107
6686
  ): jevent
6687
+ declare function IsMouseButtonPressedBJ(mouseButtonType: jmousebuttontype): boolean
6688
+ declare function IsMetaKeyPressedBJ(metakey: number): boolean
6689
+ declare function IsKeyPressedBJ(key: joskeytype): boolean
6108
6690
  declare function TriggerRegisterPlayerEventVictory(trig: jtrigger, whichPlayer: jplayer): jevent
6109
6691
  declare function TriggerRegisterPlayerEventDefeat(trig: jtrigger, whichPlayer: jplayer): jevent
6110
6692
  declare function TriggerRegisterPlayerEventLeave(trig: jtrigger, whichPlayer: jplayer): jevent
@@ -6236,6 +6818,31 @@ declare function SetWaterBaseColorBJ(
6236
6818
  blue: number,
6237
6819
  transparency: number,
6238
6820
  ): void
6821
+ declare function SetHDWaterParamsExBJ(
6822
+ red: number,
6823
+ green: number,
6824
+ blue: number,
6825
+ override: boolean,
6826
+ vertexDisplacement: number,
6827
+ minOpacity: number,
6828
+ maxOpacity: number,
6829
+ reflectivity: number,
6830
+ emissivity: number,
6831
+ edgeSoftness: number,
6832
+ waveStrength: number,
6833
+ envMapStrength: number,
6834
+ ): void
6835
+ declare function BlzSetHDWaterColorBJ(red: number, green: number, blue: number): void
6836
+ declare function BlzSetHDWaterColorOverrideBJ(): void
6837
+ declare function BlzClearHDWaterColorOverrideBJ(): void
6838
+ declare function BlzSetHDWaterVertexDisplacementBJ(vertexDisplacement: number): void
6839
+ declare function BlzSetHDWaterMinOpacityBJ(minOpacity: number): void
6840
+ declare function BlzSetHDWaterMaxOpacityBJ(maxOpacity: number): void
6841
+ declare function BlzSetHDWaterReflectivityBJ(reflectivity: number): void
6842
+ declare function BlzSetHDWaterEmissivityBJ(emissivity: number): void
6843
+ declare function BlzSetHDWaterEdgeSoftnessBJ(edgeSoftness: number): void
6844
+ declare function BlzSetHDWaterWaveStrengthBJ(waveStrength: number): void
6845
+ declare function BlzSetHDWaterEnvMapStrengthBJ(envMapStrengthy: number): void
6239
6846
  declare function CreateFogModifierRectSimple(
6240
6847
  whichPlayer: jplayer,
6241
6848
  whichFogState: jfogstate,
@@ -6277,6 +6884,30 @@ declare function SetTerrainFogExBJ(
6277
6884
  green: number,
6278
6885
  blue: number,
6279
6886
  ): void
6887
+ declare function SetTerrainFogExVBJ(
6888
+ style: number,
6889
+ zstart: number,
6890
+ zend: number,
6891
+ density: number,
6892
+ heightStart: number,
6893
+ heightEnd: number,
6894
+ linearStart: number,
6895
+ linearEnd: number,
6896
+ red: number,
6897
+ green: number,
6898
+ blue: number,
6899
+ ): void
6900
+ declare function BlzSetTerrainFogStyleBJ(style: jfogstyle): void
6901
+ declare function BlzSetTerrainFogZStartBJ(zStart: number): void
6902
+ declare function BlzSetTerrainFogZEndBJ(zEnd: number): void
6903
+ declare function BlzSetTerrainFogDensityBJ(density: number): void
6904
+ declare function BlzSetTerrainFogHeightStartBJ(heightStart: number): void
6905
+ declare function BlzSetTerrainFogHeightEndBJ(heightEnd: number): void
6906
+ declare function BlzSetTerrainFogLinearStartBJ(linearStart: number): void
6907
+ declare function BlzSetTerrainFogLinearEndBJ(linearEnd: number): void
6908
+ declare function BlzSetTerrainFogMaxLinearDensityBJ(maxLinearDensity: number): void
6909
+ declare function BlzSetTerrainFogDrawOverSkyBJ(drawOverSky: boolean): void
6910
+ declare function BlzSetTerrainFogColorBJ(red: number, green: number, blue: number): void
6280
6911
  declare function ResetTerrainFogBJ(): void
6281
6912
  declare function SetDoodadAnimationBJ(
6282
6913
  animName: string,
@@ -6285,11 +6916,27 @@ declare function SetDoodadAnimationBJ(
6285
6916
  center: jlocation,
6286
6917
  ): void
6287
6918
  declare function SetDoodadAnimationRectBJ(animName: string, doodadID: number, r: jrect): void
6919
+ declare function BlzSetSingleDoodadAnimationBJ(animName: string, index: number): void
6288
6920
  declare function AddUnitAnimationPropertiesBJ(
6289
6921
  add: boolean,
6290
6922
  animProperties: string,
6291
6923
  whichUnit: junit,
6292
6924
  ): void
6925
+ declare function SetDoodadColorBJ(
6926
+ color: jplayercolor,
6927
+ doodadID: number,
6928
+ radius: number,
6929
+ center: jlocation,
6930
+ ): void
6931
+ declare function SetDoodadColorRectBJ(color: jplayercolor, doodadID: number, r: jrect): void
6932
+ declare function BlzSetSingleDoodadColorBJ(color: jplayercolor, index: number): void
6933
+ declare function AllowHeroGlowOnUnitBJ(whichUnit: junit): void
6934
+ declare function DisallowHeroGlowOnUnitBJ(whichUnit: junit): void
6935
+ declare function ToggleHeroGlowOnAllUnitsBJEnum(): void
6936
+ declare function ToggleHeroGlowOnAllUnitsBJ(allow: boolean): void
6937
+ declare function AllowHeroGlowOnAllUnitsBJ(): void
6938
+ declare function DisallowHeroGlowOnAllUnitsBJ(): void
6939
+ declare function HeroGlowIsAllowedOnUnitBJ(whichUnit: junit): boolean
6293
6940
  declare function CreateImageBJ(
6294
6941
  file: string,
6295
6942
  size: number,
@@ -6392,6 +7039,7 @@ declare function EndThematicMusicBJ(): void
6392
7039
  declare function StopMusicBJ(fadeOut: boolean): void
6393
7040
  declare function ResumeMusicBJ(): void
6394
7041
  declare function SetMusicVolumeBJ(volumePercent: number): void
7042
+ declare function SetThematicMusicVolumeBJ(volumePercent: number): void
6395
7043
  declare function GetSoundDurationBJ(soundHandle: jsound): number
6396
7044
  declare function GetSoundFileDurationBJ(musicFileName: string): number
6397
7045
  declare function GetLastPlayedSound(): jsound
@@ -6427,6 +7075,8 @@ declare function AddSpecialEffectTargetUnitBJ(
6427
7075
  ): jeffect
6428
7076
  declare function DestroyEffectBJ(whichEffect: jeffect): void
6429
7077
  declare function GetLastCreatedEffectBJ(): jeffect
7078
+ declare function DestroyEffectAsyncBJ(): void
7079
+ declare function DestroyEffectAfterTimeBJ(whichEffect: jeffect, time: number): void
6430
7080
  declare function CreateCommandButtonEffectBJ(abilityId: number, order: string): jcommandbuttoneffect
6431
7081
  declare function CreateTrainCommandButtonEffectBJ(unitId: number): jcommandbuttoneffect
6432
7082
  declare function CreateUpgradeCommandButtonEffectBJ(techId: number): jcommandbuttoneffect
@@ -6452,10 +7102,16 @@ declare function UnitRemoveBuffBJ(buffcode: number, whichUnit: junit): boolean
6452
7102
  declare function UnitAddItemSwapped(whichItem: jitem, whichHero: junit): boolean
6453
7103
  declare function UnitAddItemByIdSwapped(itemId: number, whichHero: junit): jitem
6454
7104
  declare function UnitRemoveItemSwapped(whichItem: jitem, whichHero: junit): void
7105
+ declare function UnitEquipItemSwapped(whichItem: jitem, whichHero: junit): boolean
7106
+ declare function UnitEquipItemByIdSwapped(itemId: number, whichHero: junit): jitem
6455
7107
  declare function UnitRemoveItemFromSlotSwapped(itemSlot: number, whichHero: junit): jitem
7108
+ declare function UnitUnequipItemSwapped(whichHero: junit, whichItem: jitem): void
7109
+ declare function UnitUnequipItemFromSlotSwapped(whichHero: junit, slot: jloadoutslot): jitem
6456
7110
  declare function CreateItemLoc(itemId: number, loc: jlocation): jitem
6457
7111
  declare function GetLastCreatedItem(): jitem
6458
7112
  declare function GetLastRemovedItem(): jitem
7113
+ declare function GetLastEquippedItem(): jitem
7114
+ declare function GetLastUnequippedItem(): jitem
6459
7115
  declare function SetItemPositionLoc(whichItem: jitem, loc: jlocation): void
6460
7116
  declare function GetLearnedSkillBJ(): number
6461
7117
  declare function SuspendHeroXPBJ(flag: boolean, whichHero: junit): void
@@ -6496,11 +7152,38 @@ declare function UnitUseItemDestructable(
6496
7152
  ): boolean
6497
7153
  declare function UnitUseItemPointLoc(whichUnit: junit, whichItem: jitem, loc: jlocation): boolean
6498
7154
  declare function UnitItemInSlotBJ(whichUnit: junit, itemSlot: number): jitem
7155
+ declare function UnitItemInBagSlotBJ(whichUnit: junit, itemSlot: number): jitem
7156
+ declare function UnitItemInEquipmentSlotBJ(whichUnit: junit, slot: jloadoutslot): jitem
6499
7157
  declare function GetInventoryIndexOfItemTypeBJ(whichUnit: junit, itemId: number): number
6500
7158
  declare function GetItemOfTypeFromUnitBJ(whichUnit: junit, itemId: number): jitem
6501
7159
  declare function UnitHasItemOfTypeBJ(whichUnit: junit, itemId: number): boolean
7160
+ declare function GetInventoryBagIndexOfItemTypeBJ(whichUnit: junit, itemId: number): number
7161
+ declare function GetItemOfTypeFromUnitBagBJ(whichUnit: junit, itemId: number): jitem
7162
+ declare function UnitHasItemOfTypeBaggedBJ(whichUnit: junit, itemId: number): boolean
7163
+ declare function GetInventoryBagIndexOfEquipmentTypeBJ(
7164
+ whichUnit: junit,
7165
+ whichEquipmentType: jequipmentType,
7166
+ ): number
7167
+ declare function GetItemOfEquipmentTypeFromUnitBagBJ(
7168
+ whichUnit: junit,
7169
+ whichEquipmentType: jequipmentType,
7170
+ ): jitem
7171
+ declare function GetEquipmentInventoryIndexOfItemTypeBJ(whichUnit: junit, itemId: number): number
7172
+ declare function GetEquipmentInventoryIndexOfEquipmentTypeBJ(
7173
+ whichUnit: junit,
7174
+ whichEquipmentType: jequipmentType,
7175
+ ): number
7176
+ declare function GetItemEquippedByHeroOfTypeBJ(whichUnit: junit, itemId: number): jitem
7177
+ declare function GetItemEquippedByHeroOfEquipmentTypeBJ(
7178
+ whichUnit: junit,
7179
+ whichEquipmentType: jequipmentType,
7180
+ ): jitem
7181
+ declare function UnitHasItemOfTypeEquippedBJ(whichUnit: junit, itemId: number): boolean
6502
7182
  declare function UnitInventoryCount(whichUnit: junit): number
6503
7183
  declare function UnitInventorySizeBJ(whichUnit: junit): number
7184
+ declare function UnitExtendedInventoryCount(whichUnit: junit): number
7185
+ declare function UnitExtendedInventorySizeBJ(whichUnit: junit): number
7186
+ declare function UnitEquipmentCount(whichUnit: junit): number
6504
7187
  declare function SetItemInvulnerableBJ(whichItem: jitem, flag: boolean): void
6505
7188
  declare function SetItemDropOnDeathBJ(whichItem: jitem, flag: boolean): void
6506
7189
  declare function SetItemDroppableBJ(whichItem: jitem, flag: boolean): void
@@ -6509,6 +7192,12 @@ declare function SetItemVisibleBJ(show: boolean, whichItem: jitem): void
6509
7192
  declare function IsItemHiddenBJ(whichItem: jitem): boolean
6510
7193
  declare function ChooseRandomItemBJ(level: number): number
6511
7194
  declare function ChooseRandomItemExBJ(level: number, whichType: jitemtype): number
7195
+ declare function ChooseRandomItemExWithFilterBJ(
7196
+ level: number,
7197
+ whichType: jitemtype,
7198
+ whichEquipmentType: jequipmentType,
7199
+ whichTag: jitemTag,
7200
+ ): number
6512
7201
  declare function ChooseRandomNPBuildingBJ(): number
6513
7202
  declare function ChooseRandomCreepBJ(level: number): number
6514
7203
  declare function EnumItemsInRectBJ(r: jrect, actionFunc?: () => void): void
@@ -6622,6 +7311,8 @@ declare function PauseAllUnitsBJEnum(): void
6622
7311
  declare function PauseAllUnitsBJ(pause: boolean): void
6623
7312
  declare function PauseUnitBJ(pause: boolean, whichUnit: junit): void
6624
7313
  declare function IsUnitPausedBJ(whichUnit: junit): boolean
7314
+ declare function BlzAllUnitsEnableAurasBJEnum(): void
7315
+ declare function BlzAllUnitsEnableAurasBJ(enable: boolean, affectsUI: boolean): void
6625
7316
  declare function UnitPauseTimedLifeBJ(flag: boolean, whichUnit: junit): void
6626
7317
  declare function UnitApplyTimedLifeBJ(duration: number, buffId: number, whichUnit: junit): void
6627
7318
  declare function UnitShareVisionBJ(share: boolean, whichUnit: junit, whichPlayer: jplayer): void
@@ -6847,6 +7538,13 @@ declare function SetUnitFacingToFaceUnitTimed(
6847
7538
  duration: number,
6848
7539
  ): void
6849
7540
  declare function QueueUnitAnimationBJ(whichUnit: junit, whichAnimation: string): void
7541
+ declare function SetDestructableVertexColorBJ(
7542
+ whichDestructable: jdestructable,
7543
+ red: number,
7544
+ green: number,
7545
+ blue: number,
7546
+ transparency: number,
7547
+ ): void
6850
7548
  declare function SetDestructableAnimationBJ(d: jdestructable, whichAnimation: string): void
6851
7549
  declare function QueueDestructableAnimationBJ(d: jdestructable, whichAnimation: string): void
6852
7550
  declare function SetDestAnimationSpeedPercent(d: jdestructable, percentScale: number): void
@@ -7275,6 +7973,7 @@ declare function TransmissionFromUnitTypeWithNameBJ(
7275
7973
  wait: boolean,
7276
7974
  ): void
7277
7975
  declare function GetLastTransmissionDurationBJ(): number
7976
+ declare function SetCameraBlockerForPlayerBJ(r: jrect, flag: boolean, whichPlayer: jplayer): void
7278
7977
  declare function ForceCinematicSubtitlesBJ(flag: boolean): void
7279
7978
  declare function CinematicModeExBJ(
7280
7979
  cineMode: boolean,
@@ -8250,3 +8949,4 @@ declare function BlzSetUnitWeaponStringFieldBJ(
8250
8949
  index: number,
8251
8950
  value: string,
8252
8951
  ): void
8952
+ declare function BlzEnableAuras(whichUnit: junit, enable: boolean): void