warscript 0.0.1-dev.aaf0a9d → 0.0.1-dev.ac2149a

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 (492) 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.d.ts +1 -1
  40. package/engine/behavior.d.ts +24 -11
  41. package/engine/behavior.lua +233 -73
  42. package/engine/behaviour/ability/always-enabled.d.ts +7 -0
  43. package/engine/behaviour/ability/always-enabled.lua +31 -0
  44. package/engine/behaviour/ability/apply-buff.d.ts +8 -5
  45. package/engine/behaviour/ability/apply-buff.lua +36 -4
  46. package/engine/behaviour/ability/apply-unit-behavior.d.ts +13 -4
  47. package/engine/behaviour/ability/apply-unit-behavior.lua +37 -9
  48. package/engine/behaviour/ability/damage.d.ts +43 -11
  49. package/engine/behaviour/ability/damage.lua +89 -39
  50. package/engine/behaviour/ability/emulate-impact.d.ts +6 -0
  51. package/engine/behaviour/ability/emulate-impact.lua +44 -0
  52. package/engine/behaviour/ability/heal.d.ts +33 -6
  53. package/engine/behaviour/ability/heal.lua +89 -10
  54. package/engine/behaviour/ability/instant-impact.d.ts +2 -2
  55. package/engine/behaviour/ability/instant-impact.lua +4 -15
  56. package/engine/behaviour/ability/on-command-impact.d.ts +9 -0
  57. package/engine/behaviour/ability/on-command-impact.lua +26 -0
  58. package/engine/behaviour/ability/remove-buffs.d.ts +25 -0
  59. package/engine/behaviour/ability/remove-buffs.lua +49 -0
  60. package/engine/behaviour/ability/restore-mana.d.ts +15 -0
  61. package/engine/behaviour/ability/restore-mana.lua +29 -0
  62. package/engine/behaviour/ability.d.ts +37 -7
  63. package/engine/behaviour/ability.lua +208 -27
  64. package/engine/behaviour/unit/stun-immunity.d.ts +12 -7
  65. package/engine/behaviour/unit/stun-immunity.lua +57 -31
  66. package/engine/behaviour/unit.d.ts +49 -4
  67. package/engine/behaviour/unit.lua +293 -2
  68. package/engine/buff.d.ts +168 -59
  69. package/engine/buff.lua +767 -277
  70. package/engine/game-map.d.ts +7 -0
  71. package/engine/game-map.lua +32 -0
  72. package/engine/index.d.ts +2 -1
  73. package/engine/internal/ability.d.ts +31 -15
  74. package/engine/internal/ability.lua +177 -104
  75. package/engine/internal/item/ability.lua +162 -4
  76. package/engine/internal/item/fields.d.ts +12 -0
  77. package/engine/internal/item/fields.lua +33 -0
  78. package/engine/internal/item/owner-cache.d.ts +5 -0
  79. package/engine/internal/item/owner-cache.lua +4 -0
  80. package/engine/internal/item+owner.d.ts +2 -0
  81. package/engine/internal/item+owner.lua +37 -8
  82. package/engine/internal/item.d.ts +34 -18
  83. package/engine/internal/item.lua +308 -102
  84. package/engine/internal/mechanics/ability-duration.d.ts +1 -3
  85. package/engine/internal/mechanics/ability-duration.lua +3 -1
  86. package/engine/internal/mechanics/cast-ability.lua +89 -0
  87. package/engine/internal/misc/ability-disable-counter.d.ts +2 -0
  88. package/engine/internal/misc/ability-disable-counter.lua +13 -0
  89. package/engine/internal/misc/damage-metadata-by-target.d.ts +2 -0
  90. package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
  91. package/engine/internal/misc/frame-coordinates.d.ts +2 -0
  92. package/engine/internal/misc/frame-coordinates.lua +21 -0
  93. package/engine/internal/misc/get-terrain-z.d.ts +2 -0
  94. package/engine/internal/misc/get-terrain-z.lua +11 -0
  95. package/engine/internal/misc/player-local-handle.d.ts +2 -0
  96. package/engine/internal/misc/player-local-handle.lua +5 -0
  97. package/engine/internal/misc/unit-ability-level-natives.d.ts +2 -0
  98. package/engine/internal/misc/unit-ability-level-natives.lua +12 -0
  99. package/engine/internal/object-data/armor-bonus.d.ts +2 -0
  100. package/engine/internal/object-data/attribute-bonus.lua +2 -2
  101. package/engine/internal/object-data/auto-attack-speed-increase.d.ts +1 -1
  102. package/engine/internal/object-data/auto-attack-speed-increase.lua +2 -0
  103. package/engine/internal/object-data/evasion-probability.d.ts +2 -0
  104. package/engine/internal/object-data/evasion-probability.lua +16 -0
  105. package/engine/internal/object-data/health-bonus.d.ts +2 -0
  106. package/engine/internal/object-data/health-bonus.lua +16 -0
  107. package/engine/internal/object-data/health-regeneration-rate-increase.d.ts +2 -0
  108. package/engine/internal/object-data/health-regeneration-rate-increase.lua +48 -0
  109. package/engine/internal/object-data/mana-bonus.d.ts +2 -0
  110. package/engine/internal/object-data/mana-bonus.lua +16 -0
  111. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.d.ts +2 -0
  112. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
  113. package/engine/internal/unit/ability.d.ts +45 -1
  114. package/engine/internal/unit/ability.lua +142 -19
  115. package/engine/internal/unit/add-item-to-slot-init.d.ts +2 -0
  116. package/engine/internal/unit/add-item-to-slot-init.lua +12 -0
  117. package/engine/internal/unit/add-item-to-slot.d.ts +2 -0
  118. package/engine/internal/unit/add-item-to-slot.lua +93 -0
  119. package/engine/internal/unit/allowed-targets.d.ts +1 -1
  120. package/engine/internal/unit/allowed-targets.lua +9 -1
  121. package/engine/internal/unit/appearance.d.ts +15 -0
  122. package/engine/internal/unit/appearance.lua +85 -0
  123. package/engine/internal/unit/attributes.d.ts +17 -0
  124. package/engine/internal/unit/attributes.lua +46 -0
  125. package/engine/internal/unit/bonus.d.ts +25 -8
  126. package/engine/internal/unit/bonus.lua +125 -9
  127. package/engine/internal/unit/buff.d.ts +2 -2
  128. package/engine/internal/unit/buff.lua +34 -19
  129. package/engine/internal/unit/detach-missiles.d.ts +7 -0
  130. package/engine/internal/unit/detach-missiles.lua +30 -0
  131. package/engine/internal/unit/equipment-inventory.d.ts +44 -0
  132. package/engine/internal/unit/equipment-inventory.lua +233 -0
  133. package/engine/internal/unit/expiration-timer.lua +1 -1
  134. package/engine/internal/unit/extended-inventory.d.ts +25 -0
  135. package/engine/internal/unit/extended-inventory.lua +99 -0
  136. package/engine/internal/unit/fly-height.d.ts +7 -0
  137. package/engine/internal/unit/fly-height.lua +20 -0
  138. package/engine/internal/unit/ignore-events-items.d.ts +2 -0
  139. package/engine/internal/unit/ignore-events-items.lua +14 -0
  140. package/engine/internal/unit/interrupts.d.ts +12 -0
  141. package/engine/internal/unit/interrupts.lua +28 -0
  142. package/engine/internal/unit/inventory.d.ts +28 -0
  143. package/engine/internal/unit/inventory.lua +87 -0
  144. package/engine/internal/unit/item-container.d.ts +25 -0
  145. package/engine/internal/unit/item-container.lua +11 -0
  146. package/engine/internal/unit/item-order-events.d.ts +17 -0
  147. package/engine/internal/unit/item-order-events.lua +67 -0
  148. package/engine/internal/unit/item-slot.d.ts +27 -0
  149. package/engine/internal/unit/item-slot.lua +92 -0
  150. package/engine/internal/unit/main-selected.d.ts +13 -0
  151. package/engine/internal/unit/main-selected.lua +36 -0
  152. package/engine/internal/unit/order.d.ts +20 -0
  153. package/engine/internal/unit/order.lua +136 -0
  154. package/engine/internal/unit/pseudo-passive-abilities.d.ts +2 -0
  155. package/engine/internal/unit/pseudo-passive-abilities.lua +11 -0
  156. package/engine/internal/unit/range-event.d.ts +12 -0
  157. package/engine/internal/unit/range-event.lua +90 -0
  158. package/engine/internal/unit/scale.d.ts +7 -0
  159. package/engine/internal/unit/scale.lua +20 -0
  160. package/engine/internal/unit+ability.d.ts +2 -1
  161. package/engine/internal/unit+ability.lua +75 -5
  162. package/engine/internal/unit+bonus.lua +3 -3
  163. package/engine/internal/unit+damage.d.ts +11 -11
  164. package/engine/internal/unit+damage.lua +43 -14
  165. package/engine/internal/unit+rally.lua +9 -31
  166. package/engine/internal/unit+spellSteal.lua +1 -2
  167. package/engine/internal/unit+transport.lua +4 -10
  168. package/engine/internal/unit-missile-data.lua +58 -32
  169. package/engine/internal/unit-missile-launch.lua +70 -13
  170. package/engine/internal/unit.d.ts +91 -38
  171. package/engine/internal/unit.lua +667 -352
  172. package/engine/internal/utility.lua +12 -0
  173. package/engine/lightning.d.ts +12 -5
  174. package/engine/lightning.lua +48 -14
  175. package/engine/local-client.d.ts +35 -2
  176. package/engine/local-client.lua +367 -15
  177. package/engine/object-data/auxiliary/animation-name.d.ts +1 -0
  178. package/engine/object-data/auxiliary/animation-name.lua +16 -0
  179. package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
  180. package/engine/object-data/auxiliary/armor-type.lua +46 -0
  181. package/engine/object-data/auxiliary/attachment-preset.d.ts +14 -3
  182. package/engine/object-data/auxiliary/attachment-preset.lua +11 -3
  183. package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
  184. package/engine/object-data/auxiliary/attack-type.lua +42 -0
  185. package/engine/object-data/auxiliary/combat-classification.d.ts +0 -2
  186. package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
  187. package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
  188. package/engine/object-data/auxiliary/equipment-type.d.ts +12 -0
  189. package/engine/object-data/auxiliary/equipment-type.lua +26 -0
  190. package/engine/object-data/auxiliary/health-regeneration-type.d.ts +8 -0
  191. package/engine/object-data/auxiliary/health-regeneration-type.lua +2 -0
  192. package/engine/object-data/auxiliary/item-class.d.ts +11 -0
  193. package/engine/object-data/auxiliary/item-class.lua +2 -0
  194. package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
  195. package/engine/object-data/auxiliary/item-tag.lua +2 -0
  196. package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
  197. package/engine/object-data/auxiliary/movement-type.lua +22 -0
  198. package/engine/object-data/auxiliary/order-type.d.ts +939 -0
  199. package/engine/object-data/auxiliary/order-type.lua +2 -0
  200. package/engine/object-data/auxiliary/sound-eax.d.ts +10 -0
  201. package/engine/object-data/auxiliary/sound-eax.lua +2 -0
  202. package/engine/object-data/auxiliary/sound-preset-name.d.ts +5 -1
  203. package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
  204. package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +1 -1
  205. package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
  206. package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
  207. package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
  208. package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
  209. package/engine/object-data/entry/ability-type/armor-bonus.d.ts +8 -0
  210. package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
  211. package/engine/object-data/entry/ability-type/aura-of-blight.d.ts +13 -0
  212. package/engine/object-data/entry/ability-type/aura-of-blight.lua +39 -0
  213. package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
  214. package/engine/object-data/entry/ability-type/banshee.lua +13 -0
  215. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
  216. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
  217. package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
  218. package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
  219. package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
  220. package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
  221. package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
  222. package/engine/object-data/entry/ability-type/berserk.lua +13 -0
  223. package/engine/object-data/entry/ability-type/blank-configurable.d.ts +3 -1
  224. package/engine/object-data/entry/ability-type/blank-configurable.lua +42 -1
  225. package/engine/object-data/entry/ability-type/blank-passive.d.ts +4 -1
  226. package/engine/object-data/entry/ability-type/blank-passive.lua +27 -7
  227. package/engine/object-data/entry/ability-type/blink.d.ts +10 -0
  228. package/engine/object-data/entry/ability-type/blink.lua +39 -0
  229. package/engine/object-data/entry/ability-type/breath-of-fire.d.ts +11 -0
  230. package/engine/object-data/entry/ability-type/breath-of-fire.lua +27 -0
  231. package/engine/object-data/entry/ability-type/carrion-swarm.d.ts +14 -0
  232. package/engine/object-data/entry/ability-type/carrion-swarm.lua +65 -0
  233. package/engine/object-data/entry/ability-type/channel.d.ts +0 -1
  234. package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
  235. package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
  236. package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
  237. package/engine/object-data/entry/ability-type/consecration.lua +52 -0
  238. package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
  239. package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
  240. package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
  241. package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
  242. package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
  243. package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
  244. package/engine/object-data/entry/ability-type/disease-cloud.lua +2 -2
  245. package/engine/object-data/entry/ability-type/engineering-upgrade.lua +2 -2
  246. package/engine/object-data/entry/ability-type/ensnare.d.ts +12 -0
  247. package/engine/object-data/entry/ability-type/ensnare.lua +52 -0
  248. package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
  249. package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
  250. package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
  251. package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
  252. package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
  253. package/engine/object-data/entry/ability-type/equipment.lua +27 -0
  254. package/engine/object-data/entry/ability-type/feral-spirit.lua +2 -2
  255. package/engine/object-data/entry/ability-type/firebolt.d.ts +7 -0
  256. package/engine/object-data/entry/ability-type/firebolt.lua +13 -0
  257. package/engine/object-data/entry/ability-type/flame-strike.d.ts +25 -0
  258. package/engine/object-data/entry/ability-type/flame-strike.lua +92 -0
  259. package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
  260. package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
  261. package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
  262. package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
  263. package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
  264. package/engine/object-data/entry/ability-type/grit.lua +65 -0
  265. package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
  266. package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
  267. package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
  268. package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
  269. package/engine/object-data/entry/ability-type/{armor-increase.d.ts → healing-modifier.d.ts} +4 -3
  270. package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
  271. package/engine/object-data/entry/ability-type/healing-ward-aura.d.ts +13 -0
  272. package/engine/object-data/entry/ability-type/healing-ward-aura.lua +39 -0
  273. package/engine/object-data/entry/ability-type/health-bonus.d.ts +8 -0
  274. package/engine/object-data/entry/ability-type/health-bonus.lua +26 -0
  275. package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
  276. package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
  277. package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
  278. package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
  279. package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
  280. package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
  281. package/engine/object-data/entry/ability-type/item-life-regeneration.d.ts +10 -0
  282. package/engine/object-data/entry/ability-type/item-life-regeneration.lua +26 -0
  283. package/engine/object-data/entry/ability-type/life-drain.d.ts +37 -0
  284. package/engine/object-data/entry/ability-type/life-drain.lua +144 -0
  285. package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
  286. package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
  287. package/engine/object-data/entry/ability-type/mana-bonus.d.ts +8 -0
  288. package/engine/object-data/entry/ability-type/mana-bonus.lua +26 -0
  289. package/engine/object-data/entry/ability-type/mana-efficiency.d.ts +12 -0
  290. package/engine/object-data/entry/ability-type/mana-efficiency.lua +39 -0
  291. package/engine/object-data/entry/ability-type/mana-regeneration.d.ts +8 -0
  292. package/engine/object-data/entry/ability-type/mana-regeneration.lua +26 -0
  293. package/engine/object-data/entry/ability-type/mind-control.d.ts +21 -0
  294. package/engine/object-data/entry/ability-type/mind-control.lua +78 -0
  295. package/engine/object-data/entry/ability-type/mine.d.ts +10 -0
  296. package/engine/object-data/entry/ability-type/mine.lua +39 -0
  297. package/engine/object-data/entry/ability-type/on-attack-cast-spell.d.ts +21 -0
  298. package/engine/object-data/entry/ability-type/on-attack-cast-spell.lua +52 -0
  299. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.d.ts +19 -0
  300. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.lua +65 -0
  301. package/engine/object-data/entry/ability-type/on-hit-cast-spell.d.ts +15 -0
  302. package/engine/object-data/entry/ability-type/on-hit-cast-spell.lua +26 -0
  303. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.d.ts +6 -0
  304. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.lua +12 -0
  305. package/engine/object-data/entry/ability-type/permanent-invisibility.d.ts +8 -0
  306. package/engine/object-data/entry/ability-type/permanent-invisibility.lua +26 -0
  307. package/engine/object-data/entry/ability-type/phase-shift.d.ts +10 -0
  308. package/engine/object-data/entry/ability-type/phase-shift.lua +39 -0
  309. package/engine/object-data/entry/ability-type/phoenix-morph.lua +4 -4
  310. package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
  311. package/engine/object-data/entry/ability-type/provoke.lua +66 -0
  312. package/engine/object-data/entry/ability-type/rain-of-fire.d.ts +7 -0
  313. package/engine/object-data/entry/ability-type/rain-of-fire.lua +13 -0
  314. package/engine/object-data/entry/ability-type/raise-dead.d.ts +17 -0
  315. package/engine/object-data/entry/ability-type/raise-dead.lua +78 -0
  316. package/engine/object-data/entry/ability-type/raise-the-banner.d.ts +9 -0
  317. package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
  318. package/engine/object-data/entry/ability-type/reincarnation.d.ts +8 -0
  319. package/engine/object-data/entry/ability-type/reincarnation.lua +26 -0
  320. package/engine/object-data/entry/ability-type/resolve.d.ts +12 -0
  321. package/engine/object-data/entry/ability-type/resolve.lua +39 -0
  322. package/engine/object-data/entry/ability-type/righteous-fury.d.ts +33 -0
  323. package/engine/object-data/entry/ability-type/righteous-fury.lua +130 -0
  324. package/engine/object-data/entry/ability-type/sacred-aura.d.ts +27 -0
  325. package/engine/object-data/entry/ability-type/sacred-aura.lua +104 -0
  326. package/engine/object-data/entry/ability-type/shock-wave.d.ts +4 -0
  327. package/engine/object-data/entry/ability-type/shock-wave.lua +26 -0
  328. package/engine/object-data/entry/ability-type/slow-poison.d.ts +10 -0
  329. package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
  330. package/engine/object-data/entry/ability-type/soul-burn.d.ts +22 -0
  331. package/engine/object-data/entry/ability-type/soul-burn.lua +79 -0
  332. package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
  333. package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
  334. package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
  335. package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
  336. package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
  337. package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
  338. package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
  339. package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
  340. package/engine/object-data/entry/ability-type/spirit-touch.d.ts +2 -2
  341. package/engine/object-data/entry/ability-type/spirit-touch.lua +6 -6
  342. package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
  343. package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
  344. package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
  345. package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
  346. package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
  347. package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
  348. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
  349. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
  350. package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
  351. package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
  352. package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
  353. package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
  354. package/engine/object-data/entry/ability-type/summon-quilbeast.lua +2 -2
  355. package/engine/object-data/entry/ability-type/summon-water-elemental.lua +2 -2
  356. package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
  357. package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
  358. package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
  359. package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
  360. package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
  361. package/engine/object-data/entry/ability-type/talents.lua +27 -0
  362. package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
  363. package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
  364. package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
  365. package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
  366. package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
  367. package/engine/object-data/entry/ability-type/warcry.lua +26 -0
  368. package/engine/object-data/entry/ability-type/web.d.ts +12 -0
  369. package/engine/object-data/entry/ability-type/web.lua +52 -0
  370. package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
  371. package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
  372. package/engine/object-data/entry/ability-type.d.ts +42 -21
  373. package/engine/object-data/entry/ability-type.lua +338 -44
  374. package/engine/object-data/entry/buff-type/applicable.d.ts +0 -1
  375. package/engine/object-data/entry/buff-type/applicable.lua +143 -202
  376. package/engine/object-data/entry/buff-type/blank.d.ts +0 -1
  377. package/engine/object-data/entry/buff-type.d.ts +10 -13
  378. package/engine/object-data/entry/buff-type.lua +39 -29
  379. package/engine/object-data/entry/destructible-type.d.ts +32 -3
  380. package/engine/object-data/entry/destructible-type.lua +181 -0
  381. package/engine/object-data/entry/item-type/blank.d.ts +0 -1
  382. package/engine/object-data/entry/item-type.d.ts +32 -4
  383. package/engine/object-data/entry/item-type.lua +177 -2
  384. package/engine/object-data/entry/lightning-type.d.ts +6 -9
  385. package/engine/object-data/entry/lightning-type.lua +1 -1
  386. package/engine/object-data/entry/sound-preset.d.ts +33 -0
  387. package/engine/object-data/entry/sound-preset.lua +140 -0
  388. package/engine/object-data/entry/unit-type.d.ts +111 -6
  389. package/engine/object-data/entry/unit-type.lua +945 -118
  390. package/engine/object-data/entry/upgrade/blank.d.ts +0 -1
  391. package/engine/object-data/entry/upgrade.d.ts +2 -3
  392. package/engine/object-data/entry/upgrade.lua +4 -4
  393. package/engine/object-data/entry.d.ts +23 -17
  394. package/engine/object-data/entry.lua +68 -32
  395. package/engine/object-data/utility/object-data-entry-id-generator.lua +7 -0
  396. package/engine/object-field/ability.d.ts +33 -8
  397. package/engine/object-field/ability.lua +63 -3
  398. package/engine/object-field/item.d.ts +22 -0
  399. package/engine/object-field/item.lua +118 -0
  400. package/engine/object-field/unit.d.ts +72 -2
  401. package/engine/object-field/unit.lua +268 -4
  402. package/engine/object-field.d.ts +30 -10
  403. package/engine/object-field.lua +386 -119
  404. package/engine/random.d.ts +11 -0
  405. package/engine/random.lua +30 -0
  406. package/engine/standard/entries/ability-type.d.ts +3102 -7
  407. package/engine/standard/entries/ability-type.lua +0 -6
  408. package/engine/standard/entries/buff-type.d.ts +48 -0
  409. package/engine/standard/entries/buff-type.lua +46 -0
  410. package/engine/standard/entries/item-type.d.ts +1299 -0
  411. package/engine/standard/entries/item-type.lua +2 -0
  412. package/engine/standard/entries/lightning-type.d.ts +42 -15
  413. package/engine/standard/entries/lightning-type.lua +0 -14
  414. package/engine/standard/entries/sound-preset.d.ts +10 -0
  415. package/engine/standard/entries/sound-preset.lua +10 -0
  416. package/engine/standard/entries/unit-type.d.ts +47 -1
  417. package/engine/standard/entries/unit-type.lua +47 -1
  418. package/engine/standard/fields/ability.d.ts +5 -3
  419. package/engine/standard/fields/ability.lua +5 -3
  420. package/engine/standard/fields/item.d.ts +4 -0
  421. package/engine/standard/fields/item.lua +6 -0
  422. package/engine/standard/fields/unit.d.ts +12 -0
  423. package/engine/standard/fields/unit.lua +20 -0
  424. package/engine/synchronization.d.ts +11 -0
  425. package/engine/synchronization.lua +77 -0
  426. package/engine/text-tag.d.ts +36 -2
  427. package/engine/text-tag.lua +250 -10
  428. package/engine/unit.d.ts +14 -0
  429. package/engine/unit.lua +23 -2
  430. package/event.d.ts +3 -4
  431. package/event.lua +9 -5
  432. package/global/vec2.lua +1 -0
  433. package/index.d.ts +1 -0
  434. package/index.lua +1 -0
  435. package/lualib_bundle.lua +147 -43
  436. package/math/vec2.d.ts +2 -9
  437. package/math.d.ts +2 -2
  438. package/math.lua +14 -0
  439. package/net/socket.d.ts +7 -1
  440. package/net/socket.lua +45 -4
  441. package/network.d.ts +1 -0
  442. package/network.lua +28 -3
  443. package/objutil/ability.d.ts +0 -1
  444. package/objutil/buff.d.ts +0 -1
  445. package/objutil/buff.lua +13 -12
  446. package/objutil/object.d.ts +0 -1
  447. package/objutil/object.lua +1 -1
  448. package/objutil/unit.d.ts +0 -1
  449. package/objutil/unit.lua +8 -0
  450. package/operation.d.ts +8 -1
  451. package/operation.lua +38 -18
  452. package/package.json +3 -24
  453. package/patch-lua.d.ts +0 -0
  454. package/patch-lua.lua +25 -0
  455. package/patch-lualib.lua +1 -1
  456. package/property.d.ts +55 -0
  457. package/property.lua +374 -0
  458. package/string.d.ts +30 -0
  459. package/string.lua +14 -0
  460. package/util/stream.d.ts +0 -1
  461. package/utility/arrays.d.ts +19 -6
  462. package/utility/arrays.lua +60 -3
  463. package/utility/bit-set.d.ts +0 -2
  464. package/utility/callback-array.d.ts +17 -0
  465. package/utility/callback-array.lua +61 -0
  466. package/utility/functions.d.ts +8 -0
  467. package/utility/functions.lua +13 -0
  468. package/utility/lazy.d.ts +2 -0
  469. package/utility/lazy.lua +14 -0
  470. package/utility/linked-map.d.ts +35 -0
  471. package/utility/linked-map.lua +107 -0
  472. package/utility/linked-set.d.ts +17 -4
  473. package/utility/linked-set.lua +70 -3
  474. package/utility/lua-maps.d.ts +16 -4
  475. package/utility/lua-maps.lua +53 -2
  476. package/utility/lua-sets.d.ts +3 -2
  477. package/utility/lua-sets.lua +7 -0
  478. package/utility/random.d.ts +102 -0
  479. package/utility/random.lua +273 -0
  480. package/utility/records.lua +20 -1
  481. package/utility/reflection.lua +11 -7
  482. package/utility/types.d.ts +6 -2
  483. package/utility/unordered-map.d.ts +27 -0
  484. package/utility/unordered-map.lua +99 -0
  485. package/core/mapbounds.d.ts +0 -8
  486. package/core/mapbounds.lua +0 -12
  487. package/core/types/order.d.ts +0 -25
  488. package/core/types/order.lua +0 -55
  489. /package/engine/internal/{object-data/armor-increase.d.ts → mechanics/cast-ability.d.ts} +0 -0
  490. /package/engine/internal/object-data/{armor-increase.lua → armor-bonus.lua} +0 -0
  491. /package/engine/object-data/entry/ability-type/{attribute-increase.d.ts → attribute-bonus.d.ts} +0 -0
  492. /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,10 @@ end
