warscript 0.0.1-dev.4f5b9e7 → 0.0.1-dev.5005a48

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 (350) hide show
  1. package/attributes.d.ts +1 -0
  2. package/attributes.lua +9 -0
  3. package/binarywriter.lua +0 -12
  4. package/core/dummy.lua +4 -2
  5. package/core/types/effect.d.ts +11 -1
  6. package/core/types/effect.lua +43 -77
  7. package/core/types/frame.d.ts +16 -2
  8. package/core/types/frame.lua +128 -67
  9. package/core/types/handle.lua +9 -9
  10. package/core/types/item.d.ts +1 -0
  11. package/core/types/item.lua +1 -0
  12. package/core/types/player.d.ts +18 -1
  13. package/core/types/player.lua +73 -25
  14. package/core/types/playerColor.lua +4 -3
  15. package/core/types/sound.d.ts +1 -1
  16. package/core/types/sound.lua +14 -9
  17. package/core/types/tileCell.d.ts +9 -3
  18. package/core/types/tileCell.lua +16 -0
  19. package/core/types/timer.d.ts +3 -2
  20. package/core/types/timer.lua +8 -2
  21. package/core/types/unit.d.ts +5 -0
  22. package/core/types/unit.lua +5 -0
  23. package/core/util.d.ts +3 -1
  24. package/core/util.lua +109 -3
  25. package/decl/native.d.ts +705 -7
  26. package/destroyable.d.ts +1 -0
  27. package/destroyable.lua +9 -0
  28. package/engine/ability-type-extended-tooltip.d.ts +8 -0
  29. package/engine/ability-type-extended-tooltip.lua +44 -0
  30. package/engine/behavior.d.ts +10 -2
  31. package/engine/behavior.lua +157 -76
  32. package/engine/behaviour/ability/apply-buff.lua +4 -4
  33. package/engine/behaviour/ability/apply-unit-behavior.lua +5 -0
  34. package/engine/behaviour/ability/damage.d.ts +4 -0
  35. package/engine/behaviour/ability/damage.lua +19 -15
  36. package/engine/behaviour/ability/emulate-impact.lua +5 -4
  37. package/engine/behaviour/ability/on-command-impact.d.ts +1 -0
  38. package/engine/behaviour/ability/on-command-impact.lua +1 -0
  39. package/engine/behaviour/ability/remove-buffs.d.ts +9 -0
  40. package/engine/behaviour/ability/remove-buffs.lua +21 -0
  41. package/engine/behaviour/ability.d.ts +13 -6
  42. package/engine/behaviour/ability.lua +56 -1
  43. package/engine/behaviour/unit/stun-immunity.d.ts +7 -5
  44. package/engine/behaviour/unit/stun-immunity.lua +6 -5
  45. package/engine/behaviour/unit.d.ts +8 -3
  46. package/engine/behaviour/unit.lua +102 -24
  47. package/engine/buff.d.ts +73 -24
  48. package/engine/buff.lua +418 -166
  49. package/engine/index.d.ts +2 -1
  50. package/engine/internal/ability.d.ts +7 -0
  51. package/engine/internal/ability.lua +65 -36
  52. package/engine/internal/item/fields.d.ts +12 -0
  53. package/engine/internal/item/fields.lua +33 -0
  54. package/engine/internal/item/owner-cache.d.ts +5 -0
  55. package/engine/internal/item/owner-cache.lua +4 -0
  56. package/engine/internal/item+owner.d.ts +2 -0
  57. package/engine/internal/item+owner.lua +27 -4
  58. package/engine/internal/item.d.ts +20 -5
  59. package/engine/internal/item.lua +146 -57
  60. package/engine/internal/mechanics/cast-ability.lua +6 -3
  61. package/engine/internal/misc/unit-ability-level-natives.lua +12 -0
  62. package/engine/internal/object-data/armor-bonus.d.ts +2 -0
  63. package/engine/internal/object-data/attribute-bonus.lua +2 -2
  64. package/engine/internal/object-data/health-bonus.d.ts +2 -0
  65. package/engine/internal/object-data/health-bonus.lua +16 -0
  66. package/engine/internal/object-data/health-regeneration-rate-increase.d.ts +2 -0
  67. package/engine/internal/object-data/health-regeneration-rate-increase.lua +48 -0
  68. package/engine/internal/object-data/mana-bonus.d.ts +2 -0
  69. package/engine/internal/object-data/mana-bonus.lua +16 -0
  70. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.d.ts +2 -0
  71. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
  72. package/engine/internal/unit/ability.d.ts +14 -14
  73. package/engine/internal/unit/ability.lua +72 -45
  74. package/engine/internal/unit/add-item-to-slot-init.lua +3 -14
  75. package/engine/internal/unit/add-item-to-slot.lua +53 -12
  76. package/engine/internal/unit/appearance.d.ts +15 -0
  77. package/engine/internal/unit/appearance.lua +85 -0
  78. package/engine/internal/unit/attributes.d.ts +17 -0
  79. package/engine/internal/unit/attributes.lua +46 -0
  80. package/engine/internal/unit/bonus.d.ts +14 -0
  81. package/engine/internal/unit/bonus.lua +102 -8
  82. package/engine/internal/unit/buff.d.ts +2 -2
  83. package/engine/internal/unit/buff.lua +34 -19
  84. package/engine/internal/unit/equipment-inventory.d.ts +44 -0
  85. package/engine/internal/unit/equipment-inventory.lua +233 -0
  86. package/engine/internal/unit/expiration-timer.lua +1 -1
  87. package/engine/internal/unit/extended-inventory.d.ts +25 -0
  88. package/engine/internal/unit/extended-inventory.lua +99 -0
  89. package/engine/internal/unit/fly-height.d.ts +7 -0
  90. package/engine/internal/unit/fly-height.lua +20 -0
  91. package/engine/internal/unit/ignore-events-items.lua +10 -1
  92. package/engine/internal/unit/interrupts.d.ts +12 -0
  93. package/engine/internal/unit/interrupts.lua +28 -0
  94. package/engine/internal/unit/{item.d.ts → inventory.d.ts} +7 -3
  95. package/engine/internal/unit/inventory.lua +87 -0
  96. package/engine/internal/unit/item-container.d.ts +25 -0
  97. package/engine/internal/unit/item-container.lua +11 -0
  98. package/engine/internal/unit/item-order-events.d.ts +17 -0
  99. package/engine/internal/unit/item-order-events.lua +67 -0
  100. package/engine/internal/unit/item-slot.d.ts +27 -0
  101. package/engine/internal/unit/item-slot.lua +92 -0
  102. package/engine/internal/unit/main-selected.lua +12 -27
  103. package/engine/internal/unit/order.d.ts +3 -3
  104. package/engine/internal/unit/order.lua +10 -10
  105. package/engine/internal/unit/range-event.d.ts +12 -0
  106. package/engine/internal/unit/range-event.lua +90 -0
  107. package/engine/internal/unit/scale.d.ts +7 -0
  108. package/engine/internal/unit/scale.lua +20 -0
  109. package/engine/internal/unit+ability.d.ts +2 -1
  110. package/engine/internal/unit+ability.lua +63 -2
  111. package/engine/internal/unit+bonus.lua +3 -3
  112. package/engine/internal/unit+damage.d.ts +9 -0
  113. package/engine/internal/unit+damage.lua +33 -0
  114. package/engine/internal/unit+rally.lua +9 -31
  115. package/engine/internal/unit-missile-data.lua +58 -32
  116. package/engine/internal/unit-missile-launch.lua +61 -36
  117. package/engine/internal/unit.d.ts +17 -29
  118. package/engine/internal/unit.lua +209 -282
  119. package/engine/local-client.d.ts +28 -0
  120. package/engine/local-client.lua +324 -54
  121. package/engine/object-data/auxiliary/attachment-preset.d.ts +7 -0
  122. package/engine/object-data/auxiliary/attachment-preset.lua +7 -0
  123. package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
  124. package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
  125. package/engine/object-data/auxiliary/equipment-type.d.ts +12 -0
  126. package/engine/object-data/auxiliary/equipment-type.lua +26 -0
  127. package/engine/object-data/auxiliary/health-regeneration-type.d.ts +8 -0
  128. package/engine/object-data/auxiliary/health-regeneration-type.lua +2 -0
  129. package/engine/object-data/auxiliary/item-class.d.ts +11 -0
  130. package/engine/object-data/auxiliary/item-class.lua +2 -0
  131. package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
  132. package/engine/object-data/auxiliary/item-tag.lua +2 -0
  133. package/engine/object-data/auxiliary/order-type.d.ts +939 -0
  134. package/engine/object-data/auxiliary/order-type.lua +2 -0
  135. package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
  136. package/engine/object-data/auxiliary/unit-attribute.lua +1 -1
  137. package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
  138. package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
  139. package/engine/object-data/entry/ability-type/armor-bonus.d.ts +8 -0
  140. package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
  141. package/engine/object-data/entry/ability-type/aura-of-blight.d.ts +13 -0
  142. package/engine/object-data/entry/ability-type/aura-of-blight.lua +39 -0
  143. package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
  144. package/engine/object-data/entry/ability-type/banshee.lua +13 -0
  145. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
  146. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
  147. package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
  148. package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
  149. package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
  150. package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
  151. package/engine/object-data/entry/ability-type/blank-passive.d.ts +4 -0
  152. package/engine/object-data/entry/ability-type/blank-passive.lua +27 -7
  153. package/engine/object-data/entry/ability-type/breath-of-fire.d.ts +11 -0
  154. package/engine/object-data/entry/ability-type/breath-of-fire.lua +27 -0
  155. package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
  156. package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
  157. package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
  158. package/engine/object-data/entry/ability-type/consecration.lua +52 -0
  159. package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
  160. package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
  161. package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
  162. package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
  163. package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
  164. package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
  165. package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
  166. package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
  167. package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
  168. package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
  169. package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
  170. package/engine/object-data/entry/ability-type/equipment.lua +27 -0
  171. package/engine/object-data/entry/ability-type/exhume-corpses.d.ts +14 -0
  172. package/engine/object-data/entry/ability-type/exhume-corpses.lua +40 -0
  173. package/engine/object-data/entry/ability-type/firebolt.d.ts +7 -0
  174. package/engine/object-data/entry/ability-type/firebolt.lua +13 -0
  175. package/engine/object-data/entry/ability-type/flame-strike.d.ts +25 -0
  176. package/engine/object-data/entry/ability-type/flame-strike.lua +92 -0
  177. package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
  178. package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
  179. package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
  180. package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
  181. package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
  182. package/engine/object-data/entry/ability-type/grit.lua +65 -0
  183. package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
  184. package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
  185. package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
  186. package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
  187. package/engine/object-data/entry/ability-type/{armor-increase.d.ts → healing-modifier.d.ts} +4 -3
  188. package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
  189. package/engine/object-data/entry/ability-type/healing-ward-aura.d.ts +13 -0
  190. package/engine/object-data/entry/ability-type/healing-ward-aura.lua +39 -0
  191. package/engine/object-data/entry/ability-type/health-bonus.d.ts +8 -0
  192. package/engine/object-data/entry/ability-type/health-bonus.lua +26 -0
  193. package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
  194. package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
  195. package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
  196. package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
  197. package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
  198. package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
  199. package/engine/object-data/entry/ability-type/item-life-regeneration.d.ts +10 -0
  200. package/engine/object-data/entry/ability-type/item-life-regeneration.lua +26 -0
  201. package/engine/object-data/entry/ability-type/life-drain.d.ts +37 -0
  202. package/engine/object-data/entry/ability-type/life-drain.lua +144 -0
  203. package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
  204. package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
  205. package/engine/object-data/entry/ability-type/mana-bonus.d.ts +8 -0
  206. package/engine/object-data/entry/ability-type/mana-bonus.lua +26 -0
  207. package/engine/object-data/entry/ability-type/mana-efficiency.d.ts +12 -0
  208. package/engine/object-data/entry/ability-type/mana-efficiency.lua +39 -0
  209. package/engine/object-data/entry/ability-type/mana-regeneration.d.ts +8 -0
  210. package/engine/object-data/entry/ability-type/mana-regeneration.lua +26 -0
  211. package/engine/object-data/entry/ability-type/mind-control.d.ts +21 -0
  212. package/engine/object-data/entry/ability-type/mind-control.lua +78 -0
  213. package/engine/object-data/entry/ability-type/on-attack-cast-spell.d.ts +21 -0
  214. package/engine/object-data/entry/ability-type/on-attack-cast-spell.lua +52 -0
  215. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.d.ts +19 -0
  216. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.lua +65 -0
  217. package/engine/object-data/entry/ability-type/on-hit-cast-spell.d.ts +15 -0
  218. package/engine/object-data/entry/ability-type/on-hit-cast-spell.lua +26 -0
  219. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.d.ts +6 -0
  220. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.lua +12 -0
  221. package/engine/object-data/entry/ability-type/passive-with-cooldown.d.ts +23 -0
  222. package/engine/object-data/entry/ability-type/passive-with-cooldown.lua +112 -0
  223. package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
  224. package/engine/object-data/entry/ability-type/provoke.lua +66 -0
  225. package/engine/object-data/entry/ability-type/rain-of-fire.d.ts +7 -0
  226. package/engine/object-data/entry/ability-type/rain-of-fire.lua +13 -0
  227. package/engine/object-data/entry/ability-type/raise-the-banner.d.ts +9 -0
  228. package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
  229. package/engine/object-data/entry/ability-type/reincarnation.d.ts +8 -0
  230. package/engine/object-data/entry/ability-type/reincarnation.lua +26 -0
  231. package/engine/object-data/entry/ability-type/resolve.d.ts +12 -0
  232. package/engine/object-data/entry/ability-type/resolve.lua +39 -0
  233. package/engine/object-data/entry/ability-type/righteous-fury.d.ts +33 -0
  234. package/engine/object-data/entry/ability-type/righteous-fury.lua +130 -0
  235. package/engine/object-data/entry/ability-type/sacred-aura.d.ts +27 -0
  236. package/engine/object-data/entry/ability-type/sacred-aura.lua +104 -0
  237. package/engine/object-data/entry/ability-type/soul-burn.d.ts +22 -0
  238. package/engine/object-data/entry/ability-type/soul-burn.lua +79 -0
  239. package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
  240. package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
  241. package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
  242. package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
  243. package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
  244. package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
  245. package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
  246. package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
  247. package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
  248. package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
  249. package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
  250. package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
  251. package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
  252. package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
  253. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
  254. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
  255. package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
  256. package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
  257. package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
  258. package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
  259. package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
  260. package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
  261. package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
  262. package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
  263. package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
  264. package/engine/object-data/entry/ability-type/talents.lua +27 -0
  265. package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
  266. package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
  267. package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
  268. package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
  269. package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
  270. package/engine/object-data/entry/ability-type/warcry.lua +26 -0
  271. package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
  272. package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
  273. package/engine/object-data/entry/ability-type.d.ts +25 -6
  274. package/engine/object-data/entry/ability-type.lua +245 -9
  275. package/engine/object-data/entry/buff-type/applicable.lua +113 -109
  276. package/engine/object-data/entry/buff-type.d.ts +6 -2
  277. package/engine/object-data/entry/buff-type.lua +26 -0
  278. package/engine/object-data/entry/destructible-type.d.ts +32 -2
  279. package/engine/object-data/entry/destructible-type.lua +181 -0
  280. package/engine/object-data/entry/item-type.d.ts +18 -3
  281. package/engine/object-data/entry/item-type.lua +84 -0
  282. package/engine/object-data/entry/lightning-type.d.ts +6 -8
  283. package/engine/object-data/entry/lightning-type.lua +1 -1
  284. package/engine/object-data/entry/sound-preset.d.ts +2 -2
  285. package/engine/object-data/entry/unit-type.d.ts +51 -2
  286. package/engine/object-data/entry/unit-type.lua +415 -37
  287. package/engine/object-data/entry/upgrade.d.ts +2 -2
  288. package/engine/object-data/entry.d.ts +6 -1
  289. package/engine/object-data/entry.lua +8 -0
  290. package/engine/object-field/ability.lua +2 -2
  291. package/engine/object-field/item.d.ts +22 -0
  292. package/engine/object-field/item.lua +118 -0
  293. package/engine/object-field/unit.d.ts +20 -5
  294. package/engine/object-field/unit.lua +61 -0
  295. package/engine/object-field.d.ts +10 -2
  296. package/engine/object-field.lua +268 -123
  297. package/engine/random.d.ts +1 -0
  298. package/engine/random.lua +8 -0
  299. package/engine/standard/entries/ability-type.d.ts +3102 -7
  300. package/engine/standard/entries/ability-type.lua +0 -6
  301. package/engine/standard/entries/buff-type.d.ts +45 -0
  302. package/engine/standard/entries/buff-type.lua +43 -0
  303. package/engine/standard/entries/item-type.d.ts +1299 -0
  304. package/engine/standard/entries/item-type.lua +2 -0
  305. package/engine/standard/entries/lightning-type.d.ts +42 -15
  306. package/engine/standard/entries/lightning-type.lua +0 -14
  307. package/engine/standard/entries/unit-type.d.ts +5 -0
  308. package/engine/standard/entries/unit-type.lua +5 -0
  309. package/engine/standard/fields/ability.d.ts +2 -2
  310. package/engine/standard/fields/ability.lua +2 -2
  311. package/engine/standard/fields/item.d.ts +4 -0
  312. package/engine/standard/fields/item.lua +6 -0
  313. package/engine/standard/fields/unit.d.ts +11 -3
  314. package/engine/standard/fields/unit.lua +15 -2
  315. package/engine/synchronization.d.ts +11 -0
  316. package/engine/synchronization.lua +77 -0
  317. package/engine/text-tag.lua +2 -1
  318. package/engine/unit.d.ts +10 -1
  319. package/engine/unit.lua +10 -1
  320. package/event.d.ts +1 -1
  321. package/lualib_bundle.lua +1 -1
  322. package/math.d.ts +2 -0
  323. package/math.lua +14 -0
  324. package/net/socket.lua +1 -1
  325. package/network.lua +25 -1
  326. package/objutil/buff.lua +10 -8
  327. package/objutil/object.lua +1 -1
  328. package/operation.d.ts +8 -1
  329. package/operation.lua +38 -18
  330. package/package.json +3 -23
  331. package/patch-lua.lua +15 -0
  332. package/utility/arrays.d.ts +7 -1
  333. package/utility/arrays.lua +17 -0
  334. package/utility/callback-array.d.ts +5 -1
  335. package/utility/callback-array.lua +16 -1
  336. package/utility/linked-map.d.ts +35 -0
  337. package/utility/linked-map.lua +107 -0
  338. package/utility/linked-set.d.ts +4 -1
  339. package/utility/linked-set.lua +46 -1
  340. package/utility/random.d.ts +102 -0
  341. package/utility/random.lua +273 -0
  342. package/utility/records.lua +20 -1
  343. package/utility/types.d.ts +3 -0
  344. package/utility/unordered-map.d.ts +27 -0
  345. package/utility/unordered-map.lua +99 -0
  346. package/engine/internal/unit/item.lua +0 -78
  347. /package/engine/internal/{object-data/armor-increase.d.ts → misc/unit-ability-level-natives.d.ts} +0 -0
  348. /package/engine/internal/object-data/{armor-increase.lua → armor-bonus.lua} +0 -0
  349. /package/engine/object-data/entry/ability-type/{attribute-increase.d.ts → attribute-bonus.d.ts} +0 -0
  350. /package/engine/object-data/entry/ability-type/{attribute-increase.lua → attribute-bonus.lua} +0 -0
