warscript 0.0.1-dev.c37d12c → 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 (498) hide show
  1. package/attributes.d.ts +18 -0
  2. package/attributes.lua +32 -0
  3. package/binaryreader.d.ts +1 -0
  4. package/binaryreader.lua +3 -0
  5. package/config.d.ts +5 -0
  6. package/config.lua +10 -0
  7. package/core/dummy.lua +4 -2
  8. package/core/types/effect.d.ts +24 -6
  9. package/core/types/effect.lua +169 -107
  10. package/core/types/frame.d.ts +24 -3
  11. package/core/types/frame.lua +198 -42
  12. package/core/types/group.d.ts +0 -1
  13. package/core/types/handle.d.ts +2 -1
  14. package/core/types/handle.lua +14 -9
  15. package/core/types/image.d.ts +0 -1
  16. package/core/types/item.d.ts +1 -0
  17. package/core/types/item.lua +1 -0
  18. package/core/types/missile.d.ts +2 -2
  19. package/core/types/missile.lua +8 -2
  20. package/core/types/player.d.ts +18 -1
  21. package/core/types/player.lua +76 -26
  22. package/core/types/playerCamera.d.ts +2 -0
  23. package/core/types/playerCamera.lua +123 -5
  24. package/core/types/playerColor.lua +4 -3
  25. package/core/types/sound.d.ts +18 -25
  26. package/core/types/sound.lua +113 -33
  27. package/core/types/tileCell.d.ts +18 -3
  28. package/core/types/tileCell.lua +108 -0
  29. package/core/types/timer.d.ts +9 -8
  30. package/core/types/timer.lua +45 -23
  31. package/core/types/unit.d.ts +5 -0
  32. package/core/types/unit.lua +13 -0
  33. package/core/util.d.ts +3 -1
  34. package/core/util.lua +127 -4
  35. package/decl/index.d.ts +1 -0
  36. package/decl/native.d.ts +1718 -964
  37. package/destroyable.d.ts +1 -0
  38. package/destroyable.lua +9 -0
  39. package/engine/ability-type-extended-tooltip.d.ts +8 -0
  40. package/engine/ability-type-extended-tooltip.lua +44 -0
  41. package/engine/ability.d.ts +1 -1
  42. package/engine/behavior.d.ts +24 -11
  43. package/engine/behavior.lua +233 -73
  44. package/engine/behaviour/ability/always-enabled.d.ts +7 -0
  45. package/engine/behaviour/ability/always-enabled.lua +31 -0
  46. package/engine/behaviour/ability/apply-buff.d.ts +8 -5
  47. package/engine/behaviour/ability/apply-buff.lua +36 -4
  48. package/engine/behaviour/ability/apply-unit-behavior.d.ts +13 -4
  49. package/engine/behaviour/ability/apply-unit-behavior.lua +37 -9
  50. package/engine/behaviour/ability/damage.d.ts +43 -11
  51. package/engine/behaviour/ability/damage.lua +89 -39
  52. package/engine/behaviour/ability/emulate-impact.d.ts +6 -0
  53. package/engine/behaviour/ability/emulate-impact.lua +44 -0
  54. package/engine/behaviour/ability/heal.d.ts +33 -6
  55. package/engine/behaviour/ability/heal.lua +89 -10
  56. package/engine/behaviour/ability/instant-impact.d.ts +2 -2
  57. package/engine/behaviour/ability/instant-impact.lua +4 -15
  58. package/engine/behaviour/ability/on-command-impact.d.ts +9 -0
  59. package/engine/behaviour/ability/on-command-impact.lua +26 -0
  60. package/engine/behaviour/ability/remove-buffs.d.ts +25 -0
  61. package/engine/behaviour/ability/remove-buffs.lua +49 -0
  62. package/engine/behaviour/ability/restore-mana.d.ts +15 -0
  63. package/engine/behaviour/ability/restore-mana.lua +29 -0
  64. package/engine/behaviour/ability.d.ts +37 -7
  65. package/engine/behaviour/ability.lua +208 -27
  66. package/engine/behaviour/unit/stun-immunity.d.ts +12 -7
  67. package/engine/behaviour/unit/stun-immunity.lua +57 -31
  68. package/engine/behaviour/unit.d.ts +49 -4
  69. package/engine/behaviour/unit.lua +293 -2
  70. package/engine/buff.d.ts +177 -59
  71. package/engine/buff.lua +795 -281
  72. package/engine/game-map.d.ts +7 -0
  73. package/engine/game-map.lua +32 -0
  74. package/engine/index.d.ts +2 -1
  75. package/engine/internal/ability.d.ts +31 -15
  76. package/engine/internal/ability.lua +177 -104
  77. package/engine/internal/item/ability.lua +162 -4
  78. package/engine/internal/item/fields.d.ts +12 -0
  79. package/engine/internal/item/fields.lua +33 -0
  80. package/engine/internal/item/owner-cache.d.ts +5 -0
  81. package/engine/internal/item/owner-cache.lua +4 -0
  82. package/engine/internal/item+owner.d.ts +2 -0
  83. package/engine/internal/item+owner.lua +37 -8
  84. package/engine/internal/item.d.ts +34 -18
  85. package/engine/internal/item.lua +308 -102
  86. package/engine/internal/mechanics/ability-duration.d.ts +1 -3
  87. package/engine/internal/mechanics/ability-duration.lua +3 -1
  88. package/engine/internal/mechanics/cast-ability.lua +89 -0
  89. package/engine/internal/misc/ability-disable-counter.d.ts +2 -0
  90. package/engine/internal/misc/ability-disable-counter.lua +13 -0
  91. package/engine/internal/misc/damage-metadata-by-target.d.ts +2 -0
  92. package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
  93. package/engine/internal/misc/frame-coordinates.d.ts +2 -0
  94. package/engine/internal/misc/frame-coordinates.lua +21 -0
  95. package/engine/internal/misc/get-terrain-z.d.ts +2 -0
  96. package/engine/internal/misc/get-terrain-z.lua +11 -0
  97. package/engine/internal/misc/player-local-handle.d.ts +2 -0
  98. package/engine/internal/misc/player-local-handle.lua +5 -0
  99. package/engine/internal/misc/unit-ability-level-natives.d.ts +2 -0
  100. package/engine/internal/misc/unit-ability-level-natives.lua +12 -0
  101. package/engine/internal/object-data/armor-bonus.d.ts +2 -0
  102. package/engine/internal/object-data/attribute-bonus.lua +2 -2
  103. package/engine/internal/object-data/auto-attack-speed-increase.d.ts +1 -1
  104. package/engine/internal/object-data/auto-attack-speed-increase.lua +2 -0
  105. package/engine/internal/object-data/evasion-probability.d.ts +2 -0
  106. package/engine/internal/object-data/evasion-probability.lua +16 -0
  107. package/engine/internal/object-data/health-bonus.d.ts +2 -0
  108. package/engine/internal/object-data/health-bonus.lua +16 -0
  109. package/engine/internal/object-data/health-regeneration-rate-increase.d.ts +2 -0
  110. package/engine/internal/object-data/health-regeneration-rate-increase.lua +48 -0
  111. package/engine/internal/object-data/mana-bonus.d.ts +2 -0
  112. package/engine/internal/object-data/mana-bonus.lua +16 -0
  113. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.d.ts +2 -0
  114. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
  115. package/engine/internal/object-data/returned-melee-damage-factor.d.ts +2 -0
  116. package/engine/internal/object-data/returned-melee-damage-factor.lua +21 -0
  117. package/engine/internal/unit/ability.d.ts +45 -1
  118. package/engine/internal/unit/ability.lua +128 -17
  119. package/engine/internal/unit/add-item-to-slot-init.d.ts +2 -0
  120. package/engine/internal/unit/add-item-to-slot-init.lua +12 -0
  121. package/engine/internal/unit/add-item-to-slot.d.ts +2 -0
  122. package/engine/internal/unit/add-item-to-slot.lua +93 -0
  123. package/engine/internal/unit/allowed-targets.d.ts +1 -1
  124. package/engine/internal/unit/allowed-targets.lua +9 -1
  125. package/engine/internal/unit/appearance.d.ts +15 -0
  126. package/engine/internal/unit/appearance.lua +85 -0
  127. package/engine/internal/unit/attributes.d.ts +17 -0
  128. package/engine/internal/unit/attributes.lua +46 -0
  129. package/engine/internal/unit/bonus.d.ts +28 -8
  130. package/engine/internal/unit/bonus.lua +136 -9
  131. package/engine/internal/unit/buff.d.ts +2 -2
  132. package/engine/internal/unit/buff.lua +34 -19
  133. package/engine/internal/unit/detach-missiles.d.ts +7 -0
  134. package/engine/internal/unit/detach-missiles.lua +30 -0
  135. package/engine/internal/unit/equipment-inventory.d.ts +44 -0
  136. package/engine/internal/unit/equipment-inventory.lua +233 -0
  137. package/engine/internal/unit/expiration-timer.lua +1 -1
  138. package/engine/internal/unit/extended-inventory.d.ts +25 -0
  139. package/engine/internal/unit/extended-inventory.lua +99 -0
  140. package/engine/internal/unit/fly-height.d.ts +7 -0
  141. package/engine/internal/unit/fly-height.lua +20 -0
  142. package/engine/internal/unit/ignore-events-items.d.ts +2 -0
  143. package/engine/internal/unit/ignore-events-items.lua +14 -0
  144. package/engine/internal/unit/interrupts.d.ts +12 -0
  145. package/engine/internal/unit/interrupts.lua +28 -0
  146. package/engine/internal/unit/inventory.d.ts +28 -0
  147. package/engine/internal/unit/inventory.lua +87 -0
  148. package/engine/internal/unit/item-container.d.ts +25 -0
  149. package/engine/internal/unit/item-container.lua +11 -0
  150. package/engine/internal/unit/item-order-events.d.ts +17 -0
  151. package/engine/internal/unit/item-order-events.lua +67 -0
  152. package/engine/internal/unit/item-slot.d.ts +27 -0
  153. package/engine/internal/unit/item-slot.lua +92 -0
  154. package/engine/internal/unit/main-selected.d.ts +13 -0
  155. package/engine/internal/unit/main-selected.lua +36 -0
  156. package/engine/internal/unit/order.d.ts +20 -0
  157. package/engine/internal/unit/order.lua +136 -0
  158. package/engine/internal/unit/range-event.d.ts +12 -0
  159. package/engine/internal/unit/range-event.lua +90 -0
  160. package/engine/internal/unit/scale.d.ts +7 -0
  161. package/engine/internal/unit/scale.lua +20 -0
  162. package/engine/internal/unit+ability.d.ts +2 -1
  163. package/engine/internal/unit+ability.lua +75 -5
  164. package/engine/internal/unit+bonus.lua +3 -3
  165. package/engine/internal/unit+damage.d.ts +11 -11
  166. package/engine/internal/unit+damage.lua +43 -14
  167. package/engine/internal/unit+rally.lua +9 -31
  168. package/engine/internal/unit+spellSteal.lua +1 -2
  169. package/engine/internal/unit+transport.lua +4 -10
  170. package/engine/internal/unit-missile-data.lua +58 -32
  171. package/engine/internal/unit-missile-launch.lua +70 -13
  172. package/engine/internal/unit.d.ts +91 -38
  173. package/engine/internal/unit.lua +669 -351
  174. package/engine/internal/utility.lua +12 -0
  175. package/engine/lightning.d.ts +12 -5
  176. package/engine/lightning.lua +48 -14
  177. package/engine/local-client.d.ts +35 -2
  178. package/engine/local-client.lua +367 -15
  179. package/engine/object-data/auxiliary/animation-name.d.ts +1 -0
  180. package/engine/object-data/auxiliary/animation-name.lua +16 -0
  181. package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
  182. package/engine/object-data/auxiliary/armor-type.lua +46 -0
  183. package/engine/object-data/auxiliary/attachment-preset.d.ts +14 -3
  184. package/engine/object-data/auxiliary/attachment-preset.lua +11 -3
  185. package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
  186. package/engine/object-data/auxiliary/attack-type.lua +42 -0
  187. package/engine/object-data/auxiliary/combat-classification.d.ts +0 -2
  188. package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
  189. package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
  190. package/engine/object-data/auxiliary/equipment-type.d.ts +12 -0
  191. package/engine/object-data/auxiliary/equipment-type.lua +26 -0
  192. package/engine/object-data/auxiliary/health-regeneration-type.d.ts +8 -0
  193. package/engine/object-data/auxiliary/health-regeneration-type.lua +2 -0
  194. package/engine/object-data/auxiliary/item-class.d.ts +11 -0
  195. package/engine/object-data/auxiliary/item-class.lua +2 -0
  196. package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
  197. package/engine/object-data/auxiliary/item-tag.lua +2 -0
  198. package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
  199. package/engine/object-data/auxiliary/movement-type.lua +22 -0
  200. package/engine/object-data/auxiliary/order-type.d.ts +939 -0
  201. package/engine/object-data/auxiliary/order-type.lua +2 -0
  202. package/engine/object-data/auxiliary/sound-eax.d.ts +10 -0
  203. package/engine/object-data/auxiliary/sound-eax.lua +2 -0
  204. package/engine/object-data/auxiliary/sound-preset-name.d.ts +5 -1
  205. package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
  206. package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +1 -1
  207. package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
  208. package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
  209. package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
  210. package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
  211. package/engine/object-data/entry/ability-type/armor-bonus.d.ts +8 -0
  212. package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
  213. package/engine/object-data/entry/ability-type/aura-of-blight.d.ts +13 -0
  214. package/engine/object-data/entry/ability-type/aura-of-blight.lua +39 -0
  215. package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
  216. package/engine/object-data/entry/ability-type/banshee.lua +13 -0
  217. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
  218. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
  219. package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
  220. package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
  221. package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
  222. package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
  223. package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
  224. package/engine/object-data/entry/ability-type/berserk.lua +13 -0
  225. package/engine/object-data/entry/ability-type/blank-configurable.d.ts +0 -1
  226. package/engine/object-data/entry/ability-type/blank-configurable.lua +12 -1
  227. package/engine/object-data/entry/ability-type/blank-passive-with-cooldown.d.ts +23 -0
  228. package/engine/object-data/entry/ability-type/blank-passive-with-cooldown.lua +112 -0
  229. package/engine/object-data/entry/ability-type/blank-passive.d.ts +4 -1
  230. package/engine/object-data/entry/ability-type/blank-passive.lua +27 -7
  231. package/engine/object-data/entry/ability-type/blink.d.ts +10 -0
  232. package/engine/object-data/entry/ability-type/blink.lua +39 -0
  233. package/engine/object-data/entry/ability-type/breath-of-fire.d.ts +11 -0
  234. package/engine/object-data/entry/ability-type/breath-of-fire.lua +27 -0
  235. package/engine/object-data/entry/ability-type/carrion-swarm.d.ts +14 -0
  236. package/engine/object-data/entry/ability-type/carrion-swarm.lua +65 -0
  237. package/engine/object-data/entry/ability-type/channel.d.ts +0 -1
  238. package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
  239. package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
  240. package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
  241. package/engine/object-data/entry/ability-type/consecration.lua +52 -0
  242. package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
  243. package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
  244. package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
  245. package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
  246. package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
  247. package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
  248. package/engine/object-data/entry/ability-type/disease-cloud.lua +2 -2
  249. package/engine/object-data/entry/ability-type/engineering-upgrade.lua +2 -2
  250. package/engine/object-data/entry/ability-type/ensnare.d.ts +12 -0
  251. package/engine/object-data/entry/ability-type/ensnare.lua +52 -0
  252. package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
  253. package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
  254. package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
  255. package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
  256. package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
  257. package/engine/object-data/entry/ability-type/equipment.lua +27 -0
  258. package/engine/object-data/entry/ability-type/exhume-corpses.d.ts +14 -0
  259. package/engine/object-data/entry/ability-type/exhume-corpses.lua +40 -0
  260. package/engine/object-data/entry/ability-type/feral-spirit.lua +2 -2
  261. package/engine/object-data/entry/ability-type/firebolt.d.ts +7 -0
  262. package/engine/object-data/entry/ability-type/firebolt.lua +13 -0
  263. package/engine/object-data/entry/ability-type/flame-strike.d.ts +25 -0
  264. package/engine/object-data/entry/ability-type/flame-strike.lua +92 -0
  265. package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
  266. package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
  267. package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
  268. package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
  269. package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
  270. package/engine/object-data/entry/ability-type/grit.lua +65 -0
  271. package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
  272. package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
  273. package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
  274. package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
  275. package/engine/object-data/entry/ability-type/{armor-increase.d.ts → healing-modifier.d.ts} +4 -3
  276. package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
  277. package/engine/object-data/entry/ability-type/healing-ward-aura.d.ts +13 -0
  278. package/engine/object-data/entry/ability-type/healing-ward-aura.lua +39 -0
  279. package/engine/object-data/entry/ability-type/health-bonus.d.ts +8 -0
  280. package/engine/object-data/entry/ability-type/health-bonus.lua +26 -0
  281. package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
  282. package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
  283. package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
  284. package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
  285. package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
  286. package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
  287. package/engine/object-data/entry/ability-type/item-life-regeneration.d.ts +10 -0
  288. package/engine/object-data/entry/ability-type/item-life-regeneration.lua +26 -0
  289. package/engine/object-data/entry/ability-type/life-drain.d.ts +37 -0
  290. package/engine/object-data/entry/ability-type/life-drain.lua +144 -0
  291. package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
  292. package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
  293. package/engine/object-data/entry/ability-type/mana-bonus.d.ts +8 -0
  294. package/engine/object-data/entry/ability-type/mana-bonus.lua +26 -0
  295. package/engine/object-data/entry/ability-type/mana-efficiency.d.ts +12 -0
  296. package/engine/object-data/entry/ability-type/mana-efficiency.lua +39 -0
  297. package/engine/object-data/entry/ability-type/mana-regeneration.d.ts +8 -0
  298. package/engine/object-data/entry/ability-type/mana-regeneration.lua +26 -0
  299. package/engine/object-data/entry/ability-type/mind-control.d.ts +21 -0
  300. package/engine/object-data/entry/ability-type/mind-control.lua +78 -0
  301. package/engine/object-data/entry/ability-type/mine.d.ts +10 -0
  302. package/engine/object-data/entry/ability-type/mine.lua +39 -0
  303. package/engine/object-data/entry/ability-type/on-attack-cast-spell.d.ts +21 -0
  304. package/engine/object-data/entry/ability-type/on-attack-cast-spell.lua +52 -0
  305. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.d.ts +19 -0
  306. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.lua +65 -0
  307. package/engine/object-data/entry/ability-type/on-hit-cast-spell.d.ts +15 -0
  308. package/engine/object-data/entry/ability-type/on-hit-cast-spell.lua +26 -0
  309. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.d.ts +6 -0
  310. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.lua +12 -0
  311. package/engine/object-data/entry/ability-type/permanent-invisibility.d.ts +8 -0
  312. package/engine/object-data/entry/ability-type/permanent-invisibility.lua +26 -0
  313. package/engine/object-data/entry/ability-type/phase-shift.d.ts +10 -0
  314. package/engine/object-data/entry/ability-type/phase-shift.lua +39 -0
  315. package/engine/object-data/entry/ability-type/phoenix-morph.lua +4 -4
  316. package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
  317. package/engine/object-data/entry/ability-type/provoke.lua +66 -0
  318. package/engine/object-data/entry/ability-type/rain-of-fire.d.ts +7 -0
  319. package/engine/object-data/entry/ability-type/rain-of-fire.lua +13 -0
  320. package/engine/object-data/entry/ability-type/raise-dead.d.ts +17 -0
  321. package/engine/object-data/entry/ability-type/raise-dead.lua +78 -0
  322. package/engine/object-data/entry/ability-type/raise-the-banner.d.ts +9 -0
  323. package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
  324. package/engine/object-data/entry/ability-type/reincarnation.d.ts +8 -0
  325. package/engine/object-data/entry/ability-type/reincarnation.lua +26 -0
  326. package/engine/object-data/entry/ability-type/resolve.d.ts +12 -0
  327. package/engine/object-data/entry/ability-type/resolve.lua +39 -0
  328. package/engine/object-data/entry/ability-type/righteous-fury.d.ts +33 -0
  329. package/engine/object-data/entry/ability-type/righteous-fury.lua +130 -0
  330. package/engine/object-data/entry/ability-type/sacred-aura.d.ts +27 -0
  331. package/engine/object-data/entry/ability-type/sacred-aura.lua +104 -0
  332. package/engine/object-data/entry/ability-type/shock-wave.d.ts +4 -0
  333. package/engine/object-data/entry/ability-type/shock-wave.lua +26 -0
  334. package/engine/object-data/entry/ability-type/slow-poison.d.ts +10 -0
  335. package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
  336. package/engine/object-data/entry/ability-type/soul-burn.d.ts +22 -0
  337. package/engine/object-data/entry/ability-type/soul-burn.lua +79 -0
  338. package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
  339. package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
  340. package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
  341. package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
  342. package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
  343. package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
  344. package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
  345. package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
  346. package/engine/object-data/entry/ability-type/spirit-touch.d.ts +2 -2
  347. package/engine/object-data/entry/ability-type/spirit-touch.lua +6 -6
  348. package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
  349. package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
  350. package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
  351. package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
  352. package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
  353. package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
  354. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
  355. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
  356. package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
  357. package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
  358. package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
  359. package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
  360. package/engine/object-data/entry/ability-type/summon-quilbeast.lua +2 -2
  361. package/engine/object-data/entry/ability-type/summon-water-elemental.lua +2 -2
  362. package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
  363. package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
  364. package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
  365. package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
  366. package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
  367. package/engine/object-data/entry/ability-type/talents.lua +27 -0
  368. package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
  369. package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
  370. package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
  371. package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
  372. package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
  373. package/engine/object-data/entry/ability-type/warcry.lua +26 -0
  374. package/engine/object-data/entry/ability-type/web.d.ts +12 -0
  375. package/engine/object-data/entry/ability-type/web.lua +52 -0
  376. package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
  377. package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
  378. package/engine/object-data/entry/ability-type.d.ts +48 -21
  379. package/engine/object-data/entry/ability-type.lua +377 -44
  380. package/engine/object-data/entry/buff-type/applicable.d.ts +0 -1
  381. package/engine/object-data/entry/buff-type/applicable.lua +143 -202
  382. package/engine/object-data/entry/buff-type/blank.d.ts +0 -1
  383. package/engine/object-data/entry/buff-type.d.ts +10 -13
  384. package/engine/object-data/entry/buff-type.lua +39 -29
  385. package/engine/object-data/entry/destructible-type.d.ts +32 -3
  386. package/engine/object-data/entry/destructible-type.lua +181 -0
  387. package/engine/object-data/entry/item-type/blank.d.ts +0 -1
  388. package/engine/object-data/entry/item-type.d.ts +32 -4
  389. package/engine/object-data/entry/item-type.lua +177 -2
  390. package/engine/object-data/entry/lightning-type.d.ts +6 -9
  391. package/engine/object-data/entry/lightning-type.lua +1 -1
  392. package/engine/object-data/entry/sound-preset.d.ts +33 -0
  393. package/engine/object-data/entry/sound-preset.lua +140 -0
  394. package/engine/object-data/entry/unit-type.d.ts +121 -6
  395. package/engine/object-data/entry/unit-type.lua +959 -118
  396. package/engine/object-data/entry/upgrade/blank.d.ts +0 -1
  397. package/engine/object-data/entry/upgrade.d.ts +2 -3
  398. package/engine/object-data/entry/upgrade.lua +4 -4
  399. package/engine/object-data/entry.d.ts +23 -17
  400. package/engine/object-data/entry.lua +68 -32
  401. package/engine/object-data/utility/object-data-entry-id-generator.lua +7 -0
  402. package/engine/object-field/ability.d.ts +33 -8
  403. package/engine/object-field/ability.lua +63 -3
  404. package/engine/object-field/item.d.ts +22 -0
  405. package/engine/object-field/item.lua +118 -0
  406. package/engine/object-field/unit.d.ts +72 -2
  407. package/engine/object-field/unit.lua +268 -4
  408. package/engine/object-field.d.ts +30 -11
  409. package/engine/object-field.lua +386 -122
  410. package/engine/random.d.ts +11 -0
  411. package/engine/random.lua +30 -0
  412. package/engine/standard/entries/ability-type.d.ts +3102 -7
  413. package/engine/standard/entries/ability-type.lua +0 -6
  414. package/engine/standard/entries/buff-type.d.ts +48 -0
  415. package/engine/standard/entries/buff-type.lua +46 -0
  416. package/engine/standard/entries/item-type.d.ts +1299 -0
  417. package/engine/standard/entries/item-type.lua +2 -0
  418. package/engine/standard/entries/lightning-type.d.ts +42 -15
  419. package/engine/standard/entries/lightning-type.lua +0 -14
  420. package/engine/standard/entries/sound-preset.d.ts +10 -0
  421. package/engine/standard/entries/sound-preset.lua +10 -0
  422. package/engine/standard/entries/unit-type.d.ts +47 -1
  423. package/engine/standard/entries/unit-type.lua +47 -1
  424. package/engine/standard/fields/ability.d.ts +5 -3
  425. package/engine/standard/fields/ability.lua +5 -3
  426. package/engine/standard/fields/item.d.ts +4 -0
  427. package/engine/standard/fields/item.lua +6 -0
  428. package/engine/standard/fields/unit.d.ts +12 -0
  429. package/engine/standard/fields/unit.lua +20 -0
  430. package/engine/synchronization.d.ts +11 -0
  431. package/engine/synchronization.lua +77 -0
  432. package/engine/text-tag.d.ts +36 -2
  433. package/engine/text-tag.lua +250 -10
  434. package/engine/unit.d.ts +14 -0
  435. package/engine/unit.lua +23 -2
  436. package/event.d.ts +3 -4
  437. package/event.lua +9 -5
  438. package/global/vec2.lua +1 -0
  439. package/index.d.ts +1 -0
  440. package/index.lua +1 -0
  441. package/lualib_bundle.lua +147 -43
  442. package/math/vec2.d.ts +2 -9
  443. package/math.d.ts +2 -2
  444. package/math.lua +14 -0
  445. package/net/socket.d.ts +7 -1
  446. package/net/socket.lua +45 -4
  447. package/network.d.ts +1 -0
  448. package/network.lua +28 -3
  449. package/objutil/ability.d.ts +0 -1
  450. package/objutil/buff.d.ts +0 -1
  451. package/objutil/buff.lua +13 -12
  452. package/objutil/object.d.ts +0 -1
  453. package/objutil/object.lua +1 -1
  454. package/objutil/unit.d.ts +0 -1
  455. package/objutil/unit.lua +8 -0
  456. package/operation.d.ts +8 -1
  457. package/operation.lua +38 -18
  458. package/package.json +3 -24
  459. package/patch-lua.d.ts +0 -0
  460. package/patch-lua.lua +25 -0
  461. package/patch-lualib.lua +1 -1
  462. package/property.d.ts +55 -0
  463. package/property.lua +374 -0
  464. package/string.d.ts +30 -0
  465. package/string.lua +14 -0
  466. package/util/stream.d.ts +0 -1
  467. package/utility/arrays.d.ts +20 -6
  468. package/utility/arrays.lua +62 -3
  469. package/utility/bit-set.d.ts +0 -2
  470. package/utility/callback-array.d.ts +17 -0
  471. package/utility/callback-array.lua +61 -0
  472. package/utility/functions.d.ts +8 -0
  473. package/utility/functions.lua +13 -0
  474. package/utility/lazy.d.ts +2 -0
  475. package/utility/lazy.lua +14 -0
  476. package/utility/linked-map.d.ts +35 -0
  477. package/utility/linked-map.lua +107 -0
  478. package/utility/linked-set.d.ts +17 -4
  479. package/utility/linked-set.lua +70 -3
  480. package/utility/lua-maps.d.ts +16 -4
  481. package/utility/lua-maps.lua +53 -2
  482. package/utility/lua-sets.d.ts +3 -2
  483. package/utility/lua-sets.lua +7 -0
  484. package/utility/random.d.ts +102 -0
  485. package/utility/random.lua +273 -0
  486. package/utility/records.lua +20 -1
  487. package/utility/reflection.lua +11 -7
  488. package/utility/types.d.ts +6 -2
  489. package/utility/unordered-map.d.ts +27 -0
  490. package/utility/unordered-map.lua +99 -0
  491. package/core/mapbounds.d.ts +0 -8
  492. package/core/mapbounds.lua +0 -12
  493. package/core/types/order.d.ts +0 -25
  494. package/core/types/order.lua +0 -55
  495. /package/engine/internal/{object-data/armor-increase.d.ts → mechanics/cast-ability.d.ts} +0 -0
  496. /package/engine/internal/object-data/{armor-increase.lua → armor-bonus.lua} +0 -0
  497. /package/engine/object-data/entry/ability-type/{attribute-increase.d.ts → attribute-bonus.d.ts} +0 -0
  498. /package/engine/object-data/entry/ability-type/{attribute-increase.lua → attribute-bonus.lua} +0 -0
