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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (308) hide show
  1. package/attributes.d.ts +1 -0
  2. package/attributes.lua +9 -0
  3. package/core/types/frame.d.ts +1 -0
  4. package/core/types/frame.lua +136 -58
  5. package/core/types/handle.lua +9 -9
  6. package/core/types/item.d.ts +1 -0
  7. package/core/types/item.lua +1 -0
  8. package/core/types/player.d.ts +18 -1
  9. package/core/types/player.lua +76 -26
  10. package/core/types/playerCamera.d.ts +2 -0
  11. package/core/types/playerCamera.lua +123 -5
  12. package/core/types/playerColor.lua +4 -3
  13. package/core/types/sound.d.ts +1 -1
  14. package/core/types/sound.lua +14 -9
  15. package/core/types/tileCell.d.ts +11 -1
  16. package/core/types/tileCell.lua +97 -0
  17. package/core/types/timer.d.ts +3 -1
  18. package/core/types/timer.lua +27 -2
  19. package/core/types/unit.d.ts +4 -0
  20. package/core/types/unit.lua +4 -0
  21. package/decl/native.d.ts +711 -11
  22. package/destroyable.d.ts +1 -0
  23. package/destroyable.lua +9 -0
  24. package/engine/behavior.d.ts +14 -1
  25. package/engine/behavior.lua +230 -70
  26. package/engine/behaviour/ability/apply-buff.lua +4 -4
  27. package/engine/behaviour/ability/damage.d.ts +3 -0
  28. package/engine/behaviour/ability/damage.lua +18 -15
  29. package/engine/behaviour/ability/emulate-impact.d.ts +1 -1
  30. package/engine/behaviour/ability/emulate-impact.lua +7 -5
  31. package/engine/behaviour/ability/remove-buffs.d.ts +9 -0
  32. package/engine/behaviour/ability/remove-buffs.lua +21 -0
  33. package/engine/behaviour/ability/restore-mana.d.ts +1 -1
  34. package/engine/behaviour/ability/restore-mana.lua +6 -6
  35. package/engine/behaviour/ability.d.ts +12 -6
  36. package/engine/behaviour/ability.lua +42 -1
  37. package/engine/behaviour/unit/stun-immunity.d.ts +9 -5
  38. package/engine/behaviour/unit/stun-immunity.lua +17 -7
  39. package/engine/behaviour/unit.d.ts +16 -5
  40. package/engine/behaviour/unit.lua +133 -26
  41. package/engine/buff.d.ts +73 -27
  42. package/engine/buff.lua +424 -193
  43. package/engine/index.d.ts +2 -1
  44. package/engine/internal/ability.d.ts +7 -1
  45. package/engine/internal/ability.lua +86 -44
  46. package/engine/internal/item/fields.d.ts +12 -0
  47. package/engine/internal/item/fields.lua +33 -0
  48. package/engine/internal/item+owner.d.ts +1 -0
  49. package/engine/internal/item+owner.lua +19 -6
  50. package/engine/internal/item.d.ts +23 -14
  51. package/engine/internal/item.lua +169 -82
  52. package/engine/internal/mechanics/cast-ability.lua +6 -3
  53. package/engine/internal/misc/frame-coordinates.lua +21 -0
  54. package/engine/internal/misc/get-terrain-z.d.ts +2 -0
  55. package/engine/internal/misc/get-terrain-z.lua +11 -0
  56. package/engine/internal/misc/player-local-handle.d.ts +2 -0
  57. package/engine/internal/misc/player-local-handle.lua +5 -0
  58. package/engine/internal/object-data/armor-bonus.d.ts +2 -0
  59. package/engine/internal/object-data/attribute-bonus.lua +2 -2
  60. package/engine/internal/object-data/health-bonus.d.ts +2 -0
  61. package/engine/internal/object-data/health-bonus.lua +16 -0
  62. package/engine/internal/object-data/mana-bonus.d.ts +2 -0
  63. package/engine/internal/object-data/mana-bonus.lua +16 -0
  64. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.d.ts +2 -0
  65. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
  66. package/engine/internal/unit/ability.d.ts +14 -14
  67. package/engine/internal/unit/ability.lua +86 -47
  68. package/engine/internal/unit/appearance.d.ts +15 -0
  69. package/engine/internal/unit/appearance.lua +85 -0
  70. package/engine/internal/unit/attributes.d.ts +17 -0
  71. package/engine/internal/unit/attributes.lua +46 -0
  72. package/engine/internal/unit/bag.d.ts +18 -0
  73. package/engine/internal/unit/bag.lua +63 -0
  74. package/engine/internal/unit/bonus.d.ts +6 -0
  75. package/engine/internal/unit/bonus.lua +33 -3
  76. package/engine/internal/unit/buff.d.ts +2 -2
  77. package/engine/internal/unit/buff.lua +34 -19
  78. package/engine/internal/unit/equipment.d.ts +36 -0
  79. package/engine/internal/unit/equipment.lua +169 -0
  80. package/engine/internal/unit/fly-height.d.ts +7 -0
  81. package/engine/internal/unit/fly-height.lua +20 -0
  82. package/engine/internal/unit/interrupts.d.ts +12 -0
  83. package/engine/internal/unit/interrupts.lua +28 -0
  84. package/engine/internal/unit/{item.d.ts → inventory.d.ts} +3 -3
  85. package/engine/internal/unit/{item.lua → inventory.lua} +25 -26
  86. package/engine/internal/unit/main-selected.lua +12 -27
  87. package/engine/internal/unit/pseudo-passive-abilities.d.ts +2 -0
  88. package/engine/internal/unit/pseudo-passive-abilities.lua +11 -0
  89. package/engine/internal/unit/range-event.d.ts +12 -0
  90. package/engine/internal/unit/range-event.lua +90 -0
  91. package/engine/internal/unit/scale.d.ts +7 -0
  92. package/engine/internal/unit/scale.lua +20 -0
  93. package/engine/internal/unit+ability.lua +10 -1
  94. package/engine/internal/unit+bonus.lua +3 -3
  95. package/engine/internal/unit+damage.d.ts +9 -0
  96. package/engine/internal/unit+damage.lua +33 -0
  97. package/engine/internal/unit-missile-data.lua +58 -32
  98. package/engine/internal/unit-missile-launch.lua +52 -14
  99. package/engine/internal/unit.d.ts +18 -24
  100. package/engine/internal/unit.lua +180 -206
  101. package/engine/local-client.d.ts +27 -0
  102. package/engine/local-client.lua +518 -54
  103. package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
  104. package/engine/object-data/auxiliary/armor-type.lua +46 -0
  105. package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
  106. package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
  107. package/engine/object-data/auxiliary/equipment-type.d.ts +13 -0
  108. package/engine/object-data/auxiliary/equipment-type.lua +2 -0
  109. package/engine/object-data/auxiliary/health-regeneration-type.d.ts +8 -0
  110. package/engine/object-data/auxiliary/health-regeneration-type.lua +2 -0
  111. package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
  112. package/engine/object-data/auxiliary/item-tag.lua +2 -0
  113. package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
  114. package/engine/object-data/auxiliary/unit-attribute.lua +1 -1
  115. package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
  116. package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
  117. package/engine/object-data/entry/ability-type/armor-bonus.d.ts +8 -0
  118. package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
  119. package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
  120. package/engine/object-data/entry/ability-type/banshee.lua +13 -0
  121. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
  122. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
  123. package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
  124. package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
  125. package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
  126. package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
  127. package/engine/object-data/entry/ability-type/blank-configurable.d.ts +3 -0
  128. package/engine/object-data/entry/ability-type/blank-configurable.lua +30 -0
  129. package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
  130. package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
  131. package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
  132. package/engine/object-data/entry/ability-type/consecration.lua +52 -0
  133. package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
  134. package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
  135. package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
  136. package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
  137. package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
  138. package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
  139. package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
  140. package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
  141. package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
  142. package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
  143. package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
  144. package/engine/object-data/entry/ability-type/equipment.lua +27 -0
  145. package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
  146. package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
  147. package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
  148. package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
  149. package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
  150. package/engine/object-data/entry/ability-type/grit.lua +65 -0
  151. package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
  152. package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
  153. package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
  154. package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
  155. package/engine/object-data/entry/ability-type/{armor-increase.d.ts → healing-modifier.d.ts} +4 -3
  156. package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
  157. package/engine/object-data/entry/ability-type/health-bonus.d.ts +8 -0
  158. package/engine/object-data/entry/ability-type/health-bonus.lua +26 -0
  159. package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
  160. package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
  161. package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
  162. package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
  163. package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
  164. package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
  165. package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
  166. package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
  167. package/engine/object-data/entry/ability-type/mana-bonus.d.ts +8 -0
  168. package/engine/object-data/entry/ability-type/mana-bonus.lua +26 -0
  169. package/engine/object-data/entry/ability-type/mana-efficiency.d.ts +12 -0
  170. package/engine/object-data/entry/ability-type/mana-efficiency.lua +39 -0
  171. package/engine/object-data/entry/ability-type/mana-regeneration.d.ts +8 -0
  172. package/engine/object-data/entry/ability-type/mana-regeneration.lua +26 -0
  173. package/engine/object-data/entry/ability-type/mind-control.d.ts +21 -0
  174. package/engine/object-data/entry/ability-type/mind-control.lua +78 -0
  175. package/engine/object-data/entry/ability-type/on-attack-cast-spell.d.ts +21 -0
  176. package/engine/object-data/entry/ability-type/on-attack-cast-spell.lua +52 -0
  177. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.d.ts +19 -0
  178. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.lua +65 -0
  179. package/engine/object-data/entry/ability-type/on-hit-cast-spell.d.ts +15 -0
  180. package/engine/object-data/entry/ability-type/on-hit-cast-spell.lua +26 -0
  181. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.d.ts +6 -0
  182. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.lua +12 -0
  183. package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
  184. package/engine/object-data/entry/ability-type/provoke.lua +66 -0
  185. package/engine/object-data/entry/ability-type/raise-the-banner.d.ts +9 -0
  186. package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
  187. package/engine/object-data/entry/ability-type/reincarnation.d.ts +8 -0
  188. package/engine/object-data/entry/ability-type/reincarnation.lua +26 -0
  189. package/engine/object-data/entry/ability-type/resolve.d.ts +12 -0
  190. package/engine/object-data/entry/ability-type/resolve.lua +39 -0
  191. package/engine/object-data/entry/ability-type/righteous-fury.d.ts +33 -0
  192. package/engine/object-data/entry/ability-type/righteous-fury.lua +130 -0
  193. package/engine/object-data/entry/ability-type/sacred-aura.d.ts +27 -0
  194. package/engine/object-data/entry/ability-type/sacred-aura.lua +104 -0
  195. package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
  196. package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
  197. package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
  198. package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
  199. package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
  200. package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
  201. package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
  202. package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
  203. package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
  204. package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
  205. package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
  206. package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
  207. package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
  208. package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
  209. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
  210. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
  211. package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
  212. package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
  213. package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
  214. package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
  215. package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
  216. package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
  217. package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
  218. package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
  219. package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
  220. package/engine/object-data/entry/ability-type/talents.lua +27 -0
  221. package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
  222. package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
  223. package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
  224. package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
  225. package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
  226. package/engine/object-data/entry/ability-type/warcry.lua +26 -0
  227. package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
  228. package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
  229. package/engine/object-data/entry/ability-type.d.ts +12 -3
  230. package/engine/object-data/entry/ability-type.lua +142 -8
  231. package/engine/object-data/entry/buff-type/applicable.lua +113 -109
  232. package/engine/object-data/entry/buff-type.d.ts +6 -2
  233. package/engine/object-data/entry/buff-type.lua +26 -0
  234. package/engine/object-data/entry/destructible-type.d.ts +32 -2
  235. package/engine/object-data/entry/destructible-type.lua +181 -0
  236. package/engine/object-data/entry/item-type.d.ts +12 -3
  237. package/engine/object-data/entry/item-type.lua +52 -0
  238. package/engine/object-data/entry/lightning-type.d.ts +2 -2
  239. package/engine/object-data/entry/sound-preset.d.ts +2 -2
  240. package/engine/object-data/entry/unit-type.d.ts +62 -4
  241. package/engine/object-data/entry/unit-type.lua +474 -38
  242. package/engine/object-data/entry/upgrade.d.ts +2 -2
  243. package/engine/object-data/entry.d.ts +4 -1
  244. package/engine/object-field/ability.d.ts +3 -3
  245. package/engine/object-field/ability.lua +9 -8
  246. package/engine/object-field/item.d.ts +22 -0
  247. package/engine/object-field/item.lua +118 -0
  248. package/engine/object-field/unit.d.ts +27 -5
  249. package/engine/object-field/unit.lua +82 -0
  250. package/engine/object-field.d.ts +12 -4
  251. package/engine/object-field.lua +273 -126
  252. package/engine/random.d.ts +10 -0
  253. package/engine/random.lua +21 -0
  254. package/engine/standard/entries/ability-type.d.ts +3102 -7
  255. package/engine/standard/entries/ability-type.lua +0 -6
  256. package/engine/standard/entries/item-type.d.ts +1299 -0
  257. package/engine/standard/entries/item-type.lua +2 -0
  258. package/engine/standard/entries/unit-type.d.ts +5 -0
  259. package/engine/standard/entries/unit-type.lua +5 -0
  260. package/engine/standard/fields/ability.d.ts +2 -2
  261. package/engine/standard/fields/ability.lua +2 -2
  262. package/engine/standard/fields/item.d.ts +4 -0
  263. package/engine/standard/fields/item.lua +6 -0
  264. package/engine/standard/fields/unit.d.ts +11 -2
  265. package/engine/standard/fields/unit.lua +16 -1
  266. package/engine/synchronization.d.ts +11 -0
  267. package/engine/synchronization.lua +77 -0
  268. package/engine/text-tag.d.ts +1 -1
  269. package/engine/text-tag.lua +92 -17
  270. package/engine/unit.d.ts +9 -1
  271. package/engine/unit.lua +9 -1
  272. package/event.d.ts +1 -1
  273. package/lualib_bundle.lua +1 -1
  274. package/math.d.ts +2 -0
  275. package/math.lua +14 -0
  276. package/net/socket.lua +1 -1
  277. package/network.lua +25 -1
  278. package/objutil/buff.lua +10 -8
  279. package/objutil/object.lua +1 -1
  280. package/operation.d.ts +8 -1
  281. package/operation.lua +38 -18
  282. package/package.json +3 -23
  283. package/patch-lua.lua +15 -0
  284. package/patch-lualib.lua +1 -1
  285. package/utility/arrays.d.ts +1 -0
  286. package/utility/arrays.lua +8 -0
  287. package/utility/callback-array.d.ts +17 -0
  288. package/utility/callback-array.lua +61 -0
  289. package/utility/functions.d.ts +4 -0
  290. package/utility/functions.lua +9 -0
  291. package/utility/linked-map.d.ts +35 -0
  292. package/utility/linked-map.lua +107 -0
  293. package/utility/linked-set.d.ts +4 -1
  294. package/utility/linked-set.lua +46 -1
  295. package/utility/lua-maps.d.ts +11 -2
  296. package/utility/lua-maps.lua +33 -2
  297. package/utility/lua-sets.d.ts +1 -0
  298. package/utility/lua-sets.lua +4 -0
  299. package/utility/random.d.ts +102 -0
  300. package/utility/random.lua +273 -0
  301. package/utility/records.lua +20 -1
  302. package/utility/types.d.ts +3 -0
  303. package/utility/unordered-map.d.ts +27 -0
  304. package/utility/unordered-map.lua +99 -0
  305. /package/engine/internal/{object-data/armor-increase.d.ts → misc/frame-coordinates.d.ts} +0 -0
  306. /package/engine/internal/object-data/{armor-increase.lua → armor-bonus.lua} +0 -0
  307. /package/engine/object-data/entry/ability-type/{attribute-increase.d.ts → attribute-bonus.d.ts} +0 -0
  308. /package/engine/object-data/entry/ability-type/{attribute-increase.lua → attribute-bonus.lua} +0 -0