@@ -0,0 +1,26 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
5
+ local ____exports = {}
6
+ local ____on_2Dattack_2Dcast_2Dspell = require("engine.object-data.entry.ability-type.on-attack-cast-spell")
7
+ local OnAttackCastSpellAbilityType = ____on_2Dattack_2Dcast_2Dspell.OnAttackCastSpellAbilityType
8
+ ____exports.OnHitCastSpellAbilityType = __TS__Class()
9
+ local OnHitCastSpellAbilityType = ____exports.OnHitCastSpellAbilityType
10
+ OnHitCastSpellAbilityType.name = "OnHitCastSpellAbilityType"
11
+ __TS__ClassExtends(OnHitCastSpellAbilityType, OnAttackCastSpellAbilityType)
12
+ OnHitCastSpellAbilityType.BASE_ID = fourCC("Atds")
13
+ __TS__SetDescriptor(
14
+ OnHitCastSpellAbilityType.prototype,
15
+ "allowedDamageType",
16
+ {
17
+ get = function(self)
18
+ return self:getNumberLevelField("ohp1")
19
+ end,
20
+ set = function(self, allowedDamageType)
21
+ self:setNumberLevelField("ohp1", allowedDamageType)
22
+ end
23
+ },
24
+ true
25
+ )
26
+ return ____exports
@@ -0,0 +1,6 @@
1
+ /** @noSelfInFile */
2
+ import { OnAttackCastSpellAbilityType } from "./on-attack-cast-spell";
3
+ import { AbilityTypeId } from "../ability-type";
4
+ export declare class OnMagicAttackCastSpellAbilityType extends OnAttackCastSpellAbilityType {
5
+ static readonly BASE_ID: AbilityTypeId;
6
+ }
@@ -0,0 +1,12 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local ____exports = {}
5
+ local ____on_2Dattack_2Dcast_2Dspell = require("engine.object-data.entry.ability-type.on-attack-cast-spell")
6
+ local OnAttackCastSpellAbilityType = ____on_2Dattack_2Dcast_2Dspell.OnAttackCastSpellAbilityType
7
+ ____exports.OnMagicAttackCastSpellAbilityType = __TS__Class()
8
+ local OnMagicAttackCastSpellAbilityType = ____exports.OnMagicAttackCastSpellAbilityType
9
+ OnMagicAttackCastSpellAbilityType.name = "OnMagicAttackCastSpellAbilityType"
10
+ __TS__ClassExtends(OnMagicAttackCastSpellAbilityType, OnAttackCastSpellAbilityType)
11
+ OnMagicAttackCastSpellAbilityType.BASE_ID = fourCC("Asas")
12
+ return ____exports
@@ -0,0 +1,23 @@
1
+ /** @noSelfInFile */
2
+ import { ExhumeCorpsesAbilityType } from "./exhume-corpses";
3
+ import { ObjectDataEntryLevelFieldValueSupplier } from "../../entry";
4
+ /**
5
+ * A passive ability whose cooldown can be started (`Ability.startCooldown`): Exhume
6
+ * Corpses (`Aexh`) is the only passive base ability that shows a cooldown.
7
+ *
8
+ * The corpse fields of the underlying Exhume Corpses are fixed at zero and its native
9
+ * durations at a practically infinite value. {@link buffDuration} and
10
+ * {@link heroBuffDuration} are kept for scripts separately from the native fields.
11
+ *
12
+ * The game ignores per-ability extended tooltips of this base ability, so the type's own
13
+ * tooltip is replaced locally with the one of the locally main selected unit's ability.
14
+ * Read the type's tooltip with `getAbilityTypeExtendedTooltip`, not with the native.
15
+ */
16
+ export declare class PassiveAbilityWithCooldownAbilityType extends ExhumeCorpsesAbilityType {
17
+ static readonly IS_SYNTHETIC = true;
18
+ constructor(object: WarObject);
19
+ get buffDuration(): number[];
20
+ set buffDuration(buffDuration: ObjectDataEntryLevelFieldValueSupplier<number>);
21
+ get heroBuffDuration(): number[];
22
+ set heroBuffDuration(heroBuffDuration: ObjectDataEntryLevelFieldValueSupplier<number>);
23
+ }
@@ -0,0 +1,112 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
5
+ local ____exports = {}
6
+ local ____exhume_2Dcorpses = require("engine.object-data.entry.ability-type.exhume-corpses")
7
+ local ExhumeCorpsesAbilityType = ____exhume_2Dcorpses.ExhumeCorpsesAbilityType
8
+ local ____ability = require("engine.standard.fields.ability")
9
+ local DURATION_HERO_ABILITY_FLOAT_LEVEL_FIELD = ____ability.DURATION_HERO_ABILITY_FLOAT_LEVEL_FIELD
10
+ local DURATION_NORMAL_ABILITY_FLOAT_LEVEL_FIELD = ____ability.DURATION_NORMAL_ABILITY_FLOAT_LEVEL_FIELD
11
+ local TOOLTIP_NORMAL_EXTENDED_ABILITY_STRING_LEVEL_FIELD = ____ability.TOOLTIP_NORMAL_EXTENDED_ABILITY_STRING_LEVEL_FIELD
12
+ local ____ability_2Dtype_2Dextended_2Dtooltip = require("engine.ability-type-extended-tooltip")
13
+ local overrideAbilityTypeExtendedTooltipLocally = ____ability_2Dtype_2Dextended_2Dtooltip.overrideAbilityTypeExtendedTooltipLocally
14
+ local ____local_2Dclient = require("engine.local-client")
15
+ local LocalClient = ____local_2Dclient.LocalClient
16
+ local ____timer = require("core.types.timer")
17
+ local Timer = ____timer.Timer
18
+ local NATIVE_DURATION = 2147483
19
+ local compiletimeAbilityTypeIds = {}
20
+ --- A passive ability whose cooldown can be started (`Ability.startCooldown`): Exhume
21
+ -- Corpses (`Aexh`) is the only passive base ability that shows a cooldown.
22
+ --
23
+ -- The corpse fields of the underlying Exhume Corpses are fixed at zero and its native
24
+ -- durations at a practically infinite value. {@link buffDuration} and
25
+ -- {@link heroBuffDuration} are kept for scripts separately from the native fields.
26
+ --
27
+ -- The game ignores per-ability extended tooltips of this base ability, so the type's own
28
+ -- tooltip is replaced locally with the one of the locally main selected unit's ability.
29
+ -- Read the type's tooltip with `getAbilityTypeExtendedTooltip`, not with the native.
30
+ ____exports.PassiveAbilityWithCooldownAbilityType = __TS__Class()
31
+ local PassiveAbilityWithCooldownAbilityType = ____exports.PassiveAbilityWithCooldownAbilityType
32
+ PassiveAbilityWithCooldownAbilityType.name = "PassiveAbilityWithCooldownAbilityType"
33
+ __TS__ClassExtends(PassiveAbilityWithCooldownAbilityType, ExhumeCorpsesAbilityType)
34
+ function PassiveAbilityWithCooldownAbilityType.prototype.____constructor(self, object)
35
+ ExhumeCorpsesAbilityType.prototype.____constructor(self, object)
36
+ self.levelCount = 1
37
+ self.iconPath = ""
38
+ self.targetEffectPresets = {}
39
+ self.maximumCorpseCount = function() return 0 end
40
+ self.corpseUnitTypeId = function() return 0 end
41
+ self:setNumberLevelField(
42
+ "adur",
43
+ function() return NATIVE_DURATION end
44
+ )
45
+ self:setNumberLevelField(
46
+ "ahdu",
47
+ function() return NATIVE_DURATION end
48
+ )
49
+ self.buffDuration = function() return 0 end
50
+ self.heroBuffDuration = function() return 0 end
51
+ self.buffTypeIds = function() return {} end
52
+ self.techTreeDependencies = {}
53
+ compiletimeAbilityTypeIds[self.id] = true
54
+ end
55
+ PassiveAbilityWithCooldownAbilityType.IS_SYNTHETIC = true
56
+ __TS__SetDescriptor(
57
+ PassiveAbilityWithCooldownAbilityType.prototype,
58
+ "buffDuration",
59
+ {
60
+ get = function(self)
61
+ return DURATION_NORMAL_ABILITY_FLOAT_LEVEL_FIELD:getValue(self)
62
+ end,
63
+ set = function(self, buffDuration)
64
+ DURATION_NORMAL_ABILITY_FLOAT_LEVEL_FIELD:setValue(self, buffDuration)
65
+ end
66
+ },
67
+ true
68
+ )
69
+ __TS__SetDescriptor(
70
+ PassiveAbilityWithCooldownAbilityType.prototype,
71
+ "heroBuffDuration",
72
+ {
73
+ get = function(self)
74
+ return DURATION_HERO_ABILITY_FLOAT_LEVEL_FIELD:getValue(self)
75
+ end,
76
+ set = function(self, heroBuffDuration)
77
+ DURATION_HERO_ABILITY_FLOAT_LEVEL_FIELD:setValue(self, heroBuffDuration)
78
+ end
79
+ },
80
+ true
81
+ )
82
+ local abilityTypeIds = postcompile(function() return compiletimeAbilityTypeIds end)
83
+ if (next(abilityTypeIds)) ~= nil then
84
+ local overriddenLevelCountByAbilityTypeId = {}
85
+ Timer.onPeriod[1 / 32]:addListener(
86
+ 0,
87
+ function()
88
+ local unit = LocalClient.mainSelectedUnit
89
+ for abilityTypeId in pairs(abilityTypeIds) do
90
+ local ability = unit and unit:getAbility(abilityTypeId)
91
+ local levelCount = ability and ability.levelCount or 0
92
+ if ability ~= nil then
93
+ for level = 0, levelCount - 1 do
94
+ overrideAbilityTypeExtendedTooltipLocally(
95
+ abilityTypeId,
96
+ level,
97
+ TOOLTIP_NORMAL_EXTENDED_ABILITY_STRING_LEVEL_FIELD:getValue(ability, level)
98
+ )
99
+ end
100
+ end
101
+ local overriddenLevelCount = overriddenLevelCountByAbilityTypeId[abilityTypeId] or 0
102
+ for level = levelCount, overriddenLevelCount - 1 do
103
+ overrideAbilityTypeExtendedTooltipLocally(abilityTypeId, level, nil)
104
+ end
105
+ if levelCount ~= overriddenLevelCount then
106
+ overriddenLevelCountByAbilityTypeId[abilityTypeId] = levelCount
107
+ end
108
+ end
109
+ end
110
+ )
111
+ end
112
+ return ____exports
@@ -0,0 +1,21 @@
1
+ /** @noSelfInFile */
2
+ import { AbilityType, AbilityTypeId } from "../ability-type";
3
+ import { ObjectDataEntryLevelFieldValueSupplier } from "../../entry";
4
+ /**
5
+ * Provoke / Heroic Challenge (AHhc). Its fields live in Data F-I; Data A-E have no metadata.
6
+ */
7
+ export declare class ProvokeAbilityType extends AbilityType {
8
+ static readonly BASE_ID: AbilityTypeId;
9
+ /** Shield Health */
10
+ get shieldHealth(): number[];
11
+ set shieldHealth(shieldHealth: ObjectDataEntryLevelFieldValueSupplier<number>);
12
+ /** Shield Reflect Percent */
13
+ get shieldReflectPercentage(): number[];
14
+ set shieldReflectPercentage(shieldReflectPercentage: ObjectDataEntryLevelFieldValueSupplier<number>);
15
+ /** Shield Duration */
16
+ get shieldDuration(): number[];
17
+ set shieldDuration(shieldDuration: ObjectDataEntryLevelFieldValueSupplier<number>);
18
+ /** Taunted Defense Reduction */
19
+ get tauntedArmorReduction(): number[];
20
+ set tauntedArmorReduction(tauntedArmorReduction: ObjectDataEntryLevelFieldValueSupplier<number>);
21
+ }
@@ -0,0 +1,66 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
5
+ local ____exports = {}
6
+ local ____ability_2Dtype = require("engine.object-data.entry.ability-type")
7
+ local AbilityType = ____ability_2Dtype.AbilityType
8
+ --- Provoke / Heroic Challenge (AHhc). Its fields live in Data F-I; Data A-E have no metadata.
9
+ ____exports.ProvokeAbilityType = __TS__Class()
10
+ local ProvokeAbilityType = ____exports.ProvokeAbilityType
11
+ ProvokeAbilityType.name = "ProvokeAbilityType"
12
+ __TS__ClassExtends(ProvokeAbilityType, AbilityType)
13
+ ProvokeAbilityType.BASE_ID = fourCC("AHhc")
14
+ __TS__SetDescriptor(
15
+ ProvokeAbilityType.prototype,
16
+ "shieldHealth",
17
+ {
18
+ get = function(self)
19
+ return self:getNumberLevelField("hhc1")
20
+ end,
21
+ set = function(self, shieldHealth)
22
+ self:setNumberLevelField("hhc1", shieldHealth)
23
+ end
24
+ },
25
+ true
26
+ )
27
+ __TS__SetDescriptor(
28
+ ProvokeAbilityType.prototype,
29
+ "shieldReflectPercentage",
30
+ {
31
+ get = function(self)
32
+ return self:getNumberLevelField("hhc2")
33
+ end,
34
+ set = function(self, shieldReflectPercentage)
35
+ self:setNumberLevelField("hhc2", shieldReflectPercentage)
36
+ end
37
+ },
38
+ true
39
+ )
40
+ __TS__SetDescriptor(
41
+ ProvokeAbilityType.prototype,
42
+ "shieldDuration",
43
+ {
44
+ get = function(self)
45
+ return self:getNumberLevelField("hhc3")
46
+ end,
47
+ set = function(self, shieldDuration)
48
+ self:setNumberLevelField("hhc3", shieldDuration)
49
+ end
50
+ },
51
+ true
52
+ )
53
+ __TS__SetDescriptor(
54
+ ProvokeAbilityType.prototype,
55
+ "tauntedArmorReduction",
56
+ {
57
+ get = function(self)
58
+ return self:getNumberLevelField("hhc4")
59
+ end,
60
+ set = function(self, tauntedArmorReduction)
61
+ self:setNumberLevelField("hhc4", tauntedArmorReduction)
62
+ end
63
+ },
64
+ true
65
+ )
66
+ return ____exports
@@ -0,0 +1,7 @@
1
+ /** @noSelfInFile */
2
+ import { AbilityTypeId } from "../ability-type";
3
+ import { BlizzardAbilityType } from "./blizzard";
4
+ /** Pit Lord's Rain of Fire (`ANrf`): waves of fire; the same fields as Blizzard (`Hbz*`). */
5
+ export declare class RainOfFireAbilityType extends BlizzardAbilityType {
6
+ static readonly BASE_ID: AbilityTypeId;
7
+ }
@@ -0,0 +1,13 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local ____exports = {}
5
+ local ____blizzard = require("engine.object-data.entry.ability-type.blizzard")
6
+ local BlizzardAbilityType = ____blizzard.BlizzardAbilityType
7
+ --- Pit Lord's Rain of Fire (`ANrf`): waves of fire; the same fields as Blizzard (`Hbz*`).
8
+ ____exports.RainOfFireAbilityType = __TS__Class()
9
+ local RainOfFireAbilityType = ____exports.RainOfFireAbilityType
10
+ RainOfFireAbilityType.name = "RainOfFireAbilityType"
11
+ __TS__ClassExtends(RainOfFireAbilityType, BlizzardAbilityType)
12
+ RainOfFireAbilityType.BASE_ID = fourCC("ANrf")
13
+ return ____exports
@@ -0,0 +1,9 @@
1
+ /** @noSelfInFile */
2
+ import { AbilityType, AbilityTypeId } from "../ability-type";
3
+ import { ObjectDataEntryLevelFieldValueSupplier } from "../../entry";
4
+ export declare class RaiseTheBannerAbilityType extends AbilityType {
5
+ static readonly BASE_ID: AbilityTypeId;
6
+ /** Given Abilities */
7
+ get givenAbilityTypeIds(): AbilityTypeId[][];
8
+ set givenAbilityTypeIds(givenAbilityTypeIds: ObjectDataEntryLevelFieldValueSupplier<AbilityTypeId[]>);
9
+ }
@@ -0,0 +1,26 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
5
+ local ____exports = {}
6
+ local ____ability_2Dtype = require("engine.object-data.entry.ability-type")
7
+ local AbilityType = ____ability_2Dtype.AbilityType
8
+ ____exports.RaiseTheBannerAbilityType = __TS__Class()
9
+ local RaiseTheBannerAbilityType = ____exports.RaiseTheBannerAbilityType
10
+ RaiseTheBannerAbilityType.name = "RaiseTheBannerAbilityType"
11
+ __TS__ClassExtends(RaiseTheBannerAbilityType, AbilityType)
12
+ RaiseTheBannerAbilityType.BASE_ID = fourCC("Aaga")
13
+ __TS__SetDescriptor(
14
+ RaiseTheBannerAbilityType.prototype,
15
+ "givenAbilityTypeIds",
16
+ {
17
+ get = function(self)
18
+ return self:getObjectDataEntryNumericIdsLevelField("aga1")
19
+ end,
20
+ set = function(self, givenAbilityTypeIds)
21
+ self:setObjectDataEntryNumericIdsLevelField("aga1", givenAbilityTypeIds)
22
+ end
23
+ },
24
+ true
25
+ )
26
+ return ____exports
@@ -0,0 +1,8 @@
1
+ /** @noSelfInFile */
2
+ import { AbilityType, AbilityTypeId } from "../ability-type";
3
+ import { ObjectDataEntryLevelFieldValueSupplier } from "../../entry";
4
+ export declare class ReincarnationAbilityType extends AbilityType {
5
+ static readonly BASE_ID: AbilityTypeId;
6
+ get reincarnationDelay(): number[];
7
+ set reincarnationDelay(reincarnationDelay: ObjectDataEntryLevelFieldValueSupplier<number>);
8
+ }
@@ -0,0 +1,26 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
5
+ local ____exports = {}
6
+ local ____ability_2Dtype = require("engine.object-data.entry.ability-type")
7
+ local AbilityType = ____ability_2Dtype.AbilityType
8
+ ____exports.ReincarnationAbilityType = __TS__Class()
9
+ local ReincarnationAbilityType = ____exports.ReincarnationAbilityType
10
+ ReincarnationAbilityType.name = "ReincarnationAbilityType"
11
+ __TS__ClassExtends(ReincarnationAbilityType, AbilityType)
12
+ ReincarnationAbilityType.BASE_ID = fourCC("AOre")
13
+ __TS__SetDescriptor(
14
+ ReincarnationAbilityType.prototype,
15
+ "reincarnationDelay",
16
+ {
17
+ get = function(self)
18
+ return self:getNumberLevelField("Ore1")
19
+ end,
20
+ set = function(self, reincarnationDelay)
21
+ self:setNumberLevelField("Ore1", reincarnationDelay)
22
+ end
23
+ },
24
+ true
25
+ )
26
+ return ____exports
@@ -0,0 +1,12 @@
1
+ /** @noSelfInFile */
2
+ import { AbilityType, AbilityTypeId } from "../ability-type";
3
+ import { ObjectDataEntryLevelFieldValueSupplier } from "../../entry";
4
+ export declare class ResolveAbilityType extends AbilityType {
5
+ static readonly BASE_ID: AbilityTypeId;
6
+ /** Resolve */
7
+ get resolve(): number[];
8
+ set resolve(resolve: ObjectDataEntryLevelFieldValueSupplier<number>);
9
+ /** Flat Bonus */
10
+ get isFlatBonus(): boolean[];
11
+ set isFlatBonus(isFlatBonus: ObjectDataEntryLevelFieldValueSupplier<boolean>);
12
+ }
@@ -0,0 +1,39 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
5
+ local ____exports = {}
6
+ local ____ability_2Dtype = require("engine.object-data.entry.ability-type")
7
+ local AbilityType = ____ability_2Dtype.AbilityType
8
+ ____exports.ResolveAbilityType = __TS__Class()
9
+ local ResolveAbilityType = ____exports.ResolveAbilityType
10
+ ResolveAbilityType.name = "ResolveAbilityType"
11
+ __TS__ClassExtends(ResolveAbilityType, AbilityType)
12
+ ResolveAbilityType.BASE_ID = fourCC("AIlv")
13
+ __TS__SetDescriptor(
14
+ ResolveAbilityType.prototype,
15
+ "resolve",
16
+ {
17
+ get = function(self)
18
+ return self:getNumberLevelField("Ilv1")
19
+ end,
20
+ set = function(self, resolve)
21
+ self:setNumberLevelField("Ilv1", resolve)
22
+ end
23
+ },
24
+ true
25
+ )
26
+ __TS__SetDescriptor(
27
+ ResolveAbilityType.prototype,
28
+ "isFlatBonus",
29
+ {
30
+ get = function(self)
31
+ return self:getBooleanLevelField("Ilv2")
32
+ end,
33
+ set = function(self, isFlatBonus)
34
+ self:setBooleanLevelField("Ilv2", isFlatBonus)
35
+ end
36
+ },
37
+ true
38
+ )
39
+ return ____exports
@@ -0,0 +1,33 @@
1
+ /** @noSelfInFile */
2
+ import { AbilityType, AbilityTypeId } from "../ability-type";
3
+ import { ObjectDataEntryLevelFieldValueSupplier } from "../../entry";
4
+ export declare class RighteousFuryAbilityType extends AbilityType {
5
+ static readonly BASE_ID: AbilityTypeId;
6
+ /** Target Intersect Radius */
7
+ get targetIntersectRadius(): number[];
8
+ set targetIntersectRadius(targetIntersectRadius: ObjectDataEntryLevelFieldValueSupplier<number>);
9
+ /** Dash Speed */
10
+ get dashSpeed(): number[];
11
+ set dashSpeed(dashSpeed: ObjectDataEntryLevelFieldValueSupplier<number>);
12
+ /** Dash Damage */
13
+ get dashDamage(): number[];
14
+ set dashDamage(dashDamage: ObjectDataEntryLevelFieldValueSupplier<number>);
15
+ /** Bonus Critical Strike */
16
+ get bonusCriticalStrike(): number[];
17
+ set bonusCriticalStrike(bonusCriticalStrike: ObjectDataEntryLevelFieldValueSupplier<number>);
18
+ /** Normal - Bonus Critical Strike Duration */
19
+ get bonusCriticalStrikeDuration(): number[];
20
+ set bonusCriticalStrikeDuration(bonusCriticalStrikeDuration: ObjectDataEntryLevelFieldValueSupplier<number>);
21
+ /** Hero - Bonus Critical Strike Duration */
22
+ get bonusCriticalStrikeHeroDuration(): number[];
23
+ set bonusCriticalStrikeHeroDuration(bonusCriticalStrikeHeroDuration: ObjectDataEntryLevelFieldValueSupplier<number>);
24
+ /** Remove Buffs On Ability Start */
25
+ get removesBuffsOnStart(): boolean[];
26
+ set removesBuffsOnStart(removesBuffsOnStart: ObjectDataEntryLevelFieldValueSupplier<boolean>);
27
+ /** Movement Speed Slow */
28
+ get movementSpeedSlowFactor(): number[];
29
+ set movementSpeedSlowFactor(movementSpeedSlowFactor: ObjectDataEntryLevelFieldValueSupplier<number>);
30
+ /** Attack Speed Slow */
31
+ get attackSpeedSlowFactor(): number[];
32
+ set attackSpeedSlowFactor(attackSpeedSlowFactor: ObjectDataEntryLevelFieldValueSupplier<number>);
33
+ }
@@ -0,0 +1,130 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
5
+ local ____exports = {}
6
+ local ____ability_2Dtype = require("engine.object-data.entry.ability-type")
7
+ local AbilityType = ____ability_2Dtype.AbilityType
8
+ ____exports.RighteousFuryAbilityType = __TS__Class()
9
+ local RighteousFuryAbilityType = ____exports.RighteousFuryAbilityType
10
+ RighteousFuryAbilityType.name = "RighteousFuryAbilityType"
11
+ __TS__ClassExtends(RighteousFuryAbilityType, AbilityType)
12
+ RighteousFuryAbilityType.BASE_ID = fourCC("ANcp")
13
+ __TS__SetDescriptor(
14
+ RighteousFuryAbilityType.prototype,
15
+ "targetIntersectRadius",
16
+ {
17
+ get = function(self)
18
+ return self:getNumberLevelField("chra")
19
+ end,
20
+ set = function(self, targetIntersectRadius)
21
+ self:setNumberLevelField("chra", targetIntersectRadius)
22
+ end
23
+ },
24
+ true
25
+ )
26
+ __TS__SetDescriptor(
27
+ RighteousFuryAbilityType.prototype,
28
+ "dashSpeed",
29
+ {
30
+ get = function(self)
31
+ return self:getNumberLevelField("chr1")
32
+ end,
33
+ set = function(self, dashSpeed)
34
+ self:setNumberLevelField("chr1", dashSpeed)
35
+ end
36
+ },
37
+ true
38
+ )
39
+ __TS__SetDescriptor(
40
+ RighteousFuryAbilityType.prototype,
41
+ "dashDamage",
42
+ {
43
+ get = function(self)
44
+ return self:getNumberLevelField("chr2")
45
+ end,
46
+ set = function(self, dashDamage)
47
+ self:setNumberLevelField("chr2", dashDamage)
48
+ end
49
+ },
50
+ true
51
+ )
52
+ __TS__SetDescriptor(
53
+ RighteousFuryAbilityType.prototype,
54
+ "bonusCriticalStrike",
55
+ {
56
+ get = function(self)
57
+ return self:getNumberLevelField("chr3")
58
+ end,
59
+ set = function(self, bonusCriticalStrike)
60
+ self:setNumberLevelField("chr3", bonusCriticalStrike)
61
+ end
62
+ },
63
+ true
64
+ )
65
+ __TS__SetDescriptor(
66
+ RighteousFuryAbilityType.prototype,
67
+ "bonusCriticalStrikeDuration",
68
+ {
69
+ get = function(self)
70
+ return self:getNumberLevelField("chr4")
71
+ end,
72
+ set = function(self, bonusCriticalStrikeDuration)
73
+ self:setNumberLevelField("chr4", bonusCriticalStrikeDuration)
74
+ end
75
+ },
76
+ true
77
+ )
78
+ __TS__SetDescriptor(
79
+ RighteousFuryAbilityType.prototype,
80
+ "bonusCriticalStrikeHeroDuration",
81
+ {
82
+ get = function(self)
83
+ return self:getNumberLevelField("chr5")
84
+ end,
85
+ set = function(self, bonusCriticalStrikeHeroDuration)
86
+ self:setNumberLevelField("chr5", bonusCriticalStrikeHeroDuration)
87
+ end
88
+ },
89
+ true
90
+ )
91
+ __TS__SetDescriptor(
92
+ RighteousFuryAbilityType.prototype,
93
+ "removesBuffsOnStart",
94
+ {
95
+ get = function(self)
96
+ return self:getBooleanLevelField("chr6")
97
+ end,
98
+ set = function(self, removesBuffsOnStart)
99
+ self:setBooleanLevelField("chr6", removesBuffsOnStart)
100
+ end
101
+ },
102
+ true
103
+ )
104
+ __TS__SetDescriptor(
105
+ RighteousFuryAbilityType.prototype,
106
+ "movementSpeedSlowFactor",
107
+ {
108
+ get = function(self)
109
+ return self:getNumberLevelField("nrf3")
110
+ end,
111
+ set = function(self, movementSpeedSlowFactor)
112
+ self:setNumberLevelField("nrf3", movementSpeedSlowFactor)
113
+ end
114
+ },
115
+ true
116
+ )
117
+ __TS__SetDescriptor(
118
+ RighteousFuryAbilityType.prototype,
119
+ "attackSpeedSlowFactor",
120
+ {
121
+ get = function(self)
122
+ return self:getNumberLevelField("nrf4")
123
+ end,
124
+ set = function(self, attackSpeedSlowFactor)
125
+ self:setNumberLevelField("nrf4", attackSpeedSlowFactor)
126
+ end
127
+ },
128
+ true
129
+ )
130
+ return ____exports
@@ -0,0 +1,27 @@
1
+ /** @noSelfInFile */
2
+ import { AbilityType, AbilityTypeId } from "../ability-type";
3
+ import { ObjectDataEntryLevelFieldValueSupplier } from "../../entry";
4
+ export declare class SacredAuraAbilityType extends AbilityType {
5
+ static readonly BASE_ID: AbilityTypeId;
6
+ /** % Magic Resist Increase for Allies */
7
+ get allyMagicResistanceIncreaseFactor(): number[];
8
+ set allyMagicResistanceIncreaseFactor(allyMagicResistanceIncreaseFactor: ObjectDataEntryLevelFieldValueSupplier<number>);
9
+ /** % Healing Increase for Allies */
10
+ get allyHealingIncreasePercentage(): number[];
11
+ set allyHealingIncreasePercentage(allyHealingIncreasePercentage: ObjectDataEntryLevelFieldValueSupplier<number>);
12
+ /** % Cooldown Reduction Increase for Allies */
13
+ get allyCooldownReductionIncreaseFactor(): number[];
14
+ set allyCooldownReductionIncreaseFactor(allyCooldownReductionIncreaseFactor: ObjectDataEntryLevelFieldValueSupplier<number>);
15
+ /** % Magic Resist Decrease for Enemies */
16
+ get enemyMagicResistanceDecreaseFactor(): number[];
17
+ set enemyMagicResistanceDecreaseFactor(enemyMagicResistanceDecreaseFactor: ObjectDataEntryLevelFieldValueSupplier<number>);
18
+ /** % Healing Decrease for Enemies */
19
+ get enemyHealingDecreaseFactor(): number[];
20
+ set enemyHealingDecreaseFactor(enemyHealingDecreaseFactor: ObjectDataEntryLevelFieldValueSupplier<number>);
21
+ /** % Cooldown Increase for Enemies */
22
+ get enemyCooldownIncreaseFactor(): number[];
23
+ set enemyCooldownIncreaseFactor(enemyCooldownIncreaseFactor: ObjectDataEntryLevelFieldValueSupplier<number>);
24
+ /** Flat Mana Regen for Allies */
25
+ get allyFlatManaRegeneration(): number[];
26
+ set allyFlatManaRegeneration(allyFlatManaRegeneration: ObjectDataEntryLevelFieldValueSupplier<number>);
27
+ }