@@ -3,6 +3,7 @@ local __TS__Class = ____lualib.__TS__Class
3
3
  local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
4
4
  local __TS__New = ____lualib.__TS__New
5
5
  local __TS__ClassExtends = ____lualib.__TS__ClassExtends
6
+ local __TS__ArrayIsArray = ____lualib.__TS__ArrayIsArray
6
7
  local ____exports = {}
7
8
  local ____arrays = require("utility.arrays")
8
9
  local arrayOfNotNull = ____arrays.arrayOfNotNull
@@ -11,6 +12,9 @@ local implementReadonlyNumberIndexSupplier = ____reflection.implementReadonlyNum
11
12
  local ____combat_2Dclassification = require("engine.object-data.auxiliary.combat-classification")
12
13
  local combatClassificationsToStringArray = ____combat_2Dclassification.combatClassificationsToStringArray
13
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
14
18
  local ____unit_2Dclassification = require("engine.object-data.auxiliary.unit-classification")
15
19
  local stringArrayToUnitClassifications = ____unit_2Dclassification.stringArrayToUnitClassifications
16
20
  local unitClassificationsToStringArray = ____unit_2Dclassification.unitClassificationsToStringArray
@@ -18,7 +22,19 @@ local ____entry = require("engine.object-data.entry")
18
22
  local ObjectDataEntry = ____entry.ObjectDataEntry
