warscript 0.0.1-dev.8bfb72f → 0.0.1-dev.8d8d605

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 (372) hide show
  1. package/attributes.d.ts +6 -0
  2. package/attributes.lua +17 -1
  3. package/config.d.ts +5 -0
  4. package/config.lua +10 -0
  5. package/core/types/effect.d.ts +1 -3
  6. package/core/types/effect.lua +26 -29
  7. package/core/types/frame.d.ts +1 -0
  8. package/core/types/frame.lua +136 -58
  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 +76 -26
  14. package/core/types/playerCamera.d.ts +2 -0
  15. package/core/types/playerCamera.lua +123 -5
  16. package/core/types/playerColor.lua +4 -3
  17. package/core/types/sound.d.ts +18 -25
  18. package/core/types/sound.lua +113 -33
  19. package/core/types/tileCell.d.ts +11 -1
  20. package/core/types/tileCell.lua +97 -0
  21. package/core/types/timer.d.ts +9 -8
  22. package/core/types/timer.lua +45 -23
  23. package/core/types/unit.d.ts +4 -0
  24. package/core/types/unit.lua +4 -0
  25. package/core/util.lua +6 -1
  26. package/decl/native.d.ts +1718 -964
  27. package/destroyable.d.ts +1 -0
  28. package/destroyable.lua +9 -0
  29. package/engine/behavior.d.ts +14 -1
  30. package/engine/behavior.lua +230 -70
  31. package/engine/behaviour/ability/apply-buff.lua +5 -5
  32. package/engine/behaviour/ability/apply-unit-behavior.lua +1 -0
  33. package/engine/behaviour/ability/damage.d.ts +12 -3
  34. package/engine/behaviour/ability/damage.lua +40 -49
  35. package/engine/behaviour/ability/emulate-impact.d.ts +1 -1
  36. package/engine/behaviour/ability/emulate-impact.lua +23 -7
  37. package/engine/behaviour/ability/remove-buffs.d.ts +9 -0
  38. package/engine/behaviour/ability/remove-buffs.lua +21 -0
  39. package/engine/behaviour/ability/restore-mana.d.ts +1 -1
  40. package/engine/behaviour/ability/restore-mana.lua +6 -6
  41. package/engine/behaviour/ability.d.ts +16 -6
  42. package/engine/behaviour/ability.lua +67 -21
  43. package/engine/behaviour/unit/stun-immunity.d.ts +12 -6
  44. package/engine/behaviour/unit/stun-immunity.lua +57 -31
  45. package/engine/behaviour/unit.d.ts +41 -2
  46. package/engine/behaviour/unit.lua +270 -6
  47. package/engine/buff.d.ts +117 -60
  48. package/engine/buff.lua +587 -303
  49. package/engine/index.d.ts +2 -1
  50. package/engine/internal/ability.d.ts +11 -1
  51. package/engine/internal/ability.lua +100 -41
  52. package/engine/internal/item/ability.lua +63 -11
  53. package/engine/internal/item/fields.d.ts +12 -0
  54. package/engine/internal/item/fields.lua +33 -0
  55. package/engine/internal/item+owner.d.ts +1 -0
  56. package/engine/internal/item+owner.lua +19 -6
  57. package/engine/internal/item.d.ts +28 -16
  58. package/engine/internal/item.lua +265 -83
  59. package/engine/internal/mechanics/ability-duration.lua +1 -1
  60. package/engine/internal/mechanics/cast-ability.lua +6 -3
  61. package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
  62. package/engine/internal/misc/frame-coordinates.d.ts +2 -0
  63. package/engine/internal/misc/frame-coordinates.lua +21 -0
  64. package/engine/internal/misc/get-terrain-z.d.ts +2 -0
  65. package/engine/internal/misc/get-terrain-z.lua +11 -0
  66. package/engine/internal/misc/player-local-handle.d.ts +2 -0
  67. package/engine/internal/misc/player-local-handle.lua +5 -0
  68. package/engine/internal/object-data/armor-bonus.d.ts +2 -0
  69. package/engine/internal/object-data/attribute-bonus.lua +2 -2
  70. package/engine/internal/object-data/health-bonus.d.ts +2 -0
  71. package/engine/internal/object-data/health-bonus.lua +16 -0
  72. package/engine/internal/object-data/mana-bonus.d.ts +2 -0
  73. package/engine/internal/object-data/mana-bonus.lua +16 -0
  74. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.d.ts +2 -0
  75. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
  76. package/engine/internal/unit/ability.d.ts +35 -0
  77. package/engine/internal/unit/ability.lua +113 -12
  78. package/engine/internal/unit/allowed-targets.d.ts +1 -1
  79. package/engine/internal/unit/allowed-targets.lua +9 -1
  80. package/engine/internal/unit/appearance.d.ts +15 -0
  81. package/engine/internal/unit/appearance.lua +85 -0
  82. package/engine/internal/unit/attributes.d.ts +17 -0
  83. package/engine/internal/unit/attributes.lua +46 -0
  84. package/engine/internal/unit/bag.d.ts +18 -0
  85. package/engine/internal/unit/bag.lua +63 -0
  86. package/engine/internal/unit/bonus.d.ts +6 -0
  87. package/engine/internal/unit/bonus.lua +33 -3
  88. package/engine/internal/unit/buff.d.ts +2 -2
  89. package/engine/internal/unit/buff.lua +34 -19
  90. package/engine/internal/unit/equipment.d.ts +36 -0
  91. package/engine/internal/unit/equipment.lua +169 -0
  92. package/engine/internal/unit/fly-height.d.ts +7 -0
  93. package/engine/internal/unit/fly-height.lua +20 -0
  94. package/engine/internal/unit/interrupts.d.ts +12 -0
  95. package/engine/internal/unit/interrupts.lua +28 -0
  96. package/engine/internal/unit/{item.d.ts → inventory.d.ts} +3 -3
  97. package/engine/internal/unit/{item.lua → inventory.lua} +25 -26
  98. package/engine/internal/unit/main-selected.lua +12 -27
  99. package/engine/internal/unit/order.d.ts +20 -0
  100. package/engine/internal/unit/order.lua +136 -0
  101. package/engine/internal/unit/pseudo-passive-abilities.d.ts +2 -0
  102. package/engine/internal/unit/pseudo-passive-abilities.lua +11 -0
  103. package/engine/internal/unit/range-event.d.ts +12 -0
  104. package/engine/internal/unit/range-event.lua +90 -0
  105. package/engine/internal/unit/scale.d.ts +7 -0
  106. package/engine/internal/unit/scale.lua +20 -0
  107. package/engine/internal/unit+ability.lua +10 -1
  108. package/engine/internal/unit+bonus.lua +3 -3
  109. package/engine/internal/unit+damage.d.ts +11 -11
  110. package/engine/internal/unit+damage.lua +43 -14
  111. package/engine/internal/unit+spellSteal.lua +1 -2
  112. package/engine/internal/unit-missile-data.lua +58 -32
  113. package/engine/internal/unit-missile-launch.lua +52 -14
  114. package/engine/internal/unit.d.ts +42 -25
  115. package/engine/internal/unit.lua +384 -265
  116. package/engine/lightning.d.ts +4 -3
  117. package/engine/lightning.lua +21 -12
  118. package/engine/local-client.d.ts +27 -0
  119. package/engine/local-client.lua +343 -54
  120. package/engine/object-data/auxiliary/animation-name.d.ts +1 -0
  121. package/engine/object-data/auxiliary/animation-name.lua +16 -0
  122. package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
  123. package/engine/object-data/auxiliary/armor-type.lua +46 -0
  124. package/engine/object-data/auxiliary/attachment-preset.d.ts +7 -2
  125. package/engine/object-data/auxiliary/attachment-preset.lua +4 -3
  126. package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
  127. package/engine/object-data/auxiliary/attack-type.lua +42 -0
  128. package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
  129. package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
  130. package/engine/object-data/auxiliary/equipment-type.d.ts +13 -0
  131. package/engine/object-data/auxiliary/equipment-type.lua +2 -0
  132. package/engine/object-data/auxiliary/health-regeneration-type.d.ts +8 -0
  133. package/engine/object-data/auxiliary/health-regeneration-type.lua +2 -0
  134. package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
  135. package/engine/object-data/auxiliary/item-tag.lua +2 -0
  136. package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
  137. package/engine/object-data/auxiliary/movement-type.lua +22 -0
  138. package/engine/object-data/auxiliary/sound-eax.d.ts +10 -0
  139. package/engine/object-data/auxiliary/sound-eax.lua +2 -0
  140. package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
  141. package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +1 -1
  142. package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
  143. package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
  144. package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
  145. package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
  146. package/engine/object-data/entry/ability-type/armor-bonus.d.ts +8 -0
  147. package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
  148. package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
  149. package/engine/object-data/entry/ability-type/banshee.lua +13 -0
  150. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
  151. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
  152. package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
  153. package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
  154. package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
  155. package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
  156. package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
  157. package/engine/object-data/entry/ability-type/berserk.lua +13 -0
  158. package/engine/object-data/entry/ability-type/blank-configurable.d.ts +3 -0
  159. package/engine/object-data/entry/ability-type/blank-configurable.lua +42 -1
  160. package/engine/object-data/entry/ability-type/carrion-swarm.d.ts +14 -0
  161. package/engine/object-data/entry/ability-type/carrion-swarm.lua +65 -0
  162. package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
  163. package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
  164. package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
  165. package/engine/object-data/entry/ability-type/consecration.lua +52 -0
  166. package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
  167. package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
  168. package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
  169. package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
  170. package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
  171. package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
  172. package/engine/object-data/entry/ability-type/disease-cloud.lua +2 -2
  173. package/engine/object-data/entry/ability-type/engineering-upgrade.lua +2 -2
  174. package/engine/object-data/entry/ability-type/ensnare.d.ts +12 -0
  175. package/engine/object-data/entry/ability-type/ensnare.lua +52 -0
  176. package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
  177. package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
  178. package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
  179. package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
  180. package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
  181. package/engine/object-data/entry/ability-type/equipment.lua +27 -0
  182. package/engine/object-data/entry/ability-type/feral-spirit.lua +2 -2
  183. package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
  184. package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
  185. package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
  186. package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
  187. package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
  188. package/engine/object-data/entry/ability-type/grit.lua +65 -0
  189. package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
  190. package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
  191. package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
  192. package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
  193. package/engine/object-data/entry/ability-type/{armor-increase.d.ts → healing-modifier.d.ts} +4 -3
  194. package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
  195. package/engine/object-data/entry/ability-type/health-bonus.d.ts +8 -0
  196. package/engine/object-data/entry/ability-type/health-bonus.lua +26 -0
  197. package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
  198. package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
  199. package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
  200. package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
  201. package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
  202. package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -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/permanent-invisibility.d.ts +8 -0
  222. package/engine/object-data/entry/ability-type/permanent-invisibility.lua +26 -0
  223. package/engine/object-data/entry/ability-type/phase-shift.d.ts +10 -0
  224. package/engine/object-data/entry/ability-type/phase-shift.lua +39 -0
  225. package/engine/object-data/entry/ability-type/phoenix-morph.lua +4 -4
  226. package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
  227. package/engine/object-data/entry/ability-type/provoke.lua +66 -0
  228. package/engine/object-data/entry/ability-type/raise-dead.d.ts +17 -0
  229. package/engine/object-data/entry/ability-type/raise-dead.lua +78 -0
  230. package/engine/object-data/entry/ability-type/raise-the-banner.d.ts +9 -0
  231. package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
  232. package/engine/object-data/entry/ability-type/reincarnation.d.ts +8 -0
  233. package/engine/object-data/entry/ability-type/reincarnation.lua +26 -0
  234. package/engine/object-data/entry/ability-type/resolve.d.ts +12 -0
  235. package/engine/object-data/entry/ability-type/resolve.lua +39 -0
  236. package/engine/object-data/entry/ability-type/righteous-fury.d.ts +33 -0
  237. package/engine/object-data/entry/ability-type/righteous-fury.lua +130 -0
  238. package/engine/object-data/entry/ability-type/sacred-aura.d.ts +27 -0
  239. package/engine/object-data/entry/ability-type/sacred-aura.lua +104 -0
  240. package/engine/object-data/entry/ability-type/shock-wave.d.ts +4 -0
  241. package/engine/object-data/entry/ability-type/shock-wave.lua +26 -0
  242. package/engine/object-data/entry/ability-type/slow-poison.d.ts +10 -0
  243. package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
  244. package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
  245. package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
  246. package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
  247. package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
  248. package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
  249. package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
  250. package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
  251. package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
  252. package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
  253. package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
  254. package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
  255. package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
  256. package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
  257. package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
  258. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
  259. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
  260. package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
  261. package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
  262. package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
  263. package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
  264. package/engine/object-data/entry/ability-type/summon-quilbeast.lua +2 -2
  265. package/engine/object-data/entry/ability-type/summon-water-elemental.lua +2 -2
  266. package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
  267. package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
  268. package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
  269. package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
  270. package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
  271. package/engine/object-data/entry/ability-type/talents.lua +27 -0
  272. package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
  273. package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
  274. package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
  275. package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
  276. package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
  277. package/engine/object-data/entry/ability-type/warcry.lua +26 -0
  278. package/engine/object-data/entry/ability-type/web.d.ts +12 -0
  279. package/engine/object-data/entry/ability-type/web.lua +52 -0
  280. package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
  281. package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
  282. package/engine/object-data/entry/ability-type.d.ts +30 -19
  283. package/engine/object-data/entry/ability-type.lua +222 -28
  284. package/engine/object-data/entry/buff-type/applicable.lua +122 -137
  285. package/engine/object-data/entry/buff-type.d.ts +10 -12
  286. package/engine/object-data/entry/buff-type.lua +39 -29
  287. package/engine/object-data/entry/destructible-type.d.ts +32 -2
  288. package/engine/object-data/entry/destructible-type.lua +181 -0
  289. package/engine/object-data/entry/item-type.d.ts +12 -3
  290. package/engine/object-data/entry/item-type.lua +56 -4
  291. package/engine/object-data/entry/lightning-type.d.ts +2 -2
  292. package/engine/object-data/entry/sound-preset.d.ts +33 -0
  293. package/engine/object-data/entry/sound-preset.lua +140 -0
  294. package/engine/object-data/entry/unit-type.d.ts +71 -6
  295. package/engine/object-data/entry/unit-type.lua +592 -93
  296. package/engine/object-data/entry/upgrade.d.ts +2 -2
  297. package/engine/object-data/entry/upgrade.lua +4 -4
  298. package/engine/object-data/entry.d.ts +19 -14
  299. package/engine/object-data/entry.lua +60 -32
  300. package/engine/object-field/ability.d.ts +4 -4
  301. package/engine/object-field/ability.lua +9 -8
  302. package/engine/object-field/item.d.ts +22 -0
  303. package/engine/object-field/item.lua +118 -0
  304. package/engine/object-field/unit.d.ts +72 -3
  305. package/engine/object-field/unit.lua +268 -7
  306. package/engine/object-field.d.ts +26 -7
  307. package/engine/object-field.lua +360 -119
  308. package/engine/random.d.ts +10 -0
  309. package/engine/random.lua +21 -0
  310. package/engine/standard/entries/ability-type.d.ts +3102 -7
  311. package/engine/standard/entries/ability-type.lua +0 -6
  312. package/engine/standard/entries/buff-type.d.ts +3 -0
  313. package/engine/standard/entries/buff-type.lua +3 -0
  314. package/engine/standard/entries/item-type.d.ts +1299 -0
  315. package/engine/standard/entries/item-type.lua +2 -0
  316. package/engine/standard/entries/sound-preset.d.ts +10 -0
  317. package/engine/standard/entries/sound-preset.lua +10 -0
  318. package/engine/standard/entries/unit-type.d.ts +5 -0
  319. package/engine/standard/entries/unit-type.lua +5 -0
  320. package/engine/standard/fields/ability.d.ts +2 -2
  321. package/engine/standard/fields/ability.lua +2 -2
  322. package/engine/standard/fields/item.d.ts +4 -0
  323. package/engine/standard/fields/item.lua +6 -0
  324. package/engine/standard/fields/unit.d.ts +12 -0
  325. package/engine/standard/fields/unit.lua +20 -0
  326. package/engine/synchronization.d.ts +11 -0
  327. package/engine/synchronization.lua +77 -0
  328. package/engine/text-tag.d.ts +36 -2
  329. package/engine/text-tag.lua +250 -10
  330. package/engine/unit.d.ts +10 -1
  331. package/engine/unit.lua +10 -1
  332. package/event.d.ts +1 -1
  333. package/lualib_bundle.lua +1 -1
  334. package/math.d.ts +2 -0
  335. package/math.lua +14 -0
  336. package/net/socket.lua +1 -1
  337. package/network.lua +25 -1
  338. package/objutil/buff.lua +11 -10
  339. package/objutil/object.lua +1 -1
  340. package/objutil/unit.lua +8 -0
  341. package/operation.d.ts +8 -1
  342. package/operation.lua +38 -18
  343. package/package.json +3 -23
  344. package/patch-lua.lua +15 -0
  345. package/patch-lualib.lua +1 -1
  346. package/utility/arrays.d.ts +2 -0
  347. package/utility/arrays.lua +11 -0
  348. package/utility/callback-array.d.ts +17 -0
  349. package/utility/callback-array.lua +61 -0
  350. package/utility/functions.d.ts +8 -0
  351. package/utility/functions.lua +13 -0
  352. package/utility/linked-map.d.ts +35 -0
  353. package/utility/linked-map.lua +107 -0
  354. package/utility/linked-set.d.ts +5 -1
  355. package/utility/linked-set.lua +49 -1
  356. package/utility/lua-maps.d.ts +15 -2
  357. package/utility/lua-maps.lua +53 -2
  358. package/utility/lua-sets.d.ts +2 -0
  359. package/utility/lua-sets.lua +7 -0
  360. package/utility/random.d.ts +102 -0
  361. package/utility/random.lua +273 -0
  362. package/utility/records.lua +20 -1
  363. package/utility/reflection.lua +11 -7
  364. package/utility/types.d.ts +3 -0
  365. package/utility/unordered-map.d.ts +27 -0
  366. package/utility/unordered-map.lua +99 -0
  367. package/core/types/order.d.ts +0 -25
  368. package/core/types/order.lua +0 -55
  369. /package/engine/internal/{object-data/armor-increase.d.ts → misc/damage-metadata-by-target.d.ts} +0 -0
  370. /package/engine/internal/object-data/{armor-increase.lua → armor-bonus.lua} +0 -0
  371. /package/engine/object-data/entry/ability-type/{attribute-increase.d.ts → attribute-bonus.d.ts} +0 -0
  372. /package/engine/object-data/entry/ability-type/{attribute-increase.lua → attribute-bonus.lua} +0 -0
