warscript 0.0.1-dev.f5421e8 → 0.0.1-dev.f594e71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/attributes.d.ts +6 -0
- package/attributes.lua +17 -1
- package/core/types/frame.d.ts +1 -0
- package/core/types/frame.lua +136 -58
- package/core/types/handle.lua +9 -9
- package/core/types/item.d.ts +1 -0
- package/core/types/item.lua +1 -0
- package/core/types/player.d.ts +18 -1
- package/core/types/player.lua +76 -26
- package/core/types/playerCamera.d.ts +2 -0
- package/core/types/playerCamera.lua +123 -5
- package/core/types/playerColor.lua +4 -3
- package/core/types/sound.d.ts +1 -1
- package/core/types/sound.lua +19 -9
- package/core/types/tileCell.d.ts +11 -1
- package/core/types/tileCell.lua +97 -0
- package/core/types/timer.d.ts +3 -1
- package/core/types/timer.lua +27 -2
- package/core/types/unit.d.ts +4 -0
- package/core/types/unit.lua +4 -0
- package/decl/native.d.ts +1718 -964
- package/destroyable.d.ts +1 -0
- package/destroyable.lua +9 -0
- package/engine/behavior.d.ts +14 -1
- package/engine/behavior.lua +230 -70
- package/engine/behaviour/ability/apply-buff.lua +5 -5
- package/engine/behaviour/ability/damage.d.ts +9 -3
- package/engine/behaviour/ability/damage.lua +40 -49
- package/engine/behaviour/ability/emulate-impact.d.ts +1 -1
- package/engine/behaviour/ability/emulate-impact.lua +23 -7
- package/engine/behaviour/ability/remove-buffs.d.ts +9 -0
- package/engine/behaviour/ability/remove-buffs.lua +21 -0
- package/engine/behaviour/ability/restore-mana.d.ts +1 -1
- package/engine/behaviour/ability/restore-mana.lua +6 -6
- package/engine/behaviour/ability.d.ts +12 -6
- package/engine/behaviour/ability.lua +49 -17
- package/engine/behaviour/unit/stun-immunity.d.ts +12 -6
- package/engine/behaviour/unit/stun-immunity.lua +57 -31
- package/engine/behaviour/unit.d.ts +40 -3
- package/engine/behaviour/unit.lua +270 -6
- package/engine/buff.d.ts +75 -28
- package/engine/buff.lua +433 -196
- package/engine/index.d.ts +2 -1
- package/engine/internal/ability.d.ts +11 -1
- package/engine/internal/ability.lua +100 -41
- package/engine/internal/item/ability.lua +63 -11
- package/engine/internal/item/fields.d.ts +12 -0
- package/engine/internal/item/fields.lua +33 -0
- package/engine/internal/item+owner.d.ts +1 -0
- package/engine/internal/item+owner.lua +19 -6
- package/engine/internal/item.d.ts +28 -16
- package/engine/internal/item.lua +241 -82
- package/engine/internal/mechanics/cast-ability.lua +6 -3
- package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
- package/engine/internal/misc/frame-coordinates.d.ts +2 -0
- package/engine/internal/misc/frame-coordinates.lua +21 -0
- package/engine/internal/misc/get-terrain-z.d.ts +2 -0
- package/engine/internal/misc/get-terrain-z.lua +11 -0
- package/engine/internal/misc/player-local-handle.d.ts +2 -0
- package/engine/internal/misc/player-local-handle.lua +5 -0
- package/engine/internal/object-data/armor-bonus.d.ts +2 -0
- package/engine/internal/object-data/attribute-bonus.lua +2 -2
- package/engine/internal/object-data/health-bonus.d.ts +2 -0
- package/engine/internal/object-data/health-bonus.lua +16 -0
- package/engine/internal/object-data/mana-bonus.d.ts +2 -0
- package/engine/internal/object-data/mana-bonus.lua +16 -0
- package/engine/internal/object-data/mana-regeneration-rate-increase-factor.d.ts +2 -0
- package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
- package/engine/internal/unit/ability.d.ts +35 -0
- package/engine/internal/unit/ability.lua +113 -12
- package/engine/internal/unit/allowed-targets.d.ts +1 -1
- package/engine/internal/unit/allowed-targets.lua +9 -1
- package/engine/internal/unit/appearance.d.ts +15 -0
- package/engine/internal/unit/appearance.lua +85 -0
- package/engine/internal/unit/attributes.d.ts +17 -0
- package/engine/internal/unit/attributes.lua +46 -0
- package/engine/internal/unit/bag.d.ts +18 -0
- package/engine/internal/unit/bag.lua +63 -0
- package/engine/internal/unit/bonus.d.ts +6 -0
- package/engine/internal/unit/bonus.lua +33 -3
- package/engine/internal/unit/buff.d.ts +2 -2
- package/engine/internal/unit/buff.lua +34 -19
- package/engine/internal/unit/equipment.d.ts +36 -0
- package/engine/internal/unit/equipment.lua +169 -0
- package/engine/internal/unit/fly-height.d.ts +7 -0
- package/engine/internal/unit/fly-height.lua +20 -0
- package/engine/internal/unit/interrupts.d.ts +12 -0
- package/engine/internal/unit/interrupts.lua +28 -0
- package/engine/internal/unit/{item.d.ts → inventory.d.ts} +3 -3
- package/engine/internal/unit/{item.lua → inventory.lua} +25 -26
- package/engine/internal/unit/main-selected.lua +12 -27
- package/engine/internal/unit/order.d.ts +20 -0
- package/engine/internal/unit/order.lua +136 -0
- package/engine/internal/unit/pseudo-passive-abilities.d.ts +2 -0
- package/engine/internal/unit/pseudo-passive-abilities.lua +11 -0
- package/engine/internal/unit/range-event.d.ts +12 -0
- package/engine/internal/unit/range-event.lua +90 -0
- package/engine/internal/unit/scale.d.ts +7 -0
- package/engine/internal/unit/scale.lua +20 -0
- package/engine/internal/unit+ability.lua +10 -1
- package/engine/internal/unit+bonus.lua +3 -3
- package/engine/internal/unit+damage.d.ts +11 -11
- package/engine/internal/unit+damage.lua +43 -14
- package/engine/internal/unit+spellSteal.lua +1 -2
- package/engine/internal/unit-missile-data.lua +58 -32
- package/engine/internal/unit-missile-launch.lua +52 -14
- package/engine/internal/unit.d.ts +39 -27
- package/engine/internal/unit.lua +382 -269
- package/engine/local-client.d.ts +27 -0
- package/engine/local-client.lua +370 -54
- 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/attack-type.d.ts +7 -8
- package/engine/object-data/auxiliary/attack-type.lua +42 -0
- package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
- package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
- package/engine/object-data/auxiliary/equipment-type.d.ts +13 -0
- package/engine/object-data/auxiliary/equipment-type.lua +2 -0
- package/engine/object-data/auxiliary/health-regeneration-type.d.ts +8 -0
- package/engine/object-data/auxiliary/health-regeneration-type.lua +2 -0
- package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
- package/engine/object-data/auxiliary/item-tag.lua +2 -0
- package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
- package/engine/object-data/auxiliary/movement-type.lua +22 -0
- package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
- package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
- package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
- package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
- package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
- package/engine/object-data/entry/ability-type/armor-bonus.d.ts +8 -0
- package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
- package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
- package/engine/object-data/entry/ability-type/banshee.lua +13 -0
- package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
- package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
- package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
- package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
- package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
- package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
- package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
- package/engine/object-data/entry/ability-type/berserk.lua +13 -0
- package/engine/object-data/entry/ability-type/blank-configurable.d.ts +3 -0
- package/engine/object-data/entry/ability-type/blank-configurable.lua +30 -0
- package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
- package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
- package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
- package/engine/object-data/entry/ability-type/consecration.lua +52 -0
- package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
- package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
- package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
- package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
- package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
- package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
- package/engine/object-data/entry/ability-type/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/grant-talent-point.d.ts +8 -0
- package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
- package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
- package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
- package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
- package/engine/object-data/entry/ability-type/grit.lua +65 -0
- package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
- package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
- package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
- package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
- package/engine/object-data/entry/ability-type/{armor-increase.d.ts → healing-modifier.d.ts} +4 -3
- package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
- package/engine/object-data/entry/ability-type/health-bonus.d.ts +8 -0
- package/engine/object-data/entry/ability-type/health-bonus.lua +26 -0
- package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
- package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
- package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
- package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
- package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
- package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
- package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
- package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
- package/engine/object-data/entry/ability-type/mana-bonus.d.ts +8 -0
- package/engine/object-data/entry/ability-type/mana-bonus.lua +26 -0
- package/engine/object-data/entry/ability-type/mana-efficiency.d.ts +12 -0
- package/engine/object-data/entry/ability-type/mana-efficiency.lua +39 -0
- package/engine/object-data/entry/ability-type/mana-regeneration.d.ts +8 -0
- package/engine/object-data/entry/ability-type/mana-regeneration.lua +26 -0
- package/engine/object-data/entry/ability-type/mind-control.d.ts +21 -0
- package/engine/object-data/entry/ability-type/mind-control.lua +78 -0
- package/engine/object-data/entry/ability-type/on-attack-cast-spell.d.ts +21 -0
- package/engine/object-data/entry/ability-type/on-attack-cast-spell.lua +52 -0
- package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.d.ts +19 -0
- package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.lua +65 -0
- package/engine/object-data/entry/ability-type/on-hit-cast-spell.d.ts +15 -0
- package/engine/object-data/entry/ability-type/on-hit-cast-spell.lua +26 -0
- package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.d.ts +6 -0
- package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.lua +12 -0
- package/engine/object-data/entry/ability-type/permanent-invisibility.d.ts +8 -0
- package/engine/object-data/entry/ability-type/permanent-invisibility.lua +26 -0
- package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
- package/engine/object-data/entry/ability-type/provoke.lua +66 -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/slow-poison.d.ts +10 -0
- package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
- package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
- package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
- package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
- package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
- package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
- package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
- package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
- package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
- package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
- package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
- package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
- package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
- package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
- package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
- package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
- package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
- package/engine/object-data/entry/ability-type/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/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 +12 -3
- package/engine/object-data/entry/ability-type.lua +148 -7
- package/engine/object-data/entry/buff-type/applicable.lua +113 -104
- package/engine/object-data/entry/buff-type.d.ts +10 -12
- package/engine/object-data/entry/buff-type.lua +37 -27
- package/engine/object-data/entry/destructible-type.d.ts +32 -2
- package/engine/object-data/entry/destructible-type.lua +181 -0
- package/engine/object-data/entry/item-type.d.ts +12 -3
- package/engine/object-data/entry/item-type.lua +52 -0
- package/engine/object-data/entry/lightning-type.d.ts +2 -2
- package/engine/object-data/entry/sound-preset.d.ts +2 -2
- package/engine/object-data/entry/unit-type.d.ts +64 -6
- package/engine/object-data/entry/unit-type.lua +531 -85
- package/engine/object-data/entry/upgrade.d.ts +2 -2
- package/engine/object-data/entry.d.ts +4 -1
- package/engine/object-field/ability.d.ts +4 -4
- package/engine/object-field/ability.lua +9 -8
- package/engine/object-field/item.d.ts +22 -0
- package/engine/object-field/item.lua +118 -0
- package/engine/object-field/unit.d.ts +72 -3
- package/engine/object-field/unit.lua +268 -7
- package/engine/object-field.d.ts +26 -7
- package/engine/object-field.lua +360 -119
- package/engine/random.d.ts +10 -0
- package/engine/random.lua +21 -0
- package/engine/standard/entries/ability-type.d.ts +3102 -7
- package/engine/standard/entries/ability-type.lua +0 -6
- package/engine/standard/entries/buff-type.d.ts +3 -0
- package/engine/standard/entries/buff-type.lua +3 -0
- package/engine/standard/entries/item-type.d.ts +1299 -0
- package/engine/standard/entries/item-type.lua +2 -0
- package/engine/standard/entries/unit-type.d.ts +5 -0
- package/engine/standard/entries/unit-type.lua +5 -0
- package/engine/standard/fields/ability.d.ts +2 -2
- package/engine/standard/fields/ability.lua +2 -2
- package/engine/standard/fields/item.d.ts +4 -0
- package/engine/standard/fields/item.lua +6 -0
- package/engine/standard/fields/unit.d.ts +12 -0
- package/engine/standard/fields/unit.lua +20 -0
- package/engine/synchronization.d.ts +11 -0
- package/engine/synchronization.lua +77 -0
- package/engine/text-tag.d.ts +36 -2
- package/engine/text-tag.lua +250 -10
- package/engine/unit.d.ts +10 -1
- package/engine/unit.lua +10 -1
- package/event.d.ts +1 -1
- package/lualib_bundle.lua +1 -1
- package/math.d.ts +2 -0
- package/math.lua +14 -0
- package/net/socket.lua +1 -1
- package/network.lua +25 -1
- package/objutil/buff.lua +11 -10
- package/objutil/object.lua +1 -1
- package/operation.d.ts +8 -1
- package/operation.lua +38 -18
- package/package.json +3 -23
- package/patch-lua.lua +15 -0
- package/patch-lualib.lua +1 -1
- package/utility/arrays.d.ts +2 -0
- package/utility/arrays.lua +11 -0
- package/utility/callback-array.d.ts +17 -0
- package/utility/callback-array.lua +61 -0
- package/utility/functions.d.ts +8 -0
- package/utility/functions.lua +13 -0
- package/utility/linked-map.d.ts +35 -0
- package/utility/linked-map.lua +107 -0
- package/utility/linked-set.d.ts +5 -1
- package/utility/linked-set.lua +49 -1
- package/utility/lua-maps.d.ts +15 -2
- package/utility/lua-maps.lua +53 -2
- package/utility/lua-sets.d.ts +2 -0
- package/utility/lua-sets.lua +7 -0
- package/utility/random.d.ts +102 -0
- package/utility/random.lua +273 -0
- package/utility/records.lua +20 -1
- package/utility/types.d.ts +3 -0
- package/utility/unordered-map.d.ts +27 -0
- package/utility/unordered-map.lua +99 -0
- package/core/types/order.d.ts +0 -25
- package/core/types/order.lua +0 -55
- /package/engine/internal/{object-data/armor-increase.d.ts → misc/damage-metadata-by-target.d.ts} +0 -0
- /package/engine/internal/object-data/{armor-increase.lua → armor-bonus.lua} +0 -0
- /package/engine/object-data/entry/ability-type/{attribute-increase.d.ts → attribute-bonus.d.ts} +0 -0
- /package/engine/object-data/entry/ability-type/{attribute-increase.lua → attribute-bonus.lua} +0 -0
package/engine/internal/item.lua
CHANGED
|
@@ -1,45 +1,96 @@
|
|
|
1
1
|
local ____lualib = require("lualib_bundle")
|
|
2
|
+
local __TS__New = ____lualib.__TS__New
|
|
2
3
|
local __TS__Class = ____lualib.__TS__Class
|
|
3
4
|
local __TS__ClassExtends = ____lualib.__TS__ClassExtends
|
|
4
5
|
local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
|
|
5
6
|
local __TS__ObjectDefineProperty = ____lualib.__TS__ObjectDefineProperty
|
|
6
7
|
local __TS__Delete = ____lualib.__TS__Delete
|
|
7
8
|
local ____exports = {}
|
|
9
|
+
local invoke
|
|
8
10
|
local ____handle = require("core.types.handle")
|
|
9
11
|
local Handle = ____handle.Handle
|
|
10
12
|
local ____color = require("core.types.color")
|
|
11
13
|
local Color = ____color.Color
|
|
14
|
+
local ____event = require("event")
|
|
15
|
+
local Event = ____event.Event
|
|
16
|
+
local ____playerColor = require("core.types.playerColor")
|
|
17
|
+
local PlayerColor = ____playerColor.PlayerColor
|
|
12
18
|
local ____rect = require("core.types.rect")
|
|
13
19
|
local Rect = ____rect.Rect
|
|
14
20
|
local ____ability = require("engine.internal.ability")
|
|
15
21
|
local ItemAbility = ____ability.ItemAbility
|
|
16
22
|
local ____ability = require("engine.internal.item.ability")
|
|
17
23
|
local doAbilityAction = ____ability.doAbilityAction
|
|
24
|
+
local doAbilityActionForceDummy = ____ability.doAbilityActionForceDummy
|
|
25
|
+
local itemAbilityDummy = ____ability.itemAbilityDummy
|
|
18
26
|
local ____dummy_2Ditem = require("engine.internal.object-data.dummy-item")
|
|
19
27
|
local DUMMY_ITEM_ID = ____dummy_2Ditem.DUMMY_ITEM_ID
|
|
20
28
|
local ____add_2Ditem_2Dto_2Dslot = require("engine.internal.unit.add-item-to-slot")
|
|
21
29
|
local SLOT_FILLER_ITEM_TYPE_ID = ____add_2Ditem_2Dto_2Dslot.SLOT_FILLER_ITEM_TYPE_ID
|
|
22
30
|
local ____vec2 = require("math.vec2")
|
|
23
31
|
local distance = ____vec2.distance
|
|
24
|
-
local
|
|
25
|
-
local
|
|
26
|
-
local
|
|
27
|
-
local
|
|
28
|
-
local
|
|
29
|
-
local
|
|
30
|
-
local
|
|
31
|
-
local
|
|
32
|
-
local getHandleId = GetHandleId
|
|
33
|
-
local setRect = SetRect
|
|
32
|
+
local ____timer = require("core.types.timer")
|
|
33
|
+
local Timer = ____timer.Timer
|
|
34
|
+
local chooseRandomItemExWithFilter = ChooseRandomItemExWithFilter
|
|
35
|
+
local condition = Condition
|
|
36
|
+
local convertEquipmentType = ConvertEquipmentType
|
|
37
|
+
local convertItemTag = ConvertItemTag
|
|
38
|
+
local createTrigger = CreateTrigger
|
|
39
|
+
local destroyTrigger = DestroyTrigger
|
|
34
40
|
local enumItemsInRect = EnumItemsInRect
|
|
41
|
+
local getAbilityId = BlzGetAbilityId
|
|
35
42
|
local getEnumItem = GetEnumItem
|
|
43
|
+
local getHandleId = GetHandleId
|
|
44
|
+
local getItemAbility = BlzGetItemAbility
|
|
45
|
+
local getItemAbilityByIndex = BlzGetItemAbilityByIndex
|
|
46
|
+
local getItemBooleanField = BlzGetItemBooleanField
|
|
47
|
+
local getItemCharges = GetItemCharges
|
|
48
|
+
local getItemEquipmentType = GetItemEquipmentType
|
|
49
|
+
local getItemIntegerField = BlzGetItemIntegerField
|
|
50
|
+
local getItemTag = GetItemTag
|
|
36
51
|
local getItemTypeId = GetItemTypeId
|
|
37
52
|
local getItemX = GetItemX
|
|
38
53
|
local getItemY = GetItemY
|
|
39
|
-
local
|
|
54
|
+
local getManipulatedItem = GetManipulatedItem
|
|
55
|
+
local getTriggerWidget = GetTriggerWidget
|
|
56
|
+
local getWidgetLife = GetWidgetLife
|
|
57
|
+
local isItemEquipped = IsItemEquipped
|
|
58
|
+
local isItemInBag = IsItemInBag
|
|
59
|
+
local isItemPawnable = IsItemPawnable
|
|
60
|
+
local isItemPowerup = IsItemPowerup
|
|
61
|
+
local itemAddAbility = BlzItemAddAbility
|
|
62
|
+
local itemRemoveAbility = BlzItemRemoveAbility
|
|
63
|
+
local loadItemHandle = LoadItemHandle
|
|
64
|
+
local removeItem = RemoveItem
|
|
65
|
+
local saveWidgetHandle = SaveWidgetHandle
|
|
40
66
|
local setItemBooleanField = BlzSetItemBooleanField
|
|
41
|
-
local
|
|
67
|
+
local setItemCharges = SetItemCharges
|
|
68
|
+
local setItemColor = SetItemColor
|
|
69
|
+
local setItemDropOnDeath = SetItemDropOnDeath
|
|
70
|
+
local setItemDroppable = SetItemDroppable
|
|
71
|
+
local setItemPawnable = SetItemPawnable
|
|
72
|
+
local setRect = SetRect
|
|
73
|
+
local triggerAddCondition = TriggerAddCondition
|
|
74
|
+
local triggerRegisterDeathEvent = TriggerRegisterDeathEvent
|
|
75
|
+
local unitRemoveAbility = UnitRemoveAbility
|
|
76
|
+
local unitRemoveItem = UnitRemoveItem
|
|
77
|
+
local unitUseItem = UnitUseItem
|
|
78
|
+
local unitUseItemPoint = UnitUseItemPoint
|
|
79
|
+
local unitUseItemTarget = UnitUseItemTarget
|
|
80
|
+
local tableRemove = table.remove
|
|
81
|
+
local itemChargesChangeEvent = __TS__New(Event)
|
|
82
|
+
local itemDeathEvent = __TS__New(Event)
|
|
83
|
+
_G.SetItemCharges = function(whichItem, charges)
|
|
84
|
+
setItemCharges(whichItem, charges)
|
|
85
|
+
invoke(
|
|
86
|
+
itemChargesChangeEvent,
|
|
87
|
+
____exports.Item:of(whichItem)
|
|
88
|
+
)
|
|
89
|
+
end
|
|
90
|
+
invoke = Event.invoke
|
|
42
91
|
local enumRect = Rect:create(0, 0, 0, 0).handle
|
|
92
|
+
---
|
|
93
|
+
-- @internal For use by internal systems only.
|
|
43
94
|
____exports.addAndGetAbility = function(handle, abilityTypeId)
|
|
44
95
|
if itemAddAbility(handle, abilityTypeId) then
|
|
45
96
|
return getItemAbility(handle, abilityTypeId)
|
|
@@ -65,6 +116,23 @@ local function getItemAbilities(handle, item)
|
|
|
65
116
|
end
|
|
66
117
|
return abilities
|
|
67
118
|
end
|
|
119
|
+
local function consumeCharge(handle)
|
|
120
|
+
do
|
|
121
|
+
local i = 0
|
|
122
|
+
local ability = getItemAbilityByIndex(handle, i)
|
|
123
|
+
while ability ~= nil do
|
|
124
|
+
unitRemoveAbility(
|
|
125
|
+
itemAbilityDummy,
|
|
126
|
+
getAbilityId(ability)
|
|
127
|
+
)
|
|
128
|
+
do
|
|
129
|
+
i = i + 1
|
|
130
|
+
ability = getItemAbilityByIndex(handle, i)
|
|
131
|
+
end
|
|
132
|
+
end
|
|
133
|
+
end
|
|
134
|
+
return unitUseItem(itemAbilityDummy, handle) or unitUseItemPoint(itemAbilityDummy, handle, 0, 0) or unitUseItemTarget(itemAbilityDummy, handle, itemAbilityDummy)
|
|
135
|
+
end
|
|
68
136
|
local targetCollection
|
|
69
137
|
local targetCollectionNextIndex
|
|
70
138
|
local centerX
|
|
@@ -91,63 +159,132 @@ local function collectIntoTargetRange()
|
|
|
91
159
|
targetCollectionNextIndex = targetCollectionNextIndex + 1
|
|
92
160
|
end
|
|
93
161
|
end
|
|
162
|
+
local hashtable = InitHashtable()
|
|
163
|
+
local deathTriggerCondition = condition(function()
|
|
164
|
+
saveWidgetHandle(
|
|
165
|
+
hashtable,
|
|
166
|
+
1,
|
|
167
|
+
1,
|
|
168
|
+
getTriggerWidget()
|
|
169
|
+
)
|
|
170
|
+
local item = ____exports.Item:of(loadItemHandle(hashtable, 1, 1))
|
|
171
|
+
if item ~= nil then
|
|
172
|
+
invoke(itemDeathEvent, item)
|
|
173
|
+
end
|
|
174
|
+
end)
|
|
175
|
+
itemDeathEvent:addListener(
|
|
176
|
+
999999,
|
|
177
|
+
function(item)
|
|
178
|
+
Timer:run(item, "destroy")
|
|
179
|
+
end
|
|
180
|
+
)
|
|
94
181
|
____exports.Item = __TS__Class()
|
|
95
182
|
local Item = ____exports.Item
|
|
96
183
|
Item.name = "Item"
|
|
97
184
|
__TS__ClassExtends(Item, Handle)
|
|
98
185
|
function Item.prototype.____constructor(self, handle)
|
|
99
186
|
Handle.prototype.____constructor(self, handle)
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
end
|
|
106
|
-
self[101] = luaIndexByAbilityTypeId
|
|
187
|
+
self[100] = doAbilityAction(handle, getItemAbilities, self)
|
|
188
|
+
local deathTrigger = createTrigger()
|
|
189
|
+
triggerRegisterDeathEvent(deathTrigger, handle)
|
|
190
|
+
triggerAddCondition(deathTrigger, deathTriggerCondition)
|
|
191
|
+
self[101] = deathTrigger
|
|
107
192
|
end
|
|
108
193
|
function Item.prototype.onDestroy(self)
|
|
194
|
+
local owner = self.owner
|
|
195
|
+
if owner ~= nil then
|
|
196
|
+
unitRemoveItem(owner.handle, self.handle)
|
|
197
|
+
end
|
|
109
198
|
local abilities = self[100]
|
|
110
199
|
for i = 1, #abilities do
|
|
111
200
|
abilities[i]:destroy()
|
|
112
201
|
end
|
|
113
202
|
removeItem(self.handle)
|
|
203
|
+
destroyTrigger(self[101])
|
|
114
204
|
return Handle.prototype.onDestroy(self)
|
|
115
205
|
end
|
|
116
206
|
function Item.create(self, id, x, y, skinId)
|
|
117
207
|
return self:of(BlzCreateItemWithSkin(id, x, y, skinId or id))
|
|
118
208
|
end
|
|
209
|
+
function Item.getRandomTypeId(self, level, equipmentType, tag, itemType)
|
|
210
|
+
if equipmentType == nil then
|
|
211
|
+
equipmentType = 9
|
|
212
|
+
end
|
|
213
|
+
if tag == nil then
|
|
214
|
+
tag = 8
|
|
215
|
+
end
|
|
216
|
+
if itemType == nil then
|
|
217
|
+
itemType = ITEM_TYPE_ANY
|
|
218
|
+
end
|
|
219
|
+
local id = chooseRandomItemExWithFilter(
|
|
220
|
+
itemType,
|
|
221
|
+
level,
|
|
222
|
+
convertEquipmentType(equipmentType),
|
|
223
|
+
convertItemTag(tag)
|
|
224
|
+
)
|
|
225
|
+
return id ~= 0 and id or nil
|
|
226
|
+
end
|
|
227
|
+
function Item.prototype.consumeCharge(self)
|
|
228
|
+
return self:consumeCharges(1)
|
|
229
|
+
end
|
|
230
|
+
function Item.prototype.consumeCharges(self, count)
|
|
231
|
+
local handle = self.handle
|
|
232
|
+
local charges = getItemCharges(handle)
|
|
233
|
+
if charges > count then
|
|
234
|
+
setItemCharges(handle, charges - count)
|
|
235
|
+
invoke(itemChargesChangeEvent, self)
|
|
236
|
+
return true
|
|
237
|
+
end
|
|
238
|
+
if charges == count then
|
|
239
|
+
if getItemBooleanField(handle, ITEM_BF_PERISHABLE) then
|
|
240
|
+
self:destroy()
|
|
241
|
+
return true
|
|
242
|
+
end
|
|
243
|
+
if not getItemBooleanField(handle, ITEM_BF_ACTIVELY_USED) then
|
|
244
|
+
setItemCharges(handle, 0)
|
|
245
|
+
invoke(itemChargesChangeEvent, self)
|
|
246
|
+
return true
|
|
247
|
+
end
|
|
248
|
+
setItemCharges(handle, 1)
|
|
249
|
+
local ____doAbilityActionForceDummy_2 = doAbilityActionForceDummy
|
|
250
|
+
local ____opt_0 = self.owner
|
|
251
|
+
____doAbilityActionForceDummy_2(handle, ____opt_0 and ____opt_0.handle, consumeCharge)
|
|
252
|
+
invoke(itemChargesChangeEvent, self)
|
|
253
|
+
return true
|
|
254
|
+
end
|
|
255
|
+
return false
|
|
256
|
+
end
|
|
119
257
|
function Item.prototype.addAbility(self, abilityTypeId)
|
|
120
258
|
local nativeAbility = doAbilityAction(self.handle, ____exports.addAndGetAbility, abilityTypeId)
|
|
121
259
|
if nativeAbility ~= nil then
|
|
122
260
|
local ability = ItemAbility:of(nativeAbility, abilityTypeId, self)
|
|
123
261
|
local abilities = self[100]
|
|
124
|
-
|
|
125
|
-
abilities[luaIndex] = ability
|
|
126
|
-
self[101][abilityTypeId] = luaIndex
|
|
262
|
+
abilities[#abilities + 1] = ability
|
|
127
263
|
return ability
|
|
128
264
|
end
|
|
129
265
|
return nil
|
|
130
266
|
end
|
|
131
267
|
function Item.prototype.removeAbility(self, abilityTypeId)
|
|
132
|
-
local
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
for j = luaIndex, abilityTypeIdsLength do
|
|
140
|
-
abilities[j] = abilities[j + 1]
|
|
268
|
+
local abilities = self[100]
|
|
269
|
+
for i = 1, #abilities do
|
|
270
|
+
if abilities[i].typeId == abilityTypeId then
|
|
271
|
+
local ability = abilities[i]
|
|
272
|
+
tableRemove(abilities, i)
|
|
273
|
+
ability:destroy()
|
|
274
|
+
return true
|
|
141
275
|
end
|
|
142
276
|
end
|
|
143
|
-
return
|
|
277
|
+
return doAbilityAction(self.handle, itemRemoveAbility, abilityTypeId)
|
|
144
278
|
end
|
|
145
279
|
function Item.prototype.hasAbility(self, abilityTypeId)
|
|
146
|
-
return self
|
|
280
|
+
return doAbilityAction(self.handle, getItemAbility, abilityTypeId) ~= nil
|
|
147
281
|
end
|
|
148
282
|
function Item.prototype.getAbility(self, abilityTypeId)
|
|
149
|
-
|
|
150
|
-
|
|
283
|
+
return ItemAbility:of(
|
|
284
|
+
doAbilityAction(self.handle, getItemAbility, abilityTypeId),
|
|
285
|
+
abilityTypeId,
|
|
286
|
+
self
|
|
287
|
+
)
|
|
151
288
|
end
|
|
152
289
|
function Item.getInRange(self, x, y, range)
|
|
153
290
|
targetCollection = {}
|
|
@@ -171,6 +308,52 @@ function Item.getInRect(self, rect)
|
|
|
171
308
|
enumItemsInRect(rect.handle, nil, collectIntoTarget)
|
|
172
309
|
return targetCollection
|
|
173
310
|
end
|
|
311
|
+
__TS__SetDescriptor(
|
|
312
|
+
Item.prototype,
|
|
313
|
+
"isEquipped",
|
|
314
|
+
{get = function(self)
|
|
315
|
+
return isItemEquipped(self.handle)
|
|
316
|
+
end},
|
|
317
|
+
true
|
|
318
|
+
)
|
|
319
|
+
__TS__SetDescriptor(
|
|
320
|
+
Item.prototype,
|
|
321
|
+
"isInBag",
|
|
322
|
+
{get = function(self)
|
|
323
|
+
return isItemInBag(self.handle)
|
|
324
|
+
end},
|
|
325
|
+
true
|
|
326
|
+
)
|
|
327
|
+
__TS__SetDescriptor(
|
|
328
|
+
Item.prototype,
|
|
329
|
+
"equipmentType",
|
|
330
|
+
{get = function(self)
|
|
331
|
+
return getHandleId(getItemEquipmentType(self.handle))
|
|
332
|
+
end},
|
|
333
|
+
true
|
|
334
|
+
)
|
|
335
|
+
__TS__SetDescriptor(
|
|
336
|
+
Item.prototype,
|
|
337
|
+
"tag",
|
|
338
|
+
{get = function(self)
|
|
339
|
+
return getHandleId(getItemTag(self.handle))
|
|
340
|
+
end},
|
|
341
|
+
true
|
|
342
|
+
)
|
|
343
|
+
__TS__SetDescriptor(
|
|
344
|
+
Item.prototype,
|
|
345
|
+
"color",
|
|
346
|
+
{
|
|
347
|
+
get = function(self)
|
|
348
|
+
return self[102] or PlayerColor.red
|
|
349
|
+
end,
|
|
350
|
+
set = function(self, color)
|
|
351
|
+
setItemColor(self.handle, color.handle)
|
|
352
|
+
self[102] = color
|
|
353
|
+
end
|
|
354
|
+
},
|
|
355
|
+
true
|
|
356
|
+
)
|
|
174
357
|
__TS__SetDescriptor(
|
|
175
358
|
Item.prototype,
|
|
176
359
|
"typeId",
|
|
@@ -259,65 +442,55 @@ __TS__SetDescriptor(
|
|
|
259
442
|
)
|
|
260
443
|
__TS__SetDescriptor(
|
|
261
444
|
Item.prototype,
|
|
262
|
-
"
|
|
445
|
+
"dropsOnDeath",
|
|
263
446
|
{
|
|
264
447
|
get = function(self)
|
|
265
|
-
return
|
|
448
|
+
return getItemBooleanField(self.handle, ITEM_BF_DROPPED_WHEN_CARRIER_DIES)
|
|
266
449
|
end,
|
|
267
|
-
set = function(self,
|
|
268
|
-
|
|
450
|
+
set = function(self, dropsOnDeath)
|
|
451
|
+
setItemDropOnDeath(self.handle, dropsOnDeath)
|
|
269
452
|
end
|
|
270
453
|
},
|
|
271
454
|
true
|
|
272
455
|
)
|
|
273
456
|
__TS__SetDescriptor(
|
|
274
457
|
Item.prototype,
|
|
275
|
-
"
|
|
458
|
+
"canBeDropped",
|
|
276
459
|
{
|
|
277
460
|
get = function(self)
|
|
278
|
-
return
|
|
461
|
+
return getItemBooleanField(self.handle, ITEM_BF_CAN_BE_DROPPED)
|
|
279
462
|
end,
|
|
280
|
-
set = function(self,
|
|
281
|
-
|
|
282
|
-
end
|
|
283
|
-
},
|
|
284
|
-
true
|
|
285
|
-
)
|
|
286
|
-
__TS__SetDescriptor(
|
|
287
|
-
Item.prototype,
|
|
288
|
-
"pawnable",
|
|
289
|
-
{
|
|
290
|
-
get = function(self)
|
|
291
|
-
return IsItemPawnable(self.handle)
|
|
292
|
-
end,
|
|
293
|
-
set = function(self, v)
|
|
294
|
-
SetItemPawnable(self.handle, v)
|
|
463
|
+
set = function(self, canBeDropped)
|
|
464
|
+
setItemDroppable(self.handle, canBeDropped)
|
|
295
465
|
end
|
|
296
466
|
},
|
|
297
467
|
true
|
|
298
468
|
)
|
|
299
469
|
__TS__SetDescriptor(
|
|
300
470
|
Item.prototype,
|
|
301
|
-
"
|
|
471
|
+
"perishes",
|
|
302
472
|
{
|
|
303
473
|
get = function(self)
|
|
304
|
-
return
|
|
474
|
+
return getItemBooleanField(self.handle, ITEM_BF_PERISHABLE)
|
|
305
475
|
end,
|
|
306
|
-
set = function(self,
|
|
307
|
-
|
|
476
|
+
set = function(self, perishes)
|
|
477
|
+
local handle = self.handle
|
|
478
|
+
local powerUp = isItemPowerup(handle)
|
|
479
|
+
setItemBooleanField(handle, ITEM_BF_PERISHABLE, perishes)
|
|
480
|
+
setItemBooleanField(handle, ITEM_BF_USE_AUTOMATICALLY_WHEN_ACQUIRED, powerUp)
|
|
308
481
|
end
|
|
309
482
|
},
|
|
310
483
|
true
|
|
311
484
|
)
|
|
312
485
|
__TS__SetDescriptor(
|
|
313
486
|
Item.prototype,
|
|
314
|
-
"
|
|
487
|
+
"isPowerUp",
|
|
315
488
|
{
|
|
316
489
|
get = function(self)
|
|
317
490
|
return isItemPowerup(self.handle)
|
|
318
491
|
end,
|
|
319
|
-
set = function(self,
|
|
320
|
-
setItemBooleanField(self.handle, ITEM_BF_USE_AUTOMATICALLY_WHEN_ACQUIRED,
|
|
492
|
+
set = function(self, isPowerUp)
|
|
493
|
+
setItemBooleanField(self.handle, ITEM_BF_USE_AUTOMATICALLY_WHEN_ACQUIRED, isPowerUp)
|
|
321
494
|
end
|
|
322
495
|
},
|
|
323
496
|
true
|
|
@@ -351,22 +524,6 @@ __TS__SetDescriptor(
|
|
|
351
524
|
},
|
|
352
525
|
true
|
|
353
526
|
)
|
|
354
|
-
__TS__SetDescriptor(
|
|
355
|
-
Item.prototype,
|
|
356
|
-
"usable",
|
|
357
|
-
{
|
|
358
|
-
get = function(self)
|
|
359
|
-
return getItemBooleanField(self.handle, ITEM_BF_ACTIVELY_USED)
|
|
360
|
-
end,
|
|
361
|
-
set = function(self, v)
|
|
362
|
-
local handle = self.handle
|
|
363
|
-
local powerup = isItemPowerup(handle)
|
|
364
|
-
setItemBooleanField(handle, ITEM_BF_ACTIVELY_USED, v)
|
|
365
|
-
setItemBooleanField(handle, ITEM_BF_USE_AUTOMATICALLY_WHEN_ACQUIRED, powerup)
|
|
366
|
-
end
|
|
367
|
-
},
|
|
368
|
-
true
|
|
369
|
-
)
|
|
370
527
|
__TS__SetDescriptor(
|
|
371
528
|
Item.prototype,
|
|
372
529
|
"visible",
|
|
@@ -557,10 +714,11 @@ __TS__SetDescriptor(
|
|
|
557
714
|
"charges",
|
|
558
715
|
{
|
|
559
716
|
get = function(self)
|
|
560
|
-
return
|
|
717
|
+
return getItemCharges(self.handle)
|
|
561
718
|
end,
|
|
562
719
|
set = function(self, v)
|
|
563
|
-
|
|
720
|
+
setItemCharges(self.handle, v)
|
|
721
|
+
invoke(itemChargesChangeEvent, self)
|
|
564
722
|
end
|
|
565
723
|
},
|
|
566
724
|
true
|
|
@@ -587,7 +745,8 @@ __TS__ObjectDefineProperty(
|
|
|
587
745
|
return self.onDestroyEvent
|
|
588
746
|
end}
|
|
589
747
|
)
|
|
590
|
-
|
|
748
|
+
Item.deathEvent = itemDeathEvent
|
|
749
|
+
Item.chargesChangedEvent = itemChargesChangeEvent
|
|
591
750
|
local trigger = CreateTrigger()
|
|
592
751
|
TriggerRegisterAnyUnitEventBJ(trigger, EVENT_PLAYER_UNIT_PICKUP_ITEM)
|
|
593
752
|
TriggerAddAction(
|
|
@@ -74,9 +74,12 @@ ____exports.castAbility = function(nativeUnit, abilityTypeId, prepareAbility, ..
|
|
|
74
74
|
unitRemoveAbility(nativeUnit, INVENTORY_ABILITY_TYPE_ID)
|
|
75
75
|
if latestInventoryAbilityTypeId ~= 0 then
|
|
76
76
|
unitAddAbility(nativeUnit, latestInventoryAbilityTypeId)
|
|
77
|
-
for slot,
|
|
78
|
-
|
|
79
|
-
|
|
77
|
+
for slot = 0, inventorySize - 1 do
|
|
78
|
+
local nativeItem = nativeItemBySlot[slot]
|
|
79
|
+
if nativeItem ~= nil then
|
|
80
|
+
unitAddItem(nativeUnit, nativeItem)
|
|
81
|
+
unitDropItemSlot(nativeUnit, nativeItem, slot)
|
|
82
|
+
end
|
|
80
83
|
end
|
|
81
84
|
end
|
|
82
85
|
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
local ____exports = {}
|
|
2
|
+
local getLocalClientWidth = BlzGetLocalClientWidth
|
|
3
|
+
local getLocalClientHeight = BlzGetLocalClientHeight
|
|
4
|
+
---
|
|
5
|
+
-- @internal For use by internal systems only.
|
|
6
|
+
____exports.getFrameMinXMaxX = function()
|
|
7
|
+
local w = getLocalClientWidth()
|
|
8
|
+
local h = getLocalClientHeight()
|
|
9
|
+
local width4by3 = (w - h / 600 * 800) / 2
|
|
10
|
+
local pxtodpi = 0.6 / h
|
|
11
|
+
local minX = -width4by3 * pxtodpi
|
|
12
|
+
local maxX = minX + w * pxtodpi
|
|
13
|
+
return minX, maxX
|
|
14
|
+
end
|
|
15
|
+
---
|
|
16
|
+
-- @internal For use by internal systems only.
|
|
17
|
+
____exports.FRAME_MIN_Y = 0
|
|
18
|
+
---
|
|
19
|
+
-- @internal For use by internal systems only.
|
|
20
|
+
____exports.FRAME_MAX_Y = 0.6
|
|
21
|
+
return ____exports
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
local ____exports = {}
|
|
2
|
+
local getLocationZ = GetLocationZ
|
|
3
|
+
local moveLocation = MoveLocation
|
|
4
|
+
local location = Location(0, 0)
|
|
5
|
+
---
|
|
6
|
+
-- @internal For use by internal systems only.
|
|
7
|
+
____exports.getTerrainZ = function(x, y)
|
|
8
|
+
moveLocation(location, x, y)
|
|
9
|
+
return getLocationZ(location)
|
|
10
|
+
end
|
|
11
|
+
return ____exports
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
local ____exports = {}
|
|
2
|
-
local
|
|
3
|
-
local AttributeBonusAbilityType =
|
|
2
|
+
local ____attribute_2Dbonus = require("engine.object-data.entry.ability-type.attribute-bonus")
|
|
3
|
+
local AttributeBonusAbilityType = ____attribute_2Dbonus.AttributeBonusAbilityType
|
|
4
4
|
---
|
|
5
5
|
-- @internal For use by internal systems.
|
|
6
6
|
____exports.ATTRIBUTE_BONUS_DUMMY_ABILITY_TYPE_ID = compiletime(function()
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
local ____exports = {}
|
|
2
|
+
local ____health_2Dbonus = require("engine.object-data.entry.ability-type.health-bonus")
|
|
3
|
+
local HealthBonusAbilityType = ____health_2Dbonus.HealthBonusAbilityType
|
|
4
|
+
---
|
|
5
|
+
-- @internal For use by internal systems only.
|
|
6
|
+
____exports.HEALTH_BONUS_DUMMY_ABILITY_TYPE_ID = compiletime(function()
|
|
7
|
+
local abilityType = HealthBonusAbilityType:create()
|
|
8
|
+
abilityType.isInternal = true
|
|
9
|
+
abilityType.isButtonVisible = false
|
|
10
|
+
abilityType.healthBonus = 0
|
|
11
|
+
return abilityType.id
|
|
12
|
+
end)
|
|
13
|
+
---
|
|
14
|
+
-- @internal For use by internal systems only.
|
|
15
|
+
____exports.HEALTH_BONUS_DUMMY_ABILITY_FIELD = ABILITY_ILF_MAX_LIFE_GAINED
|
|
16
|
+
return ____exports
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
local ____exports = {}
|
|
2
|
+
local ____mana_2Dbonus = require("engine.object-data.entry.ability-type.mana-bonus")
|
|
3
|
+
local ManaBonusAbilityType = ____mana_2Dbonus.ManaBonusAbilityType
|
|
4
|
+
---
|
|
5
|
+
-- @internal For use by internal systems only.
|
|
6
|
+
____exports.MANA_BONUS_DUMMY_ABILITY_TYPE_ID = compiletime(function()
|
|
7
|
+
local abilityType = ManaBonusAbilityType:create()
|
|
8
|
+
abilityType.isInternal = true
|
|
9
|
+
abilityType.isButtonVisible = false
|
|
10
|
+
abilityType.manaBonus = 0
|
|
11
|
+
return abilityType.id
|
|
12
|
+
end)
|
|
13
|
+
---
|
|
14
|
+
-- @internal For use by internal systems only.
|
|
15
|
+
____exports.MANA_BONUS_DUMMY_ABILITY_FIELD = ABILITY_ILF_MAX_MANA_GAINED
|
|
16
|
+
return ____exports
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
local ____exports = {}
|
|
2
|
+
local ____mana_2Dregeneration = require("engine.object-data.entry.ability-type.mana-regeneration")
|
|
3
|
+
local ManaRegenerationAbilityType = ____mana_2Dregeneration.ManaRegenerationAbilityType
|
|
4
|
+
---
|
|
5
|
+
-- @internal For use by internal systems.
|
|
6
|
+
____exports.MANA_REGENERATION_RATE_INCREASE_FACTOR_DUMMY_ABILITY_TYPE_ID = compiletime(function()
|
|
7
|
+
local abilityType = ManaRegenerationAbilityType:create()
|
|
8
|
+
abilityType.isInternal = true
|
|
9
|
+
abilityType.isButtonVisible = false
|
|
10
|
+
abilityType.manaRegenerationRateIncreaseFactor = 4
|
|
11
|
+
return abilityType.id
|
|
12
|
+
end)
|
|
13
|
+
---
|
|
14
|
+
-- @internal For use by internal systems.
|
|
15
|
+
____exports.MANA_REGENERATION_RATE_INCREASE_FACTOR_ABILITY_FIELD = ABILITY_RLF_MANA_REGENERATION_BONUS_AS_FRACTION_OF_NORMAL
|
|
16
|
+
return ____exports
|
|
@@ -150,3 +150,38 @@ declare module "../unit" {
|
|
|
150
150
|
};
|
|
151
151
|
}
|
|
152
152
|
}
|
|
153
|
+
declare module "../unit" {
|
|
154
|
+
namespace Unit {
|
|
155
|
+
const abilityImpactEvent: DispatchingEvent<[Unit, Ability]>;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
declare module "../unit" {
|
|
159
|
+
namespace Unit {
|
|
160
|
+
const abilityWidgetTargetImpactEvent: DispatchingEvent<[Unit, Ability, Widget]>;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
declare module "../unit" {
|
|
164
|
+
namespace Unit {
|
|
165
|
+
const abilityUnitTargetImpactEvent: DispatchingEvent<[Unit, Ability, Unit]>;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
declare module "../unit" {
|
|
169
|
+
namespace Unit {
|
|
170
|
+
const abilityItemTargetImpactEvent: DispatchingEvent<[Unit, Ability, Item]>;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
declare module "../unit" {
|
|
174
|
+
namespace Unit {
|
|
175
|
+
const abilityDestructibleTargetImpactEvent: DispatchingEvent<[Unit, Ability, Destructable]>;
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
declare module "../unit" {
|
|
179
|
+
namespace Unit {
|
|
180
|
+
const abilityPointTargetImpactEvent: DispatchingEvent<[Unit, Ability, number, number]>;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
declare module "../unit" {
|
|
184
|
+
namespace Unit {
|
|
185
|
+
const abilityNoTargetImpactEvent: DispatchingEvent<[Unit, Ability]>;
|
|
186
|
+
}
|
|
187
|
+
}
|