warscript 0.0.1-dev.c362181 → 0.0.1-dev.c47d565

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 (401) 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 +16 -2
  7. package/core/types/frame.lua +141 -77
  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 +18 -3
  19. package/core/types/tileCell.lua +108 -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/ability-type-extended-tooltip.d.ts +8 -0
  30. package/engine/ability-type-extended-tooltip.lua +44 -0
  31. package/engine/behavior.d.ts +14 -1
  32. package/engine/behavior.lua +230 -70
  33. package/engine/behaviour/ability/apply-buff.lua +5 -5
  34. package/engine/behaviour/ability/apply-unit-behavior.lua +5 -0
  35. package/engine/behaviour/ability/damage.d.ts +10 -3
  36. package/engine/behaviour/ability/damage.lua +41 -49
  37. package/engine/behaviour/ability/emulate-impact.d.ts +1 -1
  38. package/engine/behaviour/ability/emulate-impact.lua +23 -7
  39. package/engine/behaviour/ability/on-command-impact.d.ts +1 -0
  40. package/engine/behaviour/ability/on-command-impact.lua +1 -0
  41. package/engine/behaviour/ability/remove-buffs.d.ts +9 -0
  42. package/engine/behaviour/ability/remove-buffs.lua +21 -0
  43. package/engine/behaviour/ability/restore-mana.d.ts +1 -1
  44. package/engine/behaviour/ability/restore-mana.lua +6 -6
  45. package/engine/behaviour/ability.d.ts +16 -6
  46. package/engine/behaviour/ability.lua +69 -21
  47. package/engine/behaviour/unit/stun-immunity.d.ts +12 -6
  48. package/engine/behaviour/unit/stun-immunity.lua +57 -31
  49. package/engine/behaviour/unit.d.ts +40 -3
  50. package/engine/behaviour/unit.lua +270 -6
  51. package/engine/buff.d.ts +114 -58
  52. package/engine/buff.lua +564 -303
  53. package/engine/index.d.ts +2 -1
  54. package/engine/internal/ability.d.ts +14 -1
  55. package/engine/internal/ability.lua +113 -44
  56. package/engine/internal/item/ability.lua +63 -11
  57. package/engine/internal/item/fields.d.ts +12 -0
  58. package/engine/internal/item/fields.lua +33 -0
  59. package/engine/internal/item/owner-cache.d.ts +5 -0
  60. package/engine/internal/item/owner-cache.lua +4 -0
  61. package/engine/internal/item+owner.d.ts +2 -0
  62. package/engine/internal/item+owner.lua +37 -8
  63. package/engine/internal/item.d.ts +32 -16
  64. package/engine/internal/item.lua +257 -82
  65. package/engine/internal/mechanics/ability-duration.lua +1 -1
  66. package/engine/internal/mechanics/cast-ability.lua +6 -3
  67. package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
  68. package/engine/internal/misc/frame-coordinates.d.ts +2 -0
  69. package/engine/internal/misc/frame-coordinates.lua +21 -0
  70. package/engine/internal/misc/get-terrain-z.d.ts +2 -0
  71. package/engine/internal/misc/get-terrain-z.lua +11 -0
  72. package/engine/internal/misc/player-local-handle.d.ts +2 -0
  73. package/engine/internal/misc/player-local-handle.lua +5 -0
  74. package/engine/internal/misc/unit-ability-level-natives.d.ts +2 -0
  75. package/engine/internal/misc/unit-ability-level-natives.lua +12 -0
  76. package/engine/internal/object-data/armor-bonus.d.ts +2 -0
  77. package/engine/internal/object-data/attribute-bonus.lua +2 -2
  78. package/engine/internal/object-data/health-bonus.d.ts +2 -0
  79. package/engine/internal/object-data/health-bonus.lua +16 -0
  80. package/engine/internal/object-data/health-regeneration-rate-increase.d.ts +2 -0
  81. package/engine/internal/object-data/health-regeneration-rate-increase.lua +48 -0
  82. package/engine/internal/object-data/mana-bonus.d.ts +2 -0
  83. package/engine/internal/object-data/mana-bonus.lua +16 -0
  84. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.d.ts +2 -0
  85. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
  86. package/engine/internal/object-data/returned-melee-damage-factor.d.ts +2 -0
  87. package/engine/internal/object-data/returned-melee-damage-factor.lua +21 -0
  88. package/engine/internal/unit/ability.d.ts +35 -0
  89. package/engine/internal/unit/ability.lua +98 -9
  90. package/engine/internal/unit/add-item-to-slot-init.lua +3 -14
  91. package/engine/internal/unit/add-item-to-slot.lua +53 -12
  92. package/engine/internal/unit/allowed-targets.d.ts +1 -1
  93. package/engine/internal/unit/allowed-targets.lua +9 -1
  94. package/engine/internal/unit/appearance.d.ts +15 -0
  95. package/engine/internal/unit/appearance.lua +85 -0
  96. package/engine/internal/unit/attributes.d.ts +17 -0
  97. package/engine/internal/unit/attributes.lua +46 -0
  98. package/engine/internal/unit/bonus.d.ts +17 -0
  99. package/engine/internal/unit/bonus.lua +113 -8
  100. package/engine/internal/unit/buff.d.ts +2 -2
  101. package/engine/internal/unit/buff.lua +34 -19
  102. package/engine/internal/unit/equipment-inventory.d.ts +44 -0
  103. package/engine/internal/unit/equipment-inventory.lua +233 -0
  104. package/engine/internal/unit/expiration-timer.lua +1 -1
  105. package/engine/internal/unit/extended-inventory.d.ts +25 -0
  106. package/engine/internal/unit/extended-inventory.lua +99 -0
  107. package/engine/internal/unit/fly-height.d.ts +7 -0
  108. package/engine/internal/unit/fly-height.lua +20 -0
  109. package/engine/internal/unit/ignore-events-items.lua +10 -1
  110. package/engine/internal/unit/interrupts.d.ts +12 -0
  111. package/engine/internal/unit/interrupts.lua +28 -0
  112. package/engine/internal/unit/{item.d.ts → inventory.d.ts} +7 -3
  113. package/engine/internal/unit/inventory.lua +87 -0
  114. package/engine/internal/unit/item-container.d.ts +25 -0
  115. package/engine/internal/unit/item-container.lua +11 -0
  116. package/engine/internal/unit/item-order-events.d.ts +17 -0
  117. package/engine/internal/unit/item-order-events.lua +67 -0
  118. package/engine/internal/unit/item-slot.d.ts +27 -0
  119. package/engine/internal/unit/item-slot.lua +92 -0
  120. package/engine/internal/unit/main-selected.lua +12 -27
  121. package/engine/internal/unit/order.d.ts +20 -0
  122. package/engine/internal/unit/order.lua +136 -0
  123. package/engine/internal/unit/range-event.d.ts +12 -0
  124. package/engine/internal/unit/range-event.lua +90 -0
  125. package/engine/internal/unit/scale.d.ts +7 -0
  126. package/engine/internal/unit/scale.lua +20 -0
  127. package/engine/internal/unit+ability.d.ts +2 -1
  128. package/engine/internal/unit+ability.lua +73 -3
  129. package/engine/internal/unit+bonus.lua +3 -3
  130. package/engine/internal/unit+damage.d.ts +11 -11
  131. package/engine/internal/unit+damage.lua +43 -14
  132. package/engine/internal/unit+rally.lua +9 -31
  133. package/engine/internal/unit+spellSteal.lua +1 -2
  134. package/engine/internal/unit-missile-data.lua +58 -32
  135. package/engine/internal/unit-missile-launch.lua +65 -27
  136. package/engine/internal/unit.d.ts +41 -36
  137. package/engine/internal/unit.lua +398 -327
  138. package/engine/local-client.d.ts +28 -0
  139. package/engine/local-client.lua +324 -54
  140. package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
  141. package/engine/object-data/auxiliary/armor-type.lua +46 -0
  142. package/engine/object-data/auxiliary/attachment-preset.d.ts +14 -2
  143. package/engine/object-data/auxiliary/attachment-preset.lua +11 -3
  144. package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
  145. package/engine/object-data/auxiliary/attack-type.lua +42 -0
  146. package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
  147. package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
  148. package/engine/object-data/auxiliary/equipment-type.d.ts +12 -0
  149. package/engine/object-data/auxiliary/equipment-type.lua +26 -0
  150. package/engine/object-data/auxiliary/health-regeneration-type.d.ts +8 -0
  151. package/engine/object-data/auxiliary/health-regeneration-type.lua +2 -0
  152. package/engine/object-data/auxiliary/item-class.d.ts +11 -0
  153. package/engine/object-data/auxiliary/item-class.lua +2 -0
  154. package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
  155. package/engine/object-data/auxiliary/item-tag.lua +2 -0
  156. package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
  157. package/engine/object-data/auxiliary/movement-type.lua +22 -0
  158. package/engine/object-data/auxiliary/order-type.d.ts +939 -0
  159. package/engine/object-data/auxiliary/order-type.lua +2 -0
  160. package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
  161. package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
  162. package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
  163. package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
  164. package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
  165. package/engine/object-data/entry/ability-type/armor-bonus.d.ts +8 -0
  166. package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
  167. package/engine/object-data/entry/ability-type/aura-of-blight.d.ts +13 -0
  168. package/engine/object-data/entry/ability-type/aura-of-blight.lua +39 -0
  169. package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
  170. package/engine/object-data/entry/ability-type/banshee.lua +13 -0
  171. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
  172. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
  173. package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
  174. package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
  175. package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
  176. package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
  177. package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
  178. package/engine/object-data/entry/ability-type/berserk.lua +13 -0
  179. package/engine/object-data/entry/ability-type/blank-passive-with-cooldown.d.ts +23 -0
  180. package/engine/object-data/entry/ability-type/blank-passive-with-cooldown.lua +112 -0
  181. package/engine/object-data/entry/ability-type/blank-passive.d.ts +4 -0
  182. package/engine/object-data/entry/ability-type/blank-passive.lua +27 -7
  183. package/engine/object-data/entry/ability-type/breath-of-fire.d.ts +11 -0
  184. package/engine/object-data/entry/ability-type/breath-of-fire.lua +27 -0
  185. package/engine/object-data/entry/ability-type/carrion-swarm.d.ts +14 -0
  186. package/engine/object-data/entry/ability-type/carrion-swarm.lua +65 -0
  187. package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
  188. package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
  189. package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
  190. package/engine/object-data/entry/ability-type/consecration.lua +52 -0
  191. package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
  192. package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
  193. package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
  194. package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
  195. package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
  196. package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
  197. package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
  198. package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
  199. package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
  200. package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
  201. package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
  202. package/engine/object-data/entry/ability-type/equipment.lua +27 -0
  203. package/engine/object-data/entry/ability-type/exhume-corpses.d.ts +14 -0
  204. package/engine/object-data/entry/ability-type/exhume-corpses.lua +40 -0
  205. package/engine/object-data/entry/ability-type/firebolt.d.ts +7 -0
  206. package/engine/object-data/entry/ability-type/firebolt.lua +13 -0
  207. package/engine/object-data/entry/ability-type/flame-strike.d.ts +25 -0
  208. package/engine/object-data/entry/ability-type/flame-strike.lua +92 -0
  209. package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
  210. package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
  211. package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
  212. package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
  213. package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
  214. package/engine/object-data/entry/ability-type/grit.lua +65 -0
  215. package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
  216. package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
  217. package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
  218. package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
  219. package/engine/object-data/entry/ability-type/{armor-increase.d.ts → healing-modifier.d.ts} +4 -3
  220. package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
  221. package/engine/object-data/entry/ability-type/healing-ward-aura.d.ts +13 -0
  222. package/engine/object-data/entry/ability-type/healing-ward-aura.lua +39 -0
  223. package/engine/object-data/entry/ability-type/health-bonus.d.ts +8 -0
  224. package/engine/object-data/entry/ability-type/health-bonus.lua +26 -0
  225. package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
  226. package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
  227. package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
  228. package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
  229. package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
  230. package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
  231. package/engine/object-data/entry/ability-type/item-life-regeneration.d.ts +10 -0
  232. package/engine/object-data/entry/ability-type/item-life-regeneration.lua +26 -0
  233. package/engine/object-data/entry/ability-type/life-drain.d.ts +37 -0
  234. package/engine/object-data/entry/ability-type/life-drain.lua +144 -0
  235. package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
  236. package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
  237. package/engine/object-data/entry/ability-type/mana-bonus.d.ts +8 -0
  238. package/engine/object-data/entry/ability-type/mana-bonus.lua +26 -0
  239. package/engine/object-data/entry/ability-type/mana-efficiency.d.ts +12 -0
  240. package/engine/object-data/entry/ability-type/mana-efficiency.lua +39 -0
  241. package/engine/object-data/entry/ability-type/mana-regeneration.d.ts +8 -0
  242. package/engine/object-data/entry/ability-type/mana-regeneration.lua +26 -0
  243. package/engine/object-data/entry/ability-type/mind-control.d.ts +21 -0
  244. package/engine/object-data/entry/ability-type/mind-control.lua +78 -0
  245. package/engine/object-data/entry/ability-type/on-attack-cast-spell.d.ts +21 -0
  246. package/engine/object-data/entry/ability-type/on-attack-cast-spell.lua +52 -0
  247. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.d.ts +19 -0
  248. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.lua +65 -0
  249. package/engine/object-data/entry/ability-type/on-hit-cast-spell.d.ts +15 -0
  250. package/engine/object-data/entry/ability-type/on-hit-cast-spell.lua +26 -0
  251. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.d.ts +6 -0
  252. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.lua +12 -0
  253. package/engine/object-data/entry/ability-type/permanent-invisibility.d.ts +8 -0
  254. package/engine/object-data/entry/ability-type/permanent-invisibility.lua +26 -0
  255. package/engine/object-data/entry/ability-type/phase-shift.d.ts +10 -0
  256. package/engine/object-data/entry/ability-type/phase-shift.lua +39 -0
  257. package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
  258. package/engine/object-data/entry/ability-type/provoke.lua +66 -0
  259. package/engine/object-data/entry/ability-type/rain-of-fire.d.ts +7 -0
  260. package/engine/object-data/entry/ability-type/rain-of-fire.lua +13 -0
  261. package/engine/object-data/entry/ability-type/raise-the-banner.d.ts +9 -0
  262. package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
  263. package/engine/object-data/entry/ability-type/reincarnation.d.ts +8 -0
  264. package/engine/object-data/entry/ability-type/reincarnation.lua +26 -0
  265. package/engine/object-data/entry/ability-type/resolve.d.ts +12 -0
  266. package/engine/object-data/entry/ability-type/resolve.lua +39 -0
  267. package/engine/object-data/entry/ability-type/righteous-fury.d.ts +33 -0
  268. package/engine/object-data/entry/ability-type/righteous-fury.lua +130 -0
  269. package/engine/object-data/entry/ability-type/sacred-aura.d.ts +27 -0
  270. package/engine/object-data/entry/ability-type/sacred-aura.lua +104 -0
  271. package/engine/object-data/entry/ability-type/shock-wave.d.ts +4 -0
  272. package/engine/object-data/entry/ability-type/shock-wave.lua +26 -0
  273. package/engine/object-data/entry/ability-type/slow-poison.d.ts +10 -0
  274. package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
  275. package/engine/object-data/entry/ability-type/soul-burn.d.ts +22 -0
  276. package/engine/object-data/entry/ability-type/soul-burn.lua +79 -0
  277. package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
  278. package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
  279. package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
  280. package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
  281. package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
  282. package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
  283. package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
  284. package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
  285. package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
  286. package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
  287. package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
  288. package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
  289. package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
  290. package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
  291. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
  292. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
  293. package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
  294. package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
  295. package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
  296. package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
  297. package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
  298. package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
  299. package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
  300. package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
  301. package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
  302. package/engine/object-data/entry/ability-type/talents.lua +27 -0
  303. package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
  304. package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
  305. package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
  306. package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
  307. package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
  308. package/engine/object-data/entry/ability-type/warcry.lua +26 -0
  309. package/engine/object-data/entry/ability-type/web.d.ts +12 -0
  310. package/engine/object-data/entry/ability-type/web.lua +52 -0
  311. package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
  312. package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
  313. package/engine/object-data/entry/ability-type.d.ts +40 -15
  314. package/engine/object-data/entry/ability-type.lua +314 -17
  315. package/engine/object-data/entry/buff-type/applicable.lua +113 -104
  316. package/engine/object-data/entry/buff-type.d.ts +10 -12
  317. package/engine/object-data/entry/buff-type.lua +37 -27
  318. package/engine/object-data/entry/destructible-type.d.ts +32 -2
  319. package/engine/object-data/entry/destructible-type.lua +181 -0
  320. package/engine/object-data/entry/item-type.d.ts +18 -3
  321. package/engine/object-data/entry/item-type.lua +84 -0
  322. package/engine/object-data/entry/lightning-type.d.ts +6 -8
  323. package/engine/object-data/entry/lightning-type.lua +1 -1
  324. package/engine/object-data/entry/sound-preset.d.ts +2 -2
  325. package/engine/object-data/entry/unit-type.d.ts +74 -6
  326. package/engine/object-data/entry/unit-type.lua +560 -100
  327. package/engine/object-data/entry/upgrade.d.ts +2 -2
  328. package/engine/object-data/entry.d.ts +6 -1
  329. package/engine/object-data/entry.lua +8 -0
  330. package/engine/object-field/ability.d.ts +4 -4
  331. package/engine/object-field/ability.lua +9 -8
  332. package/engine/object-field/item.d.ts +22 -0
  333. package/engine/object-field/item.lua +118 -0
  334. package/engine/object-field/unit.d.ts +72 -3
  335. package/engine/object-field/unit.lua +268 -7
  336. package/engine/object-field.d.ts +26 -7
  337. package/engine/object-field.lua +360 -119
  338. package/engine/random.d.ts +10 -0
  339. package/engine/random.lua +21 -0
  340. package/engine/standard/entries/ability-type.d.ts +3102 -7
  341. package/engine/standard/entries/ability-type.lua +0 -6
  342. package/engine/standard/entries/buff-type.d.ts +48 -0
  343. package/engine/standard/entries/buff-type.lua +46 -0
  344. package/engine/standard/entries/item-type.d.ts +1299 -0
  345. package/engine/standard/entries/item-type.lua +2 -0
  346. package/engine/standard/entries/lightning-type.d.ts +42 -15
  347. package/engine/standard/entries/lightning-type.lua +0 -14
  348. package/engine/standard/entries/unit-type.d.ts +5 -0
  349. package/engine/standard/entries/unit-type.lua +5 -0
  350. package/engine/standard/fields/ability.d.ts +2 -2
  351. package/engine/standard/fields/ability.lua +2 -2
  352. package/engine/standard/fields/item.d.ts +4 -0
  353. package/engine/standard/fields/item.lua +6 -0
  354. package/engine/standard/fields/unit.d.ts +12 -0
  355. package/engine/standard/fields/unit.lua +20 -0
  356. package/engine/synchronization.d.ts +11 -0
  357. package/engine/synchronization.lua +77 -0
  358. package/engine/text-tag.d.ts +36 -2
  359. package/engine/text-tag.lua +250 -10
  360. package/engine/unit.d.ts +11 -1
  361. package/engine/unit.lua +11 -1
  362. package/event.d.ts +1 -1
  363. package/lualib_bundle.lua +1 -1
  364. package/math.d.ts +2 -0
  365. package/math.lua +14 -0
  366. package/net/socket.lua +1 -1
  367. package/network.lua +25 -1
  368. package/objutil/buff.lua +12 -11
  369. package/objutil/object.lua +1 -1
  370. package/operation.d.ts +8 -1
  371. package/operation.lua +38 -18
  372. package/package.json +3 -23
  373. package/patch-lua.lua +15 -0
  374. package/patch-lualib.lua +1 -1
  375. package/utility/arrays.d.ts +9 -1
  376. package/utility/arrays.lua +28 -0
  377. package/utility/callback-array.d.ts +17 -0
  378. package/utility/callback-array.lua +61 -0
  379. package/utility/functions.d.ts +8 -0
  380. package/utility/functions.lua +13 -0
  381. package/utility/linked-map.d.ts +35 -0
  382. package/utility/linked-map.lua +107 -0
  383. package/utility/linked-set.d.ts +5 -1
  384. package/utility/linked-set.lua +49 -1
  385. package/utility/lua-maps.d.ts +15 -2
  386. package/utility/lua-maps.lua +53 -2
  387. package/utility/lua-sets.d.ts +2 -0
  388. package/utility/lua-sets.lua +7 -0
  389. package/utility/random.d.ts +102 -0
  390. package/utility/random.lua +273 -0
  391. package/utility/records.lua +20 -1
  392. package/utility/types.d.ts +3 -0
  393. package/utility/unordered-map.d.ts +27 -0
  394. package/utility/unordered-map.lua +99 -0
  395. package/core/types/order.d.ts +0 -25
  396. package/core/types/order.lua +0 -55
  397. package/engine/internal/unit/item.lua +0 -78
  398. /package/engine/internal/{object-data/armor-increase.d.ts → misc/damage-metadata-by-target.d.ts} +0 -0
  399. /package/engine/internal/object-data/{armor-increase.lua → armor-bonus.lua} +0 -0
  400. /package/engine/object-data/entry/ability-type/{attribute-increase.d.ts → attribute-bonus.d.ts} +0 -0
  401. /package/engine/object-data/entry/ability-type/{attribute-increase.lua → attribute-bonus.lua} +0 -0
