warscript 0.0.1-dev.ab8c392 → 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 (484) hide show
  1. package/attributes.d.ts +6 -1
  2. package/attributes.lua +17 -1
  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.lua +9 -9
  14. package/core/types/image.d.ts +0 -1
  15. package/core/types/item.d.ts +1 -0
  16. package/core/types/item.lua +1 -0
  17. package/core/types/missile.d.ts +2 -2
  18. package/core/types/missile.lua +8 -2
  19. package/core/types/player.d.ts +18 -1
  20. package/core/types/player.lua +76 -26
  21. package/core/types/playerCamera.d.ts +2 -0
  22. package/core/types/playerCamera.lua +123 -5
  23. package/core/types/playerColor.lua +4 -3
  24. package/core/types/sound.d.ts +18 -25
  25. package/core/types/sound.lua +113 -33
  26. package/core/types/tileCell.d.ts +18 -3
  27. package/core/types/tileCell.lua +108 -0
  28. package/core/types/timer.d.ts +9 -8
  29. package/core/types/timer.lua +45 -23
  30. package/core/types/unit.d.ts +5 -0
  31. package/core/types/unit.lua +13 -0
  32. package/core/util.d.ts +3 -1
  33. package/core/util.lua +127 -4
  34. package/decl/index.d.ts +1 -0
  35. package/decl/native.d.ts +1718 -964
  36. package/destroyable.d.ts +1 -0
  37. package/destroyable.lua +9 -0
  38. package/engine/ability.d.ts +1 -1
  39. package/engine/behavior.d.ts +24 -11
  40. package/engine/behavior.lua +233 -73
  41. package/engine/behaviour/ability/always-enabled.d.ts +7 -0
  42. package/engine/behaviour/ability/always-enabled.lua +31 -0
  43. package/engine/behaviour/ability/apply-buff.d.ts +8 -5
  44. package/engine/behaviour/ability/apply-buff.lua +36 -4
  45. package/engine/behaviour/ability/apply-unit-behavior.d.ts +6 -1
  46. package/engine/behaviour/ability/apply-unit-behavior.lua +6 -0
  47. package/engine/behaviour/ability/damage.d.ts +43 -11
  48. package/engine/behaviour/ability/damage.lua +89 -39
  49. package/engine/behaviour/ability/emulate-impact.d.ts +6 -0
  50. package/engine/behaviour/ability/emulate-impact.lua +44 -0
  51. package/engine/behaviour/ability/heal.d.ts +33 -6
  52. package/engine/behaviour/ability/heal.lua +89 -10
  53. package/engine/behaviour/ability/instant-impact.d.ts +2 -2
  54. package/engine/behaviour/ability/instant-impact.lua +4 -15
  55. package/engine/behaviour/ability/on-command-impact.d.ts +9 -0
  56. package/engine/behaviour/ability/on-command-impact.lua +26 -0
  57. package/engine/behaviour/ability/remove-buffs.d.ts +25 -0
  58. package/engine/behaviour/ability/remove-buffs.lua +49 -0
  59. package/engine/behaviour/ability/restore-mana.d.ts +15 -0
  60. package/engine/behaviour/ability/restore-mana.lua +29 -0
  61. package/engine/behaviour/ability.d.ts +37 -7
  62. package/engine/behaviour/ability.lua +208 -27
  63. package/engine/behaviour/unit/stun-immunity.d.ts +12 -7
  64. package/engine/behaviour/unit/stun-immunity.lua +57 -31
  65. package/engine/behaviour/unit.d.ts +49 -4
  66. package/engine/behaviour/unit.lua +293 -2
  67. package/engine/buff.d.ts +168 -59
  68. package/engine/buff.lua +767 -277
  69. package/engine/game-map.d.ts +7 -0
  70. package/engine/game-map.lua +32 -0
  71. package/engine/index.d.ts +2 -1
  72. package/engine/internal/ability.d.ts +30 -14
  73. package/engine/internal/ability.lua +177 -104
  74. package/engine/internal/item/ability.lua +162 -4
  75. package/engine/internal/item/fields.d.ts +12 -0
  76. package/engine/internal/item/fields.lua +33 -0
  77. package/engine/internal/item/owner-cache.d.ts +5 -0
  78. package/engine/internal/item/owner-cache.lua +4 -0
  79. package/engine/internal/item+owner.d.ts +2 -0
  80. package/engine/internal/item+owner.lua +37 -8
  81. package/engine/internal/item.d.ts +34 -18
  82. package/engine/internal/item.lua +308 -102
  83. package/engine/internal/mechanics/ability-duration.lua +1 -1
  84. package/engine/internal/mechanics/cast-ability.lua +6 -3
  85. package/engine/internal/misc/ability-disable-counter.lua +13 -0
  86. package/engine/internal/misc/damage-metadata-by-target.d.ts +2 -0
  87. package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
  88. package/engine/internal/misc/frame-coordinates.d.ts +2 -0
  89. package/engine/internal/misc/frame-coordinates.lua +21 -0
  90. package/engine/internal/misc/get-terrain-z.d.ts +2 -0
  91. package/engine/internal/misc/get-terrain-z.lua +11 -0
  92. package/engine/internal/misc/player-local-handle.d.ts +2 -0
  93. package/engine/internal/misc/player-local-handle.lua +5 -0
  94. package/engine/internal/misc/unit-ability-level-natives.d.ts +2 -0
  95. package/engine/internal/misc/unit-ability-level-natives.lua +12 -0
  96. package/engine/internal/object-data/armor-bonus.d.ts +2 -0
  97. package/engine/internal/object-data/attribute-bonus.lua +2 -2
  98. package/engine/internal/object-data/auto-attack-speed-increase.d.ts +1 -1
  99. package/engine/internal/object-data/auto-attack-speed-increase.lua +2 -0
  100. package/engine/internal/object-data/evasion-probability.d.ts +2 -0
  101. package/engine/internal/object-data/evasion-probability.lua +16 -0
  102. package/engine/internal/object-data/health-bonus.d.ts +2 -0
  103. package/engine/internal/object-data/health-bonus.lua +16 -0
  104. package/engine/internal/object-data/health-regeneration-rate-increase.d.ts +2 -0
  105. package/engine/internal/object-data/health-regeneration-rate-increase.lua +48 -0
  106. package/engine/internal/object-data/mana-bonus.d.ts +2 -0
  107. package/engine/internal/object-data/mana-bonus.lua +16 -0
  108. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.d.ts +2 -0
  109. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
  110. package/engine/internal/unit/ability.d.ts +45 -1
  111. package/engine/internal/unit/ability.lua +142 -19
  112. package/engine/internal/unit/add-item-to-slot-init.d.ts +2 -0
  113. package/engine/internal/unit/add-item-to-slot-init.lua +12 -0
  114. package/engine/internal/unit/add-item-to-slot.d.ts +2 -0
  115. package/engine/internal/unit/add-item-to-slot.lua +93 -0
  116. package/engine/internal/unit/allowed-targets.d.ts +1 -1
  117. package/engine/internal/unit/allowed-targets.lua +9 -1
  118. package/engine/internal/unit/appearance.d.ts +15 -0
  119. package/engine/internal/unit/appearance.lua +85 -0
  120. package/engine/internal/unit/attributes.d.ts +17 -0
  121. package/engine/internal/unit/attributes.lua +46 -0
  122. package/engine/internal/unit/bonus.d.ts +25 -8
  123. package/engine/internal/unit/bonus.lua +125 -9
  124. package/engine/internal/unit/buff.d.ts +2 -2
  125. package/engine/internal/unit/buff.lua +34 -19
  126. package/engine/internal/unit/equipment-inventory.d.ts +44 -0
  127. package/engine/internal/unit/equipment-inventory.lua +233 -0
  128. package/engine/internal/unit/expiration-timer.lua +1 -1
  129. package/engine/internal/unit/extended-inventory.d.ts +25 -0
  130. package/engine/internal/unit/extended-inventory.lua +99 -0
  131. package/engine/internal/unit/fly-height.d.ts +7 -0
  132. package/engine/internal/unit/fly-height.lua +20 -0
  133. package/engine/internal/unit/ignore-events-items.d.ts +2 -0
  134. package/engine/internal/unit/ignore-events-items.lua +14 -0
  135. package/engine/internal/unit/interrupts.d.ts +12 -0
  136. package/engine/internal/unit/interrupts.lua +28 -0
  137. package/engine/internal/unit/inventory.d.ts +28 -0
  138. package/engine/internal/unit/inventory.lua +87 -0
  139. package/engine/internal/unit/item-container.d.ts +25 -0
  140. package/engine/internal/unit/item-container.lua +11 -0
  141. package/engine/internal/unit/item-order-events.d.ts +17 -0
  142. package/engine/internal/unit/item-order-events.lua +67 -0
  143. package/engine/internal/unit/item-slot.d.ts +27 -0
  144. package/engine/internal/unit/item-slot.lua +92 -0
  145. package/engine/internal/unit/main-selected.d.ts +13 -0
  146. package/engine/internal/unit/main-selected.lua +36 -0
  147. package/engine/internal/unit/order.d.ts +20 -0
  148. package/engine/internal/unit/order.lua +136 -0
  149. package/engine/internal/unit/pseudo-passive-abilities.d.ts +2 -0
  150. package/engine/internal/unit/pseudo-passive-abilities.lua +11 -0
  151. package/engine/internal/unit/range-event.d.ts +12 -0
  152. package/engine/internal/unit/range-event.lua +90 -0
  153. package/engine/internal/unit/scale.d.ts +7 -0
  154. package/engine/internal/unit/scale.lua +20 -0
  155. package/engine/internal/unit+ability.d.ts +2 -1
  156. package/engine/internal/unit+ability.lua +75 -5
  157. package/engine/internal/unit+bonus.lua +3 -3
  158. package/engine/internal/unit+damage.d.ts +11 -11
  159. package/engine/internal/unit+damage.lua +43 -14
  160. package/engine/internal/unit+rally.lua +9 -31
  161. package/engine/internal/unit+spellSteal.lua +1 -2
  162. package/engine/internal/unit+transport.lua +4 -10
  163. package/engine/internal/unit-missile-data.lua +58 -32
  164. package/engine/internal/unit-missile-launch.lua +70 -13
  165. package/engine/internal/unit.d.ts +91 -38
  166. package/engine/internal/unit.lua +667 -352
  167. package/engine/internal/utility.lua +12 -0
  168. package/engine/lightning.d.ts +12 -5
  169. package/engine/lightning.lua +48 -14
  170. package/engine/local-client.d.ts +35 -2
  171. package/engine/local-client.lua +367 -15
  172. package/engine/object-data/auxiliary/animation-name.d.ts +1 -0
  173. package/engine/object-data/auxiliary/animation-name.lua +16 -0
  174. package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
  175. package/engine/object-data/auxiliary/armor-type.lua +46 -0
  176. package/engine/object-data/auxiliary/attachment-preset.d.ts +14 -3
  177. package/engine/object-data/auxiliary/attachment-preset.lua +11 -3
  178. package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
  179. package/engine/object-data/auxiliary/attack-type.lua +42 -0
  180. package/engine/object-data/auxiliary/combat-classification.d.ts +0 -2
  181. package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
  182. package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
  183. package/engine/object-data/auxiliary/equipment-type.d.ts +12 -0
  184. package/engine/object-data/auxiliary/equipment-type.lua +26 -0
  185. package/engine/object-data/auxiliary/health-regeneration-type.d.ts +8 -0
  186. package/engine/object-data/auxiliary/health-regeneration-type.lua +2 -0
  187. package/engine/object-data/auxiliary/item-class.d.ts +11 -0
  188. package/engine/object-data/auxiliary/item-class.lua +2 -0
  189. package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
  190. package/engine/object-data/auxiliary/item-tag.lua +2 -0
  191. package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
  192. package/engine/object-data/auxiliary/movement-type.lua +22 -0
  193. package/engine/object-data/auxiliary/order-type.d.ts +939 -0
  194. package/engine/object-data/auxiliary/order-type.lua +2 -0
  195. package/engine/object-data/auxiliary/sound-eax.d.ts +10 -0
  196. package/engine/object-data/auxiliary/sound-eax.lua +2 -0
  197. package/engine/object-data/auxiliary/sound-preset-name.d.ts +5 -1
  198. package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
  199. package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +1 -1
  200. package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
  201. package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
  202. package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
  203. package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
  204. package/engine/object-data/entry/ability-type/armor-bonus.d.ts +8 -0
  205. package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
  206. package/engine/object-data/entry/ability-type/aura-of-blight.d.ts +13 -0
  207. package/engine/object-data/entry/ability-type/aura-of-blight.lua +39 -0
  208. package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
  209. package/engine/object-data/entry/ability-type/banshee.lua +13 -0
  210. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
  211. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
  212. package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
  213. package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
  214. package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
  215. package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
  216. package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
  217. package/engine/object-data/entry/ability-type/berserk.lua +13 -0
  218. package/engine/object-data/entry/ability-type/blank-configurable.d.ts +3 -1
  219. package/engine/object-data/entry/ability-type/blank-configurable.lua +42 -1
  220. package/engine/object-data/entry/ability-type/blank-passive.d.ts +4 -1
  221. package/engine/object-data/entry/ability-type/blank-passive.lua +27 -7
  222. package/engine/object-data/entry/ability-type/breath-of-fire.d.ts +11 -0
  223. package/engine/object-data/entry/ability-type/breath-of-fire.lua +27 -0
  224. package/engine/object-data/entry/ability-type/carrion-swarm.d.ts +14 -0
  225. package/engine/object-data/entry/ability-type/carrion-swarm.lua +65 -0
  226. package/engine/object-data/entry/ability-type/channel.d.ts +0 -1
  227. package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
  228. package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
  229. package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
  230. package/engine/object-data/entry/ability-type/consecration.lua +52 -0
  231. package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
  232. package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
  233. package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
  234. package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
  235. package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
  236. package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
  237. package/engine/object-data/entry/ability-type/disease-cloud.lua +2 -2
  238. package/engine/object-data/entry/ability-type/engineering-upgrade.lua +2 -2
  239. package/engine/object-data/entry/ability-type/ensnare.d.ts +12 -0
  240. package/engine/object-data/entry/ability-type/ensnare.lua +52 -0
  241. package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
  242. package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
  243. package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
  244. package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
  245. package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
  246. package/engine/object-data/entry/ability-type/equipment.lua +27 -0
  247. package/engine/object-data/entry/ability-type/feral-spirit.lua +2 -2
  248. package/engine/object-data/entry/ability-type/firebolt.d.ts +7 -0
  249. package/engine/object-data/entry/ability-type/firebolt.lua +13 -0
  250. package/engine/object-data/entry/ability-type/flame-strike.d.ts +25 -0
  251. package/engine/object-data/entry/ability-type/flame-strike.lua +92 -0
  252. package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
  253. package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
  254. package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
  255. package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
  256. package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
  257. package/engine/object-data/entry/ability-type/grit.lua +65 -0
  258. package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
  259. package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
  260. package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
  261. package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
  262. package/engine/object-data/entry/ability-type/{armor-increase.d.ts → healing-modifier.d.ts} +4 -3
  263. package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
  264. package/engine/object-data/entry/ability-type/healing-ward-aura.d.ts +13 -0
  265. package/engine/object-data/entry/ability-type/healing-ward-aura.lua +39 -0
  266. package/engine/object-data/entry/ability-type/health-bonus.d.ts +8 -0
  267. package/engine/object-data/entry/ability-type/health-bonus.lua +26 -0
  268. package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
  269. package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
  270. package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
  271. package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
  272. package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
  273. package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
  274. package/engine/object-data/entry/ability-type/item-life-regeneration.d.ts +10 -0
  275. package/engine/object-data/entry/ability-type/item-life-regeneration.lua +26 -0
  276. package/engine/object-data/entry/ability-type/life-drain.d.ts +37 -0
  277. package/engine/object-data/entry/ability-type/life-drain.lua +144 -0
  278. package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
  279. package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
  280. package/engine/object-data/entry/ability-type/mana-bonus.d.ts +8 -0
  281. package/engine/object-data/entry/ability-type/mana-bonus.lua +26 -0
  282. package/engine/object-data/entry/ability-type/mana-efficiency.d.ts +12 -0
  283. package/engine/object-data/entry/ability-type/mana-efficiency.lua +39 -0
  284. package/engine/object-data/entry/ability-type/mana-regeneration.d.ts +8 -0
  285. package/engine/object-data/entry/ability-type/mana-regeneration.lua +26 -0
  286. package/engine/object-data/entry/ability-type/mind-control.d.ts +21 -0
  287. package/engine/object-data/entry/ability-type/mind-control.lua +78 -0
  288. package/engine/object-data/entry/ability-type/mine.d.ts +10 -0
  289. package/engine/object-data/entry/ability-type/mine.lua +39 -0
  290. package/engine/object-data/entry/ability-type/on-attack-cast-spell.d.ts +21 -0
  291. package/engine/object-data/entry/ability-type/on-attack-cast-spell.lua +52 -0
  292. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.d.ts +19 -0
  293. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.lua +65 -0
  294. package/engine/object-data/entry/ability-type/on-hit-cast-spell.d.ts +15 -0
  295. package/engine/object-data/entry/ability-type/on-hit-cast-spell.lua +26 -0
  296. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.d.ts +6 -0
  297. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.lua +12 -0
  298. package/engine/object-data/entry/ability-type/permanent-invisibility.d.ts +8 -0
  299. package/engine/object-data/entry/ability-type/permanent-invisibility.lua +26 -0
  300. package/engine/object-data/entry/ability-type/phase-shift.d.ts +10 -0
  301. package/engine/object-data/entry/ability-type/phase-shift.lua +39 -0
  302. package/engine/object-data/entry/ability-type/phoenix-morph.lua +4 -4
  303. package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
  304. package/engine/object-data/entry/ability-type/provoke.lua +66 -0
  305. package/engine/object-data/entry/ability-type/rain-of-fire.d.ts +7 -0
  306. package/engine/object-data/entry/ability-type/rain-of-fire.lua +13 -0
  307. package/engine/object-data/entry/ability-type/raise-dead.d.ts +17 -0
  308. package/engine/object-data/entry/ability-type/raise-dead.lua +78 -0
  309. package/engine/object-data/entry/ability-type/raise-the-banner.d.ts +9 -0
  310. package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
  311. package/engine/object-data/entry/ability-type/reincarnation.d.ts +8 -0
  312. package/engine/object-data/entry/ability-type/reincarnation.lua +26 -0
  313. package/engine/object-data/entry/ability-type/resolve.d.ts +12 -0
  314. package/engine/object-data/entry/ability-type/resolve.lua +39 -0
  315. package/engine/object-data/entry/ability-type/righteous-fury.d.ts +33 -0
  316. package/engine/object-data/entry/ability-type/righteous-fury.lua +130 -0
  317. package/engine/object-data/entry/ability-type/sacred-aura.d.ts +27 -0
  318. package/engine/object-data/entry/ability-type/sacred-aura.lua +104 -0
  319. package/engine/object-data/entry/ability-type/shock-wave.d.ts +4 -0
  320. package/engine/object-data/entry/ability-type/shock-wave.lua +26 -0
  321. package/engine/object-data/entry/ability-type/slow-poison.d.ts +10 -0
  322. package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
  323. package/engine/object-data/entry/ability-type/soul-burn.d.ts +22 -0
  324. package/engine/object-data/entry/ability-type/soul-burn.lua +79 -0
  325. package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
  326. package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
  327. package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
  328. package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
  329. package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
  330. package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
  331. package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
  332. package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
  333. package/engine/object-data/entry/ability-type/spirit-touch.d.ts +2 -2
  334. package/engine/object-data/entry/ability-type/spirit-touch.lua +6 -6
  335. package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
  336. package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
  337. package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
  338. package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
  339. package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
  340. package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
  341. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
  342. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
  343. package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
  344. package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
  345. package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
  346. package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
  347. package/engine/object-data/entry/ability-type/summon-quilbeast.lua +2 -2
  348. package/engine/object-data/entry/ability-type/summon-water-elemental.lua +2 -2
  349. package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
  350. package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
  351. package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
  352. package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
  353. package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
  354. package/engine/object-data/entry/ability-type/talents.lua +27 -0
  355. package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
  356. package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
  357. package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
  358. package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
  359. package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
  360. package/engine/object-data/entry/ability-type/warcry.lua +26 -0
  361. package/engine/object-data/entry/ability-type/web.d.ts +12 -0
  362. package/engine/object-data/entry/ability-type/web.lua +52 -0
  363. package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
  364. package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
  365. package/engine/object-data/entry/ability-type.d.ts +41 -21
  366. package/engine/object-data/entry/ability-type.lua +337 -44
  367. package/engine/object-data/entry/buff-type/applicable.d.ts +0 -1
  368. package/engine/object-data/entry/buff-type/applicable.lua +122 -137
  369. package/engine/object-data/entry/buff-type/blank.d.ts +0 -1
  370. package/engine/object-data/entry/buff-type.d.ts +10 -13
  371. package/engine/object-data/entry/buff-type.lua +39 -29
  372. package/engine/object-data/entry/destructible-type.d.ts +32 -3
  373. package/engine/object-data/entry/destructible-type.lua +181 -0
  374. package/engine/object-data/entry/item-type/blank.d.ts +0 -1
  375. package/engine/object-data/entry/item-type.d.ts +32 -4
  376. package/engine/object-data/entry/item-type.lua +177 -2
  377. package/engine/object-data/entry/lightning-type.d.ts +6 -9
  378. package/engine/object-data/entry/lightning-type.lua +1 -1
  379. package/engine/object-data/entry/sound-preset.d.ts +33 -0
  380. package/engine/object-data/entry/sound-preset.lua +140 -0
  381. package/engine/object-data/entry/unit-type.d.ts +92 -8
  382. package/engine/object-data/entry/unit-type.lua +748 -75
  383. package/engine/object-data/entry/upgrade/blank.d.ts +0 -1
  384. package/engine/object-data/entry/upgrade.d.ts +2 -3
  385. package/engine/object-data/entry/upgrade.lua +4 -4
  386. package/engine/object-data/entry.d.ts +23 -17
  387. package/engine/object-data/entry.lua +68 -32
  388. package/engine/object-data/utility/object-data-entry-id-generator.lua +7 -0
  389. package/engine/object-field/ability.d.ts +28 -5
  390. package/engine/object-field/ability.lua +61 -7
  391. package/engine/object-field/item.d.ts +22 -0
  392. package/engine/object-field/item.lua +118 -0
  393. package/engine/object-field/unit.d.ts +72 -3
  394. package/engine/object-field/unit.lua +268 -7
  395. package/engine/object-field.d.ts +26 -8
  396. package/engine/object-field.lua +362 -117
  397. package/engine/random.d.ts +11 -0
  398. package/engine/random.lua +30 -0
  399. package/engine/standard/entries/ability-type.d.ts +3102 -7
  400. package/engine/standard/entries/ability-type.lua +0 -6
  401. package/engine/standard/entries/buff-type.d.ts +48 -0
  402. package/engine/standard/entries/buff-type.lua +46 -0
  403. package/engine/standard/entries/item-type.d.ts +1299 -0
  404. package/engine/standard/entries/item-type.lua +2 -0
  405. package/engine/standard/entries/lightning-type.d.ts +42 -15
  406. package/engine/standard/entries/lightning-type.lua +0 -14
  407. package/engine/standard/entries/sound-preset.d.ts +10 -0
  408. package/engine/standard/entries/sound-preset.lua +10 -0
  409. package/engine/standard/entries/unit-type.d.ts +44 -1
  410. package/engine/standard/entries/unit-type.lua +44 -1
  411. package/engine/standard/fields/ability.d.ts +5 -3
  412. package/engine/standard/fields/ability.lua +5 -3
  413. package/engine/standard/fields/item.d.ts +4 -0
  414. package/engine/standard/fields/item.lua +6 -0
  415. package/engine/standard/fields/unit.d.ts +12 -0
  416. package/engine/standard/fields/unit.lua +20 -0
  417. package/engine/synchronization.d.ts +11 -0
  418. package/engine/synchronization.lua +77 -0
  419. package/engine/text-tag.d.ts +36 -2
  420. package/engine/text-tag.lua +250 -10
  421. package/engine/unit.d.ts +13 -0
  422. package/engine/unit.lua +22 -2
  423. package/event.d.ts +3 -4
  424. package/event.lua +9 -5
  425. package/index.d.ts +1 -0
  426. package/index.lua +1 -0
  427. package/lualib_bundle.lua +147 -43
  428. package/math/vec2.d.ts +2 -9
  429. package/math.d.ts +2 -2
  430. package/math.lua +14 -0
  431. package/net/socket.d.ts +7 -1
  432. package/net/socket.lua +45 -4
  433. package/network.d.ts +1 -0
  434. package/network.lua +28 -3
  435. package/objutil/ability.d.ts +0 -1
  436. package/objutil/buff.d.ts +0 -1
  437. package/objutil/buff.lua +13 -12
  438. package/objutil/object.d.ts +0 -1
  439. package/objutil/object.lua +1 -1
  440. package/objutil/unit.d.ts +0 -1
  441. package/objutil/unit.lua +8 -0
  442. package/operation.d.ts +8 -1
  443. package/operation.lua +38 -18
  444. package/package.json +3 -23
  445. package/patch-lua.d.ts +0 -0
  446. package/patch-lua.lua +25 -0
  447. package/patch-lualib.lua +1 -1
  448. package/property.d.ts +55 -0
  449. package/property.lua +374 -0
  450. package/string.d.ts +16 -0
  451. package/string.lua +5 -0
  452. package/util/stream.d.ts +0 -1
  453. package/utility/arrays.d.ts +19 -6
  454. package/utility/arrays.lua +60 -3
  455. package/utility/bit-set.d.ts +0 -2
  456. package/utility/callback-array.d.ts +17 -0
  457. package/utility/callback-array.lua +61 -0
  458. package/utility/functions.d.ts +8 -0
  459. package/utility/functions.lua +13 -0
  460. package/utility/lazy.d.ts +2 -0
  461. package/utility/lazy.lua +14 -0
  462. package/utility/linked-map.d.ts +35 -0
  463. package/utility/linked-map.lua +107 -0
  464. package/utility/linked-set.d.ts +16 -4
  465. package/utility/linked-set.lua +54 -3
  466. package/utility/lua-maps.d.ts +16 -4
  467. package/utility/lua-maps.lua +53 -2
  468. package/utility/lua-sets.d.ts +3 -2
  469. package/utility/lua-sets.lua +7 -0
  470. package/utility/random.d.ts +102 -0
  471. package/utility/random.lua +273 -0
  472. package/utility/records.lua +20 -1
  473. package/utility/reflection.lua +11 -7
  474. package/utility/types.d.ts +4 -0
  475. package/utility/unordered-map.d.ts +27 -0
  476. package/utility/unordered-map.lua +99 -0
  477. package/core/mapbounds.d.ts +0 -8
  478. package/core/mapbounds.lua +0 -12
  479. package/core/types/order.d.ts +0 -25
  480. package/core/types/order.lua +0 -55
  481. /package/engine/internal/{object-data/armor-increase.d.ts → misc/ability-disable-counter.d.ts} +0 -0
  482. /package/engine/internal/object-data/{armor-increase.lua → armor-bonus.lua} +0 -0
  483. /package/engine/object-data/entry/ability-type/{attribute-increase.d.ts → attribute-bonus.d.ts} +0 -0
  484. /package/engine/object-data/entry/ability-type/{attribute-increase.lua → attribute-bonus.lua} +0 -0