@@ -2,6 +2,7 @@ local ____lualib = require("lualib_bundle")
2
2
  local __TS__Class = ____lualib.__TS__Class
3
3
  local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
4
  local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
5
+ local __TS__InstanceOf = ____lualib.__TS__InstanceOf
5
6
  local ____exports = {}
6
7
  local ____unit = require("engine.internal.unit")
7
8
  local Unit = ____unit.Unit
@@ -19,7 +20,7 @@ local mapIndexed = ____arrays.mapIndexed
19
20
  local ____attachment_2Dpreset = require("engine.object-data.auxiliary.attachment-preset")
20
21
  local extractAttachmentPresetInputModelPath = ____attachment_2Dpreset.extractAttachmentPresetInputModelPath
21
22
  local extractAttachmentPresetInputNodeFQN = ____attachment_2Dpreset.extractAttachmentPresetInputNodeFQN
22
- local toAttachmentPreset = ____attachment_2Dpreset.toAttachmentPreset
23
+ local toEffectPreset = ____attachment_2Dpreset.toEffectPreset
23
24
  local ____combat_2Dclassification = require("engine.object-data.auxiliary.combat-classification")
24
25
  local combatClassificationsToStringArray = ____combat_2Dclassification.combatClassificationsToStringArray
25
26
  local stringArrayToCombatClassifications = ____combat_2Dclassification.stringArrayToCombatClassifications