@@ -12,6 +12,9 @@ local implementReadonlyNumberIndexSupplier = ____reflection.implementReadonlyNum
12
12
  local ____combat_2Dclassification = require("engine.object-data.auxiliary.combat-classification")
13
13
  local combatClassificationsToStringArray = ____combat_2Dclassification.combatClassificationsToStringArray
14
14
  local stringArrayToCombatClassifications = ____combat_2Dclassification.stringArrayToCombatClassifications
15
+ local ____movement_2Dtype = require("engine.object-data.auxiliary.movement-type")
16
+ local movementTypeToString = ____movement_2Dtype.movementTypeToString
17
+ local stringToMovementType = ____movement_2Dtype.stringToMovementType
15
18
  local ____unit_2Dclassification = require("engine.object-data.auxiliary.unit-classification")
16
19
  local stringArrayToUnitClassifications = ____unit_2Dclassification.stringArrayToUnitClassifications
17
20
  local unitClassificationsToStringArray = ____unit_2Dclassification.unitClassificationsToStringArray
@@ -19,9 +22,19 @@ local ____entry = require("engine.object-data.entry")
19
22
  local ObjectDataEntry = ____entry.ObjectDataEntry
20
23
  local ____object_2Ddata_2Dentry_2Did_2Dgenerator = require("engine.object-data.utility.object-data-entry-id-generator")