@@ -12,6 +12,9 @@ local implementReadonlyNumberIndexSupplier = ____reflection.implementReadonlyNum
12
12
  local ____combat_2Dclassification = require("engine.object-data.auxiliary.combat-classification")
13
13
  local combatClassificationsToStringArray = ____combat_2Dclassification.combatClassificationsToStringArray
14
14
  local stringArrayToCombatClassifications = ____combat_2Dclassification.stringArrayToCombatClassifications
15
+ local ____movement_2Dtype = require("engine.object-data.auxiliary.movement-type")
16
+ local movementTypeToString = ____movement_2Dtype.movementTypeToString
17
+ local stringToMovementType = ____movement_2Dtype.stringToMovementType
15
18
  local ____unit_2Dclassification = require("engine.object-data.auxiliary.unit-classification")
16
19
  local stringArrayToUnitClassifications = ____unit_2Dclassification.stringArrayToUnitClassifications
17
20
  local unitClassificationsToStringArray = ____unit_2Dclassification.unitClassificationsToStringArray
@@ -19,7 +22,19 @@ local ____entry = require("engine.object-data.entry")
19
22
  local ObjectDataEntry = ____entry.ObjectDataEntry
20
23
  local ____object_2Ddata_2Dentry_2Did_2Dgenerator = require("engine.object-data.utility.object-data-entry-id-generator")
