warscript 0.0.1-dev.a4deb44 → 0.0.1-dev.a5a2f5e
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 +18 -0
- package/attributes.lua +32 -0
- package/binaryreader.d.ts +1 -0
- package/binaryreader.lua +3 -0
- package/config.d.ts +5 -0
- package/config.lua +10 -0
- package/core/types/effect.d.ts +14 -6
- package/core/types/effect.lua +131 -35
- package/core/types/frame.d.ts +8 -1
- package/core/types/frame.lua +164 -23
- package/core/types/group.d.ts +0 -1
- package/core/types/handle.d.ts +2 -1
- package/core/types/handle.lua +5 -0
- 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 +8 -2
- package/core/types/player.d.ts +17 -1
- package/core/types/player.lua +70 -24
- package/core/types/playerCamera.d.ts +2 -0
- package/core/types/playerCamera.lua +123 -5
- package/core/types/sound.d.ts +17 -24
- package/core/types/sound.lua +100 -25
- package/core/types/tileCell.d.ts +11 -1
- package/core/types/tileCell.lua +97 -0
- package/core/types/timer.d.ts +9 -8
- package/core/types/timer.lua +45 -23
- package/core/types/unit.lua +8 -0
- package/core/util.d.ts +1 -1
- package/core/util.lua +18 -1
- package/decl/index.d.ts +1 -0
- package/decl/native.d.ts +846 -790
- package/destroyable.d.ts +1 -0
- package/destroyable.lua +9 -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 +13 -4
- package/engine/behaviour/ability/apply-unit-behavior.lua +32 -9
- package/engine/behaviour/ability/damage.d.ts +42 -11
- package/engine/behaviour/ability/damage.lua +89 -37
- package/engine/behaviour/ability/emulate-impact.d.ts +6 -0
- package/engine/behaviour/ability/emulate-impact.lua +44 -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 +2 -2
- package/engine/behaviour/ability/instant-impact.lua +4 -15
- package/engine/behaviour/ability/on-command-impact.d.ts +8 -0
- package/engine/behaviour/ability/on-command-impact.lua +25 -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 +35 -7
- package/engine/behaviour/ability.lua +183 -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 +48 -4
- package/engine/behaviour/unit.lua +292 -2
- package/engine/buff.d.ts +160 -53
- package/engine/buff.lua +711 -269
- package/engine/game-map.d.ts +7 -0
- package/engine/game-map.lua +32 -0
- package/engine/internal/ability.d.ts +23 -14
- package/engine/internal/ability.lua +129 -85
- 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.lua +12 -6
- package/engine/internal/item.d.ts +16 -19
- package/engine/internal/item.lua +174 -94
- package/engine/internal/mechanics/ability-duration.d.ts +1 -3
- package/engine/internal/mechanics/ability-duration.lua +3 -1
- package/engine/internal/mechanics/cast-ability.lua +89 -0
- package/engine/internal/misc/ability-disable-counter.d.ts +2 -0
- 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/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/mana-bonus.d.ts +2 -0
- package/engine/internal/object-data/mana-bonus.lua +16 -0
- package/engine/internal/object-data/mana-regeneration-rate-increase-factor.d.ts +2 -0
- package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
- package/engine/internal/unit/ability.d.ts +45 -1
- package/engine/internal/unit/ability.lua +128 -17
- package/engine/internal/unit/add-item-to-slot-init.d.ts +2 -0
- package/engine/internal/unit/add-item-to-slot-init.lua +23 -0
- package/engine/internal/unit/add-item-to-slot.d.ts +2 -0
- package/engine/internal/unit/add-item-to-slot.lua +52 -0
- package/engine/internal/unit/allowed-targets.d.ts +1 -1
- package/engine/internal/unit/allowed-targets.lua +9 -1
- package/engine/internal/unit/attributes.d.ts +17 -0
- package/engine/internal/unit/attributes.lua +46 -0
- package/engine/internal/unit/bonus.d.ts +17 -8
- package/engine/internal/unit/bonus.lua +56 -4
- package/engine/internal/unit/detach-missiles.d.ts +7 -0
- package/engine/internal/unit/detach-missiles.lua +30 -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 +5 -0
- package/engine/internal/unit/interrupts.d.ts +12 -0
- package/engine/internal/unit/interrupts.lua +28 -0
- package/engine/internal/unit/item.d.ts +24 -0
- package/engine/internal/unit/item.lua +78 -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+ability.lua +12 -3
- package/engine/internal/unit+bonus.lua +3 -3
- package/engine/internal/unit+damage.d.ts +2 -11
- package/engine/internal/unit+damage.lua +10 -14
- package/engine/internal/unit+spellSteal.lua +1 -2
- package/engine/internal/unit+transport.lua +4 -10
- package/engine/internal/unit-missile-launch.lua +70 -13
- package/engine/internal/unit.d.ts +97 -36
- package/engine/internal/unit.lua +701 -336
- package/engine/internal/utility.lua +12 -0
- package/engine/lightning.d.ts +12 -5
- package/engine/lightning.lua +48 -14
- package/engine/local-client.d.ts +14 -2
- package/engine/local-client.lua +168 -1
- package/engine/object-data/auxiliary/animation-name.d.ts +1 -0
- package/engine/object-data/auxiliary/animation-name.lua +16 -0
- package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
- package/engine/object-data/auxiliary/armor-type.lua +46 -0
- package/engine/object-data/auxiliary/attachment-preset.d.ts +7 -3
- package/engine/object-data/auxiliary/attachment-preset.lua +4 -3
- package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
- package/engine/object-data/auxiliary/attack-type.lua +42 -0
- package/engine/object-data/auxiliary/combat-classification.d.ts +0 -2
- 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/movement-type.d.ts +7 -7
- package/engine/object-data/auxiliary/movement-type.lua +22 -0
- package/engine/object-data/auxiliary/sound-eax.d.ts +10 -0
- package/engine/object-data/auxiliary/sound-eax.lua +2 -0
- package/engine/object-data/auxiliary/sound-preset-name.d.ts +5 -1
- package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +1 -1
- package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
- package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
- package/engine/object-data/entry/ability-type/{armor-increase.d.ts → armor-bonus.d.ts} +3 -3
- package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
- 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 +12 -1
- package/engine/object-data/entry/ability-type/blank-passive.d.ts +0 -1
- 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/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 +0 -1
- 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/feral-spirit.lua +2 -2
- 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/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-regeneration.d.ts +8 -0
- package/engine/object-data/entry/ability-type/mana-regeneration.lua +26 -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/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/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/reincarnation.d.ts +8 -0
- package/engine/object-data/entry/ability-type/reincarnation.lua +26 -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/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/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/web.d.ts +12 -0
- package/engine/object-data/entry/ability-type/web.lua +52 -0
- package/engine/object-data/entry/ability-type.d.ts +21 -18
- package/engine/object-data/entry/ability-type.lua +177 -40
- package/engine/object-data/entry/buff-type/applicable.d.ts +0 -1
- package/engine/object-data/entry/buff-type/applicable.lua +143 -202
- package/engine/object-data/entry/buff-type/blank.d.ts +0 -1
- package/engine/object-data/entry/buff-type.d.ts +6 -13
- package/engine/object-data/entry/buff-type.lua +13 -29
- package/engine/object-data/entry/destructible-type.d.ts +28 -3
- package/engine/object-data/entry/destructible-type.lua +155 -0
- package/engine/object-data/entry/item-type/blank.d.ts +0 -1
- package/engine/object-data/entry/item-type.d.ts +15 -2
- package/engine/object-data/entry/item-type.lua +93 -2
- package/engine/object-data/entry/lightning-type.d.ts +1 -2
- package/engine/object-data/entry/sound-preset.d.ts +33 -0
- package/engine/object-data/entry/sound-preset.lua +140 -0
- package/engine/object-data/entry/unit-type.d.ts +65 -5
- package/engine/object-data/entry/unit-type.lua +555 -62
- package/engine/object-data/entry/upgrade/blank.d.ts +0 -1
- package/engine/object-data/entry/upgrade.d.ts +1 -2
- package/engine/object-data/entry/upgrade.lua +4 -4
- package/engine/object-data/entry.d.ts +18 -17
- package/engine/object-data/entry.lua +60 -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/buff-type.d.ts +3 -0
- package/engine/standard/entries/buff-type.lua +3 -0
- package/engine/standard/entries/sound-preset.d.ts +10 -0
- package/engine/standard/entries/sound-preset.lua +10 -0
- package/engine/standard/entries/unit-type.d.ts +42 -1
- package/engine/standard/entries/unit-type.lua +42 -1
- package/engine/standard/fields/ability.d.ts +5 -3
- package/engine/standard/fields/ability.lua +5 -3
- package/engine/standard/fields/item.d.ts +4 -0
- package/engine/standard/fields/item.lua +6 -0
- package/engine/standard/fields/unit.d.ts +12 -0
- package/engine/standard/fields/unit.lua +20 -0
- package/engine/synchronization.d.ts +11 -0
- package/engine/synchronization.lua +77 -0
- package/engine/text-tag.d.ts +36 -2
- package/engine/text-tag.lua +250 -10
- package/engine/unit.d.ts +10 -0
- package/engine/unit.lua +19 -2
- package/event.d.ts +2 -3
- package/event.lua +9 -5
- package/global/vec2.lua +1 -0
- 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 +3 -2
- package/objutil/ability.d.ts +0 -1
- package/objutil/buff.d.ts +0 -1
- package/objutil/buff.lua +12 -11
- 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.lua +1 -4
- package/package.json +13 -14
- package/patch-lua.d.ts +0 -0
- package/patch-lua.lua +25 -0
- package/patch-lualib.lua +1 -1
- package/property.d.ts +55 -0
- package/property.lua +374 -0
- package/string.d.ts +30 -0
- package/string.lua +14 -0
- package/util/stream.d.ts +0 -1
- package/utility/arrays.d.ts +13 -5
- package/utility/arrays.lua +45 -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/records.lua +20 -1
- package/utility/reflection.lua +11 -7
- package/utility/types.d.ts +6 -2
- 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 → mechanics/cast-ability.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
package/engine/text-tag.lua
CHANGED
|
@@ -1,9 +1,22 @@
|
|
|
1
1
|
local ____lualib = require("lualib_bundle")
|
|
2
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
|
|
3
6
|
local __TS__ObjectAssign = ____lualib.__TS__ObjectAssign
|
|
4
7
|
local ____exports = {}
|
|
5
8
|
local ____color = require("core.types.color")
|
|
6
9
|
local Color = ____color.Color
|
|
10
|
+
local ____timer = require("core.types.timer")
|
|
11
|
+
local Timer = ____timer.Timer
|
|
12
|
+
local ____destroyable = require("destroyable")
|
|
13
|
+
local AbstractDestroyable = ____destroyable.AbstractDestroyable
|
|
14
|
+
local ____playerCamera = require("core.types.playerCamera")
|
|
15
|
+
local worldCoordinatesToFrame = ____playerCamera.worldCoordinatesToFrame
|
|
16
|
+
local ____get_2Dterrain_2Dz = require("engine.internal.misc.get-terrain-z")
|
|
17
|
+
local getTerrainZ = ____get_2Dterrain_2Dz.getTerrainZ
|
|
18
|
+
local ____player_2Dlocal_2Dhandle = require("engine.internal.misc.player-local-handle")
|
|
19
|
+
local PLAYER_LOCAL_HANDLE = ____player_2Dlocal_2Dhandle.PLAYER_LOCAL_HANDLE
|
|
7
20
|
local createTextTag = CreateTextTag
|
|
8
21
|
local destroyTextTag = DestroyTextTag
|
|
9
22
|
local setTextTagText = SetTextTagText
|
|
@@ -17,17 +30,15 @@ local setTextTagPermanent = SetTextTagPermanent
|
|
|
17
30
|
local setTextTagAge = SetTextTagAge
|
|
18
31
|
local setTextTagLifespan = SetTextTagLifespan
|
|
19
32
|
local setTextTagFadepoint = SetTextTagFadepoint
|
|
33
|
+
local isUnitHidden = IsUnitHidden
|
|
34
|
+
local isUnitLoaded = IsUnitLoaded
|
|
35
|
+
local isUnitVisible = IsUnitVisible
|
|
36
|
+
local getUnitFlyHeight = GetUnitFlyHeight
|
|
37
|
+
local getUnitX = GetUnitX
|
|
38
|
+
local getUnitY = GetUnitY
|
|
39
|
+
local unitAlive = UnitAlive
|
|
20
40
|
local DEFAULT_FONT_SIZE = 0.024
|
|
21
|
-
|
|
22
|
-
local TextTag = ____exports.TextTag
|
|
23
|
-
TextTag.name = "TextTag"
|
|
24
|
-
function TextTag.prototype.____constructor(self, handle)
|
|
25
|
-
self.handle = handle
|
|
26
|
-
end
|
|
27
|
-
function TextTag.flash(self, configuration, text, x, y, z)
|
|
28
|
-
local textTag = createTextTag()
|
|
29
|
-
setTextTagText(textTag, text, DEFAULT_FONT_SIZE)
|
|
30
|
-
setTextTagPos(textTag, x + configuration.offsetX, y + configuration.offsetY, (z or 0) + configuration.offsetZ)
|
|
41
|
+
local function applyConfiguration(textTag, configuration)
|
|
31
42
|
setTextTagFadepoint(textTag, configuration.fadepoint)
|
|
32
43
|
setTextTagLifespan(textTag, configuration.lifespan)
|
|
33
44
|
local color = configuration.color
|
|
@@ -42,6 +53,213 @@ function TextTag.flash(self, configuration, text, x, y, z)
|
|
|
42
53
|
setTextTagPermanent(textTag, false)
|
|
43
54
|
setTextTagVisibility(textTag, true)
|
|
44
55
|
end
|
|
56
|
+
local unitTextTags = setmetatable({}, {__mode = "k"})
|
|
57
|
+
local function ensureHandle(textTag)
|
|
58
|
+
local handle = textTag[101]
|
|
59
|
+
if handle == nil then
|
|
60
|
+
handle = createTextTag()
|
|
61
|
+
applyConfiguration(handle, textTag[102])
|
|
62
|
+
setTextTagPermanent(handle, true)
|
|
63
|
+
setTextTagText(handle, textTag[103] or "", textTag[104] or DEFAULT_FONT_SIZE)
|
|
64
|
+
local color = textTag[105]
|
|
65
|
+
if color ~= nil then
|
|
66
|
+
setTextTagColor(
|
|
67
|
+
handle,
|
|
68
|
+
color.r,
|
|
69
|
+
color.g,
|
|
70
|
+
color.b,
|
|
71
|
+
color.a
|
|
72
|
+
)
|
|
73
|
+
end
|
|
74
|
+
local unit = textTag[100]
|
|
75
|
+
if unit ~= nil then
|
|
76
|
+
setTextTagPosUnit(handle, unit.handle, textTag[102].offsetZ)
|
|
77
|
+
else
|
|
78
|
+
setTextTagPos(handle, textTag[106] or 0, textTag[107] or 0, 0)
|
|
79
|
+
end
|
|
80
|
+
textTag[101] = handle
|
|
81
|
+
end
|
|
82
|
+
return handle
|
|
83
|
+
end
|
|
84
|
+
____exports.TextTag = __TS__Class()
|
|
85
|
+
local TextTag = ____exports.TextTag
|
|
86
|
+
TextTag.name = "TextTag"
|
|
87
|
+
__TS__ClassExtends(TextTag, AbstractDestroyable)
|
|
88
|
+
function TextTag.prototype.____constructor(self, handle)
|
|
89
|
+
AbstractDestroyable.prototype.____constructor(self)
|
|
90
|
+
self[101] = handle
|
|
91
|
+
end
|
|
92
|
+
function TextTag.prototype.onDestroy(self)
|
|
93
|
+
local handle = self[101]
|
|
94
|
+
if handle ~= nil then
|
|
95
|
+
destroyTextTag(handle)
|
|
96
|
+
self[101] = nil
|
|
97
|
+
end
|
|
98
|
+
unitTextTags[self] = nil
|
|
99
|
+
return AbstractDestroyable.prototype.onDestroy(self)
|
|
100
|
+
end
|
|
101
|
+
function TextTag.flash(self, configuration, text, x, y, z)
|
|
102
|
+
local textTag = createTextTag()
|
|
103
|
+
setTextTagText(textTag, text, DEFAULT_FONT_SIZE)
|
|
104
|
+
setTextTagPos(textTag, x + configuration.offsetX, y + configuration.offsetY, (z or 0) + configuration.offsetZ)
|
|
105
|
+
applyConfiguration(textTag, configuration)
|
|
106
|
+
end
|
|
107
|
+
function TextTag.create(self, configuration, text, unit)
|
|
108
|
+
local textTag = __TS__New(____exports.TextTag)
|
|
109
|
+
textTag[103] = text
|
|
110
|
+
textTag[100] = unit
|
|
111
|
+
textTag[102] = configuration
|
|
112
|
+
ensureHandle(textTag)
|
|
113
|
+
unitTextTags[textTag] = true
|
|
114
|
+
return textTag
|
|
115
|
+
end
|
|
116
|
+
__TS__SetDescriptor(
|
|
117
|
+
TextTag.prototype,
|
|
118
|
+
"text",
|
|
119
|
+
{
|
|
120
|
+
get = function(self)
|
|
121
|
+
return self[103] or ""
|
|
122
|
+
end,
|
|
123
|
+
set = function(self, text)
|
|
124
|
+
setTextTagText(
|
|
125
|
+
ensureHandle(self),
|
|
126
|
+
text,
|
|
127
|
+
self[104] or DEFAULT_FONT_SIZE
|
|
128
|
+
)
|
|
129
|
+
self[103] = text
|
|
130
|
+
end
|
|
131
|
+
},
|
|
132
|
+
true
|
|
133
|
+
)
|
|
134
|
+
__TS__SetDescriptor(
|
|
135
|
+
TextTag.prototype,
|
|
136
|
+
"fontSize",
|
|
137
|
+
{
|
|
138
|
+
get = function(self)
|
|
139
|
+
return self[104] or DEFAULT_FONT_SIZE
|
|
140
|
+
end,
|
|
141
|
+
set = function(self, fontSize)
|
|
142
|
+
setTextTagText(
|
|
143
|
+
ensureHandle(self),
|
|
144
|
+
self[103] or "",
|
|
145
|
+
fontSize
|
|
146
|
+
)
|
|
147
|
+
self[104] = fontSize
|
|
148
|
+
end
|
|
149
|
+
},
|
|
150
|
+
true
|
|
151
|
+
)
|
|
152
|
+
__TS__SetDescriptor(
|
|
153
|
+
TextTag.prototype,
|
|
154
|
+
"color",
|
|
155
|
+
{
|
|
156
|
+
get = function(self)
|
|
157
|
+
return self[105] or Color.white
|
|
158
|
+
end,
|
|
159
|
+
set = function(self, color)
|
|
160
|
+
setTextTagColor(
|
|
161
|
+
ensureHandle(self),
|
|
162
|
+
color.r,
|
|
163
|
+
color.g,
|
|
164
|
+
color.b,
|
|
165
|
+
color.a
|
|
166
|
+
)
|
|
167
|
+
self[105] = color
|
|
168
|
+
end
|
|
169
|
+
},
|
|
170
|
+
true
|
|
171
|
+
)
|
|
172
|
+
__TS__SetDescriptor(
|
|
173
|
+
TextTag.prototype,
|
|
174
|
+
"unit",
|
|
175
|
+
{
|
|
176
|
+
get = function(self)
|
|
177
|
+
return self[100]
|
|
178
|
+
end,
|
|
179
|
+
set = function(self, unit)
|
|
180
|
+
if unit ~= nil then
|
|
181
|
+
setTextTagPosUnit(
|
|
182
|
+
ensureHandle(self),
|
|
183
|
+
unit.handle,
|
|
184
|
+
0
|
|
185
|
+
)
|
|
186
|
+
self[106] = nil
|
|
187
|
+
self[107] = nil
|
|
188
|
+
unitTextTags[self] = true
|
|
189
|
+
elseif self[100] ~= nil then
|
|
190
|
+
local unit = self[100]
|
|
191
|
+
local x = unit.x
|
|
192
|
+
local y = unit.y
|
|
193
|
+
setTextTagPos(
|
|
194
|
+
ensureHandle(self),
|
|
195
|
+
x,
|
|
196
|
+
y,
|
|
197
|
+
0
|
|
198
|
+
)
|
|
199
|
+
self[106] = x
|
|
200
|
+
self[107] = y
|
|
201
|
+
unitTextTags[self] = nil
|
|
202
|
+
end
|
|
203
|
+
self[100] = unit
|
|
204
|
+
end
|
|
205
|
+
},
|
|
206
|
+
true
|
|
207
|
+
)
|
|
208
|
+
__TS__SetDescriptor(
|
|
209
|
+
TextTag.prototype,
|
|
210
|
+
"x",
|
|
211
|
+
{
|
|
212
|
+
get = function(self)
|
|
213
|
+
local ____self__106_2 = self[106]
|
|
214
|
+
if ____self__106_2 == nil then
|
|
215
|
+
local ____opt_0 = self[100]
|
|
216
|
+
____self__106_2 = ____opt_0 and ____opt_0.x
|
|
217
|
+
end
|
|
218
|
+
return ____self__106_2 or 0
|
|
219
|
+
end,
|
|
220
|
+
set = function(self, x)
|
|
221
|
+
local ____ensureHandle_result_6 = ensureHandle(self)
|
|
222
|
+
local ____x_7 = x
|
|
223
|
+
local ____self__107_5 = self[107]
|
|
224
|
+
if ____self__107_5 == nil then
|
|
225
|
+
local ____opt_3 = self[100]
|
|
226
|
+
____self__107_5 = ____opt_3 and ____opt_3.y
|
|
227
|
+
end
|
|
228
|
+
setTextTagPos(____ensureHandle_result_6, ____x_7, ____self__107_5 or 0, 0)
|
|
229
|
+
self[106] = x
|
|
230
|
+
self[100] = nil
|
|
231
|
+
unitTextTags[self] = nil
|
|
232
|
+
end
|
|
233
|
+
},
|
|
234
|
+
true
|
|
235
|
+
)
|
|
236
|
+
__TS__SetDescriptor(
|
|
237
|
+
TextTag.prototype,
|
|
238
|
+
"y",
|
|
239
|
+
{
|
|
240
|
+
get = function(self)
|
|
241
|
+
local ____self__107_10 = self[107]
|
|
242
|
+
if ____self__107_10 == nil then
|
|
243
|
+
local ____opt_8 = self[100]
|
|
244
|
+
____self__107_10 = ____opt_8 and ____opt_8.y
|
|
245
|
+
end
|
|
246
|
+
return ____self__107_10 or 0
|
|
247
|
+
end,
|
|
248
|
+
set = function(self, y)
|
|
249
|
+
local ____ensureHandle_result_14 = ensureHandle(self)
|
|
250
|
+
local ____self__106_13 = self[106]
|
|
251
|
+
if ____self__106_13 == nil then
|
|
252
|
+
local ____opt_11 = self[100]
|
|
253
|
+
____self__106_13 = ____opt_11 and ____opt_11.x
|
|
254
|
+
end
|
|
255
|
+
setTextTagPos(____ensureHandle_result_14, ____self__106_13 or 0, y, 0)
|
|
256
|
+
self[107] = y
|
|
257
|
+
self[100] = nil
|
|
258
|
+
unitTextTags[self] = nil
|
|
259
|
+
end
|
|
260
|
+
},
|
|
261
|
+
true
|
|
262
|
+
)
|
|
45
263
|
TextTag.BASE = {
|
|
46
264
|
fadepoint = 2,
|
|
47
265
|
lifespan = 3,
|
|
@@ -106,4 +324,26 @@ TextTag.SHADOW_STRIKE = __TS__ObjectAssign(
|
|
|
106
324
|
lifespan = 5
|
|
107
325
|
}
|
|
108
326
|
)
|
|
327
|
+
Timer.onPeriod[1 / 64]:addListener(function()
|
|
328
|
+
for textTag in pairs(unitTextTags) do
|
|
329
|
+
local unit = textTag[100].handle
|
|
330
|
+
local x = getUnitX(unit)
|
|
331
|
+
local y = getUnitY(unit)
|
|
332
|
+
local ____, ____, isInView = worldCoordinatesToFrame(
|
|
333
|
+
x,
|
|
334
|
+
y,
|
|
335
|
+
getUnitFlyHeight(unit) + getTerrainZ(x, y)
|
|
336
|
+
)
|
|
337
|
+
if isInView and not isUnitHidden(unit) and not isUnitLoaded(unit) and isUnitVisible(unit, PLAYER_LOCAL_HANDLE) and unitAlive(unit) then
|
|
338
|
+
setTextTagPosUnit(
|
|
339
|
+
ensureHandle(textTag),
|
|
340
|
+
unit,
|
|
341
|
+
textTag[102].offsetZ
|
|
342
|
+
)
|
|
343
|
+
elseif textTag[101] ~= nil then
|
|
344
|
+
destroyTextTag(textTag[101])
|
|
345
|
+
textTag[101] = nil
|
|
346
|
+
end
|
|
347
|
+
end
|
|
348
|
+
end)
|
|
109
349
|
return ____exports
|
package/engine/unit.d.ts
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
/** @noSelfInFile */
|
|
2
2
|
import "./internal/unit";
|
|
3
|
+
import "./internal/unit/order";
|
|
3
4
|
import "./internal/unit/ability";
|
|
4
5
|
import "./internal/unit/allowed-targets";
|
|
5
6
|
import "./internal/unit/buff";
|
|
6
7
|
import "./internal/unit/expiration-timer";
|
|
8
|
+
import "./internal/unit/item";
|
|
7
9
|
import "./internal/unit+ability";
|
|
8
10
|
import "./internal/unit+damage";
|
|
9
11
|
import "./internal/unit+rally";
|
|
@@ -14,6 +16,14 @@ import "./internal/unit/missile";
|
|
|
14
16
|
import "./internal/unit-missile-launch";
|
|
15
17
|
import "./internal/unit/ghost-counter";
|
|
16
18
|
import "./internal/unit/invulnerability-counter";
|
|
19
|
+
import "./internal/unit/detach-missiles";
|
|
20
|
+
import "./internal/unit/main-selected";
|
|
21
|
+
import "./internal/unit/add-item-to-slot-init";
|
|
22
|
+
import "./internal/unit/attributes";
|
|
23
|
+
import "./internal/unit/fly-height";
|
|
24
|
+
import "./internal/unit/scale";
|
|
25
|
+
import "./internal/unit/interrupts";
|
|
26
|
+
import "./internal/unit/range-event";
|
|
17
27
|
import "./internal/unit/band-aids/ancestral-spirit-cannibalize";
|
|
18
28
|
export { Unit, DamagingEvent, DamageEvent } from "./internal/unit";
|
|
19
29
|
export * from "./internal/unit+damage";
|
package/engine/unit.lua
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
local ____exports = {}
|
|
2
2
|
require("engine.internal.unit")
|
|
3
|
+
require("engine.internal.unit.order")
|
|
3
4
|
require("engine.internal.unit.ability")
|
|
4
5
|
require("engine.internal.unit.allowed-targets")
|
|
5
6
|
require("engine.internal.unit.buff")
|
|
6
7
|
require("engine.internal.unit.expiration-timer")
|
|
8
|
+
require("engine.internal.unit.item")
|
|
7
9
|
require("engine.internal.unit+ability")
|
|
8
10
|
require("engine.internal.unit+damage")
|
|
9
11
|
require("engine.internal.unit+rally")
|
|
@@ -14,11 +16,18 @@ require("engine.internal.unit.missile")
|
|
|
14
16
|
require("engine.internal.unit-missile-launch")
|
|
15
17
|
require("engine.internal.unit.ghost-counter")
|
|
16
18
|
require("engine.internal.unit.invulnerability-counter")
|
|
19
|
+
require("engine.internal.unit.detach-missiles")
|
|
20
|
+
require("engine.internal.unit.main-selected")
|
|
21
|
+
require("engine.internal.unit.add-item-to-slot-init")
|
|
22
|
+
require("engine.internal.unit.attributes")
|
|
23
|
+
require("engine.internal.unit.fly-height")
|
|
24
|
+
require("engine.internal.unit.scale")
|
|
25
|
+
require("engine.internal.unit.interrupts")
|
|
26
|
+
require("engine.internal.unit.range-event")
|
|
17
27
|
require("engine.internal.unit.band-aids.ancestral-spirit-cannibalize")
|
|
18
28
|
do
|
|
19
29
|
local ____unit = require("engine.internal.unit")
|
|
20
|
-
|
|
21
|
-
____exports.Unit = Unit
|
|
30
|
+
____exports.Unit = ____unit.Unit
|
|
22
31
|
end
|
|
23
32
|
do
|
|
24
33
|
local ____export = require("engine.internal.unit+damage")
|
|
@@ -28,4 +37,12 @@ do
|
|
|
28
37
|
end
|
|
29
38
|
end
|
|
30
39
|
end
|
|
40
|
+
do
|
|
41
|
+
local ____export = require("engine.internal.unit+rally")
|
|
42
|
+
for ____exportKey, ____exportValue in pairs(____export) do
|
|
43
|
+
if ____exportKey ~= "default" then
|
|
44
|
+
____exports[____exportKey] = ____exportValue
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
31
48
|
return ____exports
|
package/event.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
/// <reference types="@typescript-to-lua/language-extensions" />
|
|
2
1
|
/** @noSelfInFile */
|
|
3
|
-
export type EventListener<T extends any[]> = (...args: T) => void;
|
|
2
|
+
export type EventListener<T extends any[]> = (this: void, ...args: T) => void;
|
|
4
3
|
export declare const enum EventListenerPriority {
|
|
5
4
|
LOWEST = 0,
|
|
6
5
|
LOW = 1,
|
|
@@ -38,7 +37,7 @@ export type EventDispatchTable<EventType extends Event<any>, KeyType extends num
|
|
|
38
37
|
};
|
|
39
38
|
export type DispatchingEvent<P extends any[], T extends Event<P> = Event<P>, S extends Event<P> = Event<P>> = T & EventDispatchTable<S>;
|
|
40
39
|
export declare const createDispatchingEvent: {
|
|
41
|
-
<T extends Event<any>, S extends Event<EventParameters<T>>>(underlyingEvent: T, extractKey: (...args: EventParameters<T>) => number, ...createEvent: [...(Event<any> extends S ? [(() => S)?] : [() => S])]): DispatchingEvent<EventParameters<T>, T>;
|
|
40
|
+
<T extends Event<any>, S extends Event<EventParameters<T>>>(underlyingEvent: T, extractKey: (this: void, ...args: EventParameters<T>) => number, invokeEvent?: (this: void, event: S, ...args: EventParameters<T>) => unknown, ...createEvent: [...(Event<any> extends S ? [((this: void) => S)?] : [(this: void) => S])]): DispatchingEvent<EventParameters<T>, T, S>;
|
|
42
41
|
};
|
|
43
42
|
export declare class DependentInitializingEvent<T extends any[], R extends any[]> extends InitializingEvent<R, EventListener<T>> {
|
|
44
43
|
constructor(underlyingEvent: Event<T>, priority: EventListenerPriority, collector: (...args: T) => LuaMultiReturn<[false] | [true, ...R]>);
|
package/event.lua
CHANGED
|
@@ -146,8 +146,13 @@ function TriggerEvent.prototype.____constructor(self, r, c)
|
|
|
146
146
|
end
|
|
147
147
|
)
|
|
148
148
|
end
|
|
149
|
-
____exports.createDispatchingEvent = function(underlyingEvent, extractKey, createEvent)
|
|
150
|
-
|
|
149
|
+
____exports.createDispatchingEvent = function(underlyingEvent, extractKey, invokeEvent, createEvent)
|
|
150
|
+
if invokeEvent == nil then
|
|
151
|
+
invokeEvent = ____exports.Event.invoke
|
|
152
|
+
end
|
|
153
|
+
if createEvent == nil then
|
|
154
|
+
createEvent = function() return __TS__New(____exports.Event) end
|
|
155
|
+
end
|
|
151
156
|
local initialized = false
|
|
152
157
|
return setmetatable(
|
|
153
158
|
{},
|
|
@@ -157,17 +162,16 @@ ____exports.createDispatchingEvent = function(underlyingEvent, extractKey, creat
|
|
|
157
162
|
return underlyingEvent[id]
|
|
158
163
|
end
|
|
159
164
|
if not initialized then
|
|
160
|
-
local invoke = ____exports.Event.invoke
|
|
161
165
|
underlyingEvent:addListener(function(...)
|
|
162
166
|
local key = extractKey(...)
|
|
163
167
|
local event = rawget(self, key)
|
|
164
168
|
if event then
|
|
165
|
-
|
|
169
|
+
invokeEvent(event, ...)
|
|
166
170
|
end
|
|
167
171
|
end)
|
|
168
172
|
initialized = true
|
|
169
173
|
end
|
|
170
|
-
local event =
|
|
174
|
+
local event = createEvent()
|
|
171
175
|
rawset(self, id, event)
|
|
172
176
|
return event
|
|
173
177
|
end,
|
package/global/vec2.lua
CHANGED
package/index.d.ts
CHANGED