warscript 0.0.1-dev.e0e46c4 → 0.0.1-dev.e147c49
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 +1 -0
- package/attributes.lua +9 -0
- 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 +14 -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 +711 -11
- 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 +4 -4
- package/engine/behaviour/ability/damage.d.ts +3 -0
- package/engine/behaviour/ability/damage.lua +18 -15
- package/engine/behaviour/ability/emulate-impact.d.ts +1 -1
- package/engine/behaviour/ability/emulate-impact.lua +7 -5
- 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 +42 -1
- package/engine/behaviour/unit/stun-immunity.d.ts +9 -5
- package/engine/behaviour/unit/stun-immunity.lua +17 -7
- package/engine/behaviour/unit.d.ts +16 -5
- package/engine/behaviour/unit.lua +133 -26
- package/engine/buff.d.ts +73 -27
- package/engine/buff.lua +424 -193
- package/engine/index.d.ts +2 -1
- package/engine/internal/ability.d.ts +7 -1
- package/engine/internal/ability.lua +86 -44
- 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 +23 -14
- package/engine/internal/item.lua +169 -82
- package/engine/internal/mechanics/cast-ability.lua +6 -3
- 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 +14 -14
- package/engine/internal/unit/ability.lua +86 -47
- 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/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 +9 -0
- package/engine/internal/unit+damage.lua +33 -0
- package/engine/internal/unit-missile-data.lua +58 -32
- package/engine/internal/unit-missile-launch.lua +52 -14
- package/engine/internal/unit.d.ts +18 -24
- package/engine/internal/unit.lua +180 -206
- package/engine/local-client.d.ts +27 -0
- package/engine/local-client.lua +518 -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/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/sound-set-name.d.ts +14 -3
- package/engine/object-data/auxiliary/unit-attribute.lua +1 -1
- 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/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/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/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 +142 -8
- package/engine/object-data/entry/buff-type/applicable.lua +113 -109
- package/engine/object-data/entry/buff-type.d.ts +6 -2
- package/engine/object-data/entry/buff-type.lua +26 -0
- 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 +62 -4
- package/engine/object-data/entry/unit-type.lua +474 -38
- 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 +3 -3
- 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 +27 -5
- package/engine/object-field/unit.lua +82 -0
- package/engine/object-field.d.ts +12 -4
- package/engine/object-field.lua +273 -126
- 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/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 +11 -2
- package/engine/standard/fields/unit.lua +16 -1
- package/engine/synchronization.d.ts +11 -0
- package/engine/synchronization.lua +77 -0
- package/engine/text-tag.d.ts +1 -1
- package/engine/text-tag.lua +92 -17
- package/engine/unit.d.ts +9 -1
- package/engine/unit.lua +9 -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 +10 -8
- 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 +1 -0
- package/utility/arrays.lua +8 -0
- package/utility/callback-array.d.ts +17 -0
- package/utility/callback-array.lua +61 -0
- package/utility/functions.d.ts +4 -0
- package/utility/functions.lua +9 -0
- package/utility/linked-map.d.ts +35 -0
- package/utility/linked-map.lua +107 -0
- package/utility/linked-set.d.ts +4 -1
- package/utility/linked-set.lua +46 -1
- package/utility/lua-maps.d.ts +11 -2
- package/utility/lua-maps.lua +33 -2
- package/utility/lua-sets.d.ts +1 -0
- package/utility/lua-sets.lua +4 -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/engine/internal/{object-data/armor-increase.d.ts → misc/frame-coordinates.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
|
@@ -38,11 +38,14 @@ local ____sound = require("core.types.sound")
|
|
|
38
38
|
local isSoundLabelCustom = ____sound.isSoundLabelCustom
|
|
39
39
|
local Sound3D = ____sound.Sound3D
|
|
40
40
|
local SoundSettings = ____sound.SoundSettings
|
|
41
|
+
local ____lua_2Dsets = require("utility.lua-sets")
|
|
42
|
+
local luaSetOf = ____lua_2Dsets.luaSetOf
|
|
41
43
|
local castAnimationFQNByAbilityTypeId = {}
|
|
42
44
|
local isButtonVisibleFalseAbilityTypes = {}
|
|
43
45
|
local casterCastingEffectPresetsByAbilityTypeId = {}
|
|
44
46
|
local casterChannelingEffectPresetsByAbilityTypeId = {}
|
|
45
47
|
local targetCastingEffectPresetsByAbilityTypeId = {}
|
|
48
|
+
local targetChannelingEffectPresetsByAbilityTypeId = {}
|
|
46
49
|
local targetEffectSoundPresetByAbilityTypeId = {}
|
|
47
50
|
____exports.AbilityType = __TS__Class()
|
|
48
51
|
local AbilityType = ____exports.AbilityType
|
|
@@ -202,6 +205,19 @@ __TS__SetDescriptor(
|
|
|
202
205
|
},
|
|
203
206
|
true
|
|
204
207
|
)
|
|
208
|
+
__TS__SetDescriptor(
|
|
209
|
+
AbilityType.prototype,
|
|
210
|
+
"iconPathDE",
|
|
211
|
+
{
|
|
212
|
+
get = function(self)
|
|
213
|
+
return self:getStringField("aart:de")
|
|
214
|
+
end,
|
|
215
|
+
set = function(self, iconPathDE)
|
|
216
|
+
self:setStringField("aart:de", iconPathDE)
|
|
217
|
+
end
|
|
218
|
+
},
|
|
219
|
+
true
|
|
220
|
+
)
|
|
205
221
|
__TS__SetDescriptor(
|
|
206
222
|
AbilityType.prototype,
|
|
207
223
|
"isButtonVisible",
|
|
@@ -324,6 +340,19 @@ __TS__SetDescriptor(
|
|
|
324
340
|
},
|
|
325
341
|
true
|
|
326
342
|
)
|
|
343
|
+
__TS__SetDescriptor(
|
|
344
|
+
AbilityType.prototype,
|
|
345
|
+
"missileModelPathDE",
|
|
346
|
+
{
|
|
347
|
+
get = function(self)
|
|
348
|
+
return self:getStringField("amat:de")
|
|
349
|
+
end,
|
|
350
|
+
set = function(self, missileModelPathDE)
|
|
351
|
+
self:setStringField("amat:de", missileModelPathDE)
|
|
352
|
+
end
|
|
353
|
+
},
|
|
354
|
+
true
|
|
355
|
+
)
|
|
327
356
|
__TS__SetDescriptor(
|
|
328
357
|
AbilityType.prototype,
|
|
329
358
|
"missileMovementArc",
|
|
@@ -376,6 +405,19 @@ __TS__SetDescriptor(
|
|
|
376
405
|
},
|
|
377
406
|
true
|
|
378
407
|
)
|
|
408
|
+
__TS__SetDescriptor(
|
|
409
|
+
AbilityType.prototype,
|
|
410
|
+
"targetChannelingEffectPresets",
|
|
411
|
+
{
|
|
412
|
+
get = function(self)
|
|
413
|
+
return targetChannelingEffectPresetsByAbilityTypeId[self.id] or ({})
|
|
414
|
+
end,
|
|
415
|
+
set = function(self, targetChannelingEffectPresets)
|
|
416
|
+
targetChannelingEffectPresetsByAbilityTypeId[self.id] = map(targetChannelingEffectPresets, toEffectPreset)
|
|
417
|
+
end
|
|
418
|
+
},
|
|
419
|
+
true
|
|
420
|
+
)
|
|
379
421
|
__TS__SetDescriptor(
|
|
380
422
|
AbilityType.prototype,
|
|
381
423
|
"targetEffectPresets",
|
|
@@ -457,6 +499,33 @@ __TS__SetDescriptor(
|
|
|
457
499
|
},
|
|
458
500
|
true
|
|
459
501
|
)
|
|
502
|
+
__TS__SetDescriptor(
|
|
503
|
+
AbilityType.prototype,
|
|
504
|
+
"targetEffectPresetsDE",
|
|
505
|
+
{
|
|
506
|
+
get = function(self)
|
|
507
|
+
return self:getAttachmentPresetListField(
|
|
508
|
+
"atat:de",
|
|
509
|
+
array(
|
|
510
|
+
6,
|
|
511
|
+
function(i) return ("ata" .. tostring(i)) .. ":de" end
|
|
512
|
+
)
|
|
513
|
+
)
|
|
514
|
+
end,
|
|
515
|
+
set = function(self, targetEffectPresetsDE)
|
|
516
|
+
self:setAttachmentPresetListField(
|
|
517
|
+
"atat:de",
|
|
518
|
+
array(
|
|
519
|
+
6,
|
|
520
|
+
function(i) return ("ata" .. tostring(i)) .. ":de" end
|
|
521
|
+
),
|
|
522
|
+
"atac:de",
|
|
523
|
+
targetEffectPresetsDE
|
|
524
|
+
)
|
|
525
|
+
end
|
|
526
|
+
},
|
|
527
|
+
true
|
|
528
|
+
)
|
|
460
529
|
__TS__SetDescriptor(
|
|
461
530
|
AbilityType.prototype,
|
|
462
531
|
"turnOffButtonPositionX",
|
|
@@ -979,9 +1048,7 @@ for abilityTypeId, animationFQN in pairs(postcompile(function() return castAnima
|
|
|
979
1048
|
4,
|
|
980
1049
|
function(caster, ability)
|
|
981
1050
|
if ability:getField(ABILITY_RLF_CASTING_TIME) ~= 0 then
|
|
982
|
-
Timer:run(
|
|
983
|
-
caster:playAnimation(animationFQN)
|
|
984
|
-
end)
|
|
1051
|
+
Timer:run(caster, "playAnimation", animationFQN)
|
|
985
1052
|
end
|
|
986
1053
|
end
|
|
987
1054
|
)
|
|
@@ -1006,9 +1073,10 @@ for abilityTypeId, soundPresetId in pairs(postcompile(function() return targetEf
|
|
|
1006
1073
|
)
|
|
1007
1074
|
end
|
|
1008
1075
|
end
|
|
1076
|
+
local unsupportedEffectSoundAbilityTypeIds = luaSetOf(fourCC("AAns"))
|
|
1009
1077
|
Unit.abilityChannelingStartEvent:addListener(function(caster, ability)
|
|
1010
1078
|
local soundPresetId = ability:getField(ABILITY_SF_EFFECT_SOUND)
|
|
1011
|
-
if isSoundLabelCustom(soundPresetId) then
|
|
1079
|
+
if isSoundLabelCustom(soundPresetId) or soundPresetId ~= "" and unsupportedEffectSoundAbilityTypeIds[ability.parentTypeId] ~= nil then
|
|
1012
1080
|
Sound3D:playFromLabel(soundPresetId, SoundSettings.Ability, caster)
|
|
1013
1081
|
end
|
|
1014
1082
|
end)
|
|
@@ -1098,18 +1166,84 @@ local function handleAbilityChannelingStartEvent(caster, ability)
|
|
|
1098
1166
|
end
|
|
1099
1167
|
casterChannelingEffectsByCaster[caster] = effects
|
|
1100
1168
|
end
|
|
1169
|
+
local targetChannelingEffectModelPathsByAbilityTypeId = postcompile(function()
|
|
1170
|
+
return mapValues(
|
|
1171
|
+
targetChannelingEffectPresetsByAbilityTypeId,
|
|
1172
|
+
function(targetChannelingEffectPresets) return map(targetChannelingEffectPresets, extractAttachmentPresetInputModelPath) end
|
|
1173
|
+
)
|
|
1174
|
+
end)
|
|
1175
|
+
local targetChannelingEffectAttachmentPointsByAbilityTypeId = postcompile(function()
|
|
1176
|
+
return mapValues(
|
|
1177
|
+
targetChannelingEffectPresetsByAbilityTypeId,
|
|
1178
|
+
function(targetChannelingEffectPresets) return map(targetChannelingEffectPresets, extractAttachmentPresetInputNodeFQN) end
|
|
1179
|
+
)
|
|
1180
|
+
end)
|
|
1181
|
+
local targetChannelingEffectParametersByAbilityTypeId = postcompile(function()
|
|
1182
|
+
return mapValues(
|
|
1183
|
+
targetChannelingEffectPresetsByAbilityTypeId,
|
|
1184
|
+
function(targetChannelingEffectPresets) return map(targetChannelingEffectPresets, "parameters") end
|
|
1185
|
+
)
|
|
1186
|
+
end)
|
|
1187
|
+
local targetChannelingEffectsByCaster = {}
|
|
1188
|
+
local function handleAbilityWidgetTargetChannelingStartEvent(caster, ability, target)
|
|
1189
|
+
local effectModelPaths = targetChannelingEffectModelPathsByAbilityTypeId[ability.typeId]
|
|
1190
|
+
local attachmentPoints = targetChannelingEffectAttachmentPointsByAbilityTypeId[ability.typeId]
|
|
1191
|
+
local parameters = targetChannelingEffectParametersByAbilityTypeId[ability.typeId]
|
|
1192
|
+
local effects = {}
|
|
1193
|
+
if effectModelPaths ~= nil then
|
|
1194
|
+
for i = 1, #effectModelPaths do
|
|
1195
|
+
local effectModelPath = effectModelPaths[i]
|
|
1196
|
+
local attachmentPoint = attachmentPoints and attachmentPoints[i]
|
|
1197
|
+
if attachmentPoint == nil or attachmentPoint == "" then
|
|
1198
|
+
attachmentPoint = "origin"
|
|
1199
|
+
end
|
|
1200
|
+
effects[i] = Effect:create(effectModelPath, target, attachmentPoint, parameters and parameters[i])
|
|
1201
|
+
end
|
|
1202
|
+
end
|
|
1203
|
+
targetChannelingEffectsByCaster[caster] = effects
|
|
1204
|
+
end
|
|
1205
|
+
local function handleAbilityPointTargetChannelingStartEvent(caster, ability, x, y)
|
|
1206
|
+
local effectModelPaths = targetChannelingEffectModelPathsByAbilityTypeId[ability.typeId]
|
|
1207
|
+
local attachmentPoints = targetChannelingEffectAttachmentPointsByAbilityTypeId[ability.typeId]
|
|
1208
|
+
local parameters = targetChannelingEffectParametersByAbilityTypeId[ability.typeId]
|
|
1209
|
+
local effects = {}
|
|
1210
|
+
if effectModelPaths ~= nil then
|
|
1211
|
+
for i = 1, #effectModelPaths do
|
|
1212
|
+
local effectModelPath = effectModelPaths[i]
|
|
1213
|
+
local attachmentPoint = attachmentPoints and attachmentPoints[i]
|
|
1214
|
+
if attachmentPoint == nil or attachmentPoint == "" then
|
|
1215
|
+
attachmentPoint = "origin"
|
|
1216
|
+
end
|
|
1217
|
+
effects[i] = Effect:create(effectModelPath, x, y, parameters and parameters[i])
|
|
1218
|
+
end
|
|
1219
|
+
end
|
|
1220
|
+
targetChannelingEffectsByCaster[caster] = effects
|
|
1221
|
+
end
|
|
1101
1222
|
local function handleAbilityStopChannelingEvent(caster)
|
|
1102
|
-
local
|
|
1103
|
-
if
|
|
1104
|
-
for i = 1, #
|
|
1105
|
-
|
|
1223
|
+
local casterEffects = casterChannelingEffectsByCaster[caster]
|
|
1224
|
+
if casterEffects ~= nil then
|
|
1225
|
+
for i = 1, #casterEffects do
|
|
1226
|
+
casterEffects[i]:destroy()
|
|
1106
1227
|
end
|
|
1107
1228
|
casterChannelingEffectsByCaster[caster] = nil
|
|
1108
1229
|
end
|
|
1230
|
+
local targetEffects = targetChannelingEffectsByCaster[caster]
|
|
1231
|
+
if targetEffects ~= nil then
|
|
1232
|
+
for i = 1, #targetEffects do
|
|
1233
|
+
targetEffects[i]:destroy()
|
|
1234
|
+
end
|
|
1235
|
+
targetChannelingEffectsByCaster[caster] = nil
|
|
1236
|
+
end
|
|
1109
1237
|
end
|
|
1110
1238
|
for abilityTypeId in pairs(casterChannelingEffectModelPathsByAbilityTypeId) do
|
|
1111
1239
|
Unit.abilityChannelingStartEvent[abilityTypeId]:addListener(4, handleAbilityChannelingStartEvent)
|
|
1112
1240
|
Unit.abilityChannelingFinishEvent[abilityTypeId]:addListener(4, handleAbilityStopChannelingEvent)
|
|
1113
1241
|
Unit.abilityStopEvent[abilityTypeId]:addListener(4, handleAbilityStopChannelingEvent)
|
|
1114
1242
|
end
|
|
1243
|
+
for abilityTypeId in pairs(targetChannelingEffectModelPathsByAbilityTypeId) do
|
|
1244
|
+
Unit.abilityWidgetTargetChannelingStartEvent[abilityTypeId]:addListener(4, handleAbilityWidgetTargetChannelingStartEvent)
|
|
1245
|
+
Unit.abilityPointTargetChannelingStartEvent[abilityTypeId]:addListener(4, handleAbilityPointTargetChannelingStartEvent)
|
|
1246
|
+
Unit.abilityChannelingFinishEvent[abilityTypeId]:addListener(4, handleAbilityStopChannelingEvent)
|
|
1247
|
+
Unit.abilityStopEvent[abilityTypeId]:addListener(4, handleAbilityStopChannelingEvent)
|
|
1248
|
+
end
|
|
1115
1249
|
return ____exports
|
|
@@ -65,123 +65,127 @@ function ApplicableBuffType.wrap(self, other)
|
|
|
65
65
|
return __TS__New(____exports.ApplicableBuffType, other.object)
|
|
66
66
|
end
|
|
67
67
|
ApplicableBuffType.BASE_ID = fourCC("BHbz")
|
|
68
|
-
local applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId, applicatorUpgradeIdByApplicatorAbilityTypeId = table.unpack(
|
|
69
|
-
|
|
70
|
-
local
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
if applicableBuffType.
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
68
|
+
local applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId, applicatorUpgradeIdByApplicatorAbilityTypeId = table.unpack(
|
|
69
|
+
postcompile(function()
|
|
70
|
+
local function prepareAbilityType(abilityTypeConstructor, applicableBuffType)
|
|
71
|
+
local abilityType = abilityTypeConstructor:create()
|
|
72
|
+
abilityType.isInternal = true
|
|
73
|
+
abilityType.levelCount = applicableBuffType.levelCount
|
|
74
|
+
abilityType.buttonPositionX = 0
|
|
75
|
+
abilityType.buttonPositionY = -11
|
|
76
|
+
abilityType.casterAttachmentPresets = {}
|
|
77
|
+
abilityType.targetEffectPresets = {}
|
|
78
|
+
abilityType.casterEffectSoundPresetId = nil
|
|
79
|
+
abilityType.learnLevelMinimum = 6
|
|
80
|
+
abilityType.race = "other"
|
|
81
|
+
abilityType.shouldCheckTechTreeDependencies = false
|
|
82
|
+
abilityType.techTreeDependencies = {}
|
|
83
|
+
abilityType.allowedTargetCombatClassifications = combatClassificationsOf(
|
|
84
|
+
4,
|
|
85
|
+
2,
|
|
86
|
+
2097152,
|
|
87
|
+
8,
|
|
88
|
+
1048576,
|
|
89
|
+
16
|
|
90
|
+
)
|
|
91
|
+
abilityType.areaOfEffect = 0
|
|
92
|
+
abilityType.castRange = 999999
|
|
93
|
+
abilityType.cooldown = 0
|
|
94
|
+
abilityType.manaCost = 0
|
|
95
|
+
abilityType.buffDuration = 0
|
|
96
|
+
abilityType.heroBuffDuration = 0
|
|
97
|
+
return abilityType
|
|
98
|
+
end
|
|
99
|
+
local multilevelPhysicalPositiveApplicatorAbilityTypes = {}
|
|
100
|
+
local applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId = {}
|
|
101
|
+
for applicableBuffType in pairs(compiletimeApplicableBuffTypes) do
|
|
102
|
+
local applicatorAbilityTypeIdByApplicatorType = {}
|
|
103
|
+
if applicableBuffType.resistanceType == 1 or applicableBuffType.resistanceType == nil then
|
|
104
|
+
if applicableBuffType.polarity == 2 or applicableBuffType.polarity == nil then
|
|
105
|
+
local applicatorAbilityType = prepareAbilityType(CurseAbilityType, applicableBuffType)
|
|
106
|
+
applicatorAbilityType.missProbability = 0
|
|
107
|
+
applicatorAbilityType.buffTypeIds = {applicableBuffType.id}
|
|
108
|
+
applicatorAbilityTypeIdByApplicatorType[852190] = applicatorAbilityType.id
|
|
109
|
+
end
|
|
110
|
+
if applicableBuffType.polarity == 1 or applicableBuffType.polarity == nil then
|
|
111
|
+
local applicatorAbilityType = prepareAbilityType(BloodLustAbilityType, applicableBuffType)
|
|
112
|
+
applicatorAbilityType.attackSpeedIncreaseFactor = 0
|
|
113
|
+
applicatorAbilityType.movementSpeedIncreaseFactor = 0
|
|
114
|
+
applicatorAbilityType.scaleIncrease = 0
|
|
115
|
+
applicatorAbilityType.buffTypeIds = {applicableBuffType.id}
|
|
116
|
+
applicatorAbilityTypeIdByApplicatorType[852101] = applicatorAbilityType.id
|
|
117
|
+
end
|
|
108
118
|
end
|
|
109
|
-
if applicableBuffType.
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
119
|
+
if applicableBuffType.resistanceType == 2 or applicableBuffType.resistanceType == nil then
|
|
120
|
+
if applicableBuffType.polarity == 2 or applicableBuffType.polarity == nil then
|
|
121
|
+
local applicatorAbilityType = prepareAbilityType(SlowPoisonAbilityType, applicableBuffType)
|
|
122
|
+
applicatorAbilityType.damagePerSecond = 0
|
|
123
|
+
applicatorAbilityType.movementSpeedDecreaseFactor = 0
|
|
124
|
+
applicatorAbilityType.attackSpeedDecreaseFactor = 0
|
|
125
|
+
applicatorAbilityType.isDamageStacking = false
|
|
126
|
+
applicatorAbilityType.isMovementSpeedFactorStacking = false
|
|
127
|
+
applicatorAbilityType.isAttackSpeedFactorStacking = false
|
|
128
|
+
applicatorAbilityType.isAbleToKill = false
|
|
129
|
+
applicatorAbilityType.buffTypeIds = {applicableBuffType.id, applicableBuffType.id}
|
|
130
|
+
applicatorAbilityTypeIdByApplicatorType[852173] = applicatorAbilityType.id
|
|
131
|
+
end
|
|
132
|
+
if applicableBuffType.polarity == 1 or applicableBuffType.polarity == nil then
|
|
133
|
+
local applicatorAbilityType = prepareAbilityType(BerserkAbilityType, applicableBuffType)
|
|
134
|
+
applicatorAbilityType.attackSpeedIncreaseFactor = 0
|
|
135
|
+
applicatorAbilityType.movementSpeedIncreaseFactor = 0
|
|
136
|
+
applicatorAbilityType.receivedDamageIncreaseFactor = 0
|
|
137
|
+
applicatorAbilityType.buffTypeIds = {applicableBuffType.id}
|
|
138
|
+
if applicatorAbilityType.levelCount > 1 then
|
|
139
|
+
multilevelPhysicalPositiveApplicatorAbilityTypes[#multilevelPhysicalPositiveApplicatorAbilityTypes + 1] = applicatorAbilityType
|
|
140
|
+
end
|
|
141
|
+
applicatorAbilityTypeIdByApplicatorType[852100] = applicatorAbilityType.id
|
|
142
|
+
end
|
|
143
|
+
end
|
|
144
|
+
if applicableBuffType.polarity == 0 or applicableBuffType.polarity == nil then
|
|
145
|
+
local applicatorAbilityType = prepareAbilityType(PermanentImmolationAbilityType, applicableBuffType)
|
|
146
|
+
applicatorAbilityType.levelCount = 1
|
|
147
|
+
applicatorAbilityType.damagePerInterval = 0
|
|
148
|
+
applicatorAbilityType.castRange = 0
|
|
149
|
+
applicatorAbilityType.buffDuration = MAXIMUM_INTEGER
|
|
150
|
+
applicatorAbilityType.heroBuffDuration = MAXIMUM_INTEGER
|
|
151
|
+
applicatorAbilityType.allowedTargetCombatClassifications = combatClassificationsOf(1)
|
|
114
152
|
applicatorAbilityType.buffTypeIds = {applicableBuffType.id}
|
|
115
|
-
applicatorAbilityTypeIdByApplicatorType[
|
|
153
|
+
applicatorAbilityTypeIdByApplicatorType[0] = applicatorAbilityType.id
|
|
116
154
|
end
|
|
155
|
+
applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId[applicableBuffType.id] = applicatorAbilityTypeIdByApplicatorType
|
|
117
156
|
end
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
end
|
|
131
|
-
if applicableBuffType.polarity == 1 or applicableBuffType.polarity == nil then
|
|
132
|
-
local applicatorAbilityType = prepareAbilityType(BerserkAbilityType, applicableBuffType)
|
|
133
|
-
applicatorAbilityType.attackSpeedIncreaseFactor = 0
|
|
134
|
-
applicatorAbilityType.movementSpeedIncreaseFactor = 0
|
|
135
|
-
applicatorAbilityType.receivedDamageIncreaseFactor = 0
|
|
136
|
-
applicatorAbilityType.buffTypeIds = {applicableBuffType.id}
|
|
137
|
-
if applicatorAbilityType.levelCount > 1 then
|
|
138
|
-
multilevelPhysicalPositiveApplicatorAbilityTypes[#multilevelPhysicalPositiveApplicatorAbilityTypes + 1] = applicatorAbilityType
|
|
157
|
+
local applicatorUpgradeIds = {}
|
|
158
|
+
local applicatorUpgradeIdByApplicatorAbilityTypeId = {}
|
|
159
|
+
for ____, multilevelPhysicalPositiveApplicatorAbilityTypesChunk in ipairs(chunked(multilevelPhysicalPositiveApplicatorAbilityTypes, 4)) do
|
|
160
|
+
local maxLevelCount = max(map(multilevelPhysicalPositiveApplicatorAbilityTypesChunk, "levelCount"))
|
|
161
|
+
local applicatorAbilityTypeIds = map(multilevelPhysicalPositiveApplicatorAbilityTypesChunk, "id")
|
|
162
|
+
local applicatorUpgrade = BlankUpgrade:create()
|
|
163
|
+
applicatorUpgrade.isInternal = true
|
|
164
|
+
applicatorUpgrade.levelCount = maxLevelCount - 1
|
|
165
|
+
applicatorUpgrade.effects = map(
|
|
166
|
+
applicatorAbilityTypeIds,
|
|
167
|
+
function(applicatorAbilityTypeId)
|
|
168
|
+
return {type = "rlev", bonusBase = 1, bonusIncrement = 1, abilityTypeId = applicatorAbilityTypeId}
|
|
139
169
|
end
|
|
140
|
-
|
|
170
|
+
)
|
|
171
|
+
applicatorUpgradeIds[#applicatorUpgradeIds + 1] = applicatorUpgrade.id
|
|
172
|
+
for ____, applicatorAbilityTypeId in ipairs(applicatorAbilityTypeIds) do
|
|
173
|
+
applicatorUpgradeIdByApplicatorAbilityTypeId[applicatorAbilityTypeId] = applicatorUpgrade.id
|
|
141
174
|
end
|
|
142
175
|
end
|
|
143
|
-
|
|
144
|
-
local
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
applicatorAbilityType.allowedTargetCombatClassifications = combatClassificationsOf(1)
|
|
151
|
-
applicatorAbilityType.buffTypeIds = {applicableBuffType.id}
|
|
152
|
-
applicatorAbilityTypeIdByApplicatorType[0] = applicatorAbilityType.id
|
|
153
|
-
end
|
|
154
|
-
applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId[applicableBuffType.id] = applicatorAbilityTypeIdByApplicatorType
|
|
155
|
-
end
|
|
156
|
-
local applicatorUpgradeIds = {}
|
|
157
|
-
local applicatorUpgradeIdByApplicatorAbilityTypeId = {}
|
|
158
|
-
for ____, multilevelPhysicalPositiveApplicatorAbilityTypesChunk in ipairs(chunked(multilevelPhysicalPositiveApplicatorAbilityTypes, 4)) do
|
|
159
|
-
local maxLevelCount = max(map(multilevelPhysicalPositiveApplicatorAbilityTypesChunk, "levelCount"))
|
|
160
|
-
local applicatorAbilityTypeIds = map(multilevelPhysicalPositiveApplicatorAbilityTypesChunk, "id")
|
|
161
|
-
local applicatorUpgrade = BlankUpgrade:create()
|
|
162
|
-
applicatorUpgrade.isInternal = true
|
|
163
|
-
applicatorUpgrade.levelCount = maxLevelCount - 1
|
|
164
|
-
applicatorUpgrade.effects = map(
|
|
165
|
-
applicatorAbilityTypeIds,
|
|
166
|
-
function(applicatorAbilityTypeId)
|
|
167
|
-
return {type = "rlev", bonusBase = 1, bonusIncrement = 1, abilityTypeId = applicatorAbilityTypeId}
|
|
168
|
-
end
|
|
169
|
-
)
|
|
170
|
-
applicatorUpgradeIds[#applicatorUpgradeIds + 1] = applicatorUpgrade.id
|
|
171
|
-
for ____, applicatorAbilityTypeId in ipairs(applicatorAbilityTypeIds) do
|
|
172
|
-
applicatorUpgradeIdByApplicatorAbilityTypeId[applicatorAbilityTypeId] = applicatorUpgrade.id
|
|
176
|
+
for ____, unitType in ipairs(UnitType:getAll()) do
|
|
177
|
+
local ____array_0 = __TS__SparseArrayNew(table.unpack(unitType.affectingUpgradeIds))
|
|
178
|
+
__TS__SparseArrayPush(
|
|
179
|
+
____array_0,
|
|
180
|
+
table.unpack(applicatorUpgradeIds)
|
|
181
|
+
)
|
|
182
|
+
unitType.affectingUpgradeIds = {__TS__SparseArraySpread(____array_0)}
|
|
173
183
|
end
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
table.unpack(applicatorUpgradeIds)
|
|
180
|
-
)
|
|
181
|
-
unitType.affectingUpgradeIds = {__TS__SparseArraySpread(____array_0)}
|
|
182
|
-
end
|
|
183
|
-
return {applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId, applicatorUpgradeIdByApplicatorAbilityTypeId}
|
|
184
|
-
end))
|
|
184
|
+
return {applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId, applicatorUpgradeIdByApplicatorAbilityTypeId}
|
|
185
|
+
end),
|
|
186
|
+
1,
|
|
187
|
+
2
|
|
188
|
+
)
|
|
185
189
|
local EVASION_ABILITY_TYPE_IDS = postcompile(function()
|
|
186
190
|
return AbilityType:getAllIdsByBaseIds(map({
|
|
187
191
|
"AEev",
|
|
@@ -3,9 +3,9 @@ import { TupleOf } from "../../../utility/types";
|
|
|
3
3
|
import { AttachmentPreset, AttachmentPresetInput } from "../auxiliary/attachment-preset";
|
|
4
4
|
import { Race } from "../auxiliary/race";
|
|
5
5
|
import { SoundPresetName } from "../auxiliary/sound-preset-name";
|
|
6
|
-
import { ObjectDataEntry, ObjectDataEntryConstructor,
|
|
6
|
+
import { ObjectDataEntry, ObjectDataEntryConstructor, CustomObjectDataEntryId } from "../entry";
|
|
7
7
|
import { LightningTypeId } from "./lightning-type";
|
|
8
|
-
export type BuffTypeId =
|
|
8
|
+
export type BuffTypeId = CustomObjectDataEntryId & number & {
|
|
9
9
|
readonly __buffTypeId: unique symbol;
|
|
10
10
|
};
|
|
11
11
|
export type StandardBuffTypeId = BuffTypeId & {
|
|
@@ -24,6 +24,8 @@ export declare abstract class BuffType<Id extends BuffTypeId = BuffTypeId> exten
|
|
|
24
24
|
set iconPathSD(iconPathSD: string);
|
|
25
25
|
get iconPathHD(): string;
|
|
26
26
|
set iconPathHD(iconPathHD: string);
|
|
27
|
+
get iconPathDE(): string;
|
|
28
|
+
set iconPathDE(iconPathDE: string);
|
|
27
29
|
get isMissileHoming(): boolean;
|
|
28
30
|
set isMissileHoming(isMissileHoming: boolean);
|
|
29
31
|
get lightningTypeIds(): LightningTypeId[];
|
|
@@ -34,6 +36,8 @@ export declare abstract class BuffType<Id extends BuffTypeId = BuffTypeId> exten
|
|
|
34
36
|
set missileModelPathSD(missileModelPathSD: string);
|
|
35
37
|
get missileModelPathHD(): string;
|
|
36
38
|
set missileModelPathHD(missileModelPathHD: string);
|
|
39
|
+
get missileModelPathDE(): string;
|
|
40
|
+
set missileModelPathDE(missileModelPathDE: string);
|
|
37
41
|
get missileMovementArc(): number;
|
|
38
42
|
set missileMovementArc(missileMovementArc: number);
|
|
39
43
|
get missileMovementSpeed(): number;
|
|
@@ -78,6 +78,19 @@ __TS__SetDescriptor(
|
|
|
78
78
|
},
|
|
79
79
|
true
|
|
80
80
|
)
|
|
81
|
+
__TS__SetDescriptor(
|
|
82
|
+
BuffType.prototype,
|
|
83
|
+
"iconPathDE",
|
|
84
|
+
{
|
|
85
|
+
get = function(self)
|
|
86
|
+
return self:getStringField("fart:de")
|
|
87
|
+
end,
|
|
88
|
+
set = function(self, iconPathDE)
|
|
89
|
+
self:setStringField("fart:de", iconPathDE)
|
|
90
|
+
end
|
|
91
|
+
},
|
|
92
|
+
true
|
|
93
|
+
)
|
|
81
94
|
__TS__SetDescriptor(
|
|
82
95
|
BuffType.prototype,
|
|
83
96
|
"isMissileHoming",
|
|
@@ -143,6 +156,19 @@ __TS__SetDescriptor(
|
|
|
143
156
|
},
|
|
144
157
|
true
|
|
145
158
|
)
|
|
159
|
+
__TS__SetDescriptor(
|
|
160
|
+
BuffType.prototype,
|
|
161
|
+
"missileModelPathDE",
|
|
162
|
+
{
|
|
163
|
+
get = function(self)
|
|
164
|
+
return self:getStringField("fmat:de")
|
|
165
|
+
end,
|
|
166
|
+
set = function(self, missileModelPathDE)
|
|
167
|
+
self:setStringField("fmat:de", missileModelPathDE)
|
|
168
|
+
end
|
|
169
|
+
},
|
|
170
|
+
true
|
|
171
|
+
)
|
|
146
172
|
__TS__SetDescriptor(
|
|
147
173
|
BuffType.prototype,
|
|
148
174
|
"missileMovementArc",
|
|
@@ -1,20 +1,50 @@
|
|
|
1
1
|
/** @noSelfInFile */
|
|
2
2
|
import { ArmorSoundType } from "../auxiliary/armor-sound-type";
|
|
3
3
|
import { CombatClassifications } from "../auxiliary/combat-classification";
|
|
4
|
-
import { ObjectDataEntry,
|
|
5
|
-
export type DestructibleTypeId =
|
|
4
|
+
import { ObjectDataEntry, ObjectDataEntryConstructor, CustomObjectDataEntryId } from "../entry";
|
|
5
|
+
export type DestructibleTypeId = CustomObjectDataEntryId & number & {
|
|
6
6
|
readonly __destructibleTypeId: unique symbol;
|
|
7
7
|
};
|
|
8
|
+
export type StandardDestructibleTypeId = DestructibleTypeId & {
|
|
9
|
+
readonly __standardDestructibleTypeId: unique symbol;
|
|
10
|
+
};
|
|
8
11
|
export declare abstract class DestructibleType extends ObjectDataEntry<DestructibleTypeId> {
|
|
12
|
+
static readonly [id: StandardDestructibleTypeId]: ObjectDataEntryConstructor<DestructibleType>;
|
|
9
13
|
private static readonly idGenerator;
|
|
10
14
|
protected static generateId(): number;
|
|
11
15
|
protected static getObjectData(map: WarMap): WarObjects;
|
|
16
|
+
get fixedFacing(): number;
|
|
17
|
+
set fixedFacing(fixedFacing: number);
|
|
18
|
+
get flyOverHeight(): number;
|
|
19
|
+
set flyOverHeight(flyOverHeight: number);
|
|
20
|
+
get modelPath(): string;
|
|
21
|
+
set modelPath(modelPath: string);
|
|
22
|
+
get modelPathSD(): string;
|
|
23
|
+
set modelPathSD(modelPathSD: string);
|
|
24
|
+
get modelPathHD(): string;
|
|
25
|
+
set modelPathHD(modelPathHD: string);
|
|
26
|
+
get modelPathDE(): string;
|
|
27
|
+
set modelPathDE(modelPathDE: string);
|
|
28
|
+
get occlusionHeight(): number;
|
|
29
|
+
set occlusionHeight(occlusionHeight: number);
|
|
12
30
|
get armorSoundType(): ArmorSoundType;
|
|
13
31
|
set armorSoundType(armorSoundType: ArmorSoundType);
|
|
14
32
|
get armorSoundTypeSD(): ArmorSoundType;
|
|
15
33
|
set armorSoundTypeSD(armorSoundTypeSD: ArmorSoundType);
|
|
16
34
|
get armorSoundTypeHD(): ArmorSoundType;
|
|
17
35
|
set armorSoundTypeHD(armorSoundTypeHD: ArmorSoundType);
|
|
36
|
+
get armorSoundTypeDE(): ArmorSoundType;
|
|
37
|
+
set armorSoundTypeDE(armorSoundTypeDE: ArmorSoundType);
|
|
18
38
|
get combatClassifications(): CombatClassifications;
|
|
19
39
|
set combatClassifications(combatClassifications: CombatClassifications);
|
|
40
|
+
get cliffHeight(): number;
|
|
41
|
+
set cliffHeight(cliffHeight: number);
|
|
42
|
+
get isWalkable(): boolean;
|
|
43
|
+
set isWalkable(isWalkable: boolean);
|
|
44
|
+
get pathingTexturePath(): string;
|
|
45
|
+
set pathingTexturePath(pathingTexturePath: string);
|
|
46
|
+
get deadPathingTexturePath(): string;
|
|
47
|
+
set deadPathingTexturePath(deadPathingTexturePath: string);
|
|
48
|
+
get name(): string;
|
|
49
|
+
set name(name: string);
|
|
20
50
|
}
|