21
24
  local ObjectDataEntryIdGenerator = ____object_2Ddata_2Dentry_2Did_2Dgenerator.ObjectDataEntryIdGenerator
25
+ local ____attack_2Dtype = require("engine.object-data.auxiliary.attack-type")
26
+ local attackTypeToString = ____attack_2Dtype.attackTypeToString
27
+ local stringToAttackType = ____attack_2Dtype.stringToAttackType
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
22
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
23
38
  ____exports.UnitTypeWeapon = __TS__Class()
24
39
  local UnitTypeWeapon = ____exports.UnitTypeWeapon
25
40
  UnitTypeWeapon.name = "UnitTypeWeapon"
@@ -32,18 +47,19 @@ __TS__SetDescriptor(
32
47
  "attackType",
33
48
  {
34
49
  get = function(self)
50
+ local ____stringToAttackType_1 = stringToAttackType
35
51
  local ____self_0 = self.unitType
36
- return ____self_0.getStringField(
52
+ return ____stringToAttackType_1(____self_0.getStringField(
37
53
  ____self_0,
38
54
  ("ua" .. tostring(self.index)) .. "t"
39
- )
55
+ ))
40
56
  end,
41
57
  set = function(self, attackType)
42
- local ____self_1 = self.unitType
43
- ____self_1.setStringField(
44
- ____self_1,
58
+ local ____self_2 = self.unitType
59
+ ____self_2.setStringField(
60
+ ____self_2,
45
61
  ("ua" .. tostring(self.index)) .. "t",
46
- attackType
62
+ attackTypeToString(attackType)
47
63
  )
48
64
  end
49
65
  },
@@ -54,16 +70,16 @@ __TS__SetDescriptor(
54
70
  "backSwingDuration",
55
71
  {
56
72
  get = function(self)
57
- local ____self_2 = self.unitType
58
- return ____self_2.getNumberField(
59
- ____self_2,
73
+ local ____self_3 = self.unitType
74
+ return ____self_3.getNumberField(
75
+ ____self_3,
60
76
  "ubs" .. tostring(self.index)
61
77
  )
62
78
  end,
63
79
  set = function(self, backSwingDuration)
64
- local ____self_3 = self.unitType
65
- ____self_3.setNumberField(
66
- ____self_3,
80
+ local ____self_4 = self.unitType
81
+ ____self_4.setNumberField(
82
+ ____self_4,
67
83
  "ubs" .. tostring(self.index),
68
84
  backSwingDuration
69
85
  )
@@ -71,21 +87,130 @@ __TS__SetDescriptor(
71
87
  },
72
88
  true
73
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
+ )
74
199
  __TS__SetDescriptor(
75
200
  UnitTypeWeapon.prototype,
76
201
  "impactDelay",
77
202
  {
78
203
  get = function(self)
79
- local ____self_4 = self.unitType
80
- return ____self_4.getNumberField(
81
- ____self_4,
204
+ local ____self_13 = self.unitType
205
+ return ____self_13.getNumberField(
206
+ ____self_13,
82
207
  "udp" .. tostring(self.index)
83
208
  )
84
209
  end,
85
210
  set = function(self, impactDelay)
86
- local ____self_5 = self.unitType
87
- ____self_5.setNumberField(
88
- ____self_5,
211
+ local ____self_14 = self.unitType
212
+ ____self_14.setNumberField(
213
+ ____self_14,
89
214
  "udp" .. tostring(self.index),
90
215
  impactDelay
91
216
  )
@@ -93,21 +218,43 @@ __TS__SetDescriptor(
93
218
  },
94
219
  true
95
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
+ )
96
243
  __TS__SetDescriptor(
97
244
  UnitTypeWeapon.prototype,
98
245
  "missileModelPath",
99
246
  {
100
247
  get = function(self)
101
- local ____self_6 = self.unitType
102
- return ____self_6.getStringField(
103
- ____self_6,
248
+ local ____self_17 = self.unitType
249
+ return ____self_17.getStringField(
250
+ ____self_17,
104
251
  ("ua" .. tostring(self.index)) .. "m"
105
252
  )
106
253
  end,
107
254
  set = function(self, missileModelPath)
108
- local ____self_7 = self.unitType
109
- ____self_7.setStringField(
110
- ____self_7,
255
+ local ____self_18 = self.unitType
256
+ ____self_18.setStringField(
257
+ ____self_18,
111
258
  ("ua" .. tostring(self.index)) .. "m",
112
259
  missileModelPath
113
260
  )
@@ -115,21 +262,109 @@ __TS__SetDescriptor(
115
262
  },
116
263
  true
117
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
+ )
118
353
  __TS__SetDescriptor(
119
354
  UnitTypeWeapon.prototype,
120
355
  "range",
121
356
  {
122
357
  get = function(self)
123
- local ____self_8 = self.unitType
124
- return ____self_8.getNumberField(
125
- ____self_8,
358
+ local ____self_27 = self.unitType
359
+ return ____self_27.getNumberField(
360
+ ____self_27,
126
361
  ("ua" .. tostring(self.index)) .. "r"
127
362
  )
128
363
  end,
129
364
  set = function(self, range)
130
- local ____self_9 = self.unitType
131
- ____self_9.setNumberField(
132
- ____self_9,
365
+ local ____self_28 = self.unitType
366
+ ____self_28.setNumberField(
367
+ ____self_28,
133
368
  ("ua" .. tostring(self.index)) .. "r",
134
369
  range
135
370
  )
@@ -142,16 +377,16 @@ __TS__SetDescriptor(
142
377
  "soundType",
143
378
  {
144
379
  get = function(self)
145
- local ____self_10 = self.unitType
146
- return ____self_10.getStringField(
147
- ____self_10,
380
+ local ____self_29 = self.unitType
381
+ return ____self_29.getStringField(
382
+ ____self_29,
148
383
  "ucs" .. tostring(self.index)
149
384
  )
150
385
  end,
151
386
  set = function(self, soundType)
152
- local ____self_11 = self.unitType
153
- ____self_11.setStringField(
154
- ____self_11,
387
+ local ____self_30 = self.unitType
388
+ ____self_30.setStringField(
389
+ ____self_30,
155
390
  "ucs" .. tostring(self.index),
156
391
  soundType
157
392
  )
@@ -164,16 +399,16 @@ __TS__SetDescriptor(
164
399
  "soundTypeSD",
165
400
  {
166
401
  get = function(self)
167
- local ____self_12 = self.unitType
168
- return ____self_12.getStringField(
169
- ____self_12,
402
+ local ____self_31 = self.unitType
403
+ return ____self_31.getStringField(
404
+ ____self_31,
170
405
  ("ucs" .. tostring(self.index)) .. ":sd"
171
406
  )
172
407
  end,
173
408
  set = function(self, soundTypeSD)
174
- local ____self_13 = self.unitType
175
- ____self_13.setStringField(
176
- ____self_13,
409
+ local ____self_32 = self.unitType
410
+ ____self_32.setStringField(
411
+ ____self_32,
177
412
  ("ucs" .. tostring(self.index)) .. ":sd",
178
413
  soundTypeSD
179
414
  )
@@ -186,22 +421,44 @@ __TS__SetDescriptor(
186
421
  "soundTypeHD",
187
422
  {
188
423
  get = function(self)
189
- local ____self_14 = self.unitType
190
- return ____self_14.getStringField(
191
- ____self_14,
424
+ local ____self_33 = self.unitType
425
+ return ____self_33.getStringField(
426
+ ____self_33,
192
427
  ("ucs" .. tostring(self.index)) .. ":hd"
193
428
  )
194
429
  end,
195
430
  set = function(self, soundTypeHD)
196
- local ____self_15 = self.unitType
197
- ____self_15.setStringField(
198
- ____self_15,
431
+ local ____self_34 = self.unitType
432
+ ____self_34.setStringField(
433
+ ____self_34,
199
434
  ("ucs" .. tostring(self.index)) .. ":hd",
200
435
  soundTypeHD
201
436
  )
202
437
  end
203
438
  },
204
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
205
462
  );
206
463
  (function(self)
207
464
  local unitTypeWeaponsByUnitTypeId = {}
@@ -227,6 +484,10 @@ end
227
484
  function UnitType.getObjectData(self, map)
228
485
  return map.objects.unit
229
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
230
491
  UnitType.idGenerator = __TS__New(
231
492
  ObjectDataEntryIdGenerator,
232
493
  fourCC("x000")
@@ -236,10 +497,10 @@ __TS__SetDescriptor(
236
497
  "abilityTypeIds",
237
498
  {
238
499
  get = function(self)
239
- return self:getObjectDataEntryIdsField("uabi")
500
+ return self:getObjectDataEntryNumericIdsField("uabi")
240
501
  end,
241
502
  set = function(self, abilityTypeIds)
242
- self:setObjectDataEntryIdsField("uabi", abilityTypeIds)
503
+ self:setObjectDataEntryNumericIdsField("uabi", abilityTypeIds)
243
504
  end
244
505
  },
245
506
  true
@@ -249,10 +510,10 @@ __TS__SetDescriptor(
249
510
  "defaultActiveAbilityTypeId",
250
511
  {
251
512
  get = function(self)
252
- return self:getObjectDataEntryIdsField("udaa")[1]
513
+ return self:getObjectDataEntryNumericIdsField("udaa")[1]
253
514
  end,
254
515
  set = function(self, abilityTypeId)
255
- self:setObjectDataEntryIdsField(
516
+ self:setObjectDataEntryNumericIdsField(
256
517
  "udaa",
257
518
  arrayOfNotNull(abilityTypeId)
258
519
  )
@@ -351,6 +612,32 @@ __TS__SetDescriptor(
351
612
  },
352
613
  true
353
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
+ )
354
641
  __TS__SetDescriptor(
355
642
  UnitType.prototype,
356
643
  "iconPath",
@@ -390,6 +677,19 @@ __TS__SetDescriptor(
390
677
  },
391
678
  true
392
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
+ )
393
693
  __TS__SetDescriptor(
394
694
  UnitType.prototype,
395
695
  "isMissileScalingEnabled",
@@ -494,6 +794,19 @@ __TS__SetDescriptor(
494
794
  },
495
795
  true
496
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
+ )
497
810
  __TS__SetDescriptor(
498
811
  UnitType.prototype,
499
812
  "missileLaunchSwimmingOffsetZ",
@@ -533,6 +846,19 @@ __TS__SetDescriptor(
533
846
  },
534
847
  true
535
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
+ )
536
862
  __TS__SetDescriptor(
537
863
  UnitType.prototype,
538
864
  "missileLaunchVisualOffsetX",
@@ -572,6 +898,19 @@ __TS__SetDescriptor(
572
898
  },
573
899
  true
574
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
+ )
575
914
  __TS__SetDescriptor(
576
915
  UnitType.prototype,
577
916
  "missileLaunchVisualOffsetY",
@@ -611,6 +950,19 @@ __TS__SetDescriptor(
611
950
  },
612
951
  true
613
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
+ )
614
966
  __TS__SetDescriptor(
615
967
  UnitType.prototype,
616
968
  "missileImpactOffsetZ",
@@ -650,6 +1002,19 @@ __TS__SetDescriptor(
650
1002
  },
651
1003
  true
652
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
+ )
653
1018
  __TS__SetDescriptor(
654
1019
  UnitType.prototype,
655
1020
  "missileImpactSwimmingOffsetZ",
@@ -689,6 +1054,19 @@ __TS__SetDescriptor(
689
1054
  },
690
1055
  true
691
1056
  )
1057
+ __TS__SetDescriptor(
1058
+ UnitType.prototype,
1059
+ "missileImpactSwimmingOffsetZDE",
1060
+ {
1061
+ get = function(self)
1062
+ return self:getNumberField("uisz:de")
1063
+ end,
1064
+ set = function(self, missileImpactSwimmingOffsetZDE)
1065
+ self:setNumberField("uisz:de", missileImpactSwimmingOffsetZDE)
1066
+ end
1067
+ },
1068
+ true
1069
+ )
692
1070
  __TS__SetDescriptor(
693
1071
  UnitType.prototype,
694
1072
  "modelPath",
@@ -698,6 +1076,9 @@ __TS__SetDescriptor(
698
1076
  end,
699
1077
  set = function(self, modelPath)
700
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
701
1082
  end
702
1083
  },
703
1084
  true
@@ -711,6 +1092,9 @@ __TS__SetDescriptor(
711
1092
  end,
712
1093
  set = function(self, modelPathSD)
713
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
714
1098
  end
715
1099
  },
716
1100
  true
@@ -724,6 +1108,81 @@ __TS__SetDescriptor(
724
1108
  end,
725
1109
  set = function(self, modelPathHD)
726
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
1114
+ end
1115
+ },
1116
+ true
1117
+ )
1118
+ __TS__SetDescriptor(
1119
+ UnitType.prototype,
1120
+ "modelPathDE",
1121
+ {
1122
+ get = function(self)
1123
+ return self:getStringField("umdl:de")
1124
+ end,
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
1130
+ end
1131
+ },
1132
+ true
1133
+ )
1134
+ __TS__SetDescriptor(
1135
+ UnitType.prototype,
1136
+ "portraitModelPath",
1137
+ {
1138
+ get = function(self)
1139
+ return self:getStringField("upor")
1140
+ end,
1141
+ set = function(self, portraitModelPath)
1142
+ self:setStringField("upor", portraitModelPath)
1143
+ self.isPortraitModelPathSet = true
1144
+ end
1145
+ },
1146
+ true
1147
+ )
1148
+ __TS__SetDescriptor(
1149
+ UnitType.prototype,
1150
+ "portraitModelPathSD",
1151
+ {
1152
+ get = function(self)
1153
+ return self:getStringField("upor:sd")
1154
+ end,
1155
+ set = function(self, portraitModelPathSD)
1156
+ self:setStringField("upor:sd", portraitModelPathSD)
1157
+ self.isPortraitModelPathSet = true
1158
+ end
1159
+ },
1160
+ true
1161
+ )
1162
+ __TS__SetDescriptor(
1163
+ UnitType.prototype,
1164
+ "portraitModelPathHD",
1165
+ {
1166
+ get = function(self)
1167
+ return self:getStringField("upor:hd")
1168
+ end,
1169
+ set = function(self, portraitModelPathHD)
1170
+ self:setStringField("upor:hd", portraitModelPathHD)
1171
+ self.isPortraitModelPathSet = true
1172
+ end
1173
+ },
1174
+ true
1175
+ )
1176
+ __TS__SetDescriptor(
1177
+ UnitType.prototype,
1178
+ "portraitModelPathDE",
1179
+ {
1180
+ get = function(self)
1181
+ return self:getStringField("upor:de")
1182
+ end,
1183
+ set = function(self, portraitModelPathDE)
1184
+ self:setStringField("upor:de", portraitModelPathDE)
1185
+ self.isPortraitModelPathSet = true
727
1186
  end
728
1187
  },
729
1188
  true
@@ -767,6 +1226,32 @@ __TS__SetDescriptor(
767
1226
  },
768
1227
  true
769
1228
  )
1229
+ __TS__SetDescriptor(
1230
+ UnitType.prototype,
1231
+ "runSpeedDE",
1232
+ {
1233
+ get = function(self)
1234
+ return self:getNumberField("urun:de")
1235
+ end,
1236
+ set = function(self, runSpeedDE)
1237
+ self:setNumberField("urun:de", runSpeedDE)
1238
+ end
1239
+ },
1240
+ true
1241
+ )
1242
+ __TS__SetDescriptor(
1243
+ UnitType.prototype,
1244
+ "selectionCircleHeight",
1245
+ {
1246
+ get = function(self)
1247
+ return self:getNumberField("uslz")
1248
+ end,
1249
+ set = function(self, height)
1250
+ self:setNumberField("uslz", height)
1251
+ end
1252
+ },
1253
+ true
1254
+ )
770
1255
  __TS__SetDescriptor(
771
1256
  UnitType.prototype,
772
1257
  "selectionCircleScale",
@@ -806,6 +1291,19 @@ __TS__SetDescriptor(
806
1291
  },
807
1292
  true
808
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
+ )
809
1307
  __TS__SetDescriptor(
810
1308
  UnitType.prototype,
811
1309
  "scale",
@@ -845,6 +1343,19 @@ __TS__SetDescriptor(
845
1343
  },
846
1344
  true
847
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
+ )
848
1359
  __TS__SetDescriptor(
849
1360
  UnitType.prototype,
850
1361
  "scoreScreenIconPath",
@@ -884,6 +1395,19 @@ __TS__SetDescriptor(
884
1395
  },
885
1396
  true
886
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
+ )
887
1411
  __TS__SetDescriptor(
888
1412
  UnitType.prototype,
889
1413
  "specialEffectModelPath",
@@ -923,6 +1447,19 @@ __TS__SetDescriptor(
923
1447
  },
924
1448
  true
925
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
+ )
926
1463
  __TS__SetDescriptor(
927
1464
  UnitType.prototype,
928
1465
  "shadowImageHeight",
@@ -1014,6 +1551,32 @@ __TS__SetDescriptor(
1014
1551
  },
1015
1552
  true
1016
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
+ )
1017
1580
  __TS__SetDescriptor(
1018
1581
  UnitType.prototype,
1019
1582
  "armorSoundType",
@@ -1053,6 +1616,35 @@ __TS__SetDescriptor(
1053
1616
  },
1054
1617
  true
1055
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
+ )
1056
1648
  __TS__SetDescriptor(
1057
1649
  UnitType.prototype,
1058
1650
  "combatClassifications",
@@ -1071,7 +1663,7 @@ __TS__SetDescriptor(
1071
1663
  )
1072
1664
  __TS__SetDescriptor(
1073
1665
  UnitType.prototype,
1074
- "unitClassifications",
1666
+ "classifications",
1075
1667
  {
1076
1668
  get = function(self)
1077
1669
  return stringArrayToUnitClassifications(self:getStringsField("utyp"))
@@ -1087,25 +1679,25 @@ __TS__SetDescriptor(
1087
1679
  )
1088
1680
  __TS__SetDescriptor(
1089
1681
  UnitType.prototype,
1090
- "firstWeapon",
1682
+ "weapons",
1091
1683
  {get = function(self)
1092
- return self.weapons[1]
1684
+ return getOrCreateUnitTypeWeapons(self)
1093
1685
  end},
1094
1686
  true
1095
1687
  )
1096
1688
  __TS__SetDescriptor(
1097
1689
  UnitType.prototype,
1098
- "secondWeapon",
1690
+ "firstWeapon",
1099
1691
  {get = function(self)
1100
- return self.weapons[2]
1692
+ return self.weapons[1]
1101
1693
  end},
1102
1694
  true
1103
1695
  )
1104
1696
  __TS__SetDescriptor(
1105
1697
  UnitType.prototype,
1106
- "weapons",
1698
+ "secondWeapon",
1107
1699
  {get = function(self)
1108
- return getOrCreateUnitTypeWeapons(self)
1700
+ return self.weapons[2]
1109
1701
  end},
1110
1702
  true
1111
1703
  )
@@ -1179,10 +1771,13 @@ __TS__SetDescriptor(
1179
1771
  "movementType",
1180
1772
  {
1181
1773
  get = function(self)
1182
- return self:getStringField("umvt")
1774
+ return stringToMovementType(self:getStringField("umvt"))
1183
1775
  end,
1184
1776
  set = function(self, movementType)
1185
- self:setStringField("umvt", movementType)
1777
+ self:setStringField(
1778
+ "umvt",
1779
+ movementTypeToString(movementType)
1780
+ )
1186
1781
  end
1187
1782
  },
1188
1783
  true
@@ -1291,6 +1886,84 @@ __TS__SetDescriptor(
1291
1886
  },
1292
1887
  true
1293
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
+ )
1294
1967
  __TS__SetDescriptor(
1295
1968
  UnitType.prototype,
1296
1969
  "isStructure",
@@ -1322,10 +1995,10 @@ __TS__SetDescriptor(
1322
1995
  "affectingUpgradeIds",
1323
1996
  {
1324
1997
  get = function(self)
1325
- return self:getObjectDataEntryIdsField("upgr")
1998
+ return self:getObjectDataEntryNumericIdsField("upgr")
1326
1999
  end,
1327
2000
  set = function(self, affectingUpgradeIds)
1328
- self:setObjectDataEntryIdsField("upgr", affectingUpgradeIds)
2001
+ self:setObjectDataEntryNumericIdsField("upgr", affectingUpgradeIds)
1329
2002
  end
1330
2003
  },
1331
2004
  true
@@ -1385,11 +2058,11 @@ __TS__SetDescriptor(
1385
2058
  implementReadonlyNumberIndexSupplier(
1386
2059
  ____exports.UnitType,
1387
2060
  function(id)
1388
- local ____class_16 = __TS__Class()
1389
- ____class_16.name = ____class_16.name
1390
- __TS__ClassExtends(____class_16, ____exports.UnitType)
1391
- ____class_16.BASE_ID = id
1392
- return ____class_16
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
1393
2066
  end
1394
2067
  )
1395
2068
  ____exports.HeroUnitType = __TS__Class()
@@ -1408,10 +2081,10 @@ __TS__SetDescriptor(
1408
2081
  "heroAbilityTypeIds",
1409
2082
  {
1410
2083
  get = function(self)
1411
- return self:getObjectDataEntryIdsField("uhab")
2084
+ return self:getObjectDataEntryNumericIdsField("uhab")
1412
2085
  end,
1413
2086
  set = function(self, heroAbilityTypeIds)
1414
- self:setObjectDataEntryIdsField("uhab", heroAbilityTypeIds)
2087
+ self:setObjectDataEntryNumericIdsField("uhab", heroAbilityTypeIds)
1415
2088
  end
1416
2089
  },
1417
2090
  true
@@ -1450,11 +2123,11 @@ __TS__SetDescriptor(
1450
2123
  implementReadonlyNumberIndexSupplier(
1451
2124
  ____exports.HeroUnitType,
1452
2125
  function(id)
1453
- local ____class_17 = __TS__Class()
1454
- ____class_17.name = ____class_17.name
1455
- __TS__ClassExtends(____class_17, ____exports.HeroUnitType)
1456
- ____class_17.BASE_ID = id
1457
- return ____class_17
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
1458
2131
  end
1459
2132
  )
1460
2133
  return ____exports