warscript 0.0.1-dev.ed60fea → 0.0.1-dev.ee6f224
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 +24 -21
- package/core/types/player.lua +3 -1
- package/core/types/playerCamera.d.ts +2 -0
- package/core/types/playerCamera.lua +123 -5
- package/core/types/sound.d.ts +17 -24
- package/core/types/sound.lua +99 -24
- package/core/types/tileCell.d.ts +9 -0
- package/core/types/tileCell.lua +92 -0
- 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 +846 -790
- package/engine/behavior.d.ts +5 -0
- package/engine/behavior.lua +106 -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 +18 -3
- 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 +7 -2
- package/engine/behaviour/ability.lua +42 -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 +49 -11
- package/engine/internal/item/ability.lua +82 -14
- package/engine/internal/item+owner.lua +12 -6
- package/engine/internal/item.d.ts +8 -7
- package/engine/internal/item.lua +153 -51
- 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 +63 -1
- 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 +33 -10
- package/engine/internal/unit.lua +274 -113
- 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 +19 -17
- package/engine/object-data/entry/ability-type.lua +82 -24
- 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-field/ability.d.ts +4 -4
- package/engine/object-field/ability.lua +7 -6
- 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 +188 -92
- package/engine/random.d.ts +9 -0
- package/engine/random.lua +13 -0
- package/engine/standard/entries/buff-type.d.ts +3 -0
- package/engine/standard/entries/buff-type.lua +3 -0
- package/engine/standard/entries/sound-preset.d.ts +10 -0
- package/engine/standard/entries/sound-preset.lua +10 -0
- package/engine/standard/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/patch-lualib.lua +1 -1
- 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 +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/reflection.lua +11 -7
- package/core/types/order.d.ts +0 -25
- package/core/types/order.lua +0 -55
|
@@ -12,6 +12,9 @@ local implementReadonlyNumberIndexSupplier = ____reflection.implementReadonlyNum
|
|
|
12
12
|
local ____combat_2Dclassification = require("engine.object-data.auxiliary.combat-classification")
|
|
13
13
|
local combatClassificationsToStringArray = ____combat_2Dclassification.combatClassificationsToStringArray
|
|
14
14
|
local stringArrayToCombatClassifications = ____combat_2Dclassification.stringArrayToCombatClassifications
|
|
15
|
+
local ____movement_2Dtype = require("engine.object-data.auxiliary.movement-type")
|
|
16
|
+
local movementTypeToString = ____movement_2Dtype.movementTypeToString
|
|
17
|
+
local stringToMovementType = ____movement_2Dtype.stringToMovementType
|
|
15
18
|
local ____unit_2Dclassification = require("engine.object-data.auxiliary.unit-classification")
|
|
16
19
|
local stringArrayToUnitClassifications = ____unit_2Dclassification.stringArrayToUnitClassifications
|
|
17
20
|
local unitClassificationsToStringArray = ____unit_2Dclassification.unitClassificationsToStringArray
|
|
@@ -19,6 +22,14 @@ local ____entry = require("engine.object-data.entry")
|
|
|
19
22
|
local ObjectDataEntry = ____entry.ObjectDataEntry
|
|
20
23
|
local ____object_2Ddata_2Dentry_2Did_2Dgenerator = require("engine.object-data.utility.object-data-entry-id-generator")
|
|
21
24
|
local ObjectDataEntryIdGenerator = ____object_2Ddata_2Dentry_2Did_2Dgenerator.ObjectDataEntryIdGenerator
|
|
25
|
+
local ____attack_2Dtype = require("engine.object-data.auxiliary.attack-type")
|
|
26
|
+
local attackTypeToString = ____attack_2Dtype.attackTypeToString
|
|
27
|
+
local stringToAttackType = ____attack_2Dtype.stringToAttackType
|
|
28
|
+
local ____config = require("config")
|
|
29
|
+
local WarscriptConfig = ____config.WarscriptConfig
|
|
30
|
+
local ____armor_2Dtype = require("engine.object-data.auxiliary.armor-type")
|
|
31
|
+
local armorTypeToString = ____armor_2Dtype.armorTypeToString
|
|
32
|
+
local stringToArmorType = ____armor_2Dtype.stringToArmorType
|
|
22
33
|
local getOrCreateUnitTypeWeapons
|
|
23
34
|
____exports.UnitTypeWeapon = __TS__Class()
|
|
24
35
|
local UnitTypeWeapon = ____exports.UnitTypeWeapon
|
|
@@ -32,18 +43,19 @@ __TS__SetDescriptor(
|
|
|
32
43
|
"attackType",
|
|
33
44
|
{
|
|
34
45
|
get = function(self)
|
|
46
|
+
local ____stringToAttackType_1 = stringToAttackType
|
|
35
47
|
local ____self_0 = self.unitType
|
|
36
|
-
return ____self_0.getStringField(
|
|
48
|
+
return ____stringToAttackType_1(____self_0.getStringField(
|
|
37
49
|
____self_0,
|
|
38
50
|
("ua" .. tostring(self.index)) .. "t"
|
|
39
|
-
)
|
|
51
|
+
))
|
|
40
52
|
end,
|
|
41
53
|
set = function(self, attackType)
|
|
42
|
-
local
|
|
43
|
-
|
|
44
|
-
|
|
54
|
+
local ____self_2 = self.unitType
|
|
55
|
+
____self_2.setStringField(
|
|
56
|
+
____self_2,
|
|
45
57
|
("ua" .. tostring(self.index)) .. "t",
|
|
46
|
-
attackType
|
|
58
|
+
attackTypeToString(attackType)
|
|
47
59
|
)
|
|
48
60
|
end
|
|
49
61
|
},
|
|
@@ -54,16 +66,16 @@ __TS__SetDescriptor(
|
|
|
54
66
|
"backSwingDuration",
|
|
55
67
|
{
|
|
56
68
|
get = function(self)
|
|
57
|
-
local
|
|
58
|
-
return
|
|
59
|
-
|
|
69
|
+
local ____self_3 = self.unitType
|
|
70
|
+
return ____self_3.getNumberField(
|
|
71
|
+
____self_3,
|
|
60
72
|
"ubs" .. tostring(self.index)
|
|
61
73
|
)
|
|
62
74
|
end,
|
|
63
75
|
set = function(self, backSwingDuration)
|
|
64
|
-
local
|
|
65
|
-
|
|
66
|
-
|
|
76
|
+
local ____self_4 = self.unitType
|
|
77
|
+
____self_4.setNumberField(
|
|
78
|
+
____self_4,
|
|
67
79
|
"ubs" .. tostring(self.index),
|
|
68
80
|
backSwingDuration
|
|
69
81
|
)
|
|
@@ -76,16 +88,16 @@ __TS__SetDescriptor(
|
|
|
76
88
|
"cooldown",
|
|
77
89
|
{
|
|
78
90
|
get = function(self)
|
|
79
|
-
local
|
|
80
|
-
return
|
|
81
|
-
|
|
91
|
+
local ____self_5 = self.unitType
|
|
92
|
+
return ____self_5.getNumberField(
|
|
93
|
+
____self_5,
|
|
82
94
|
("ua" .. tostring(self.index)) .. "c"
|
|
83
95
|
)
|
|
84
96
|
end,
|
|
85
97
|
set = function(self, cooldown)
|
|
86
|
-
local
|
|
87
|
-
|
|
88
|
-
|
|
98
|
+
local ____self_6 = self.unitType
|
|
99
|
+
____self_6.setNumberField(
|
|
100
|
+
____self_6,
|
|
89
101
|
("ua" .. tostring(self.index)) .. "c",
|
|
90
102
|
cooldown
|
|
91
103
|
)
|
|
@@ -119,16 +131,16 @@ __TS__SetDescriptor(
|
|
|
119
131
|
"damageBase",
|
|
120
132
|
{
|
|
121
133
|
get = function(self)
|
|
122
|
-
local
|
|
123
|
-
return
|
|
124
|
-
|
|
134
|
+
local ____self_7 = self.unitType
|
|
135
|
+
return ____self_7.getNumberField(
|
|
136
|
+
____self_7,
|
|
125
137
|
("ua" .. tostring(self.index)) .. "b"
|
|
126
138
|
)
|
|
127
139
|
end,
|
|
128
140
|
set = function(self, damageBase)
|
|
129
|
-
local
|
|
130
|
-
|
|
131
|
-
|
|
141
|
+
local ____self_8 = self.unitType
|
|
142
|
+
____self_8.setNumberField(
|
|
143
|
+
____self_8,
|
|
132
144
|
("ua" .. tostring(self.index)) .. "b",
|
|
133
145
|
damageBase
|
|
134
146
|
)
|
|
@@ -141,16 +153,16 @@ __TS__SetDescriptor(
|
|
|
141
153
|
"damageDiceCount",
|
|
142
154
|
{
|
|
143
155
|
get = function(self)
|
|
144
|
-
local
|
|
145
|
-
return
|
|
146
|
-
|
|
156
|
+
local ____self_9 = self.unitType
|
|
157
|
+
return ____self_9.getNumberField(
|
|
158
|
+
____self_9,
|
|
147
159
|
("ua" .. tostring(self.index)) .. "d"
|
|
148
160
|
)
|
|
149
161
|
end,
|
|
150
162
|
set = function(self, damageDiceNumber)
|
|
151
|
-
local
|
|
152
|
-
|
|
153
|
-
|
|
163
|
+
local ____self_10 = self.unitType
|
|
164
|
+
____self_10.setNumberField(
|
|
165
|
+
____self_10,
|
|
154
166
|
("ua" .. tostring(self.index)) .. "d",
|
|
155
167
|
damageDiceNumber
|
|
156
168
|
)
|
|
@@ -163,16 +175,16 @@ __TS__SetDescriptor(
|
|
|
163
175
|
"damageDiceSideCount",
|
|
164
176
|
{
|
|
165
177
|
get = function(self)
|
|
166
|
-
local
|
|
167
|
-
return
|
|
168
|
-
|
|
178
|
+
local ____self_11 = self.unitType
|
|
179
|
+
return ____self_11.getNumberField(
|
|
180
|
+
____self_11,
|
|
169
181
|
("ua" .. tostring(self.index)) .. "s"
|
|
170
182
|
)
|
|
171
183
|
end,
|
|
172
184
|
set = function(self, damageDiceSideCount)
|
|
173
|
-
local
|
|
174
|
-
|
|
175
|
-
|
|
185
|
+
local ____self_12 = self.unitType
|
|
186
|
+
____self_12.setNumberField(
|
|
187
|
+
____self_12,
|
|
176
188
|
("ua" .. tostring(self.index)) .. "s",
|
|
177
189
|
damageDiceSideCount
|
|
178
190
|
)
|
|
@@ -185,16 +197,16 @@ __TS__SetDescriptor(
|
|
|
185
197
|
"impactDelay",
|
|
186
198
|
{
|
|
187
199
|
get = function(self)
|
|
188
|
-
local
|
|
189
|
-
return
|
|
190
|
-
|
|
200
|
+
local ____self_13 = self.unitType
|
|
201
|
+
return ____self_13.getNumberField(
|
|
202
|
+
____self_13,
|
|
191
203
|
"udp" .. tostring(self.index)
|
|
192
204
|
)
|
|
193
205
|
end,
|
|
194
206
|
set = function(self, impactDelay)
|
|
195
|
-
local
|
|
196
|
-
|
|
197
|
-
|
|
207
|
+
local ____self_14 = self.unitType
|
|
208
|
+
____self_14.setNumberField(
|
|
209
|
+
____self_14,
|
|
198
210
|
"udp" .. tostring(self.index),
|
|
199
211
|
impactDelay
|
|
200
212
|
)
|
|
@@ -207,16 +219,16 @@ __TS__SetDescriptor(
|
|
|
207
219
|
"missileModelPath",
|
|
208
220
|
{
|
|
209
221
|
get = function(self)
|
|
210
|
-
local
|
|
211
|
-
return
|
|
212
|
-
|
|
222
|
+
local ____self_15 = self.unitType
|
|
223
|
+
return ____self_15.getStringField(
|
|
224
|
+
____self_15,
|
|
213
225
|
("ua" .. tostring(self.index)) .. "m"
|
|
214
226
|
)
|
|
215
227
|
end,
|
|
216
228
|
set = function(self, missileModelPath)
|
|
217
|
-
local
|
|
218
|
-
|
|
219
|
-
|
|
229
|
+
local ____self_16 = self.unitType
|
|
230
|
+
____self_16.setStringField(
|
|
231
|
+
____self_16,
|
|
220
232
|
("ua" .. tostring(self.index)) .. "m",
|
|
221
233
|
missileModelPath
|
|
222
234
|
)
|
|
@@ -229,16 +241,16 @@ __TS__SetDescriptor(
|
|
|
229
241
|
"range",
|
|
230
242
|
{
|
|
231
243
|
get = function(self)
|
|
232
|
-
local
|
|
233
|
-
return
|
|
234
|
-
|
|
244
|
+
local ____self_17 = self.unitType
|
|
245
|
+
return ____self_17.getNumberField(
|
|
246
|
+
____self_17,
|
|
235
247
|
("ua" .. tostring(self.index)) .. "r"
|
|
236
248
|
)
|
|
237
249
|
end,
|
|
238
250
|
set = function(self, range)
|
|
239
|
-
local
|
|
240
|
-
|
|
241
|
-
|
|
251
|
+
local ____self_18 = self.unitType
|
|
252
|
+
____self_18.setNumberField(
|
|
253
|
+
____self_18,
|
|
242
254
|
("ua" .. tostring(self.index)) .. "r",
|
|
243
255
|
range
|
|
244
256
|
)
|
|
@@ -251,16 +263,16 @@ __TS__SetDescriptor(
|
|
|
251
263
|
"soundType",
|
|
252
264
|
{
|
|
253
265
|
get = function(self)
|
|
254
|
-
local
|
|
255
|
-
return
|
|
256
|
-
|
|
266
|
+
local ____self_19 = self.unitType
|
|
267
|
+
return ____self_19.getStringField(
|
|
268
|
+
____self_19,
|
|
257
269
|
"ucs" .. tostring(self.index)
|
|
258
270
|
)
|
|
259
271
|
end,
|
|
260
272
|
set = function(self, soundType)
|
|
261
|
-
local
|
|
262
|
-
|
|
263
|
-
|
|
273
|
+
local ____self_20 = self.unitType
|
|
274
|
+
____self_20.setStringField(
|
|
275
|
+
____self_20,
|
|
264
276
|
"ucs" .. tostring(self.index),
|
|
265
277
|
soundType
|
|
266
278
|
)
|
|
@@ -273,16 +285,16 @@ __TS__SetDescriptor(
|
|
|
273
285
|
"soundTypeSD",
|
|
274
286
|
{
|
|
275
287
|
get = function(self)
|
|
276
|
-
local
|
|
277
|
-
return
|
|
278
|
-
|
|
288
|
+
local ____self_21 = self.unitType
|
|
289
|
+
return ____self_21.getStringField(
|
|
290
|
+
____self_21,
|
|
279
291
|
("ucs" .. tostring(self.index)) .. ":sd"
|
|
280
292
|
)
|
|
281
293
|
end,
|
|
282
294
|
set = function(self, soundTypeSD)
|
|
283
|
-
local
|
|
284
|
-
|
|
285
|
-
|
|
295
|
+
local ____self_22 = self.unitType
|
|
296
|
+
____self_22.setStringField(
|
|
297
|
+
____self_22,
|
|
286
298
|
("ucs" .. tostring(self.index)) .. ":sd",
|
|
287
299
|
soundTypeSD
|
|
288
300
|
)
|
|
@@ -295,16 +307,16 @@ __TS__SetDescriptor(
|
|
|
295
307
|
"soundTypeHD",
|
|
296
308
|
{
|
|
297
309
|
get = function(self)
|
|
298
|
-
local
|
|
299
|
-
return
|
|
300
|
-
|
|
310
|
+
local ____self_23 = self.unitType
|
|
311
|
+
return ____self_23.getStringField(
|
|
312
|
+
____self_23,
|
|
301
313
|
("ucs" .. tostring(self.index)) .. ":hd"
|
|
302
314
|
)
|
|
303
315
|
end,
|
|
304
316
|
set = function(self, soundTypeHD)
|
|
305
|
-
local
|
|
306
|
-
|
|
307
|
-
|
|
317
|
+
local ____self_24 = self.unitType
|
|
318
|
+
____self_24.setStringField(
|
|
319
|
+
____self_24,
|
|
308
320
|
("ucs" .. tostring(self.index)) .. ":hd",
|
|
309
321
|
soundTypeHD
|
|
310
322
|
)
|
|
@@ -345,10 +357,10 @@ __TS__SetDescriptor(
|
|
|
345
357
|
"abilityTypeIds",
|
|
346
358
|
{
|
|
347
359
|
get = function(self)
|
|
348
|
-
return self:
|
|
360
|
+
return self:getObjectDataEntryNumericIdsField("uabi")
|
|
349
361
|
end,
|
|
350
362
|
set = function(self, abilityTypeIds)
|
|
351
|
-
self:
|
|
363
|
+
self:setObjectDataEntryNumericIdsField("uabi", abilityTypeIds)
|
|
352
364
|
end
|
|
353
365
|
},
|
|
354
366
|
true
|
|
@@ -358,10 +370,10 @@ __TS__SetDescriptor(
|
|
|
358
370
|
"defaultActiveAbilityTypeId",
|
|
359
371
|
{
|
|
360
372
|
get = function(self)
|
|
361
|
-
return self:
|
|
373
|
+
return self:getObjectDataEntryNumericIdsField("udaa")[1]
|
|
362
374
|
end,
|
|
363
375
|
set = function(self, abilityTypeId)
|
|
364
|
-
self:
|
|
376
|
+
self:setObjectDataEntryNumericIdsField(
|
|
365
377
|
"udaa",
|
|
366
378
|
arrayOfNotNull(abilityTypeId)
|
|
367
379
|
)
|
|
@@ -807,6 +819,9 @@ __TS__SetDescriptor(
|
|
|
807
819
|
end,
|
|
808
820
|
set = function(self, modelPath)
|
|
809
821
|
self:setStringField("umdl", modelPath)
|
|
822
|
+
if not self.isPortraitModelPathSet and WarscriptConfig.AUTOMATICALLY_SET_UNIT_TYPE_PORTRAIT_MODEL_PATH then
|
|
823
|
+
self:setStringField("upor", "")
|
|
824
|
+
end
|
|
810
825
|
end
|
|
811
826
|
},
|
|
812
827
|
true
|
|
@@ -820,6 +835,9 @@ __TS__SetDescriptor(
|
|
|
820
835
|
end,
|
|
821
836
|
set = function(self, modelPathSD)
|
|
822
837
|
self:setStringField("umdl:sd", modelPathSD)
|
|
838
|
+
if not self.isPortraitModelPathSet and WarscriptConfig.AUTOMATICALLY_SET_UNIT_TYPE_PORTRAIT_MODEL_PATH then
|
|
839
|
+
self:setStringField("upor:sd", "")
|
|
840
|
+
end
|
|
823
841
|
end
|
|
824
842
|
},
|
|
825
843
|
true
|
|
@@ -833,6 +851,51 @@ __TS__SetDescriptor(
|
|
|
833
851
|
end,
|
|
834
852
|
set = function(self, modelPathHD)
|
|
835
853
|
self:setStringField("umdl:hd", modelPathHD)
|
|
854
|
+
if not self.isPortraitModelPathSet and WarscriptConfig.AUTOMATICALLY_SET_UNIT_TYPE_PORTRAIT_MODEL_PATH then
|
|
855
|
+
self:setStringField("upor:hd", "")
|
|
856
|
+
end
|
|
857
|
+
end
|
|
858
|
+
},
|
|
859
|
+
true
|
|
860
|
+
)
|
|
861
|
+
__TS__SetDescriptor(
|
|
862
|
+
UnitType.prototype,
|
|
863
|
+
"portraitModelPath",
|
|
864
|
+
{
|
|
865
|
+
get = function(self)
|
|
866
|
+
return self:getStringField("upor")
|
|
867
|
+
end,
|
|
868
|
+
set = function(self, portraitModelPath)
|
|
869
|
+
self:setStringField("upor", portraitModelPath)
|
|
870
|
+
self.isPortraitModelPathSet = true
|
|
871
|
+
end
|
|
872
|
+
},
|
|
873
|
+
true
|
|
874
|
+
)
|
|
875
|
+
__TS__SetDescriptor(
|
|
876
|
+
UnitType.prototype,
|
|
877
|
+
"portraitModelPathSD",
|
|
878
|
+
{
|
|
879
|
+
get = function(self)
|
|
880
|
+
return self:getStringField("upor:sd")
|
|
881
|
+
end,
|
|
882
|
+
set = function(self, portraitModelPathSD)
|
|
883
|
+
self:setStringField("upor:sd", portraitModelPathSD)
|
|
884
|
+
self.isPortraitModelPathSet = true
|
|
885
|
+
end
|
|
886
|
+
},
|
|
887
|
+
true
|
|
888
|
+
)
|
|
889
|
+
__TS__SetDescriptor(
|
|
890
|
+
UnitType.prototype,
|
|
891
|
+
"portraitModelPathHD",
|
|
892
|
+
{
|
|
893
|
+
get = function(self)
|
|
894
|
+
return self:getStringField("upor:hd")
|
|
895
|
+
end,
|
|
896
|
+
set = function(self, portraitModelPathHD)
|
|
897
|
+
self:setStringField("upor:hd", portraitModelPathHD)
|
|
898
|
+
self.isPortraitModelPathSet = true
|
|
836
899
|
end
|
|
837
900
|
},
|
|
838
901
|
true
|
|
@@ -876,6 +939,19 @@ __TS__SetDescriptor(
|
|
|
876
939
|
},
|
|
877
940
|
true
|
|
878
941
|
)
|
|
942
|
+
__TS__SetDescriptor(
|
|
943
|
+
UnitType.prototype,
|
|
944
|
+
"selectionCircleHeight",
|
|
945
|
+
{
|
|
946
|
+
get = function(self)
|
|
947
|
+
return self:getNumberField("uslz")
|
|
948
|
+
end,
|
|
949
|
+
set = function(self, height)
|
|
950
|
+
self:setNumberField("uslz", height)
|
|
951
|
+
end
|
|
952
|
+
},
|
|
953
|
+
true
|
|
954
|
+
)
|
|
879
955
|
__TS__SetDescriptor(
|
|
880
956
|
UnitType.prototype,
|
|
881
957
|
"selectionCircleScale",
|
|
@@ -1123,6 +1199,19 @@ __TS__SetDescriptor(
|
|
|
1123
1199
|
},
|
|
1124
1200
|
true
|
|
1125
1201
|
)
|
|
1202
|
+
__TS__SetDescriptor(
|
|
1203
|
+
UnitType.prototype,
|
|
1204
|
+
"armor",
|
|
1205
|
+
{
|
|
1206
|
+
get = function(self)
|
|
1207
|
+
return self:getNumberField("udef")
|
|
1208
|
+
end,
|
|
1209
|
+
set = function(self, armor)
|
|
1210
|
+
self:setNumberField("udef", armor)
|
|
1211
|
+
end
|
|
1212
|
+
},
|
|
1213
|
+
true
|
|
1214
|
+
)
|
|
1126
1215
|
__TS__SetDescriptor(
|
|
1127
1216
|
UnitType.prototype,
|
|
1128
1217
|
"armorSoundType",
|
|
@@ -1162,6 +1251,22 @@ __TS__SetDescriptor(
|
|
|
1162
1251
|
},
|
|
1163
1252
|
true
|
|
1164
1253
|
)
|
|
1254
|
+
__TS__SetDescriptor(
|
|
1255
|
+
UnitType.prototype,
|
|
1256
|
+
"armorType",
|
|
1257
|
+
{
|
|
1258
|
+
get = function(self)
|
|
1259
|
+
return stringToArmorType(self:getStringField("udty"))
|
|
1260
|
+
end,
|
|
1261
|
+
set = function(self, armorType)
|
|
1262
|
+
self:setStringField(
|
|
1263
|
+
"udty",
|
|
1264
|
+
armorTypeToString(armorType)
|
|
1265
|
+
)
|
|
1266
|
+
end
|
|
1267
|
+
},
|
|
1268
|
+
true
|
|
1269
|
+
)
|
|
1165
1270
|
__TS__SetDescriptor(
|
|
1166
1271
|
UnitType.prototype,
|
|
1167
1272
|
"combatClassifications",
|
|
@@ -1180,7 +1285,7 @@ __TS__SetDescriptor(
|
|
|
1180
1285
|
)
|
|
1181
1286
|
__TS__SetDescriptor(
|
|
1182
1287
|
UnitType.prototype,
|
|
1183
|
-
"
|
|
1288
|
+
"classifications",
|
|
1184
1289
|
{
|
|
1185
1290
|
get = function(self)
|
|
1186
1291
|
return stringArrayToUnitClassifications(self:getStringsField("utyp"))
|
|
@@ -1288,10 +1393,13 @@ __TS__SetDescriptor(
|
|
|
1288
1393
|
"movementType",
|
|
1289
1394
|
{
|
|
1290
1395
|
get = function(self)
|
|
1291
|
-
return self:getStringField("umvt")
|
|
1396
|
+
return stringToMovementType(self:getStringField("umvt"))
|
|
1292
1397
|
end,
|
|
1293
1398
|
set = function(self, movementType)
|
|
1294
|
-
self:setStringField(
|
|
1399
|
+
self:setStringField(
|
|
1400
|
+
"umvt",
|
|
1401
|
+
movementTypeToString(movementType)
|
|
1402
|
+
)
|
|
1295
1403
|
end
|
|
1296
1404
|
},
|
|
1297
1405
|
true
|
|
@@ -1413,6 +1521,19 @@ __TS__SetDescriptor(
|
|
|
1413
1521
|
},
|
|
1414
1522
|
true
|
|
1415
1523
|
)
|
|
1524
|
+
__TS__SetDescriptor(
|
|
1525
|
+
UnitType.prototype,
|
|
1526
|
+
"level",
|
|
1527
|
+
{
|
|
1528
|
+
get = function(self)
|
|
1529
|
+
return self:getNumberField("ulev")
|
|
1530
|
+
end,
|
|
1531
|
+
set = function(self, level)
|
|
1532
|
+
self:setNumberField("ulev", level)
|
|
1533
|
+
end
|
|
1534
|
+
},
|
|
1535
|
+
true
|
|
1536
|
+
)
|
|
1416
1537
|
__TS__SetDescriptor(
|
|
1417
1538
|
UnitType.prototype,
|
|
1418
1539
|
"manaRegenerationRate",
|
|
@@ -1496,10 +1617,10 @@ __TS__SetDescriptor(
|
|
|
1496
1617
|
"affectingUpgradeIds",
|
|
1497
1618
|
{
|
|
1498
1619
|
get = function(self)
|
|
1499
|
-
return self:
|
|
1620
|
+
return self:getObjectDataEntryNumericIdsField("upgr")
|
|
1500
1621
|
end,
|
|
1501
1622
|
set = function(self, affectingUpgradeIds)
|
|
1502
|
-
self:
|
|
1623
|
+
self:setObjectDataEntryNumericIdsField("upgr", affectingUpgradeIds)
|
|
1503
1624
|
end
|
|
1504
1625
|
},
|
|
1505
1626
|
true
|
|
@@ -1559,11 +1680,11 @@ __TS__SetDescriptor(
|
|
|
1559
1680
|
implementReadonlyNumberIndexSupplier(
|
|
1560
1681
|
____exports.UnitType,
|
|
1561
1682
|
function(id)
|
|
1562
|
-
local
|
|
1563
|
-
|
|
1564
|
-
__TS__ClassExtends(
|
|
1565
|
-
|
|
1566
|
-
return
|
|
1683
|
+
local ____class_25 = __TS__Class()
|
|
1684
|
+
____class_25.name = ____class_25.name
|
|
1685
|
+
__TS__ClassExtends(____class_25, ____exports.UnitType)
|
|
1686
|
+
____class_25.BASE_ID = id
|
|
1687
|
+
return ____class_25
|
|
1567
1688
|
end
|
|
1568
1689
|
)
|
|
1569
1690
|
____exports.HeroUnitType = __TS__Class()
|
|
@@ -1582,10 +1703,10 @@ __TS__SetDescriptor(
|
|
|
1582
1703
|
"heroAbilityTypeIds",
|
|
1583
1704
|
{
|
|
1584
1705
|
get = function(self)
|
|
1585
|
-
return self:
|
|
1706
|
+
return self:getObjectDataEntryNumericIdsField("uhab")
|
|
1586
1707
|
end,
|
|
1587
1708
|
set = function(self, heroAbilityTypeIds)
|
|
1588
|
-
self:
|
|
1709
|
+
self:setObjectDataEntryNumericIdsField("uhab", heroAbilityTypeIds)
|
|
1589
1710
|
end
|
|
1590
1711
|
},
|
|
1591
1712
|
true
|
|
@@ -1624,11 +1745,11 @@ __TS__SetDescriptor(
|
|
|
1624
1745
|
implementReadonlyNumberIndexSupplier(
|
|
1625
1746
|
____exports.HeroUnitType,
|
|
1626
1747
|
function(id)
|
|
1627
|
-
local
|
|
1628
|
-
|
|
1629
|
-
__TS__ClassExtends(
|
|
1630
|
-
|
|
1631
|
-
return
|
|
1748
|
+
local ____class_26 = __TS__Class()
|
|
1749
|
+
____class_26.name = ____class_26.name
|
|
1750
|
+
__TS__ClassExtends(____class_26, ____exports.HeroUnitType)
|
|
1751
|
+
____class_26.BASE_ID = id
|
|
1752
|
+
return ____class_26
|
|
1632
1753
|
end
|
|
1633
1754
|
)
|
|
1634
1755
|
return ____exports
|
|
@@ -3,7 +3,7 @@ import { TupleOf } from "../../../utility/types";
|
|
|
3
3
|
import { TechTreeDependency, TechTreeDependencyInput } from "../auxiliary/tech-tree-dependency";
|
|
4
4
|
import { ObjectDataEntry, ObjectDataEntryId, ObjectDataEntryLevelFieldValueSupplier } from "../entry";
|
|
5
5
|
import { AbilityTypeId } from "./ability-type";
|
|
6
|
-
export type UpgradeId = ObjectDataEntryId & {
|
|
6
|
+
export type UpgradeId = ObjectDataEntryId & number & {
|
|
7
7
|
readonly __upgradeId: unique symbol;
|
|
8
8
|
};
|
|
9
9
|
export declare const enum UpgradeEffectType {
|
|
@@ -32,7 +32,7 @@ function Upgrade.prototype.getEffect(self, i)
|
|
|
32
32
|
type = effectType,
|
|
33
33
|
bonusBase = self:getNumberField("gba" .. tostring(i)),
|
|
34
34
|
bonusIncrement = self:getNumberField("gmo" .. tostring(i)),
|
|
35
|
-
abilityTypeId = self:
|
|
35
|
+
abilityTypeId = self:getObjectDataEntryNumericIdField("gco" .. tostring(i))
|
|
36
36
|
}
|
|
37
37
|
end
|
|
38
38
|
return nil
|
|
@@ -51,7 +51,7 @@ function Upgrade.prototype.setEffect(self, i, effect)
|
|
|
51
51
|
effect and effect.bonusIncrement or 0
|
|
52
52
|
)
|
|
53
53
|
if (effect and effect.abilityTypeId) ~= nil then
|
|
54
|
-
self:
|
|
54
|
+
self:setObjectDataEntryNumericIdField(
|
|
55
55
|
"gco" .. tostring(i),
|
|
56
56
|
effect and effect.abilityTypeId
|
|
57
57
|
)
|
|
@@ -145,7 +145,7 @@ __TS__SetDescriptor(
|
|
|
145
145
|
"techTreeDependencies",
|
|
146
146
|
{
|
|
147
147
|
get = function(self)
|
|
148
|
-
local techTreeDependencyIds = self:
|
|
148
|
+
local techTreeDependencyIds = self:getObjectDataEntryNumericIdsLevelField("greq")
|
|
149
149
|
local techTreeDependencyInternalLevels = self:getNumbersLevelField("grqc")
|
|
150
150
|
return mapIndexed(
|
|
151
151
|
techTreeDependencyIds,
|
|
@@ -177,7 +177,7 @@ __TS__SetDescriptor(
|
|
|
177
177
|
function(level) return level + 1 end
|
|
178
178
|
)
|
|
179
179
|
end
|
|
180
|
-
self:
|
|
180
|
+
self:setObjectDataEntryNumericIdsLevelField("greq", techTreeDependencyIds)
|
|
181
181
|
self:setNumbersLevelField("grqc", techTreeDependencyInternalLevels)
|
|
182
182
|
end
|
|
183
183
|
},
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/** @noSelfInFile */
|
|
2
2
|
import { AttachmentPreset, AttachmentPresetInput } from "./auxiliary/attachment-preset";
|
|
3
3
|
import { MutableKeys } from "../../utility/types";
|
|
4
|
-
export type ObjectDataEntryId = number & {
|
|
4
|
+
export type ObjectDataEntryId = (number | string) & {
|
|
5
5
|
readonly __objectDataEntryId: unique symbol;
|
|
6
6
|
};
|
|
7
7
|
export type ObjectDataEntryIdType<T extends ObjectDataEntry> = T extends ObjectDataEntry<infer Id> ? Id : never;
|
|
@@ -18,14 +18,16 @@ export declare abstract class ObjectDataEntry<Id extends ObjectDataEntryId = Obj
|
|
|
18
18
|
private readonly levelFieldParametersByField;
|
|
19
19
|
private readonly maxAffectedLevelByField;
|
|
20
20
|
private _isInternal;
|
|
21
|
+
private get type();
|
|
21
22
|
get isInternal(): boolean;
|
|
22
|
-
|
|
23
|
+
static get idType(): "number" | "string";
|
|
24
|
+
protected static generateId(): number | string;
|
|
23
25
|
protected static getObjectData(map: WarMap): WarObjects;
|
|
24
|
-
static getAllIdsByBaseIds<T extends ObjectDataEntry>(this: ObjectDataEntryAbstractConstructor<T>, baseIds: number | number[]): ObjectDataEntryIdType<T>[];
|
|
25
|
-
static create<T extends ObjectDataEntry>(this: ObjectDataEntryConstructor<T>, ...args: [id?: number, properties?: ObjectDataEntryProperties<T>] | [properties: ObjectDataEntryProperties<T>]): T;
|
|
26
|
-
static getAllByBaseIds<T extends ObjectDataEntry>(this: ObjectDataEntryAbstractConstructor<T>, baseIds: number | number[]): T[];
|
|
26
|
+
static getAllIdsByBaseIds<T extends ObjectDataEntry>(this: ObjectDataEntryAbstractConstructor<T>, baseIds: number | number[] | string | string[]): ObjectDataEntryIdType<T>[];
|
|
27
|
+
static create<T extends ObjectDataEntry>(this: ObjectDataEntryConstructor<T>, ...args: [id?: number | string, properties?: ObjectDataEntryProperties<T>] | [properties: ObjectDataEntryProperties<T>]): T;
|
|
28
|
+
static getAllByBaseIds<T extends ObjectDataEntry>(this: ObjectDataEntryAbstractConstructor<T>, baseIds: number | number[] | string | string[]): T[];
|
|
27
29
|
static getAll<T extends ObjectDataEntry>(this: ObjectDataEntryAbstractConstructor<T>): T[];
|
|
28
|
-
static of<T extends ObjectDataEntry>(this: ObjectDataEntryAbstractConstructor<T>, id: number): T | undefined;
|
|
30
|
+
static of<T extends ObjectDataEntry>(this: ObjectDataEntryAbstractConstructor<T>, id: number | string): T | undefined;
|
|
29
31
|
constructor(object: WarObject);
|
|
30
32
|
get id(): Id;
|
|
31
33
|
get baseId(): Id;
|
|
@@ -42,8 +44,8 @@ export declare abstract class ObjectDataEntry<Id extends ObjectDataEntryId = Obj
|
|
|
42
44
|
protected setNumberField(field: string, value: number): void;
|
|
43
45
|
protected getStringField(field: string): string;
|
|
44
46
|
protected setStringField(field: string, value: string): void;
|
|
45
|
-
protected
|
|
46
|
-
protected
|
|
47
|
+
protected getObjectDataEntryNumericIdField<Id extends ObjectDataEntryId & number>(field: string): Id;
|
|
48
|
+
protected setObjectDataEntryNumericIdField<Id extends ObjectDataEntryId & number>(field: string, value: Id): void;
|
|
47
49
|
protected getAttachmentPresetField(modelPathField: string, nodeFQNField: string): AttachmentPreset | undefined;
|
|
48
50
|
protected setAttachmentPresetField(modelPathField: string, nodeFQNField: string, attachmentPreset: AttachmentPresetInput | undefined): void;
|
|
49
51
|
protected getBooleansField(field: string): boolean[];
|
|
@@ -52,8 +54,8 @@ export declare abstract class ObjectDataEntry<Id extends ObjectDataEntryId = Obj
|
|
|
52
54
|
protected setNumbersField(field: string, values: number[]): void;
|
|
53
55
|
protected getStringsField(field: string): string[];
|
|
54
56
|
protected setStringsField(field: string, values: string[]): void;
|
|
55
|
-
protected
|
|
56
|
-
protected
|
|
57
|
+
protected getObjectDataEntryNumericIdsField<Id extends ObjectDataEntryId & number>(field: string): Id[];
|
|
58
|
+
protected setObjectDataEntryNumericIdsField<Id extends ObjectDataEntryId & number>(field: string, values: Id[]): void;
|
|
57
59
|
protected getAttachmentPresetListField(modelPathListField: string, nodeFQNFields: string[]): AttachmentPreset[];
|
|
58
60
|
protected setAttachmentPresetListField(modelPathListField: string, nodeFQNFields: string[], lengthField: string, attachmentPresets: AttachmentPresetInput[]): void;
|
|
59
61
|
protected setFlagLevelFieldValue(fieldId: string, flag: 1 | 2 | 4 | 8 | 16, supplier: ObjectDataEntryLevelFieldValueSupplier<boolean>): void;
|
|
@@ -64,16 +66,16 @@ export declare abstract class ObjectDataEntry<Id extends ObjectDataEntryId = Obj
|
|
|
64
66
|
protected setNumberLevelField(field: string, values: ObjectDataEntryLevelFieldValueSupplier<number>): void;
|
|
65
67
|
protected getStringLevelField(field: string): string[];
|
|
66
68
|
protected setStringLevelField(field: string, values: ObjectDataEntryLevelFieldValueSupplier<string>): void;
|
|
67
|
-
protected
|
|
68
|
-
protected
|
|
69
|
+
protected getObjectDataEntryNumericIdLevelField<Id extends ObjectDataEntryId & number>(field: string): Id[];
|
|
70
|
+
protected setObjectDataEntryNumericIdLevelField<Id extends ObjectDataEntryId & number>(field: string, values: ObjectDataEntryLevelFieldValueSupplier<Id>): void;
|
|
69
71
|
protected getBooleansLevelField(field: string): boolean[][];
|
|
70
72
|
protected setBooleansLevelField(field: string, values: ObjectDataEntryLevelFieldValueSupplier<boolean[]>): void;
|
|
71
73
|
protected getNumbersLevelField(field: string): number[][];
|
|
72
74
|
protected setNumbersLevelField(field: string, values: ObjectDataEntryLevelFieldValueSupplier<number[]>): void;
|
|
73
75
|
protected getStringsLevelField(field: string): string[][];
|
|
74
76
|
protected setStringsLevelField(field: string, values: ObjectDataEntryLevelFieldValueSupplier<string[]>): void;
|
|
75
|
-
protected
|
|
76
|
-
protected
|
|
77
|
+
protected getObjectDataEntryNumericIdsLevelField<T extends ObjectDataEntryId & number>(field: string): T[][];
|
|
78
|
+
protected setObjectDataEntryNumericIdsLevelField<T extends ObjectDataEntryId & number>(field: string, values: ObjectDataEntryLevelFieldValueSupplier<T[]>): void;
|
|
77
79
|
private getLevelField;
|
|
78
80
|
private setLevelField;
|
|
79
81
|
}
|