182
484
  function UnitType.getObjectData(self, map)
183
485
  return map.objects.unit
184
486
  end
487
+ function UnitType.prototype.setDeathTypeFlag(self, flag, value)
488
+ local deathType = self:getNumberField("udea")
489
+ self:setNumberField("udea", value and deathType | flag or deathType & ~flag)
490
+ end
185
491
  UnitType.idGenerator = __TS__New(
186
492
  ObjectDataEntryIdGenerator,
187
493
  fourCC("x000")
@@ -191,10 +497,10 @@ __TS__SetDescriptor(
191
497
  "abilityTypeIds",
192
498
  {
193
499
  get = function(self)
194
- return self:getObjectDataEntryIdsField("uabi")
500
+ return self:getObjectDataEntryNumericIdsField("uabi")
195
501
  end,
196
502
  set = function(self, abilityTypeIds)
197
- self:setObjectDataEntryIdsField("uabi", abilityTypeIds)
503
+ self:setObjectDataEntryNumericIdsField("uabi", abilityTypeIds)
198
504
  end
199
505
  },
200
506
  true
@@ -204,10 +510,10 @@ __TS__SetDescriptor(
204
510
  "defaultActiveAbilityTypeId",
205
511
  {
206
512
  get = function(self)
207
- return self:getObjectDataEntryIdsField("udaa")[1]
513
+ return self:getObjectDataEntryNumericIdsField("udaa")[1]
208
514
  end,
209
515
  set = function(self, abilityTypeId)
210
- self:setObjectDataEntryIdsField(
516
+ self:setObjectDataEntryNumericIdsField(
211
517
  "udaa",
212
518
  arrayOfNotNull(abilityTypeId)
213
519
  )
@@ -306,6 +612,32 @@ __TS__SetDescriptor(
306
612
  },
307
613
  true
308
614
  )
615
+ __TS__SetDescriptor(
616
+ UnitType.prototype,
617
+ "isDecayable",
618
+ {
619
+ get = function(self)
620
+ return self:getNumberField("udea") & DEATH_TYPE_DECAYABLE ~= 0
621
+ end,
622
+ set = function(self, isDecayable)
623
+ self:setDeathTypeFlag(DEATH_TYPE_DECAYABLE, isDecayable)
624
+ end
625
+ },
626
+ true
627
+ )
628
+ __TS__SetDescriptor(
629
+ UnitType.prototype,
630
+ "isRaisable",
631
+ {
632
+ get = function(self)
633
+ return self:getNumberField("udea") & DEATH_TYPE_RAISABLE ~= 0
634
+ end,
635
+ set = function(self, isRaisable)
636
+ self:setDeathTypeFlag(DEATH_TYPE_RAISABLE, isRaisable)
637
+ end
638
+ },
639
+ true
640
+ )
309
641
  __TS__SetDescriptor(
310
642
  UnitType.prototype,
311
643
  "iconPath",
@@ -345,6 +677,19 @@ __TS__SetDescriptor(
345
677
  },
346
678
  true
347
679
  )
680
+ __TS__SetDescriptor(
681
+ UnitType.prototype,
682
+ "iconPathDE",
683
+ {
684
+ get = function(self)
685
+ return self:getStringField("uico:de")
686
+ end,
687
+ set = function(self, iconPathDE)
688
+ self:setStringField("uico:de", iconPathDE)
689
+ end
690
+ },
691
+ true
692
+ )
348
693
  __TS__SetDescriptor(
349
694
  UnitType.prototype,
350
695
  "isMissileScalingEnabled",
@@ -449,6 +794,19 @@ __TS__SetDescriptor(
449
794
  },
450
795
  true
451
796
  )
797
+ __TS__SetDescriptor(
798
+ UnitType.prototype,
799
+ "missileLaunchOffsetZDE",
800
+ {
801
+ get = function(self)
802
+ return self:getNumberField("ulpz:de")
803
+ end,
804
+ set = function(self, missileLaunchOffsetZDE)
805
+ self:setNumberField("ulpz:de", missileLaunchOffsetZDE)
806
+ end
807
+ },
808
+ true
809
+ )
452
810
  __TS__SetDescriptor(
453
811
  UnitType.prototype,
454
812
  "missileLaunchSwimmingOffsetZ",
@@ -488,6 +846,19 @@ __TS__SetDescriptor(
488
846
  },
489
847
  true
490
848
  )
849
+ __TS__SetDescriptor(
850
+ UnitType.prototype,
851
+ "missileLaunchSwimmingOffsetZDE",
852
+ {
853
+ get = function(self)
854
+ return self:getNumberField("ulsz:de")
855
+ end,
856
+ set = function(self, missileLaunchSwimmingOffsetZDE)
857
+ self:setNumberField("ulsz:de", missileLaunchSwimmingOffsetZDE)
858
+ end
859
+ },
860
+ true
861
+ )
491
862
  __TS__SetDescriptor(
492
863
  UnitType.prototype,
493
864
  "missileLaunchVisualOffsetX",
@@ -503,182 +874,380 @@ __TS__SetDescriptor(
503
874
  )
504
875
  __TS__SetDescriptor(
505
876
  UnitType.prototype,
506
- "missileLaunchVisualOffsetXSD",
877
+ "missileLaunchVisualOffsetXSD",
878
+ {
879
+ get = function(self)
880
+ return self:getNumberField("projectileVisOffsetX:sd")
881
+ end,
882
+ set = function(self, missileLaunchVisualOffsetXSD)
883
+ self:setNumberField("projectileVisOffsetX:sd", missileLaunchVisualOffsetXSD)
884
+ end
885
+ },
886
+ true
887
+ )
888
+ __TS__SetDescriptor(
889
+ UnitType.prototype,
890
+ "missileLaunchVisualOffsetXHD",
891
+ {
892
+ get = function(self)
893
+ return self:getNumberField("projectileVisOffsetX:hd")
894
+ end,
895
+ set = function(self, missileLaunchVisualOffsetXHD)
896
+ self:setNumberField("projectileVisOffsetX:hd", missileLaunchVisualOffsetXHD)
897
+ end
898
+ },
899
+ true
900
+ )
901
+ __TS__SetDescriptor(
902
+ UnitType.prototype,
903
+ "missileLaunchVisualOffsetXDE",
904
+ {
905
+ get = function(self)
906
+ return self:getNumberField("projectileVisOffsetX:de")
907
+ end,
908
+ set = function(self, missileLaunchVisualOffsetXDE)
909
+ self:setNumberField("projectileVisOffsetX:de", missileLaunchVisualOffsetXDE)
910
+ end
911
+ },
912
+ true
913
+ )
914
+ __TS__SetDescriptor(
915
+ UnitType.prototype,
916
+ "missileLaunchVisualOffsetY",
917
+ {
918
+ get = function(self)
919
+ return self:getNumberField("projectileVisOffsetY")
920
+ end,
921
+ set = function(self, missileLaunchVisualOffsetY)
922
+ self:setNumberField("projectileVisOffsetY", missileLaunchVisualOffsetY)
923
+ end
924
+ },
925
+ true
926
+ )
927
+ __TS__SetDescriptor(
928
+ UnitType.prototype,
929
+ "missileLaunchVisualOffsetYSD",
930
+ {
931
+ get = function(self)
932
+ return self:getNumberField("projectileVisOffsetY:sd")
933
+ end,
934
+ set = function(self, missileLaunchVisualOffsetYSD)
935
+ self:setNumberField("projectileVisOffsetY:sd", missileLaunchVisualOffsetYSD)
936
+ end
937
+ },
938
+ true
939
+ )
940
+ __TS__SetDescriptor(
941
+ UnitType.prototype,
942
+ "missileLaunchVisualOffsetYHD",
943
+ {
944
+ get = function(self)
945
+ return self:getNumberField("projectileVisOffsetY:hd")
946
+ end,
947
+ set = function(self, missileLaunchVisualOffsetYHD)
948
+ self:setNumberField("projectileVisOffsetY:hd", missileLaunchVisualOffsetYHD)
949
+ end
950
+ },
951
+ true
952
+ )
953
+ __TS__SetDescriptor(
954
+ UnitType.prototype,
955
+ "missileLaunchVisualOffsetYDE",
956
+ {
957
+ get = function(self)
958
+ return self:getNumberField("projectileVisOffsetY:de")
959
+ end,
960
+ set = function(self, missileLaunchVisualOffsetYDE)
961
+ self:setNumberField("projectileVisOffsetY:de", missileLaunchVisualOffsetYDE)
962
+ end
963
+ },
964
+ true
965
+ )
966
+ __TS__SetDescriptor(
967
+ UnitType.prototype,
968
+ "missileImpactOffsetZ",
969
+ {
970
+ get = function(self)
971
+ return self:getNumberField("uimz")
972
+ end,
973
+ set = function(self, missileImpactOffsetZ)
974
+ self:setNumberField("uimz", missileImpactOffsetZ)
975
+ end
976
+ },
977
+ true
978
+ )
979
+ __TS__SetDescriptor(
980
+ UnitType.prototype,
981
+ "missileImpactOffsetZSD",
982
+ {
983
+ get = function(self)
984
+ return self:getNumberField("uimz:sd")
985
+ end,
986
+ set = function(self, missileImpactOffsetZSD)
987
+ self:setNumberField("uimz:sd", missileImpactOffsetZSD)
988
+ end
989
+ },
990
+ true
991
+ )
992
+ __TS__SetDescriptor(
993
+ UnitType.prototype,
994
+ "missileImpactOffsetZHD",
995
+ {
996
+ get = function(self)
997
+ return self:getNumberField("uimz:hd")
998
+ end,
999
+ set = function(self, missileImpactOffsetZHD)
1000
+ self:setNumberField("uimz:hd", missileImpactOffsetZHD)
1001
+ end
1002
+ },
1003
+ true
1004
+ )
1005
+ __TS__SetDescriptor(
1006
+ UnitType.prototype,
1007
+ "missileImpactOffsetZDE",
1008
+ {
1009
+ get = function(self)
1010
+ return self:getNumberField("uimz:de")
1011
+ end,
1012
+ set = function(self, missileImpactOffsetZDE)
1013
+ self:setNumberField("uimz:de", missileImpactOffsetZDE)
1014
+ end
1015
+ },
1016
+ true
1017
+ )
1018
+ __TS__SetDescriptor(
1019
+ UnitType.prototype,
1020
+ "missileImpactSwimmingOffsetZ",
1021
+ {
1022
+ get = function(self)
1023
+ return self:getNumberField("uisz")
1024
+ end,
1025
+ set = function(self, missileImpactSwimmingOffsetZ)
1026
+ self:setNumberField("uisz", missileImpactSwimmingOffsetZ)
1027
+ end
1028
+ },
1029
+ true
1030
+ )
1031
+ __TS__SetDescriptor(
1032
+ UnitType.prototype,
1033
+ "missileImpactSwimmingOffsetZSD",
1034
+ {
1035
+ get = function(self)
1036
+ return self:getNumberField("uisz:sd")
1037
+ end,
1038
+ set = function(self, missileImpactSwimmingOffsetZSD)
1039
+ self:setNumberField("uisz:sd", missileImpactSwimmingOffsetZSD)
1040
+ end
1041
+ },
1042
+ true
1043
+ )
1044
+ __TS__SetDescriptor(
1045
+ UnitType.prototype,
1046
+ "missileImpactSwimmingOffsetZHD",
1047
+ {
1048
+ get = function(self)
1049
+ return self:getNumberField("uisz:hd")
1050
+ end,
1051
+ set = function(self, missileImpactSwimmingOffsetZHD)
1052
+ self:setNumberField("uisz:hd", missileImpactSwimmingOffsetZHD)
1053
+ end
1054
+ },
1055
+ true
1056
+ )
1057
+ __TS__SetDescriptor(
1058
+ UnitType.prototype,
1059
+ "missileImpactSwimmingOffsetZDE",
507
1060
  {
508
1061
  get = function(self)
509
- return self:getNumberField("projectileVisOffsetX:sd")
1062
+ return self:getNumberField("uisz:de")
510
1063
  end,
511
- set = function(self, missileLaunchVisualOffsetXSD)
512
- self:setNumberField("projectileVisOffsetX:sd", missileLaunchVisualOffsetXSD)
1064
+ set = function(self, missileImpactSwimmingOffsetZDE)
1065
+ self:setNumberField("uisz:de", missileImpactSwimmingOffsetZDE)
513
1066
  end
514
1067
  },
515
1068
  true
516
1069
  )
517
1070
  __TS__SetDescriptor(
518
1071
  UnitType.prototype,
519
- "missileLaunchVisualOffsetXHD",
1072
+ "modelPath",
520
1073
  {
521
1074
  get = function(self)
522
- return self:getNumberField("projectileVisOffsetX:hd")
1075
+ return self:getStringField("umdl")
523
1076
  end,
524
- set = function(self, missileLaunchVisualOffsetXHD)
525
- self:setNumberField("projectileVisOffsetX:hd", missileLaunchVisualOffsetXHD)
1077
+ set = function(self, modelPath)
1078
+ self:setStringField("umdl", modelPath)
1079
+ if not self.isPortraitModelPathSet and WarscriptConfig.AUTOMATICALLY_SET_UNIT_TYPE_PORTRAIT_MODEL_PATH then
1080
+ self:setStringField("upor", "")
1081
+ end
526
1082
  end
527
1083
  },
528
1084
  true
529
1085
  )
530
1086
  __TS__SetDescriptor(
531
1087
  UnitType.prototype,
532
- "missileLaunchVisualOffsetY",
1088
+ "modelPathSD",
533
1089
  {
534
1090
  get = function(self)
535
- return self:getNumberField("projectileVisOffsetY")
1091
+ return self:getStringField("umdl:sd")
536
1092
  end,
537
- set = function(self, missileLaunchVisualOffsetY)
538
- self:setNumberField("projectileVisOffsetY", missileLaunchVisualOffsetY)
1093
+ set = function(self, modelPathSD)
1094
+ self:setStringField("umdl:sd", modelPathSD)
1095
+ if not self.isPortraitModelPathSet and WarscriptConfig.AUTOMATICALLY_SET_UNIT_TYPE_PORTRAIT_MODEL_PATH then
1096
+ self:setStringField("upor:sd", "")
1097
+ end
539
1098
  end
540
1099
  },
541
1100
  true
542
1101
  )
543
1102
  __TS__SetDescriptor(
544
1103
  UnitType.prototype,
545
- "missileLaunchVisualOffsetYSD",
1104
+ "modelPathHD",
546
1105
  {
547
1106
  get = function(self)
548
- return self:getNumberField("projectileVisOffsetY:sd")
1107
+ return self:getStringField("umdl:hd")
549
1108
  end,
550
- set = function(self, missileLaunchVisualOffsetYSD)
551
- self:setNumberField("projectileVisOffsetY:sd", missileLaunchVisualOffsetYSD)
1109
+ set = function(self, modelPathHD)
1110
+ self:setStringField("umdl:hd", modelPathHD)
1111
+ if not self.isPortraitModelPathSet and WarscriptConfig.AUTOMATICALLY_SET_UNIT_TYPE_PORTRAIT_MODEL_PATH then
1112
+ self:setStringField("upor:hd", "")
1113
+ end
552
1114
  end
553
1115
  },
554
1116
  true
555
1117
  )
556
1118
  __TS__SetDescriptor(
557
1119
  UnitType.prototype,
558
- "missileLaunchVisualOffsetYHD",
1120
+ "modelPathDE",
559
1121
  {
560
1122
  get = function(self)
561
- return self:getNumberField("projectileVisOffsetY:hd")
1123
+ return self:getStringField("umdl:de")
562
1124
  end,
563
- set = function(self, missileLaunchVisualOffsetYHD)
564
- self:setNumberField("projectileVisOffsetY:hd", missileLaunchVisualOffsetYHD)
1125
+ set = function(self, modelPathDE)
1126
+ self:setStringField("umdl:de", modelPathDE)
1127
+ if not self.isPortraitModelPathSet and WarscriptConfig.AUTOMATICALLY_SET_UNIT_TYPE_PORTRAIT_MODEL_PATH then
1128
+ self:setStringField("upor:de", "")
1129
+ end
565
1130
  end
566
1131
  },
567
1132
  true
568
1133
  )
569
1134
  __TS__SetDescriptor(
570
1135
  UnitType.prototype,
571
- "missileImpactOffsetZ",
1136
+ "portraitModelPath",
572
1137
  {
573
1138
  get = function(self)
574
- return self:getNumberField("uimz")
1139
+ return self:getStringField("upor")
575
1140
  end,
576
- set = function(self, missileImpactOffsetZ)
577
- self:setNumberField("uimz", missileImpactOffsetZ)
1141
+ set = function(self, portraitModelPath)
1142
+ self:setStringField("upor", portraitModelPath)
1143
+ self.isPortraitModelPathSet = true
578
1144
  end
579
1145
  },
580
1146
  true
581
1147
  )
582
1148
  __TS__SetDescriptor(
583
1149
  UnitType.prototype,
584
- "missileImpactOffsetZSD",
1150
+ "portraitModelPathSD",
585
1151
  {
586
1152
  get = function(self)
587
- return self:getNumberField("uimz:sd")
1153
+ return self:getStringField("upor:sd")
588
1154
  end,
589
- set = function(self, missileImpactOffsetZSD)
590
- self:setNumberField("uimz:sd", missileImpactOffsetZSD)
1155
+ set = function(self, portraitModelPathSD)
1156
+ self:setStringField("upor:sd", portraitModelPathSD)
1157
+ self.isPortraitModelPathSet = true
591
1158
  end
592
1159
  },
593
1160
  true
594
1161
  )
595
1162
  __TS__SetDescriptor(
596
1163
  UnitType.prototype,
597
- "missileImpactOffsetZHD",
1164
+ "portraitModelPathHD",
598
1165
  {
599
1166
  get = function(self)
600
- return self:getNumberField("uimz:hd")
1167
+ return self:getStringField("upor:hd")
601
1168
  end,
602
- set = function(self, missileImpactOffsetZHD)
603
- self:setNumberField("uimz:hd", missileImpactOffsetZHD)
1169
+ set = function(self, portraitModelPathHD)
1170
+ self:setStringField("upor:hd", portraitModelPathHD)
1171
+ self.isPortraitModelPathSet = true
604
1172
  end
605
1173
  },
606
1174
  true
607
1175
  )
608
1176
  __TS__SetDescriptor(
609
1177
  UnitType.prototype,
610
- "missileImpactSwimmingOffsetZ",
1178
+ "portraitModelPathDE",
611
1179
  {
612
1180
  get = function(self)
613
- return self:getNumberField("uisz")
1181
+ return self:getStringField("upor:de")
614
1182
  end,
615
- set = function(self, missileImpactSwimmingOffsetZ)
616
- self:setNumberField("uisz", missileImpactSwimmingOffsetZ)
1183
+ set = function(self, portraitModelPathDE)
1184
+ self:setStringField("upor:de", portraitModelPathDE)
1185
+ self.isPortraitModelPathSet = true
617
1186
  end
618
1187
  },
619
1188
  true
620
1189
  )
621
1190
  __TS__SetDescriptor(
622
1191
  UnitType.prototype,
623
- "missileImpactSwimmingOffsetZSD",
1192
+ "runSpeed",
624
1193
  {
625
1194
  get = function(self)
626
- return self:getNumberField("uisz:sd")
1195
+ return self:getNumberField("urun")
627
1196
  end,
628
- set = function(self, missileImpactSwimmingOffsetZSD)
629
- self:setNumberField("uisz:sd", missileImpactSwimmingOffsetZSD)
1197
+ set = function(self, runSpeed)
1198
+ self:setNumberField("urun", runSpeed)
630
1199
  end
631
1200
  },
632
1201
  true
633
1202
  )
634
1203
  __TS__SetDescriptor(
635
1204
  UnitType.prototype,
636
- "missileImpactSwimmingOffsetZHD",
1205
+ "runSpeedSD",
637
1206
  {
638
1207
  get = function(self)
639
- return self:getNumberField("uisz:hd")
1208
+ return self:getNumberField("urun:sd")
640
1209
  end,
641
- set = function(self, missileImpactSwimmingOffsetZHD)
642
- self:setNumberField("uisz:hd", missileImpactSwimmingOffsetZHD)
1210
+ set = function(self, runSpeedSD)
1211
+ self:setNumberField("urun:sd", runSpeedSD)
643
1212
  end
644
1213
  },
645
1214
  true
646
1215
  )
647
1216
  __TS__SetDescriptor(
648
1217
  UnitType.prototype,
649
- "modelPath",
1218
+ "runSpeedHD",
650
1219
  {
651
1220
  get = function(self)
652
- return self:getStringField("umdl")
1221
+ return self:getNumberField("urun:hd")
653
1222
  end,
654
- set = function(self, modelPath)
655
- self:setStringField("umdl", modelPath)
1223
+ set = function(self, runSpeedHD)
1224
+ self:setNumberField("urun:hd", runSpeedHD)
656
1225
  end
657
1226
  },
658
1227
  true
659
1228
  )
660
1229
  __TS__SetDescriptor(
661
1230
  UnitType.prototype,
662
- "modelPathSD",
1231
+ "runSpeedDE",
663
1232
  {
664
1233
  get = function(self)
665
- return self:getStringField("umdl:sd")
1234
+ return self:getNumberField("urun:de")
666
1235
  end,
667
- set = function(self, modelPathSD)
668
- self:setStringField("umdl:sd", modelPathSD)
1236
+ set = function(self, runSpeedDE)
1237
+ self:setNumberField("urun:de", runSpeedDE)
669
1238
  end
670
1239
  },
671
1240
  true
672
1241
  )
673
1242
  __TS__SetDescriptor(
674
1243
  UnitType.prototype,
675
- "modelPathHD",
1244
+ "selectionCircleHeight",
676
1245
  {
677
1246
  get = function(self)
678
- return self:getStringField("umdl:hd")
1247
+ return self:getNumberField("uslz")
679
1248
  end,
680
- set = function(self, modelPathHD)
681
- self:setStringField("umdl:hd", modelPathHD)
1249
+ set = function(self, height)
1250
+ self:setNumberField("uslz", height)
682
1251
  end
683
1252
  },
684
1253
  true
@@ -722,6 +1291,19 @@ __TS__SetDescriptor(
722
1291
  },
723
1292
  true
724
1293
  )
1294
+ __TS__SetDescriptor(
1295
+ UnitType.prototype,
1296
+ "selectionCircleScaleDE",
1297
+ {
1298
+ get = function(self)
1299
+ return self:getNumberField("ussc:de")
1300
+ end,
1301
+ set = function(self, selectionCircleScaleDE)
1302
+ self:setNumberField("ussc:de", selectionCircleScaleDE)
1303
+ end
1304
+ },
1305
+ true
1306
+ )
725
1307
  __TS__SetDescriptor(
726
1308
  UnitType.prototype,
727
1309
  "scale",
@@ -761,6 +1343,19 @@ __TS__SetDescriptor(
761
1343
  },
762
1344
  true
763
1345
  )
1346
+ __TS__SetDescriptor(
1347
+ UnitType.prototype,
1348
+ "scaleDE",
1349
+ {
1350
+ get = function(self)
1351
+ return self:getNumberField("usca:de")
1352
+ end,
1353
+ set = function(self, scaleDE)
1354
+ self:setNumberField("usca:de", scaleDE)
1355
+ end
1356
+ },
1357
+ true
1358
+ )
764
1359
  __TS__SetDescriptor(
765
1360
  UnitType.prototype,
766
1361
  "scoreScreenIconPath",
@@ -800,6 +1395,19 @@ __TS__SetDescriptor(
800
1395
  },
801
1396
  true
802
1397
  )
1398
+ __TS__SetDescriptor(
1399
+ UnitType.prototype,
1400
+ "scoreScreenIconPathDE",
1401
+ {
1402
+ get = function(self)
1403
+ return self:getStringField("ussi:de")
1404
+ end,
1405
+ set = function(self, scoreScreenIconPathDE)
1406
+ self:setStringField("ussi:de", scoreScreenIconPathDE)
1407
+ end
1408
+ },
1409
+ true
1410
+ )
803
1411
  __TS__SetDescriptor(
804
1412
  UnitType.prototype,
805
1413
  "specialEffectModelPath",
@@ -839,6 +1447,19 @@ __TS__SetDescriptor(
839
1447
  },
840
1448
  true
841
1449
  )
1450
+ __TS__SetDescriptor(
1451
+ UnitType.prototype,
1452
+ "specialEffectModelPathDE",
1453
+ {
1454
+ get = function(self)
1455
+ return self:getStringField("uspa:de")
1456
+ end,
1457
+ set = function(self, specialEffectModelPathDE)
1458
+ self:setStringField("uspa:de", specialEffectModelPathDE)
1459
+ end
1460
+ },
1461
+ true
1462
+ )
842
1463
  __TS__SetDescriptor(
843
1464
  UnitType.prototype,
844
1465
  "shadowImageHeight",
@@ -891,6 +1512,71 @@ __TS__SetDescriptor(
891
1512
  },
892
1513
  true
893
1514
  )
1515
+ __TS__SetDescriptor(
1516
+ UnitType.prototype,
1517
+ "walkSpeed",
1518
+ {
1519
+ get = function(self)
1520
+ return self:getNumberField("uwal")
1521
+ end,
1522
+ set = function(self, walkSpeed)
1523
+ self:setNumberField("uwal", walkSpeed)
1524
+ end
1525
+ },
1526
+ true
1527
+ )
1528
+ __TS__SetDescriptor(
1529
+ UnitType.prototype,
1530
+ "walkSpeedSD",
1531
+ {
1532
+ get = function(self)
1533
+ return self:getNumberField("uwal:sd")
1534
+ end,
1535
+ set = function(self, walkSpeedSD)
1536
+ self:setNumberField("uwal:sd", walkSpeedSD)
1537
+ end
1538
+ },
1539
+ true
1540
+ )
1541
+ __TS__SetDescriptor(
1542
+ UnitType.prototype,
1543
+ "walkSpeedHD",
1544
+ {
1545
+ get = function(self)
1546
+ return self:getNumberField("uwal:hd")
1547
+ end,
1548
+ set = function(self, walkSpeedHD)
1549
+ self:setNumberField("uwal:hd", walkSpeedHD)
1550
+ end
1551
+ },
1552
+ true
1553
+ )
1554
+ __TS__SetDescriptor(
1555
+ UnitType.prototype,
1556
+ "walkSpeedDE",
1557
+ {
1558
+ get = function(self)
1559
+ return self:getNumberField("uwal:de")
1560
+ end,
1561
+ set = function(self, walkSpeedDE)
1562
+ self:setNumberField("uwal:de", walkSpeedDE)
1563
+ end
1564
+ },
1565
+ true
1566
+ )
1567
+ __TS__SetDescriptor(
1568
+ UnitType.prototype,
1569
+ "armor",
1570
+ {
1571
+ get = function(self)
1572
+ return self:getNumberField("udef")
1573
+ end,
1574
+ set = function(self, armor)
1575
+ self:setNumberField("udef", armor)
1576
+ end
1577
+ },
1578
+ true
1579
+ )
894
1580
  __TS__SetDescriptor(
895
1581
  UnitType.prototype,
896
1582
  "armorSoundType",
@@ -930,6 +1616,35 @@ __TS__SetDescriptor(
930
1616
  },
931
1617
  true
932
1618
  )
1619
+ __TS__SetDescriptor(
1620
+ UnitType.prototype,
1621
+ "armorSoundTypeDE",
1622
+ {
1623
+ get = function(self)
1624
+ return self:getStringField("uarm:de")
1625
+ end,
1626
+ set = function(self, armorSoundTypeDE)
1627
+ self:setStringField("uarm:de", armorSoundTypeDE)
1628
+ end
1629
+ },
1630
+ true
1631
+ )
1632
+ __TS__SetDescriptor(
1633
+ UnitType.prototype,
1634
+ "armorType",
1635
+ {
1636
+ get = function(self)
1637
+ return stringToArmorType(self:getStringField("udty"))
1638
+ end,
1639
+ set = function(self, armorType)
1640
+ self:setStringField(
1641
+ "udty",
1642
+ armorTypeToString(armorType)
1643
+ )
1644
+ end
1645
+ },
1646
+ true
1647
+ )
933
1648
  __TS__SetDescriptor(
934
1649
  UnitType.prototype,
935
1650
  "combatClassifications",
@@ -948,7 +1663,7 @@ __TS__SetDescriptor(
948
1663
  )
949
1664
  __TS__SetDescriptor(
950
1665
  UnitType.prototype,
951
- "unitClassifications",
1666
+ "classifications",
952
1667
  {
953
1668
  get = function(self)
954
1669
  return stringArrayToUnitClassifications(self:getStringsField("utyp"))
@@ -964,25 +1679,25 @@ __TS__SetDescriptor(
964
1679
  )
965
1680
  __TS__SetDescriptor(
966
1681
  UnitType.prototype,
967
- "firstWeapon",
1682
+ "weapons",
968
1683
  {get = function(self)
969
- return self.weapons[1]
1684
+ return getOrCreateUnitTypeWeapons(self)
970
1685
  end},
971
1686
  true
972
1687
  )
973
1688
  __TS__SetDescriptor(
974
1689
  UnitType.prototype,
975
- "secondWeapon",
1690
+ "firstWeapon",
976
1691
  {get = function(self)
977
- return self.weapons[2]
1692
+ return self.weapons[1]
978
1693
  end},
979
1694
  true
980
1695
  )
981
1696
  __TS__SetDescriptor(
982
1697
  UnitType.prototype,
983
- "weapons",
1698
+ "secondWeapon",
984
1699
  {get = function(self)
985
- return getOrCreateUnitTypeWeapons(self)
1700
+ return self.weapons[2]
986
1701
  end},
987
1702
  true
988
1703
  )
@@ -1056,10 +1771,13 @@ __TS__SetDescriptor(
1056
1771
  "movementType",
1057
1772
  {
1058
1773
  get = function(self)
1059
- return self:getStringField("umvt")
1774
+ return stringToMovementType(self:getStringField("umvt"))
1060
1775
  end,
1061
1776
  set = function(self, movementType)
1062
- self:setStringField("umvt", movementType)
1777
+ self:setStringField(
1778
+ "umvt",
1779
+ movementTypeToString(movementType)
1780
+ )
1063
1781
  end
1064
1782
  },
1065
1783
  true
@@ -1168,6 +1886,84 @@ __TS__SetDescriptor(
1168
1886
  },
1169
1887
  true
1170
1888
  )
1889
+ __TS__SetDescriptor(
1890
+ UnitType.prototype,
1891
+ "healthRegenerationRate",
1892
+ {
1893
+ get = function(self)
1894
+ return self:getNumberField("uhpr")
1895
+ end,
1896
+ set = function(self, healthRegenerationRate)
1897
+ self:setNumberField("uhpr", healthRegenerationRate)
1898
+ end
1899
+ },
1900
+ true
1901
+ )
1902
+ __TS__SetDescriptor(
1903
+ UnitType.prototype,
1904
+ "level",
1905
+ {
1906
+ get = function(self)
1907
+ return self:getNumberField("ulev")
1908
+ end,
1909
+ set = function(self, level)
1910
+ self:setNumberField("ulev", level)
1911
+ end
1912
+ },
1913
+ true
1914
+ )
1915
+ __TS__SetDescriptor(
1916
+ UnitType.prototype,
1917
+ "manaRegenerationRate",
1918
+ {
1919
+ get = function(self)
1920
+ return self:getNumberField("umpr")
1921
+ end,
1922
+ set = function(self, manaRegenerationRate)
1923
+ self:setNumberField("umpr", manaRegenerationRate)
1924
+ end
1925
+ },
1926
+ true
1927
+ )
1928
+ __TS__SetDescriptor(
1929
+ UnitType.prototype,
1930
+ "maximumHealth",
1931
+ {
1932
+ get = function(self)
1933
+ return self:getNumberField("uhpm")
1934
+ end,
1935
+ set = function(self, maximumHealth)
1936
+ self:setNumberField("uhpm", maximumHealth)
1937
+ end
1938
+ },
1939
+ true
1940
+ )
1941
+ __TS__SetDescriptor(
1942
+ UnitType.prototype,
1943
+ "maximumMana",
1944
+ {
1945
+ get = function(self)
1946
+ return self:getNumberField("umpm")
1947
+ end,
1948
+ set = function(self, maximumMana)
1949
+ self:setNumberField("umpm", maximumMana)
1950
+ end
1951
+ },
1952
+ true
1953
+ )
1954
+ __TS__SetDescriptor(
1955
+ UnitType.prototype,
1956
+ "initialMana",
1957
+ {
1958
+ get = function(self)
1959
+ return self:getNumberField("umpi")
1960
+ end,
1961
+ set = function(self, initialMana)
1962
+ self:setNumberField("umpi", initialMana)
1963
+ end
1964
+ },
1965
+ true
1966
+ )
1171
1967
  __TS__SetDescriptor(
1172
1968
  UnitType.prototype,
1173
1969
  "isStructure",
@@ -1199,10 +1995,10 @@ __TS__SetDescriptor(
1199
1995
  "affectingUpgradeIds",
1200
1996
  {
1201
1997
  get = function(self)
1202
- return self:getObjectDataEntryIdsField("upgr")
1998
+ return self:getObjectDataEntryNumericIdsField("upgr")
1203
1999
  end,
1204
2000
  set = function(self, affectingUpgradeIds)
1205
- self:setObjectDataEntryIdsField("upgr", affectingUpgradeIds)
2001
+ self:setObjectDataEntryNumericIdsField("upgr", affectingUpgradeIds)
1206
2002
  end
1207
2003
  },
1208
2004
  true
@@ -1262,11 +2058,11 @@ __TS__SetDescriptor(
1262
2058
  implementReadonlyNumberIndexSupplier(
1263
2059
  ____exports.UnitType,
1264
2060
  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
2061
+ local ____class_37 = __TS__Class()
2062
+ ____class_37.name = ____class_37.name
2063
+ __TS__ClassExtends(____class_37, ____exports.UnitType)
2064
+ ____class_37.BASE_ID = id
2065
+ return ____class_37
1270
2066
  end
1271
2067
  )
1272
2068
  ____exports.HeroUnitType = __TS__Class()
@@ -1285,10 +2081,41 @@ __TS__SetDescriptor(
1285
2081
  "heroAbilityTypeIds",
1286
2082
  {
1287
2083
  get = function(self)
1288
- return self:getObjectDataEntryIdsField("uhab")
2084
+ return self:getObjectDataEntryNumericIdsField("uhab")
1289
2085
  end,
1290
2086
  set = function(self, heroAbilityTypeIds)
1291
- self:setObjectDataEntryIdsField("uhab", heroAbilityTypeIds)
2087
+ self:setObjectDataEntryNumericIdsField("uhab", heroAbilityTypeIds)
2088
+ end
2089
+ },
2090
+ true
2091
+ )
2092
+ __TS__SetDescriptor(
2093
+ HeroUnitType.prototype,
2094
+ "properNames",
2095
+ {
2096
+ get = function(self)
2097
+ return self:getStringsField("upro")
2098
+ end,
2099
+ set = function(self, properNames)
2100
+ if __TS__ArrayIsArray(properNames) then
2101
+ self:setStringsField("upro", properNames)
2102
+ self:setNumberField("upru", #properNames)
2103
+ else
2104
+ self:setStringField("upro", properNames)
2105
+ end
2106
+ end
2107
+ },
2108
+ true
2109
+ )
2110
+ __TS__SetDescriptor(
2111
+ HeroUnitType.prototype,
2112
+ "properNameCount",
2113
+ {
2114
+ get = function(self)
2115
+ return self:getNumberField("upru")
2116
+ end,
2117
+ set = function(self, properNameCount)
2118
+ self:setNumberField("upru", properNameCount)
1292
2119
  end
1293
2120
  },
1294
2121
  true
@@ -1296,11 +2123,11 @@ __TS__SetDescriptor(
1296
2123
  implementReadonlyNumberIndexSupplier(
1297
2124
  ____exports.HeroUnitType,
1298
2125
  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
2126
+ local ____class_38 = __TS__Class()
2127
+ ____class_38.name = ____class_38.name
2128
+ __TS__ClassExtends(____class_38, ____exports.HeroUnitType)
2129
+ ____class_38.BASE_ID = id
2130
+ return ____class_38
1304
2131
  end
1305
2132
  )
1306
2133
  return ____exports