21
24
  local ObjectDataEntryIdGenerator = ____object_2Ddata_2Dentry_2Did_2Dgenerator.ObjectDataEntryIdGenerator
25
+ local ____attack_2Dtype = require("engine.object-data.auxiliary.attack-type")
26
+ local attackTypeToString = ____attack_2Dtype.attackTypeToString
27
+ local stringToAttackType = ____attack_2Dtype.stringToAttackType
22
28
  local ____config = require("config")
23
29
  local WarscriptConfig = ____config.WarscriptConfig
30
+ local ____armor_2Dtype = require("engine.object-data.auxiliary.armor-type")
31
+ local armorTypeToString = ____armor_2Dtype.armorTypeToString
32
+ local stringToArmorType = ____armor_2Dtype.stringToArmorType
24
33
  local getOrCreateUnitTypeWeapons
34
+ --- Bit of the `udea` (death type) field: the corpse can be raised.
35
+ local DEATH_TYPE_RAISABLE = 1
36
+ --- Bit of the `udea` (death type) field: the corpse decays.
37
+ local DEATH_TYPE_DECAYABLE = 2
25
38
  ____exports.UnitTypeWeapon = __TS__Class()
26
39
  local UnitTypeWeapon = ____exports.UnitTypeWeapon
27
40
  UnitTypeWeapon.name = "UnitTypeWeapon"