19
23
  local ____object_2Ddata_2Dentry_2Did_2Dgenerator = require("engine.object-data.utility.object-data-entry-id-generator")
20
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
28
+ local ____config = require("config")
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
21
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
22
38
  ____exports.UnitTypeWeapon = __TS__Class()
23
39
  local UnitTypeWeapon = ____exports.UnitTypeWeapon
24
40
  UnitTypeWeapon.name = "UnitTypeWeapon"
@@ -28,19 +44,42 @@ function UnitTypeWeapon.prototype.____constructor(self, unitType, index)
28
44
  end
29
45
  __TS__SetDescriptor(
30
46
  UnitTypeWeapon.prototype,
31
- "backSwingDuration",
47
+ "attackType",
32
48
  {
33
49
  get = function(self)
50
+ local ____stringToAttackType_1 = stringToAttackType
34
51
  local ____self_0 = self.unitType
35
- return ____self_0.getNumberField(
52
+ return ____stringToAttackType_1(____self_0.getStringField(
36
53
  ____self_0,
54
+ ("ua" .. tostring(self.index)) .. "t"
55
+ ))
56
+ end,
57
+ set = function(self, attackType)
58
+ local ____self_2 = self.unitType
59
+ ____self_2.setStringField(
60
+ ____self_2,
61
+ ("ua" .. tostring(self.index)) .. "t",
62
+ attackTypeToString(attackType)
63
+ )
64
+ end
65
+ },
66
+ true
67
+ )
68
+ __TS__SetDescriptor(
69
+ UnitTypeWeapon.prototype,
70
+ "backSwingDuration",
71
+ {
72
+ get = function(self)
73
+ local ____self_3 = self.unitType
74
+ return ____self_3.getNumberField(
75
+ ____self_3,
37
76
  "ubs" .. tostring(self.index)
38
77
  )
39
78
  end,
40
79
  set = function(self, backSwingDuration)
41
- local ____self_1 = self.unitType
42
- ____self_1.setNumberField(
43
- ____self_1,
80
+ local ____self_4 = self.unitType
81
+ ____self_4.setNumberField(
82
+ ____self_4,
44
83
  "ubs" .. tostring(self.index),
45
84
  backSwingDuration
46
85
  )
@@ -48,21 +87,130 @@ __TS__SetDescriptor(
48
87
  },
49
88
  true
50
89
  )
90
+ __TS__SetDescriptor(
91
+ UnitTypeWeapon.prototype,
92
+ "cooldown",
93
+ {
94
+ get = function(self)
95
+ local ____self_5 = self.unitType
96
+ return ____self_5.getNumberField(
97
+ ____self_5,
98
+ ("ua" .. tostring(self.index)) .. "c"
99
+ )
100
+ end,
101
+ set = function(self, cooldown)
102
+ local ____self_6 = self.unitType
103
+ ____self_6.setNumberField(
104
+ ____self_6,
105
+ ("ua" .. tostring(self.index)) .. "c",
106
+ cooldown
107
+ )
108
+ end
109
+ },
110
+ true
111
+ )
112
+ __TS__SetDescriptor(
113
+ UnitTypeWeapon.prototype,
114
+ "damage",
115
+ {
116
+ get = function(self)
117
+ local minimumDamage = self.damageBase + self.damageDiceCount
118
+ local maximumDamage = self.damageBase + self.damageDiceCount * self.damageDiceSideCount
119
+ return {minimumDamage, maximumDamage}
120
+ end,
121
+ set = function(self, ____bindingPattern0)
122
+ local maximumDamage
123
+ local minimumDamage
124
+ minimumDamage = ____bindingPattern0[1]
125
+ maximumDamage = ____bindingPattern0[2]
126
+ self.damageBase = minimumDamage - 1
127
+ self.damageDiceCount = 1
128
+ self.damageDiceSideCount = maximumDamage - minimumDamage + 1
129
+ end
130
+ },
131
+ true
132
+ )
133
+ __TS__SetDescriptor(
134
+ UnitTypeWeapon.prototype,
135
+ "damageBase",
136
+ {
137
+ get = function(self)
138
+ local ____self_7 = self.unitType
139
+ return ____self_7.getNumberField(
140
+ ____self_7,
141
+ ("ua" .. tostring(self.index)) .. "b"
142
+ )
143
+ end,
144
+ set = function(self, damageBase)
145
+ local ____self_8 = self.unitType
146
+ ____self_8.setNumberField(
147
+ ____self_8,
148
+ ("ua" .. tostring(self.index)) .. "b",
149
+ damageBase
150
+ )
151
+ end
152
+ },
153
+ true
154
+ )
155
+ __TS__SetDescriptor(
156
+ UnitTypeWeapon.prototype,
157
+ "damageDiceCount",
158
+ {
159
+ get = function(self)
160
+ local ____self_9 = self.unitType
161
+ return ____self_9.getNumberField(
162
+ ____self_9,
163
+ ("ua" .. tostring(self.index)) .. "d"
164
+ )
165
+ end,
166
+ set = function(self, damageDiceNumber)
167
+ local ____self_10 = self.unitType
168
+ ____self_10.setNumberField(
169
+ ____self_10,
170
+ ("ua" .. tostring(self.index)) .. "d",
171
+ damageDiceNumber
172
+ )
173
+ end
174
+ },
175
+ true
176
+ )
177
+ __TS__SetDescriptor(
178
+ UnitTypeWeapon.prototype,
179
+ "damageDiceSideCount",
180
+ {
181
+ get = function(self)
182
+ local ____self_11 = self.unitType
183
+ return ____self_11.getNumberField(
184
+ ____self_11,
185
+ ("ua" .. tostring(self.index)) .. "s"
186
+ )
187
+ end,
188
+ set = function(self, damageDiceSideCount)
189
+ local ____self_12 = self.unitType
190
+ ____self_12.setNumberField(
191
+ ____self_12,
192
+ ("ua" .. tostring(self.index)) .. "s",
193
+ damageDiceSideCount
194
+ )
195
+ end
196
+ },
197
+ true
198
+ )
51
199
  __TS__SetDescriptor(
52
200
  UnitTypeWeapon.prototype,
53
201
  "impactDelay",
54
202
  {
55
203
  get = function(self)
56
- local ____self_2 = self.unitType
57
- return ____self_2.getNumberField(
58
- ____self_2,
204
+ local ____self_13 = self.unitType
205
+ return ____self_13.getNumberField(
206
+ ____self_13,
59
207
  "udp" .. tostring(self.index)
60
208
  )
61
209
  end,
62
210
  set = function(self, impactDelay)
63
- local ____self_3 = self.unitType
64
- ____self_3.setNumberField(
65
- ____self_3,
211
+ local ____self_14 = self.unitType
212
+ ____self_14.setNumberField(
213
+ ____self_14,
66
214
  "udp" .. tostring(self.index),
67
215
  impactDelay
68
216
  )
@@ -70,21 +218,43 @@ __TS__SetDescriptor(
70
218
  },
71
219
  true
72
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
+ )
73
243
  __TS__SetDescriptor(
74
244
  UnitTypeWeapon.prototype,
75
245
  "missileModelPath",
76
246
  {
77
247
  get = function(self)
78
- local ____self_4 = self.unitType
79
- return ____self_4.getStringField(
80
- ____self_4,
248
+ local ____self_17 = self.unitType
249
+ return ____self_17.getStringField(
250
+ ____self_17,
81
251
  ("ua" .. tostring(self.index)) .. "m"
82
252
  )
83
253
  end,
84
254
  set = function(self, missileModelPath)
85
- local ____self_5 = self.unitType
86
- ____self_5.setStringField(
87
- ____self_5,
255
+ local ____self_18 = self.unitType
256
+ ____self_18.setStringField(
257
+ ____self_18,
88
258
  ("ua" .. tostring(self.index)) .. "m",
89
259
  missileModelPath
90
260
  )
@@ -92,21 +262,131 @@ __TS__SetDescriptor(
92
262
  },
93
263
  true
94
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
+ )
353
+ __TS__SetDescriptor(
354
+ UnitTypeWeapon.prototype,
355
+ "range",
356
+ {
357
+ get = function(self)
358
+ local ____self_27 = self.unitType
359
+ return ____self_27.getNumberField(
360
+ ____self_27,
361
+ ("ua" .. tostring(self.index)) .. "r"
362
+ )
363
+ end,
364
+ set = function(self, range)
365
+ local ____self_28 = self.unitType
366
+ ____self_28.setNumberField(
367
+ ____self_28,
368
+ ("ua" .. tostring(self.index)) .. "r",
369
+ range
370
+ )
371
+ end
372
+ },
373
+ true
374
+ )
95
375
  __TS__SetDescriptor(
96
376
  UnitTypeWeapon.prototype,
97
377
  "soundType",
98
378
  {
99
379
  get = function(self)
100
- local ____self_6 = self.unitType
101
- return ____self_6.getStringField(
102
- ____self_6,
380
+ local ____self_29 = self.unitType
381
+ return ____self_29.getStringField(
382
+ ____self_29,
103
383
  "ucs" .. tostring(self.index)
104
384
  )
105
385
  end,
106
386
  set = function(self, soundType)
107
- local ____self_7 = self.unitType
108
- ____self_7.setStringField(
109
- ____self_7,
387
+ local ____self_30 = self.unitType
388
+ ____self_30.setStringField(
389
+ ____self_30,
110
390
  "ucs" .. tostring(self.index),
111
391
  soundType
112
392
  )
@@ -119,16 +399,16 @@ __TS__SetDescriptor(
119
399
  "soundTypeSD",
120
400
  {
121
401
  get = function(self)
122
- local ____self_8 = self.unitType
123
- return ____self_8.getStringField(
124
- ____self_8,
402
+ local ____self_31 = self.unitType
403
+ return ____self_31.getStringField(
404
+ ____self_31,
125
405
  ("ucs" .. tostring(self.index)) .. ":sd"
126
406
  )
127
407
  end,
128
408
  set = function(self, soundTypeSD)
129
- local ____self_9 = self.unitType
130
- ____self_9.setStringField(
131
- ____self_9,
409
+ local ____self_32 = self.unitType
410
+ ____self_32.setStringField(
411
+ ____self_32,
132
412
  ("ucs" .. tostring(self.index)) .. ":sd",
133
413
  soundTypeSD
134
414
  )
@@ -141,22 +421,44 @@ __TS__SetDescriptor(
141
421
  "soundTypeHD",
142
422
  {
143
423
  get = function(self)
144
- local ____self_10 = self.unitType
145
- return ____self_10.getStringField(
146
- ____self_10,
424
+ local ____self_33 = self.unitType
425
+ return ____self_33.getStringField(
426
+ ____self_33,
147
427
  ("ucs" .. tostring(self.index)) .. ":hd"
148
428
  )
149
429
  end,
150
430
  set = function(self, soundTypeHD)
151
- local ____self_11 = self.unitType
152
- ____self_11.setStringField(
153
- ____self_11,
431
+ local ____self_34 = self.unitType
432
+ ____self_34.setStringField(
433
+ ____self_34,
154
434
  ("ucs" .. tostring(self.index)) .. ":hd",
155
435
  soundTypeHD
156
436
  )
157
437
  end
158
438
  },
159
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
160
462
  );
161
463
  (function(self)
162
464
  local unitTypeWeaponsByUnitTypeId = {}
@@ -182,6 +484,36 @@ end
182
484
  function UnitType.getObjectData(self, map)
183
485
  return map.objects.unit
184
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
185
517
  UnitType.idGenerator = __TS__New(
186
518
  ObjectDataEntryIdGenerator,
187
519
  fourCC("x000")
@@ -191,10 +523,10 @@ __TS__SetDescriptor(
191
523
  "abilityTypeIds",
192
524
  {
193
525
  get = function(self)
194
- return self:getObjectDataEntryIdsField("uabi")
526
+ return self:getObjectDataEntryNumericIdsField("uabi")
195
527
  end,
196
528
  set = function(self, abilityTypeIds)
197
- self:setObjectDataEntryIdsField("uabi", abilityTypeIds)
529
+ self:setObjectDataEntryNumericIdsField("uabi", abilityTypeIds)
198
530
  end
199
531
  },
200
532
  true
@@ -204,10 +536,10 @@ __TS__SetDescriptor(
204
536
  "defaultActiveAbilityTypeId",
205
537
  {
206
538
  get = function(self)
207
- return self:getObjectDataEntryIdsField("udaa")[1]
539
+ return self:getObjectDataEntryNumericIdsField("udaa")[1]
208
540
  end,
209
541
  set = function(self, abilityTypeId)
210
- self:setObjectDataEntryIdsField(
542
+ self:setObjectDataEntryNumericIdsField(
211
543
  "udaa",
212
544
  arrayOfNotNull(abilityTypeId)
213
545
  )
@@ -306,6 +638,32 @@ __TS__SetDescriptor(
306
638
  },
307
639
  true
308
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
+ )
309
667
  __TS__SetDescriptor(
310
668
  UnitType.prototype,
311
669
  "iconPath",
@@ -345,6 +703,19 @@ __TS__SetDescriptor(
345
703
  },
346
704
  true
347
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
+ )
348
719
  __TS__SetDescriptor(
349
720
  UnitType.prototype,
350
721
  "isMissileScalingEnabled",
@@ -449,6 +820,19 @@ __TS__SetDescriptor(
449
820
  },
450
821
  true
451
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
+ )
452
836
  __TS__SetDescriptor(
453
837
  UnitType.prototype,
454
838
  "missileLaunchSwimmingOffsetZ",
@@ -488,6 +872,19 @@ __TS__SetDescriptor(
488
872
  },
489
873
  true
490
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
+ )
491
888
  __TS__SetDescriptor(
492
889
  UnitType.prototype,
493
890
  "missileLaunchVisualOffsetX",
@@ -503,182 +900,368 @@ __TS__SetDescriptor(
503
900
  )
504
901
  __TS__SetDescriptor(
505
902
  UnitType.prototype,
506
- "missileLaunchVisualOffsetXSD",
903
+ "missileLaunchVisualOffsetXSD",
904
+ {
905
+ get = function(self)
906
+ return self:getNumberField("projectileVisOffsetX:sd")
907
+ end,
908
+ set = function(self, missileLaunchVisualOffsetXSD)
909
+ self:setNumberField("projectileVisOffsetX:sd", missileLaunchVisualOffsetXSD)
910
+ end
911
+ },
912
+ true
913
+ )
914
+ __TS__SetDescriptor(
915
+ UnitType.prototype,
916
+ "missileLaunchVisualOffsetXHD",
917
+ {
918
+ get = function(self)
919
+ return self:getNumberField("projectileVisOffsetX:hd")
920
+ end,
921
+ set = function(self, missileLaunchVisualOffsetXHD)
922
+ self:setNumberField("projectileVisOffsetX:hd", missileLaunchVisualOffsetXHD)
923
+ end
924
+ },
925
+ true
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
+ )
940
+ __TS__SetDescriptor(
941
+ UnitType.prototype,
942
+ "missileLaunchVisualOffsetY",
943
+ {
944
+ get = function(self)
945
+ return self:getNumberField("projectileVisOffsetY")
946
+ end,
947
+ set = function(self, missileLaunchVisualOffsetY)
948
+ self:setNumberField("projectileVisOffsetY", missileLaunchVisualOffsetY)
949
+ end
950
+ },
951
+ true
952
+ )
953
+ __TS__SetDescriptor(
954
+ UnitType.prototype,
955
+ "missileLaunchVisualOffsetYSD",
956
+ {
957
+ get = function(self)
958
+ return self:getNumberField("projectileVisOffsetY:sd")
959
+ end,
960
+ set = function(self, missileLaunchVisualOffsetYSD)
961
+ self:setNumberField("projectileVisOffsetY:sd", missileLaunchVisualOffsetYSD)
962
+ end
963
+ },
964
+ true
965
+ )
966
+ __TS__SetDescriptor(
967
+ UnitType.prototype,
968
+ "missileLaunchVisualOffsetYHD",
969
+ {
970
+ get = function(self)
971
+ return self:getNumberField("projectileVisOffsetY:hd")
972
+ end,
973
+ set = function(self, missileLaunchVisualOffsetYHD)
974
+ self:setNumberField("projectileVisOffsetY:hd", missileLaunchVisualOffsetYHD)
975
+ end
976
+ },
977
+ true
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
+ )
992
+ __TS__SetDescriptor(
993
+ UnitType.prototype,
994
+ "missileImpactOffsetZ",
995
+ {
996
+ get = function(self)
997
+ return self:getNumberField("uimz")
998
+ end,
999
+ set = function(self, missileImpactOffsetZ)
1000
+ self:setNumberField("uimz", missileImpactOffsetZ)
1001
+ end
1002
+ },
1003
+ true
1004
+ )
1005
+ __TS__SetDescriptor(
1006
+ UnitType.prototype,
1007
+ "missileImpactOffsetZSD",
1008
+ {
1009
+ get = function(self)
1010
+ return self:getNumberField("uimz:sd")
1011
+ end,
1012
+ set = function(self, missileImpactOffsetZSD)
1013
+ self:setNumberField("uimz:sd", missileImpactOffsetZSD)
1014
+ end
1015
+ },
1016
+ true
1017
+ )
1018
+ __TS__SetDescriptor(
1019
+ UnitType.prototype,
1020
+ "missileImpactOffsetZHD",
1021
+ {
1022
+ get = function(self)
1023
+ return self:getNumberField("uimz:hd")
1024
+ end,
1025
+ set = function(self, missileImpactOffsetZHD)
1026
+ self:setNumberField("uimz:hd", missileImpactOffsetZHD)
1027
+ end
1028
+ },
1029
+ true
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
+ )
1044
+ __TS__SetDescriptor(
1045
+ UnitType.prototype,
1046
+ "missileImpactSwimmingOffsetZ",
1047
+ {
1048
+ get = function(self)
1049
+ return self:getNumberField("uisz")
1050
+ end,
1051
+ set = function(self, missileImpactSwimmingOffsetZ)
1052
+ self:setNumberField("uisz", missileImpactSwimmingOffsetZ)
1053
+ end
1054
+ },
1055
+ true
1056
+ )
1057
+ __TS__SetDescriptor(
1058
+ UnitType.prototype,
1059
+ "missileImpactSwimmingOffsetZSD",
1060
+ {
1061
+ get = function(self)
1062
+ return self:getNumberField("uisz:sd")
1063
+ end,
1064
+ set = function(self, missileImpactSwimmingOffsetZSD)
1065
+ self:setNumberField("uisz:sd", missileImpactSwimmingOffsetZSD)
1066
+ end
1067
+ },
1068
+ true
1069
+ )
1070
+ __TS__SetDescriptor(
1071
+ UnitType.prototype,
1072
+ "missileImpactSwimmingOffsetZHD",
1073
+ {
1074
+ get = function(self)
1075
+ return self:getNumberField("uisz:hd")
1076
+ end,
1077
+ set = function(self, missileImpactSwimmingOffsetZHD)
1078
+ self:setNumberField("uisz:hd", missileImpactSwimmingOffsetZHD)
1079
+ end
1080
+ },
1081
+ true
1082
+ )
1083
+ __TS__SetDescriptor(
1084
+ UnitType.prototype,
1085
+ "missileImpactSwimmingOffsetZDE",
507
1086
  {
508
1087
  get = function(self)
509
- return self:getNumberField("projectileVisOffsetX:sd")
1088
+ return self:getNumberField("uisz:de")
510
1089
  end,
511
- set = function(self, missileLaunchVisualOffsetXSD)
512
- self:setNumberField("projectileVisOffsetX:sd", missileLaunchVisualOffsetXSD)
1090
+ set = function(self, missileImpactSwimmingOffsetZDE)
1091
+ self:setNumberField("uisz:de", missileImpactSwimmingOffsetZDE)
513
1092
  end
514
1093
  },
515
1094
  true
516
1095
  )
517
1096
  __TS__SetDescriptor(
518
1097
  UnitType.prototype,
519
- "missileLaunchVisualOffsetXHD",
1098
+ "modelPath",
520
1099
  {
521
1100
  get = function(self)
522
- return self:getNumberField("projectileVisOffsetX:hd")
1101
+ return self:getStringField("umdl")
523
1102
  end,
524
- set = function(self, missileLaunchVisualOffsetXHD)
525
- self:setNumberField("projectileVisOffsetX:hd", missileLaunchVisualOffsetXHD)
1103
+ set = function(self, modelPath)
1104
+ self:setStringField("umdl", modelPath)
1105
+ self:emptyPortraitForModel("upor")
526
1106
  end
527
1107
  },
528
1108
  true
529
1109
  )
530
1110
  __TS__SetDescriptor(
531
1111
  UnitType.prototype,
532
- "missileLaunchVisualOffsetY",
1112
+ "modelPathSD",
533
1113
  {
534
1114
  get = function(self)
535
- return self:getNumberField("projectileVisOffsetY")
1115
+ return self:getStringField("umdl:sd")
536
1116
  end,
537
- set = function(self, missileLaunchVisualOffsetY)
538
- self:setNumberField("projectileVisOffsetY", missileLaunchVisualOffsetY)
1117
+ set = function(self, modelPathSD)
1118
+ self:setStringField("umdl:sd", modelPathSD)
1119
+ self:emptyPortraitForModel("upor:sd")
539
1120
  end
540
1121
  },
541
1122
  true
542
1123
  )
543
1124
  __TS__SetDescriptor(
544
1125
  UnitType.prototype,
545
- "missileLaunchVisualOffsetYSD",
1126
+ "modelPathHD",
546
1127
  {
547
1128
  get = function(self)
548
- return self:getNumberField("projectileVisOffsetY:sd")
1129
+ return self:getStringField("umdl:hd")
549
1130
  end,
550
- set = function(self, missileLaunchVisualOffsetYSD)
551
- self:setNumberField("projectileVisOffsetY:sd", missileLaunchVisualOffsetYSD)
1131
+ set = function(self, modelPathHD)
1132
+ self:setStringField("umdl:hd", modelPathHD)
1133
+ self:emptyPortraitForModel("upor:hd")
552
1134
  end
553
1135
  },
554
1136
  true
555
1137
  )
556
1138
  __TS__SetDescriptor(
557
1139
  UnitType.prototype,
558
- "missileLaunchVisualOffsetYHD",
1140
+ "modelPathDE",
559
1141
  {
560
1142
  get = function(self)
561
- return self:getNumberField("projectileVisOffsetY:hd")
1143
+ return self:getStringField("umdl:de")
562
1144
  end,
563
- set = function(self, missileLaunchVisualOffsetYHD)
564
- self:setNumberField("projectileVisOffsetY:hd", missileLaunchVisualOffsetYHD)
1145
+ set = function(self, modelPathDE)
1146
+ self:setStringField("umdl:de", modelPathDE)
1147
+ self:emptyPortraitForModel("upor:de")
565
1148
  end
566
1149
  },
567
1150
  true
568
1151
  )
569
1152
  __TS__SetDescriptor(
570
1153
  UnitType.prototype,
571
- "missileImpactOffsetZ",
1154
+ "portraitModelPath",
572
1155
  {
573
1156
  get = function(self)
574
- return self:getNumberField("uimz")
1157
+ return self:getStringField("upor")
575
1158
  end,
576
- set = function(self, missileImpactOffsetZ)
577
- self:setNumberField("uimz", missileImpactOffsetZ)
1159
+ set = function(self, portraitModelPath)
1160
+ self:setPortraitModelPathField("upor", portraitModelPath)
578
1161
  end
579
1162
  },
580
1163
  true
581
1164
  )
582
1165
  __TS__SetDescriptor(
583
1166
  UnitType.prototype,
584
- "missileImpactOffsetZSD",
1167
+ "portraitModelPathSD",
585
1168
  {
586
1169
  get = function(self)
587
- return self:getNumberField("uimz:sd")
1170
+ return self:getStringField("upor:sd")
588
1171
  end,
589
- set = function(self, missileImpactOffsetZSD)
590
- self:setNumberField("uimz:sd", missileImpactOffsetZSD)
1172
+ set = function(self, portraitModelPathSD)
1173
+ self:setPortraitModelPathField("upor:sd", portraitModelPathSD)
591
1174
  end
592
1175
  },
593
1176
  true
594
1177
  )
595
1178
  __TS__SetDescriptor(
596
1179
  UnitType.prototype,
597
- "missileImpactOffsetZHD",
1180
+ "portraitModelPathHD",
598
1181
  {
599
1182
  get = function(self)
600
- return self:getNumberField("uimz:hd")
1183
+ return self:getStringField("upor:hd")
601
1184
  end,
602
- set = function(self, missileImpactOffsetZHD)
603
- self:setNumberField("uimz:hd", missileImpactOffsetZHD)
1185
+ set = function(self, portraitModelPathHD)
1186
+ self:setPortraitModelPathField("upor:hd", portraitModelPathHD)
604
1187
  end
605
1188
  },
606
1189
  true
607
1190
  )
608
1191
  __TS__SetDescriptor(
609
1192
  UnitType.prototype,
610
- "missileImpactSwimmingOffsetZ",
1193
+ "portraitModelPathDE",
611
1194
  {
612
1195
  get = function(self)
613
- return self:getNumberField("uisz")
1196
+ return self:getStringField("upor:de")
614
1197
  end,
615
- set = function(self, missileImpactSwimmingOffsetZ)
616
- self:setNumberField("uisz", missileImpactSwimmingOffsetZ)
1198
+ set = function(self, portraitModelPathDE)
1199
+ self:setPortraitModelPathField("upor:de", portraitModelPathDE)
617
1200
  end
618
1201
  },
619
1202
  true
620
1203
  )
621
1204
  __TS__SetDescriptor(
622
1205
  UnitType.prototype,
623
- "missileImpactSwimmingOffsetZSD",
1206
+ "runSpeed",
624
1207
  {
625
1208
  get = function(self)
626
- return self:getNumberField("uisz:sd")
1209
+ return self:getNumberField("urun")
627
1210
  end,
628
- set = function(self, missileImpactSwimmingOffsetZSD)
629
- self:setNumberField("uisz:sd", missileImpactSwimmingOffsetZSD)
1211
+ set = function(self, runSpeed)
1212
+ self:setNumberField("urun", runSpeed)
630
1213
  end
631
1214
  },
632
1215
  true
633
1216
  )
634
1217
  __TS__SetDescriptor(
635
1218
  UnitType.prototype,
636
- "missileImpactSwimmingOffsetZHD",
1219
+ "runSpeedSD",
637
1220
  {
638
1221
  get = function(self)
639
- return self:getNumberField("uisz:hd")
1222
+ return self:getNumberField("urun:sd")
640
1223
  end,
641
- set = function(self, missileImpactSwimmingOffsetZHD)
642
- self:setNumberField("uisz:hd", missileImpactSwimmingOffsetZHD)
1224
+ set = function(self, runSpeedSD)
1225
+ self:setNumberField("urun:sd", runSpeedSD)
643
1226
  end
644
1227
  },
645
1228
  true
646
1229
  )
647
1230
  __TS__SetDescriptor(
648
1231
  UnitType.prototype,
649
- "modelPath",
1232
+ "runSpeedHD",
650
1233
  {
651
1234
  get = function(self)
652
- return self:getStringField("umdl")
1235
+ return self:getNumberField("urun:hd")
653
1236
  end,
654
- set = function(self, modelPath)
655
- self:setStringField("umdl", modelPath)
1237
+ set = function(self, runSpeedHD)
1238
+ self:setNumberField("urun:hd", runSpeedHD)
656
1239
  end
657
1240
  },
658
1241
  true
659
1242
  )
660
1243
  __TS__SetDescriptor(
661
1244
  UnitType.prototype,
662
- "modelPathSD",
1245
+ "runSpeedDE",
663
1246
  {
664
1247
  get = function(self)
665
- return self:getStringField("umdl:sd")
1248
+ return self:getNumberField("urun:de")
666
1249
  end,
667
- set = function(self, modelPathSD)
668
- self:setStringField("umdl:sd", modelPathSD)
1250
+ set = function(self, runSpeedDE)
1251
+ self:setNumberField("urun:de", runSpeedDE)
669
1252
  end
670
1253
  },
671
1254
  true
672
1255
  )
673
1256
  __TS__SetDescriptor(
674
1257
  UnitType.prototype,
675
- "modelPathHD",
1258
+ "selectionCircleHeight",
676
1259
  {
677
1260
  get = function(self)
678
- return self:getStringField("umdl:hd")
1261
+ return self:getNumberField("uslz")
679
1262
  end,
680
- set = function(self, modelPathHD)
681
- self:setStringField("umdl:hd", modelPathHD)
1263
+ set = function(self, height)
1264
+ self:setNumberField("uslz", height)
682
1265
  end
683
1266
  },
684
1267
  true
@@ -722,6 +1305,19 @@ __TS__SetDescriptor(
722
1305
  },
723
1306
  true
724
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
+ )
725
1321
  __TS__SetDescriptor(
726
1322
  UnitType.prototype,
727
1323
  "scale",
@@ -761,6 +1357,19 @@ __TS__SetDescriptor(
761
1357
  },
762
1358
  true
763
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
+ )
764
1373
  __TS__SetDescriptor(
765
1374
  UnitType.prototype,
766
1375
  "scoreScreenIconPath",
@@ -800,6 +1409,19 @@ __TS__SetDescriptor(
800
1409
  },
801
1410
  true
802
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
+ )
803
1425
  __TS__SetDescriptor(
804
1426
  UnitType.prototype,
805
1427
  "specialEffectModelPath",
@@ -839,6 +1461,19 @@ __TS__SetDescriptor(
839
1461
  },
840
1462
  true
841
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
+ )
842
1477
  __TS__SetDescriptor(
843
1478
  UnitType.prototype,
844
1479
  "shadowImageHeight",
@@ -891,6 +1526,71 @@ __TS__SetDescriptor(
891
1526
  },
892
1527
  true
893
1528
  )
1529
+ __TS__SetDescriptor(
1530
+ UnitType.prototype,
1531
+ "walkSpeed",
1532
+ {
1533
+ get = function(self)
1534
+ return self:getNumberField("uwal")
1535
+ end,
1536
+ set = function(self, walkSpeed)
1537
+ self:setNumberField("uwal", walkSpeed)
1538
+ end
1539
+ },
1540
+ true
1541
+ )
1542
+ __TS__SetDescriptor(
1543
+ UnitType.prototype,
1544
+ "walkSpeedSD",
1545
+ {
1546
+ get = function(self)
1547
+ return self:getNumberField("uwal:sd")
1548
+ end,
1549
+ set = function(self, walkSpeedSD)
1550
+ self:setNumberField("uwal:sd", walkSpeedSD)
1551
+ end
1552
+ },
1553
+ true
1554
+ )
1555
+ __TS__SetDescriptor(
1556
+ UnitType.prototype,
1557
+ "walkSpeedHD",
1558
+ {
1559
+ get = function(self)
1560
+ return self:getNumberField("uwal:hd")
1561
+ end,
1562
+ set = function(self, walkSpeedHD)
1563
+ self:setNumberField("uwal:hd", walkSpeedHD)
1564
+ end
1565
+ },
1566
+ true
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
+ )
894
1594
  __TS__SetDescriptor(
895
1595
  UnitType.prototype,
896
1596
  "armorSoundType",
@@ -930,6 +1630,35 @@ __TS__SetDescriptor(
930
1630
  },
931
1631
  true
932
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
+ )
933
1662
  __TS__SetDescriptor(
934
1663
  UnitType.prototype,
935
1664
  "combatClassifications",
@@ -948,7 +1677,7 @@ __TS__SetDescriptor(
948
1677
  )
949
1678
  __TS__SetDescriptor(
950
1679
  UnitType.prototype,
951
- "unitClassifications",
1680
+ "classifications",
952
1681
  {
953
1682
  get = function(self)
954
1683
  return stringArrayToUnitClassifications(self:getStringsField("utyp"))
@@ -964,25 +1693,25 @@ __TS__SetDescriptor(
964
1693
  )
965
1694
  __TS__SetDescriptor(
966
1695
  UnitType.prototype,
967
- "firstWeapon",
1696
+ "weapons",
968
1697
  {get = function(self)
969
- return self.weapons[1]
1698
+ return getOrCreateUnitTypeWeapons(self)
970
1699
  end},
971
1700
  true
972
1701
  )
973
1702
  __TS__SetDescriptor(
974
1703
  UnitType.prototype,
975
- "secondWeapon",
1704
+ "firstWeapon",
976
1705
  {get = function(self)
977
- return self.weapons[2]
1706
+ return self.weapons[1]
978
1707
  end},
979
1708
  true
980
1709
  )
981
1710
  __TS__SetDescriptor(
982
1711
  UnitType.prototype,
983
- "weapons",
1712
+ "secondWeapon",
984
1713
  {get = function(self)
985
- return getOrCreateUnitTypeWeapons(self)
1714
+ return self.weapons[2]
986
1715
  end},
987
1716
  true
988
1717
  )
@@ -1056,10 +1785,13 @@ __TS__SetDescriptor(
1056
1785
  "movementType",
1057
1786
  {
1058
1787
  get = function(self)
1059
- return self:getStringField("umvt")
1788
+ return stringToMovementType(self:getStringField("umvt"))
1060
1789
  end,
1061
1790
  set = function(self, movementType)
1062
- self:setStringField("umvt", movementType)
1791
+ self:setStringField(
1792
+ "umvt",
1793
+ movementTypeToString(movementType)
1794
+ )
1063
1795
  end
1064
1796
  },
1065
1797
  true
@@ -1168,6 +1900,84 @@ __TS__SetDescriptor(
1168
1900
  },
1169
1901
  true
1170
1902
  )
1903
+ __TS__SetDescriptor(
1904
+ UnitType.prototype,
1905
+ "healthRegenerationRate",
1906
+ {
1907
+ get = function(self)
1908
+ return self:getNumberField("uhpr")
1909
+ end,
1910
+ set = function(self, healthRegenerationRate)
1911
+ self:setNumberField("uhpr", healthRegenerationRate)
1912
+ end
1913
+ },
1914
+ true
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
+ )
1929
+ __TS__SetDescriptor(
1930
+ UnitType.prototype,
1931
+ "manaRegenerationRate",
1932
+ {
1933
+ get = function(self)
1934
+ return self:getNumberField("umpr")
1935
+ end,
1936
+ set = function(self, manaRegenerationRate)
1937
+ self:setNumberField("umpr", manaRegenerationRate)
1938
+ end
1939
+ },
1940
+ true
1941
+ )
1942
+ __TS__SetDescriptor(
1943
+ UnitType.prototype,
1944
+ "maximumHealth",
1945
+ {
1946
+ get = function(self)
1947
+ return self:getNumberField("uhpm")
1948
+ end,
1949
+ set = function(self, maximumHealth)
1950
+ self:setNumberField("uhpm", maximumHealth)
1951
+ end
1952
+ },
1953
+ true
1954
+ )
1955
+ __TS__SetDescriptor(
1956
+ UnitType.prototype,
1957
+ "maximumMana",
1958
+ {
1959
+ get = function(self)
1960
+ return self:getNumberField("umpm")
1961
+ end,
1962
+ set = function(self, maximumMana)
1963
+ self:setNumberField("umpm", maximumMana)
1964
+ end
1965
+ },
1966
+ true
1967
+ )
1968
+ __TS__SetDescriptor(
1969
+ UnitType.prototype,
1970
+ "initialMana",
1971
+ {
1972
+ get = function(self)
1973
+ return self:getNumberField("umpi")
1974
+ end,
1975
+ set = function(self, initialMana)
1976
+ self:setNumberField("umpi", initialMana)
1977
+ end
1978
+ },
1979
+ true
1980
+ )
1171
1981
  __TS__SetDescriptor(
1172
1982
  UnitType.prototype,
1173
1983
  "isStructure",
@@ -1199,10 +2009,10 @@ __TS__SetDescriptor(
1199
2009
  "affectingUpgradeIds",
1200
2010
  {
1201
2011
  get = function(self)
1202
- return self:getObjectDataEntryIdsField("upgr")
2012
+ return self:getObjectDataEntryNumericIdsField("upgr")
1203
2013
  end,
1204
2014
  set = function(self, affectingUpgradeIds)
1205
- self:setObjectDataEntryIdsField("upgr", affectingUpgradeIds)
2015
+ self:setObjectDataEntryNumericIdsField("upgr", affectingUpgradeIds)
1206
2016
  end
1207
2017
  },
1208
2018
  true
@@ -1262,11 +2072,11 @@ __TS__SetDescriptor(
1262
2072
  implementReadonlyNumberIndexSupplier(
1263
2073
  ____exports.UnitType,
1264
2074
  function(id)
1265
- local ____class_12 = __TS__Class()
1266
- ____class_12.name = ____class_12.name
1267
- __TS__ClassExtends(____class_12, ____exports.UnitType)
1268
- ____class_12.BASE_ID = id
1269
- return ____class_12
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
1270
2080
  end
1271
2081
  )
1272
2082
  ____exports.HeroUnitType = __TS__Class()
@@ -1285,10 +2095,41 @@ __TS__SetDescriptor(
1285
2095
  "heroAbilityTypeIds",
1286
2096
  {
1287
2097
  get = function(self)
1288
- return self:getObjectDataEntryIdsField("uhab")
2098
+ return self:getObjectDataEntryNumericIdsField("uhab")
1289
2099
  end,
1290
2100
  set = function(self, heroAbilityTypeIds)
1291
- self:setObjectDataEntryIdsField("uhab", heroAbilityTypeIds)
2101
+ self:setObjectDataEntryNumericIdsField("uhab", heroAbilityTypeIds)
2102
+ end
2103
+ },
2104
+ true
2105
+ )
2106
+ __TS__SetDescriptor(
2107
+ HeroUnitType.prototype,
2108
+ "properNames",
2109
+ {
2110
+ get = function(self)
2111
+ return self:getStringsField("upro")
2112
+ end,
2113
+ set = function(self, properNames)
2114
+ if __TS__ArrayIsArray(properNames) then
2115
+ self:setStringsField("upro", properNames)
2116
+ self:setNumberField("upru", #properNames)
2117
+ else
2118
+ self:setStringField("upro", properNames)
2119
+ end
2120
+ end
2121
+ },
2122
+ true
2123
+ )
2124
+ __TS__SetDescriptor(
2125
+ HeroUnitType.prototype,
2126
+ "properNameCount",
2127
+ {
2128
+ get = function(self)
2129
+ return self:getNumberField("upru")
2130
+ end,
2131
+ set = function(self, properNameCount)
2132
+ self:setNumberField("upru", properNameCount)
1292
2133
  end
1293
2134
  },
1294
2135
  true
@@ -1296,11 +2137,11 @@ __TS__SetDescriptor(
1296
2137
  implementReadonlyNumberIndexSupplier(
1297
2138
  ____exports.HeroUnitType,
1298
2139
  function(id)
1299
- local ____class_13 = __TS__Class()
1300
- ____class_13.name = ____class_13.name
1301
- __TS__ClassExtends(____class_13, ____exports.HeroUnitType)
1302
- ____class_13.BASE_ID = id
1303
- return ____class_13
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
1304
2145
  end
1305
2146
  )
1306
2147
  return ____exports