@@ -33,11 +34,19 @@ local ____object_2Ddata_2Dentry_2Did_2Dgenerator = require("engine.object-data.u
33
34
  local abilityTypeIdGenerator = ____object_2Ddata_2Dentry_2Did_2Dgenerator.abilityTypeIdGenerator
34
35
  local ____upgrade = require("engine.object-data.entry.upgrade")
35
36
  local Upgrade = ____upgrade.Upgrade
37
+ local ____sound = require("core.types.sound")
38
+ local isSoundLabelCustom = ____sound.isSoundLabelCustom
39
+ local Sound3D = ____sound.Sound3D
40
+ local SoundSettings = ____sound.SoundSettings
41
+ local ____lua_2Dsets = require("utility.lua-sets")
42
+ local luaSetOf = ____lua_2Dsets.luaSetOf
36
43
  local castAnimationFQNByAbilityTypeId = {}
37
44
  local isButtonVisibleFalseAbilityTypes = {}
38
45
  local casterCastingEffectPresetsByAbilityTypeId = {}
39
46
  local casterChannelingEffectPresetsByAbilityTypeId = {}
40
47
  local targetCastingEffectPresetsByAbilityTypeId = {}
48
+ local targetChannelingEffectPresetsByAbilityTypeId = {}
49
+ local targetEffectSoundPresetByAbilityTypeId = {}
41
50
  ____exports.AbilityType = __TS__Class()
42
51
  local AbilityType = ____exports.AbilityType
43
52
  AbilityType.name = "AbilityType"
@@ -113,7 +122,7 @@ __TS__SetDescriptor(
113
122
  return casterCastingEffectPresetsByAbilityTypeId[self.id] or ({})
114
123
  end,
115
124
  set = function(self, casterCastingEffectPresets)
116
- casterCastingEffectPresetsByAbilityTypeId[self.id] = map(casterCastingEffectPresets, toAttachmentPreset)
125
+ casterCastingEffectPresetsByAbilityTypeId[self.id] = map(casterCastingEffectPresets, toEffectPreset)
117
126
  end
118
127
  },
119
128
  true
@@ -126,7 +135,7 @@ __TS__SetDescriptor(
126
135
  return casterChannelingEffectPresetsByAbilityTypeId[self.id] or ({})
127
136
  end,
128
137
  set = function(self, casterChannelingEffectPresets)
129
- casterChannelingEffectPresetsByAbilityTypeId[self.id] = map(casterChannelingEffectPresets, toAttachmentPreset)
138
+ casterChannelingEffectPresetsByAbilityTypeId[self.id] = map(casterChannelingEffectPresets, toEffectPreset)
130
139
  end
131
140
  },
132
141
  true
@@ -196,6 +205,19 @@ __TS__SetDescriptor(
196
205
  },
197
206
  true
198
207
  )
