warscript 0.0.1-dev.2af030d → 0.0.1-dev.2b3f95e
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/attributes.d.ts +6 -1
- package/attributes.lua +17 -1
- package/binaryreader.d.ts +1 -0
- package/binaryreader.lua +3 -0
- package/config.d.ts +5 -0
- package/config.lua +10 -0
- package/core/dummy.lua +4 -2
- package/core/types/effect.d.ts +24 -6
- package/core/types/effect.lua +169 -107
- package/core/types/frame.d.ts +29 -3
- package/core/types/frame.lua +222 -52
- package/core/types/group.d.ts +0 -1
- package/core/types/handle.lua +9 -9
- package/core/types/image.d.ts +0 -1
- package/core/types/item.d.ts +1 -0
- package/core/types/item.lua +1 -0
- package/core/types/missile.d.ts +2 -2
- package/core/types/missile.lua +14 -13
- package/core/types/player.d.ts +18 -1
- package/core/types/player.lua +76 -26
- package/core/types/playerCamera.d.ts +2 -0
- package/core/types/playerCamera.lua +123 -5
- package/core/types/playerColor.lua +4 -3
- package/core/types/sound.d.ts +18 -25
- package/core/types/sound.lua +113 -33
- package/core/types/tileCell.d.ts +18 -3
- package/core/types/tileCell.lua +108 -0
- package/core/types/timer.d.ts +9 -8
- package/core/types/timer.lua +45 -23
- package/core/types/unit.d.ts +5 -0
- package/core/types/unit.lua +13 -0
- package/core/util.d.ts +3 -1
- package/core/util.lua +127 -4
- package/decl/index.d.ts +1 -0
- package/decl/native.d.ts +1719 -964
- package/destroyable.d.ts +1 -0
- package/destroyable.lua +9 -0
- package/engine/ability-type-extended-tooltip.d.ts +8 -0
- package/engine/ability-type-extended-tooltip.lua +44 -0
- package/engine/ability.d.ts +1 -1
- package/engine/behavior.d.ts +24 -11
- package/engine/behavior.lua +233 -73
- package/engine/behaviour/ability/always-enabled.d.ts +7 -0
- package/engine/behaviour/ability/always-enabled.lua +31 -0
- package/engine/behaviour/ability/apply-buff.d.ts +8 -5
- package/engine/behaviour/ability/apply-buff.lua +36 -4
- package/engine/behaviour/ability/apply-unit-behavior.d.ts +6 -1
- package/engine/behaviour/ability/apply-unit-behavior.lua +6 -0
- package/engine/behaviour/ability/damage.d.ts +44 -11
- package/engine/behaviour/ability/damage.lua +89 -39
- package/engine/behaviour/ability/emulate-impact.d.ts +20 -0
- package/engine/behaviour/ability/emulate-impact.lua +117 -0
- package/engine/behaviour/ability/heal.d.ts +33 -6
- package/engine/behaviour/ability/heal.lua +89 -10
- package/engine/behaviour/ability/instant-impact.d.ts +14 -3
- package/engine/behaviour/ability/instant-impact.lua +20 -16
- package/engine/behaviour/ability/on-command-impact.d.ts +9 -0
- package/engine/behaviour/ability/on-command-impact.lua +26 -0
- package/engine/behaviour/ability/remove-buffs.d.ts +25 -0
- package/engine/behaviour/ability/remove-buffs.lua +49 -0
- package/engine/behaviour/ability/restore-mana.d.ts +15 -0
- package/engine/behaviour/ability/restore-mana.lua +29 -0
- package/engine/behaviour/ability.d.ts +43 -7
- package/engine/behaviour/ability.lua +264 -27
- package/engine/behaviour/unit/stun-immunity.d.ts +12 -7
- package/engine/behaviour/unit/stun-immunity.lua +57 -31
- package/engine/behaviour/unit.d.ts +49 -4
- package/engine/behaviour/unit.lua +293 -2
- package/engine/buff.d.ts +189 -59
- package/engine/buff.lua +852 -281
- package/engine/game-map.d.ts +7 -0
- package/engine/game-map.lua +32 -0
- package/engine/index.d.ts +2 -1
- package/engine/internal/ability.d.ts +30 -14
- package/engine/internal/ability.lua +177 -104
- package/engine/internal/item/ability.lua +162 -4
- package/engine/internal/item/fields.d.ts +12 -0
- package/engine/internal/item/fields.lua +33 -0
- package/engine/internal/item/owner-cache.d.ts +5 -0
- package/engine/internal/item/owner-cache.lua +4 -0
- package/engine/internal/item+owner.d.ts +2 -0
- package/engine/internal/item+owner.lua +37 -8
- package/engine/internal/item.d.ts +34 -18
- package/engine/internal/item.lua +308 -102
- package/engine/internal/mechanics/ability-duration.lua +1 -1
- package/engine/internal/mechanics/cast-ability.lua +6 -3
- package/engine/internal/misc/ability-disable-counter.lua +13 -0
- package/engine/internal/misc/damage-metadata-by-target.d.ts +2 -0
- package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
- package/engine/internal/misc/frame-coordinates.d.ts +2 -0
- package/engine/internal/misc/frame-coordinates.lua +21 -0
- package/engine/internal/misc/get-terrain-z.d.ts +2 -0
- package/engine/internal/misc/get-terrain-z.lua +11 -0
- package/engine/internal/misc/player-local-handle.d.ts +2 -0
- package/engine/internal/misc/player-local-handle.lua +5 -0
- package/engine/internal/misc/unit-ability-level-natives.d.ts +2 -0
- package/engine/internal/misc/unit-ability-level-natives.lua +12 -0
- package/engine/internal/object-data/armor-bonus.d.ts +2 -0
- package/engine/internal/object-data/attribute-bonus.lua +2 -2
- package/engine/internal/object-data/auto-attack-speed-increase.d.ts +1 -1
- package/engine/internal/object-data/auto-attack-speed-increase.lua +2 -0
- package/engine/internal/object-data/evasion-probability.d.ts +2 -0
- package/engine/internal/object-data/evasion-probability.lua +16 -0
- package/engine/internal/object-data/health-bonus.d.ts +2 -0
- package/engine/internal/object-data/health-bonus.lua +16 -0
- package/engine/internal/object-data/health-regeneration-rate-increase.d.ts +2 -0
- package/engine/internal/object-data/health-regeneration-rate-increase.lua +48 -0
- package/engine/internal/object-data/mana-bonus.d.ts +2 -0
- package/engine/internal/object-data/mana-bonus.lua +16 -0
- package/engine/internal/object-data/mana-regeneration-rate-increase-factor.d.ts +2 -0
- package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
- package/engine/internal/object-data/returned-melee-damage-factor.d.ts +2 -0
- package/engine/internal/object-data/returned-melee-damage-factor.lua +21 -0
- package/engine/internal/unit/ability.d.ts +45 -1
- package/engine/internal/unit/ability.lua +144 -17
- package/engine/internal/unit/add-item-to-slot-init.d.ts +2 -0
- package/engine/internal/unit/add-item-to-slot-init.lua +12 -0
- package/engine/internal/unit/add-item-to-slot.d.ts +2 -0
- package/engine/internal/unit/add-item-to-slot.lua +93 -0
- package/engine/internal/unit/allowed-targets.d.ts +1 -1
- package/engine/internal/unit/allowed-targets.lua +9 -1
- package/engine/internal/unit/appearance.d.ts +15 -0
- package/engine/internal/unit/appearance.lua +85 -0
- package/engine/internal/unit/attributes.d.ts +17 -0
- package/engine/internal/unit/attributes.lua +46 -0
- package/engine/internal/unit/bonus.d.ts +28 -8
- package/engine/internal/unit/bonus.lua +136 -9
- package/engine/internal/unit/buff.d.ts +2 -2
- package/engine/internal/unit/buff.lua +34 -19
- package/engine/internal/unit/equipment-inventory.d.ts +44 -0
- package/engine/internal/unit/equipment-inventory.lua +233 -0
- package/engine/internal/unit/expiration-timer.lua +1 -1
- package/engine/internal/unit/extended-inventory.d.ts +25 -0
- package/engine/internal/unit/extended-inventory.lua +99 -0
- package/engine/internal/unit/fly-height.d.ts +7 -0
- package/engine/internal/unit/fly-height.lua +20 -0
- package/engine/internal/unit/ignore-events-items.d.ts +2 -0
- package/engine/internal/unit/ignore-events-items.lua +14 -0
- package/engine/internal/unit/interrupts.d.ts +12 -0
- package/engine/internal/unit/interrupts.lua +28 -0
- package/engine/internal/unit/inventory.d.ts +28 -0
- package/engine/internal/unit/inventory.lua +87 -0
- package/engine/internal/unit/item-container.d.ts +25 -0
- package/engine/internal/unit/item-container.lua +11 -0
- package/engine/internal/unit/item-order-events.d.ts +17 -0
- package/engine/internal/unit/item-order-events.lua +67 -0
- package/engine/internal/unit/item-slot.d.ts +27 -0
- package/engine/internal/unit/item-slot.lua +92 -0
- package/engine/internal/unit/main-selected.d.ts +13 -0
- package/engine/internal/unit/main-selected.lua +36 -0
- package/engine/internal/unit/order.d.ts +20 -0
- package/engine/internal/unit/order.lua +136 -0
- package/engine/internal/unit/range-event.d.ts +12 -0
- package/engine/internal/unit/range-event.lua +90 -0
- package/engine/internal/unit/scale.d.ts +7 -0
- package/engine/internal/unit/scale.lua +20 -0
- package/engine/internal/unit/shared-vision-counter.d.ts +18 -0
- package/engine/internal/unit/shared-vision-counter.lua +31 -0
- package/engine/internal/unit+ability.d.ts +2 -1
- package/engine/internal/unit+ability.lua +85 -5
- package/engine/internal/unit+bonus.lua +3 -3
- package/engine/internal/unit+damage.d.ts +12 -38
- package/engine/internal/unit+damage.lua +48 -45
- package/engine/internal/unit+rally.lua +9 -31
- package/engine/internal/unit+spellSteal.lua +1 -2
- package/engine/internal/unit+transport.lua +4 -10
- package/engine/internal/unit-missile-data.lua +96 -68
- package/engine/internal/unit-missile-launch.lua +74 -13
- package/engine/internal/unit.d.ts +67 -35
- package/engine/internal/unit.lua +508 -308
- package/engine/internal/utility.lua +12 -0
- package/engine/lightning.d.ts +12 -5
- package/engine/lightning.lua +52 -18
- package/engine/local-client.d.ts +35 -2
- package/engine/local-client.lua +367 -15
- package/engine/object-data/auxiliary/animation-name.d.ts +1 -0
- package/engine/object-data/auxiliary/animation-name.lua +16 -0
- package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
- package/engine/object-data/auxiliary/armor-type.lua +46 -0
- package/engine/object-data/auxiliary/attachment-preset.d.ts +14 -3
- package/engine/object-data/auxiliary/attachment-preset.lua +11 -3
- package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
- package/engine/object-data/auxiliary/attack-type.lua +42 -0
- package/engine/object-data/auxiliary/combat-classification.d.ts +0 -2
- package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
- package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
- package/engine/object-data/auxiliary/equipment-type.d.ts +12 -0
- package/engine/object-data/auxiliary/equipment-type.lua +26 -0
- package/engine/object-data/auxiliary/health-regeneration-type.d.ts +8 -0
- package/engine/object-data/auxiliary/health-regeneration-type.lua +2 -0
- package/engine/object-data/auxiliary/item-class.d.ts +11 -0
- package/engine/object-data/auxiliary/item-class.lua +2 -0
- package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
- package/engine/object-data/auxiliary/item-tag.lua +2 -0
- package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
- package/engine/object-data/auxiliary/movement-type.lua +22 -0
- package/engine/object-data/auxiliary/order-type.d.ts +939 -0
- package/engine/object-data/auxiliary/order-type.lua +2 -0
- package/engine/object-data/auxiliary/sound-eax.d.ts +10 -0
- package/engine/object-data/auxiliary/sound-eax.lua +2 -0
- package/engine/object-data/auxiliary/sound-preset-name.d.ts +5 -1
- package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
- package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +1 -1
- package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
- package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
- package/engine/object-data/auxiliary/weapon-sound-type.d.ts +20 -14
- package/engine/object-data/auxiliary/weapon-sound-type.lua +58 -0
- package/engine/object-data/auxiliary/weapon-type.d.ts +25 -0
- package/engine/object-data/auxiliary/weapon-type.lua +2 -0
- package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
- package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
- package/engine/object-data/entry/ability-type/armor-bonus.d.ts +8 -0
- package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
- package/engine/object-data/entry/ability-type/aura-of-blight.d.ts +13 -0
- package/engine/object-data/entry/ability-type/aura-of-blight.lua +39 -0
- package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
- package/engine/object-data/entry/ability-type/banshee.lua +13 -0
- package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
- package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
- package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
- package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
- package/engine/object-data/entry/ability-type/barrage.d.ts +12 -0
- package/engine/object-data/entry/ability-type/barrage.lua +52 -0
- package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
- package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
- package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
- package/engine/object-data/entry/ability-type/berserk.lua +13 -0
- package/engine/object-data/entry/ability-type/blank-configurable.d.ts +0 -1
- package/engine/object-data/entry/ability-type/blank-configurable.lua +14 -3
- package/engine/object-data/entry/ability-type/blank-passive-with-cooldown.d.ts +23 -0
- package/engine/object-data/entry/ability-type/blank-passive-with-cooldown.lua +112 -0
- package/engine/object-data/entry/ability-type/blank-passive.d.ts +4 -1
- package/engine/object-data/entry/ability-type/blank-passive.lua +27 -7
- package/engine/object-data/entry/ability-type/breath-of-fire.d.ts +11 -0
- package/engine/object-data/entry/ability-type/breath-of-fire.lua +27 -0
- package/engine/object-data/entry/ability-type/carrion-swarm.d.ts +14 -0
- package/engine/object-data/entry/ability-type/carrion-swarm.lua +65 -0
- package/engine/object-data/entry/ability-type/channel.d.ts +2 -3
- package/engine/object-data/entry/ability-type/channel.lua +3 -3
- package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
- package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
- package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
- package/engine/object-data/entry/ability-type/consecration.lua +52 -0
- package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
- package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
- package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
- package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
- package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
- package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
- package/engine/object-data/entry/ability-type/disease-cloud.lua +2 -2
- package/engine/object-data/entry/ability-type/engineering-upgrade.lua +2 -2
- package/engine/object-data/entry/ability-type/ensnare.d.ts +12 -0
- package/engine/object-data/entry/ability-type/ensnare.lua +52 -0
- package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
- package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
- package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
- package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
- package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
- package/engine/object-data/entry/ability-type/equipment.lua +27 -0
- package/engine/object-data/entry/ability-type/exhume-corpses.d.ts +14 -0
- package/engine/object-data/entry/ability-type/exhume-corpses.lua +40 -0
- package/engine/object-data/entry/ability-type/feral-spirit.lua +2 -2
- package/engine/object-data/entry/ability-type/firebolt.d.ts +7 -0
- package/engine/object-data/entry/ability-type/firebolt.lua +13 -0
- package/engine/object-data/entry/ability-type/flame-strike.d.ts +25 -0
- package/engine/object-data/entry/ability-type/flame-strike.lua +92 -0
- package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
- package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
- package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
- package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
- package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
- package/engine/object-data/entry/ability-type/grit.lua +65 -0
- package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
- package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
- package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
- package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
- package/engine/object-data/entry/ability-type/{armor-increase.d.ts → healing-modifier.d.ts} +4 -3
- package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
- package/engine/object-data/entry/ability-type/healing-ward-aura.d.ts +13 -0
- package/engine/object-data/entry/ability-type/healing-ward-aura.lua +39 -0
- package/engine/object-data/entry/ability-type/health-bonus.d.ts +8 -0
- package/engine/object-data/entry/ability-type/health-bonus.lua +26 -0
- package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
- package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
- package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
- package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
- package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
- package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
- package/engine/object-data/entry/ability-type/item-life-regeneration.d.ts +10 -0
- package/engine/object-data/entry/ability-type/item-life-regeneration.lua +26 -0
- package/engine/object-data/entry/ability-type/life-drain.d.ts +37 -0
- package/engine/object-data/entry/ability-type/life-drain.lua +144 -0
- package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
- package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
- package/engine/object-data/entry/ability-type/mana-bonus.d.ts +8 -0
- package/engine/object-data/entry/ability-type/mana-bonus.lua +26 -0
- package/engine/object-data/entry/ability-type/mana-efficiency.d.ts +12 -0
- package/engine/object-data/entry/ability-type/mana-efficiency.lua +39 -0
- package/engine/object-data/entry/ability-type/mana-regeneration.d.ts +8 -0
- package/engine/object-data/entry/ability-type/mana-regeneration.lua +26 -0
- package/engine/object-data/entry/ability-type/mind-control.d.ts +21 -0
- package/engine/object-data/entry/ability-type/mind-control.lua +78 -0
- package/engine/object-data/entry/ability-type/mine.d.ts +10 -0
- package/engine/object-data/entry/ability-type/mine.lua +39 -0
- package/engine/object-data/entry/ability-type/on-attack-cast-spell.d.ts +21 -0
- package/engine/object-data/entry/ability-type/on-attack-cast-spell.lua +52 -0
- package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.d.ts +19 -0
- package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.lua +65 -0
- package/engine/object-data/entry/ability-type/on-hit-cast-spell.d.ts +15 -0
- package/engine/object-data/entry/ability-type/on-hit-cast-spell.lua +26 -0
- package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.d.ts +6 -0
- package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.lua +12 -0
- package/engine/object-data/entry/ability-type/permanent-invisibility.d.ts +8 -0
- package/engine/object-data/entry/ability-type/permanent-invisibility.lua +26 -0
- package/engine/object-data/entry/ability-type/phase-shift.d.ts +10 -0
- package/engine/object-data/entry/ability-type/phase-shift.lua +39 -0
- package/engine/object-data/entry/ability-type/phoenix-morph.lua +4 -4
- package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
- package/engine/object-data/entry/ability-type/provoke.lua +66 -0
- package/engine/object-data/entry/ability-type/rain-of-fire.d.ts +7 -0
- package/engine/object-data/entry/ability-type/rain-of-fire.lua +13 -0
- package/engine/object-data/entry/ability-type/raise-dead.d.ts +17 -0
- package/engine/object-data/entry/ability-type/raise-dead.lua +78 -0
- package/engine/object-data/entry/ability-type/raise-the-banner.d.ts +9 -0
- package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
- package/engine/object-data/entry/ability-type/reincarnation.d.ts +8 -0
- package/engine/object-data/entry/ability-type/reincarnation.lua +26 -0
- package/engine/object-data/entry/ability-type/resolve.d.ts +12 -0
- package/engine/object-data/entry/ability-type/resolve.lua +39 -0
- package/engine/object-data/entry/ability-type/righteous-fury.d.ts +33 -0
- package/engine/object-data/entry/ability-type/righteous-fury.lua +130 -0
- package/engine/object-data/entry/ability-type/sacred-aura.d.ts +27 -0
- package/engine/object-data/entry/ability-type/sacred-aura.lua +104 -0
- package/engine/object-data/entry/ability-type/shock-wave.d.ts +4 -0
- package/engine/object-data/entry/ability-type/shock-wave.lua +26 -0
- package/engine/object-data/entry/ability-type/slow-poison.d.ts +10 -0
- package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
- package/engine/object-data/entry/ability-type/soul-burn.d.ts +22 -0
- package/engine/object-data/entry/ability-type/soul-burn.lua +79 -0
- package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
- package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
- package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
- package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
- package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
- package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
- package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
- package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
- package/engine/object-data/entry/ability-type/spirit-touch.d.ts +2 -2
- package/engine/object-data/entry/ability-type/spirit-touch.lua +6 -6
- package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
- package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
- package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
- package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
- package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
- package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
- package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
- package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
- package/engine/object-data/entry/ability-type/summon-quilbeast.lua +2 -2
- package/engine/object-data/entry/ability-type/summon-water-elemental.lua +2 -2
- package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
- package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
- package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
- package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
- package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
- package/engine/object-data/entry/ability-type/talents.lua +27 -0
- package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
- package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
- package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
- package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
- package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
- package/engine/object-data/entry/ability-type/warcry.lua +26 -0
- package/engine/object-data/entry/ability-type/web.d.ts +12 -0
- package/engine/object-data/entry/ability-type/web.lua +52 -0
- package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
- package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
- package/engine/object-data/entry/ability-type.d.ts +50 -22
- package/engine/object-data/entry/ability-type.lua +392 -47
- package/engine/object-data/entry/buff-type/applicable.d.ts +0 -1
- package/engine/object-data/entry/buff-type/applicable.lua +131 -139
- package/engine/object-data/entry/buff-type/blank.d.ts +0 -1
- package/engine/object-data/entry/buff-type.d.ts +10 -13
- package/engine/object-data/entry/buff-type.lua +39 -29
- package/engine/object-data/entry/destructible-type.d.ts +32 -3
- package/engine/object-data/entry/destructible-type.lua +181 -0
- package/engine/object-data/entry/item-type/blank.d.ts +0 -1
- package/engine/object-data/entry/item-type.d.ts +32 -4
- package/engine/object-data/entry/item-type.lua +177 -2
- package/engine/object-data/entry/lightning-type.d.ts +6 -9
- package/engine/object-data/entry/lightning-type.lua +1 -1
- package/engine/object-data/entry/sound-preset.d.ts +33 -0
- package/engine/object-data/entry/sound-preset.lua +140 -0
- package/engine/object-data/entry/unit-type.d.ts +81 -7
- package/engine/object-data/entry/unit-type.lua +619 -99
- package/engine/object-data/entry/upgrade/blank.d.ts +0 -1
- package/engine/object-data/entry/upgrade.d.ts +2 -3
- package/engine/object-data/entry/upgrade.lua +4 -4
- package/engine/object-data/entry.d.ts +23 -17
- package/engine/object-data/entry.lua +68 -32
- package/engine/object-data/utility/object-data-entry-id-generator.lua +7 -0
- package/engine/object-field/ability.d.ts +28 -5
- package/engine/object-field/ability.lua +61 -7
- package/engine/object-field/item.d.ts +22 -0
- package/engine/object-field/item.lua +118 -0
- package/engine/object-field/unit.d.ts +72 -3
- package/engine/object-field/unit.lua +268 -7
- package/engine/object-field.d.ts +26 -8
- package/engine/object-field.lua +362 -117
- package/engine/random.d.ts +11 -0
- package/engine/random.lua +30 -0
- package/engine/standard/entries/ability-type.d.ts +3102 -7
- package/engine/standard/entries/ability-type.lua +0 -6
- package/engine/standard/entries/buff-type.d.ts +48 -0
- package/engine/standard/entries/buff-type.lua +46 -0
- package/engine/standard/entries/item-type.d.ts +1299 -0
- package/engine/standard/entries/item-type.lua +2 -0
- package/engine/standard/entries/lightning-type.d.ts +42 -15
- package/engine/standard/entries/lightning-type.lua +0 -14
- package/engine/standard/entries/sound-preset.d.ts +10 -0
- package/engine/standard/entries/sound-preset.lua +10 -0
- package/engine/standard/entries/unit-type.d.ts +23 -0
- package/engine/standard/entries/unit-type.lua +23 -0
- package/engine/standard/fields/ability.d.ts +7 -5
- package/engine/standard/fields/ability.lua +7 -5
- package/engine/standard/fields/item.d.ts +4 -0
- package/engine/standard/fields/item.lua +6 -0
- package/engine/standard/fields/unit.d.ts +12 -0
- package/engine/standard/fields/unit.lua +20 -0
- package/engine/synchronization.d.ts +11 -0
- package/engine/synchronization.lua +77 -0
- package/engine/text-tag.d.ts +48 -2
- package/engine/text-tag.lua +287 -10
- package/engine/unit.d.ts +14 -0
- package/engine/unit.lua +23 -2
- package/event.d.ts +3 -4
- package/event.lua +9 -5
- package/index.d.ts +1 -0
- package/index.lua +1 -0
- package/lualib_bundle.lua +147 -43
- package/math/vec2.d.ts +2 -9
- package/math.d.ts +2 -2
- package/math.lua +14 -0
- package/net/socket.d.ts +7 -1
- package/net/socket.lua +45 -4
- package/network.d.ts +1 -0
- package/network.lua +28 -3
- package/objutil/ability.d.ts +0 -1
- package/objutil/buff.d.ts +0 -1
- package/objutil/buff.lua +13 -12
- package/objutil/object.d.ts +0 -1
- package/objutil/object.lua +1 -1
- package/objutil/unit.d.ts +0 -1
- package/objutil/unit.lua +8 -0
- package/operation.d.ts +8 -1
- package/operation.lua +38 -18
- package/package.json +3 -23
- package/patch-lua.d.ts +0 -0
- package/patch-lua.lua +25 -0
- package/patch-lualib.lua +1 -1
- package/patch-natives.lua +3 -0
- package/property.d.ts +55 -0
- package/property.lua +374 -0
- package/string.d.ts +16 -0
- package/string.lua +5 -0
- package/util/stream.d.ts +0 -1
- package/utility/arrays.d.ts +20 -6
- package/utility/arrays.lua +62 -3
- package/utility/bit-set.d.ts +0 -2
- package/utility/callback-array.d.ts +17 -0
- package/utility/callback-array.lua +61 -0
- package/utility/functions.d.ts +8 -0
- package/utility/functions.lua +13 -0
- package/utility/lazy.d.ts +2 -0
- package/utility/lazy.lua +14 -0
- package/utility/linked-map.d.ts +35 -0
- package/utility/linked-map.lua +107 -0
- package/utility/linked-set.d.ts +16 -4
- package/utility/linked-set.lua +54 -3
- package/utility/lua-maps.d.ts +16 -4
- package/utility/lua-maps.lua +53 -2
- package/utility/lua-sets.d.ts +3 -2
- package/utility/lua-sets.lua +7 -0
- package/utility/random.d.ts +102 -0
- package/utility/random.lua +273 -0
- package/utility/records.lua +20 -1
- package/utility/reflection.lua +11 -7
- package/utility/types.d.ts +4 -0
- package/utility/unordered-map.d.ts +27 -0
- package/utility/unordered-map.lua +99 -0
- package/core/mapbounds.d.ts +0 -8
- package/core/mapbounds.lua +0 -12
- package/core/types/order.d.ts +0 -25
- package/core/types/order.lua +0 -55
- /package/engine/internal/{object-data/armor-increase.d.ts → misc/ability-disable-counter.d.ts} +0 -0
- /package/engine/internal/object-data/{armor-increase.lua → armor-bonus.lua} +0 -0
- /package/engine/object-data/entry/ability-type/{attribute-increase.d.ts → attribute-bonus.d.ts} +0 -0
- /package/engine/object-data/entry/ability-type/{attribute-increase.lua → attribute-bonus.lua} +0 -0
|
@@ -7,26 +7,87 @@ local ____event = require("event")
|
|
|
7
7
|
local Event = ____event.Event
|
|
8
8
|
local ____timer = require("core.types.timer")
|
|
9
9
|
local Timer = ____timer.Timer
|
|
10
|
+
local ____lua_2Dsets = require("utility.lua-sets")
|
|
11
|
+
local luaSetOf = ____lua_2Dsets.luaSetOf
|
|
12
|
+
local ____attributes = require("attributes")
|
|
13
|
+
local attribute = ____attributes.attribute
|
|
14
|
+
local ____linked_2Dset = require("utility.linked-set")
|
|
15
|
+
local LinkedSet = ____linked_2Dset.LinkedSet
|
|
16
|
+
local ____math = require("math")
|
|
17
|
+
local ceil = ____math.ceil
|
|
10
18
|
local autoAttackFinishEvent = __TS__New(Event)
|
|
11
19
|
rawset(Unit, "autoAttackFinishEvent", autoAttackFinishEvent)
|
|
12
|
-
local
|
|
13
|
-
local
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
20
|
+
local units = __TS__New(LinkedSet)
|
|
21
|
+
local targetAttribute = attribute()
|
|
22
|
+
local impactDelayAttribute = attribute()
|
|
23
|
+
local passedTimeAttribute = attribute()
|
|
24
|
+
local instantOrderIds = luaSetOf(
|
|
25
|
+
852086,
|
|
26
|
+
852100,
|
|
27
|
+
852090,
|
|
28
|
+
852177,
|
|
29
|
+
852002,
|
|
30
|
+
852003,
|
|
31
|
+
852004,
|
|
32
|
+
852005,
|
|
33
|
+
852006,
|
|
34
|
+
852007,
|
|
35
|
+
852087,
|
|
36
|
+
852091,
|
|
37
|
+
852178
|
|
38
|
+
)
|
|
39
|
+
---
|
|
40
|
+
-- @internal For use by internal systems only.
|
|
41
|
+
____exports.resetAutoAttackTimer = function(unit)
|
|
42
|
+
if units:remove(unit) then
|
|
43
|
+
unit[targetAttribute] = nil
|
|
44
|
+
unit[impactDelayAttribute] = nil
|
|
45
|
+
unit[passedTimeAttribute] = nil
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
local function reset(unit, orderId)
|
|
49
|
+
if not (instantOrderIds[orderId] ~= nil) then
|
|
50
|
+
____exports.resetAutoAttackTimer(unit)
|
|
18
51
|
end
|
|
19
52
|
end
|
|
20
53
|
Unit.onImmediateOrder:addListener(reset)
|
|
21
54
|
Unit.onPointOrder:addListener(reset)
|
|
22
55
|
Unit.onTargetOrder:addListener(reset)
|
|
23
|
-
local
|
|
24
|
-
|
|
25
|
-
|
|
56
|
+
local timerPeriod = 1 / 64
|
|
57
|
+
local function invokeEvent(unit)
|
|
58
|
+
units:remove(unit)
|
|
59
|
+
local target = unit[targetAttribute]
|
|
60
|
+
unit[targetAttribute] = nil
|
|
61
|
+
unit[impactDelayAttribute] = nil
|
|
62
|
+
unit[passedTimeAttribute] = nil
|
|
63
|
+
Event.invoke(autoAttackFinishEvent, unit, target)
|
|
64
|
+
end
|
|
65
|
+
local function checkUnit(unit)
|
|
66
|
+
local passedTime = unit[passedTimeAttribute]
|
|
67
|
+
if passedTime == nil then
|
|
68
|
+
return
|
|
69
|
+
end
|
|
70
|
+
passedTime = passedTime + timerPeriod
|
|
71
|
+
local impactDelay = unit[impactDelayAttribute]
|
|
72
|
+
if passedTime >= impactDelay and ceil(passedTime / 0.02) >= ceil(impactDelay / 0.02) then
|
|
73
|
+
invokeEvent(unit)
|
|
74
|
+
else
|
|
75
|
+
unit[passedTimeAttribute] = passedTime
|
|
76
|
+
end
|
|
26
77
|
end
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
local timer = Timer:simple(attackPoint, timerCallback, source, target)
|
|
30
|
-
eventTimerByUnit[source] = timer
|
|
78
|
+
Timer.onPeriod[timerPeriod]:addListener(function()
|
|
79
|
+
units:forEach(checkUnit)
|
|
31
80
|
end)
|
|
81
|
+
Unit.autoAttackStartEvent:addListener(
|
|
82
|
+
999999,
|
|
83
|
+
function(source, target)
|
|
84
|
+
if source[targetAttribute] ~= nil then
|
|
85
|
+
invokeEvent(source)
|
|
86
|
+
end
|
|
87
|
+
source[targetAttribute] = target
|
|
88
|
+
source[impactDelayAttribute] = (source:chooseWeapon(target) or source.firstWeapon).impactDelay
|
|
89
|
+
source[passedTimeAttribute] = -timerPeriod
|
|
90
|
+
units:add(source)
|
|
91
|
+
end
|
|
92
|
+
)
|
|
32
93
|
return ____exports
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="@typescript-to-lua/language-extensions" />
|
|
2
1
|
/** @noSelfInFile */
|
|
3
2
|
import { Handle, HandleDestructor } from "../../core/types/handle";
|
|
4
3
|
import { Player } from "../../core/types/player";
|
|
@@ -12,6 +11,12 @@ import { Ability, UnitAbility } from "./ability";
|
|
|
12
11
|
import { Widget } from "../../core/types/widget";
|
|
13
12
|
import type { UnitTypeId } from "../object-data/entry/unit-type";
|
|
14
13
|
import { CombatClassification, CombatClassifications } from "../object-data/auxiliary/combat-classification";
|
|
14
|
+
import { MovementType } from "../object-data/auxiliary/movement-type";
|
|
15
|
+
import { WeaponType } from "../object-data/auxiliary/weapon-type";
|
|
16
|
+
import { WeaponSoundType } from "../object-data/auxiliary/weapon-sound-type";
|
|
17
|
+
import { UnitAttribute } from "../object-data/auxiliary/unit-attribute";
|
|
18
|
+
import { AttackType } from "../object-data/auxiliary/attack-type";
|
|
19
|
+
import { AttributesHolder } from "../../attributes";
|
|
15
20
|
export type UnitClassification = junittype;
|
|
16
21
|
export declare namespace UnitClassification {
|
|
17
22
|
const STRUCTURE: junittype;
|
|
@@ -20,6 +25,7 @@ export declare namespace UnitClassification {
|
|
|
20
25
|
const GROUND: junittype;
|
|
21
26
|
const SUMMONED: junittype;
|
|
22
27
|
const MECHANICAL: junittype;
|
|
28
|
+
const WORKER: junittype;
|
|
23
29
|
const ANCIENT: junittype;
|
|
24
30
|
const SUICIDAL: junittype;
|
|
25
31
|
const TAUREN: junittype;
|
|
@@ -37,14 +43,18 @@ type AbilityDispatcherTable<T extends any[] = []> = {
|
|
|
37
43
|
readonly [id: number]: Event<[Unit, Ability, ...T]>;
|
|
38
44
|
};
|
|
39
45
|
type AbilityEventDispatcher<T extends any[] = []> = Event<[Unit, Ability, ...T]> & AbilityDispatcherTable<T>;
|
|
40
|
-
export interface DamagingEvent {
|
|
46
|
+
export interface DamagingEvent extends AttributesHolder {
|
|
41
47
|
amount: number;
|
|
42
|
-
attackType:
|
|
48
|
+
attackType: AttackType;
|
|
43
49
|
damageType: jdamagetype;
|
|
44
|
-
|
|
50
|
+
weaponSoundType: WeaponSoundType;
|
|
51
|
+
metadata: unknown;
|
|
45
52
|
readonly isAttack: boolean;
|
|
53
|
+
readonly originalAmount: number;
|
|
54
|
+
readonly originalMetadata: unknown;
|
|
55
|
+
preventRetaliation(this: DamagingEvent): void;
|
|
46
56
|
}
|
|
47
|
-
export type DamageEvent = DamagingEvent & {
|
|
57
|
+
export type DamageEvent = Omit<DamagingEvent, "preventRetaliation"> & {
|
|
48
58
|
preventDeath<P extends any[]>(this: DamageEvent, callback: (this: void, ...parameters: P) => any, ...parameters: P): void;
|
|
49
59
|
};
|
|
50
60
|
export type AttackDamageEvent = DamagingEvent & {
|
|
@@ -72,10 +82,18 @@ export declare class UnitWeapon {
|
|
|
72
82
|
readonly unit: Unit;
|
|
73
83
|
readonly index: 0 | 1;
|
|
74
84
|
constructor(unit: Unit, index: 0 | 1);
|
|
85
|
+
get isEnabled(): boolean;
|
|
86
|
+
set isEnabled(isEnabled: boolean);
|
|
75
87
|
get cooldown(): number;
|
|
76
88
|
set cooldown(cooldown: number);
|
|
77
89
|
get damage(): [minimumDamage: number, maximumDamage: number];
|
|
78
90
|
set damage([minimumDamage, maximumDamage]: [number, number]);
|
|
91
|
+
get allowedTargetCombatClassifications(): CombatClassifications;
|
|
92
|
+
set allowedTargetCombatClassifications(allowedTargetCombatClassifications: CombatClassifications);
|
|
93
|
+
get type(): WeaponType;
|
|
94
|
+
set type(type: WeaponType);
|
|
95
|
+
get soundType(): WeaponSoundType;
|
|
96
|
+
set soundType(soundType: WeaponSoundType);
|
|
79
97
|
get damageBase(): number;
|
|
80
98
|
set damageBase(damageBase: number);
|
|
81
99
|
get damageDiceCount(): number;
|
|
@@ -94,20 +112,31 @@ export declare class UnitWeapon {
|
|
|
94
112
|
set missileSpeed(missileSpeed: number);
|
|
95
113
|
}
|
|
96
114
|
declare const enum UnitPropertyKey {
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
115
|
+
SYNC_ID = 100,
|
|
116
|
+
IS_PAUSED = 101,
|
|
117
|
+
STUN_COUNTER = 102,
|
|
118
|
+
FORCE_STUN_COUNTER = 103,
|
|
119
|
+
DELAY_HEALTH_CHECKS_COUNTER = 104,
|
|
120
|
+
DELAY_HEALTH_CHECKS_HEALTH_BONUS = 105,
|
|
121
|
+
PREVENT_DEATH_HEALTH_BONUS = 106,
|
|
122
|
+
IS_TEAM_GLOW_HIDDEN = 107,
|
|
123
|
+
LAST_X = 108,
|
|
124
|
+
LAST_Y = 109
|
|
103
125
|
}
|
|
126
|
+
export type UnitSyncId = number & {
|
|
127
|
+
readonly __unitSyncId: unique symbol;
|
|
128
|
+
};
|
|
104
129
|
export declare class Unit extends Handle<junit> {
|
|
130
|
+
readonly syncId: UnitSyncId;
|
|
105
131
|
private [UnitPropertyKey.IS_PAUSED]?;
|
|
106
132
|
private [UnitPropertyKey.STUN_COUNTER]?;
|
|
133
|
+
private [UnitPropertyKey.FORCE_STUN_COUNTER]?;
|
|
107
134
|
private [UnitPropertyKey.DELAY_HEALTH_CHECKS_COUNTER]?;
|
|
108
135
|
private [UnitPropertyKey.DELAY_HEALTH_CHECKS_HEALTH_BONUS]?;
|
|
109
136
|
private [UnitPropertyKey.PREVENT_DEATH_HEALTH_BONUS]?;
|
|
110
137
|
private [UnitPropertyKey.IS_TEAM_GLOW_HIDDEN]?;
|
|
138
|
+
private [UnitPropertyKey.LAST_X]?;
|
|
139
|
+
private [UnitPropertyKey.LAST_Y]?;
|
|
111
140
|
private _owner?;
|
|
112
141
|
private _timeScale?;
|
|
113
142
|
private events?;
|
|
@@ -116,6 +145,7 @@ export declare class Unit extends Handle<junit> {
|
|
|
116
145
|
private _fields?;
|
|
117
146
|
private getEvent;
|
|
118
147
|
constructor(handle: junit);
|
|
148
|
+
private saveData;
|
|
119
149
|
protected onDestroy(): HandleDestructor;
|
|
120
150
|
addAttackHandler(condition: AttackHandlerCondition, action: AttackHandlerAction): AttackHandler;
|
|
121
151
|
removeAttackHandler(handler: AttackHandler): boolean;
|
|
@@ -128,6 +158,7 @@ export declare class Unit extends Handle<junit> {
|
|
|
128
158
|
get isAlive(): boolean;
|
|
129
159
|
get isDead(): boolean;
|
|
130
160
|
get isIllusion(): boolean;
|
|
161
|
+
get isStunned(): boolean;
|
|
131
162
|
get combatClassifications(): CombatClassifications;
|
|
132
163
|
set combatClassifications(combatClassifications: CombatClassifications);
|
|
133
164
|
hasCombatClassification(combatClassification: CombatClassification): boolean;
|
|
@@ -137,29 +168,26 @@ export declare class Unit extends Handle<junit> {
|
|
|
137
168
|
isVisibleTo(player: Player): boolean;
|
|
138
169
|
isInvisibleTo(player: Player): boolean;
|
|
139
170
|
isInRangeOf(x: number, y: number, range: number): boolean;
|
|
140
|
-
isInRangeOf(
|
|
171
|
+
isInRangeOf(widget: Widget, range: number): boolean;
|
|
141
172
|
isAllyOf(unit: Unit): boolean;
|
|
142
173
|
isEnemyOf(unit: Unit): boolean;
|
|
143
|
-
playAnimation(animation: string, rarity?: jraritycontrol): void;
|
|
144
|
-
|
|
174
|
+
playAnimation(...parameters: [animation: number] | [animation: string, rarity?: jraritycontrol]): void;
|
|
175
|
+
resetAnimation(): void;
|
|
145
176
|
queueAnimation(animation: string): void;
|
|
146
177
|
get weapons(): [UnitWeapon, UnitWeapon];
|
|
147
178
|
get firstWeapon(): UnitWeapon;
|
|
148
179
|
get secondWeapon(): UnitWeapon;
|
|
180
|
+
chooseWeapon(target: Unit): UnitWeapon | undefined;
|
|
149
181
|
get level(): number;
|
|
150
182
|
set level(v: number);
|
|
151
183
|
get xp(): number;
|
|
152
184
|
set xp(v: number);
|
|
153
|
-
get
|
|
154
|
-
set
|
|
185
|
+
get primaryAttribute(): UnitAttribute;
|
|
186
|
+
set primaryAttribute(primaryAttribute: UnitAttribute);
|
|
155
187
|
get strengthBonus(): number;
|
|
156
188
|
get strength(): number;
|
|
157
|
-
get agilityBase(): number;
|
|
158
|
-
set agilityBase(agilityBase: number);
|
|
159
189
|
get agilityBonus(): number;
|
|
160
190
|
get agility(): number;
|
|
161
|
-
get intelligenceBase(): number;
|
|
162
|
-
set intelligenceBase(intelligenceBase: number);
|
|
163
191
|
get intelligenceBonus(): number;
|
|
164
192
|
get intelligence(): number;
|
|
165
193
|
get name(): string;
|
|
@@ -193,8 +221,6 @@ export declare class Unit extends Handle<junit> {
|
|
|
193
221
|
set facing(v: number);
|
|
194
222
|
get speed(): number;
|
|
195
223
|
set speed(v: number);
|
|
196
|
-
get flyHeight(): number;
|
|
197
|
-
set flyHeight(v: number);
|
|
198
224
|
get x(): number;
|
|
199
225
|
set x(v: number);
|
|
200
226
|
get y(): number;
|
|
@@ -218,17 +244,17 @@ export declare class Unit extends Handle<junit> {
|
|
|
218
244
|
get isInvulnerable(): boolean;
|
|
219
245
|
get vertexColor(): Color;
|
|
220
246
|
set vertexColor(v: Color);
|
|
221
|
-
get scale(): number;
|
|
222
|
-
set scale(v: number);
|
|
223
247
|
get timeScale(): number;
|
|
224
248
|
set timeScale(v: number);
|
|
225
249
|
get collisionSize(): number;
|
|
226
250
|
get pathingCollisionRange(): number;
|
|
251
|
+
get movementType(): MovementType;
|
|
252
|
+
set movementType(movementType: MovementType);
|
|
227
253
|
set pathing(v: boolean);
|
|
228
254
|
isSelected(player: Player): boolean;
|
|
229
255
|
explode(): void;
|
|
230
256
|
kill(): void;
|
|
231
|
-
revive(
|
|
257
|
+
revive(x: number, y: number, doEffect?: boolean): void;
|
|
232
258
|
healTarget(target: Widget, amount: number): void;
|
|
233
259
|
useItem(item: Item): boolean;
|
|
234
260
|
issueImmediateOrder(order: number): boolean;
|
|
@@ -241,17 +267,17 @@ export declare class Unit extends Handle<junit> {
|
|
|
241
267
|
dropItemTarget(item: Item, target: Widget): boolean;
|
|
242
268
|
dropItemSlot(item: Item, slot: number): boolean;
|
|
243
269
|
itemInSlot(slot: number): Item | null;
|
|
244
|
-
addAbility(abilityId: number): UnitAbility |
|
|
270
|
+
addAbility(abilityId: number): UnitAbility | undefined;
|
|
245
271
|
makeAbilityPermanent(abilityId: number, permanent: true): boolean;
|
|
246
272
|
setAbilityLevel(abilityId: number, level: number): number;
|
|
247
273
|
getAbilityLevel(abilityId: number): number;
|
|
248
274
|
hasAbility(abilityId: number): boolean;
|
|
249
|
-
|
|
250
|
-
removeAbility(
|
|
275
|
+
getAbility(abilityId: number): UnitAbility | undefined;
|
|
276
|
+
removeAbility(abilityTypeId: number): boolean;
|
|
251
277
|
hideAbility(abilityId: number, flag: boolean): void;
|
|
278
|
+
getAbilityRemainingCooldown(abilityId: number): number;
|
|
252
279
|
startAbilityCooldown(abilityId: number, cooldown: number): void;
|
|
253
280
|
endAbilityCooldown(abilityId: number): void;
|
|
254
|
-
interruptAttack(): void;
|
|
255
281
|
interruptCast(abilityId: number): void;
|
|
256
282
|
getDistanceTo(target: Unit | Vec2): number;
|
|
257
283
|
getCollisionDistanceTo(...target: [Unit] | [targetX: number, targetY: number]): number;
|
|
@@ -265,14 +291,16 @@ export declare class Unit extends Handle<junit> {
|
|
|
265
291
|
unpauseEx(): void;
|
|
266
292
|
incrementStunCounter(): void;
|
|
267
293
|
decrementStunCounter(): void;
|
|
294
|
+
incrementForceStunCounter(): void;
|
|
295
|
+
decrementForceStunCounter(): void;
|
|
268
296
|
set waygateActive(v: boolean);
|
|
269
297
|
get waygateActive(): boolean;
|
|
270
298
|
set waygateDestination(v: Vec2);
|
|
271
299
|
get waygateDestination(): Vec2;
|
|
272
300
|
get abilities(): ReadonlyArray<UnitAbility>;
|
|
273
|
-
get onUnitInRange(): Record<number, Event<[Unit]>>;
|
|
274
301
|
get onManaEqual(): Record<number, Event<[Unit, number]>>;
|
|
275
302
|
get manaEvent(): Record<Operator, Record<number, Event<[Unit]>>>;
|
|
303
|
+
get targetAcquiredEvent(): Event;
|
|
276
304
|
get onSelect(): Event;
|
|
277
305
|
get onDeselect(): Event;
|
|
278
306
|
get onImmediateOrder(): Event<[number]>;
|
|
@@ -287,7 +315,8 @@ export declare class Unit extends Handle<junit> {
|
|
|
287
315
|
static getInRange(x: number, y: number, range: number, predicate?: (unit: Unit) => boolean): Unit[];
|
|
288
316
|
static getInCollisionRange(x: number, y: number, range: number, predicate?: (unit: Unit) => boolean): Unit[];
|
|
289
317
|
static getInSector(pos: Vec2, range: number, offsetAngle: number, centralAngle: number): Unit[];
|
|
290
|
-
static getSelectionOf(player: Player): Unit[];
|
|
318
|
+
static getSelectionOf(player: Player, target?: Unit[]): Unit[];
|
|
319
|
+
static readonly levelChangedEvent: UnitTriggerEvent<[]>;
|
|
291
320
|
static readonly deathEvent: UnitTriggerEvent<[Unit]>;
|
|
292
321
|
static readonly onDecay: UnitTriggerEvent<[]>;
|
|
293
322
|
static readonly onResurrect: InitializingEvent<[Unit], void>;
|
|
@@ -298,7 +327,7 @@ export declare class Unit extends Handle<junit> {
|
|
|
298
327
|
static readonly constructionStartEvent: UnitTriggerEvent<[]>;
|
|
299
328
|
static readonly onUpgradeFinish: UnitTriggerEvent<[]>;
|
|
300
329
|
static readonly onSpellEffect: EventDispatcher<[Unit, number], [Unit]>;
|
|
301
|
-
static readonly onTargetCast: EventDispatcher<[Unit, number,
|
|
330
|
+
static readonly onTargetCast: EventDispatcher<[Unit, number, Destructable | Unit | Item], [Unit, Destructable | Unit | Item]>;
|
|
302
331
|
static readonly onCastPrepare: AbilityEventDispatcher<[]>;
|
|
303
332
|
static readonly onCast: AbilityEventDispatcher<[]>;
|
|
304
333
|
static readonly onPointCastPrepare: AbilityEventDispatcher<[number, number]>;
|
|
@@ -322,9 +351,10 @@ export declare class Unit extends Handle<junit> {
|
|
|
322
351
|
static readonly autoAttackStartEvent: UnitTriggerEvent<[Unit]>;
|
|
323
352
|
static readonly onDamaging: Event<[source: Unit | undefined, target: Unit, event: DamagingEvent]>;
|
|
324
353
|
static readonly onDamage: InitializingEvent<[source: Unit | undefined, target: Unit, event: DamageEvent], jtrigger>;
|
|
325
|
-
static
|
|
326
|
-
static
|
|
327
|
-
static
|
|
354
|
+
static itemDroppedEvent: UnitTriggerEvent<[Item]>;
|
|
355
|
+
static itemPickedUpEvent: UnitTriggerEvent<[Item]>;
|
|
356
|
+
static itemUsedEvent: UnitTriggerEvent<[Item]>;
|
|
357
|
+
static get itemChargesChangedEvent(): Event<[unit: Unit, item: Item]>;
|
|
328
358
|
static get onCreate(): EventDispatcher<[Unit], [Unit]>;
|
|
329
359
|
static get destroyEvent(): EventDispatcher<[Unit], [Unit]>;
|
|
330
360
|
getField(field: junitintegerfield | junitrealfield): number;
|
|
@@ -335,5 +365,7 @@ export declare class Unit extends Handle<junit> {
|
|
|
335
365
|
setField(field: junitbooleanfield, value: boolean): boolean;
|
|
336
366
|
setField(field: junitstringfield, value: string): boolean;
|
|
337
367
|
toString(): string;
|
|
368
|
+
static getBySyncId(syncId: UnitSyncId): Unit | undefined;
|
|
369
|
+
static synchronize: (player: Player, object: Unit | undefined) => Promise<Unit | undefined>;
|
|
338
370
|
}
|
|
339
371
|
export {};
|