warscript 0.0.1-dev.ee2345e → 0.0.1-dev.f9efacb
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 +0 -1
- package/binaryreader.d.ts +1 -0
- package/binaryreader.lua +3 -0
- package/core/types/frame.d.ts +8 -1
- package/core/types/frame.lua +93 -1
- package/core/types/group.d.ts +0 -1
- 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.d.ts +1 -1
- package/core/util.lua +6 -0
- package/decl/index.d.ts +1 -0
- package/engine/ability.d.ts +1 -1
- package/engine/behavior.d.ts +10 -10
- package/engine/behavior.lua +6 -6
- package/engine/behaviour/ability/apply-buff.d.ts +3 -5
- package/engine/behaviour/ability/apply-unit-behavior.d.ts +6 -1
- package/engine/behaviour/ability/damage.d.ts +33 -11
- package/engine/behaviour/ability/damage.lua +89 -31
- package/engine/behaviour/ability/heal.d.ts +33 -6
- package/engine/behaviour/ability/heal.lua +89 -10
- package/engine/behaviour/ability/instant-impact.lua +4 -0
- package/engine/behaviour/ability/restore-mana.d.ts +15 -0
- package/engine/behaviour/ability/restore-mana.lua +29 -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/behaviour/unit.d.ts +8 -2
- package/engine/behaviour/unit.lua +27 -0
- package/engine/buff.d.ts +62 -20
- package/engine/buff.lua +247 -72
- package/engine/game-map.d.ts +7 -0
- package/engine/game-map.lua +32 -0
- package/engine/internal/ability.d.ts +3 -11
- package/engine/internal/ability.lua +9 -78
- package/engine/internal/item+owner.lua +2 -2
- package/engine/internal/unit/bonus.d.ts +9 -8
- package/engine/internal/unit/bonus.lua +6 -1
- package/engine/internal/unit/item.d.ts +24 -0
- package/engine/internal/unit/item.lua +84 -0
- package/engine/internal/unit/main-selected.d.ts +7 -0
- package/engine/internal/unit/main-selected.lua +40 -0
- package/engine/internal/unit+ability.lua +2 -2
- package/engine/internal/unit+transport.lua +4 -10
- package/engine/internal/unit-missile-launch.lua +25 -6
- package/engine/internal/unit.d.ts +57 -16
- package/engine/internal/unit.lua +313 -111
- package/engine/local-client.d.ts +7 -2
- package/engine/local-client.lua +82 -0
- 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/channel.d.ts +0 -1
- 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 +0 -1
- package/engine/object-data/entry/buff-type/applicable.d.ts +0 -1
- 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 +12 -1
- package/engine/object-data/entry/item-type.lua +78 -0
- package/engine/object-data/entry/lightning-type.d.ts +0 -1
- package/engine/object-data/entry/unit-type.d.ts +37 -2
- package/engine/object-data/entry/unit-type.lua +333 -49
- 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 +18 -1
- package/engine/object-field/ability.lua +51 -1
- package/engine/object-field.d.ts +0 -1
- package/engine/random.d.ts +1 -0
- package/engine/random.lua +9 -0
- package/engine/standard/entries/unit-type.d.ts +39 -1
- package/engine/standard/entries/unit-type.lua +39 -1
- package/engine/standard/fields/ability.d.ts +1 -1
- package/engine/standard/fields/ability.lua +1 -1
- package/engine/unit.d.ts +2 -0
- package/engine/unit.lua +11 -2
- package/event.d.ts +2 -3
- package/event.lua +9 -5
- package/index.d.ts +1 -0
- package/index.lua +1 -0
- package/lualib_bundle.lua +146 -42
- package/math/vec2.d.ts +2 -9
- package/math.d.ts +0 -2
- package/net/socket.d.ts +7 -1
- package/net/socket.lua +45 -4
- package/network.d.ts +1 -0
- package/network.lua +3 -2
- package/objutil/ability.d.ts +0 -1
- package/objutil/buff.d.ts +0 -1
- package/objutil/buff.lua +1 -1
- package/objutil/object.d.ts +0 -1
- package/objutil/unit.d.ts +0 -1
- package/package.json +13 -14
- package/patch-lua.d.ts +0 -0
- package/patch-lua.lua +10 -0
- package/property.d.ts +55 -0
- package/property.lua +374 -0
- package/string.d.ts +30 -0
- package/string.lua +14 -0
- package/util/stream.d.ts +0 -1
- package/utility/arrays.d.ts +3 -4
- package/utility/bit-set.d.ts +0 -2
- package/utility/linked-set.d.ts +11 -3
- package/utility/linked-set.lua +5 -2
- package/utility/lua-maps.d.ts +1 -2
- package/utility/lua-sets.d.ts +1 -2
- package/utility/types.d.ts +1 -0
- package/core/mapbounds.d.ts +0 -8
- package/core/mapbounds.lua +0 -12
|
@@ -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
|
|
@@ -72,21 +73,21 @@ __TS__SetDescriptor(
|
|
|
72
73
|
)
|
|
73
74
|
__TS__SetDescriptor(
|
|
74
75
|
UnitTypeWeapon.prototype,
|
|
75
|
-
"
|
|
76
|
+
"cooldown",
|
|
76
77
|
{
|
|
77
78
|
get = function(self)
|
|
78
79
|
local ____self_4 = self.unitType
|
|
79
80
|
return ____self_4.getNumberField(
|
|
80
81
|
____self_4,
|
|
81
|
-
"
|
|
82
|
+
("ua" .. tostring(self.index)) .. "c"
|
|
82
83
|
)
|
|
83
84
|
end,
|
|
84
|
-
set = function(self,
|
|
85
|
+
set = function(self, cooldown)
|
|
85
86
|
local ____self_5 = self.unitType
|
|
86
87
|
____self_5.setNumberField(
|
|
87
88
|
____self_5,
|
|
88
|
-
"
|
|
89
|
-
|
|
89
|
+
("ua" .. tostring(self.index)) .. "c",
|
|
90
|
+
cooldown
|
|
90
91
|
)
|
|
91
92
|
end
|
|
92
93
|
},
|
|
@@ -94,21 +95,42 @@ __TS__SetDescriptor(
|
|
|
94
95
|
)
|
|
95
96
|
__TS__SetDescriptor(
|
|
96
97
|
UnitTypeWeapon.prototype,
|
|
97
|
-
"
|
|
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",
|
|
98
120
|
{
|
|
99
121
|
get = function(self)
|
|
100
122
|
local ____self_6 = self.unitType
|
|
101
|
-
return ____self_6.
|
|
123
|
+
return ____self_6.getNumberField(
|
|
102
124
|
____self_6,
|
|
103
|
-
("ua" .. tostring(self.index)) .. "
|
|
125
|
+
("ua" .. tostring(self.index)) .. "b"
|
|
104
126
|
)
|
|
105
127
|
end,
|
|
106
|
-
set = function(self,
|
|
128
|
+
set = function(self, damageBase)
|
|
107
129
|
local ____self_7 = self.unitType
|
|
108
|
-
____self_7.
|
|
130
|
+
____self_7.setNumberField(
|
|
109
131
|
____self_7,
|
|
110
|
-
("ua" .. tostring(self.index)) .. "
|
|
111
|
-
|
|
132
|
+
("ua" .. tostring(self.index)) .. "b",
|
|
133
|
+
damageBase
|
|
112
134
|
)
|
|
113
135
|
end
|
|
114
136
|
},
|
|
@@ -116,19 +138,107 @@ __TS__SetDescriptor(
|
|
|
116
138
|
)
|
|
117
139
|
__TS__SetDescriptor(
|
|
118
140
|
UnitTypeWeapon.prototype,
|
|
119
|
-
"
|
|
141
|
+
"damageDiceCount",
|
|
120
142
|
{
|
|
121
143
|
get = function(self)
|
|
122
144
|
local ____self_8 = self.unitType
|
|
123
145
|
return ____self_8.getNumberField(
|
|
124
146
|
____self_8,
|
|
125
|
-
("ua" .. tostring(self.index)) .. "
|
|
147
|
+
("ua" .. tostring(self.index)) .. "d"
|
|
126
148
|
)
|
|
127
149
|
end,
|
|
128
|
-
set = function(self,
|
|
150
|
+
set = function(self, damageDiceNumber)
|
|
129
151
|
local ____self_9 = self.unitType
|
|
130
152
|
____self_9.setNumberField(
|
|
131
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,
|
|
198
|
+
"udp" .. tostring(self.index),
|
|
199
|
+
impactDelay
|
|
200
|
+
)
|
|
201
|
+
end
|
|
202
|
+
},
|
|
203
|
+
true
|
|
204
|
+
)
|
|
205
|
+
__TS__SetDescriptor(
|
|
206
|
+
UnitTypeWeapon.prototype,
|
|
207
|
+
"missileModelPath",
|
|
208
|
+
{
|
|
209
|
+
get = function(self)
|
|
210
|
+
local ____self_14 = self.unitType
|
|
211
|
+
return ____self_14.getStringField(
|
|
212
|
+
____self_14,
|
|
213
|
+
("ua" .. tostring(self.index)) .. "m"
|
|
214
|
+
)
|
|
215
|
+
end,
|
|
216
|
+
set = function(self, missileModelPath)
|
|
217
|
+
local ____self_15 = self.unitType
|
|
218
|
+
____self_15.setStringField(
|
|
219
|
+
____self_15,
|
|
220
|
+
("ua" .. tostring(self.index)) .. "m",
|
|
221
|
+
missileModelPath
|
|
222
|
+
)
|
|
223
|
+
end
|
|
224
|
+
},
|
|
225
|
+
true
|
|
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,
|
|
132
242
|
("ua" .. tostring(self.index)) .. "r",
|
|
133
243
|
range
|
|
134
244
|
)
|
|
@@ -141,16 +251,16 @@ __TS__SetDescriptor(
|
|
|
141
251
|
"soundType",
|
|
142
252
|
{
|
|
143
253
|
get = function(self)
|
|
144
|
-
local
|
|
145
|
-
return
|
|
146
|
-
|
|
254
|
+
local ____self_18 = self.unitType
|
|
255
|
+
return ____self_18.getStringField(
|
|
256
|
+
____self_18,
|
|
147
257
|
"ucs" .. tostring(self.index)
|
|
148
258
|
)
|
|
149
259
|
end,
|
|
150
260
|
set = function(self, soundType)
|
|
151
|
-
local
|
|
152
|
-
|
|
153
|
-
|
|
261
|
+
local ____self_19 = self.unitType
|
|
262
|
+
____self_19.setStringField(
|
|
263
|
+
____self_19,
|
|
154
264
|
"ucs" .. tostring(self.index),
|
|
155
265
|
soundType
|
|
156
266
|
)
|
|
@@ -163,16 +273,16 @@ __TS__SetDescriptor(
|
|
|
163
273
|
"soundTypeSD",
|
|
164
274
|
{
|
|
165
275
|
get = function(self)
|
|
166
|
-
local
|
|
167
|
-
return
|
|
168
|
-
|
|
276
|
+
local ____self_20 = self.unitType
|
|
277
|
+
return ____self_20.getStringField(
|
|
278
|
+
____self_20,
|
|
169
279
|
("ucs" .. tostring(self.index)) .. ":sd"
|
|
170
280
|
)
|
|
171
281
|
end,
|
|
172
282
|
set = function(self, soundTypeSD)
|
|
173
|
-
local
|
|
174
|
-
|
|
175
|
-
|
|
283
|
+
local ____self_21 = self.unitType
|
|
284
|
+
____self_21.setStringField(
|
|
285
|
+
____self_21,
|
|
176
286
|
("ucs" .. tostring(self.index)) .. ":sd",
|
|
177
287
|
soundTypeSD
|
|
178
288
|
)
|
|
@@ -185,16 +295,16 @@ __TS__SetDescriptor(
|
|
|
185
295
|
"soundTypeHD",
|
|
186
296
|
{
|
|
187
297
|
get = function(self)
|
|
188
|
-
local
|
|
189
|
-
return
|
|
190
|
-
|
|
298
|
+
local ____self_22 = self.unitType
|
|
299
|
+
return ____self_22.getStringField(
|
|
300
|
+
____self_22,
|
|
191
301
|
("ucs" .. tostring(self.index)) .. ":hd"
|
|
192
302
|
)
|
|
193
303
|
end,
|
|
194
304
|
set = function(self, soundTypeHD)
|
|
195
|
-
local
|
|
196
|
-
|
|
197
|
-
|
|
305
|
+
local ____self_23 = self.unitType
|
|
306
|
+
____self_23.setStringField(
|
|
307
|
+
____self_23,
|
|
198
308
|
("ucs" .. tostring(self.index)) .. ":hd",
|
|
199
309
|
soundTypeHD
|
|
200
310
|
)
|
|
@@ -727,6 +837,45 @@ __TS__SetDescriptor(
|
|
|
727
837
|
},
|
|
728
838
|
true
|
|
729
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
|
+
)
|
|
730
879
|
__TS__SetDescriptor(
|
|
731
880
|
UnitType.prototype,
|
|
732
881
|
"selectionCircleScale",
|
|
@@ -935,6 +1084,45 @@ __TS__SetDescriptor(
|
|
|
935
1084
|
},
|
|
936
1085
|
true
|
|
937
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
|
+
)
|
|
938
1126
|
__TS__SetDescriptor(
|
|
939
1127
|
UnitType.prototype,
|
|
940
1128
|
"armorSoundType",
|
|
@@ -1008,25 +1196,25 @@ __TS__SetDescriptor(
|
|
|
1008
1196
|
)
|
|
1009
1197
|
__TS__SetDescriptor(
|
|
1010
1198
|
UnitType.prototype,
|
|
1011
|
-
"
|
|
1199
|
+
"weapons",
|
|
1012
1200
|
{get = function(self)
|
|
1013
|
-
return self
|
|
1201
|
+
return getOrCreateUnitTypeWeapons(self)
|
|
1014
1202
|
end},
|
|
1015
1203
|
true
|
|
1016
1204
|
)
|
|
1017
1205
|
__TS__SetDescriptor(
|
|
1018
1206
|
UnitType.prototype,
|
|
1019
|
-
"
|
|
1207
|
+
"firstWeapon",
|
|
1020
1208
|
{get = function(self)
|
|
1021
|
-
return self.weapons[
|
|
1209
|
+
return self.weapons[1]
|
|
1022
1210
|
end},
|
|
1023
1211
|
true
|
|
1024
1212
|
)
|
|
1025
1213
|
__TS__SetDescriptor(
|
|
1026
1214
|
UnitType.prototype,
|
|
1027
|
-
"
|
|
1215
|
+
"secondWeapon",
|
|
1028
1216
|
{get = function(self)
|
|
1029
|
-
return
|
|
1217
|
+
return self.weapons[2]
|
|
1030
1218
|
end},
|
|
1031
1219
|
true
|
|
1032
1220
|
)
|
|
@@ -1212,6 +1400,71 @@ __TS__SetDescriptor(
|
|
|
1212
1400
|
},
|
|
1213
1401
|
true
|
|
1214
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
|
+
)
|
|
1215
1468
|
__TS__SetDescriptor(
|
|
1216
1469
|
UnitType.prototype,
|
|
1217
1470
|
"isStructure",
|
|
@@ -1306,11 +1559,11 @@ __TS__SetDescriptor(
|
|
|
1306
1559
|
implementReadonlyNumberIndexSupplier(
|
|
1307
1560
|
____exports.UnitType,
|
|
1308
1561
|
function(id)
|
|
1309
|
-
local
|
|
1310
|
-
|
|
1311
|
-
__TS__ClassExtends(
|
|
1312
|
-
|
|
1313
|
-
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
|
|
1314
1567
|
end
|
|
1315
1568
|
)
|
|
1316
1569
|
____exports.HeroUnitType = __TS__Class()
|
|
@@ -1337,14 +1590,45 @@ __TS__SetDescriptor(
|
|
|
1337
1590
|
},
|
|
1338
1591
|
true
|
|
1339
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
|
+
)
|
|
1340
1624
|
implementReadonlyNumberIndexSupplier(
|
|
1341
1625
|
____exports.HeroUnitType,
|
|
1342
1626
|
function(id)
|
|
1343
|
-
local
|
|
1344
|
-
|
|
1345
|
-
__TS__ClassExtends(
|
|
1346
|
-
|
|
1347
|
-
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
|
|
1348
1632
|
end
|
|
1349
1633
|
)
|
|
1350
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;
|
|
@@ -6,6 +6,9 @@ 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
|
+
import { BuffResistanceType } from "../object-data/auxiliary/buff-resistance-type";
|
|
10
|
+
import { BuffPolarity } from "../object-data/auxiliary/buff-polarity";
|
|
11
|
+
import { ReadonlyNonEmptyLinkedSet } from "../../utility/linked-set";
|
|
9
12
|
export declare abstract class AbilityField<ValueType extends number | string | boolean = number | string | boolean, NativeFieldType extends jabilityfield = jabilityfield> extends ObjectField<AbilityType, Ability, ValueType, NativeFieldType> {
|
|
10
13
|
protected get instanceClass(): typeof Ability;
|
|
11
14
|
protected getObjectDataEntryId(instance: Ability): AbilityTypeId;
|
|
@@ -107,6 +110,20 @@ export declare class AbilityAbilityTypeIdLevelField extends AbilityObjectDataEnt
|
|
|
107
110
|
}
|
|
108
111
|
export declare class AbilityUnitTypeIdLevelField extends AbilityObjectDataEntryIdLevelField<UnitTypeId> {
|
|
109
112
|
}
|
|
113
|
+
export declare abstract class AbilityEnumLevelField<T extends number> extends AbilityLevelField<T, T, jabilityintegerlevelfield> {
|
|
114
|
+
protected abstract values: ReadonlyNonEmptyLinkedSet<T>;
|
|
115
|
+
protected get defaultValue(): T;
|
|
116
|
+
protected getNativeFieldById(id: number): jabilityintegerlevelfield;
|
|
117
|
+
protected getNativeFieldValue(instance: Ability, level: number): T;
|
|
118
|
+
protected setNativeFieldValue(instance: Ability, level: number, value: T): boolean;
|
|
119
|
+
static get valueChangeEvent(): ObjectLevelFieldValueChangeEvent<AbilityBooleanLevelField>;
|
|
120
|
+
}
|
|
121
|
+
export declare class AbilityBuffPolarityLevelField extends AbilityEnumLevelField<BuffPolarity> {
|
|
122
|
+
protected values: ReadonlyNonEmptyLinkedSet<BuffPolarity>;
|
|
123
|
+
}
|
|
124
|
+
export declare class AbilityBuffResistanceTypeLevelField extends AbilityEnumLevelField<BuffResistanceType> {
|
|
125
|
+
protected values: ReadonlyNonEmptyLinkedSet<BuffResistanceType>;
|
|
126
|
+
}
|
|
110
127
|
export declare class AbilityCombatClassificationsLevelField extends AbilityLevelField<CombatClassifications, CombatClassifications, jabilityintegerlevelfield> {
|
|
111
128
|
protected get defaultValue(): CombatClassifications;
|
|
112
129
|
protected getNativeFieldById(id: number): jabilityintegerlevelfield;
|
|
@@ -114,4 +131,4 @@ export declare class AbilityCombatClassificationsLevelField extends AbilityLevel
|
|
|
114
131
|
protected setNativeFieldValue(instance: Ability, level: number, value: CombatClassifications): boolean;
|
|
115
132
|
}
|
|
116
133
|
export type AbilityDependentValue<ValueType extends boolean | number | string> = ValueType | AbilityField<ValueType> | AbilityLevelField<ValueType> | ((ability: Ability) => ValueType);
|
|
117
|
-
export declare const resolveCurrentAbilityDependentValue: <ValueType extends
|
|
134
|
+
export declare const resolveCurrentAbilityDependentValue: <ValueType extends boolean | number | string>(ability: Ability, value: AbilityDependentValue<ValueType>) => ValueType;
|
|
@@ -13,6 +13,8 @@ local ObjectField = ____object_2Dfield.ObjectField
|
|
|
13
13
|
local ObjectLevelField = ____object_2Dfield.ObjectLevelField
|
|
14
14
|
local ____ability_2Dtype = require("engine.object-data.entry.ability-type")
|
|
15
15
|
local AbilityType = ____ability_2Dtype.AbilityType
|
|
16
|
+
local ____linked_2Dset = require("utility.linked-set")
|
|
17
|
+
local nonEmptyLinkedSetOf = ____linked_2Dset.nonEmptyLinkedSetOf
|
|
16
18
|
local convertAbilityBooleanField = _G.ConvertAbilityBooleanField
|
|
17
19
|
local convertAbilityIntegerField = _G.ConvertAbilityIntegerField
|
|
18
20
|
local convertAbilityRealField = _G.ConvertAbilityRealField
|
|
@@ -259,7 +261,7 @@ local AbilityLevelField = ____exports.AbilityLevelField
|
|
|
259
261
|
AbilityLevelField.name = "AbilityLevelField"
|
|
260
262
|
__TS__ClassExtends(AbilityLevelField, ObjectLevelField)
|
|
261
263
|
function AbilityLevelField.prototype.getLevelCount(self, entry)
|
|
262
|
-
return
|
|
264
|
+
return entry.levelCount
|
|
263
265
|
end
|
|
264
266
|
function AbilityLevelField.prototype.getObjectDataEntryId(self, instance)
|
|
265
267
|
return instance.typeId
|
|
@@ -431,6 +433,54 @@ ____exports.AbilityUnitTypeIdLevelField = __TS__Class()
|
|
|
431
433
|
local AbilityUnitTypeIdLevelField = ____exports.AbilityUnitTypeIdLevelField
|
|
432
434
|
AbilityUnitTypeIdLevelField.name = "AbilityUnitTypeIdLevelField"
|
|
433
435
|
__TS__ClassExtends(AbilityUnitTypeIdLevelField, ____exports.AbilityObjectDataEntryIdLevelField)
|
|
436
|
+
____exports.AbilityEnumLevelField = __TS__Class()
|
|
437
|
+
local AbilityEnumLevelField = ____exports.AbilityEnumLevelField
|
|
438
|
+
AbilityEnumLevelField.name = "AbilityEnumLevelField"
|
|
439
|
+
__TS__ClassExtends(AbilityEnumLevelField, ____exports.AbilityLevelField)
|
|
440
|
+
function AbilityEnumLevelField.prototype.getNativeFieldById(self, id)
|
|
441
|
+
return convertAbilityIntegerLevelField(id)
|
|
442
|
+
end
|
|
443
|
+
function AbilityEnumLevelField.prototype.getNativeFieldValue(self, instance, level)
|
|
444
|
+
local value = instance:getField(self.nativeField, level)
|
|
445
|
+
if self.values:contains(value) then
|
|
446
|
+
return value
|
|
447
|
+
end
|
|
448
|
+
return self.values:first()
|
|
449
|
+
end
|
|
450
|
+
function AbilityEnumLevelField.prototype.setNativeFieldValue(self, instance, level, value)
|
|
451
|
+
return instance:setField(self.nativeField, level, value)
|
|
452
|
+
end
|
|
453
|
+
__TS__SetDescriptor(
|
|
454
|
+
AbilityEnumLevelField.prototype,
|
|
455
|
+
"defaultValue",
|
|
456
|
+
{get = function(self)
|
|
457
|
+
return self.values:first()
|
|
458
|
+
end},
|
|
459
|
+
true
|
|
460
|
+
)
|
|
461
|
+
__TS__ObjectDefineProperty(
|
|
462
|
+
AbilityEnumLevelField,
|
|
463
|
+
"valueChangeEvent",
|
|
464
|
+
{get = function(self)
|
|
465
|
+
return self:getOrCreateValueChangeEvent()
|
|
466
|
+
end}
|
|
467
|
+
)
|
|
468
|
+
____exports.AbilityBuffPolarityLevelField = __TS__Class()
|
|
469
|
+
local AbilityBuffPolarityLevelField = ____exports.AbilityBuffPolarityLevelField
|
|
470
|
+
AbilityBuffPolarityLevelField.name = "AbilityBuffPolarityLevelField"
|
|
471
|
+
__TS__ClassExtends(AbilityBuffPolarityLevelField, ____exports.AbilityEnumLevelField)
|
|
472
|
+
function AbilityBuffPolarityLevelField.prototype.____constructor(self, ...)
|
|
473
|
+
AbilityBuffPolarityLevelField.____super.prototype.____constructor(self, ...)
|
|
474
|
+
self.values = nonEmptyLinkedSetOf(0, 1, 2)
|
|
475
|
+
end
|
|
476
|
+
____exports.AbilityBuffResistanceTypeLevelField = __TS__Class()
|
|
477
|
+
local AbilityBuffResistanceTypeLevelField = ____exports.AbilityBuffResistanceTypeLevelField
|
|
478
|
+
AbilityBuffResistanceTypeLevelField.name = "AbilityBuffResistanceTypeLevelField"
|
|
479
|
+
__TS__ClassExtends(AbilityBuffResistanceTypeLevelField, ____exports.AbilityEnumLevelField)
|
|
480
|
+
function AbilityBuffResistanceTypeLevelField.prototype.____constructor(self, ...)
|
|
481
|
+
AbilityBuffResistanceTypeLevelField.____super.prototype.____constructor(self, ...)
|
|
482
|
+
self.values = nonEmptyLinkedSetOf(1, 2, 3)
|
|
483
|
+
end
|
|
434
484
|
local allowedTargetCombatClassificationsByLevelByAbilityTypeId = postcompile(function()
|
|
435
485
|
local allowedTargetCombatClassificationsByLevelByAbilityTypeId = {}
|
|
436
486
|
for ____, abilityType in ipairs(AbilityType:getAll()) do
|
package/engine/object-field.d.ts
CHANGED
package/engine/random.d.ts
CHANGED