warscript 0.0.1-dev.ea69747 → 0.0.1-dev.fa6dee5
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 +12 -0
- package/attributes.lua +16 -0
- package/core/types/frame.d.ts +0 -1
- package/core/types/group.d.ts +0 -1
- package/core/types/handle.d.ts +2 -1
- package/core/types/handle.lua +5 -0
- package/core/types/image.d.ts +0 -1
- package/core/types/missile.d.ts +2 -2
- package/core/types/missile.lua +8 -2
- package/core/types/unit.lua +8 -0
- package/core/util.lua +1 -1
- package/engine/ability.d.ts +1 -1
- package/engine/behavior.d.ts +6 -6
- package/engine/behaviour/ability/apply-unit-behavior.d.ts +13 -4
- package/engine/behaviour/ability/apply-unit-behavior.lua +31 -9
- package/engine/behaviour/ability/instant-impact.lua +4 -0
- package/engine/behaviour/ability.d.ts +8 -1
- package/engine/behaviour/ability.lua +62 -0
- package/engine/behaviour/unit/stun-immunity.d.ts +0 -1
- package/engine/buff.d.ts +2 -2
- package/engine/internal/ability.d.ts +1 -1
- package/engine/internal/mechanics/ability-duration.d.ts +1 -3
- package/engine/internal/mechanics/ability-duration.lua +2 -0
- package/engine/internal/mechanics/cast-ability.d.ts +2 -0
- package/engine/internal/mechanics/cast-ability.lua +86 -0
- package/engine/internal/unit/bonus.d.ts +5 -6
- package/engine/internal/unit/detach-missiles.d.ts +7 -0
- package/engine/internal/unit/detach-missiles.lua +30 -0
- package/engine/internal/unit-missile-launch.lua +1 -1
- package/engine/internal/unit.d.ts +36 -9
- package/engine/internal/unit.lua +215 -63
- package/engine/object-data/auxiliary/attachment-preset.d.ts +0 -1
- package/engine/object-data/auxiliary/combat-classification.d.ts +0 -2
- package/engine/object-data/entry/ability-type/blank-configurable.d.ts +0 -1
- package/engine/object-data/entry/ability-type/blank-passive.d.ts +0 -1
- package/engine/object-data/entry/ability-type/blink.d.ts +10 -0
- package/engine/object-data/entry/ability-type/blink.lua +39 -0
- package/engine/object-data/entry/ability-type/channel.d.ts +0 -1
- package/engine/object-data/entry/ability-type/engineering-upgrade.lua +2 -2
- package/engine/object-data/entry/ability-type/mine.d.ts +10 -0
- package/engine/object-data/entry/ability-type/mine.lua +39 -0
- package/engine/object-data/entry/ability-type/spirit-touch.d.ts +2 -2
- package/engine/object-data/entry/ability-type/spirit-touch.lua +6 -6
- package/engine/object-data/entry/ability-type.d.ts +1 -1
- package/engine/object-data/entry/ability-type.lua +1 -0
- package/engine/object-data/entry/buff-type/applicable.d.ts +0 -1
- package/engine/object-data/entry/buff-type/applicable.lua +27 -71
- package/engine/object-data/entry/buff-type/blank.d.ts +0 -1
- package/engine/object-data/entry/buff-type.d.ts +0 -1
- package/engine/object-data/entry/destructible-type.d.ts +0 -1
- package/engine/object-data/entry/item-type/blank.d.ts +0 -1
- package/engine/object-data/entry/item-type.d.ts +0 -1
- package/engine/object-data/entry/lightning-type.d.ts +0 -1
- package/engine/object-data/entry/unit-type.d.ts +42 -2
- package/engine/object-data/entry/unit-type.lua +378 -50
- package/engine/object-data/entry/upgrade/blank.d.ts +0 -1
- package/engine/object-data/entry/upgrade.d.ts +0 -1
- package/engine/object-data/entry.d.ts +2 -3
- package/engine/object-field/ability.d.ts +8 -6
- package/engine/object-field/ability.lua +6 -0
- package/engine/object-field/unit.d.ts +1 -0
- package/engine/object-field/unit.lua +3 -0
- package/engine/object-field.d.ts +6 -4
- package/engine/object-field.lua +38 -12
- package/engine/random.d.ts +1 -0
- package/engine/random.lua +9 -0
- package/engine/standard/entries/unit-type.d.ts +42 -1
- package/engine/standard/entries/unit-type.lua +42 -1
- package/engine/standard/fields/ability.d.ts +1 -1
- package/engine/standard/fields/ability.lua +1 -1
- package/engine/unit.d.ts +1 -0
- package/engine/unit.lua +10 -2
- package/event.d.ts +0 -1
- package/exception.d.ts +2 -0
- package/exception.lua +4 -0
- package/global/vec2.lua +1 -0
- package/lualib_bundle.lua +139 -40
- package/math/vec2.d.ts +2 -9
- package/math.d.ts +0 -2
- package/objutil/ability.d.ts +0 -1
- package/objutil/buff.d.ts +0 -1
- package/objutil/object.d.ts +0 -1
- package/objutil/unit.d.ts +0 -1
- package/package.json +13 -14
- package/string.d.ts +30 -0
- package/string.lua +14 -0
- package/util/stream.d.ts +0 -1
- package/utility/arrays.d.ts +4 -5
- package/utility/arrays.lua +4 -1
- package/utility/bit-set.d.ts +0 -2
- package/utility/linked-set.d.ts +21 -8
- package/utility/linked-set.lua +16 -0
- package/utility/lua-maps.d.ts +1 -2
- package/utility/lua-sets.d.ts +1 -2
- package/utility/types.d.ts +2 -2
|
@@ -3,6 +3,7 @@ local __TS__Class = ____lualib.__TS__Class
|
|
|
3
3
|
local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
|
|
4
4
|
local __TS__New = ____lualib.__TS__New
|
|
5
5
|
local __TS__ClassExtends = ____lualib.__TS__ClassExtends
|
|
6
|
+
local __TS__ArrayIsArray = ____lualib.__TS__ArrayIsArray
|
|
6
7
|
local ____exports = {}
|
|
7
8
|
local ____arrays = require("utility.arrays")
|
|
8
9
|
local arrayOfNotNull = ____arrays.arrayOfNotNull
|
|
@@ -28,21 +29,21 @@ function UnitTypeWeapon.prototype.____constructor(self, unitType, index)
|
|
|
28
29
|
end
|
|
29
30
|
__TS__SetDescriptor(
|
|
30
31
|
UnitTypeWeapon.prototype,
|
|
31
|
-
"
|
|
32
|
+
"attackType",
|
|
32
33
|
{
|
|
33
34
|
get = function(self)
|
|
34
35
|
local ____self_0 = self.unitType
|
|
35
|
-
return ____self_0.
|
|
36
|
+
return ____self_0.getStringField(
|
|
36
37
|
____self_0,
|
|
37
|
-
"
|
|
38
|
+
("ua" .. tostring(self.index)) .. "t"
|
|
38
39
|
)
|
|
39
40
|
end,
|
|
40
|
-
set = function(self,
|
|
41
|
+
set = function(self, attackType)
|
|
41
42
|
local ____self_1 = self.unitType
|
|
42
|
-
____self_1.
|
|
43
|
+
____self_1.setStringField(
|
|
43
44
|
____self_1,
|
|
44
|
-
"
|
|
45
|
-
|
|
45
|
+
("ua" .. tostring(self.index)) .. "t",
|
|
46
|
+
attackType
|
|
46
47
|
)
|
|
47
48
|
end
|
|
48
49
|
},
|
|
@@ -50,19 +51,150 @@ __TS__SetDescriptor(
|
|
|
50
51
|
)
|
|
51
52
|
__TS__SetDescriptor(
|
|
52
53
|
UnitTypeWeapon.prototype,
|
|
53
|
-
"
|
|
54
|
+
"backSwingDuration",
|
|
54
55
|
{
|
|
55
56
|
get = function(self)
|
|
56
57
|
local ____self_2 = self.unitType
|
|
57
58
|
return ____self_2.getNumberField(
|
|
58
59
|
____self_2,
|
|
59
|
-
"
|
|
60
|
+
"ubs" .. tostring(self.index)
|
|
60
61
|
)
|
|
61
62
|
end,
|
|
62
|
-
set = function(self,
|
|
63
|
+
set = function(self, backSwingDuration)
|
|
63
64
|
local ____self_3 = self.unitType
|
|
64
65
|
____self_3.setNumberField(
|
|
65
66
|
____self_3,
|
|
67
|
+
"ubs" .. tostring(self.index),
|
|
68
|
+
backSwingDuration
|
|
69
|
+
)
|
|
70
|
+
end
|
|
71
|
+
},
|
|
72
|
+
true
|
|
73
|
+
)
|
|
74
|
+
__TS__SetDescriptor(
|
|
75
|
+
UnitTypeWeapon.prototype,
|
|
76
|
+
"cooldown",
|
|
77
|
+
{
|
|
78
|
+
get = function(self)
|
|
79
|
+
local ____self_4 = self.unitType
|
|
80
|
+
return ____self_4.getNumberField(
|
|
81
|
+
____self_4,
|
|
82
|
+
("ua" .. tostring(self.index)) .. "c"
|
|
83
|
+
)
|
|
84
|
+
end,
|
|
85
|
+
set = function(self, cooldown)
|
|
86
|
+
local ____self_5 = self.unitType
|
|
87
|
+
____self_5.setNumberField(
|
|
88
|
+
____self_5,
|
|
89
|
+
("ua" .. tostring(self.index)) .. "c",
|
|
90
|
+
cooldown
|
|
91
|
+
)
|
|
92
|
+
end
|
|
93
|
+
},
|
|
94
|
+
true
|
|
95
|
+
)
|
|
96
|
+
__TS__SetDescriptor(
|
|
97
|
+
UnitTypeWeapon.prototype,
|
|
98
|
+
"damage",
|
|
99
|
+
{
|
|
100
|
+
get = function(self)
|
|
101
|
+
local minimumDamage = self.damageBase + self.damageDiceCount
|
|
102
|
+
local maximumDamage = self.damageBase + self.damageDiceCount * self.damageDiceSideCount
|
|
103
|
+
return {minimumDamage, maximumDamage}
|
|
104
|
+
end,
|
|
105
|
+
set = function(self, ____bindingPattern0)
|
|
106
|
+
local maximumDamage
|
|
107
|
+
local minimumDamage
|
|
108
|
+
minimumDamage = ____bindingPattern0[1]
|
|
109
|
+
maximumDamage = ____bindingPattern0[2]
|
|
110
|
+
self.damageBase = minimumDamage - 1
|
|
111
|
+
self.damageDiceCount = 1
|
|
112
|
+
self.damageDiceSideCount = maximumDamage - minimumDamage + 1
|
|
113
|
+
end
|
|
114
|
+
},
|
|
115
|
+
true
|
|
116
|
+
)
|
|
117
|
+
__TS__SetDescriptor(
|
|
118
|
+
UnitTypeWeapon.prototype,
|
|
119
|
+
"damageBase",
|
|
120
|
+
{
|
|
121
|
+
get = function(self)
|
|
122
|
+
local ____self_6 = self.unitType
|
|
123
|
+
return ____self_6.getNumberField(
|
|
124
|
+
____self_6,
|
|
125
|
+
("ua" .. tostring(self.index)) .. "b"
|
|
126
|
+
)
|
|
127
|
+
end,
|
|
128
|
+
set = function(self, damageBase)
|
|
129
|
+
local ____self_7 = self.unitType
|
|
130
|
+
____self_7.setNumberField(
|
|
131
|
+
____self_7,
|
|
132
|
+
("ua" .. tostring(self.index)) .. "b",
|
|
133
|
+
damageBase
|
|
134
|
+
)
|
|
135
|
+
end
|
|
136
|
+
},
|
|
137
|
+
true
|
|
138
|
+
)
|
|
139
|
+
__TS__SetDescriptor(
|
|
140
|
+
UnitTypeWeapon.prototype,
|
|
141
|
+
"damageDiceCount",
|
|
142
|
+
{
|
|
143
|
+
get = function(self)
|
|
144
|
+
local ____self_8 = self.unitType
|
|
145
|
+
return ____self_8.getNumberField(
|
|
146
|
+
____self_8,
|
|
147
|
+
("ua" .. tostring(self.index)) .. "d"
|
|
148
|
+
)
|
|
149
|
+
end,
|
|
150
|
+
set = function(self, damageDiceNumber)
|
|
151
|
+
local ____self_9 = self.unitType
|
|
152
|
+
____self_9.setNumberField(
|
|
153
|
+
____self_9,
|
|
154
|
+
("ua" .. tostring(self.index)) .. "d",
|
|
155
|
+
damageDiceNumber
|
|
156
|
+
)
|
|
157
|
+
end
|
|
158
|
+
},
|
|
159
|
+
true
|
|
160
|
+
)
|
|
161
|
+
__TS__SetDescriptor(
|
|
162
|
+
UnitTypeWeapon.prototype,
|
|
163
|
+
"damageDiceSideCount",
|
|
164
|
+
{
|
|
165
|
+
get = function(self)
|
|
166
|
+
local ____self_10 = self.unitType
|
|
167
|
+
return ____self_10.getNumberField(
|
|
168
|
+
____self_10,
|
|
169
|
+
("ua" .. tostring(self.index)) .. "s"
|
|
170
|
+
)
|
|
171
|
+
end,
|
|
172
|
+
set = function(self, damageDiceSideCount)
|
|
173
|
+
local ____self_11 = self.unitType
|
|
174
|
+
____self_11.setNumberField(
|
|
175
|
+
____self_11,
|
|
176
|
+
("ua" .. tostring(self.index)) .. "s",
|
|
177
|
+
damageDiceSideCount
|
|
178
|
+
)
|
|
179
|
+
end
|
|
180
|
+
},
|
|
181
|
+
true
|
|
182
|
+
)
|
|
183
|
+
__TS__SetDescriptor(
|
|
184
|
+
UnitTypeWeapon.prototype,
|
|
185
|
+
"impactDelay",
|
|
186
|
+
{
|
|
187
|
+
get = function(self)
|
|
188
|
+
local ____self_12 = self.unitType
|
|
189
|
+
return ____self_12.getNumberField(
|
|
190
|
+
____self_12,
|
|
191
|
+
"udp" .. tostring(self.index)
|
|
192
|
+
)
|
|
193
|
+
end,
|
|
194
|
+
set = function(self, impactDelay)
|
|
195
|
+
local ____self_13 = self.unitType
|
|
196
|
+
____self_13.setNumberField(
|
|
197
|
+
____self_13,
|
|
66
198
|
"udp" .. tostring(self.index),
|
|
67
199
|
impactDelay
|
|
68
200
|
)
|
|
@@ -75,16 +207,16 @@ __TS__SetDescriptor(
|
|
|
75
207
|
"missileModelPath",
|
|
76
208
|
{
|
|
77
209
|
get = function(self)
|
|
78
|
-
local
|
|
79
|
-
return
|
|
80
|
-
|
|
210
|
+
local ____self_14 = self.unitType
|
|
211
|
+
return ____self_14.getStringField(
|
|
212
|
+
____self_14,
|
|
81
213
|
("ua" .. tostring(self.index)) .. "m"
|
|
82
214
|
)
|
|
83
215
|
end,
|
|
84
216
|
set = function(self, missileModelPath)
|
|
85
|
-
local
|
|
86
|
-
|
|
87
|
-
|
|
217
|
+
local ____self_15 = self.unitType
|
|
218
|
+
____self_15.setStringField(
|
|
219
|
+
____self_15,
|
|
88
220
|
("ua" .. tostring(self.index)) .. "m",
|
|
89
221
|
missileModelPath
|
|
90
222
|
)
|
|
@@ -92,21 +224,43 @@ __TS__SetDescriptor(
|
|
|
92
224
|
},
|
|
93
225
|
true
|
|
94
226
|
)
|
|
227
|
+
__TS__SetDescriptor(
|
|
228
|
+
UnitTypeWeapon.prototype,
|
|
229
|
+
"range",
|
|
230
|
+
{
|
|
231
|
+
get = function(self)
|
|
232
|
+
local ____self_16 = self.unitType
|
|
233
|
+
return ____self_16.getNumberField(
|
|
234
|
+
____self_16,
|
|
235
|
+
("ua" .. tostring(self.index)) .. "r"
|
|
236
|
+
)
|
|
237
|
+
end,
|
|
238
|
+
set = function(self, range)
|
|
239
|
+
local ____self_17 = self.unitType
|
|
240
|
+
____self_17.setNumberField(
|
|
241
|
+
____self_17,
|
|
242
|
+
("ua" .. tostring(self.index)) .. "r",
|
|
243
|
+
range
|
|
244
|
+
)
|
|
245
|
+
end
|
|
246
|
+
},
|
|
247
|
+
true
|
|
248
|
+
)
|
|
95
249
|
__TS__SetDescriptor(
|
|
96
250
|
UnitTypeWeapon.prototype,
|
|
97
251
|
"soundType",
|
|
98
252
|
{
|
|
99
253
|
get = function(self)
|
|
100
|
-
local
|
|
101
|
-
return
|
|
102
|
-
|
|
254
|
+
local ____self_18 = self.unitType
|
|
255
|
+
return ____self_18.getStringField(
|
|
256
|
+
____self_18,
|
|
103
257
|
"ucs" .. tostring(self.index)
|
|
104
258
|
)
|
|
105
259
|
end,
|
|
106
260
|
set = function(self, soundType)
|
|
107
|
-
local
|
|
108
|
-
|
|
109
|
-
|
|
261
|
+
local ____self_19 = self.unitType
|
|
262
|
+
____self_19.setStringField(
|
|
263
|
+
____self_19,
|
|
110
264
|
"ucs" .. tostring(self.index),
|
|
111
265
|
soundType
|
|
112
266
|
)
|
|
@@ -119,16 +273,16 @@ __TS__SetDescriptor(
|
|
|
119
273
|
"soundTypeSD",
|
|
120
274
|
{
|
|
121
275
|
get = function(self)
|
|
122
|
-
local
|
|
123
|
-
return
|
|
124
|
-
|
|
276
|
+
local ____self_20 = self.unitType
|
|
277
|
+
return ____self_20.getStringField(
|
|
278
|
+
____self_20,
|
|
125
279
|
("ucs" .. tostring(self.index)) .. ":sd"
|
|
126
280
|
)
|
|
127
281
|
end,
|
|
128
282
|
set = function(self, soundTypeSD)
|
|
129
|
-
local
|
|
130
|
-
|
|
131
|
-
|
|
283
|
+
local ____self_21 = self.unitType
|
|
284
|
+
____self_21.setStringField(
|
|
285
|
+
____self_21,
|
|
132
286
|
("ucs" .. tostring(self.index)) .. ":sd",
|
|
133
287
|
soundTypeSD
|
|
134
288
|
)
|
|
@@ -141,16 +295,16 @@ __TS__SetDescriptor(
|
|
|
141
295
|
"soundTypeHD",
|
|
142
296
|
{
|
|
143
297
|
get = function(self)
|
|
144
|
-
local
|
|
145
|
-
return
|
|
146
|
-
|
|
298
|
+
local ____self_22 = self.unitType
|
|
299
|
+
return ____self_22.getStringField(
|
|
300
|
+
____self_22,
|
|
147
301
|
("ucs" .. tostring(self.index)) .. ":hd"
|
|
148
302
|
)
|
|
149
303
|
end,
|
|
150
304
|
set = function(self, soundTypeHD)
|
|
151
|
-
local
|
|
152
|
-
|
|
153
|
-
|
|
305
|
+
local ____self_23 = self.unitType
|
|
306
|
+
____self_23.setStringField(
|
|
307
|
+
____self_23,
|
|
154
308
|
("ucs" .. tostring(self.index)) .. ":hd",
|
|
155
309
|
soundTypeHD
|
|
156
310
|
)
|
|
@@ -683,6 +837,45 @@ __TS__SetDescriptor(
|
|
|
683
837
|
},
|
|
684
838
|
true
|
|
685
839
|
)
|
|
840
|
+
__TS__SetDescriptor(
|
|
841
|
+
UnitType.prototype,
|
|
842
|
+
"runSpeed",
|
|
843
|
+
{
|
|
844
|
+
get = function(self)
|
|
845
|
+
return self:getNumberField("urun")
|
|
846
|
+
end,
|
|
847
|
+
set = function(self, runSpeed)
|
|
848
|
+
self:setNumberField("urun", runSpeed)
|
|
849
|
+
end
|
|
850
|
+
},
|
|
851
|
+
true
|
|
852
|
+
)
|
|
853
|
+
__TS__SetDescriptor(
|
|
854
|
+
UnitType.prototype,
|
|
855
|
+
"runSpeedSD",
|
|
856
|
+
{
|
|
857
|
+
get = function(self)
|
|
858
|
+
return self:getNumberField("urun:sd")
|
|
859
|
+
end,
|
|
860
|
+
set = function(self, runSpeedSD)
|
|
861
|
+
self:setNumberField("urun:sd", runSpeedSD)
|
|
862
|
+
end
|
|
863
|
+
},
|
|
864
|
+
true
|
|
865
|
+
)
|
|
866
|
+
__TS__SetDescriptor(
|
|
867
|
+
UnitType.prototype,
|
|
868
|
+
"runSpeedHD",
|
|
869
|
+
{
|
|
870
|
+
get = function(self)
|
|
871
|
+
return self:getNumberField("urun:hd")
|
|
872
|
+
end,
|
|
873
|
+
set = function(self, runSpeedHD)
|
|
874
|
+
self:setNumberField("urun:hd", runSpeedHD)
|
|
875
|
+
end
|
|
876
|
+
},
|
|
877
|
+
true
|
|
878
|
+
)
|
|
686
879
|
__TS__SetDescriptor(
|
|
687
880
|
UnitType.prototype,
|
|
688
881
|
"selectionCircleScale",
|
|
@@ -891,6 +1084,45 @@ __TS__SetDescriptor(
|
|
|
891
1084
|
},
|
|
892
1085
|
true
|
|
893
1086
|
)
|
|
1087
|
+
__TS__SetDescriptor(
|
|
1088
|
+
UnitType.prototype,
|
|
1089
|
+
"walkSpeed",
|
|
1090
|
+
{
|
|
1091
|
+
get = function(self)
|
|
1092
|
+
return self:getNumberField("uwal")
|
|
1093
|
+
end,
|
|
1094
|
+
set = function(self, walkSpeed)
|
|
1095
|
+
self:setNumberField("uwal", walkSpeed)
|
|
1096
|
+
end
|
|
1097
|
+
},
|
|
1098
|
+
true
|
|
1099
|
+
)
|
|
1100
|
+
__TS__SetDescriptor(
|
|
1101
|
+
UnitType.prototype,
|
|
1102
|
+
"walkSpeedSD",
|
|
1103
|
+
{
|
|
1104
|
+
get = function(self)
|
|
1105
|
+
return self:getNumberField("uwal:sd")
|
|
1106
|
+
end,
|
|
1107
|
+
set = function(self, walkSpeedSD)
|
|
1108
|
+
self:setNumberField("uwal:sd", walkSpeedSD)
|
|
1109
|
+
end
|
|
1110
|
+
},
|
|
1111
|
+
true
|
|
1112
|
+
)
|
|
1113
|
+
__TS__SetDescriptor(
|
|
1114
|
+
UnitType.prototype,
|
|
1115
|
+
"walkSpeedHD",
|
|
1116
|
+
{
|
|
1117
|
+
get = function(self)
|
|
1118
|
+
return self:getNumberField("uwal:hd")
|
|
1119
|
+
end,
|
|
1120
|
+
set = function(self, walkSpeedHD)
|
|
1121
|
+
self:setNumberField("uwal:hd", walkSpeedHD)
|
|
1122
|
+
end
|
|
1123
|
+
},
|
|
1124
|
+
true
|
|
1125
|
+
)
|
|
894
1126
|
__TS__SetDescriptor(
|
|
895
1127
|
UnitType.prototype,
|
|
896
1128
|
"armorSoundType",
|
|
@@ -964,25 +1196,25 @@ __TS__SetDescriptor(
|
|
|
964
1196
|
)
|
|
965
1197
|
__TS__SetDescriptor(
|
|
966
1198
|
UnitType.prototype,
|
|
967
|
-
"
|
|
1199
|
+
"weapons",
|
|
968
1200
|
{get = function(self)
|
|
969
|
-
return self
|
|
1201
|
+
return getOrCreateUnitTypeWeapons(self)
|
|
970
1202
|
end},
|
|
971
1203
|
true
|
|
972
1204
|
)
|
|
973
1205
|
__TS__SetDescriptor(
|
|
974
1206
|
UnitType.prototype,
|
|
975
|
-
"
|
|
1207
|
+
"firstWeapon",
|
|
976
1208
|
{get = function(self)
|
|
977
|
-
return self.weapons[
|
|
1209
|
+
return self.weapons[1]
|
|
978
1210
|
end},
|
|
979
1211
|
true
|
|
980
1212
|
)
|
|
981
1213
|
__TS__SetDescriptor(
|
|
982
1214
|
UnitType.prototype,
|
|
983
|
-
"
|
|
1215
|
+
"secondWeapon",
|
|
984
1216
|
{get = function(self)
|
|
985
|
-
return
|
|
1217
|
+
return self.weapons[2]
|
|
986
1218
|
end},
|
|
987
1219
|
true
|
|
988
1220
|
)
|
|
@@ -1168,6 +1400,71 @@ __TS__SetDescriptor(
|
|
|
1168
1400
|
},
|
|
1169
1401
|
true
|
|
1170
1402
|
)
|
|
1403
|
+
__TS__SetDescriptor(
|
|
1404
|
+
UnitType.prototype,
|
|
1405
|
+
"healthRegenerationRate",
|
|
1406
|
+
{
|
|
1407
|
+
get = function(self)
|
|
1408
|
+
return self:getNumberField("uhpr")
|
|
1409
|
+
end,
|
|
1410
|
+
set = function(self, healthRegenerationRate)
|
|
1411
|
+
self:setNumberField("uhpr", healthRegenerationRate)
|
|
1412
|
+
end
|
|
1413
|
+
},
|
|
1414
|
+
true
|
|
1415
|
+
)
|
|
1416
|
+
__TS__SetDescriptor(
|
|
1417
|
+
UnitType.prototype,
|
|
1418
|
+
"manaRegenerationRate",
|
|
1419
|
+
{
|
|
1420
|
+
get = function(self)
|
|
1421
|
+
return self:getNumberField("umpr")
|
|
1422
|
+
end,
|
|
1423
|
+
set = function(self, manaRegenerationRate)
|
|
1424
|
+
self:setNumberField("umpr", manaRegenerationRate)
|
|
1425
|
+
end
|
|
1426
|
+
},
|
|
1427
|
+
true
|
|
1428
|
+
)
|
|
1429
|
+
__TS__SetDescriptor(
|
|
1430
|
+
UnitType.prototype,
|
|
1431
|
+
"maximumHealth",
|
|
1432
|
+
{
|
|
1433
|
+
get = function(self)
|
|
1434
|
+
return self:getNumberField("uhpm")
|
|
1435
|
+
end,
|
|
1436
|
+
set = function(self, maximumHealth)
|
|
1437
|
+
self:setNumberField("uhpm", maximumHealth)
|
|
1438
|
+
end
|
|
1439
|
+
},
|
|
1440
|
+
true
|
|
1441
|
+
)
|
|
1442
|
+
__TS__SetDescriptor(
|
|
1443
|
+
UnitType.prototype,
|
|
1444
|
+
"maximumMana",
|
|
1445
|
+
{
|
|
1446
|
+
get = function(self)
|
|
1447
|
+
return self:getNumberField("umpm")
|
|
1448
|
+
end,
|
|
1449
|
+
set = function(self, maximumMana)
|
|
1450
|
+
self:setNumberField("umpm", maximumMana)
|
|
1451
|
+
end
|
|
1452
|
+
},
|
|
1453
|
+
true
|
|
1454
|
+
)
|
|
1455
|
+
__TS__SetDescriptor(
|
|
1456
|
+
UnitType.prototype,
|
|
1457
|
+
"initialMana",
|
|
1458
|
+
{
|
|
1459
|
+
get = function(self)
|
|
1460
|
+
return self:getNumberField("umpi")
|
|
1461
|
+
end,
|
|
1462
|
+
set = function(self, initialMana)
|
|
1463
|
+
self:setNumberField("umpi", initialMana)
|
|
1464
|
+
end
|
|
1465
|
+
},
|
|
1466
|
+
true
|
|
1467
|
+
)
|
|
1171
1468
|
__TS__SetDescriptor(
|
|
1172
1469
|
UnitType.prototype,
|
|
1173
1470
|
"isStructure",
|
|
@@ -1262,11 +1559,11 @@ __TS__SetDescriptor(
|
|
|
1262
1559
|
implementReadonlyNumberIndexSupplier(
|
|
1263
1560
|
____exports.UnitType,
|
|
1264
1561
|
function(id)
|
|
1265
|
-
local
|
|
1266
|
-
|
|
1267
|
-
__TS__ClassExtends(
|
|
1268
|
-
|
|
1269
|
-
return
|
|
1562
|
+
local ____class_24 = __TS__Class()
|
|
1563
|
+
____class_24.name = ____class_24.name
|
|
1564
|
+
__TS__ClassExtends(____class_24, ____exports.UnitType)
|
|
1565
|
+
____class_24.BASE_ID = id
|
|
1566
|
+
return ____class_24
|
|
1270
1567
|
end
|
|
1271
1568
|
)
|
|
1272
1569
|
____exports.HeroUnitType = __TS__Class()
|
|
@@ -1293,14 +1590,45 @@ __TS__SetDescriptor(
|
|
|
1293
1590
|
},
|
|
1294
1591
|
true
|
|
1295
1592
|
)
|
|
1593
|
+
__TS__SetDescriptor(
|
|
1594
|
+
HeroUnitType.prototype,
|
|
1595
|
+
"properNames",
|
|
1596
|
+
{
|
|
1597
|
+
get = function(self)
|
|
1598
|
+
return self:getStringsField("upro")
|
|
1599
|
+
end,
|
|
1600
|
+
set = function(self, properNames)
|
|
1601
|
+
if __TS__ArrayIsArray(properNames) then
|
|
1602
|
+
self:setStringsField("upro", properNames)
|
|
1603
|
+
self:setNumberField("upru", #properNames)
|
|
1604
|
+
else
|
|
1605
|
+
self:setStringField("upro", properNames)
|
|
1606
|
+
end
|
|
1607
|
+
end
|
|
1608
|
+
},
|
|
1609
|
+
true
|
|
1610
|
+
)
|
|
1611
|
+
__TS__SetDescriptor(
|
|
1612
|
+
HeroUnitType.prototype,
|
|
1613
|
+
"properNameCount",
|
|
1614
|
+
{
|
|
1615
|
+
get = function(self)
|
|
1616
|
+
return self:getNumberField("upru")
|
|
1617
|
+
end,
|
|
1618
|
+
set = function(self, properNameCount)
|
|
1619
|
+
self:setNumberField("upru", properNameCount)
|
|
1620
|
+
end
|
|
1621
|
+
},
|
|
1622
|
+
true
|
|
1623
|
+
)
|
|
1296
1624
|
implementReadonlyNumberIndexSupplier(
|
|
1297
1625
|
____exports.HeroUnitType,
|
|
1298
1626
|
function(id)
|
|
1299
|
-
local
|
|
1300
|
-
|
|
1301
|
-
__TS__ClassExtends(
|
|
1302
|
-
|
|
1303
|
-
return
|
|
1627
|
+
local ____class_25 = __TS__Class()
|
|
1628
|
+
____class_25.name = ____class_25.name
|
|
1629
|
+
__TS__ClassExtends(____class_25, ____exports.HeroUnitType)
|
|
1630
|
+
____class_25.BASE_ID = id
|
|
1631
|
+
return ____class_25
|
|
1304
1632
|
end
|
|
1305
1633
|
)
|
|
1306
1634
|
return ____exports
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="warpack-types/warpack" />
|
|
2
1
|
/** @noSelfInFile */
|
|
3
2
|
import { AttachmentPreset, AttachmentPresetInput } from "./auxiliary/attachment-preset";
|
|
4
3
|
import { MutableKeys } from "../../utility/types";
|
|
@@ -10,8 +9,8 @@ export type ObjectDataEntryConstructor<T extends ObjectDataEntry> = OmitConstruc
|
|
|
10
9
|
export type ObjectDataEntryAbstractConstructor<T extends ObjectDataEntry> = OmitConstructor<typeof ObjectDataEntry> & (abstract new (object: WarObject) => T);
|
|
11
10
|
export type ObjectDataEntryProperties<T extends ObjectDataEntry> = Partial<T[MutableKeys<T>]>;
|
|
12
11
|
export type ObjectDataEntryLevelFieldValueSupplier<ValueType extends string | number | boolean | undefined | Record<string, any>, InputValueType = ValueType> = ValueType | readonly ValueType[] | ((level: number, currentValue: InputValueType) => ValueType);
|
|
13
|
-
export declare const extractObjectDataEntryLevelFieldValue: <ValueType extends string | number | boolean | Record<string, any
|
|
14
|
-
export declare const extractObjectDataEntryLevelArrayFieldValue: <T extends string | number | boolean | Record<string, any
|
|
12
|
+
export declare const extractObjectDataEntryLevelFieldValue: <ValueType extends string | number | boolean | undefined | Record<string, any>, InputValueType = ValueType>(supplier: ObjectDataEntryLevelFieldValueSupplier<ValueType, InputValueType>, level: number, currentValue: InputValueType) => ValueType;
|
|
13
|
+
export declare const extractObjectDataEntryLevelArrayFieldValue: <T extends string | number | boolean | undefined | Record<string, any>, S extends T[]>(supplier: ObjectDataEntryLevelFieldValueSupplier<S>, level: number, currentValue: S) => S;
|
|
15
14
|
export declare abstract class ObjectDataEntry<Id extends ObjectDataEntryId = ObjectDataEntryId> {
|
|
16
15
|
protected readonly object: WarObject;
|
|
17
16
|
static readonly BASE_ID: ObjectDataEntryId;
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
/** @noSelfInFile */
|
|
2
|
-
import { Ability } from "../internal/ability";
|
|
2
|
+
import { Ability, jabilityfield } from "../internal/ability";
|
|
3
3
|
import { ObjectArrayField, ObjectField, ObjectFieldValueChangeEvent, ObjectLevelField, ObjectLevelFieldValueChangeEvent, ReadonlyObjectFieldType, ReadonlyObjectLevelFieldType } from "../object-field";
|
|
4
4
|
import { AbilityType, AbilityTypeId } from "../object-data/entry/ability-type";
|
|
5
5
|
import { ObjectDataEntryId } from "../object-data/entry";
|
|
6
6
|
import { LightningTypeId } from "../object-data/entry/lightning-type";
|
|
7
7
|
import { CombatClassifications } from "../object-data/auxiliary/combat-classification";
|
|
8
8
|
import { UnitTypeId } from "../object-data/entry/unit-type";
|
|
9
|
-
export declare abstract class AbilityField<ValueType extends number | string | boolean = number | string | boolean, NativeFieldType =
|
|
9
|
+
export declare abstract class AbilityField<ValueType extends number | string | boolean = number | string | boolean, NativeFieldType extends jabilityfield = jabilityfield> extends ObjectField<AbilityType, Ability, ValueType, NativeFieldType> {
|
|
10
10
|
protected get instanceClass(): typeof Ability;
|
|
11
11
|
protected getObjectDataEntryId(instance: Ability): AbilityTypeId;
|
|
12
|
+
protected hasNativeFieldValue(instance: Ability): boolean;
|
|
12
13
|
static get valueChangeEvent(): ObjectFieldValueChangeEvent<ReadonlyObjectFieldType<AbilityField>>;
|
|
13
14
|
}
|
|
14
15
|
export declare class AbilityBooleanField extends AbilityField<boolean, jabilitybooleanfield> {
|
|
@@ -18,7 +19,7 @@ export declare class AbilityBooleanField extends AbilityField<boolean, jabilityb
|
|
|
18
19
|
protected setNativeFieldValue(instance: Ability, value: boolean): boolean;
|
|
19
20
|
static get valueChangeEvent(): ObjectFieldValueChangeEvent<AbilityBooleanField>;
|
|
20
21
|
}
|
|
21
|
-
export declare abstract class AbilityNumberField<NativeFieldType =
|
|
22
|
+
export declare abstract class AbilityNumberField<NativeFieldType extends jabilityfield = jabilityfield> extends AbilityField<number, NativeFieldType> {
|
|
22
23
|
protected get defaultValue(): number;
|
|
23
24
|
static get valueChangeEvent(): ObjectFieldValueChangeEvent<AbilityNumberField>;
|
|
24
25
|
}
|
|
@@ -59,10 +60,11 @@ export declare abstract class AbilityObjectDataEntryIdArrayField<T extends Objec
|
|
|
59
60
|
}
|
|
60
61
|
export declare class AbilityLightningTypeIdArrayField extends AbilityObjectDataEntryIdArrayField<LightningTypeId> {
|
|
61
62
|
}
|
|
62
|
-
export declare abstract class AbilityLevelField<ValueType extends number | string | boolean = number | string | boolean, InputValueType extends ValueType = never, NativeFieldType =
|
|
63
|
+
export declare abstract class AbilityLevelField<ValueType extends number | string | boolean = number | string | boolean, InputValueType extends ValueType = never, NativeFieldType extends jabilityfield = jabilityfield> extends ObjectLevelField<AbilityType, Ability, ValueType, InputValueType, NativeFieldType> {
|
|
63
64
|
protected get instanceClass(): typeof Ability;
|
|
64
65
|
protected getLevelCount(entry: AbilityType | Ability): number;
|
|
65
66
|
protected getObjectDataEntryId(instance: Ability): AbilityTypeId;
|
|
67
|
+
protected hasNativeFieldValue(instance: Ability): boolean;
|
|
66
68
|
static get valueChangeEvent(): ObjectLevelFieldValueChangeEvent<ReadonlyObjectLevelFieldType<AbilityLevelField>>;
|
|
67
69
|
}
|
|
68
70
|
export declare class AbilityBooleanLevelField extends AbilityLevelField<boolean, boolean, jabilityintegerlevelfield> {
|
|
@@ -72,7 +74,7 @@ export declare class AbilityBooleanLevelField extends AbilityLevelField<boolean,
|
|
|
72
74
|
protected setNativeFieldValue(instance: Ability, level: number, value: boolean): boolean;
|
|
73
75
|
static get valueChangeEvent(): ObjectLevelFieldValueChangeEvent<AbilityBooleanLevelField>;
|
|
74
76
|
}
|
|
75
|
-
export declare abstract class AbilityNumberLevelField<NativeFieldType =
|
|
77
|
+
export declare abstract class AbilityNumberLevelField<NativeFieldType extends jabilityfield = jabilityfield> extends AbilityLevelField<number, number, NativeFieldType> {
|
|
76
78
|
protected get defaultValue(): number;
|
|
77
79
|
static get valueChangeEvent(): ObjectLevelFieldValueChangeEvent<AbilityNumberLevelField>;
|
|
78
80
|
}
|
|
@@ -112,4 +114,4 @@ export declare class AbilityCombatClassificationsLevelField extends AbilityLevel
|
|
|
112
114
|
protected setNativeFieldValue(instance: Ability, level: number, value: CombatClassifications): boolean;
|
|
113
115
|
}
|
|
114
116
|
export type AbilityDependentValue<ValueType extends boolean | number | string> = ValueType | AbilityField<ValueType> | AbilityLevelField<ValueType> | ((ability: Ability) => ValueType);
|
|
115
|
-
export declare const resolveCurrentAbilityDependentValue: <ValueType extends
|
|
117
|
+
export declare const resolveCurrentAbilityDependentValue: <ValueType extends boolean | number | string>(ability: Ability, value: AbilityDependentValue<ValueType>) => ValueType;
|
|
@@ -27,6 +27,9 @@ __TS__ClassExtends(AbilityField, ObjectField)
|
|
|
27
27
|
function AbilityField.prototype.getObjectDataEntryId(self, instance)
|
|
28
28
|
return instance.typeId
|
|
29
29
|
end
|
|
30
|
+
function AbilityField.prototype.hasNativeFieldValue(self, instance)
|
|
31
|
+
return instance:hasField(self.nativeField)
|
|
32
|
+
end
|
|
30
33
|
__TS__SetDescriptor(
|
|
31
34
|
AbilityField.prototype,
|
|
32
35
|
"instanceClass",
|
|
@@ -261,6 +264,9 @@ end
|
|
|
261
264
|
function AbilityLevelField.prototype.getObjectDataEntryId(self, instance)
|
|
262
265
|
return instance.typeId
|
|
263
266
|
end
|
|
267
|
+
function AbilityLevelField.prototype.hasNativeFieldValue(self, instance)
|
|
268
|
+
return instance:hasField(self.nativeField)
|
|
269
|
+
end
|
|
264
270
|
__TS__SetDescriptor(
|
|
265
271
|
AbilityLevelField.prototype,
|
|
266
272
|
"instanceClass",
|
|
@@ -9,6 +9,7 @@ export declare abstract class UnitField<ValueType extends number | string | bool
|
|
|
9
9
|
export declare class UnitStringField extends UnitField<string, junitstringfield> {
|
|
10
10
|
protected get defaultValue(): string;
|
|
11
11
|
protected getNativeFieldById(id: number): junitstringfield;
|
|
12
|
+
protected hasNativeFieldValue(): boolean;
|
|
12
13
|
protected getNativeFieldValue(instance: Unit): string;
|
|
13
14
|
protected getObjectDataEntryId(instance: Unit): UnitTypeId;
|
|
14
15
|
protected setNativeFieldValue(instance: Unit, value: string): boolean;
|