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.
- package/attributes.d.ts +6 -0
- package/attributes.lua +17 -1
- package/config.d.ts +5 -0
- package/config.lua +10 -0
- package/core/types/effect.d.ts +1 -3
- package/core/types/effect.lua +26 -29
- package/core/types/frame.d.ts +1 -0
- package/core/types/frame.lua +136 -58
- package/core/types/handle.lua +9 -9
- package/core/types/item.d.ts +1 -0
- package/core/types/item.lua +1 -0
- package/core/types/player.d.ts +18 -1
- package/core/types/player.lua +76 -26
- package/core/types/playerCamera.d.ts +2 -0
- package/core/types/playerCamera.lua +123 -5
- package/core/types/playerColor.lua +4 -3
- package/core/types/sound.d.ts +18 -25
- package/core/types/sound.lua +113 -33
- package/core/types/tileCell.d.ts +11 -1
- package/core/types/tileCell.lua +97 -0
- package/core/types/timer.d.ts +9 -8
- package/core/types/timer.lua +45 -23
- package/core/types/unit.d.ts +4 -0
- package/core/types/unit.lua +4 -0
- package/core/util.lua +6 -1
- package/decl/native.d.ts +1718 -964
- package/destroyable.d.ts +1 -0
- package/destroyable.lua +9 -0
- package/engine/behavior.d.ts +14 -1
- package/engine/behavior.lua +230 -70
- package/engine/behaviour/ability/apply-buff.lua +5 -5
- package/engine/behaviour/ability/apply-unit-behavior.lua +1 -0
- package/engine/behaviour/ability/damage.d.ts +12 -3
- package/engine/behaviour/ability/damage.lua +40 -49
- package/engine/behaviour/ability/emulate-impact.d.ts +1 -1
- package/engine/behaviour/ability/emulate-impact.lua +23 -7
- package/engine/behaviour/ability/remove-buffs.d.ts +9 -0
- package/engine/behaviour/ability/remove-buffs.lua +21 -0
- package/engine/behaviour/ability/restore-mana.d.ts +1 -1
- package/engine/behaviour/ability/restore-mana.lua +6 -6
- package/engine/behaviour/ability.d.ts +16 -6
- package/engine/behaviour/ability.lua +67 -21
- package/engine/behaviour/unit/stun-immunity.d.ts +12 -6
- package/engine/behaviour/unit/stun-immunity.lua +57 -31
- package/engine/behaviour/unit.d.ts +41 -2
- package/engine/behaviour/unit.lua +270 -6
- package/engine/buff.d.ts +117 -60
- package/engine/buff.lua +587 -303
- package/engine/index.d.ts +2 -1
- package/engine/internal/ability.d.ts +11 -1
- package/engine/internal/ability.lua +100 -41
- package/engine/internal/item/ability.lua +63 -11
- package/engine/internal/item/fields.d.ts +12 -0
- package/engine/internal/item/fields.lua +33 -0
- package/engine/internal/item+owner.d.ts +1 -0
- package/engine/internal/item+owner.lua +19 -6
- package/engine/internal/item.d.ts +28 -16
- package/engine/internal/item.lua +265 -83
- package/engine/internal/mechanics/ability-duration.lua +1 -1
- package/engine/internal/mechanics/cast-ability.lua +6 -3
- package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
- package/engine/internal/misc/frame-coordinates.d.ts +2 -0
- package/engine/internal/misc/frame-coordinates.lua +21 -0
- package/engine/internal/misc/get-terrain-z.d.ts +2 -0
- package/engine/internal/misc/get-terrain-z.lua +11 -0
- package/engine/internal/misc/player-local-handle.d.ts +2 -0
- package/engine/internal/misc/player-local-handle.lua +5 -0
- package/engine/internal/object-data/armor-bonus.d.ts +2 -0
- package/engine/internal/object-data/attribute-bonus.lua +2 -2
- package/engine/internal/object-data/health-bonus.d.ts +2 -0
- package/engine/internal/object-data/health-bonus.lua +16 -0
- package/engine/internal/object-data/mana-bonus.d.ts +2 -0
- package/engine/internal/object-data/mana-bonus.lua +16 -0
- package/engine/internal/object-data/mana-regeneration-rate-increase-factor.d.ts +2 -0
- package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
- package/engine/internal/unit/ability.d.ts +35 -0
- package/engine/internal/unit/ability.lua +113 -12
- package/engine/internal/unit/allowed-targets.d.ts +1 -1
- package/engine/internal/unit/allowed-targets.lua +9 -1
- package/engine/internal/unit/appearance.d.ts +15 -0
- package/engine/internal/unit/appearance.lua +85 -0
- package/engine/internal/unit/attributes.d.ts +17 -0
- package/engine/internal/unit/attributes.lua +46 -0
- package/engine/internal/unit/bag.d.ts +18 -0
- package/engine/internal/unit/bag.lua +63 -0
- package/engine/internal/unit/bonus.d.ts +6 -0
- package/engine/internal/unit/bonus.lua +33 -3
- package/engine/internal/unit/buff.d.ts +2 -2
- package/engine/internal/unit/buff.lua +34 -19
- package/engine/internal/unit/equipment.d.ts +36 -0
- package/engine/internal/unit/equipment.lua +169 -0
- package/engine/internal/unit/fly-height.d.ts +7 -0
- package/engine/internal/unit/fly-height.lua +20 -0
- package/engine/internal/unit/interrupts.d.ts +12 -0
- package/engine/internal/unit/interrupts.lua +28 -0
- package/engine/internal/unit/{item.d.ts → inventory.d.ts} +3 -3
- package/engine/internal/unit/{item.lua → inventory.lua} +25 -26
- package/engine/internal/unit/main-selected.lua +12 -27
- package/engine/internal/unit/order.d.ts +20 -0
- package/engine/internal/unit/order.lua +136 -0
- package/engine/internal/unit/pseudo-passive-abilities.d.ts +2 -0
- package/engine/internal/unit/pseudo-passive-abilities.lua +11 -0
- package/engine/internal/unit/range-event.d.ts +12 -0
- package/engine/internal/unit/range-event.lua +90 -0
- package/engine/internal/unit/scale.d.ts +7 -0
- package/engine/internal/unit/scale.lua +20 -0
- package/engine/internal/unit+ability.lua +10 -1
- package/engine/internal/unit+bonus.lua +3 -3
- package/engine/internal/unit+damage.d.ts +11 -11
- package/engine/internal/unit+damage.lua +43 -14
- package/engine/internal/unit+spellSteal.lua +1 -2
- package/engine/internal/unit-missile-data.lua +58 -32
- package/engine/internal/unit-missile-launch.lua +52 -14
- package/engine/internal/unit.d.ts +42 -25
- package/engine/internal/unit.lua +384 -265
- package/engine/lightning.d.ts +4 -3
- package/engine/lightning.lua +21 -12
- package/engine/local-client.d.ts +27 -0
- package/engine/local-client.lua +343 -54
- package/engine/object-data/auxiliary/animation-name.d.ts +1 -0
- package/engine/object-data/auxiliary/animation-name.lua +16 -0
- package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
- package/engine/object-data/auxiliary/armor-type.lua +46 -0
- package/engine/object-data/auxiliary/attachment-preset.d.ts +7 -2
- package/engine/object-data/auxiliary/attachment-preset.lua +4 -3
- package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
- package/engine/object-data/auxiliary/attack-type.lua +42 -0
- package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
- package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
- package/engine/object-data/auxiliary/equipment-type.d.ts +13 -0
- package/engine/object-data/auxiliary/equipment-type.lua +2 -0
- package/engine/object-data/auxiliary/health-regeneration-type.d.ts +8 -0
- package/engine/object-data/auxiliary/health-regeneration-type.lua +2 -0
- package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
- package/engine/object-data/auxiliary/item-tag.lua +2 -0
- package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
- package/engine/object-data/auxiliary/movement-type.lua +22 -0
- package/engine/object-data/auxiliary/sound-eax.d.ts +10 -0
- package/engine/object-data/auxiliary/sound-eax.lua +2 -0
- package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
- package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +1 -1
- package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
- package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
- package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
- package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
- package/engine/object-data/entry/ability-type/armor-bonus.d.ts +8 -0
- package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
- package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
- package/engine/object-data/entry/ability-type/banshee.lua +13 -0
- package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
- package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
- package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
- package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
- package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
- package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
- package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
- package/engine/object-data/entry/ability-type/berserk.lua +13 -0
- package/engine/object-data/entry/ability-type/blank-configurable.d.ts +3 -0
- package/engine/object-data/entry/ability-type/blank-configurable.lua +42 -1
- package/engine/object-data/entry/ability-type/carrion-swarm.d.ts +14 -0
- package/engine/object-data/entry/ability-type/carrion-swarm.lua +65 -0
- package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
- package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
- package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
- package/engine/object-data/entry/ability-type/consecration.lua +52 -0
- package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
- package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
- package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
- package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
- package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
- package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
- package/engine/object-data/entry/ability-type/disease-cloud.lua +2 -2
- package/engine/object-data/entry/ability-type/engineering-upgrade.lua +2 -2
- package/engine/object-data/entry/ability-type/ensnare.d.ts +12 -0
- package/engine/object-data/entry/ability-type/ensnare.lua +52 -0
- package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
- package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
- package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
- package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
- package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
- package/engine/object-data/entry/ability-type/equipment.lua +27 -0
- package/engine/object-data/entry/ability-type/feral-spirit.lua +2 -2
- package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
- package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
- package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
- package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
- package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
- package/engine/object-data/entry/ability-type/grit.lua +65 -0
- package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
- package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
- package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
- package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
- package/engine/object-data/entry/ability-type/{armor-increase.d.ts → healing-modifier.d.ts} +4 -3
- package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
- package/engine/object-data/entry/ability-type/health-bonus.d.ts +8 -0
- package/engine/object-data/entry/ability-type/health-bonus.lua +26 -0
- package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
- package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
- package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
- package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
- package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
- package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
- package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
- package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
- package/engine/object-data/entry/ability-type/mana-bonus.d.ts +8 -0
- package/engine/object-data/entry/ability-type/mana-bonus.lua +26 -0
- package/engine/object-data/entry/ability-type/mana-efficiency.d.ts +12 -0
- package/engine/object-data/entry/ability-type/mana-efficiency.lua +39 -0
- package/engine/object-data/entry/ability-type/mana-regeneration.d.ts +8 -0
- package/engine/object-data/entry/ability-type/mana-regeneration.lua +26 -0
- package/engine/object-data/entry/ability-type/mind-control.d.ts +21 -0
- package/engine/object-data/entry/ability-type/mind-control.lua +78 -0
- package/engine/object-data/entry/ability-type/on-attack-cast-spell.d.ts +21 -0
- package/engine/object-data/entry/ability-type/on-attack-cast-spell.lua +52 -0
- package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.d.ts +19 -0
- package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.lua +65 -0
- package/engine/object-data/entry/ability-type/on-hit-cast-spell.d.ts +15 -0
- package/engine/object-data/entry/ability-type/on-hit-cast-spell.lua +26 -0
- package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.d.ts +6 -0
- package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.lua +12 -0
- package/engine/object-data/entry/ability-type/permanent-invisibility.d.ts +8 -0
- package/engine/object-data/entry/ability-type/permanent-invisibility.lua +26 -0
- package/engine/object-data/entry/ability-type/phase-shift.d.ts +10 -0
- package/engine/object-data/entry/ability-type/phase-shift.lua +39 -0
- package/engine/object-data/entry/ability-type/phoenix-morph.lua +4 -4
- package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
- package/engine/object-data/entry/ability-type/provoke.lua +66 -0
- package/engine/object-data/entry/ability-type/raise-dead.d.ts +17 -0
- package/engine/object-data/entry/ability-type/raise-dead.lua +78 -0
- package/engine/object-data/entry/ability-type/raise-the-banner.d.ts +9 -0
- package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
- package/engine/object-data/entry/ability-type/reincarnation.d.ts +8 -0
- package/engine/object-data/entry/ability-type/reincarnation.lua +26 -0
- package/engine/object-data/entry/ability-type/resolve.d.ts +12 -0
- package/engine/object-data/entry/ability-type/resolve.lua +39 -0
- package/engine/object-data/entry/ability-type/righteous-fury.d.ts +33 -0
- package/engine/object-data/entry/ability-type/righteous-fury.lua +130 -0
- package/engine/object-data/entry/ability-type/sacred-aura.d.ts +27 -0
- package/engine/object-data/entry/ability-type/sacred-aura.lua +104 -0
- package/engine/object-data/entry/ability-type/shock-wave.d.ts +4 -0
- package/engine/object-data/entry/ability-type/shock-wave.lua +26 -0
- package/engine/object-data/entry/ability-type/slow-poison.d.ts +10 -0
- package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
- package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
- package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
- package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
- package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
- package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
- package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
- package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
- package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
- package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
- package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
- package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
- package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
- package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
- package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
- package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
- package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
- package/engine/object-data/entry/ability-type/summon-quilbeast.lua +2 -2
- package/engine/object-data/entry/ability-type/summon-water-elemental.lua +2 -2
- package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
- package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
- package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
- package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
- package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
- package/engine/object-data/entry/ability-type/talents.lua +27 -0
- package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
- package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
- package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
- package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
- package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
- package/engine/object-data/entry/ability-type/warcry.lua +26 -0
- package/engine/object-data/entry/ability-type/web.d.ts +12 -0
- package/engine/object-data/entry/ability-type/web.lua +52 -0
- package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
- package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
- package/engine/object-data/entry/ability-type.d.ts +30 -19
- package/engine/object-data/entry/ability-type.lua +222 -28
- package/engine/object-data/entry/buff-type/applicable.lua +122 -137
- package/engine/object-data/entry/buff-type.d.ts +10 -12
- package/engine/object-data/entry/buff-type.lua +39 -29
- package/engine/object-data/entry/destructible-type.d.ts +32 -2
- package/engine/object-data/entry/destructible-type.lua +181 -0
- package/engine/object-data/entry/item-type.d.ts +12 -3
- package/engine/object-data/entry/item-type.lua +56 -4
- package/engine/object-data/entry/lightning-type.d.ts +2 -2
- package/engine/object-data/entry/sound-preset.d.ts +33 -0
- package/engine/object-data/entry/sound-preset.lua +140 -0
- package/engine/object-data/entry/unit-type.d.ts +71 -6
- package/engine/object-data/entry/unit-type.lua +592 -93
- package/engine/object-data/entry/upgrade.d.ts +2 -2
- package/engine/object-data/entry/upgrade.lua +4 -4
- package/engine/object-data/entry.d.ts +19 -14
- package/engine/object-data/entry.lua +60 -32
- package/engine/object-field/ability.d.ts +4 -4
- package/engine/object-field/ability.lua +9 -8
- package/engine/object-field/item.d.ts +22 -0
- package/engine/object-field/item.lua +118 -0
- package/engine/object-field/unit.d.ts +72 -3
- package/engine/object-field/unit.lua +268 -7
- package/engine/object-field.d.ts +26 -7
- package/engine/object-field.lua +360 -119
- package/engine/random.d.ts +10 -0
- package/engine/random.lua +21 -0
- package/engine/standard/entries/ability-type.d.ts +3102 -7
- package/engine/standard/entries/ability-type.lua +0 -6
- package/engine/standard/entries/buff-type.d.ts +3 -0
- package/engine/standard/entries/buff-type.lua +3 -0
- package/engine/standard/entries/item-type.d.ts +1299 -0
- package/engine/standard/entries/item-type.lua +2 -0
- package/engine/standard/entries/sound-preset.d.ts +10 -0
- package/engine/standard/entries/sound-preset.lua +10 -0
- package/engine/standard/entries/unit-type.d.ts +5 -0
- package/engine/standard/entries/unit-type.lua +5 -0
- package/engine/standard/fields/ability.d.ts +2 -2
- package/engine/standard/fields/ability.lua +2 -2
- package/engine/standard/fields/item.d.ts +4 -0
- package/engine/standard/fields/item.lua +6 -0
- package/engine/standard/fields/unit.d.ts +12 -0
- package/engine/standard/fields/unit.lua +20 -0
- package/engine/synchronization.d.ts +11 -0
- package/engine/synchronization.lua +77 -0
- package/engine/text-tag.d.ts +36 -2
- package/engine/text-tag.lua +250 -10
- package/engine/unit.d.ts +10 -1
- package/engine/unit.lua +10 -1
- package/event.d.ts +1 -1
- package/lualib_bundle.lua +1 -1
- package/math.d.ts +2 -0
- package/math.lua +14 -0
- package/net/socket.lua +1 -1
- package/network.lua +25 -1
- package/objutil/buff.lua +11 -10
- package/objutil/object.lua +1 -1
- package/objutil/unit.lua +8 -0
- package/operation.d.ts +8 -1
- package/operation.lua +38 -18
- package/package.json +3 -23
- package/patch-lua.lua +15 -0
- package/patch-lualib.lua +1 -1
- package/utility/arrays.d.ts +2 -0
- package/utility/arrays.lua +11 -0
- package/utility/callback-array.d.ts +17 -0
- package/utility/callback-array.lua +61 -0
- package/utility/functions.d.ts +8 -0
- package/utility/functions.lua +13 -0
- package/utility/linked-map.d.ts +35 -0
- package/utility/linked-map.lua +107 -0
- package/utility/linked-set.d.ts +5 -1
- package/utility/linked-set.lua +49 -1
- package/utility/lua-maps.d.ts +15 -2
- package/utility/lua-maps.lua +53 -2
- package/utility/lua-sets.d.ts +2 -0
- package/utility/lua-sets.lua +7 -0
- package/utility/random.d.ts +102 -0
- package/utility/random.lua +273 -0
- package/utility/records.lua +20 -1
- package/utility/reflection.lua +11 -7
- package/utility/types.d.ts +3 -0
- package/utility/unordered-map.d.ts +27 -0
- package/utility/unordered-map.lua +99 -0
- package/core/types/order.d.ts +0 -25
- package/core/types/order.lua +0 -55
- /package/engine/internal/{object-data/armor-increase.d.ts → misc/damage-metadata-by-target.d.ts} +0 -0
- /package/engine/internal/object-data/{armor-increase.lua → armor-bonus.lua} +0 -0
- /package/engine/object-data/entry/ability-type/{attribute-increase.d.ts → attribute-bonus.d.ts} +0 -0
- /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
|
|
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,
|
|
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,
|
|
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:
|
|
296
|
+
return self:getObjectDataEntryNumericIdsField("alig")
|
|
275
297
|
end,
|
|
276
298
|
set = function(self, lightningTypeIds)
|
|
277
|
-
self:
|
|
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,
|
|
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:
|
|
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:
|
|
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
|
-
"
|
|
796
|
+
"casterEffectSoundPresetId",
|
|
722
797
|
{
|
|
723
798
|
get = function(self)
|
|
724
|
-
|
|
799
|
+
local casterEffectSoundPresetId = self:getStringField("aefs")
|
|
800
|
+
return casterEffectSoundPresetId ~= "" and casterEffectSoundPresetId or nil
|
|
725
801
|
end,
|
|
726
|
-
set = function(self,
|
|
727
|
-
self:setStringField("aefs",
|
|
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
|
-
"
|
|
810
|
+
"casterEffectLoopingSoundPresetId",
|
|
735
811
|
{
|
|
736
812
|
get = function(self)
|
|
737
813
|
return self:getStringField("aefl")
|
|
738
814
|
end,
|
|
739
|
-
set = function(self,
|
|
740
|
-
self:setStringField("aefl",
|
|
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:
|
|
888
|
+
return self:getObjectDataEntryNumericIdsLevelField("abuf")
|
|
800
889
|
end,
|
|
801
890
|
set = function(self, buffTypeIds)
|
|
802
|
-
self:
|
|
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:
|
|
940
|
+
return self:getObjectDataEntryNumericIdsLevelField("aeff")
|
|
852
941
|
end,
|
|
853
942
|
set = function(self, effectBuffTypeIds)
|
|
854
|
-
self:
|
|
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(
|
|
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:
|
|
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:
|
|
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
|
|
1043
|
-
if
|
|
1044
|
-
for i = 1, #
|
|
1045
|
-
|
|
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
|