warscript 0.0.1-dev.404878c
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/LICENSE +23 -0
- package/binaryreader.d.ts +20 -0
- package/binaryreader.lua +50 -0
- package/binarywriter.d.ts +21 -0
- package/binarywriter.lua +90 -0
- package/core/dummy.d.ts +22 -0
- package/core/dummy.lua +133 -0
- package/core/game.d.ts +3 -0
- package/core/game.lua +24 -0
- package/core/mapbounds.d.ts +8 -0
- package/core/mapbounds.lua +12 -0
- package/core/thread.d.ts +8 -0
- package/core/thread.lua +40 -0
- package/core/types/ability.d.ts +4 -0
- package/core/types/ability.lua +10 -0
- package/core/types/async.d.ts +3 -0
- package/core/types/async.lua +2 -0
- package/core/types/camera.d.ts +4 -0
- package/core/types/camera.lua +21 -0
- package/core/types/cameraField.d.ts +15 -0
- package/core/types/cameraField.lua +38 -0
- package/core/types/color.d.ts +16 -0
- package/core/types/color.lua +93 -0
- package/core/types/destructable.d.ts +31 -0
- package/core/types/destructable.lua +245 -0
- package/core/types/effect.d.ts +31 -0
- package/core/types/effect.lua +209 -0
- package/core/types/frame.d.ts +140 -0
- package/core/types/frame.lua +882 -0
- package/core/types/game.d.ts +8 -0
- package/core/types/game.lua +41 -0
- package/core/types/group.d.ts +22 -0
- package/core/types/group.lua +94 -0
- package/core/types/handle.d.ts +48 -0
- package/core/types/handle.lua +169 -0
- package/core/types/image.d.ts +30 -0
- package/core/types/image.lua +121 -0
- package/core/types/internal/ability+cooldownRemaining.d.ts +1 -0
- package/core/types/internal/ability+cooldownRemaining.lua +0 -0
- package/core/types/item.d.ts +4 -0
- package/core/types/item.lua +6 -0
- package/core/types/missile.d.ts +22 -0
- package/core/types/missile.lua +233 -0
- package/core/types/order.d.ts +25 -0
- package/core/types/order.lua +55 -0
- package/core/types/player.d.ts +71 -0
- package/core/types/player.lua +448 -0
- package/core/types/playerCamera.d.ts +32 -0
- package/core/types/playerCamera.lua +162 -0
- package/core/types/playerColor.d.ts +40 -0
- package/core/types/playerColor.lua +203 -0
- package/core/types/rect.d.ts +39 -0
- package/core/types/rect.lua +152 -0
- package/core/types/region.d.ts +14 -0
- package/core/types/region.lua +84 -0
- package/core/types/sound.d.ts +69 -0
- package/core/types/sound.lua +247 -0
- package/core/types/tileCell.d.ts +13 -0
- package/core/types/tileCell.lua +100 -0
- package/core/types/timer.d.ts +36 -0
- package/core/types/timer.lua +230 -0
- package/core/types/timerDialog.d.ts +19 -0
- package/core/types/timerDialog.lua +95 -0
- package/core/types/unit.d.ts +10 -0
- package/core/types/unit.lua +24 -0
- package/core/types/widget.d.ts +5 -0
- package/core/types/widget.lua +2 -0
- package/core/util.d.ts +62 -0
- package/core/util.lua +464 -0
- package/core/vecmath/common.d.ts +18 -0
- package/core/vecmath/common.lua +29 -0
- package/core/vecmath/mat2.d.ts +73 -0
- package/core/vecmath/mat2.lua +261 -0
- package/core/vecmath/vec3.d.ts +47 -0
- package/core/vecmath/vec3.lua +350 -0
- package/core/vecmath/vec4.d.ts +54 -0
- package/core/vecmath/vec4.lua +400 -0
- package/crypto/ecc.d.ts +6 -0
- package/crypto/ecc.lua +1734 -0
- package/decl/index.d.ts +116 -0
- package/decl/native.d.ts +8198 -0
- package/destroyable.d.ts +20 -0
- package/destroyable.lua +31 -0
- package/engine/ability.d.ts +5 -0
- package/engine/ability.lua +7 -0
- package/engine/behavior.d.ts +28 -0
- package/engine/behavior.lua +181 -0
- package/engine/behaviour/ability/apply-buff.d.ts +38 -0
- package/engine/behaviour/ability/apply-buff.lua +126 -0
- package/engine/behaviour/ability/apply-unit-behavior.d.ts +12 -0
- package/engine/behaviour/ability/apply-unit-behavior.lua +36 -0
- package/engine/behaviour/ability/damage.d.ts +25 -0
- package/engine/behaviour/ability/damage.lua +75 -0
- package/engine/behaviour/ability/heal.d.ts +16 -0
- package/engine/behaviour/ability/heal.lua +35 -0
- package/engine/behaviour/ability/instant-impact.d.ts +6 -0
- package/engine/behaviour/ability/instant-impact.lua +25 -0
- package/engine/behaviour/ability.d.ts +40 -0
- package/engine/behaviour/ability.lua +175 -0
- package/engine/behaviour/unit/stun-immunity.d.ts +19 -0
- package/engine/behaviour/unit/stun-immunity.lua +67 -0
- package/engine/behaviour/unit.d.ts +20 -0
- package/engine/behaviour/unit.lua +75 -0
- package/engine/buff.d.ts +221 -0
- package/engine/buff.lua +1093 -0
- package/engine/constants.d.ts +7 -0
- package/engine/constants.lua +8 -0
- package/engine/index.d.ts +5 -0
- package/engine/index.lua +2 -0
- package/engine/internal/ability.d.ts +91 -0
- package/engine/internal/ability.lua +531 -0
- package/engine/internal/item/ability.d.ts +2 -0
- package/engine/internal/item/ability.lua +48 -0
- package/engine/internal/item+owner.d.ts +7 -0
- package/engine/internal/item+owner.lua +22 -0
- package/engine/internal/item.d.ts +86 -0
- package/engine/internal/item.lua +580 -0
- package/engine/internal/mechanics/ability-duration.d.ts +4 -0
- package/engine/internal/mechanics/ability-duration.lua +11 -0
- package/engine/internal/mechanics/area-damage.d.ts +2 -0
- package/engine/internal/mechanics/area-damage.lua +33 -0
- package/engine/internal/misc/dummy-units.d.ts +2 -0
- package/engine/internal/misc/dummy-units.lua +14 -0
- package/engine/internal/object-data/armor-increase.d.ts +2 -0
- package/engine/internal/object-data/armor-increase.lua +19 -0
- package/engine/internal/object-data/attribute-bonus.d.ts +2 -0
- package/engine/internal/object-data/attribute-bonus.lua +15 -0
- package/engine/internal/object-data/auto-attack-damage-increase.d.ts +2 -0
- package/engine/internal/object-data/auto-attack-damage-increase.lua +17 -0
- package/engine/internal/object-data/auto-attack-speed-increase.d.ts +2 -0
- package/engine/internal/object-data/auto-attack-speed-increase.lua +14 -0
- package/engine/internal/object-data/dummy-inventory.d.ts +2 -0
- package/engine/internal/object-data/dummy-inventory.lua +16 -0
- package/engine/internal/object-data/dummy-item.d.ts +2 -0
- package/engine/internal/object-data/dummy-item.lua +10 -0
- package/engine/internal/object-data/ghost-visible.d.ts +2 -0
- package/engine/internal/object-data/ghost-visible.lua +15 -0
- package/engine/internal/object-data/invulnerable.d.ts +2 -0
- package/engine/internal/object-data/invulnerable.lua +11 -0
- package/engine/internal/object-data/movement-speed-increase-factor.d.ts +2 -0
- package/engine/internal/object-data/movement-speed-increase-factor.lua +18 -0
- package/engine/internal/unit/ability.d.ts +143 -0
- package/engine/internal/unit/ability.lua +369 -0
- package/engine/internal/unit/allowed-targets.d.ts +17 -0
- package/engine/internal/unit/allowed-targets.lua +19 -0
- package/engine/internal/unit/band-aids/ancestral-spirit-cannibalize.d.ts +2 -0
- package/engine/internal/unit/band-aids/ancestral-spirit-cannibalize.lua +21 -0
- package/engine/internal/unit/bonus.d.ts +41 -0
- package/engine/internal/unit/bonus.lua +188 -0
- package/engine/internal/unit/buff.d.ts +38 -0
- package/engine/internal/unit/buff.lua +81 -0
- package/engine/internal/unit/expiration-timer.d.ts +22 -0
- package/engine/internal/unit/expiration-timer.lua +44 -0
- package/engine/internal/unit/ghost-counter.d.ts +12 -0
- package/engine/internal/unit/ghost-counter.lua +26 -0
- package/engine/internal/unit/invulnerability-counter.d.ts +12 -0
- package/engine/internal/unit/invulnerability-counter.lua +26 -0
- package/engine/internal/unit/missile.d.ts +42 -0
- package/engine/internal/unit/missile.lua +70 -0
- package/engine/internal/unit/movement-speed.d.ts +18 -0
- package/engine/internal/unit/movement-speed.lua +42 -0
- package/engine/internal/unit/summon-event.d.ts +12 -0
- package/engine/internal/unit/summon-event.lua +50 -0
- package/engine/internal/unit+ability.d.ts +9 -0
- package/engine/internal/unit+ability.lua +59 -0
- package/engine/internal/unit+bonus.d.ts +8 -0
- package/engine/internal/unit+bonus.lua +40 -0
- package/engine/internal/unit+damage.d.ts +69 -0
- package/engine/internal/unit+damage.lua +123 -0
- package/engine/internal/unit+rally.d.ts +10 -0
- package/engine/internal/unit+rally.lua +159 -0
- package/engine/internal/unit+spellSteal.d.ts +7 -0
- package/engine/internal/unit+spellSteal.lua +64 -0
- package/engine/internal/unit+transport.d.ts +12 -0
- package/engine/internal/unit+transport.lua +102 -0
- package/engine/internal/unit-missile-data.d.ts +2 -0
- package/engine/internal/unit-missile-data.lua +107 -0
- package/engine/internal/unit-missile-launch.d.ts +7 -0
- package/engine/internal/unit-missile-launch.lua +32 -0
- package/engine/internal/unit.d.ts +312 -0
- package/engine/internal/unit.lua +2430 -0
- package/engine/internal/utility.d.ts +2 -0
- package/engine/internal/utility.lua +13 -0
- package/engine/lightning.d.ts +51 -0
- package/engine/lightning.lua +303 -0
- package/engine/local-client.d.ts +16 -0
- package/engine/local-client.lua +86 -0
- package/engine/object-data/auxiliary/animation-name.d.ts +14 -0
- package/engine/object-data/auxiliary/animation-name.lua +2 -0
- package/engine/object-data/auxiliary/animation-qualifier.d.ts +53 -0
- package/engine/object-data/auxiliary/animation-qualifier.lua +2 -0
- package/engine/object-data/auxiliary/armor-sound-type.d.ts +8 -0
- package/engine/object-data/auxiliary/armor-sound-type.lua +2 -0
- package/engine/object-data/auxiliary/attachment-preset.d.ts +15 -0
- package/engine/object-data/auxiliary/attachment-preset.lua +29 -0
- package/engine/object-data/auxiliary/attack-type.d.ts +11 -0
- package/engine/object-data/auxiliary/attack-type.lua +2 -0
- package/engine/object-data/auxiliary/buff-polarity.d.ts +6 -0
- package/engine/object-data/auxiliary/buff-polarity.lua +2 -0
- package/engine/object-data/auxiliary/buff-resistance-type.d.ts +6 -0
- package/engine/object-data/auxiliary/buff-resistance-type.lua +2 -0
- package/engine/object-data/auxiliary/combat-classification.d.ts +46 -0
- package/engine/object-data/auxiliary/combat-classification.lua +206 -0
- package/engine/object-data/auxiliary/detection-type.d.ts +7 -0
- package/engine/object-data/auxiliary/detection-type.lua +2 -0
- package/engine/object-data/auxiliary/model-node-name.d.ts +12 -0
- package/engine/object-data/auxiliary/model-node-name.lua +2 -0
- package/engine/object-data/auxiliary/model-node-qualifier.d.ts +21 -0
- package/engine/object-data/auxiliary/model-node-qualifier.lua +2 -0
- package/engine/object-data/auxiliary/movement-type.d.ts +10 -0
- package/engine/object-data/auxiliary/movement-type.lua +2 -0
- package/engine/object-data/auxiliary/race.d.ts +14 -0
- package/engine/object-data/auxiliary/race.lua +2 -0
- package/engine/object-data/auxiliary/sound-preset-name.d.ts +8 -0
- package/engine/object-data/auxiliary/sound-preset-name.lua +2 -0
- package/engine/object-data/auxiliary/sound-set-name.d.ts +35 -0
- package/engine/object-data/auxiliary/sound-set-name.lua +2 -0
- package/engine/object-data/auxiliary/targeting-type.d.ts +8 -0
- package/engine/object-data/auxiliary/targeting-type.lua +2 -0
- package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +16 -0
- package/engine/object-data/auxiliary/tech-tree-dependency.lua +8 -0
- package/engine/object-data/auxiliary/unit-classification.d.ts +19 -0
- package/engine/object-data/auxiliary/unit-classification.lua +50 -0
- package/engine/object-data/auxiliary/weapon-sound-type.d.ts +17 -0
- package/engine/object-data/auxiliary/weapon-sound-type.lua +2 -0
- package/engine/object-data/entry/ability-type/armor-increase.d.ts +8 -0
- package/engine/object-data/entry/ability-type/armor-increase.lua +26 -0
- package/engine/object-data/entry/ability-type/attribute-increase.d.ts +12 -0
- package/engine/object-data/entry/ability-type/attribute-increase.lua +52 -0
- package/engine/object-data/entry/ability-type/auto-attack-damage-increase.d.ts +8 -0
- package/engine/object-data/entry/ability-type/auto-attack-damage-increase.lua +26 -0
- package/engine/object-data/entry/ability-type/auto-attack-heal-reduction-effect.d.ts +12 -0
- package/engine/object-data/entry/ability-type/auto-attack-heal-reduction-effect.lua +52 -0
- package/engine/object-data/entry/ability-type/auto-attack-speed-increase.d.ts +8 -0
- package/engine/object-data/entry/ability-type/auto-attack-speed-increase.lua +26 -0
- package/engine/object-data/entry/ability-type/bash.d.ts +16 -0
- package/engine/object-data/entry/ability-type/bash.lua +78 -0
- package/engine/object-data/entry/ability-type/berserk.d.ts +10 -0
- package/engine/object-data/entry/ability-type/berserk.lua +39 -0
- package/engine/object-data/entry/ability-type/blank-configurable.d.ts +21 -0
- package/engine/object-data/entry/ability-type/blank-configurable.lua +249 -0
- package/engine/object-data/entry/ability-type/blank-passive.d.ts +7 -0
- package/engine/object-data/entry/ability-type/blank-passive.lua +28 -0
- package/engine/object-data/entry/ability-type/blizzard.d.ts +16 -0
- package/engine/object-data/entry/ability-type/blizzard.lua +78 -0
- package/engine/object-data/entry/ability-type/blood-lust.d.ts +12 -0
- package/engine/object-data/entry/ability-type/blood-lust.lua +52 -0
- package/engine/object-data/entry/ability-type/chain-lightning.d.ts +12 -0
- package/engine/object-data/entry/ability-type/chain-lightning.lua +52 -0
- package/engine/object-data/entry/ability-type/channel.d.ts +48 -0
- package/engine/object-data/entry/ability-type/channel.lua +140 -0
- package/engine/object-data/entry/ability-type/charge-gold-and-lumber.d.ts +14 -0
- package/engine/object-data/entry/ability-type/charge-gold-and-lumber.lua +65 -0
- package/engine/object-data/entry/ability-type/cleaving-attack.d.ts +8 -0
- package/engine/object-data/entry/ability-type/cleaving-attack.lua +26 -0
- package/engine/object-data/entry/ability-type/cluster-rockets.d.ts +18 -0
- package/engine/object-data/entry/ability-type/cluster-rockets.lua +91 -0
- package/engine/object-data/entry/ability-type/cripple.d.ts +12 -0
- package/engine/object-data/entry/ability-type/cripple.lua +52 -0
- package/engine/object-data/entry/ability-type/critical-strike.d.ts +18 -0
- package/engine/object-data/entry/ability-type/critical-strike.lua +91 -0
- package/engine/object-data/entry/ability-type/curse.d.ts +8 -0
- package/engine/object-data/entry/ability-type/curse.lua +26 -0
- package/engine/object-data/entry/ability-type/dark-summoning.d.ts +10 -0
- package/engine/object-data/entry/ability-type/dark-summoning.lua +39 -0
- package/engine/object-data/entry/ability-type/death-coil.d.ts +8 -0
- package/engine/object-data/entry/ability-type/death-coil.lua +26 -0
- package/engine/object-data/entry/ability-type/disease-cloud.d.ts +15 -0
- package/engine/object-data/entry/ability-type/disease-cloud.lua +65 -0
- package/engine/object-data/entry/ability-type/divine-shield.d.ts +5 -0
- package/engine/object-data/entry/ability-type/divine-shield.lua +12 -0
- package/engine/object-data/entry/ability-type/endurance-aura.d.ts +10 -0
- package/engine/object-data/entry/ability-type/endurance-aura.lua +39 -0
- package/engine/object-data/entry/ability-type/engineering-upgrade.d.ts +13 -0
- package/engine/object-data/entry/ability-type/engineering-upgrade.lua +88 -0
- package/engine/object-data/entry/ability-type/evasion.d.ts +8 -0
- package/engine/object-data/entry/ability-type/evasion.lua +26 -0
- package/engine/object-data/entry/ability-type/faerie-fire.d.ts +10 -0
- package/engine/object-data/entry/ability-type/faerie-fire.lua +39 -0
- package/engine/object-data/entry/ability-type/far-sight.d.ts +9 -0
- package/engine/object-data/entry/ability-type/far-sight.lua +26 -0
- package/engine/object-data/entry/ability-type/feral-spirit.d.ts +11 -0
- package/engine/object-data/entry/ability-type/feral-spirit.lua +39 -0
- package/engine/object-data/entry/ability-type/frenzy.d.ts +12 -0
- package/engine/object-data/entry/ability-type/frenzy.lua +52 -0
- package/engine/object-data/entry/ability-type/frost-nova.d.ts +12 -0
- package/engine/object-data/entry/ability-type/frost-nova.lua +52 -0
- package/engine/object-data/entry/ability-type/ghost-visible.d.ts +10 -0
- package/engine/object-data/entry/ability-type/ghost-visible.lua +39 -0
- package/engine/object-data/entry/ability-type/gold-mine.d.ts +12 -0
- package/engine/object-data/entry/ability-type/gold-mine.lua +52 -0
- package/engine/object-data/entry/ability-type/heal.d.ts +8 -0
- package/engine/object-data/entry/ability-type/heal.lua +26 -0
- package/engine/object-data/entry/ability-type/healing-salve.d.ts +22 -0
- package/engine/object-data/entry/ability-type/healing-salve.lua +78 -0
- package/engine/object-data/entry/ability-type/healing-spray.d.ts +18 -0
- package/engine/object-data/entry/ability-type/healing-spray.lua +91 -0
- package/engine/object-data/entry/ability-type/healing-wave.d.ts +12 -0
- package/engine/object-data/entry/ability-type/healing-wave.lua +52 -0
- package/engine/object-data/entry/ability-type/holy-light.d.ts +8 -0
- package/engine/object-data/entry/ability-type/holy-light.lua +26 -0
- package/engine/object-data/entry/ability-type/incinerate.d.ts +18 -0
- package/engine/object-data/entry/ability-type/incinerate.lua +91 -0
- package/engine/object-data/entry/ability-type/inner-fire.d.ts +14 -0
- package/engine/object-data/entry/ability-type/inner-fire.lua +65 -0
- package/engine/object-data/entry/ability-type/inventory.d.ts +16 -0
- package/engine/object-data/entry/ability-type/inventory.lua +78 -0
- package/engine/object-data/entry/ability-type/invulnerable.d.ts +5 -0
- package/engine/object-data/entry/ability-type/invulnerable.lua +12 -0
- package/engine/object-data/entry/ability-type/lightning-shield.d.ts +8 -0
- package/engine/object-data/entry/ability-type/lightning-shield.lua +26 -0
- package/engine/object-data/entry/ability-type/movement-speed-increase.d.ts +8 -0
- package/engine/object-data/entry/ability-type/movement-speed-increase.lua +26 -0
- package/engine/object-data/entry/ability-type/permanent-immolation.d.ts +8 -0
- package/engine/object-data/entry/ability-type/permanent-immolation.lua +26 -0
- package/engine/object-data/entry/ability-type/phoenix-morph.d.ts +25 -0
- package/engine/object-data/entry/ability-type/phoenix-morph.lua +130 -0
- package/engine/object-data/entry/ability-type/recall.d.ts +10 -0
- package/engine/object-data/entry/ability-type/recall.lua +39 -0
- package/engine/object-data/entry/ability-type/rejuvenation.d.ts +20 -0
- package/engine/object-data/entry/ability-type/rejuvenation.lua +65 -0
- package/engine/object-data/entry/ability-type/searing-arrows.d.ts +8 -0
- package/engine/object-data/entry/ability-type/searing-arrows.lua +26 -0
- package/engine/object-data/entry/ability-type/shock-wave.d.ts +10 -0
- package/engine/object-data/entry/ability-type/shock-wave.lua +39 -0
- package/engine/object-data/entry/ability-type/slow-poison.d.ts +12 -0
- package/engine/object-data/entry/ability-type/slow-poison.lua +52 -0
- package/engine/object-data/entry/ability-type/slow.d.ts +12 -0
- package/engine/object-data/entry/ability-type/slow.lua +52 -0
- package/engine/object-data/entry/ability-type/spell-damage-reduction.d.ts +10 -0
- package/engine/object-data/entry/ability-type/spell-damage-reduction.lua +39 -0
- package/engine/object-data/entry/ability-type/spiked-carapace.d.ts +12 -0
- package/engine/object-data/entry/ability-type/spiked-carapace.lua +52 -0
- package/engine/object-data/entry/ability-type/spirit-touch.d.ts +14 -0
- package/engine/object-data/entry/ability-type/spirit-touch.lua +65 -0
- package/engine/object-data/entry/ability-type/storm-bolt.d.ts +8 -0
- package/engine/object-data/entry/ability-type/storm-bolt.lua +26 -0
- package/engine/object-data/entry/ability-type/summon-quilbeast.d.ts +11 -0
- package/engine/object-data/entry/ability-type/summon-quilbeast.lua +39 -0
- package/engine/object-data/entry/ability-type/summon-water-elemental.d.ts +11 -0
- package/engine/object-data/entry/ability-type/summon-water-elemental.lua +39 -0
- package/engine/object-data/entry/ability-type.d.ts +148 -0
- package/engine/object-data/entry/ability-type.lua +1058 -0
- package/engine/object-data/entry/buff-type/applicable.d.ts +16 -0
- package/engine/object-data/entry/buff-type/applicable.lua +377 -0
- package/engine/object-data/entry/buff-type/blank.d.ts +8 -0
- package/engine/object-data/entry/buff-type/blank.lua +17 -0
- package/engine/object-data/entry/buff-type.d.ts +64 -0
- package/engine/object-data/entry/buff-type.lua +316 -0
- package/engine/object-data/entry/destructible-type.d.ts +21 -0
- package/engine/object-data/entry/destructible-type.lua +83 -0
- package/engine/object-data/entry/item-type/blank.d.ts +8 -0
- package/engine/object-data/entry/item-type/blank.lua +21 -0
- package/engine/object-data/entry/item-type.d.ts +49 -0
- package/engine/object-data/entry/item-type.lua +259 -0
- package/engine/object-data/entry/lightning-type.d.ts +37 -0
- package/engine/object-data/entry/lightning-type.lua +191 -0
- package/engine/object-data/entry/unit-type/blank.d.ts +6 -0
- package/engine/object-data/entry/unit-type/blank.lua +13 -0
- package/engine/object-data/entry/unit-type.d.ts +218 -0
- package/engine/object-data/entry/unit-type.lua +1306 -0
- package/engine/object-data/entry/upgrade/blank.d.ts +8 -0
- package/engine/object-data/entry/upgrade/blank.lua +22 -0
- package/engine/object-data/entry/upgrade.d.ts +59 -0
- package/engine/object-data/entry/upgrade.lua +238 -0
- package/engine/object-data/entry.d.ts +80 -0
- package/engine/object-data/entry.lua +634 -0
- package/engine/object-data/utility/object-data-entry-id-generator.d.ts +6 -0
- package/engine/object-data/utility/object-data-entry-id-generator.lua +63 -0
- package/engine/object-data/utility/order-type-string-id-factory.d.ts +9 -0
- package/engine/object-data/utility/order-type-string-id-factory.lua +368 -0
- package/engine/object-field/ability.d.ts +115 -0
- package/engine/object-field/ability.lua +471 -0
- package/engine/object-field/unit.d.ts +15 -0
- package/engine/object-field/unit.lua +49 -0
- package/engine/object-field.d.ts +84 -0
- package/engine/object-field.lua +444 -0
- package/engine/random.d.ts +10 -0
- package/engine/random.lua +9 -0
- package/engine/standard/entries/ability-type.d.ts +8 -0
- package/engine/standard/entries/ability-type.lua +8 -0
- package/engine/standard/entries/lightning-type.d.ts +16 -0
- package/engine/standard/entries/lightning-type.lua +16 -0
- package/engine/standard/entries/unit-type.d.ts +63 -0
- package/engine/standard/entries/unit-type.lua +63 -0
- package/engine/standard/entries/upgrade.d.ts +92 -0
- package/engine/standard/entries/upgrade.lua +92 -0
- package/engine/standard/fields/ability.d.ts +737 -0
- package/engine/standard/fields/ability.lua +749 -0
- package/engine/standard/pathing-textures.d.ts +6 -0
- package/engine/standard/pathing-textures.lua +7 -0
- package/engine/text-tag.d.ts +25 -0
- package/engine/text-tag.lua +109 -0
- package/engine/unit.d.ts +20 -0
- package/engine/unit.lua +31 -0
- package/event.d.ts +53 -0
- package/event.lua +269 -0
- package/exception.d.ts +17 -0
- package/exception.lua +53 -0
- package/file.d.ts +4 -0
- package/file.lua +42 -0
- package/global/math.d.ts +21 -0
- package/global/math.lua +72 -0
- package/global/vec2.d.ts +66 -0
- package/global/vec2.lua +159 -0
- package/index.d.ts +8 -0
- package/index.lua +9 -0
- package/lualib_bundle.lua +2629 -0
- package/math/vec2.d.ts +18 -0
- package/math/vec2.lua +42 -0
- package/math.d.ts +39 -0
- package/math.lua +91 -0
- package/net/signal.d.ts +11 -0
- package/net/signal.lua +56 -0
- package/net/socket.d.ts +9 -0
- package/net/socket.lua +26 -0
- package/network.d.ts +31 -0
- package/network.lua +194 -0
- package/objutil/ability.d.ts +710 -0
- package/objutil/ability.lua +3781 -0
- package/objutil/buff.d.ts +110 -0
- package/objutil/buff.lua +769 -0
- package/objutil/dummy.d.ts +2 -0
- package/objutil/dummy.lua +49 -0
- package/objutil/idgen.d.ts +9 -0
- package/objutil/idgen.lua +92 -0
- package/objutil/item.d.ts +38 -0
- package/objutil/item.lua +254 -0
- package/objutil/object.d.ts +43 -0
- package/objutil/object.lua +213 -0
- package/objutil/unit.d.ts +134 -0
- package/objutil/unit.lua +913 -0
- package/objutil/upgrade.d.ts +22 -0
- package/objutil/upgrade.lua +127 -0
- package/operation.d.ts +35 -0
- package/operation.lua +179 -0
- package/package.json +47 -0
- package/patch-lualib.d.ts +2 -0
- package/patch-lualib.lua +67 -0
- package/patch-natives.d.ts +11 -0
- package/patch-natives.lua +14 -0
- package/string.d.ts +106 -0
- package/string.lua +34 -0
- package/time/dayOfWeek.d.ts +97 -0
- package/time/dayOfWeek.lua +53 -0
- package/time/localDate.d.ts +145 -0
- package/time/localDate.lua +236 -0
- package/time/localDateTime.d.ts +133 -0
- package/time/localDateTime.lua +154 -0
- package/time/localTime.d.ts +87 -0
- package/time/localTime.lua +91 -0
- package/time/month.d.ts +146 -0
- package/time/month.lua +129 -0
- package/time/year.d.ts +117 -0
- package/time/year.lua +81 -0
- package/types.d.ts +13 -0
- package/types.lua +0 -0
- package/util/objectPool.d.ts +6 -0
- package/util/objectPool.lua +28 -0
- package/util/stream.d.ts +29 -0
- package/util/stream.lua +453 -0
- package/util/stringBuilder.d.ts +8 -0
- package/util/stringBuilder.lua +25 -0
- package/utility/arrays.d.ts +57 -0
- package/utility/arrays.lua +369 -0
- package/utility/base64.d.ts +23 -0
- package/utility/base64.lua +177 -0
- package/utility/bit-set.d.ts +18 -0
- package/utility/bit-set.lua +12 -0
- package/utility/functions.d.ts +5 -0
- package/utility/functions.lua +90 -0
- package/utility/json.d.ts +2 -0
- package/utility/json.lua +400 -0
- package/utility/linked-set.d.ts +49 -0
- package/utility/linked-set.lua +181 -0
- package/utility/lua-maps.d.ts +6 -0
- package/utility/lua-maps.lua +25 -0
- package/utility/lua-sets.d.ts +6 -0
- package/utility/lua-sets.lua +37 -0
- package/utility/lzw.d.ts +2 -0
- package/utility/lzw.lua +161 -0
- package/utility/observable-array.d.ts +17 -0
- package/utility/observable-array.lua +30 -0
- package/utility/preconditions.d.ts +23 -0
- package/utility/preconditions.lua +58 -0
- package/utility/records.d.ts +3 -0
- package/utility/records.lua +9 -0
- package/utility/reflection.d.ts +4 -0
- package/utility/reflection.lua +31 -0
- package/utility/strings.d.ts +2 -0
- package/utility/strings.lua +44 -0
- package/utility/types.d.ts +39 -0
- package/utility/types.lua +2 -0
package/destroyable.d.ts
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** @noSelfInFile */
|
|
2
|
+
declare const noOverrideSymbol: unique symbol;
|
|
3
|
+
type NoOverride = {
|
|
4
|
+
[noOverrideSymbol]: typeof noOverrideSymbol;
|
|
5
|
+
};
|
|
6
|
+
export type Destructor = {
|
|
7
|
+
readonly __destructor: unique symbol;
|
|
8
|
+
};
|
|
9
|
+
export interface Destroyable {
|
|
10
|
+
destroy(): void;
|
|
11
|
+
}
|
|
12
|
+
export declare abstract class AbstractDestroyable implements Destroyable {
|
|
13
|
+
/**
|
|
14
|
+
* An overriding function should always call the super one at the end of it,
|
|
15
|
+
* in the following manner: `return super.onDestroy()`.
|
|
16
|
+
*/
|
|
17
|
+
protected onDestroy(): Destructor;
|
|
18
|
+
destroy(): boolean & NoOverride;
|
|
19
|
+
}
|
|
20
|
+
export {};
|
package/destroyable.lua
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
local ____lualib = require("lualib_bundle")
|
|
2
|
+
local __TS__Class = ____lualib.__TS__Class
|
|
3
|
+
local __TS__New = ____lualib.__TS__New
|
|
4
|
+
local ____exports = {}
|
|
5
|
+
local ____exception = require("exception")
|
|
6
|
+
local IllegalStateException = ____exception.IllegalStateException
|
|
7
|
+
local stateByDestroyable = setmetatable({}, {__mode = "k"})
|
|
8
|
+
____exports.AbstractDestroyable = __TS__Class()
|
|
9
|
+
local AbstractDestroyable = ____exports.AbstractDestroyable
|
|
10
|
+
AbstractDestroyable.name = "AbstractDestroyable"
|
|
11
|
+
function AbstractDestroyable.prototype.____constructor(self)
|
|
12
|
+
end
|
|
13
|
+
function AbstractDestroyable.prototype.onDestroy(self)
|
|
14
|
+
stateByDestroyable[self] = 1
|
|
15
|
+
return nil
|
|
16
|
+
end
|
|
17
|
+
function AbstractDestroyable.prototype.destroy(self)
|
|
18
|
+
if stateByDestroyable[self] ~= nil then
|
|
19
|
+
return false
|
|
20
|
+
end
|
|
21
|
+
stateByDestroyable[self] = 0
|
|
22
|
+
self:onDestroy()
|
|
23
|
+
if stateByDestroyable[self] ~= 1 then
|
|
24
|
+
error(
|
|
25
|
+
__TS__New(IllegalStateException, ("'onDestroy' is incorrectly overridden (class '" .. self.constructor.name) .. "')."),
|
|
26
|
+
0
|
|
27
|
+
)
|
|
28
|
+
end
|
|
29
|
+
return true
|
|
30
|
+
end
|
|
31
|
+
return ____exports
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** @noSelfInFile */
|
|
2
|
+
import { AbilityTypeId } from "./object-data/entry/ability-type";
|
|
3
|
+
import { UnitAbility } from "./internal/ability";
|
|
4
|
+
import { Player } from "../core/types/player";
|
|
5
|
+
export declare const castAbility: (owner: Player, abilityTypeId: AbilityTypeId, ...args: [x: number, y: number] | [number, x: number, y: number] | [(ability: UnitAbility) => void, x: number, y: number]) => void;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
local ____exports = {}
|
|
2
|
+
local ____dummy = require("core.dummy")
|
|
3
|
+
local InstantDummyCaster = ____dummy.InstantDummyCaster
|
|
4
|
+
____exports.castAbility = function(owner, abilityTypeId, ...)
|
|
5
|
+
InstantDummyCaster:getInstance():cast(owner, abilityTypeId, ...)
|
|
6
|
+
end
|
|
7
|
+
return ____exports
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/** @noSelfInFile */
|
|
2
|
+
import { AbstractDestroyable, Destructor } from "../destroyable";
|
|
3
|
+
export type BehaviorConstructor<T extends Behavior<any>, Parameters extends any[] = any[]> = OmitConstructor<typeof Behavior<any>> & (abstract new (...parameters: Parameters) => T);
|
|
4
|
+
declare const enum BehaviorPropertyKey {
|
|
5
|
+
PREVIOUS_BEHAVIOR = 0,
|
|
6
|
+
NEXT_BEHAVIOR = 1,
|
|
7
|
+
TIMER = 2
|
|
8
|
+
}
|
|
9
|
+
export declare abstract class Behavior<T, PeriodicActionParameters extends any[] = any[]> extends AbstractDestroyable {
|
|
10
|
+
protected readonly object: T;
|
|
11
|
+
private [BehaviorPropertyKey.PREVIOUS_BEHAVIOR]?;
|
|
12
|
+
private [BehaviorPropertyKey.NEXT_BEHAVIOR]?;
|
|
13
|
+
private [BehaviorPropertyKey.TIMER]?;
|
|
14
|
+
protected constructor(object: T);
|
|
15
|
+
protected onDestroy(): Destructor;
|
|
16
|
+
protected onPeriod(...parameters: PeriodicActionParameters): void;
|
|
17
|
+
protected startPeriodicAction(interval: number, ...parameters: PeriodicActionParameters): void;
|
|
18
|
+
protected stopPeriodicAction(): void;
|
|
19
|
+
static count<T extends Behavior<any>, ConstructorParameters extends any[]>(this: BehaviorConstructor<T, ConstructorParameters>, object: T extends Behavior<infer Object> ? Object : never, limit?: number): number;
|
|
20
|
+
static getFirst<T extends Behavior<any>, ConstructorParameters extends any[], Count extends [number] | []>(this: BehaviorConstructor<T, ConstructorParameters>, object: T extends Behavior<infer Object> ? Object : never, ...[count]: Count): Count extends [number] ? T[] : T | undefined;
|
|
21
|
+
static getLast<T extends Behavior<any>, ConstructorParameters extends any[]>(this: BehaviorConstructor<T, ConstructorParameters>, object: T extends Behavior<infer Object> ? Object : never): T | undefined;
|
|
22
|
+
static getAll<T extends Behavior<any>, ConstructorParameters extends any[]>(this: BehaviorConstructor<T, ConstructorParameters>, object: T extends Behavior<infer Object> ? Object : never): T[];
|
|
23
|
+
static forFirst<T extends Behavior<any>, ConstructorParameters extends any[], ConsumerParameters extends any[]>(this: BehaviorConstructor<T, ConstructorParameters>, object: T extends Behavior<infer Object> ? Object : never, count: number, consumer: (behavior: T, ...parameters: ConsumerParameters) => any, ...parameters: ConsumerParameters): number;
|
|
24
|
+
static forFirst<T extends Behavior<any>, ConstructorParameters extends any[], K extends KeysOfType<T, (...args: any) => any>>(this: BehaviorConstructor<T, ConstructorParameters>, object: T extends Behavior<infer Object> ? Object : never, count: number, key: K, ...parameters: T[K] extends (...args: any) => any ? Parameters<T[K]> : never): number;
|
|
25
|
+
static forAll<T extends Behavior<any>, ConstructorParameters extends any[], ConsumerParameters extends any[]>(this: BehaviorConstructor<T, ConstructorParameters>, object: T extends Behavior<infer Object> ? Object : never, consumer: (behavior: T, ...parameters: ConsumerParameters) => unknown, ...parameters: ConsumerParameters): number;
|
|
26
|
+
static forAll<T extends Behavior<any>, ConstructorParameters extends any[], K extends KeysOfType<T, (...args: any) => any>>(this: BehaviorConstructor<T, ConstructorParameters>, object: T extends Behavior<infer Object> ? Object : never, key: K, ...parameters: T[K] extends (...args: any) => any ? Parameters<T[K]> : never): number;
|
|
27
|
+
}
|
|
28
|
+
export {};
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
local ____lualib = require("lualib_bundle")
|
|
2
|
+
local __TS__Class = ____lualib.__TS__Class
|
|
3
|
+
local __TS__ClassExtends = ____lualib.__TS__ClassExtends
|
|
4
|
+
local __TS__InstanceOf = ____lualib.__TS__InstanceOf
|
|
5
|
+
local ____exports = {}
|
|
6
|
+
local ____destroyable = require("destroyable")
|
|
7
|
+
local AbstractDestroyable = ____destroyable.AbstractDestroyable
|
|
8
|
+
local ____timer = require("core.types.timer")
|
|
9
|
+
local Timer = ____timer.Timer
|
|
10
|
+
local safeCall = warpack.safeCall
|
|
11
|
+
local firstBehaviorByObject = {}
|
|
12
|
+
local lastBehaviorByObject = {}
|
|
13
|
+
local function invokeBehaviorOnPeriod(behavior, ...)
|
|
14
|
+
behavior.onPeriod(behavior, ...)
|
|
15
|
+
end
|
|
16
|
+
____exports.Behavior = __TS__Class()
|
|
17
|
+
local Behavior = ____exports.Behavior
|
|
18
|
+
Behavior.name = "Behavior"
|
|
19
|
+
__TS__ClassExtends(Behavior, AbstractDestroyable)
|
|
20
|
+
function Behavior.prototype.____constructor(self, object)
|
|
21
|
+
AbstractDestroyable.prototype.____constructor(self)
|
|
22
|
+
self.object = object
|
|
23
|
+
local lastBehavior = lastBehaviorByObject[object]
|
|
24
|
+
if lastBehavior == nil then
|
|
25
|
+
firstBehaviorByObject[object] = self
|
|
26
|
+
lastBehaviorByObject[object] = self
|
|
27
|
+
else
|
|
28
|
+
self[0] = lastBehavior
|
|
29
|
+
lastBehavior[1] = self
|
|
30
|
+
lastBehaviorByObject[object] = self
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
function Behavior.prototype.onDestroy(self)
|
|
34
|
+
local ____opt_0 = self[2]
|
|
35
|
+
if ____opt_0 ~= nil then
|
|
36
|
+
____opt_0:destroy()
|
|
37
|
+
end
|
|
38
|
+
local previousBehavior = self[0]
|
|
39
|
+
local nextBehavior = self[1]
|
|
40
|
+
if previousBehavior ~= nil then
|
|
41
|
+
previousBehavior[1] = nextBehavior
|
|
42
|
+
else
|
|
43
|
+
firstBehaviorByObject[self.object] = nextBehavior
|
|
44
|
+
end
|
|
45
|
+
if nextBehavior ~= nil then
|
|
46
|
+
nextBehavior[0] = previousBehavior
|
|
47
|
+
else
|
|
48
|
+
lastBehaviorByObject[self.object] = previousBehavior
|
|
49
|
+
end
|
|
50
|
+
return AbstractDestroyable.prototype.onDestroy(self)
|
|
51
|
+
end
|
|
52
|
+
function Behavior.prototype.onPeriod(self, ...)
|
|
53
|
+
end
|
|
54
|
+
function Behavior.prototype.startPeriodicAction(self, interval, ...)
|
|
55
|
+
local timer = self[2]
|
|
56
|
+
if timer == nil then
|
|
57
|
+
timer = Timer:create()
|
|
58
|
+
self[2] = timer
|
|
59
|
+
end
|
|
60
|
+
timer:start(
|
|
61
|
+
interval,
|
|
62
|
+
true,
|
|
63
|
+
invokeBehaviorOnPeriod,
|
|
64
|
+
self,
|
|
65
|
+
...
|
|
66
|
+
)
|
|
67
|
+
end
|
|
68
|
+
function Behavior.prototype.stopPeriodicAction(self)
|
|
69
|
+
local timer = self[2]
|
|
70
|
+
if timer ~= nil then
|
|
71
|
+
timer:destroy()
|
|
72
|
+
self[2] = nil
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
function Behavior.count(self, object, limit)
|
|
76
|
+
local behaviorsCount = 0
|
|
77
|
+
local behavior = firstBehaviorByObject[object]
|
|
78
|
+
while behavior ~= nil and (limit == nil or behaviorsCount < limit) do
|
|
79
|
+
if __TS__InstanceOf(behavior, self) then
|
|
80
|
+
behaviorsCount = behaviorsCount + 1
|
|
81
|
+
end
|
|
82
|
+
behavior = behavior[1]
|
|
83
|
+
end
|
|
84
|
+
return behaviorsCount
|
|
85
|
+
end
|
|
86
|
+
function Behavior.getFirst(self, object, count)
|
|
87
|
+
local behavior = firstBehaviorByObject[object]
|
|
88
|
+
if count == nil then
|
|
89
|
+
while behavior ~= nil do
|
|
90
|
+
if __TS__InstanceOf(behavior, self) then
|
|
91
|
+
return behavior
|
|
92
|
+
end
|
|
93
|
+
behavior = behavior[1]
|
|
94
|
+
end
|
|
95
|
+
return nil
|
|
96
|
+
end
|
|
97
|
+
local behaviors = {}
|
|
98
|
+
local behaviorsCount = 0
|
|
99
|
+
while behavior ~= nil and behaviorsCount < count do
|
|
100
|
+
if __TS__InstanceOf(behavior, self) then
|
|
101
|
+
behaviorsCount = behaviorsCount + 1
|
|
102
|
+
behaviors[behaviorsCount] = behavior
|
|
103
|
+
end
|
|
104
|
+
behavior = behavior[1]
|
|
105
|
+
end
|
|
106
|
+
return behaviors
|
|
107
|
+
end
|
|
108
|
+
function Behavior.getLast(self, object)
|
|
109
|
+
local behavior = lastBehaviorByObject[object]
|
|
110
|
+
while behavior ~= nil do
|
|
111
|
+
if __TS__InstanceOf(behavior, self) then
|
|
112
|
+
return behavior
|
|
113
|
+
end
|
|
114
|
+
behavior = behavior[0]
|
|
115
|
+
end
|
|
116
|
+
return nil
|
|
117
|
+
end
|
|
118
|
+
function Behavior.getAll(self, object)
|
|
119
|
+
local behaviors = {}
|
|
120
|
+
local behaviorsCount = 0
|
|
121
|
+
local behavior = firstBehaviorByObject[object]
|
|
122
|
+
while behavior ~= nil do
|
|
123
|
+
if __TS__InstanceOf(behavior, self) then
|
|
124
|
+
behaviorsCount = behaviorsCount + 1
|
|
125
|
+
behaviors[behaviorsCount] = behavior
|
|
126
|
+
end
|
|
127
|
+
behavior = behavior[1]
|
|
128
|
+
end
|
|
129
|
+
return behaviors
|
|
130
|
+
end
|
|
131
|
+
function Behavior.forFirst(self, object, count, consumerOrKey, ...)
|
|
132
|
+
local behaviorsCount = 0
|
|
133
|
+
local behavior = firstBehaviorByObject[object]
|
|
134
|
+
if type(consumerOrKey) == "function" then
|
|
135
|
+
while behavior ~= nil and behaviorsCount < count do
|
|
136
|
+
if __TS__InstanceOf(behavior, self) then
|
|
137
|
+
safeCall(consumerOrKey, behavior, ...)
|
|
138
|
+
behaviorsCount = behaviorsCount + 1
|
|
139
|
+
end
|
|
140
|
+
behavior = behavior[1]
|
|
141
|
+
end
|
|
142
|
+
else
|
|
143
|
+
while behavior ~= nil and behaviorsCount < count do
|
|
144
|
+
if __TS__InstanceOf(behavior, self) then
|
|
145
|
+
safeCall(behavior[consumerOrKey], behavior, ...)
|
|
146
|
+
behaviorsCount = behaviorsCount + 1
|
|
147
|
+
end
|
|
148
|
+
behavior = behavior[1]
|
|
149
|
+
end
|
|
150
|
+
end
|
|
151
|
+
return behaviorsCount
|
|
152
|
+
end
|
|
153
|
+
function Behavior.forAll(self, object, consumerOrKey, ...)
|
|
154
|
+
local behaviorsCount = 0
|
|
155
|
+
local behavior = firstBehaviorByObject[object]
|
|
156
|
+
if behavior ~= nil then
|
|
157
|
+
if type(consumerOrKey) == "function" then
|
|
158
|
+
repeat
|
|
159
|
+
do
|
|
160
|
+
if __TS__InstanceOf(behavior, self) then
|
|
161
|
+
safeCall(consumerOrKey, behavior, ...)
|
|
162
|
+
behaviorsCount = behaviorsCount + 1
|
|
163
|
+
end
|
|
164
|
+
behavior = behavior[1]
|
|
165
|
+
end
|
|
166
|
+
until not (behavior ~= nil)
|
|
167
|
+
else
|
|
168
|
+
repeat
|
|
169
|
+
do
|
|
170
|
+
if __TS__InstanceOf(behavior, self) then
|
|
171
|
+
safeCall(behavior[consumerOrKey], behavior, ...)
|
|
172
|
+
behaviorsCount = behaviorsCount + 1
|
|
173
|
+
end
|
|
174
|
+
behavior = behavior[1]
|
|
175
|
+
end
|
|
176
|
+
until not (behavior ~= nil)
|
|
177
|
+
end
|
|
178
|
+
end
|
|
179
|
+
return behaviorsCount
|
|
180
|
+
end
|
|
181
|
+
return ____exports
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/** @noSelfInFile */
|
|
2
|
+
import { AbilityBehavior } from "../ability";
|
|
3
|
+
import { Ability } from "../../internal/ability";
|
|
4
|
+
import { Buff, BuffConstructor, BuffParameters, BuffTypeIdSelectionPolicy } from "../../buff";
|
|
5
|
+
import { Unit } from "../../internal/unit";
|
|
6
|
+
import { ApplicableBuffTypeId } from "../../object-data/entry/buff-type/applicable";
|
|
7
|
+
import { BuffResistanceType } from "../../object-data/auxiliary/buff-resistance-type";
|
|
8
|
+
import { BuffPolarity } from "../../object-data/auxiliary/buff-polarity";
|
|
9
|
+
import { Widget } from "../../../core/types/widget";
|
|
10
|
+
type BuffParametersType<T extends BuffConstructor> = BuffParameters & Omit<BuffAdditionalParametersType<T>, keyof BuffParameters>;
|
|
11
|
+
type BuffAdditionalParametersType<T extends BuffConstructor> = T extends BuffConstructor<Buff<infer AdditionalParameters>> ? AdditionalParameters : never;
|
|
12
|
+
export declare abstract class ApplyBuffAbilityBehavior<T extends BuffConstructor = typeof Buff> extends AbilityBehavior {
|
|
13
|
+
protected readonly applyBuff: (this: void, unit: Unit) => InstanceType<T> | undefined;
|
|
14
|
+
constructor(ability: Ability, ...parameters: [
|
|
15
|
+
...constructor: [] | [T],
|
|
16
|
+
...typeId: [ApplicableBuffTypeId] | [
|
|
17
|
+
typeIds: [ApplicableBuffTypeId, ...ApplicableBuffTypeId[]],
|
|
18
|
+
typeIdSelectionPolicy: BuffTypeIdSelectionPolicy
|
|
19
|
+
],
|
|
20
|
+
polarity: BuffPolarity,
|
|
21
|
+
resistanceType: BuffResistanceType,
|
|
22
|
+
parameters?: BuffParametersType<T>
|
|
23
|
+
]);
|
|
24
|
+
}
|
|
25
|
+
export declare class ApplyBuffSelfAbilityBehaviour<T extends BuffConstructor = typeof Buff> extends ApplyBuffAbilityBehavior<T> {
|
|
26
|
+
onImpact(caster: Unit): void;
|
|
27
|
+
}
|
|
28
|
+
export declare class ApplyBuffTargetAbilityBehavior<T extends BuffConstructor = typeof Buff> extends ApplyBuffAbilityBehavior<T> {
|
|
29
|
+
onUnitTargetImpact(caster: Unit, target: Unit): void;
|
|
30
|
+
}
|
|
31
|
+
export declare class ApplyBuffSelfAreaAbilityBehavior<T extends BuffConstructor = typeof Buff> extends ApplyBuffAbilityBehavior<T> {
|
|
32
|
+
onImpact(caster: Unit): void;
|
|
33
|
+
}
|
|
34
|
+
export declare class ApplyBuffTargetAreaAbilityBehavior<T extends BuffConstructor = typeof Buff> extends ApplyBuffAbilityBehavior<T> {
|
|
35
|
+
onPointTargetImpact(caster: Unit, x: number, y: number): void;
|
|
36
|
+
onWidgetTargetImpact(caster: Unit, target: Widget): void;
|
|
37
|
+
}
|
|
38
|
+
export {};
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
local ____lualib = require("lualib_bundle")
|
|
2
|
+
local __TS__Class = ____lualib.__TS__Class
|
|
3
|
+
local __TS__ClassExtends = ____lualib.__TS__ClassExtends
|
|
4
|
+
local __TS__ArrayIsArray = ____lualib.__TS__ArrayIsArray
|
|
5
|
+
local ____exports = {}
|
|
6
|
+
local ____ability = require("engine.behaviour.ability")
|
|
7
|
+
local AbilityBehavior = ____ability.AbilityBehavior
|
|
8
|
+
local ____buff = require("engine.buff")
|
|
9
|
+
local Buff = ____buff.Buff
|
|
10
|
+
local ____unit = require("engine.internal.unit")
|
|
11
|
+
local Unit = ____unit.Unit
|
|
12
|
+
local ____ability = require("engine.object-field.ability")
|
|
13
|
+
local resolveCurrentAbilityDependentValue = ____ability.resolveCurrentAbilityDependentValue
|
|
14
|
+
local ____ability = require("engine.standard.fields.ability")
|
|
15
|
+
local ALLOWED_TARGETS_ABILITY_COMBAT_CLASSIFICATIONS_LEVEL_FIELD = ____ability.ALLOWED_TARGETS_ABILITY_COMBAT_CLASSIFICATIONS_LEVEL_FIELD
|
|
16
|
+
local AREA_OF_EFFECT_ABILITY_FLOAT_LEVEL_FIELD = ____ability.AREA_OF_EFFECT_ABILITY_FLOAT_LEVEL_FIELD
|
|
17
|
+
____exports.ApplyBuffAbilityBehavior = __TS__Class()
|
|
18
|
+
local ApplyBuffAbilityBehavior = ____exports.ApplyBuffAbilityBehavior
|
|
19
|
+
ApplyBuffAbilityBehavior.name = "ApplyBuffAbilityBehavior"
|
|
20
|
+
__TS__ClassExtends(ApplyBuffAbilityBehavior, AbilityBehavior)
|
|
21
|
+
function ApplyBuffAbilityBehavior.prototype.____constructor(self, ability, constructorOrTypeIdOrTypeIds, typeIdOrTypeIdsOrPolarityOrTypeIdSelectionPolicy, polarityOrTypeIdSelectionPolicyOrResistanceType, resistanceTypeOrPolarityOrParameters, parametersOrResistanceType, parameters)
|
|
22
|
+
AbilityBehavior.prototype.____constructor(self, ability)
|
|
23
|
+
if type(constructorOrTypeIdOrTypeIds) == "number" then
|
|
24
|
+
self.applyBuff = function(unit)
|
|
25
|
+
return Buff:apply(
|
|
26
|
+
unit,
|
|
27
|
+
constructorOrTypeIdOrTypeIds,
|
|
28
|
+
typeIdOrTypeIdsOrPolarityOrTypeIdSelectionPolicy,
|
|
29
|
+
polarityOrTypeIdSelectionPolicyOrResistanceType,
|
|
30
|
+
ability,
|
|
31
|
+
resistanceTypeOrPolarityOrParameters
|
|
32
|
+
)
|
|
33
|
+
end
|
|
34
|
+
elseif __TS__ArrayIsArray(constructorOrTypeIdOrTypeIds) then
|
|
35
|
+
self.applyBuff = function(unit)
|
|
36
|
+
return Buff:apply(
|
|
37
|
+
unit,
|
|
38
|
+
constructorOrTypeIdOrTypeIds,
|
|
39
|
+
typeIdOrTypeIdsOrPolarityOrTypeIdSelectionPolicy,
|
|
40
|
+
polarityOrTypeIdSelectionPolicyOrResistanceType,
|
|
41
|
+
resistanceTypeOrPolarityOrParameters,
|
|
42
|
+
ability,
|
|
43
|
+
parametersOrResistanceType
|
|
44
|
+
)
|
|
45
|
+
end
|
|
46
|
+
elseif type(typeIdOrTypeIdsOrPolarityOrTypeIdSelectionPolicy) == "number" then
|
|
47
|
+
self.applyBuff = function(unit)
|
|
48
|
+
return constructorOrTypeIdOrTypeIds:apply(
|
|
49
|
+
unit,
|
|
50
|
+
typeIdOrTypeIdsOrPolarityOrTypeIdSelectionPolicy,
|
|
51
|
+
polarityOrTypeIdSelectionPolicyOrResistanceType,
|
|
52
|
+
resistanceTypeOrPolarityOrParameters,
|
|
53
|
+
ability,
|
|
54
|
+
parametersOrResistanceType
|
|
55
|
+
)
|
|
56
|
+
end
|
|
57
|
+
else
|
|
58
|
+
self.applyBuff = function(unit)
|
|
59
|
+
return constructorOrTypeIdOrTypeIds:apply(
|
|
60
|
+
unit,
|
|
61
|
+
typeIdOrTypeIdsOrPolarityOrTypeIdSelectionPolicy,
|
|
62
|
+
polarityOrTypeIdSelectionPolicyOrResistanceType,
|
|
63
|
+
resistanceTypeOrPolarityOrParameters,
|
|
64
|
+
parametersOrResistanceType,
|
|
65
|
+
ability,
|
|
66
|
+
parameters
|
|
67
|
+
)
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
____exports.ApplyBuffSelfAbilityBehaviour = __TS__Class()
|
|
72
|
+
local ApplyBuffSelfAbilityBehaviour = ____exports.ApplyBuffSelfAbilityBehaviour
|
|
73
|
+
ApplyBuffSelfAbilityBehaviour.name = "ApplyBuffSelfAbilityBehaviour"
|
|
74
|
+
__TS__ClassExtends(ApplyBuffSelfAbilityBehaviour, ____exports.ApplyBuffAbilityBehavior)
|
|
75
|
+
function ApplyBuffSelfAbilityBehaviour.prototype.onImpact(self, caster)
|
|
76
|
+
self.applyBuff(caster)
|
|
77
|
+
end
|
|
78
|
+
____exports.ApplyBuffTargetAbilityBehavior = __TS__Class()
|
|
79
|
+
local ApplyBuffTargetAbilityBehavior = ____exports.ApplyBuffTargetAbilityBehavior
|
|
80
|
+
ApplyBuffTargetAbilityBehavior.name = "ApplyBuffTargetAbilityBehavior"
|
|
81
|
+
__TS__ClassExtends(ApplyBuffTargetAbilityBehavior, ____exports.ApplyBuffAbilityBehavior)
|
|
82
|
+
function ApplyBuffTargetAbilityBehavior.prototype.onUnitTargetImpact(self, caster, target)
|
|
83
|
+
self.applyBuff(target)
|
|
84
|
+
end
|
|
85
|
+
____exports.ApplyBuffSelfAreaAbilityBehavior = __TS__Class()
|
|
86
|
+
local ApplyBuffSelfAreaAbilityBehavior = ____exports.ApplyBuffSelfAreaAbilityBehavior
|
|
87
|
+
ApplyBuffSelfAreaAbilityBehavior.name = "ApplyBuffSelfAreaAbilityBehavior"
|
|
88
|
+
__TS__ClassExtends(ApplyBuffSelfAreaAbilityBehavior, ____exports.ApplyBuffAbilityBehavior)
|
|
89
|
+
function ApplyBuffSelfAreaAbilityBehavior.prototype.onImpact(self, caster)
|
|
90
|
+
for ____, unit in ipairs(Unit.getAllowedTargetsInCollisionRange(
|
|
91
|
+
caster,
|
|
92
|
+
resolveCurrentAbilityDependentValue(self.ability, ALLOWED_TARGETS_ABILITY_COMBAT_CLASSIFICATIONS_LEVEL_FIELD),
|
|
93
|
+
caster.x,
|
|
94
|
+
caster.y,
|
|
95
|
+
resolveCurrentAbilityDependentValue(self.ability, AREA_OF_EFFECT_ABILITY_FLOAT_LEVEL_FIELD)
|
|
96
|
+
)) do
|
|
97
|
+
self.applyBuff(unit)
|
|
98
|
+
end
|
|
99
|
+
end
|
|
100
|
+
____exports.ApplyBuffTargetAreaAbilityBehavior = __TS__Class()
|
|
101
|
+
local ApplyBuffTargetAreaAbilityBehavior = ____exports.ApplyBuffTargetAreaAbilityBehavior
|
|
102
|
+
ApplyBuffTargetAreaAbilityBehavior.name = "ApplyBuffTargetAreaAbilityBehavior"
|
|
103
|
+
__TS__ClassExtends(ApplyBuffTargetAreaAbilityBehavior, ____exports.ApplyBuffAbilityBehavior)
|
|
104
|
+
function ApplyBuffTargetAreaAbilityBehavior.prototype.onPointTargetImpact(self, caster, x, y)
|
|
105
|
+
for ____, unit in ipairs(Unit.getAllowedTargetsInCollisionRange(
|
|
106
|
+
caster,
|
|
107
|
+
resolveCurrentAbilityDependentValue(self.ability, ALLOWED_TARGETS_ABILITY_COMBAT_CLASSIFICATIONS_LEVEL_FIELD),
|
|
108
|
+
x,
|
|
109
|
+
y,
|
|
110
|
+
resolveCurrentAbilityDependentValue(self.ability, AREA_OF_EFFECT_ABILITY_FLOAT_LEVEL_FIELD)
|
|
111
|
+
)) do
|
|
112
|
+
self.applyBuff(unit)
|
|
113
|
+
end
|
|
114
|
+
end
|
|
115
|
+
function ApplyBuffTargetAreaAbilityBehavior.prototype.onWidgetTargetImpact(self, caster, target)
|
|
116
|
+
for ____, unit in ipairs(Unit.getAllowedTargetsInCollisionRange(
|
|
117
|
+
caster,
|
|
118
|
+
resolveCurrentAbilityDependentValue(self.ability, ALLOWED_TARGETS_ABILITY_COMBAT_CLASSIFICATIONS_LEVEL_FIELD),
|
|
119
|
+
target.x,
|
|
120
|
+
target.y,
|
|
121
|
+
resolveCurrentAbilityDependentValue(self.ability, AREA_OF_EFFECT_ABILITY_FLOAT_LEVEL_FIELD)
|
|
122
|
+
)) do
|
|
123
|
+
self.applyBuff(unit)
|
|
124
|
+
end
|
|
125
|
+
end
|
|
126
|
+
return ____exports
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** @noSelfInFile */
|
|
2
|
+
import { AbilityBehavior } from "../ability";
|
|
3
|
+
import { Ability } from "../../internal/ability";
|
|
4
|
+
import { UnitBehaviorConstructor } from "../unit";
|
|
5
|
+
import { Unit } from "../../internal/unit";
|
|
6
|
+
export declare class ApplyUnitBehaviorAbilityBehavior<Args extends any[]> extends AbilityBehavior {
|
|
7
|
+
private readonly createUnitBehavior;
|
|
8
|
+
private unitBehavior?;
|
|
9
|
+
constructor(ability: Ability, unitBehaviorConstructor: UnitBehaviorConstructor<Args>, ...args: Args);
|
|
10
|
+
onUnitGainAbility(unit: Unit): void;
|
|
11
|
+
onUnitLoseAbility(): void;
|
|
12
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
local ____lualib = require("lualib_bundle")
|
|
2
|
+
local __TS__Class = ____lualib.__TS__Class
|
|
3
|
+
local __TS__ClassExtends = ____lualib.__TS__ClassExtends
|
|
4
|
+
local __TS__New = ____lualib.__TS__New
|
|
5
|
+
local ____exports = {}
|
|
6
|
+
local ____ability = require("engine.behaviour.ability")
|
|
7
|
+
local AbilityBehavior = ____ability.AbilityBehavior
|
|
8
|
+
____exports.ApplyUnitBehaviorAbilityBehavior = __TS__Class()
|
|
9
|
+
local ApplyUnitBehaviorAbilityBehavior = ____exports.ApplyUnitBehaviorAbilityBehavior
|
|
10
|
+
ApplyUnitBehaviorAbilityBehavior.name = "ApplyUnitBehaviorAbilityBehavior"
|
|
11
|
+
__TS__ClassExtends(ApplyUnitBehaviorAbilityBehavior, AbilityBehavior)
|
|
12
|
+
function ApplyUnitBehaviorAbilityBehavior.prototype.____constructor(self, ability, unitBehaviorConstructor, ...)
|
|
13
|
+
local args = {...}
|
|
14
|
+
AbilityBehavior.prototype.____constructor(self, ability)
|
|
15
|
+
self.createUnitBehavior = function(____, unit)
|
|
16
|
+
return __TS__New(
|
|
17
|
+
unitBehaviorConstructor,
|
|
18
|
+
unit,
|
|
19
|
+
table.unpack(args)
|
|
20
|
+
)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
function ApplyUnitBehaviorAbilityBehavior.prototype.onUnitGainAbility(self, unit)
|
|
24
|
+
local ____opt_0 = self.unitBehavior
|
|
25
|
+
if ____opt_0 ~= nil then
|
|
26
|
+
____opt_0:destroy()
|
|
27
|
+
end
|
|
28
|
+
self.unitBehavior = self:createUnitBehavior(unit)
|
|
29
|
+
end
|
|
30
|
+
function ApplyUnitBehaviorAbilityBehavior.prototype.onUnitLoseAbility(self)
|
|
31
|
+
local ____opt_2 = self.unitBehavior
|
|
32
|
+
if ____opt_2 ~= nil then
|
|
33
|
+
____opt_2:destroy()
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
return ____exports
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/** @noSelfInFile */
|
|
2
|
+
import { AbilityBehavior } from "../ability";
|
|
3
|
+
import { Ability } from "../../internal/ability";
|
|
4
|
+
import { Unit } from "../../internal/unit";
|
|
5
|
+
import { AbilityDependentValue } from "../../object-field/ability";
|
|
6
|
+
import { Widget } from "../../../core/types/widget";
|
|
7
|
+
export declare class DamageSelfAbilityBehavior extends AbilityBehavior {
|
|
8
|
+
private readonly damage;
|
|
9
|
+
constructor(ability: Ability, damage: AbilityDependentValue<number>);
|
|
10
|
+
onImpact(caster: Unit): void;
|
|
11
|
+
}
|
|
12
|
+
export declare class DamageTargetAbilityBehavior extends AbilityBehavior {
|
|
13
|
+
private readonly damage;
|
|
14
|
+
constructor(ability: Ability, damage: AbilityDependentValue<number>);
|
|
15
|
+
onWidgetTargetImpact(caster: Unit, target: Widget): void;
|
|
16
|
+
}
|
|
17
|
+
export declare class DamageTargetAreaAbilityBehavior extends AbilityBehavior {
|
|
18
|
+
private readonly damage;
|
|
19
|
+
private readonly maximumDamage?;
|
|
20
|
+
constructor(ability: Ability, damage: AbilityDependentValue<number>, maximumDamage?: AbilityDependentValue<number> | undefined);
|
|
21
|
+
onNoTargetImpact(caster: Unit): void;
|
|
22
|
+
onWidgetTargetImpact(caster: Unit, target: Widget): void;
|
|
23
|
+
onPointTargetImpact(caster: Unit, x: number, y: number): void;
|
|
24
|
+
private damageArea;
|
|
25
|
+
}
|
|
@@ -0,0 +1,75 @@
|
|
|
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 ____ability = require("engine.behaviour.ability")
|
|
6
|
+
local AbilityBehavior = ____ability.AbilityBehavior
|
|
7
|
+
local ____unit = require("engine.internal.unit")
|
|
8
|
+
local Unit = ____unit.Unit
|
|
9
|
+
local ____ability = require("engine.standard.fields.ability")
|
|
10
|
+
local ALLOWED_TARGETS_ABILITY_COMBAT_CLASSIFICATIONS_LEVEL_FIELD = ____ability.ALLOWED_TARGETS_ABILITY_COMBAT_CLASSIFICATIONS_LEVEL_FIELD
|
|
11
|
+
local AREA_OF_EFFECT_ABILITY_FLOAT_LEVEL_FIELD = ____ability.AREA_OF_EFFECT_ABILITY_FLOAT_LEVEL_FIELD
|
|
12
|
+
____exports.DamageSelfAbilityBehavior = __TS__Class()
|
|
13
|
+
local DamageSelfAbilityBehavior = ____exports.DamageSelfAbilityBehavior
|
|
14
|
+
DamageSelfAbilityBehavior.name = "DamageSelfAbilityBehavior"
|
|
15
|
+
__TS__ClassExtends(DamageSelfAbilityBehavior, AbilityBehavior)
|
|
16
|
+
function DamageSelfAbilityBehavior.prototype.____constructor(self, ability, damage)
|
|
17
|
+
AbilityBehavior.prototype.____constructor(self, ability)
|
|
18
|
+
self.damage = damage
|
|
19
|
+
end
|
|
20
|
+
function DamageSelfAbilityBehavior.prototype.onImpact(self, caster)
|
|
21
|
+
caster:damageTarget(
|
|
22
|
+
caster,
|
|
23
|
+
self:resolveCurrentAbilityDependentValue(self.damage)
|
|
24
|
+
)
|
|
25
|
+
end
|
|
26
|
+
____exports.DamageTargetAbilityBehavior = __TS__Class()
|
|
27
|
+
local DamageTargetAbilityBehavior = ____exports.DamageTargetAbilityBehavior
|
|
28
|
+
DamageTargetAbilityBehavior.name = "DamageTargetAbilityBehavior"
|
|
29
|
+
__TS__ClassExtends(DamageTargetAbilityBehavior, AbilityBehavior)
|
|
30
|
+
function DamageTargetAbilityBehavior.prototype.____constructor(self, ability, damage)
|
|
31
|
+
AbilityBehavior.prototype.____constructor(self, ability)
|
|
32
|
+
self.damage = damage
|
|
33
|
+
end
|
|
34
|
+
function DamageTargetAbilityBehavior.prototype.onWidgetTargetImpact(self, caster, target)
|
|
35
|
+
caster:damageTarget(
|
|
36
|
+
target,
|
|
37
|
+
self:resolveCurrentAbilityDependentValue(self.damage)
|
|
38
|
+
)
|
|
39
|
+
end
|
|
40
|
+
____exports.DamageTargetAreaAbilityBehavior = __TS__Class()
|
|
41
|
+
local DamageTargetAreaAbilityBehavior = ____exports.DamageTargetAreaAbilityBehavior
|
|
42
|
+
DamageTargetAreaAbilityBehavior.name = "DamageTargetAreaAbilityBehavior"
|
|
43
|
+
__TS__ClassExtends(DamageTargetAreaAbilityBehavior, AbilityBehavior)
|
|
44
|
+
function DamageTargetAreaAbilityBehavior.prototype.____constructor(self, ability, damage, maximumDamage)
|
|
45
|
+
AbilityBehavior.prototype.____constructor(self, ability)
|
|
46
|
+
self.damage = damage
|
|
47
|
+
self.maximumDamage = maximumDamage
|
|
48
|
+
end
|
|
49
|
+
function DamageTargetAreaAbilityBehavior.prototype.onNoTargetImpact(self, caster)
|
|
50
|
+
self:damageArea(caster, caster.x, caster.y)
|
|
51
|
+
end
|
|
52
|
+
function DamageTargetAreaAbilityBehavior.prototype.onWidgetTargetImpact(self, caster, target)
|
|
53
|
+
self:damageArea(caster, target.x, target.y)
|
|
54
|
+
end
|
|
55
|
+
function DamageTargetAreaAbilityBehavior.prototype.onPointTargetImpact(self, caster, x, y)
|
|
56
|
+
self:damageArea(caster, x, y)
|
|
57
|
+
end
|
|
58
|
+
function DamageTargetAreaAbilityBehavior.prototype.damageArea(self, caster, x, y)
|
|
59
|
+
local targets = Unit.getAllowedTargetsInCollisionRange(
|
|
60
|
+
caster,
|
|
61
|
+
self:resolveCurrentAbilityDependentValue(ALLOWED_TARGETS_ABILITY_COMBAT_CLASSIFICATIONS_LEVEL_FIELD),
|
|
62
|
+
x,
|
|
63
|
+
y,
|
|
64
|
+
self:resolveCurrentAbilityDependentValue(AREA_OF_EFFECT_ABILITY_FLOAT_LEVEL_FIELD)
|
|
65
|
+
)
|
|
66
|
+
local damage = self:resolveCurrentAbilityDependentValue(self.damage)
|
|
67
|
+
local maximumDamage = self:resolveCurrentAbilityDependentValue(self.maximumDamage or 0)
|
|
68
|
+
if maximumDamage ~= 0 and damage > maximumDamage then
|
|
69
|
+
damage = maximumDamage / #targets
|
|
70
|
+
end
|
|
71
|
+
for ____, target in ipairs(targets) do
|
|
72
|
+
caster:damageTarget(target, damage)
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
return ____exports
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** @noSelfInFile */
|
|
2
|
+
import { Widget } from "../../../core/types/widget";
|
|
3
|
+
import { Ability } from "../../internal/ability";
|
|
4
|
+
import { Unit } from "../../internal/unit";
|
|
5
|
+
import { AbilityDependentValue } from "../../object-field/ability";
|
|
6
|
+
import { AbilityBehavior } from "../ability";
|
|
7
|
+
export declare class HealSelfAbilityBehavior extends AbilityBehavior {
|
|
8
|
+
private readonly healing;
|
|
9
|
+
constructor(ability: Ability, healing: AbilityDependentValue<number>);
|
|
10
|
+
onImpact(caster: Unit): void;
|
|
11
|
+
}
|
|
12
|
+
export declare class HealTargetAbilityBehavior extends AbilityBehavior {
|
|
13
|
+
private readonly healing;
|
|
14
|
+
constructor(ability: Ability, healing: AbilityDependentValue<number>);
|
|
15
|
+
onWidgetTargetImpact(caster: Unit, target: Widget): void;
|
|
16
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
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 ____ability = require("engine.behaviour.ability")
|
|
6
|
+
local AbilityBehavior = ____ability.AbilityBehavior
|
|
7
|
+
____exports.HealSelfAbilityBehavior = __TS__Class()
|
|
8
|
+
local HealSelfAbilityBehavior = ____exports.HealSelfAbilityBehavior
|
|
9
|
+
HealSelfAbilityBehavior.name = "HealSelfAbilityBehavior"
|
|
10
|
+
__TS__ClassExtends(HealSelfAbilityBehavior, AbilityBehavior)
|
|
11
|
+
function HealSelfAbilityBehavior.prototype.____constructor(self, ability, healing)
|
|
12
|
+
AbilityBehavior.prototype.____constructor(self, ability)
|
|
13
|
+
self.healing = healing
|
|
14
|
+
end
|
|
15
|
+
function HealSelfAbilityBehavior.prototype.onImpact(self, caster)
|
|
16
|
+
caster:healTarget(
|
|
17
|
+
caster,
|
|
18
|
+
self:resolveCurrentAbilityDependentValue(self.healing)
|
|
19
|
+
)
|
|
20
|
+
end
|
|
21
|
+
____exports.HealTargetAbilityBehavior = __TS__Class()
|
|
22
|
+
local HealTargetAbilityBehavior = ____exports.HealTargetAbilityBehavior
|
|
23
|
+
HealTargetAbilityBehavior.name = "HealTargetAbilityBehavior"
|
|
24
|
+
__TS__ClassExtends(HealTargetAbilityBehavior, AbilityBehavior)
|
|
25
|
+
function HealTargetAbilityBehavior.prototype.____constructor(self, ability, healing)
|
|
26
|
+
AbilityBehavior.prototype.____constructor(self, ability)
|
|
27
|
+
self.healing = healing
|
|
28
|
+
end
|
|
29
|
+
function HealTargetAbilityBehavior.prototype.onWidgetTargetImpact(self, caster, target)
|
|
30
|
+
caster:healTarget(
|
|
31
|
+
target,
|
|
32
|
+
self:resolveCurrentAbilityDependentValue(self.healing)
|
|
33
|
+
)
|
|
34
|
+
end
|
|
35
|
+
return ____exports
|