warscript 0.0.1-dev.05b0efd
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 +17 -0
- package/engine/behaviour/ability/apply-unit-behavior.lua +58 -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/blink.d.ts +10 -0
- package/engine/object-data/entry/ability-type/blink.lua +39 -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 +149 -0
- package/engine/object-data/entry/ability-type.lua +1059 -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 +117 -0
- package/engine/object-field/ability.lua +477 -0
- package/engine/object-field/unit.d.ts +16 -0
- package/engine/object-field/unit.lua +52 -0
- package/engine/object-field.d.ts +87 -0
- package/engine/object-field.lua +470 -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 +19 -0
- package/exception.lua +57 -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 +372 -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 +50 -0
- package/utility/linked-set.lua +197 -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
|
@@ -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
|
|
@@ -0,0 +1,25 @@
|
|
|
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 ____ability = require("engine.standard.fields.ability")
|
|
8
|
+
local COOLDOWN_ABILITY_FLOAT_LEVEL_FIELD = ____ability.COOLDOWN_ABILITY_FLOAT_LEVEL_FIELD
|
|
9
|
+
local MANA_COST_ABILITY_INTEGER_LEVEL_FIELD = ____ability.MANA_COST_ABILITY_INTEGER_LEVEL_FIELD
|
|
10
|
+
____exports.InstantImpactAbilityBehavior = __TS__Class()
|
|
11
|
+
local InstantImpactAbilityBehavior = ____exports.InstantImpactAbilityBehavior
|
|
12
|
+
InstantImpactAbilityBehavior.name = "InstantImpactAbilityBehavior"
|
|
13
|
+
__TS__ClassExtends(InstantImpactAbilityBehavior, AbilityBehavior)
|
|
14
|
+
function InstantImpactAbilityBehavior.prototype.onCastingStart(self, caster)
|
|
15
|
+
local manaCost = self:resolveCurrentAbilityDependentValue(MANA_COST_ABILITY_INTEGER_LEVEL_FIELD)
|
|
16
|
+
local cooldown = self:resolveCurrentAbilityDependentValue(COOLDOWN_ABILITY_FLOAT_LEVEL_FIELD)
|
|
17
|
+
caster.mana = caster.mana - manaCost
|
|
18
|
+
if cooldown == 0 then
|
|
19
|
+
caster:interruptCast(self.ability.typeId)
|
|
20
|
+
else
|
|
21
|
+
caster:startAbilityCooldown(self.ability.typeId, cooldown)
|
|
22
|
+
end
|
|
23
|
+
AbilityBehavior:forAll(self.ability, "onImpact", caster)
|
|
24
|
+
end
|
|
25
|
+
return ____exports
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/** @noSelfInFile */
|
|
2
|
+
import { Behavior } from "../behavior";
|
|
3
|
+
import { Unit } from "../unit";
|
|
4
|
+
import { Ability } from "../internal/ability";
|
|
5
|
+
import { AbilityTypeId } from "../object-data/entry/ability-type";
|
|
6
|
+
import { Widget } from "../../core/types/widget";
|
|
7
|
+
import { Item } from "../internal/item";
|
|
8
|
+
import { Destructable } from "../../core/types/destructable";
|
|
9
|
+
import { EffectParameters } from "../../core/types/effect";
|
|
10
|
+
import { AbilityDependentValue } from "../object-field/ability";
|
|
11
|
+
export type AbilityBehaviorConstructor<Args extends any[]> = new (ability: Ability, ...args: Args) => AbilityBehavior;
|
|
12
|
+
export declare abstract class AbilityBehavior<PeriodicActionParameters extends any[] = any[]> extends Behavior<Ability, PeriodicActionParameters> {
|
|
13
|
+
constructor(ability: Ability);
|
|
14
|
+
get ability(): Ability;
|
|
15
|
+
protected resolveCurrentAbilityDependentValue<T extends boolean | number | string>(value: AbilityDependentValue<T>): T;
|
|
16
|
+
protected flashAreaEffect(x: number, y: number, ...parametersOrDuration: [parameters?: EffectParameters] | [duration?: number, parameters?: EffectParameters]): void;
|
|
17
|
+
protected flashEffect(x: number, y: number, ...parametersOrDuration: [parameters?: EffectParameters] | [duration?: number, parameters?: EffectParameters]): void;
|
|
18
|
+
protected flashSpecialEffect(...args: [...pointOrWidget: [x: number, y: number] | [widget: Widget], duration?: number]): void;
|
|
19
|
+
onUnitGainAbility(_unit: Unit): void;
|
|
20
|
+
onUnitLoseAbility(_unit: Unit): void;
|
|
21
|
+
onCastingStart(caster: Unit): void;
|
|
22
|
+
onCastingFinish(caster: Unit): void;
|
|
23
|
+
onChannelingStart(caster: Unit): void;
|
|
24
|
+
onWidgetTargetChannelingStart(caster: Unit, target: Widget): void;
|
|
25
|
+
onUnitTargetChannelingStart(caster: Unit, target: Unit): void;
|
|
26
|
+
onItemTargetChannelingStart(caster: Unit, target: Item): void;
|
|
27
|
+
onDestructibleTargetChannelingStart(caster: Unit, target: Destructable): void;
|
|
28
|
+
onPointTargetChannelingStart(caster: Unit, x: number, y: number): void;
|
|
29
|
+
onNoTargetChannelingStart(caster: Unit): void;
|
|
30
|
+
onImpact(caster: Unit): void;
|
|
31
|
+
onWidgetTargetImpact(caster: Unit, target: Widget): void;
|
|
32
|
+
onUnitTargetImpact(caster: Unit, target: Unit): void;
|
|
33
|
+
onItemTargetImpact(caster: Unit, target: Item): void;
|
|
34
|
+
onDestructibleTargetImpact(caster: Unit, target: Destructable): void;
|
|
35
|
+
onPointTargetImpact(caster: Unit, x: number, y: number): void;
|
|
36
|
+
onNoTargetImpact(caster: Unit): void;
|
|
37
|
+
onChannelingFinish(caster: Unit): void;
|
|
38
|
+
onStop(caster: Unit): void;
|
|
39
|
+
static bindAbilityType<Args extends any[]>(this: AbilityBehaviorConstructor<Args>, abilityTypeId: AbilityTypeId, ...args: Args): void;
|
|
40
|
+
}
|
|
@@ -0,0 +1,175 @@
|
|
|
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 __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
|
|
6
|
+
local ____exports = {}
|
|
7
|
+
local ____behavior = require("engine.behavior")
|
|
8
|
+
local Behavior = ____behavior.Behavior
|
|
9
|
+
local ____unit = require("engine.unit")
|
|
10
|
+
local Unit = ____unit.Unit
|
|
11
|
+
local ____ability = require("engine.internal.ability")
|
|
12
|
+
local Ability = ____ability.Ability
|
|
13
|
+
local ____effect = require("core.types.effect")
|
|
14
|
+
local Effect = ____effect.Effect
|
|
15
|
+
local ____ability = require("engine.standard.fields.ability")
|
|
16
|
+
local AREA_EFFECT_MODEL_PATHS_ABILITY_STRING_ARRAY_FIELD = ____ability.AREA_EFFECT_MODEL_PATHS_ABILITY_STRING_ARRAY_FIELD
|
|
17
|
+
local EFFECT_MODEL_PATHS_ABILITY_STRING_ARRAY_FIELD = ____ability.EFFECT_MODEL_PATHS_ABILITY_STRING_ARRAY_FIELD
|
|
18
|
+
local SPECIAL_EFFECT_ATTACHMENT_POINT_STRING_FIELD = ____ability.SPECIAL_EFFECT_ATTACHMENT_POINT_STRING_FIELD
|
|
19
|
+
local SPECIAL_EFFECT_MODEL_PATHS_ABILITY_STRING_ARRAY_FIELD = ____ability.SPECIAL_EFFECT_MODEL_PATHS_ABILITY_STRING_ARRAY_FIELD
|
|
20
|
+
local ____ability = require("engine.object-field.ability")
|
|
21
|
+
local resolveCurrentAbilityDependentValue = ____ability.resolveCurrentAbilityDependentValue
|
|
22
|
+
local ____timer = require("core.types.timer")
|
|
23
|
+
local Timer = ____timer.Timer
|
|
24
|
+
local createBehaviorFunctionsByAbilityTypeId = {}
|
|
25
|
+
____exports.AbilityBehavior = __TS__Class()
|
|
26
|
+
local AbilityBehavior = ____exports.AbilityBehavior
|
|
27
|
+
AbilityBehavior.name = "AbilityBehavior"
|
|
28
|
+
__TS__ClassExtends(AbilityBehavior, Behavior)
|
|
29
|
+
function AbilityBehavior.prototype.____constructor(self, ability)
|
|
30
|
+
Behavior.prototype.____constructor(self, ability)
|
|
31
|
+
end
|
|
32
|
+
function AbilityBehavior.prototype.resolveCurrentAbilityDependentValue(self, value)
|
|
33
|
+
return resolveCurrentAbilityDependentValue(self.ability, value)
|
|
34
|
+
end
|
|
35
|
+
function AbilityBehavior.prototype.flashAreaEffect(self, x, y, ...)
|
|
36
|
+
Effect:flash(
|
|
37
|
+
AREA_EFFECT_MODEL_PATHS_ABILITY_STRING_ARRAY_FIELD:getValue(self.ability, 0),
|
|
38
|
+
x,
|
|
39
|
+
y,
|
|
40
|
+
...
|
|
41
|
+
)
|
|
42
|
+
end
|
|
43
|
+
function AbilityBehavior.prototype.flashEffect(self, x, y, ...)
|
|
44
|
+
Effect:flash(
|
|
45
|
+
EFFECT_MODEL_PATHS_ABILITY_STRING_ARRAY_FIELD:getValue(self.ability, 0),
|
|
46
|
+
x,
|
|
47
|
+
y,
|
|
48
|
+
...
|
|
49
|
+
)
|
|
50
|
+
end
|
|
51
|
+
function AbilityBehavior.prototype.flashSpecialEffect(self, xOrWidget, yOrDuration, duration)
|
|
52
|
+
if type(xOrWidget) == "number" then
|
|
53
|
+
Effect:flash(
|
|
54
|
+
SPECIAL_EFFECT_MODEL_PATHS_ABILITY_STRING_ARRAY_FIELD:getValue(self.ability, 0),
|
|
55
|
+
xOrWidget,
|
|
56
|
+
yOrDuration,
|
|
57
|
+
duration
|
|
58
|
+
)
|
|
59
|
+
else
|
|
60
|
+
Effect:flash(
|
|
61
|
+
SPECIAL_EFFECT_MODEL_PATHS_ABILITY_STRING_ARRAY_FIELD:getValue(self.ability, 0),
|
|
62
|
+
xOrWidget,
|
|
63
|
+
SPECIAL_EFFECT_ATTACHMENT_POINT_STRING_FIELD:getValue(self.ability),
|
|
64
|
+
yOrDuration
|
|
65
|
+
)
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
function AbilityBehavior.prototype.onUnitGainAbility(self, _unit)
|
|
69
|
+
end
|
|
70
|
+
function AbilityBehavior.prototype.onUnitLoseAbility(self, _unit)
|
|
71
|
+
end
|
|
72
|
+
function AbilityBehavior.prototype.onCastingStart(self, caster)
|
|
73
|
+
end
|
|
74
|
+
function AbilityBehavior.prototype.onCastingFinish(self, caster)
|
|
75
|
+
end
|
|
76
|
+
function AbilityBehavior.prototype.onChannelingStart(self, caster)
|
|
77
|
+
end
|
|
78
|
+
function AbilityBehavior.prototype.onWidgetTargetChannelingStart(self, caster, target)
|
|
79
|
+
end
|
|
80
|
+
function AbilityBehavior.prototype.onUnitTargetChannelingStart(self, caster, target)
|
|
81
|
+
end
|
|
82
|
+
function AbilityBehavior.prototype.onItemTargetChannelingStart(self, caster, target)
|
|
83
|
+
end
|
|
84
|
+
function AbilityBehavior.prototype.onDestructibleTargetChannelingStart(self, caster, target)
|
|
85
|
+
end
|
|
86
|
+
function AbilityBehavior.prototype.onPointTargetChannelingStart(self, caster, x, y)
|
|
87
|
+
end
|
|
88
|
+
function AbilityBehavior.prototype.onNoTargetChannelingStart(self, caster)
|
|
89
|
+
end
|
|
90
|
+
function AbilityBehavior.prototype.onImpact(self, caster)
|
|
91
|
+
end
|
|
92
|
+
function AbilityBehavior.prototype.onWidgetTargetImpact(self, caster, target)
|
|
93
|
+
end
|
|
94
|
+
function AbilityBehavior.prototype.onUnitTargetImpact(self, caster, target)
|
|
95
|
+
end
|
|
96
|
+
function AbilityBehavior.prototype.onItemTargetImpact(self, caster, target)
|
|
97
|
+
end
|
|
98
|
+
function AbilityBehavior.prototype.onDestructibleTargetImpact(self, caster, target)
|
|
99
|
+
end
|
|
100
|
+
function AbilityBehavior.prototype.onPointTargetImpact(self, caster, x, y)
|
|
101
|
+
end
|
|
102
|
+
function AbilityBehavior.prototype.onNoTargetImpact(self, caster)
|
|
103
|
+
end
|
|
104
|
+
function AbilityBehavior.prototype.onChannelingFinish(self, caster)
|
|
105
|
+
end
|
|
106
|
+
function AbilityBehavior.prototype.onStop(self, caster)
|
|
107
|
+
end
|
|
108
|
+
function AbilityBehavior.bindAbilityType(self, abilityTypeId, ...)
|
|
109
|
+
local args = {...}
|
|
110
|
+
local createBehaviorFunctions = createBehaviorFunctionsByAbilityTypeId[abilityTypeId]
|
|
111
|
+
if createBehaviorFunctions == nil then
|
|
112
|
+
createBehaviorFunctions = {}
|
|
113
|
+
createBehaviorFunctionsByAbilityTypeId[abilityTypeId] = createBehaviorFunctions
|
|
114
|
+
end
|
|
115
|
+
createBehaviorFunctions[#createBehaviorFunctions + 1] = function(ability)
|
|
116
|
+
return __TS__New(
|
|
117
|
+
self,
|
|
118
|
+
ability,
|
|
119
|
+
table.unpack(args)
|
|
120
|
+
)
|
|
121
|
+
end
|
|
122
|
+
end
|
|
123
|
+
__TS__SetDescriptor(
|
|
124
|
+
AbilityBehavior.prototype,
|
|
125
|
+
"ability",
|
|
126
|
+
{get = function(self)
|
|
127
|
+
return self.object
|
|
128
|
+
end},
|
|
129
|
+
true
|
|
130
|
+
);
|
|
131
|
+
(function(self)
|
|
132
|
+
local function createUnitEventListener(key)
|
|
133
|
+
return function(unit, ability, ...)
|
|
134
|
+
____exports.AbilityBehavior:forAll(ability, key, unit, ...)
|
|
135
|
+
end
|
|
136
|
+
end
|
|
137
|
+
local function createZeroTimerUnitEventListener(key)
|
|
138
|
+
local unitEventListener = createUnitEventListener(key)
|
|
139
|
+
return function(unit, ability, ...)
|
|
140
|
+
Timer:run(unitEventListener, unit, ability, ...)
|
|
141
|
+
end
|
|
142
|
+
end
|
|
143
|
+
Unit.abilityGainedEvent:addListener(createUnitEventListener("onUnitGainAbility"))
|
|
144
|
+
Unit.abilityLostEvent:addListener(createUnitEventListener("onUnitLoseAbility"))
|
|
145
|
+
Unit.abilityCastingStartEvent:addListener(createUnitEventListener("onCastingStart"))
|
|
146
|
+
Unit.abilityCastingFinishEvent:addListener(createUnitEventListener("onCastingFinish"))
|
|
147
|
+
Unit.abilityChannelingStartEvent:addListener(createUnitEventListener("onChannelingStart"))
|
|
148
|
+
Unit.abilityWidgetTargetChannelingStartEvent:addListener(createUnitEventListener("onWidgetTargetChannelingStart"))
|
|
149
|
+
Unit.abilityUnitTargetChannelingStartEvent:addListener(createUnitEventListener("onUnitTargetChannelingStart"))
|
|
150
|
+
Unit.abilityItemTargetChannelingStartEvent:addListener(createUnitEventListener("onItemTargetChannelingStart"))
|
|
151
|
+
Unit.abilityDestructibleTargetChannelingStartEvent:addListener(createUnitEventListener("onDestructibleTargetChannelingStart"))
|
|
152
|
+
Unit.abilityPointTargetChannelingStartEvent:addListener(createUnitEventListener("onPointTargetChannelingStart"))
|
|
153
|
+
Unit.abilityNoTargetChannelingStartEvent:addListener(createUnitEventListener("onNoTargetChannelingStart"))
|
|
154
|
+
Unit.abilityChannelingStartEvent:addListener(createZeroTimerUnitEventListener("onImpact"))
|
|
155
|
+
Unit.abilityWidgetTargetChannelingStartEvent:addListener(createZeroTimerUnitEventListener("onWidgetTargetImpact"))
|
|
156
|
+
Unit.abilityUnitTargetChannelingStartEvent:addListener(createZeroTimerUnitEventListener("onUnitTargetImpact"))
|
|
157
|
+
Unit.abilityItemTargetChannelingStartEvent:addListener(createZeroTimerUnitEventListener("onItemTargetImpact"))
|
|
158
|
+
Unit.abilityDestructibleTargetChannelingStartEvent:addListener(createZeroTimerUnitEventListener("onDestructibleTargetImpact"))
|
|
159
|
+
Unit.abilityPointTargetChannelingStartEvent:addListener(createZeroTimerUnitEventListener("onPointTargetImpact"))
|
|
160
|
+
Unit.abilityNoTargetChannelingStartEvent:addListener(createZeroTimerUnitEventListener("onNoTargetImpact"))
|
|
161
|
+
Unit.abilityChannelingFinishEvent:addListener(createUnitEventListener("onChannelingFinish"))
|
|
162
|
+
Unit.abilityStopEvent:addListener(createUnitEventListener("onStop"))
|
|
163
|
+
end)(AbilityBehavior)
|
|
164
|
+
Ability.onCreate:addListener(function(ability)
|
|
165
|
+
local createBehaviorFunctions = createBehaviorFunctionsByAbilityTypeId[ability.typeId]
|
|
166
|
+
if createBehaviorFunctions ~= nil then
|
|
167
|
+
for ____, createBehavior in ipairs(createBehaviorFunctions) do
|
|
168
|
+
createBehavior(ability)
|
|
169
|
+
end
|
|
170
|
+
end
|
|
171
|
+
end)
|
|
172
|
+
Ability.destroyEvent:addListener(function(ability)
|
|
173
|
+
____exports.AbilityBehavior:forAll(ability, "destroy")
|
|
174
|
+
end)
|
|
175
|
+
return ____exports
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/// <reference types="@typescript-to-lua/language-extensions" />
|
|
2
|
+
/** @noSelfInFile */
|
|
3
|
+
import { UnitBehavior } from "../unit";
|
|
4
|
+
import { Unit } from "../../unit";
|
|
5
|
+
import { BuffTypeId } from "../../object-data/entry/buff-type";
|
|
6
|
+
import { TextTagPreset } from "../../text-tag";
|
|
7
|
+
import { Destructor } from "../../../destroyable";
|
|
8
|
+
export type StunImmunityUnitBehaviourParameters = {
|
|
9
|
+
buffTypeIds?: LuaSet<BuffTypeId>;
|
|
10
|
+
textTagPreset?: TextTagPreset;
|
|
11
|
+
textTagText?: string;
|
|
12
|
+
};
|
|
13
|
+
export declare class StunImmunityUnitBehavior extends UnitBehavior {
|
|
14
|
+
private readonly parameters;
|
|
15
|
+
static defaultParameters: StunImmunityUnitBehaviourParameters;
|
|
16
|
+
constructor(unit: Unit, parameters?: StunImmunityUnitBehaviourParameters);
|
|
17
|
+
protected onDestroy(): Destructor;
|
|
18
|
+
private onBuffsCheck;
|
|
19
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
local ____lualib = require("lualib_bundle")
|
|
2
|
+
local __TS__ArrayFlat = ____lualib.__TS__ArrayFlat
|
|
3
|
+
local __TS__Class = ____lualib.__TS__Class
|
|
4
|
+
local __TS__ClassExtends = ____lualib.__TS__ClassExtends
|
|
5
|
+
local ____exports = {}
|
|
6
|
+
local ____unit = require("engine.behaviour.unit")
|
|
7
|
+
local UnitBehavior = ____unit.UnitBehavior
|
|
8
|
+
local ____ability_2Dtype = require("engine.object-data.entry.ability-type")
|
|
9
|
+
local AbilityType = ____ability_2Dtype.AbilityType
|
|
10
|
+
local ____arrays = require("utility.arrays")
|
|
11
|
+
local flatMapToLuaSet = ____arrays.flatMapToLuaSet
|
|
12
|
+
local map = ____arrays.map
|
|
13
|
+
local ____text_2Dtag = require("engine.text-tag")
|
|
14
|
+
local TextTag = ____text_2Dtag.TextTag
|
|
15
|
+
local DEFAULT_BUFF_TYPE_IDS = postcompile(function()
|
|
16
|
+
return flatMapToLuaSet(
|
|
17
|
+
AbilityType:getAllByBaseIds(map({
|
|
18
|
+
"Aslo",
|
|
19
|
+
"AHtc",
|
|
20
|
+
"Aens",
|
|
21
|
+
"Aprg",
|
|
22
|
+
"Apg2",
|
|
23
|
+
"AOeq",
|
|
24
|
+
"SNeq",
|
|
25
|
+
"Aweb",
|
|
26
|
+
"Afra",
|
|
27
|
+
"Afrb",
|
|
28
|
+
"Afrc",
|
|
29
|
+
"Afr2",
|
|
30
|
+
"Acri",
|
|
31
|
+
"Scri",
|
|
32
|
+
"AUfn",
|
|
33
|
+
"Aspo",
|
|
34
|
+
"AEer",
|
|
35
|
+
"ACwb"
|
|
36
|
+
}, fourCC)),
|
|
37
|
+
function(abilityType) return __TS__ArrayFlat(abilityType.buffTypeIds) end
|
|
38
|
+
)
|
|
39
|
+
end)
|
|
40
|
+
____exports.StunImmunityUnitBehavior = __TS__Class()
|
|
41
|
+
local StunImmunityUnitBehavior = ____exports.StunImmunityUnitBehavior
|
|
42
|
+
StunImmunityUnitBehavior.name = "StunImmunityUnitBehavior"
|
|
43
|
+
__TS__ClassExtends(StunImmunityUnitBehavior, UnitBehavior)
|
|
44
|
+
function StunImmunityUnitBehavior.prototype.____constructor(self, unit, parameters)
|
|
45
|
+
if parameters == nil then
|
|
46
|
+
parameters = ____exports.StunImmunityUnitBehavior.defaultParameters
|
|
47
|
+
end
|
|
48
|
+
UnitBehavior.prototype.____constructor(self, unit)
|
|
49
|
+
self.parameters = parameters
|
|
50
|
+
unit:decrementStunCounter()
|
|
51
|
+
self:onBuffsCheck()
|
|
52
|
+
end
|
|
53
|
+
function StunImmunityUnitBehavior.prototype.onDestroy(self)
|
|
54
|
+
self.unit:incrementStunCounter()
|
|
55
|
+
return UnitBehavior.prototype.onDestroy(self)
|
|
56
|
+
end
|
|
57
|
+
function StunImmunityUnitBehavior.prototype.onBuffsCheck(self)
|
|
58
|
+
local hasRemovedBuffs = false
|
|
59
|
+
for buffTypeId in pairs(self.parameters.buffTypeIds or DEFAULT_BUFF_TYPE_IDS) do
|
|
60
|
+
hasRemovedBuffs = hasRemovedBuffs or self.unit:removeBuff(buffTypeId)
|
|
61
|
+
end
|
|
62
|
+
if hasRemovedBuffs and self.parameters.textTagText ~= nil then
|
|
63
|
+
TextTag:flash(TextTag.MISS, self.parameters.textTagText, self.unit.x, self.unit.y)
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
StunImmunityUnitBehavior.defaultParameters = {buffTypeIds = DEFAULT_BUFF_TYPE_IDS, textTagPreset = TextTag.MISS, textTagText = nil}
|
|
67
|
+
return ____exports
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** @noSelfInFile */
|
|
2
|
+
import { Behavior } from "../behavior";
|
|
3
|
+
import { Ability } from "../internal/ability";
|
|
4
|
+
import { DamageEvent, DamagingEvent, Unit } from "../internal/unit";
|
|
5
|
+
import "../internal/unit-missile-launch";
|
|
6
|
+
export type UnitBehaviorConstructor<Args extends any[]> = new (unit: Unit, ...args: Args) => UnitBehavior;
|
|
7
|
+
export declare abstract class UnitBehavior<PeriodicActionParameters extends any[] = any[]> extends Behavior<Unit, PeriodicActionParameters> {
|
|
8
|
+
constructor(unit: Unit);
|
|
9
|
+
get unit(): Unit;
|
|
10
|
+
onAutoAttackStart(target: Unit): void;
|
|
11
|
+
onAutoAttackFinish(target: Unit): void;
|
|
12
|
+
onDamageDealing(target: Unit, event: DamagingEvent): void;
|
|
13
|
+
onDamageDealt(target: Unit, event: DamageEvent): void;
|
|
14
|
+
onDamageReceiving(source: Unit | undefined, event: DamagingEvent): void;
|
|
15
|
+
onDamageReceived(source: Unit | undefined, event: DamageEvent): void;
|
|
16
|
+
protected onAbilityGained(ability: Ability): void;
|
|
17
|
+
protected onAbilityLost(ability: Ability): void;
|
|
18
|
+
onKill(target: Unit): void;
|
|
19
|
+
onDeath(source: Unit | undefined): void;
|
|
20
|
+
}
|
|
@@ -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 __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
|
|
5
|
+
local ____exports = {}
|
|
6
|
+
local ____behavior = require("engine.behavior")
|
|
7
|
+
local Behavior = ____behavior.Behavior
|
|
8
|
+
local ____unit = require("engine.internal.unit")
|
|
9
|
+
local Unit = ____unit.Unit
|
|
10
|
+
require("engine.internal.unit-missile-launch")
|
|
11
|
+
____exports.UnitBehavior = __TS__Class()
|
|
12
|
+
local UnitBehavior = ____exports.UnitBehavior
|
|
13
|
+
UnitBehavior.name = "UnitBehavior"
|
|
14
|
+
__TS__ClassExtends(UnitBehavior, Behavior)
|
|
15
|
+
function UnitBehavior.prototype.____constructor(self, unit)
|
|
16
|
+
Behavior.prototype.____constructor(self, unit)
|
|
17
|
+
end
|
|
18
|
+
function UnitBehavior.prototype.onAutoAttackStart(self, target)
|
|
19
|
+
end
|
|
20
|
+
function UnitBehavior.prototype.onAutoAttackFinish(self, target)
|
|
21
|
+
end
|
|
22
|
+
function UnitBehavior.prototype.onDamageDealing(self, target, event)
|
|
23
|
+
end
|
|
24
|
+
function UnitBehavior.prototype.onDamageDealt(self, target, event)
|
|
25
|
+
end
|
|
26
|
+
function UnitBehavior.prototype.onDamageReceiving(self, source, event)
|
|
27
|
+
end
|
|
28
|
+
function UnitBehavior.prototype.onDamageReceived(self, source, event)
|
|
29
|
+
end
|
|
30
|
+
function UnitBehavior.prototype.onAbilityGained(self, ability)
|
|
31
|
+
end
|
|
32
|
+
function UnitBehavior.prototype.onAbilityLost(self, ability)
|
|
33
|
+
end
|
|
34
|
+
function UnitBehavior.prototype.onKill(self, target)
|
|
35
|
+
end
|
|
36
|
+
function UnitBehavior.prototype.onDeath(self, source)
|
|
37
|
+
end
|
|
38
|
+
__TS__SetDescriptor(
|
|
39
|
+
UnitBehavior.prototype,
|
|
40
|
+
"unit",
|
|
41
|
+
{get = function(self)
|
|
42
|
+
return self.object
|
|
43
|
+
end},
|
|
44
|
+
true
|
|
45
|
+
);
|
|
46
|
+
(function(self)
|
|
47
|
+
Unit.autoAttackStartEvent:addListener(function(source, target)
|
|
48
|
+
____exports.UnitBehavior:forAll(source, "onAutoAttackStart", target)
|
|
49
|
+
end)
|
|
50
|
+
Unit.autoAttackFinishEvent:addListener(function(source, target)
|
|
51
|
+
____exports.UnitBehavior:forAll(source, "onAutoAttackFinish", target)
|
|
52
|
+
end)
|
|
53
|
+
Unit.onDamaging:addListener(function(source, target, event)
|
|
54
|
+
if source ~= nil then
|
|
55
|
+
____exports.UnitBehavior:forAll(source, "onDamageDealing", target, event)
|
|
56
|
+
end
|
|
57
|
+
____exports.UnitBehavior:forAll(target, "onDamageReceiving", source, event)
|
|
58
|
+
end)
|
|
59
|
+
Unit.onDamage:addListener(function(source, target, event)
|
|
60
|
+
if source ~= nil then
|
|
61
|
+
____exports.UnitBehavior:forAll(source, "onDamageDealt", target, event)
|
|
62
|
+
end
|
|
63
|
+
____exports.UnitBehavior:forAll(target, "onDamageReceived", source, event)
|
|
64
|
+
end)
|
|
65
|
+
Unit.deathEvent:addListener(function(target, source)
|
|
66
|
+
if source ~= nil then
|
|
67
|
+
____exports.UnitBehavior:forAll(source, "onKill", target)
|
|
68
|
+
end
|
|
69
|
+
____exports.UnitBehavior:forAll(target, "onDeath", source)
|
|
70
|
+
end)
|
|
71
|
+
end)(UnitBehavior)
|
|
72
|
+
Unit.destroyEvent:addListener(function(unit)
|
|
73
|
+
____exports.UnitBehavior:forAll(unit, "destroy")
|
|
74
|
+
end)
|
|
75
|
+
return ____exports
|