208
+ __TS__SetDescriptor(
209
+ AbilityType.prototype,
210
+ "iconPathDE",
211
+ {
212
+ get = function(self)
213
+ return self:getStringField("aart:de")
214
+ end,
215
+ set = function(self, iconPathDE)
216
+ self:setStringField("aart:de", iconPathDE)
217
+ end
218
+ },
219
+ true
220
+ )
199
221
  __TS__SetDescriptor(
200
222
  AbilityType.prototype,
201
223
  "isButtonVisible",
@@ -271,10 +293,10 @@ __TS__SetDescriptor(
271
293
  "lightningTypeIds",
272
294
  {
273
295
  get = function(self)
274
- return self:getObjectDataEntryIdsField("alig")
296
+ return self:getObjectDataEntryNumericIdsField("alig")
275
297
  end,
276
298
  set = function(self, lightningTypeIds)
277
- self:setObjectDataEntryIdsField("alig", lightningTypeIds)
299
+ self:setObjectDataEntryNumericIdsField("alig", lightningTypeIds)
278
300
  end
279
301
  },
280
302
  true
@@ -318,6 +340,19 @@ __TS__SetDescriptor(
318
340
  },
319
341
  true
320
342
  )
343
+ __TS__SetDescriptor(
344
+ AbilityType.prototype,
345
+ "missileModelPathDE",
346
+ {
347
+ get = function(self)
348
+ return self:getStringField("amat:de")
349
+ end,
350
+ set = function(self, missileModelPathDE)
351
+ self:setStringField("amat:de", missileModelPathDE)
352
+ end
353
+ },
354
+ true
355
+ )
321
356
  __TS__SetDescriptor(
322
357
  AbilityType.prototype,
323
358
  "missileMovementArc",
@@ -365,7 +400,20 @@ __TS__SetDescriptor(
365
400
  return targetCastingEffectPresetsByAbilityTypeId[self.id] or ({})
366
401
  end,
367
402
  set = function(self, targetCastingEffectPresets)
368
- targetCastingEffectPresetsByAbilityTypeId[self.id] = map(targetCastingEffectPresets, toAttachmentPreset)
403
+ targetCastingEffectPresetsByAbilityTypeId[self.id] = map(targetCastingEffectPresets, toEffectPreset)
404
+ end
405
+ },
406
+ true
407
+ )
408
+ __TS__SetDescriptor(
409
+ AbilityType.prototype,
410
+ "targetChannelingEffectPresets",
411
+ {
412
+ get = function(self)
413
+ return targetChannelingEffectPresetsByAbilityTypeId[self.id] or ({})
414
+ end,
415
+ set = function(self, targetChannelingEffectPresets)
416
+ targetChannelingEffectPresetsByAbilityTypeId[self.id] = map(targetChannelingEffectPresets, toEffectPreset)
369
417
  end
370
418
  },
371
419
  true
@@ -451,6 +499,33 @@ __TS__SetDescriptor(
451
499
  },
452
500
  true
453
501
  )
502
+ __TS__SetDescriptor(
503
+ AbilityType.prototype,
504
+ "targetEffectPresetsDE",
505
+ {
506
+ get = function(self)
507
+ return self:getAttachmentPresetListField(
508
+ "atat:de",
509
+ array(
510
+ 6,
511
+ function(i) return ("ata" .. tostring(i)) .. ":de" end
512
+ )
513
+ )
514
+ end,
515
+ set = function(self, targetEffectPresetsDE)
516
+ self:setAttachmentPresetListField(
517
+ "atat:de",
518
+ array(
519
+ 6,
520
+ function(i) return ("ata" .. tostring(i)) .. ":de" end
521
+ ),
522
+ "atac:de",
523
+ targetEffectPresetsDE
524
+ )
525
+ end
526
+ },
527
+ true
528
+ )
454
529
  __TS__SetDescriptor(
455
530
  AbilityType.prototype,
456
531
  "turnOffButtonPositionX",
@@ -508,7 +583,7 @@ __TS__SetDescriptor(
508
583
  "techTreeDependencies",
509
584
  {
510
585
  get = function(self)
511
- local techTreeDependencyIds = self:getObjectDataEntryIdsField("areq")
586
+ local techTreeDependencyIds = self:getObjectDataEntryNumericIdsField("areq")
512
587
  local techTreeDependencyInternalLevels = self:getNumbersField("arqa")
513
588
  return mapIndexed(
514
589
  techTreeDependencyIds,
@@ -528,7 +603,7 @@ __TS__SetDescriptor(
528
603
  map(techTreeDependencies, extractTechTreeDependencyInputLevel),
529
604
  function(techTreeDependencyLevel) return techTreeDependencyLevel + 1 end
530
605
  )
531
- self:setObjectDataEntryIdsField("areq", techTreeDependencyIds)
606
+ self:setObjectDataEntryNumericIdsField("areq", techTreeDependencyIds)
532
607
  self:setNumbersField("arqa", techTreeDependencyInternalLevels)
533
608
  end
534
609
  },
@@ -718,26 +793,40 @@ __TS__SetDescriptor(
718
793
  )
719
794
  __TS__SetDescriptor(
720
795
  AbilityType.prototype,
721
- "soundPresetName",
796
+ "casterEffectSoundPresetId",
722
797
  {
723
798
  get = function(self)
724
- return self:getStringField("aefs")
799
+ local casterEffectSoundPresetId = self:getStringField("aefs")
800
+ return casterEffectSoundPresetId ~= "" and casterEffectSoundPresetId or nil
725
801
  end,
726
- set = function(self, soundPresetName)
727
- self:setStringField("aefs", soundPresetName)
802
+ set = function(self, casterEffectSoundPresetId)
803
+ self:setStringField("aefs", casterEffectSoundPresetId or "")
728
804
  end
729
805
  },
730
806
  true
731
807
  )
732
808
  __TS__SetDescriptor(
733
809
  AbilityType.prototype,
734
- "loopingSoundPresetName",
810
+ "casterEffectLoopingSoundPresetId",
735
811
  {
736
812
  get = function(self)
737
813
  return self:getStringField("aefl")
738
814
  end,
739
- set = function(self, loopingSoundPresetName)
740
- self:setStringField("aefl", loopingSoundPresetName)
815
+ set = function(self, casterEffectLoopingSoundPresetId)
816
+ self:setStringField("aefl", casterEffectLoopingSoundPresetId)
817
+ end
818
+ },
819
+ true
820
+ )
821
+ __TS__SetDescriptor(
822
+ AbilityType.prototype,
823
+ "targetEffectSoundPresetId",
824
+ {
825
+ get = function(self)
826
+ return targetEffectSoundPresetByAbilityTypeId[self.id]
827
+ end,
828
+ set = function(self, targetEffectSoundPresetId)
829
+ targetEffectSoundPresetByAbilityTypeId[self.id] = targetEffectSoundPresetId
741
830
  end
742
831
  },
743
832
  true
@@ -796,10 +885,10 @@ __TS__SetDescriptor(
796
885
  "buffTypeIds",
797
886
  {
798
887
  get = function(self)
799
- return self:getObjectDataEntryIdsLevelField("abuf")
888
+ return self:getObjectDataEntryNumericIdsLevelField("abuf")
800
889
  end,
801
890
  set = function(self, buffTypeIds)
802
- self:setObjectDataEntryIdsLevelField("abuf", buffTypeIds)
891
+ self:setObjectDataEntryNumericIdsLevelField("abuf", buffTypeIds)
803
892
  end
804
893
  },
805
894
  true
@@ -848,10 +937,10 @@ __TS__SetDescriptor(
848
937
  "effectBuffTypeIds",
849
938
  {
850
939
  get = function(self)
851
- return self:getObjectDataEntryIdsLevelField("aeff")
940
+ return self:getObjectDataEntryNumericIdsLevelField("aeff")
852
941
  end,
853
942
  set = function(self, effectBuffTypeIds)
854
- self:setObjectDataEntryIdsLevelField("aeff", effectBuffTypeIds)
943
+ self:setObjectDataEntryNumericIdsLevelField("aeff", effectBuffTypeIds)
855
944
  end
856
945
  },
857
946
  true
@@ -959,13 +1048,38 @@ for abilityTypeId, animationFQN in pairs(postcompile(function() return castAnima
959
1048
  4,
960
1049
  function(caster, ability)
961
1050
  if ability:getField(ABILITY_RLF_CASTING_TIME) ~= 0 then
962
- Timer:run(function()
963
- caster:playAnimation(animationFQN)
964
- end)
1051
+ Timer:run(caster, "playAnimation", animationFQN)
965
1052
  end
966
1053
  end
967
1054
  )
968
1055
  end
1056
+ for abilityTypeId, soundPresetId in pairs(postcompile(function() return targetEffectSoundPresetByAbilityTypeId end)) do
1057
+ if soundPresetId ~= nil then
1058
+ Unit.abilityWidgetTargetChannelingStartEvent[abilityTypeId]:addListener(
1059
+ 4,
1060
+ function(caster, ability, target)
1061
+ if __TS__InstanceOf(target, Unit) then
1062
+ Sound3D:playFromLabel(soundPresetId, SoundSettings.Ability, target)
1063
+ else
1064
+ Sound3D:playFromLabel(soundPresetId, SoundSettings.Ability, target.x, target.y)
1065
+ end
1066
+ end
1067
+ )
1068
+ Unit.abilityPointTargetChannelingStartEvent[abilityTypeId]:addListener(
1069
+ 4,
1070
+ function(caster, ability, x, y)
1071
+ Sound3D:playFromLabel(soundPresetId, SoundSettings.Ability, x, y)
1072
+ end
1073
+ )
1074
+ end
1075
+ end
1076
+ local unsupportedEffectSoundAbilityTypeIds = luaSetOf(fourCC("AAns"))
1077
+ Unit.abilityChannelingStartEvent:addListener(function(caster, ability)
1078
+ local soundPresetId = ability:getField(ABILITY_SF_EFFECT_SOUND)
1079
+ if isSoundLabelCustom(soundPresetId) or soundPresetId ~= "" and unsupportedEffectSoundAbilityTypeIds[ability.parentTypeId] ~= nil then
1080
+ Sound3D:playFromLabel(soundPresetId, SoundSettings.Ability, caster)
1081
+ end
1082
+ end)
969
1083
  local casterCastingEffectModelPathsByAbilityTypeId = postcompile(function()
970
1084
  return mapValues(
971
1085
  casterCastingEffectPresetsByAbilityTypeId,
@@ -978,10 +1092,17 @@ local casterCastingEffectAttachmentPointsByAbilityTypeId = postcompile(function(
978
1092
  function(casterCastingEffectPresets) return map(casterCastingEffectPresets, extractAttachmentPresetInputNodeFQN) end
979
1093
  )
980
1094
  end)
1095
+ local casterCastingEffectParametersByAbilityTypeId = postcompile(function()
1096
+ return mapValues(
1097
+ casterCastingEffectPresetsByAbilityTypeId,
1098
+ function(casterCastingEffectPresets) return map(casterCastingEffectPresets, "parameters") end
1099
+ )
1100
+ end)
981
1101
  local casterCastingEffectsByCaster = {}
982
1102
  local function handleAbilityCastingStartEvent(caster, ability)
983
1103
  local effectModelPaths = casterCastingEffectModelPathsByAbilityTypeId[ability.typeId]
984
1104
  local attachmentPoints = casterCastingEffectAttachmentPointsByAbilityTypeId[ability.typeId]
1105
+ local parameters = casterCastingEffectParametersByAbilityTypeId[ability.typeId]
985
1106
  local effects = {}
986
1107
  if effectModelPaths ~= nil then
987
1108
  for i = 1, #effectModelPaths do
@@ -990,7 +1111,7 @@ local function handleAbilityCastingStartEvent(caster, ability)
990
1111
  if attachmentPoint == nil or attachmentPoint == "" then
991
1112
  attachmentPoint = "origin"
992
1113
  end
993
- effects[i] = Effect:createTarget(effectModelPath, caster, attachmentPoint)
1114
+ effects[i] = Effect:create(effectModelPath, caster, attachmentPoint, parameters and parameters[i])
994
1115
  end
995
1116
  end
996
1117
  casterCastingEffectsByCaster[caster] = effects
@@ -1021,10 +1142,17 @@ local casterChannelingEffectAttachmentPointsByAbilityTypeId = postcompile(functi
1021
1142
  function(casterChannelingEffectPresets) return map(casterChannelingEffectPresets, extractAttachmentPresetInputNodeFQN) end
1022
1143
  )
1023
1144
  end)
1145
+ local casterChannelingEffectParametersByAbilityTypeId = postcompile(function()
1146
+ return mapValues(
1147
+ casterChannelingEffectPresetsByAbilityTypeId,
1148
+ function(casterChannelingEffectPresets) return map(casterChannelingEffectPresets, "parameters") end
1149
+ )
1150
+ end)
1024
1151
  local casterChannelingEffectsByCaster = {}
1025
1152
  local function handleAbilityChannelingStartEvent(caster, ability)
1026
1153
  local effectModelPaths = casterChannelingEffectModelPathsByAbilityTypeId[ability.typeId]
1027
1154
  local attachmentPoints = casterChannelingEffectAttachmentPointsByAbilityTypeId[ability.typeId]
1155
+ local parameters = casterChannelingEffectParametersByAbilityTypeId[ability.typeId]
1028
1156
  local effects = {}
1029
1157
  if effectModelPaths ~= nil then
1030
1158
  for i = 1, #effectModelPaths do
@@ -1033,23 +1161,89 @@ local function handleAbilityChannelingStartEvent(caster, ability)
1033
1161
  if attachmentPoint == nil or attachmentPoint == "" then
1034
1162
  attachmentPoint = "origin"
1035
1163
  end
1036
- effects[i] = Effect:createTarget(effectModelPath, caster, attachmentPoint)
1164
+ effects[i] = Effect:create(effectModelPath, caster, attachmentPoint, parameters and parameters[i])
1037
1165
  end
1038
1166
  end
1039
1167
  casterChannelingEffectsByCaster[caster] = effects
1040
1168
  end
1169
+ local targetChannelingEffectModelPathsByAbilityTypeId = postcompile(function()
1170
+ return mapValues(
1171
+ targetChannelingEffectPresetsByAbilityTypeId,
1172
+ function(targetChannelingEffectPresets) return map(targetChannelingEffectPresets, extractAttachmentPresetInputModelPath) end
1173
+ )
1174
+ end)
1175
+ local targetChannelingEffectAttachmentPointsByAbilityTypeId = postcompile(function()
1176
+ return mapValues(
1177
+ targetChannelingEffectPresetsByAbilityTypeId,
1178
+ function(targetChannelingEffectPresets) return map(targetChannelingEffectPresets, extractAttachmentPresetInputNodeFQN) end
1179
+ )
1180
+ end)
1181
+ local targetChannelingEffectParametersByAbilityTypeId = postcompile(function()
1182
+ return mapValues(
1183
+ targetChannelingEffectPresetsByAbilityTypeId,
1184
+ function(targetChannelingEffectPresets) return map(targetChannelingEffectPresets, "parameters") end
1185
+ )
1186
+ end)
1187
+ local targetChannelingEffectsByCaster = {}
1188
+ local function handleAbilityWidgetTargetChannelingStartEvent(caster, ability, target)
1189
+ local effectModelPaths = targetChannelingEffectModelPathsByAbilityTypeId[ability.typeId]
1190
+ local attachmentPoints = targetChannelingEffectAttachmentPointsByAbilityTypeId[ability.typeId]
1191
+ local parameters = targetChannelingEffectParametersByAbilityTypeId[ability.typeId]
1192
+ local effects = {}
1193
+ if effectModelPaths ~= nil then
1194
+ for i = 1, #effectModelPaths do
1195
+ local effectModelPath = effectModelPaths[i]
1196
+ local attachmentPoint = attachmentPoints and attachmentPoints[i]
1197
+ if attachmentPoint == nil or attachmentPoint == "" then
1198
+ attachmentPoint = "origin"
1199
+ end
1200
+ effects[i] = Effect:create(effectModelPath, target, attachmentPoint, parameters and parameters[i])
1201
+ end
1202
+ end
1203
+ targetChannelingEffectsByCaster[caster] = effects
1204
+ end
1205
+ local function handleAbilityPointTargetChannelingStartEvent(caster, ability, x, y)
1206
+ local effectModelPaths = targetChannelingEffectModelPathsByAbilityTypeId[ability.typeId]
1207
+ local attachmentPoints = targetChannelingEffectAttachmentPointsByAbilityTypeId[ability.typeId]
1208
+ local parameters = targetChannelingEffectParametersByAbilityTypeId[ability.typeId]
1209
+ local effects = {}
1210
+ if effectModelPaths ~= nil then
1211
+ for i = 1, #effectModelPaths do
1212
+ local effectModelPath = effectModelPaths[i]
1213
+ local attachmentPoint = attachmentPoints and attachmentPoints[i]
1214
+ if attachmentPoint == nil or attachmentPoint == "" then
1215
+ attachmentPoint = "origin"
1216
+ end
1217
+ effects[i] = Effect:create(effectModelPath, x, y, parameters and parameters[i])
1218
+ end
1219
+ end
1220
+ targetChannelingEffectsByCaster[caster] = effects
1221
+ end
1041
1222
  local function handleAbilityStopChannelingEvent(caster)
1042
- local effects = casterChannelingEffectsByCaster[caster]
1043
- if effects ~= nil then
1044
- for i = 1, #effects do
1045
- effects[i]:destroy()
1223
+ local casterEffects = casterChannelingEffectsByCaster[caster]
1224
+ if casterEffects ~= nil then
1225
+ for i = 1, #casterEffects do
1226
+ casterEffects[i]:destroy()
1046
1227
  end
1047
1228
  casterChannelingEffectsByCaster[caster] = nil
1048
1229
  end
1230
+ local targetEffects = targetChannelingEffectsByCaster[caster]
1231
+ if targetEffects ~= nil then
1232
+ for i = 1, #targetEffects do
1233
+ targetEffects[i]:destroy()
1234
+ end
1235
+ targetChannelingEffectsByCaster[caster] = nil
1236
+ end
1049
1237
  end
1050
1238
  for abilityTypeId in pairs(casterChannelingEffectModelPathsByAbilityTypeId) do
1051
1239
  Unit.abilityChannelingStartEvent[abilityTypeId]:addListener(4, handleAbilityChannelingStartEvent)
1052
1240
  Unit.abilityChannelingFinishEvent[abilityTypeId]:addListener(4, handleAbilityStopChannelingEvent)
1053
1241
  Unit.abilityStopEvent[abilityTypeId]:addListener(4, handleAbilityStopChannelingEvent)
1054
1242
  end
1243
+ for abilityTypeId in pairs(targetChannelingEffectModelPathsByAbilityTypeId) do
1244
+ Unit.abilityWidgetTargetChannelingStartEvent[abilityTypeId]:addListener(4, handleAbilityWidgetTargetChannelingStartEvent)
1245
+ Unit.abilityPointTargetChannelingStartEvent[abilityTypeId]:addListener(4, handleAbilityPointTargetChannelingStartEvent)
1246
+ Unit.abilityChannelingFinishEvent[abilityTypeId]:addListener(4, handleAbilityStopChannelingEvent)
1247
+ Unit.abilityStopEvent[abilityTypeId]:addListener(4, handleAbilityStopChannelingEvent)
1248
+ end
1055
1249
  return ____exports