@@ -27,7 +27,14 @@ local attackTypeToString = ____attack_2Dtype.attackTypeToString
27
27
  local stringToAttackType = ____attack_2Dtype.stringToAttackType
28
28
  local ____config = require("config")
29
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
30
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
31
38
  ____exports.UnitTypeWeapon = __TS__Class()
32
39
  local UnitTypeWeapon = ____exports.UnitTypeWeapon
33
40
  UnitTypeWeapon.name = "UnitTypeWeapon"
@@ -213,21 +220,21 @@ __TS__SetDescriptor(
213
220
  )
214
221
  __TS__SetDescriptor(
215
222
  UnitTypeWeapon.prototype,
216
- "missileModelPath",
223
+ "missileArc",
217
224
  {
218
225
  get = function(self)
219
226
  local ____self_15 = self.unitType
220
- return ____self_15.getStringField(
227
+ return ____self_15.getNumberField(
221
228
  ____self_15,
222
- ("ua" .. tostring(self.index)) .. "m"
229
+ "uma" .. tostring(self.index)
223
230
  )
224
231
  end,
225
- set = function(self, missileModelPath)
232
+ set = function(self, missileArc)
226
233
  local ____self_16 = self.unitType
227
- ____self_16.setStringField(
234
+ ____self_16.setNumberField(
228
235
  ____self_16,
229
- ("ua" .. tostring(self.index)) .. "m",
230
- missileModelPath
236
+ "uma" .. tostring(self.index),
237
+ missileArc
231
238
  )
232
239
  end
233
240
  },
@@ -235,21 +242,21 @@ __TS__SetDescriptor(
235
242
  )
236
243
  __TS__SetDescriptor(
237
244
  UnitTypeWeapon.prototype,
238
- "range",
245
+ "missileModelPath",
239
246
  {
240
247
  get = function(self)
241
248
  local ____self_17 = self.unitType
242
- return ____self_17.getNumberField(
249
+ return ____self_17.getStringField(
243
250
  ____self_17,
244
- ("ua" .. tostring(self.index)) .. "r"
251
+ ("ua" .. tostring(self.index)) .. "m"
245
252
  )
246
253
  end,
247
- set = function(self, range)
254
+ set = function(self, missileModelPath)
248
255
  local ____self_18 = self.unitType
249
- ____self_18.setNumberField(
256
+ ____self_18.setStringField(
250
257
  ____self_18,
251
- ("ua" .. tostring(self.index)) .. "r",
252
- range
258
+ ("ua" .. tostring(self.index)) .. "m",
259
+ missileModelPath
253
260
  )
254
261
  end
255
262
  },
@@ -257,21 +264,21 @@ __TS__SetDescriptor(
257
264
  )
258
265
  __TS__SetDescriptor(
259
266
  UnitTypeWeapon.prototype,
260
- "soundType",
267
+ "missileModelPathSD",
261
268
  {
262
269
  get = function(self)
263
270
  local ____self_19 = self.unitType
264
271
  return ____self_19.getStringField(
265
272
  ____self_19,
266
- "ucs" .. tostring(self.index)
273
+ ("ua" .. tostring(self.index)) .. "m:sd"
267
274
  )
268
275
  end,
269
- set = function(self, soundType)
276
+ set = function(self, missileModelPathSD)
270
277
  local ____self_20 = self.unitType
271
278
  ____self_20.setStringField(
272
279
  ____self_20,
273
- "ucs" .. tostring(self.index),
274
- soundType
280
+ ("ua" .. tostring(self.index)) .. "m:sd",
281
+ missileModelPathSD
275
282
  )
276
283
  end
277
284
  },
@@ -279,21 +286,21 @@ __TS__SetDescriptor(
279
286
  )
280
287
  __TS__SetDescriptor(
281
288
  UnitTypeWeapon.prototype,
282
- "soundTypeSD",
289
+ "missileModelPathHD",
283
290
  {
284
291
  get = function(self)
285
292
  local ____self_21 = self.unitType
286
293
  return ____self_21.getStringField(
287
294
  ____self_21,
288
- ("ucs" .. tostring(self.index)) .. ":sd"
295
+ ("ua" .. tostring(self.index)) .. "m:hd"
289
296
  )
290
297
  end,
291
- set = function(self, soundTypeSD)
298
+ set = function(self, missileModelPathHD)
292
299
  local ____self_22 = self.unitType
293
300
  ____self_22.setStringField(
294
301
  ____self_22,
295
- ("ucs" .. tostring(self.index)) .. ":sd",
296
- soundTypeSD
302
+ ("ua" .. tostring(self.index)) .. "m:hd",
303
+ missileModelPathHD
297
304
  )
298
305
  end
299
306
  },
@@ -301,25 +308,157 @@ __TS__SetDescriptor(
301
308
  )
302
309
  __TS__SetDescriptor(
303
310
  UnitTypeWeapon.prototype,
304
- "soundTypeHD",
311
+ "missileModelPathDE",
305
312
  {
306
313
  get = function(self)
307
314
  local ____self_23 = self.unitType
308
315
  return ____self_23.getStringField(
309
316
  ____self_23,
310
- ("ucs" .. tostring(self.index)) .. ":hd"
317
+ ("ua" .. tostring(self.index)) .. "m:de"
311
318
  )
312
319
  end,
313
- set = function(self, soundTypeHD)
320
+ set = function(self, missileModelPathDE)
314
321
  local ____self_24 = self.unitType
315
322
  ____self_24.setStringField(
316
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
+ )
375
+ __TS__SetDescriptor(
376
+ UnitTypeWeapon.prototype,
377
+ "soundType",
378
+ {
379
+ get = function(self)
380
+ local ____self_29 = self.unitType
381
+ return ____self_29.getStringField(
382
+ ____self_29,
383
+ "ucs" .. tostring(self.index)
384
+ )
385
+ end,
386
+ set = function(self, soundType)
387
+ local ____self_30 = self.unitType
388
+ ____self_30.setStringField(
389
+ ____self_30,
390
+ "ucs" .. tostring(self.index),
391
+ soundType
392
+ )
393
+ end
394
+ },
395
+ true
396
+ )
397
+ __TS__SetDescriptor(
398
+ UnitTypeWeapon.prototype,
399
+ "soundTypeSD",
400
+ {
401
+ get = function(self)
402
+ local ____self_31 = self.unitType
403
+ return ____self_31.getStringField(
404
+ ____self_31,
405
+ ("ucs" .. tostring(self.index)) .. ":sd"
406
+ )
407
+ end,
408
+ set = function(self, soundTypeSD)
409
+ local ____self_32 = self.unitType
410
+ ____self_32.setStringField(
411
+ ____self_32,
412
+ ("ucs" .. tostring(self.index)) .. ":sd",
413
+ soundTypeSD
414
+ )
415
+ end
416
+ },
417
+ true
418
+ )
419
+ __TS__SetDescriptor(
420
+ UnitTypeWeapon.prototype,
421
+ "soundTypeHD",
422
+ {
423
+ get = function(self)
424
+ local ____self_33 = self.unitType
425
+ return ____self_33.getStringField(
426
+ ____self_33,
427
+ ("ucs" .. tostring(self.index)) .. ":hd"
428
+ )
429
+ end,
430
+ set = function(self, soundTypeHD)
431
+ local ____self_34 = self.unitType
432
+ ____self_34.setStringField(
433
+ ____self_34,
317
434
  ("ucs" .. tostring(self.index)) .. ":hd",
318
435
  soundTypeHD
319
436
  )
320
437
  end
321
438
  },
322
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
323
462
  );
324
463
  (function(self)
325
464
  local unitTypeWeaponsByUnitTypeId = {}
@@ -345,6 +484,10 @@ end
345
484
  function UnitType.getObjectData(self, map)
346
485
  return map.objects.unit
347
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
348
491
  UnitType.idGenerator = __TS__New(
349
492
  ObjectDataEntryIdGenerator,
350
493
  fourCC("x000")
@@ -469,6 +612,32 @@ __TS__SetDescriptor(
469
612
  },
470
613
  true
471
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
+ )
472
641
  __TS__SetDescriptor(
473
642
  UnitType.prototype,
474
643
  "iconPath",
@@ -508,6 +677,19 @@ __TS__SetDescriptor(
508
677
  },
509
678
  true
510
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
+ )
511
693
  __TS__SetDescriptor(
512
694
  UnitType.prototype,
513
695
  "isMissileScalingEnabled",
@@ -612,6 +794,19 @@ __TS__SetDescriptor(
612
794
  },
613
795
  true
614
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
+ )
615
810
  __TS__SetDescriptor(
616
811
  UnitType.prototype,
617
812
  "missileLaunchSwimmingOffsetZ",
@@ -651,6 +846,19 @@ __TS__SetDescriptor(
651
846
  },
652
847
  true
653
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
+ )
654
862
  __TS__SetDescriptor(
655
863
  UnitType.prototype,
656
864
  "missileLaunchVisualOffsetX",
@@ -690,6 +898,19 @@ __TS__SetDescriptor(
690
898
  },
691
899
  true
692
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
+ )
693
914
  __TS__SetDescriptor(
694
915
  UnitType.prototype,
695
916
  "missileLaunchVisualOffsetY",
@@ -729,6 +950,19 @@ __TS__SetDescriptor(
729
950
  },
730
951
  true
731
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
+ )
732
966
  __TS__SetDescriptor(
733
967
  UnitType.prototype,
734
968
  "missileImpactOffsetZ",
@@ -768,6 +1002,19 @@ __TS__SetDescriptor(
768
1002
  },
769
1003
  true
770
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
+ )
771
1018
  __TS__SetDescriptor(
772
1019
  UnitType.prototype,
773
1020
  "missileImpactSwimmingOffsetZ",
@@ -807,6 +1054,19 @@ __TS__SetDescriptor(
807
1054
  },
808
1055
  true
809
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
+ )
810
1070
  __TS__SetDescriptor(
811
1071
  UnitType.prototype,
812
1072
  "modelPath",
@@ -855,6 +1115,22 @@ __TS__SetDescriptor(
855
1115
  },
856
1116
  true
857
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
+ )
858
1134
  __TS__SetDescriptor(
859
1135
  UnitType.prototype,
860
1136
  "portraitModelPath",
@@ -897,6 +1173,20 @@ __TS__SetDescriptor(
897
1173
  },
898
1174
  true
899
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
1186
+ end
1187
+ },
1188
+ true
1189
+ )
900
1190
  __TS__SetDescriptor(
901
1191
  UnitType.prototype,
902
1192
  "runSpeed",
@@ -936,6 +1226,32 @@ __TS__SetDescriptor(
936
1226
  },
937
1227
  true
938
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
+ )
939
1255
  __TS__SetDescriptor(
940
1256
  UnitType.prototype,
941
1257
  "selectionCircleScale",
@@ -975,6 +1291,19 @@ __TS__SetDescriptor(
975
1291
  },
976
1292
  true
977
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
+ )
978
1307
  __TS__SetDescriptor(
979
1308
  UnitType.prototype,
980
1309
  "scale",
@@ -1014,6 +1343,19 @@ __TS__SetDescriptor(
1014
1343
  },
1015
1344
  true
1016
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
+ )
1017
1359
  __TS__SetDescriptor(
1018
1360
  UnitType.prototype,
1019
1361
  "scoreScreenIconPath",
@@ -1053,6 +1395,19 @@ __TS__SetDescriptor(
1053
1395
  },
1054
1396
  true
1055
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
+ )
1056
1411
  __TS__SetDescriptor(
1057
1412
  UnitType.prototype,
1058
1413
  "specialEffectModelPath",
@@ -1092,6 +1447,19 @@ __TS__SetDescriptor(
1092
1447
  },
1093
1448
  true
1094
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
+ )
1095
1463
  __TS__SetDescriptor(
1096
1464
  UnitType.prototype,
1097
1465
  "shadowImageHeight",
@@ -1183,6 +1551,32 @@ __TS__SetDescriptor(
1183
1551
  },
1184
1552
  true
1185
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
+ )
1186
1580
  __TS__SetDescriptor(
1187
1581
  UnitType.prototype,
1188
1582
  "armorSoundType",
@@ -1222,6 +1616,35 @@ __TS__SetDescriptor(
1222
1616
  },
1223
1617
  true
1224
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
+ )
1225
1648
  __TS__SetDescriptor(
1226
1649
  UnitType.prototype,
1227
1650
  "combatClassifications",
@@ -1240,7 +1663,7 @@ __TS__SetDescriptor(
1240
1663
  )
1241
1664
  __TS__SetDescriptor(
1242
1665
  UnitType.prototype,
1243
- "unitClassifications",
1666
+ "classifications",
1244
1667
  {
1245
1668
  get = function(self)
1246
1669
  return stringArrayToUnitClassifications(self:getStringsField("utyp"))
@@ -1476,6 +1899,19 @@ __TS__SetDescriptor(
1476
1899
  },
1477
1900
  true
1478
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
+ )
1479
1915
  __TS__SetDescriptor(
1480
1916
  UnitType.prototype,
1481
1917
  "manaRegenerationRate",
@@ -1622,11 +2058,11 @@ __TS__SetDescriptor(
1622
2058
  implementReadonlyNumberIndexSupplier(
1623
2059
  ____exports.UnitType,
1624
2060
  function(id)
1625
- local ____class_25 = __TS__Class()
1626
- ____class_25.name = ____class_25.name
1627
- __TS__ClassExtends(____class_25, ____exports.UnitType)
1628
- ____class_25.BASE_ID = id
1629
- return ____class_25
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
1630
2066
  end
1631
2067
  )
1632
2068
  ____exports.HeroUnitType = __TS__Class()
@@ -1687,11 +2123,11 @@ __TS__SetDescriptor(
1687
2123
  implementReadonlyNumberIndexSupplier(
1688
2124
  ____exports.HeroUnitType,
1689
2125
  function(id)
1690
- local ____class_26 = __TS__Class()
1691
- ____class_26.name = ____class_26.name
1692
- __TS__ClassExtends(____class_26, ____exports.HeroUnitType)
1693
- ____class_26.BASE_ID = id
1694
- return ____class_26
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
1695
2131
  end
1696
2132
  )
1697
2133
  return ____exports