warscript 0.0.1-dev.64cec8d → 0.0.1-dev.6564df4
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 +5 -0
- package/attributes.lua +8 -1
- package/config.d.ts +5 -0
- package/config.lua +10 -0
- package/core/types/effect.d.ts +1 -3
- package/core/types/effect.lua +26 -29
- package/core/types/frame.lua +10 -12
- package/core/types/player.lua +3 -1
- package/core/types/playerCamera.d.ts +2 -0
- package/core/types/playerCamera.lua +79 -5
- package/core/types/sound.d.ts +17 -24
- package/core/types/sound.lua +99 -24
- package/core/types/timer.d.ts +8 -8
- package/core/types/timer.lua +39 -23
- package/core/util.lua +6 -1
- package/decl/native.d.ts +844 -788
- package/engine/behavior.d.ts +2 -0
- package/engine/behavior.lua +53 -27
- package/engine/behaviour/ability/apply-buff.d.ts +5 -0
- package/engine/behaviour/ability/apply-buff.lua +32 -0
- package/engine/behaviour/ability/apply-unit-behavior.lua +1 -0
- package/engine/behaviour/ability/damage.d.ts +9 -3
- package/engine/behaviour/ability/damage.lua +26 -38
- package/engine/behaviour/ability/emulate-impact.d.ts +1 -1
- package/engine/behaviour/ability/emulate-impact.lua +22 -8
- 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 -3
- package/engine/behaviour/ability.lua +74 -24
- package/engine/behaviour/unit/stun-immunity.d.ts +5 -3
- package/engine/behaviour/unit/stun-immunity.lua +43 -27
- package/engine/behaviour/unit.d.ts +32 -0
- package/engine/behaviour/unit.lua +185 -4
- package/engine/buff.d.ts +57 -44
- package/engine/buff.lua +273 -221
- package/engine/internal/ability.d.ts +7 -1
- package/engine/internal/ability.lua +64 -24
- package/engine/internal/item/ability.lua +110 -20
- package/engine/internal/item+owner.lua +12 -6
- package/engine/internal/item.d.ts +7 -4
- package/engine/internal/item.lua +141 -35
- package/engine/internal/mechanics/ability-duration.lua +1 -1
- 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/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/unit/ability.d.ts +35 -0
- package/engine/internal/unit/ability.lua +62 -0
- 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/bonus.d.ts +2 -0
- package/engine/internal/unit/bonus.lua +17 -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/item.lua +3 -4
- package/engine/internal/unit/order.d.ts +20 -0
- package/engine/internal/unit/order.lua +136 -0
- package/engine/internal/unit+ability.lua +10 -1
- 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-missile-launch.lua +9 -2
- package/engine/internal/unit.d.ts +31 -8
- package/engine/internal/unit.lua +290 -115
- package/engine/lightning.d.ts +12 -5
- package/engine/lightning.lua +48 -14
- 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 -2
- 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/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/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/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.lua +12 -1
- 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/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/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/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/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 +20 -17
- package/engine/object-data/entry/ability-type.lua +164 -39
- package/engine/object-data/entry/buff-type/applicable.lua +18 -37
- package/engine/object-data/entry/buff-type.d.ts +6 -12
- package/engine/object-data/entry/buff-type.lua +13 -29
- package/engine/object-data/entry/destructible-type.d.ts +1 -1
- package/engine/object-data/entry/item-type.d.ts +1 -1
- package/engine/object-data/entry/item-type.lua +4 -4
- package/engine/object-data/entry/lightning-type.d.ts +1 -1
- package/engine/object-data/entry/sound-preset.d.ts +33 -0
- package/engine/object-data/entry/sound-preset.lua +140 -0
- package/engine/object-data/entry/unit-type.d.ts +21 -5
- package/engine/object-data/entry/unit-type.lua +214 -93
- package/engine/object-data/entry/upgrade.d.ts +1 -1
- package/engine/object-data/entry/upgrade.lua +4 -4
- package/engine/object-data/entry.d.ts +16 -14
- 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 +8 -5
- package/engine/object-field/ability.lua +8 -4
- package/engine/object-field/unit.d.ts +57 -3
- package/engine/object-field/unit.lua +207 -7
- package/engine/object-field.d.ts +17 -6
- package/engine/object-field.lua +190 -90
- 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/fields/unit.d.ts +4 -0
- package/engine/standard/fields/unit.lua +7 -0
- package/engine/text-tag.d.ts +36 -2
- package/engine/text-tag.lua +249 -10
- package/engine/unit.d.ts +2 -0
- package/engine/unit.lua +2 -0
- package/objutil/buff.lua +1 -2
- package/objutil/unit.lua +8 -0
- package/package.json +2 -2
- package/utility/arrays.d.ts +1 -0
- package/utility/arrays.lua +3 -0
- package/utility/callback-array.d.ts +13 -0
- package/utility/callback-array.lua +46 -0
- package/utility/functions.d.ts +8 -0
- package/utility/functions.lua +13 -0
- package/utility/linked-set.d.ts +1 -0
- package/utility/linked-set.lua +3 -0
- package/utility/lua-maps.d.ts +4 -0
- package/utility/lua-maps.lua +20 -0
- package/utility/lua-sets.d.ts +2 -0
- package/utility/lua-sets.lua +7 -0
- package/utility/reflection.lua +11 -7
- package/core/types/order.d.ts +0 -25
- package/core/types/order.lua +0 -55
- package/engine/object-data/entry/ability-type-effects.d.ts +0 -2
- package/engine/object-data/entry/ability-type-effects.lua +0 -89
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
local ____lualib = require("lualib_bundle")
|
|
2
2
|
local __TS__Class = ____lualib.__TS__Class
|
|
3
3
|
local __TS__ClassExtends = ____lualib.__TS__ClassExtends
|
|
4
|
-
local __TS__New = ____lualib.__TS__New
|
|
5
4
|
local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
|
|
5
|
+
local __TS__InstanceOf = ____lualib.__TS__InstanceOf
|
|
6
6
|
local ____exports = {}
|
|
7
|
+
local ____unit = require("engine.internal.unit")
|
|
8
|
+
local Unit = ____unit.Unit
|
|
9
|
+
require("engine.internal.unit.ability")
|
|
10
|
+
local ____timer = require("core.types.timer")
|
|
11
|
+
local Timer = ____timer.Timer
|
|
12
|
+
local ____effect = require("core.types.effect")
|
|
13
|
+
local Effect = ____effect.Effect
|
|
7
14
|
local ____lua_2Dmaps = require("utility.lua-maps")
|
|
8
15
|
local mapValues = ____lua_2Dmaps.mapValues
|
|
9
16
|
local ____arrays = require("utility.arrays")
|
|
@@ -13,7 +20,7 @@ local mapIndexed = ____arrays.mapIndexed
|
|
|
13
20
|
local ____attachment_2Dpreset = require("engine.object-data.auxiliary.attachment-preset")
|
|
14
21
|
local extractAttachmentPresetInputModelPath = ____attachment_2Dpreset.extractAttachmentPresetInputModelPath
|
|
15
22
|
local extractAttachmentPresetInputNodeFQN = ____attachment_2Dpreset.extractAttachmentPresetInputNodeFQN
|
|
16
|
-
local
|
|
23
|
+
local toEffectPreset = ____attachment_2Dpreset.toEffectPreset
|
|
17
24
|
local ____combat_2Dclassification = require("engine.object-data.auxiliary.combat-classification")
|
|
18
25
|
local combatClassificationsToStringArray = ____combat_2Dclassification.combatClassificationsToStringArray
|
|
19
26
|
local stringArrayToCombatClassifications = ____combat_2Dclassification.stringArrayToCombatClassifications
|
|
@@ -24,13 +31,19 @@ local ____entry = require("engine.object-data.entry")
|
|
|
24
31
|
local extractObjectDataEntryLevelFieldValue = ____entry.extractObjectDataEntryLevelFieldValue
|
|
25
32
|
local ObjectDataEntry = ____entry.ObjectDataEntry
|
|
26
33
|
local ____object_2Ddata_2Dentry_2Did_2Dgenerator = require("engine.object-data.utility.object-data-entry-id-generator")
|
|
27
|
-
local
|
|
34
|
+
local abilityTypeIdGenerator = ____object_2Ddata_2Dentry_2Did_2Dgenerator.abilityTypeIdGenerator
|
|
28
35
|
local ____upgrade = require("engine.object-data.entry.upgrade")
|
|
29
36
|
local Upgrade = ____upgrade.Upgrade
|
|
37
|
+
local ____sound = require("core.types.sound")
|
|
38
|
+
local isSoundLabelCustom = ____sound.isSoundLabelCustom
|
|
39
|
+
local Sound3D = ____sound.Sound3D
|
|
40
|
+
local SoundSettings = ____sound.SoundSettings
|
|
41
|
+
local castAnimationFQNByAbilityTypeId = {}
|
|
30
42
|
local isButtonVisibleFalseAbilityTypes = {}
|
|
31
43
|
local casterCastingEffectPresetsByAbilityTypeId = {}
|
|
32
44
|
local casterChannelingEffectPresetsByAbilityTypeId = {}
|
|
33
45
|
local targetCastingEffectPresetsByAbilityTypeId = {}
|
|
46
|
+
local targetEffectSoundPresetByAbilityTypeId = {}
|
|
34
47
|
____exports.AbilityType = __TS__Class()
|
|
35
48
|
local AbilityType = ____exports.AbilityType
|
|
36
49
|
AbilityType.name = "AbilityType"
|
|
@@ -45,10 +58,7 @@ end
|
|
|
45
58
|
function AbilityType.getObjectData(self, map)
|
|
46
59
|
return map.objects.ability
|
|
47
60
|
end
|
|
48
|
-
AbilityType.idGenerator =
|
|
49
|
-
ObjectDataEntryIdGenerator,
|
|
50
|
-
fourCC("A000")
|
|
51
|
-
)
|
|
61
|
+
AbilityType.idGenerator = abilityTypeIdGenerator
|
|
52
62
|
__TS__SetDescriptor(
|
|
53
63
|
AbilityType.prototype,
|
|
54
64
|
"channelingAnimation",
|
|
@@ -109,7 +119,7 @@ __TS__SetDescriptor(
|
|
|
109
119
|
return casterCastingEffectPresetsByAbilityTypeId[self.id] or ({})
|
|
110
120
|
end,
|
|
111
121
|
set = function(self, casterCastingEffectPresets)
|
|
112
|
-
casterCastingEffectPresetsByAbilityTypeId[self.id] = map(casterCastingEffectPresets,
|
|
122
|
+
casterCastingEffectPresetsByAbilityTypeId[self.id] = map(casterCastingEffectPresets, toEffectPreset)
|
|
113
123
|
end
|
|
114
124
|
},
|
|
115
125
|
true
|
|
@@ -122,7 +132,7 @@ __TS__SetDescriptor(
|
|
|
122
132
|
return casterChannelingEffectPresetsByAbilityTypeId[self.id] or ({})
|
|
123
133
|
end,
|
|
124
134
|
set = function(self, casterChannelingEffectPresets)
|
|
125
|
-
casterChannelingEffectPresetsByAbilityTypeId[self.id] = map(casterChannelingEffectPresets,
|
|
135
|
+
casterChannelingEffectPresetsByAbilityTypeId[self.id] = map(casterChannelingEffectPresets, toEffectPreset)
|
|
126
136
|
end
|
|
127
137
|
},
|
|
128
138
|
true
|
|
@@ -267,10 +277,10 @@ __TS__SetDescriptor(
|
|
|
267
277
|
"lightningTypeIds",
|
|
268
278
|
{
|
|
269
279
|
get = function(self)
|
|
270
|
-
return self:
|
|
280
|
+
return self:getObjectDataEntryNumericIdsField("alig")
|
|
271
281
|
end,
|
|
272
282
|
set = function(self, lightningTypeIds)
|
|
273
|
-
self:
|
|
283
|
+
self:setObjectDataEntryNumericIdsField("alig", lightningTypeIds)
|
|
274
284
|
end
|
|
275
285
|
},
|
|
276
286
|
true
|
|
@@ -361,7 +371,7 @@ __TS__SetDescriptor(
|
|
|
361
371
|
return targetCastingEffectPresetsByAbilityTypeId[self.id] or ({})
|
|
362
372
|
end,
|
|
363
373
|
set = function(self, targetCastingEffectPresets)
|
|
364
|
-
targetCastingEffectPresetsByAbilityTypeId[self.id] = map(targetCastingEffectPresets,
|
|
374
|
+
targetCastingEffectPresetsByAbilityTypeId[self.id] = map(targetCastingEffectPresets, toEffectPreset)
|
|
365
375
|
end
|
|
366
376
|
},
|
|
367
377
|
true
|
|
@@ -504,7 +514,7 @@ __TS__SetDescriptor(
|
|
|
504
514
|
"techTreeDependencies",
|
|
505
515
|
{
|
|
506
516
|
get = function(self)
|
|
507
|
-
local techTreeDependencyIds = self:
|
|
517
|
+
local techTreeDependencyIds = self:getObjectDataEntryNumericIdsField("areq")
|
|
508
518
|
local techTreeDependencyInternalLevels = self:getNumbersField("arqa")
|
|
509
519
|
return mapIndexed(
|
|
510
520
|
techTreeDependencyIds,
|
|
@@ -524,7 +534,7 @@ __TS__SetDescriptor(
|
|
|
524
534
|
map(techTreeDependencies, extractTechTreeDependencyInputLevel),
|
|
525
535
|
function(techTreeDependencyLevel) return techTreeDependencyLevel + 1 end
|
|
526
536
|
)
|
|
527
|
-
self:
|
|
537
|
+
self:setObjectDataEntryNumericIdsField("areq", techTreeDependencyIds)
|
|
528
538
|
self:setNumbersField("arqa", techTreeDependencyInternalLevels)
|
|
529
539
|
end
|
|
530
540
|
},
|
|
@@ -714,26 +724,40 @@ __TS__SetDescriptor(
|
|
|
714
724
|
)
|
|
715
725
|
__TS__SetDescriptor(
|
|
716
726
|
AbilityType.prototype,
|
|
717
|
-
"
|
|
727
|
+
"casterEffectSoundPresetId",
|
|
718
728
|
{
|
|
719
729
|
get = function(self)
|
|
720
|
-
|
|
730
|
+
local casterEffectSoundPresetId = self:getStringField("aefs")
|
|
731
|
+
return casterEffectSoundPresetId ~= "" and casterEffectSoundPresetId or nil
|
|
721
732
|
end,
|
|
722
|
-
set = function(self,
|
|
723
|
-
self:setStringField("aefs",
|
|
733
|
+
set = function(self, casterEffectSoundPresetId)
|
|
734
|
+
self:setStringField("aefs", casterEffectSoundPresetId or "")
|
|
724
735
|
end
|
|
725
736
|
},
|
|
726
737
|
true
|
|
727
738
|
)
|
|
728
739
|
__TS__SetDescriptor(
|
|
729
740
|
AbilityType.prototype,
|
|
730
|
-
"
|
|
741
|
+
"casterEffectLoopingSoundPresetId",
|
|
731
742
|
{
|
|
732
743
|
get = function(self)
|
|
733
744
|
return self:getStringField("aefl")
|
|
734
745
|
end,
|
|
735
|
-
set = function(self,
|
|
736
|
-
self:setStringField("aefl",
|
|
746
|
+
set = function(self, casterEffectLoopingSoundPresetId)
|
|
747
|
+
self:setStringField("aefl", casterEffectLoopingSoundPresetId)
|
|
748
|
+
end
|
|
749
|
+
},
|
|
750
|
+
true
|
|
751
|
+
)
|
|
752
|
+
__TS__SetDescriptor(
|
|
753
|
+
AbilityType.prototype,
|
|
754
|
+
"targetEffectSoundPresetId",
|
|
755
|
+
{
|
|
756
|
+
get = function(self)
|
|
757
|
+
return targetEffectSoundPresetByAbilityTypeId[self.id]
|
|
758
|
+
end,
|
|
759
|
+
set = function(self, targetEffectSoundPresetId)
|
|
760
|
+
targetEffectSoundPresetByAbilityTypeId[self.id] = targetEffectSoundPresetId
|
|
737
761
|
end
|
|
738
762
|
},
|
|
739
763
|
true
|
|
@@ -792,10 +816,10 @@ __TS__SetDescriptor(
|
|
|
792
816
|
"buffTypeIds",
|
|
793
817
|
{
|
|
794
818
|
get = function(self)
|
|
795
|
-
return self:
|
|
819
|
+
return self:getObjectDataEntryNumericIdsLevelField("abuf")
|
|
796
820
|
end,
|
|
797
821
|
set = function(self, buffTypeIds)
|
|
798
|
-
self:
|
|
822
|
+
self:setObjectDataEntryNumericIdsLevelField("abuf", buffTypeIds)
|
|
799
823
|
end
|
|
800
824
|
},
|
|
801
825
|
true
|
|
@@ -844,10 +868,10 @@ __TS__SetDescriptor(
|
|
|
844
868
|
"effectBuffTypeIds",
|
|
845
869
|
{
|
|
846
870
|
get = function(self)
|
|
847
|
-
return self:
|
|
871
|
+
return self:getObjectDataEntryNumericIdsLevelField("aeff")
|
|
848
872
|
end,
|
|
849
873
|
set = function(self, effectBuffTypeIds)
|
|
850
|
-
self:
|
|
874
|
+
self:setObjectDataEntryNumericIdsLevelField("aeff", effectBuffTypeIds)
|
|
851
875
|
end
|
|
852
876
|
},
|
|
853
877
|
true
|
|
@@ -950,39 +974,140 @@ local _ = postcompile(function()
|
|
|
950
974
|
abilityType.buttonPositionY = -11
|
|
951
975
|
end
|
|
952
976
|
end)
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
977
|
+
for abilityTypeId, animationFQN in pairs(postcompile(function() return castAnimationFQNByAbilityTypeId end)) do
|
|
978
|
+
Unit.abilityCastingStartEvent[abilityTypeId]:addListener(
|
|
979
|
+
4,
|
|
980
|
+
function(caster, ability)
|
|
981
|
+
if ability:getField(ABILITY_RLF_CASTING_TIME) ~= 0 then
|
|
982
|
+
Timer:run(caster, "playAnimation", animationFQN)
|
|
983
|
+
end
|
|
984
|
+
end
|
|
985
|
+
)
|
|
986
|
+
end
|
|
987
|
+
for abilityTypeId, soundPresetId in pairs(postcompile(function() return targetEffectSoundPresetByAbilityTypeId end)) do
|
|
988
|
+
if soundPresetId ~= nil then
|
|
989
|
+
Unit.abilityWidgetTargetChannelingStartEvent[abilityTypeId]:addListener(
|
|
990
|
+
4,
|
|
991
|
+
function(caster, ability, target)
|
|
992
|
+
if __TS__InstanceOf(target, Unit) then
|
|
993
|
+
Sound3D:playFromLabel(soundPresetId, SoundSettings.Ability, target)
|
|
994
|
+
else
|
|
995
|
+
Sound3D:playFromLabel(soundPresetId, SoundSettings.Ability, target.x, target.y)
|
|
996
|
+
end
|
|
997
|
+
end
|
|
998
|
+
)
|
|
999
|
+
Unit.abilityPointTargetChannelingStartEvent[abilityTypeId]:addListener(
|
|
1000
|
+
4,
|
|
1001
|
+
function(caster, ability, x, y)
|
|
1002
|
+
Sound3D:playFromLabel(soundPresetId, SoundSettings.Ability, x, y)
|
|
1003
|
+
end
|
|
1004
|
+
)
|
|
1005
|
+
end
|
|
1006
|
+
end
|
|
1007
|
+
Unit.abilityChannelingStartEvent:addListener(function(caster, ability)
|
|
1008
|
+
local soundPresetId = ability:getField(ABILITY_SF_EFFECT_SOUND)
|
|
1009
|
+
if isSoundLabelCustom(soundPresetId) then
|
|
1010
|
+
Sound3D:playFromLabel(soundPresetId, SoundSettings.Ability, caster)
|
|
1011
|
+
end
|
|
1012
|
+
end)
|
|
1013
|
+
local casterCastingEffectModelPathsByAbilityTypeId = postcompile(function()
|
|
956
1014
|
return mapValues(
|
|
957
1015
|
casterCastingEffectPresetsByAbilityTypeId,
|
|
958
1016
|
function(casterCastingEffectPresets) return map(casterCastingEffectPresets, extractAttachmentPresetInputModelPath) end
|
|
959
1017
|
)
|
|
960
1018
|
end)
|
|
961
|
-
|
|
962
|
-
-- @internal For use by internal systems only.
|
|
963
|
-
____exports.casterCastingEffectAttachmentPointsByAbilityTypeId = postcompile(function()
|
|
1019
|
+
local casterCastingEffectAttachmentPointsByAbilityTypeId = postcompile(function()
|
|
964
1020
|
return mapValues(
|
|
965
1021
|
casterCastingEffectPresetsByAbilityTypeId,
|
|
966
1022
|
function(casterCastingEffectPresets) return map(casterCastingEffectPresets, extractAttachmentPresetInputNodeFQN) end
|
|
967
1023
|
)
|
|
968
1024
|
end)
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
1025
|
+
local casterCastingEffectParametersByAbilityTypeId = postcompile(function()
|
|
1026
|
+
return mapValues(
|
|
1027
|
+
casterCastingEffectPresetsByAbilityTypeId,
|
|
1028
|
+
function(casterCastingEffectPresets) return map(casterCastingEffectPresets, "parameters") end
|
|
1029
|
+
)
|
|
1030
|
+
end)
|
|
1031
|
+
local casterCastingEffectsByCaster = {}
|
|
1032
|
+
local function handleAbilityCastingStartEvent(caster, ability)
|
|
1033
|
+
local effectModelPaths = casterCastingEffectModelPathsByAbilityTypeId[ability.typeId]
|
|
1034
|
+
local attachmentPoints = casterCastingEffectAttachmentPointsByAbilityTypeId[ability.typeId]
|
|
1035
|
+
local parameters = casterCastingEffectParametersByAbilityTypeId[ability.typeId]
|
|
1036
|
+
local effects = {}
|
|
1037
|
+
if effectModelPaths ~= nil then
|
|
1038
|
+
for i = 1, #effectModelPaths do
|
|
1039
|
+
local effectModelPath = effectModelPaths[i]
|
|
1040
|
+
local attachmentPoint = attachmentPoints and attachmentPoints[i]
|
|
1041
|
+
if attachmentPoint == nil or attachmentPoint == "" then
|
|
1042
|
+
attachmentPoint = "origin"
|
|
1043
|
+
end
|
|
1044
|
+
effects[i] = Effect:create(effectModelPath, caster, attachmentPoint, parameters and parameters[i])
|
|
1045
|
+
end
|
|
1046
|
+
end
|
|
1047
|
+
casterCastingEffectsByCaster[caster] = effects
|
|
1048
|
+
end
|
|
1049
|
+
local function handleAbilityStopCastingEvent(caster)
|
|
1050
|
+
local effects = casterCastingEffectsByCaster[caster]
|
|
1051
|
+
if effects ~= nil then
|
|
1052
|
+
for i = 1, #effects do
|
|
1053
|
+
effects[i]:destroy()
|
|
1054
|
+
end
|
|
1055
|
+
casterCastingEffectsByCaster[caster] = nil
|
|
1056
|
+
end
|
|
1057
|
+
end
|
|
1058
|
+
for abilityTypeId in pairs(casterCastingEffectModelPathsByAbilityTypeId) do
|
|
1059
|
+
Unit.abilityCastingStartEvent[abilityTypeId]:addListener(4, handleAbilityCastingStartEvent)
|
|
1060
|
+
Unit.abilityChannelingStartEvent[abilityTypeId]:addListener(4, handleAbilityStopCastingEvent)
|
|
1061
|
+
Unit.abilityStopEvent[abilityTypeId]:addListener(4, handleAbilityStopCastingEvent)
|
|
1062
|
+
end
|
|
1063
|
+
local casterChannelingEffectModelPathsByAbilityTypeId = postcompile(function()
|
|
972
1064
|
return mapValues(
|
|
973
1065
|
casterChannelingEffectPresetsByAbilityTypeId,
|
|
974
1066
|
function(casterChannelingEffectPresets) return map(casterChannelingEffectPresets, extractAttachmentPresetInputModelPath) end
|
|
975
1067
|
)
|
|
976
1068
|
end)
|
|
977
|
-
|
|
978
|
-
-- @internal For use by internal systems only.
|
|
979
|
-
____exports.casterChannelingEffectAttachmentPointsByAbilityTypeId = postcompile(function()
|
|
1069
|
+
local casterChannelingEffectAttachmentPointsByAbilityTypeId = postcompile(function()
|
|
980
1070
|
return mapValues(
|
|
981
1071
|
casterChannelingEffectPresetsByAbilityTypeId,
|
|
982
1072
|
function(casterChannelingEffectPresets) return map(casterChannelingEffectPresets, extractAttachmentPresetInputNodeFQN) end
|
|
983
1073
|
)
|
|
984
1074
|
end)
|
|
985
|
-
|
|
986
|
-
|
|
1075
|
+
local casterChannelingEffectParametersByAbilityTypeId = postcompile(function()
|
|
1076
|
+
return mapValues(
|
|
1077
|
+
casterChannelingEffectPresetsByAbilityTypeId,
|
|
1078
|
+
function(casterChannelingEffectPresets) return map(casterChannelingEffectPresets, "parameters") end
|
|
1079
|
+
)
|
|
987
1080
|
end)
|
|
1081
|
+
local casterChannelingEffectsByCaster = {}
|
|
1082
|
+
local function handleAbilityChannelingStartEvent(caster, ability)
|
|
1083
|
+
local effectModelPaths = casterChannelingEffectModelPathsByAbilityTypeId[ability.typeId]
|
|
1084
|
+
local attachmentPoints = casterChannelingEffectAttachmentPointsByAbilityTypeId[ability.typeId]
|
|
1085
|
+
local parameters = casterChannelingEffectParametersByAbilityTypeId[ability.typeId]
|
|
1086
|
+
local effects = {}
|
|
1087
|
+
if effectModelPaths ~= nil then
|
|
1088
|
+
for i = 1, #effectModelPaths do
|
|
1089
|
+
local effectModelPath = effectModelPaths[i]
|
|
1090
|
+
local attachmentPoint = attachmentPoints and attachmentPoints[i]
|
|
1091
|
+
if attachmentPoint == nil or attachmentPoint == "" then
|
|
1092
|
+
attachmentPoint = "origin"
|
|
1093
|
+
end
|
|
1094
|
+
effects[i] = Effect:create(effectModelPath, caster, attachmentPoint, parameters and parameters[i])
|
|
1095
|
+
end
|
|
1096
|
+
end
|
|
1097
|
+
casterChannelingEffectsByCaster[caster] = effects
|
|
1098
|
+
end
|
|
1099
|
+
local function handleAbilityStopChannelingEvent(caster)
|
|
1100
|
+
local effects = casterChannelingEffectsByCaster[caster]
|
|
1101
|
+
if effects ~= nil then
|
|
1102
|
+
for i = 1, #effects do
|
|
1103
|
+
effects[i]:destroy()
|
|
1104
|
+
end
|
|
1105
|
+
casterChannelingEffectsByCaster[caster] = nil
|
|
1106
|
+
end
|
|
1107
|
+
end
|
|
1108
|
+
for abilityTypeId in pairs(casterChannelingEffectModelPathsByAbilityTypeId) do
|
|
1109
|
+
Unit.abilityChannelingStartEvent[abilityTypeId]:addListener(4, handleAbilityChannelingStartEvent)
|
|
1110
|
+
Unit.abilityChannelingFinishEvent[abilityTypeId]:addListener(4, handleAbilityStopChannelingEvent)
|
|
1111
|
+
Unit.abilityStopEvent[abilityTypeId]:addListener(4, handleAbilityStopChannelingEvent)
|
|
1112
|
+
end
|
|
988
1113
|
return ____exports
|
|
@@ -10,8 +10,8 @@ local ____exports = {}
|
|
|
10
10
|
local preparePhysicalPositiveApplicatorAbility
|
|
11
11
|
local ____ability_2Dtype = require("engine.object-data.entry.ability-type")
|
|
12
12
|
local AbilityType = ____ability_2Dtype.AbilityType
|
|
13
|
-
local
|
|
14
|
-
local
|
|
13
|
+
local ____curse = require("engine.object-data.entry.ability-type.curse")
|
|
14
|
+
local CurseAbilityType = ____curse.CurseAbilityType
|
|
15
15
|
local ____searing_2Darrows = require("engine.object-data.entry.ability-type.searing-arrows")
|
|
16
16
|
local SearingArrowsAbilityType = ____searing_2Darrows.SearingArrowsAbilityType
|
|
17
17
|
local ____slow_2Dpoison = require("engine.object-data.entry.ability-type.slow-poison")
|
|
@@ -30,7 +30,6 @@ local ____arrays = require("utility.arrays")
|
|
|
30
30
|
local chunked = ____arrays.chunked
|
|
31
31
|
local map = ____arrays.map
|
|
32
32
|
local max = ____arrays.max
|
|
33
|
-
local toLuaSet = ____arrays.toLuaSet
|
|
34
33
|
local ____blood_2Dlust = require("engine.object-data.entry.ability-type.blood-lust")
|
|
35
34
|
local BloodLustAbilityType = ____blood_2Dlust.BloodLustAbilityType
|
|
36
35
|
local ____berserk = require("engine.object-data.entry.ability-type.berserk")
|
|
@@ -43,22 +42,11 @@ local ____permanent_2Dimmolation = require("engine.object-data.entry.ability-typ
|
|
|
43
42
|
local PermanentImmolationAbilityType = ____permanent_2Dimmolation.PermanentImmolationAbilityType
|
|
44
43
|
local ____cast_2Dability = require("engine.internal.mechanics.cast-ability")
|
|
45
44
|
local castAbility = ____cast_2Dability.castAbility
|
|
46
|
-
local createItem = CreateItem
|
|
47
|
-
local getAbilityId = BlzGetAbilityId
|
|
48
|
-
local getItemAbility = BlzGetItemAbility
|
|
49
|
-
local getOwningPlayer = GetOwningPlayer
|
|
50
|
-
local getUnitAbilityByIndex = BlzGetUnitAbilityByIndex
|
|
51
|
-
local itemAddAbility = BlzItemAddAbility
|
|
52
|
-
local removeItem = RemoveItem
|
|
53
45
|
local setAbilityIntegerField = BlzSetAbilityIntegerField
|
|
54
46
|
local setAbilityRealLevelField = BlzSetAbilityRealLevelField
|
|
55
|
-
local setItemBooleanField = BlzSetItemBooleanField
|
|
56
47
|
local setPlayerTechResearched = SetPlayerTechResearched
|
|
57
48
|
local unitAddAbility = UnitAddAbility
|
|
58
|
-
local unitAddItem = UnitAddItem
|
|
59
49
|
local unitDisableAbility = BlzUnitDisableAbility
|
|
60
|
-
local unitDropItemSlot = UnitDropItemSlot
|
|
61
|
-
local unitInventorySize = UnitInventorySize
|
|
62
50
|
local unitRemoveAbility = UnitRemoveAbility
|
|
63
51
|
local compiletimeApplicableBuffTypes = {}
|
|
64
52
|
____exports.ApplicableBuffType = __TS__Class()
|
|
@@ -86,7 +74,7 @@ local applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId, applicatorU
|
|
|
86
74
|
abilityType.buttonPositionY = -11
|
|
87
75
|
abilityType.casterAttachmentPresets = {}
|
|
88
76
|
abilityType.targetEffectPresets = {}
|
|
89
|
-
abilityType.
|
|
77
|
+
abilityType.casterEffectSoundPresetId = nil
|
|
90
78
|
abilityType.learnLevelMinimum = 6
|
|
91
79
|
abilityType.race = "other"
|
|
92
80
|
abilityType.shouldCheckTechTreeDependencies = false
|
|
@@ -113,12 +101,10 @@ local applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId, applicatorU
|
|
|
113
101
|
local applicatorAbilityTypeIdByApplicatorType = {}
|
|
114
102
|
if applicableBuffType.resistanceType == 1 or applicableBuffType.resistanceType == nil then
|
|
115
103
|
if applicableBuffType.polarity == 2 or applicableBuffType.polarity == nil then
|
|
116
|
-
local applicatorAbilityType = prepareAbilityType(
|
|
117
|
-
applicatorAbilityType.
|
|
118
|
-
applicatorAbilityType.attackSpeedDecreaseFactor = 0
|
|
119
|
-
applicatorAbilityType.damageDecreaseFactor = 0
|
|
104
|
+
local applicatorAbilityType = prepareAbilityType(CurseAbilityType, applicableBuffType)
|
|
105
|
+
applicatorAbilityType.missProbability = 0
|
|
120
106
|
applicatorAbilityType.buffTypeIds = {applicableBuffType.id}
|
|
121
|
-
applicatorAbilityTypeIdByApplicatorType[
|
|
107
|
+
applicatorAbilityTypeIdByApplicatorType[852190] = applicatorAbilityType.id
|
|
122
108
|
end
|
|
123
109
|
if applicableBuffType.polarity == 1 or applicableBuffType.polarity == nil then
|
|
124
110
|
local applicatorAbilityType = prepareAbilityType(BloodLustAbilityType, applicableBuffType)
|
|
@@ -135,6 +121,10 @@ local applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId, applicatorU
|
|
|
135
121
|
applicatorAbilityType.damagePerSecond = 0
|
|
136
122
|
applicatorAbilityType.movementSpeedDecreaseFactor = 0
|
|
137
123
|
applicatorAbilityType.attackSpeedDecreaseFactor = 0
|
|
124
|
+
applicatorAbilityType.isDamageStacking = false
|
|
125
|
+
applicatorAbilityType.isMovementSpeedFactorStacking = false
|
|
126
|
+
applicatorAbilityType.isAttackSpeedFactorStacking = false
|
|
127
|
+
applicatorAbilityType.isAbleToKill = false
|
|
138
128
|
applicatorAbilityType.buffTypeIds = {applicableBuffType.id, applicableBuffType.id}
|
|
139
129
|
applicatorAbilityTypeIdByApplicatorType[852173] = applicatorAbilityType.id
|
|
140
130
|
end
|
|
@@ -142,6 +132,7 @@ local applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId, applicatorU
|
|
|
142
132
|
local applicatorAbilityType = prepareAbilityType(BerserkAbilityType, applicableBuffType)
|
|
143
133
|
applicatorAbilityType.attackSpeedIncreaseFactor = 0
|
|
144
134
|
applicatorAbilityType.movementSpeedIncreaseFactor = 0
|
|
135
|
+
applicatorAbilityType.receivedDamageIncreaseFactor = 0
|
|
145
136
|
applicatorAbilityType.buffTypeIds = {applicableBuffType.id}
|
|
146
137
|
if applicatorAbilityType.levelCount > 1 then
|
|
147
138
|
multilevelPhysicalPositiveApplicatorAbilityTypes[#multilevelPhysicalPositiveApplicatorAbilityTypes + 1] = applicatorAbilityType
|
|
@@ -204,15 +195,6 @@ local EVASION_ABILITY_TYPE_IDS = postcompile(function()
|
|
|
204
195
|
"AIcs"
|
|
205
196
|
}, fourCC))
|
|
206
197
|
end)
|
|
207
|
-
local INVENTORY_ABILITY_TYPE_IDS = postcompile(function()
|
|
208
|
-
return toLuaSet(AbilityType:getAllIdsByBaseIds(map({
|
|
209
|
-
"AInv",
|
|
210
|
-
"Aihn",
|
|
211
|
-
"Aien",
|
|
212
|
-
"Aion",
|
|
213
|
-
"Aiun"
|
|
214
|
-
}, fourCC)))
|
|
215
|
-
end)
|
|
216
198
|
local SEARING_ARROWS_DUMMY_ABILITY_TYPE_ID = compiletime(function()
|
|
217
199
|
local abilityType = SearingArrowsAbilityType:create()
|
|
218
200
|
abilityType.isInternal = true
|
|
@@ -244,8 +226,8 @@ Unit.abilityCastingStartEvent[SEARING_ARROWS_DUMMY_ABILITY_TYPE_ID]:addListener(
|
|
|
244
226
|
)
|
|
245
227
|
---
|
|
246
228
|
-- @internal For use by internal systems only.
|
|
247
|
-
____exports.internalApplyBuff = function(unit, applicableBuffTypeId, polarity, resistanceType, level, duration, spellStealPriority, learnLevelMinimum,
|
|
248
|
-
local applicatorType = polarity == 1 and (resistanceType == 1 and 852101 or 852100) or (polarity == 2 and (resistanceType == 1 and
|
|
229
|
+
____exports.internalApplyBuff = function(unit, applicableBuffTypeId, polarity, resistanceType, level, duration, spellStealPriority, learnLevelMinimum, missProbability)
|
|
230
|
+
local applicatorType = polarity == 1 and (resistanceType == 1 and 852101 or 852100) or (polarity == 2 and (resistanceType == 1 and 852190 or 852173) or 0)
|
|
249
231
|
local ____opt_1 = applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId[applicableBuffTypeId]
|
|
250
232
|
local applicatorAbilityTypeId = ____opt_1 and ____opt_1[applicatorType]
|
|
251
233
|
if applicatorAbilityTypeId == nil then
|
|
@@ -267,8 +249,7 @@ ____exports.internalApplyBuff = function(unit, applicableBuffTypeId, polarity, r
|
|
|
267
249
|
applicatorAbilityTypeId,
|
|
268
250
|
preparePhysicalPositiveApplicatorAbility,
|
|
269
251
|
level,
|
|
270
|
-
duration or 0
|
|
271
|
-
movementSpeedIncreaseFactor
|
|
252
|
+
duration or 0
|
|
272
253
|
)
|
|
273
254
|
if level ~= nil and level > 0 then
|
|
274
255
|
local upgradeId = applicatorUpgradeIdByApplicatorAbilityTypeId[applicatorAbilityTypeId]
|
|
@@ -298,6 +279,9 @@ ____exports.internalApplyBuff = function(unit, applicableBuffTypeId, polarity, r
|
|
|
298
279
|
ability:setField(ABILITY_RLF_DURATION_HERO, level, actualDuration)
|
|
299
280
|
ability:setField(ABILITY_IF_PRIORITY, spellStealPriority or 0)
|
|
300
281
|
ability:setField(ABILITY_IF_REQUIRED_LEVEL, learnLevelMinimum or 6)
|
|
282
|
+
if missProbability ~= nil and applicatorType == 852190 then
|
|
283
|
+
ability:setField(ABILITY_RLF_CHANCE_TO_MISS_CRS, missProbability)
|
|
284
|
+
end
|
|
301
285
|
end,
|
|
302
286
|
applicatorType,
|
|
303
287
|
unit
|
|
@@ -309,16 +293,13 @@ ____exports.internalApplyBuff = function(unit, applicableBuffTypeId, polarity, r
|
|
|
309
293
|
end
|
|
310
294
|
return success
|
|
311
295
|
end
|
|
312
|
-
preparePhysicalPositiveApplicatorAbility = function(ability, level, duration
|
|
296
|
+
preparePhysicalPositiveApplicatorAbility = function(ability, level, duration)
|
|
313
297
|
if level == nil then
|
|
314
298
|
setAbilityIntegerField(ability, ABILITY_IF_LEVELS, 1)
|
|
315
299
|
level = 1
|
|
316
300
|
end
|
|
317
301
|
setAbilityRealLevelField(ability, ABILITY_RLF_DURATION_NORMAL, level, duration)
|
|
318
302
|
setAbilityRealLevelField(ability, ABILITY_RLF_DURATION_HERO, level, duration)
|
|
319
|
-
if movementSpeedIncreaseFactor ~= nil then
|
|
320
|
-
setAbilityRealLevelField(ability, ABILITY_RLF_MOVEMENT_SPEED_INCREASE_BSK1, level, movementSpeedIncreaseFactor)
|
|
321
|
-
end
|
|
322
303
|
end
|
|
323
304
|
---
|
|
324
305
|
-- @internal For use by internal systems only.
|
|
@@ -3,12 +3,16 @@ 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, ObjectDataEntryId } from "../entry";
|
|
6
|
+
import { ObjectDataEntry, ObjectDataEntryConstructor, ObjectDataEntryId } from "../entry";
|
|
7
7
|
import { LightningTypeId } from "./lightning-type";
|
|
8
|
-
export type BuffTypeId = ObjectDataEntryId & {
|
|
8
|
+
export type BuffTypeId = ObjectDataEntryId & number & {
|
|
9
9
|
readonly __buffTypeId: unique symbol;
|
|
10
10
|
};
|
|
11
|
+
export type StandardBuffTypeId = BuffTypeId & {
|
|
12
|
+
readonly __standardBuffTypeId: unique symbol;
|
|
13
|
+
};
|
|
11
14
|
export declare abstract class BuffType<Id extends BuffTypeId = BuffTypeId> extends ObjectDataEntry<Id> {
|
|
15
|
+
static readonly [id: StandardBuffTypeId]: ObjectDataEntryConstructor<BuffType>;
|
|
12
16
|
private static readonly idGenerator;
|
|
13
17
|
protected static generateId(): number;
|
|
14
18
|
protected static getObjectData(map: WarMap): WarObjects;
|
|
@@ -51,13 +55,3 @@ export declare abstract class BuffType<Id extends BuffTypeId = BuffTypeId> exten
|
|
|
51
55
|
get tooltipExtendedText(): string;
|
|
52
56
|
set tooltipExtendedText(tooltipText: string);
|
|
53
57
|
}
|
|
54
|
-
declare const AvatarBuffType_base: typeof BuffType;
|
|
55
|
-
export declare class AvatarBuffType extends AvatarBuffType_base {
|
|
56
|
-
}
|
|
57
|
-
declare const DevotionAuraBuffType_base: typeof BuffType;
|
|
58
|
-
export declare class DevotionAuraBuffType extends DevotionAuraBuffType_base {
|
|
59
|
-
}
|
|
60
|
-
declare const DivineShieldBuffType_base: typeof BuffType;
|
|
61
|
-
export declare class DivineShieldBuffType extends DivineShieldBuffType_base {
|
|
62
|
-
}
|
|
63
|
-
export {};
|
|
@@ -6,6 +6,8 @@ local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
|
|
|
6
6
|
local ____exports = {}
|
|
7
7
|
local ____arrays = require("utility.arrays")
|
|
8
8
|
local array = ____arrays.array
|
|
9
|
+
local ____reflection = require("utility.reflection")
|
|
10
|
+
local implementReadonlyNumberIndexSupplier = ____reflection.implementReadonlyNumberIndexSupplier
|
|
9
11
|
local ____entry = require("engine.object-data.entry")
|
|
10
12
|
local ObjectDataEntry = ____entry.ObjectDataEntry
|
|
11
13
|
local ____object_2Ddata_2Dentry_2Did_2Dgenerator = require("engine.object-data.utility.object-data-entry-id-generator")
|
|
@@ -94,10 +96,10 @@ __TS__SetDescriptor(
|
|
|
94
96
|
"lightningTypeIds",
|
|
95
97
|
{
|
|
96
98
|
get = function(self)
|
|
97
|
-
return self:
|
|
99
|
+
return self:getObjectDataEntryNumericIdsField("flig")
|
|
98
100
|
end,
|
|
99
101
|
set = function(self, lightningTypeIds)
|
|
100
|
-
self:
|
|
102
|
+
self:setObjectDataEntryNumericIdsField("flig", lightningTypeIds)
|
|
101
103
|
end
|
|
102
104
|
},
|
|
103
105
|
true
|
|
@@ -285,32 +287,14 @@ __TS__SetDescriptor(
|
|
|
285
287
|
},
|
|
286
288
|
true
|
|
287
289
|
)
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
AvatarBuffType.name = "AvatarBuffType"
|
|
298
|
-
__TS__ClassExtends(
|
|
299
|
-
AvatarBuffType,
|
|
300
|
-
makeBaseBuffType(fourCC("BHav"))
|
|
301
|
-
)
|
|
302
|
-
____exports.DevotionAuraBuffType = __TS__Class()
|
|
303
|
-
local DevotionAuraBuffType = ____exports.DevotionAuraBuffType
|
|
304
|
-
DevotionAuraBuffType.name = "DevotionAuraBuffType"
|
|
305
|
-
__TS__ClassExtends(
|
|
306
|
-
DevotionAuraBuffType,
|
|
307
|
-
makeBaseBuffType(fourCC("BHad"))
|
|
308
|
-
)
|
|
309
|
-
____exports.DivineShieldBuffType = __TS__Class()
|
|
310
|
-
local DivineShieldBuffType = ____exports.DivineShieldBuffType
|
|
311
|
-
DivineShieldBuffType.name = "DivineShieldBuffType"
|
|
312
|
-
__TS__ClassExtends(
|
|
313
|
-
DivineShieldBuffType,
|
|
314
|
-
makeBaseBuffType(fourCC("BHds"))
|
|
290
|
+
implementReadonlyNumberIndexSupplier(
|
|
291
|
+
____exports.BuffType,
|
|
292
|
+
function(id)
|
|
293
|
+
local ____class_0 = __TS__Class()
|
|
294
|
+
____class_0.name = ____class_0.name
|
|
295
|
+
__TS__ClassExtends(____class_0, ____exports.BuffType)
|
|
296
|
+
____class_0.BASE_ID = id
|
|
297
|
+
return ____class_0
|
|
298
|
+
end
|
|
315
299
|
)
|
|
316
300
|
return ____exports
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { ArmorSoundType } from "../auxiliary/armor-sound-type";
|
|
3
3
|
import { CombatClassifications } from "../auxiliary/combat-classification";
|
|
4
4
|
import { ObjectDataEntry, ObjectDataEntryId } from "../entry";
|
|
5
|
-
export type DestructibleTypeId = ObjectDataEntryId & {
|
|
5
|
+
export type DestructibleTypeId = ObjectDataEntryId & number & {
|
|
6
6
|
readonly __destructibleTypeId: unique symbol;
|
|
7
7
|
};
|
|
8
8
|
export declare abstract class DestructibleType extends ObjectDataEntry<DestructibleTypeId> {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { ArmorSoundType } from "../auxiliary/armor-sound-type";
|
|
3
3
|
import { ObjectDataEntry, ObjectDataEntryId } from "../entry";
|
|
4
4
|
import type { AbilityTypeId } from "./ability-type";
|
|
5
|
-
export type ItemTypeId = ObjectDataEntryId & {
|
|
5
|
+
export type ItemTypeId = ObjectDataEntryId & number & {
|
|
6
6
|
readonly __itemTypeId: unique symbol;
|
|
7
7
|
};
|
|
8
8
|
export declare class ItemType extends ObjectDataEntry<ItemTypeId> {
|
|
@@ -27,10 +27,10 @@ __TS__SetDescriptor(
|
|
|
27
27
|
"abilityTypeIds",
|
|
28
28
|
{
|
|
29
29
|
get = function(self)
|
|
30
|
-
return self:
|
|
30
|
+
return self:getObjectDataEntryNumericIdsField("iabi")
|
|
31
31
|
end,
|
|
32
32
|
set = function(self, abilityTypeIds)
|
|
33
|
-
self:
|
|
33
|
+
self:setObjectDataEntryNumericIdsField("iabi", abilityTypeIds)
|
|
34
34
|
end
|
|
35
35
|
},
|
|
36
36
|
true
|
|
@@ -261,10 +261,10 @@ __TS__SetDescriptor(
|
|
|
261
261
|
"cooldownGroupId",
|
|
262
262
|
{
|
|
263
263
|
get = function(self)
|
|
264
|
-
return self:
|
|
264
|
+
return self:getObjectDataEntryNumericIdField("icid")
|
|
265
265
|
end,
|
|
266
266
|
set = function(self, cooldownGroupId)
|
|
267
|
-
self:
|
|
267
|
+
self:setObjectDataEntryNumericIdField("icid", cooldownGroupId)
|
|
268
268
|
end
|
|
269
269
|
},
|
|
270
270
|
true
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/** @noSelfInFile */
|
|
2
2
|
import { ObjectDataEntry, ObjectDataEntryConstructor, ObjectDataEntryId } from "../entry";
|
|
3
3
|
import { Color } from "../../../core/types/color";
|
|
4
|
-
export type LightningTypeId = ObjectDataEntryId & {
|
|
4
|
+
export type LightningTypeId = ObjectDataEntryId & number & {
|
|
5
5
|
readonly __lightningTypeId: unique symbol;
|
|
6
6
|
};
|
|
7
7
|
export type StandardLightningTypeId = LightningTypeId & {
|