@@ -34,18 +47,19 @@ __TS__SetDescriptor(
34
47
  "attackType",
35
48
  {
36
49
  get = function(self)
50
+ local ____stringToAttackType_1 = stringToAttackType
37
51
  local ____self_0 = self.unitType
38
- return ____self_0.getStringField(
52
+ return ____stringToAttackType_1(____self_0.getStringField(
39
53
  ____self_0,
40
54
  ("ua" .. tostring(self.index)) .. "t"
41
- )
55
+ ))
42
56
  end,
43
57
  set = function(self, attackType)
44
- local ____self_1 = self.unitType
45
- ____self_1.setStringField(
46
- ____self_1,
58
+ local ____self_2 = self.unitType
59
+ ____self_2.setStringField(
60
+ ____self_2,
47
61
  ("ua" .. tostring(self.index)) .. "t",
48
- attackType
62
+ attackTypeToString(attackType)
49
63
  )
50
64
  end
51
65
  },
@@ -56,16 +70,16 @@ __TS__SetDescriptor(
56
70
  "backSwingDuration",
57
71
  {
58
72
  get = function(self)
59
- local ____self_2 = self.unitType
60
- return ____self_2.getNumberField(
61
- ____self_2,
73
+ local ____self_3 = self.unitType
74
+ return ____self_3.getNumberField(
75
+ ____self_3,
62
76
  "ubs" .. tostring(self.index)
63
77
  )
64
78
  end,
65
79
  set = function(self, backSwingDuration)
66
- local ____self_3 = self.unitType
67
- ____self_3.setNumberField(
68
- ____self_3,
80
+ local ____self_4 = self.unitType
81
+ ____self_4.setNumberField(
82
+ ____self_4,
69
83
  "ubs" .. tostring(self.index),
70
84
  backSwingDuration
71
85
  )
@@ -78,16 +92,16 @@ __TS__SetDescriptor(
78
92
  "cooldown",
79
93
  {
80
94
  get = function(self)
81
- local ____self_4 = self.unitType
82
- return ____self_4.getNumberField(
83
- ____self_4,
95
+ local ____self_5 = self.unitType
96
+ return ____self_5.getNumberField(
97
+ ____self_5,
84
98
  ("ua" .. tostring(self.index)) .. "c"
85
99
  )
86
100
  end,
87
101
  set = function(self, cooldown)
88
- local ____self_5 = self.unitType
89
- ____self_5.setNumberField(
90
- ____self_5,
102
+ local ____self_6 = self.unitType
103
+ ____self_6.setNumberField(
104
+ ____self_6,
91
105
  ("ua" .. tostring(self.index)) .. "c",
92
106
  cooldown
93
107
  )
@@ -121,16 +135,16 @@ __TS__SetDescriptor(
121
135
  "damageBase",
122
136
  {
123
137
  get = function(self)
124
- local ____self_6 = self.unitType
125
- return ____self_6.getNumberField(
126
- ____self_6,
138
+ local ____self_7 = self.unitType
139
+ return ____self_7.getNumberField(
140
+ ____self_7,
127
141
  ("ua" .. tostring(self.index)) .. "b"
128
142
  )
129
143
  end,
130
144
  set = function(self, damageBase)
131
- local ____self_7 = self.unitType
132
- ____self_7.setNumberField(
133
- ____self_7,
145
+ local ____self_8 = self.unitType
146
+ ____self_8.setNumberField(
147
+ ____self_8,
134
148
  ("ua" .. tostring(self.index)) .. "b",
135
149
  damageBase
136
150
  )
@@ -143,16 +157,16 @@ __TS__SetDescriptor(
143
157
  "damageDiceCount",
144
158
  {
145
159
  get = function(self)
146
- local ____self_8 = self.unitType
147
- return ____self_8.getNumberField(
148
- ____self_8,
160
+ local ____self_9 = self.unitType
161
+ return ____self_9.getNumberField(
162
+ ____self_9,
149
163
  ("ua" .. tostring(self.index)) .. "d"
150
164
  )
151
165
  end,
152
166
  set = function(self, damageDiceNumber)
153
- local ____self_9 = self.unitType
154
- ____self_9.setNumberField(
155
- ____self_9,
167
+ local ____self_10 = self.unitType
168
+ ____self_10.setNumberField(
169
+ ____self_10,
156
170
  ("ua" .. tostring(self.index)) .. "d",
157
171
  damageDiceNumber
158
172
  )
@@ -165,16 +179,16 @@ __TS__SetDescriptor(
165
179
  "damageDiceSideCount",
166
180
  {
167
181
  get = function(self)
168
- local ____self_10 = self.unitType
169
- return ____self_10.getNumberField(
170
- ____self_10,
182
+ local ____self_11 = self.unitType
183
+ return ____self_11.getNumberField(
184
+ ____self_11,
171
185
  ("ua" .. tostring(self.index)) .. "s"
172
186
  )
173
187
  end,
174
188
  set = function(self, damageDiceSideCount)
175
- local ____self_11 = self.unitType
176
- ____self_11.setNumberField(
177
- ____self_11,
189
+ local ____self_12 = self.unitType
190
+ ____self_12.setNumberField(
191
+ ____self_12,
178
192
  ("ua" .. tostring(self.index)) .. "s",
179
193
  damageDiceSideCount
180
194
  )
@@ -187,16 +201,16 @@ __TS__SetDescriptor(
187
201
  "impactDelay",
188
202
  {
189
203
  get = function(self)
190
- local ____self_12 = self.unitType
191
- return ____self_12.getNumberField(
192
- ____self_12,
204
+ local ____self_13 = self.unitType
205
+ return ____self_13.getNumberField(
206
+ ____self_13,
193
207
  "udp" .. tostring(self.index)
194
208
  )
195
209
  end,
196
210
  set = function(self, impactDelay)
197
- local ____self_13 = self.unitType
198
- ____self_13.setNumberField(
199
- ____self_13,
211
+ local ____self_14 = self.unitType
212
+ ____self_14.setNumberField(
213
+ ____self_14,
200
214
  "udp" .. tostring(self.index),
201
215
  impactDelay
202
216
  )
@@ -204,21 +218,43 @@ __TS__SetDescriptor(
204
218
  },
205
219
  true
206
220
  )
221
+ __TS__SetDescriptor(
222
+ UnitTypeWeapon.prototype,
223
+ "missileArc",
224
+ {
225
+ get = function(self)
226
+ local ____self_15 = self.unitType
227
+ return ____self_15.getNumberField(
228
+ ____self_15,
229
+ "uma" .. tostring(self.index)
230
+ )
231
+ end,
232
+ set = function(self, missileArc)
233
+ local ____self_16 = self.unitType
234
+ ____self_16.setNumberField(
235
+ ____self_16,
236
+ "uma" .. tostring(self.index),
237
+ missileArc
238
+ )
239
+ end
240
+ },
241
+ true
242
+ )
207
243
  __TS__SetDescriptor(
208
244
  UnitTypeWeapon.prototype,
209
245
  "missileModelPath",
210
246
  {
211
247
  get = function(self)
212
- local ____self_14 = self.unitType
213
- return ____self_14.getStringField(
214
- ____self_14,
248
+ local ____self_17 = self.unitType
249
+ return ____self_17.getStringField(
250
+ ____self_17,
215
251
  ("ua" .. tostring(self.index)) .. "m"
216
252
  )
217
253
  end,
218
254
  set = function(self, missileModelPath)
219
- local ____self_15 = self.unitType
220
- ____self_15.setStringField(
221
- ____self_15,
255
+ local ____self_18 = self.unitType
256
+ ____self_18.setStringField(
257
+ ____self_18,
222
258
  ("ua" .. tostring(self.index)) .. "m",
223
259
  missileModelPath
224
260
  )
@@ -226,21 +262,109 @@ __TS__SetDescriptor(
226
262
  },
227
263
  true
228
264
  )
265
+ __TS__SetDescriptor(
266
+ UnitTypeWeapon.prototype,
267
+ "missileModelPathSD",
268
+ {
269
+ get = function(self)
270
+ local ____self_19 = self.unitType
271
+ return ____self_19.getStringField(
272
+ ____self_19,
273
+ ("ua" .. tostring(self.index)) .. "m:sd"
274
+ )
275
+ end,
276
+ set = function(self, missileModelPathSD)
277
+ local ____self_20 = self.unitType
278
+ ____self_20.setStringField(
279
+ ____self_20,
280
+ ("ua" .. tostring(self.index)) .. "m:sd",
281
+ missileModelPathSD
282
+ )
283
+ end
284
+ },
285
+ true
286
+ )
287
+ __TS__SetDescriptor(
288
+ UnitTypeWeapon.prototype,
289
+ "missileModelPathHD",
290
+ {
291
+ get = function(self)
292
+ local ____self_21 = self.unitType
293
+ return ____self_21.getStringField(
294
+ ____self_21,
295
+ ("ua" .. tostring(self.index)) .. "m:hd"
296
+ )
297
+ end,
298
+ set = function(self, missileModelPathHD)
299
+ local ____self_22 = self.unitType
300
+ ____self_22.setStringField(
301
+ ____self_22,
302
+ ("ua" .. tostring(self.index)) .. "m:hd",
303
+ missileModelPathHD
304
+ )
305
+ end
306
+ },
307
+ true
308
+ )
309
+ __TS__SetDescriptor(
310
+ UnitTypeWeapon.prototype,
311
+ "missileModelPathDE",
312
+ {
313
+ get = function(self)
314
+ local ____self_23 = self.unitType
315
+ return ____self_23.getStringField(
316
+ ____self_23,
317
+ ("ua" .. tostring(self.index)) .. "m:de"
318
+ )
319
+ end,
320
+ set = function(self, missileModelPathDE)
321
+ local ____self_24 = self.unitType
322
+ ____self_24.setStringField(
323
+ ____self_24,
324
+ ("ua" .. tostring(self.index)) .. "m:de",
325
+ missileModelPathDE
326
+ )
327
+ end
328
+ },
329
+ true
330
+ )
331
+ __TS__SetDescriptor(
332
+ UnitTypeWeapon.prototype,
333
+ "missileSpeed",
334
+ {
335
+ get = function(self)
336
+ local ____self_25 = self.unitType
337
+ return ____self_25.getNumberField(
338
+ ____self_25,
339
+ ("ua" .. tostring(self.index)) .. "z"
340
+ )
341
+ end,
342
+ set = function(self, missileSpeed)
343
+ local ____self_26 = self.unitType
344
+ ____self_26.setNumberField(
345
+ ____self_26,
346
+ ("ua" .. tostring(self.index)) .. "z",
347
+ missileSpeed
348
+ )
349
+ end
350
+ },
351
+ true
352
+ )
229
353
  __TS__SetDescriptor(
230
354
  UnitTypeWeapon.prototype,
231
355
  "range",
232
356
  {
233
357
  get = function(self)
234
- local ____self_16 = self.unitType
235
- return ____self_16.getNumberField(
236
- ____self_16,
358
+ local ____self_27 = self.unitType
359
+ return ____self_27.getNumberField(
360
+ ____self_27,
237
361
  ("ua" .. tostring(self.index)) .. "r"
238
362
  )
239
363
  end,
240
364
  set = function(self, range)
241
- local ____self_17 = self.unitType
242
- ____self_17.setNumberField(
243
- ____self_17,
365
+ local ____self_28 = self.unitType
366
+ ____self_28.setNumberField(
367
+ ____self_28,
244
368
  ("ua" .. tostring(self.index)) .. "r",
245
369
  range
246
370
  )
@@ -253,16 +377,16 @@ __TS__SetDescriptor(
253
377
  "soundType",
254
378
  {
255
379
  get = function(self)
256
- local ____self_18 = self.unitType
257
- return ____self_18.getStringField(
258
- ____self_18,
380
+ local ____self_29 = self.unitType
381
+ return ____self_29.getStringField(
382
+ ____self_29,
259
383
  "ucs" .. tostring(self.index)
260
384
  )
261
385
  end,
262
386
  set = function(self, soundType)
263
- local ____self_19 = self.unitType
264
- ____self_19.setStringField(
265
- ____self_19,
387
+ local ____self_30 = self.unitType
388
+ ____self_30.setStringField(
389
+ ____self_30,
266
390
  "ucs" .. tostring(self.index),
267
391
  soundType
268
392
  )
@@ -275,16 +399,16 @@ __TS__SetDescriptor(
275
399
  "soundTypeSD",
276
400
  {
277
401
  get = function(self)
278
- local ____self_20 = self.unitType
279
- return ____self_20.getStringField(
280
- ____self_20,
402
+ local ____self_31 = self.unitType
403
+ return ____self_31.getStringField(
404
+ ____self_31,
281
405
  ("ucs" .. tostring(self.index)) .. ":sd"
282
406
  )
283
407
  end,
284
408
  set = function(self, soundTypeSD)
285
- local ____self_21 = self.unitType
286
- ____self_21.setStringField(
287
- ____self_21,
409
+ local ____self_32 = self.unitType
410
+ ____self_32.setStringField(
411
+ ____self_32,
288
412
  ("ucs" .. tostring(self.index)) .. ":sd",
289
413
  soundTypeSD
290
414
  )
@@ -297,22 +421,44 @@ __TS__SetDescriptor(
297
421
  "soundTypeHD",
298
422
  {
299
423
  get = function(self)
300
- local ____self_22 = self.unitType
301
- return ____self_22.getStringField(
302
- ____self_22,
424
+ local ____self_33 = self.unitType
425
+ return ____self_33.getStringField(
426
+ ____self_33,
303
427
  ("ucs" .. tostring(self.index)) .. ":hd"
304
428
  )
305
429
  end,
306
430
  set = function(self, soundTypeHD)
307
- local ____self_23 = self.unitType
308
- ____self_23.setStringField(
309
- ____self_23,
431
+ local ____self_34 = self.unitType
432
+ ____self_34.setStringField(
433
+ ____self_34,
310
434
  ("ucs" .. tostring(self.index)) .. ":hd",
311
435
  soundTypeHD
312
436
  )
313
437
  end
314
438
  },
315
439
  true
440
+ )
441
+ __TS__SetDescriptor(
442
+ UnitTypeWeapon.prototype,
443
+ "soundTypeDE",
444
+ {
445
+ get = function(self)
446
+ local ____self_35 = self.unitType
447
+ return ____self_35.getStringField(
448
+ ____self_35,
449
+ ("ucs" .. tostring(self.index)) .. ":de"
450
+ )
451
+ end,
452
+ set = function(self, soundTypeDE)
453
+ local ____self_36 = self.unitType
454
+ ____self_36.setStringField(
455
+ ____self_36,
456
+ ("ucs" .. tostring(self.index)) .. ":de",
457
+ soundTypeDE
458
+ )
459
+ end
460
+ },
461
+ true
316
462
  );
317
463
  (function(self)
318
464
  local unitTypeWeaponsByUnitTypeId = {}
@@ -338,6 +484,36 @@ end
338
484
  function UnitType.getObjectData(self, map)
339
485
  return map.objects.unit
340
486
  end
487
+ function UnitType.prototype.emptyPortraitForModel(self, portraitField)
488
+ if not self.isPortraitModelPathSet and WarscriptConfig.AUTOMATICALLY_SET_UNIT_TYPE_PORTRAIT_MODEL_PATH then
489
+ self:setStringField(portraitField, "")
490
+ if self.autoEmptiedPortraitFields == nil then
491
+ self.autoEmptiedPortraitFields = {}
492
+ end
493
+ self.autoEmptiedPortraitFields[portraitField] = true
494
+ end
495
+ end
496
+ function UnitType.prototype.setPortraitModelPathField(self, portraitField, portraitModelPath)
497
+ local autoEmptiedPortraitFields = self.autoEmptiedPortraitFields
498
+ if autoEmptiedPortraitFields ~= nil then
499
+ if portraitField == "upor" then
500
+ for field in pairs(autoEmptiedPortraitFields) do
501
+ if field ~= portraitField then
502
+ self.object:setField(field, nil)
503
+ end
504
+ end
505
+ self.autoEmptiedPortraitFields = nil
506
+ else
507
+ autoEmptiedPortraitFields[portraitField] = nil
508
+ end
509
+ end
510
+ self:setStringField(portraitField, portraitModelPath)
511
+ self.isPortraitModelPathSet = true
512
+ end
513
+ function UnitType.prototype.setDeathTypeFlag(self, flag, value)
514
+ local deathType = self:getNumberField("udea")
515
+ self:setNumberField("udea", value and deathType | flag or deathType & ~flag)
516
+ end
341
517
  UnitType.idGenerator = __TS__New(
342
518
  ObjectDataEntryIdGenerator,
343
519
  fourCC("x000")
@@ -462,6 +638,32 @@ __TS__SetDescriptor(
462
638
  },
463
639
  true
464
640
  )
641
+ __TS__SetDescriptor(
642
+ UnitType.prototype,
643
+ "isDecayable",
644
+ {
645
+ get = function(self)
646
+ return self:getNumberField("udea") & DEATH_TYPE_DECAYABLE ~= 0
647
+ end,
648
+ set = function(self, isDecayable)
649
+ self:setDeathTypeFlag(DEATH_TYPE_DECAYABLE, isDecayable)
650
+ end
651
+ },
652
+ true
653
+ )
654
+ __TS__SetDescriptor(
655
+ UnitType.prototype,
656
+ "isRaisable",
657
+ {
658
+ get = function(self)
659
+ return self:getNumberField("udea") & DEATH_TYPE_RAISABLE ~= 0
660
+ end,
661
+ set = function(self, isRaisable)
662
+ self:setDeathTypeFlag(DEATH_TYPE_RAISABLE, isRaisable)
663
+ end
664
+ },
665
+ true
666
+ )
465
667
  __TS__SetDescriptor(
466
668
  UnitType.prototype,
467
669
  "iconPath",
@@ -501,6 +703,19 @@ __TS__SetDescriptor(
501
703
  },
502
704
  true
503
705
  )
706
+ __TS__SetDescriptor(
707
+ UnitType.prototype,
708
+ "iconPathDE",
709
+ {
710
+ get = function(self)
711
+ return self:getStringField("uico:de")
712
+ end,
713
+ set = function(self, iconPathDE)
714
+ self:setStringField("uico:de", iconPathDE)
715
+ end
716
+ },
717
+ true
718
+ )
504
719
  __TS__SetDescriptor(
505
720
  UnitType.prototype,
506
721
  "isMissileScalingEnabled",
@@ -605,6 +820,19 @@ __TS__SetDescriptor(
605
820
  },
606
821
  true
607
822
  )
823
+ __TS__SetDescriptor(
824
+ UnitType.prototype,
825
+ "missileLaunchOffsetZDE",
826
+ {
827
+ get = function(self)
828
+ return self:getNumberField("ulpz:de")
829
+ end,
830
+ set = function(self, missileLaunchOffsetZDE)
831
+ self:setNumberField("ulpz:de", missileLaunchOffsetZDE)
832
+ end
833
+ },
834
+ true
835
+ )
608
836
  __TS__SetDescriptor(
609
837
  UnitType.prototype,
610
838
  "missileLaunchSwimmingOffsetZ",
@@ -644,6 +872,19 @@ __TS__SetDescriptor(
644
872
  },
645
873
  true
646
874
  )
875
+ __TS__SetDescriptor(
876
+ UnitType.prototype,
877
+ "missileLaunchSwimmingOffsetZDE",
878
+ {
879
+ get = function(self)
880
+ return self:getNumberField("ulsz:de")
881
+ end,
882
+ set = function(self, missileLaunchSwimmingOffsetZDE)
883
+ self:setNumberField("ulsz:de", missileLaunchSwimmingOffsetZDE)
884
+ end
885
+ },
886
+ true
887
+ )
647
888
  __TS__SetDescriptor(
648
889
  UnitType.prototype,
649
890
  "missileLaunchVisualOffsetX",
@@ -683,6 +924,19 @@ __TS__SetDescriptor(
683
924
  },
684
925
  true
685
926
  )
927
+ __TS__SetDescriptor(
928
+ UnitType.prototype,
929
+ "missileLaunchVisualOffsetXDE",
930
+ {
931
+ get = function(self)
932
+ return self:getNumberField("projectileVisOffsetX:de")
933
+ end,
934
+ set = function(self, missileLaunchVisualOffsetXDE)
935
+ self:setNumberField("projectileVisOffsetX:de", missileLaunchVisualOffsetXDE)
936
+ end
937
+ },
938
+ true
939
+ )
686
940
  __TS__SetDescriptor(
687
941
  UnitType.prototype,
688
942
  "missileLaunchVisualOffsetY",
@@ -722,6 +976,19 @@ __TS__SetDescriptor(
722
976
  },
723
977
  true
724
978
  )
979
+ __TS__SetDescriptor(
980
+ UnitType.prototype,
981
+ "missileLaunchVisualOffsetYDE",
982
+ {
983
+ get = function(self)
984
+ return self:getNumberField("projectileVisOffsetY:de")
985
+ end,
986
+ set = function(self, missileLaunchVisualOffsetYDE)
987
+ self:setNumberField("projectileVisOffsetY:de", missileLaunchVisualOffsetYDE)
988
+ end
989
+ },
990
+ true
991
+ )
725
992
  __TS__SetDescriptor(
726
993
  UnitType.prototype,
727
994
  "missileImpactOffsetZ",
@@ -761,6 +1028,19 @@ __TS__SetDescriptor(
761
1028
  },
762
1029
  true
763
1030
  )
1031
+ __TS__SetDescriptor(
1032
+ UnitType.prototype,
1033
+ "missileImpactOffsetZDE",
1034
+ {
1035
+ get = function(self)
1036
+ return self:getNumberField("uimz:de")
1037
+ end,
1038
+ set = function(self, missileImpactOffsetZDE)
1039
+ self:setNumberField("uimz:de", missileImpactOffsetZDE)
1040
+ end
1041
+ },
1042
+ true
1043
+ )
764
1044
  __TS__SetDescriptor(
765
1045
  UnitType.prototype,
766
1046
  "missileImpactSwimmingOffsetZ",
@@ -800,6 +1080,19 @@ __TS__SetDescriptor(
800
1080
  },
801
1081
  true
802
1082
  )
1083
+ __TS__SetDescriptor(
1084
+ UnitType.prototype,
1085
+ "missileImpactSwimmingOffsetZDE",
1086
+ {
1087
+ get = function(self)
1088
+ return self:getNumberField("uisz:de")
1089
+ end,
1090
+ set = function(self, missileImpactSwimmingOffsetZDE)
1091
+ self:setNumberField("uisz:de", missileImpactSwimmingOffsetZDE)
1092
+ end
1093
+ },
1094
+ true
1095
+ )
803
1096
  __TS__SetDescriptor(
804
1097
  UnitType.prototype,
805
1098
  "modelPath",
@@ -809,9 +1102,7 @@ __TS__SetDescriptor(
809
1102
  end,
810
1103
  set = function(self, modelPath)
811
1104
  self:setStringField("umdl", modelPath)
812
- if not self.isPortraitModelPathSet and WarscriptConfig.AUTOMATICALLY_SET_UNIT_TYPE_PORTRAIT_MODEL_PATH then
813
- self:setStringField("upor", "")
814
- end
1105
+ self:emptyPortraitForModel("upor")
815
1106
  end
816
1107
  },
817
1108
  true
@@ -825,9 +1116,7 @@ __TS__SetDescriptor(
825
1116
  end,
826
1117
  set = function(self, modelPathSD)
827
1118
  self:setStringField("umdl:sd", modelPathSD)
828
- if not self.isPortraitModelPathSet and WarscriptConfig.AUTOMATICALLY_SET_UNIT_TYPE_PORTRAIT_MODEL_PATH then
829
- self:setStringField("upor:sd", "")
830
- end
1119
+ self:emptyPortraitForModel("upor:sd")
831
1120
  end
832
1121
  },
833
1122
  true
@@ -841,9 +1130,21 @@ __TS__SetDescriptor(
841
1130
  end,
842
1131
  set = function(self, modelPathHD)
843
1132
  self:setStringField("umdl:hd", modelPathHD)
844
- if not self.isPortraitModelPathSet and WarscriptConfig.AUTOMATICALLY_SET_UNIT_TYPE_PORTRAIT_MODEL_PATH then
845
- self:setStringField("upor:hd", "")
846
- end
1133
+ self:emptyPortraitForModel("upor:hd")
1134
+ end
1135
+ },
1136
+ true
1137
+ )
1138
+ __TS__SetDescriptor(
1139
+ UnitType.prototype,
1140
+ "modelPathDE",
1141
+ {
1142
+ get = function(self)
1143
+ return self:getStringField("umdl:de")
1144
+ end,
1145
+ set = function(self, modelPathDE)
1146
+ self:setStringField("umdl:de", modelPathDE)
1147
+ self:emptyPortraitForModel("upor:de")
847
1148
  end
848
1149
  },
849
1150
  true
@@ -856,8 +1157,7 @@ __TS__SetDescriptor(
856
1157
  return self:getStringField("upor")
857
1158
  end,
858
1159
  set = function(self, portraitModelPath)
859
- self:setStringField("upor", portraitModelPath)
860
- self.isPortraitModelPathSet = true
1160
+ self:setPortraitModelPathField("upor", portraitModelPath)
861
1161
  end
862
1162
  },
863
1163
  true
@@ -870,8 +1170,7 @@ __TS__SetDescriptor(
870
1170
  return self:getStringField("upor:sd")
871
1171
  end,
872
1172
  set = function(self, portraitModelPathSD)
873
- self:setStringField("upor:sd", portraitModelPathSD)
874
- self.isPortraitModelPathSet = true
1173
+ self:setPortraitModelPathField("upor:sd", portraitModelPathSD)
875
1174
  end
876
1175
  },
877
1176
  true
@@ -884,8 +1183,20 @@ __TS__SetDescriptor(
884
1183
  return self:getStringField("upor:hd")
885
1184
  end,
886
1185
  set = function(self, portraitModelPathHD)
887
- self:setStringField("upor:hd", portraitModelPathHD)
888
- self.isPortraitModelPathSet = true
1186
+ self:setPortraitModelPathField("upor:hd", portraitModelPathHD)
1187
+ end
1188
+ },
1189
+ true
1190
+ )
1191
+ __TS__SetDescriptor(
1192
+ UnitType.prototype,
1193
+ "portraitModelPathDE",
1194
+ {
1195
+ get = function(self)
1196
+ return self:getStringField("upor:de")
1197
+ end,
1198
+ set = function(self, portraitModelPathDE)
1199
+ self:setPortraitModelPathField("upor:de", portraitModelPathDE)
889
1200
  end
890
1201
  },
891
1202
  true
@@ -929,6 +1240,32 @@ __TS__SetDescriptor(
929
1240
  },
930
1241
  true
931
1242
  )
1243
+ __TS__SetDescriptor(
1244
+ UnitType.prototype,
1245
+ "runSpeedDE",
1246
+ {
1247
+ get = function(self)
1248
+ return self:getNumberField("urun:de")
1249
+ end,
1250
+ set = function(self, runSpeedDE)
1251
+ self:setNumberField("urun:de", runSpeedDE)
1252
+ end
1253
+ },
1254
+ true
1255
+ )
1256
+ __TS__SetDescriptor(
1257
+ UnitType.prototype,
1258
+ "selectionCircleHeight",
1259
+ {
1260
+ get = function(self)
1261
+ return self:getNumberField("uslz")
1262
+ end,
1263
+ set = function(self, height)
1264
+ self:setNumberField("uslz", height)
1265
+ end
1266
+ },
1267
+ true
1268
+ )
932
1269
  __TS__SetDescriptor(
933
1270
  UnitType.prototype,
934
1271
  "selectionCircleScale",
@@ -968,6 +1305,19 @@ __TS__SetDescriptor(
968
1305
  },
969
1306
  true
970
1307
  )
1308
+ __TS__SetDescriptor(
1309
+ UnitType.prototype,
1310
+ "selectionCircleScaleDE",
1311
+ {
1312
+ get = function(self)
1313
+ return self:getNumberField("ussc:de")
1314
+ end,
1315
+ set = function(self, selectionCircleScaleDE)
1316
+ self:setNumberField("ussc:de", selectionCircleScaleDE)
1317
+ end
1318
+ },
1319
+ true
1320
+ )
971
1321
  __TS__SetDescriptor(
972
1322
  UnitType.prototype,
973
1323
  "scale",
@@ -1007,6 +1357,19 @@ __TS__SetDescriptor(
1007
1357
  },
1008
1358
  true
1009
1359
  )
1360
+ __TS__SetDescriptor(
1361
+ UnitType.prototype,
1362
+ "scaleDE",
1363
+ {
1364
+ get = function(self)
1365
+ return self:getNumberField("usca:de")
1366
+ end,
1367
+ set = function(self, scaleDE)
1368
+ self:setNumberField("usca:de", scaleDE)
1369
+ end
1370
+ },
1371
+ true
1372
+ )
1010
1373
  __TS__SetDescriptor(
1011
1374
  UnitType.prototype,
1012
1375
  "scoreScreenIconPath",
@@ -1046,6 +1409,19 @@ __TS__SetDescriptor(
1046
1409
  },
1047
1410
  true
1048
1411
  )
1412
+ __TS__SetDescriptor(
1413
+ UnitType.prototype,
1414
+ "scoreScreenIconPathDE",
1415
+ {
1416
+ get = function(self)
1417
+ return self:getStringField("ussi:de")
1418
+ end,
1419
+ set = function(self, scoreScreenIconPathDE)
1420
+ self:setStringField("ussi:de", scoreScreenIconPathDE)
1421
+ end
1422
+ },
1423
+ true
1424
+ )
1049
1425
  __TS__SetDescriptor(
1050
1426
  UnitType.prototype,
1051
1427
  "specialEffectModelPath",
@@ -1085,6 +1461,19 @@ __TS__SetDescriptor(
1085
1461
  },
1086
1462
  true
1087
1463
  )
1464
+ __TS__SetDescriptor(
1465
+ UnitType.prototype,
1466
+ "specialEffectModelPathDE",
1467
+ {
1468
+ get = function(self)
1469
+ return self:getStringField("uspa:de")
1470
+ end,
1471
+ set = function(self, specialEffectModelPathDE)
1472
+ self:setStringField("uspa:de", specialEffectModelPathDE)
1473
+ end
1474
+ },
1475
+ true
1476
+ )
1088
1477
  __TS__SetDescriptor(
1089
1478
  UnitType.prototype,
1090
1479
  "shadowImageHeight",
@@ -1176,6 +1565,32 @@ __TS__SetDescriptor(
1176
1565
  },
1177
1566
  true
1178
1567
  )
1568
+ __TS__SetDescriptor(
1569
+ UnitType.prototype,
1570
+ "walkSpeedDE",
1571
+ {
1572
+ get = function(self)
1573
+ return self:getNumberField("uwal:de")
1574
+ end,
1575
+ set = function(self, walkSpeedDE)
1576
+ self:setNumberField("uwal:de", walkSpeedDE)
1577
+ end
1578
+ },
1579
+ true
1580
+ )
1581
+ __TS__SetDescriptor(
1582
+ UnitType.prototype,
1583
+ "armor",
1584
+ {
1585
+ get = function(self)
1586
+ return self:getNumberField("udef")
1587
+ end,
1588
+ set = function(self, armor)
1589
+ self:setNumberField("udef", armor)
1590
+ end
1591
+ },
1592
+ true
1593
+ )
1179
1594
  __TS__SetDescriptor(
1180
1595
  UnitType.prototype,
1181
1596
  "armorSoundType",
@@ -1215,6 +1630,35 @@ __TS__SetDescriptor(
1215
1630
  },
1216
1631
  true
1217
1632
  )
1633
+ __TS__SetDescriptor(
1634
+ UnitType.prototype,
1635
+ "armorSoundTypeDE",
1636
+ {
1637
+ get = function(self)
1638
+ return self:getStringField("uarm:de")
1639
+ end,
1640
+ set = function(self, armorSoundTypeDE)
1641
+ self:setStringField("uarm:de", armorSoundTypeDE)
1642
+ end
1643
+ },
1644
+ true
1645
+ )
1646
+ __TS__SetDescriptor(
1647
+ UnitType.prototype,
1648
+ "armorType",
1649
+ {
1650
+ get = function(self)
1651
+ return stringToArmorType(self:getStringField("udty"))
1652
+ end,
1653
+ set = function(self, armorType)
1654
+ self:setStringField(
1655
+ "udty",
1656
+ armorTypeToString(armorType)
1657
+ )
1658
+ end
1659
+ },
1660
+ true
1661
+ )
1218
1662
  __TS__SetDescriptor(
1219
1663
  UnitType.prototype,
1220
1664
  "combatClassifications",
@@ -1233,7 +1677,7 @@ __TS__SetDescriptor(
1233
1677
  )
1234
1678
  __TS__SetDescriptor(
1235
1679
  UnitType.prototype,
1236
- "unitClassifications",
1680
+ "classifications",
1237
1681
  {
1238
1682
  get = function(self)
1239
1683
  return stringArrayToUnitClassifications(self:getStringsField("utyp"))
@@ -1341,10 +1785,13 @@ __TS__SetDescriptor(
1341
1785
  "movementType",
1342
1786
  {
1343
1787
  get = function(self)
1344
- return self:getStringField("umvt")
1788
+ return stringToMovementType(self:getStringField("umvt"))
1345
1789
  end,
1346
1790
  set = function(self, movementType)
1347
- self:setStringField("umvt", movementType)
1791
+ self:setStringField(
1792
+ "umvt",
1793
+ movementTypeToString(movementType)
1794
+ )
1348
1795
  end
1349
1796
  },
1350
1797
  true
@@ -1466,6 +1913,19 @@ __TS__SetDescriptor(
1466
1913
  },
1467
1914
  true
1468
1915
  )
1916
+ __TS__SetDescriptor(
1917
+ UnitType.prototype,
1918
+ "level",
1919
+ {
1920
+ get = function(self)
1921
+ return self:getNumberField("ulev")
1922
+ end,
1923
+ set = function(self, level)
1924
+ self:setNumberField("ulev", level)
1925
+ end
1926
+ },
1927
+ true
1928
+ )
1469
1929
  __TS__SetDescriptor(
1470
1930
  UnitType.prototype,
1471
1931
  "manaRegenerationRate",
@@ -1612,11 +2072,11 @@ __TS__SetDescriptor(
1612
2072
  implementReadonlyNumberIndexSupplier(
1613
2073
  ____exports.UnitType,
1614
2074
  function(id)
1615
- local ____class_24 = __TS__Class()
1616
- ____class_24.name = ____class_24.name
1617
- __TS__ClassExtends(____class_24, ____exports.UnitType)
1618
- ____class_24.BASE_ID = id
1619
- return ____class_24
2075
+ local ____class_37 = __TS__Class()
2076
+ ____class_37.name = ____class_37.name
2077
+ __TS__ClassExtends(____class_37, ____exports.UnitType)
2078
+ ____class_37.BASE_ID = id
2079
+ return ____class_37
1620
2080
  end
1621
2081
  )
1622
2082
  ____exports.HeroUnitType = __TS__Class()
@@ -1677,11 +2137,11 @@ __TS__SetDescriptor(
1677
2137
  implementReadonlyNumberIndexSupplier(
1678
2138
  ____exports.HeroUnitType,
1679
2139
  function(id)
1680
- local ____class_25 = __TS__Class()
1681
- ____class_25.name = ____class_25.name
1682
- __TS__ClassExtends(____class_25, ____exports.HeroUnitType)
1683
- ____class_25.BASE_ID = id
1684
- return ____class_25
2140
+ local ____class_38 = __TS__Class()
2141
+ ____class_38.name = ____class_38.name
2142
+ __TS__ClassExtends(____class_38, ____exports.HeroUnitType)
2143
+ ____class_38.BASE_ID = id
2144
+ return ____class_38
1685
2145
  end
1686
2146
  )
1687
2147
  return ____exports