warscript 0.0.1-dev.a44a461 → 0.0.1-dev.a4646d1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/attributes.d.ts +1 -2
- package/attributes.lua +9 -0
- package/core/types/frame.lua +24 -21
- package/core/types/player.d.ts +16 -0
- package/core/types/player.lua +60 -15
- package/core/types/playerCamera.d.ts +2 -0
- package/core/types/playerCamera.lua +123 -5
- package/core/types/tileCell.d.ts +11 -1
- package/core/types/tileCell.lua +97 -0
- package/core/types/timer.d.ts +3 -1
- package/core/types/timer.lua +27 -2
- package/decl/native.d.ts +6 -4
- package/destroyable.d.ts +1 -0
- package/destroyable.lua +9 -0
- package/engine/behavior.d.ts +14 -1
- package/engine/behavior.lua +230 -70
- package/engine/behaviour/ability/apply-buff.lua +5 -5
- package/engine/behaviour/ability/emulate-impact.d.ts +1 -1
- package/engine/behaviour/ability/emulate-impact.lua +11 -3
- package/engine/behaviour/ability/remove-buffs.d.ts +9 -0
- package/engine/behaviour/ability/remove-buffs.lua +21 -0
- package/engine/behaviour/ability/restore-mana.d.ts +1 -1
- package/engine/behaviour/ability/restore-mana.lua +6 -6
- package/engine/behaviour/ability.d.ts +2 -1
- package/engine/behaviour/ability.lua +10 -18
- package/engine/behaviour/unit/stun-immunity.d.ts +12 -6
- package/engine/behaviour/unit/stun-immunity.lua +57 -31
- package/engine/behaviour/unit.d.ts +39 -3
- package/engine/behaviour/unit.lua +269 -6
- package/engine/buff.d.ts +21 -8
- package/engine/buff.lua +187 -121
- package/engine/internal/ability.d.ts +7 -1
- package/engine/internal/ability.lua +49 -9
- package/engine/internal/item/ability.lua +63 -11
- package/engine/internal/item+owner.lua +12 -6
- package/engine/internal/item.d.ts +16 -16
- package/engine/internal/item.lua +135 -49
- package/engine/internal/mechanics/cast-ability.lua +6 -3
- 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/mana-regeneration-rate-increase-factor.d.ts +2 -0
- package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
- package/engine/internal/unit/ability.d.ts +35 -0
- package/engine/internal/unit/ability.lua +98 -9
- package/engine/internal/unit/allowed-targets.d.ts +1 -1
- package/engine/internal/unit/allowed-targets.lua +9 -1
- package/engine/internal/unit/attributes.d.ts +17 -0
- package/engine/internal/unit/attributes.lua +46 -0
- package/engine/internal/unit/bonus.d.ts +2 -0
- package/engine/internal/unit/bonus.lua +10 -0
- package/engine/internal/unit/fly-height.d.ts +7 -0
- package/engine/internal/unit/fly-height.lua +20 -0
- package/engine/internal/unit/interrupts.d.ts +12 -0
- package/engine/internal/unit/interrupts.lua +28 -0
- package/engine/internal/unit/main-selected.lua +12 -27
- package/engine/internal/unit/order.d.ts +20 -0
- package/engine/internal/unit/order.lua +136 -0
- package/engine/internal/unit/scale.d.ts +7 -0
- package/engine/internal/unit/scale.lua +20 -0
- package/engine/internal/unit+ability.lua +10 -1
- package/engine/internal/unit-missile-launch.lua +52 -14
- package/engine/internal/unit.d.ts +27 -24
- package/engine/internal/unit.lua +298 -213
- package/engine/local-client.d.ts +2 -0
- package/engine/local-client.lua +30 -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/health-regeneration-type.d.ts +8 -0
- package/engine/object-data/auxiliary/health-regeneration-type.lua +2 -0
- package/engine/object-data/entry/ability-type/mana-regeneration.d.ts +8 -0
- package/engine/object-data/entry/ability-type/mana-regeneration.lua +26 -0
- package/engine/object-data/entry/ability-type/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.lua +5 -4
- package/engine/object-data/entry/destructible-type.d.ts +27 -1
- package/engine/object-data/entry/destructible-type.lua +155 -0
- package/engine/object-data/entry/unit-type.d.ts +15 -2
- package/engine/object-data/entry/unit-type.lua +135 -33
- package/engine/object-field/ability.d.ts +3 -3
- package/engine/object-field/ability.lua +7 -6
- package/engine/object-field/unit.d.ts +31 -5
- package/engine/object-field/unit.lua +95 -0
- package/engine/object-field.d.ts +17 -6
- package/engine/object-field.lua +291 -134
- package/engine/random.d.ts +9 -0
- package/engine/random.lua +13 -0
- package/engine/standard/fields/ability.d.ts +2 -2
- package/engine/standard/fields/ability.lua +2 -2
- package/engine/standard/fields/unit.d.ts +12 -0
- package/engine/standard/fields/unit.lua +20 -0
- package/engine/synchronization.d.ts +11 -0
- package/engine/synchronization.lua +77 -0
- package/engine/text-tag.d.ts +36 -2
- package/engine/text-tag.lua +250 -10
- package/engine/unit.d.ts +5 -0
- package/engine/unit.lua +5 -0
- package/net/socket.lua +1 -1
- package/objutil/buff.lua +10 -8
- package/package.json +2 -2
- package/patch-lua.lua +9 -0
- package/patch-lualib.lua +1 -1
- package/utility/arrays.d.ts +1 -0
- package/utility/arrays.lua +8 -0
- package/utility/callback-array.d.ts +17 -0
- package/utility/callback-array.lua +61 -0
- package/utility/functions.d.ts +7 -0
- package/utility/functions.lua +12 -0
- package/utility/linked-map.d.ts +26 -0
- package/utility/linked-map.lua +66 -0
- package/utility/linked-set.d.ts +1 -0
- package/utility/linked-set.lua +23 -1
- package/utility/lua-maps.d.ts +12 -2
- package/utility/lua-maps.lua +37 -2
- package/utility/lua-sets.d.ts +1 -0
- package/utility/lua-sets.lua +4 -0
- package/utility/records.lua +20 -1
- package/utility/types.d.ts +3 -0
- package/core/types/order.d.ts +0 -25
- package/core/types/order.lua +0 -55
|
@@ -27,6 +27,9 @@ local attackTypeToString = ____attack_2Dtype.attackTypeToString
|
|
|
27
27
|
local stringToAttackType = ____attack_2Dtype.stringToAttackType
|
|
28
28
|
local ____config = require("config")
|
|
29
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
|
|
30
33
|
local getOrCreateUnitTypeWeapons
|
|
31
34
|
____exports.UnitTypeWeapon = __TS__Class()
|
|
32
35
|
local UnitTypeWeapon = ____exports.UnitTypeWeapon
|
|
@@ -235,21 +238,21 @@ __TS__SetDescriptor(
|
|
|
235
238
|
)
|
|
236
239
|
__TS__SetDescriptor(
|
|
237
240
|
UnitTypeWeapon.prototype,
|
|
238
|
-
"
|
|
241
|
+
"missileModelPathSD",
|
|
239
242
|
{
|
|
240
243
|
get = function(self)
|
|
241
244
|
local ____self_17 = self.unitType
|
|
242
|
-
return ____self_17.
|
|
245
|
+
return ____self_17.getStringField(
|
|
243
246
|
____self_17,
|
|
244
|
-
("ua" .. tostring(self.index)) .. "
|
|
247
|
+
("ua" .. tostring(self.index)) .. "m:sd"
|
|
245
248
|
)
|
|
246
249
|
end,
|
|
247
|
-
set = function(self,
|
|
250
|
+
set = function(self, missileModelPathSD)
|
|
248
251
|
local ____self_18 = self.unitType
|
|
249
|
-
____self_18.
|
|
252
|
+
____self_18.setStringField(
|
|
250
253
|
____self_18,
|
|
251
|
-
("ua" .. tostring(self.index)) .. "
|
|
252
|
-
|
|
254
|
+
("ua" .. tostring(self.index)) .. "m:sd",
|
|
255
|
+
missileModelPathSD
|
|
253
256
|
)
|
|
254
257
|
end
|
|
255
258
|
},
|
|
@@ -257,21 +260,21 @@ __TS__SetDescriptor(
|
|
|
257
260
|
)
|
|
258
261
|
__TS__SetDescriptor(
|
|
259
262
|
UnitTypeWeapon.prototype,
|
|
260
|
-
"
|
|
263
|
+
"missileModelPathHD",
|
|
261
264
|
{
|
|
262
265
|
get = function(self)
|
|
263
266
|
local ____self_19 = self.unitType
|
|
264
267
|
return ____self_19.getStringField(
|
|
265
268
|
____self_19,
|
|
266
|
-
"
|
|
269
|
+
("ua" .. tostring(self.index)) .. "m:hd"
|
|
267
270
|
)
|
|
268
271
|
end,
|
|
269
|
-
set = function(self,
|
|
272
|
+
set = function(self, missileModelPathHD)
|
|
270
273
|
local ____self_20 = self.unitType
|
|
271
274
|
____self_20.setStringField(
|
|
272
275
|
____self_20,
|
|
273
|
-
"
|
|
274
|
-
|
|
276
|
+
("ua" .. tostring(self.index)) .. "m:hd",
|
|
277
|
+
missileModelPathHD
|
|
275
278
|
)
|
|
276
279
|
end
|
|
277
280
|
},
|
|
@@ -279,21 +282,21 @@ __TS__SetDescriptor(
|
|
|
279
282
|
)
|
|
280
283
|
__TS__SetDescriptor(
|
|
281
284
|
UnitTypeWeapon.prototype,
|
|
282
|
-
"
|
|
285
|
+
"range",
|
|
283
286
|
{
|
|
284
287
|
get = function(self)
|
|
285
288
|
local ____self_21 = self.unitType
|
|
286
|
-
return ____self_21.
|
|
289
|
+
return ____self_21.getNumberField(
|
|
287
290
|
____self_21,
|
|
288
|
-
("
|
|
291
|
+
("ua" .. tostring(self.index)) .. "r"
|
|
289
292
|
)
|
|
290
293
|
end,
|
|
291
|
-
set = function(self,
|
|
294
|
+
set = function(self, range)
|
|
292
295
|
local ____self_22 = self.unitType
|
|
293
|
-
____self_22.
|
|
296
|
+
____self_22.setNumberField(
|
|
294
297
|
____self_22,
|
|
295
|
-
("
|
|
296
|
-
|
|
298
|
+
("ua" .. tostring(self.index)) .. "r",
|
|
299
|
+
range
|
|
297
300
|
)
|
|
298
301
|
end
|
|
299
302
|
},
|
|
@@ -301,19 +304,63 @@ __TS__SetDescriptor(
|
|
|
301
304
|
)
|
|
302
305
|
__TS__SetDescriptor(
|
|
303
306
|
UnitTypeWeapon.prototype,
|
|
304
|
-
"
|
|
307
|
+
"soundType",
|
|
305
308
|
{
|
|
306
309
|
get = function(self)
|
|
307
310
|
local ____self_23 = self.unitType
|
|
308
311
|
return ____self_23.getStringField(
|
|
309
312
|
____self_23,
|
|
310
|
-
|
|
313
|
+
"ucs" .. tostring(self.index)
|
|
311
314
|
)
|
|
312
315
|
end,
|
|
313
|
-
set = function(self,
|
|
316
|
+
set = function(self, soundType)
|
|
314
317
|
local ____self_24 = self.unitType
|
|
315
318
|
____self_24.setStringField(
|
|
316
319
|
____self_24,
|
|
320
|
+
"ucs" .. tostring(self.index),
|
|
321
|
+
soundType
|
|
322
|
+
)
|
|
323
|
+
end
|
|
324
|
+
},
|
|
325
|
+
true
|
|
326
|
+
)
|
|
327
|
+
__TS__SetDescriptor(
|
|
328
|
+
UnitTypeWeapon.prototype,
|
|
329
|
+
"soundTypeSD",
|
|
330
|
+
{
|
|
331
|
+
get = function(self)
|
|
332
|
+
local ____self_25 = self.unitType
|
|
333
|
+
return ____self_25.getStringField(
|
|
334
|
+
____self_25,
|
|
335
|
+
("ucs" .. tostring(self.index)) .. ":sd"
|
|
336
|
+
)
|
|
337
|
+
end,
|
|
338
|
+
set = function(self, soundTypeSD)
|
|
339
|
+
local ____self_26 = self.unitType
|
|
340
|
+
____self_26.setStringField(
|
|
341
|
+
____self_26,
|
|
342
|
+
("ucs" .. tostring(self.index)) .. ":sd",
|
|
343
|
+
soundTypeSD
|
|
344
|
+
)
|
|
345
|
+
end
|
|
346
|
+
},
|
|
347
|
+
true
|
|
348
|
+
)
|
|
349
|
+
__TS__SetDescriptor(
|
|
350
|
+
UnitTypeWeapon.prototype,
|
|
351
|
+
"soundTypeHD",
|
|
352
|
+
{
|
|
353
|
+
get = function(self)
|
|
354
|
+
local ____self_27 = self.unitType
|
|
355
|
+
return ____self_27.getStringField(
|
|
356
|
+
____self_27,
|
|
357
|
+
("ucs" .. tostring(self.index)) .. ":hd"
|
|
358
|
+
)
|
|
359
|
+
end,
|
|
360
|
+
set = function(self, soundTypeHD)
|
|
361
|
+
local ____self_28 = self.unitType
|
|
362
|
+
____self_28.setStringField(
|
|
363
|
+
____self_28,
|
|
317
364
|
("ucs" .. tostring(self.index)) .. ":hd",
|
|
318
365
|
soundTypeHD
|
|
319
366
|
)
|
|
@@ -936,6 +983,19 @@ __TS__SetDescriptor(
|
|
|
936
983
|
},
|
|
937
984
|
true
|
|
938
985
|
)
|
|
986
|
+
__TS__SetDescriptor(
|
|
987
|
+
UnitType.prototype,
|
|
988
|
+
"selectionCircleHeight",
|
|
989
|
+
{
|
|
990
|
+
get = function(self)
|
|
991
|
+
return self:getNumberField("uslz")
|
|
992
|
+
end,
|
|
993
|
+
set = function(self, height)
|
|
994
|
+
self:setNumberField("uslz", height)
|
|
995
|
+
end
|
|
996
|
+
},
|
|
997
|
+
true
|
|
998
|
+
)
|
|
939
999
|
__TS__SetDescriptor(
|
|
940
1000
|
UnitType.prototype,
|
|
941
1001
|
"selectionCircleScale",
|
|
@@ -1183,6 +1243,19 @@ __TS__SetDescriptor(
|
|
|
1183
1243
|
},
|
|
1184
1244
|
true
|
|
1185
1245
|
)
|
|
1246
|
+
__TS__SetDescriptor(
|
|
1247
|
+
UnitType.prototype,
|
|
1248
|
+
"armor",
|
|
1249
|
+
{
|
|
1250
|
+
get = function(self)
|
|
1251
|
+
return self:getNumberField("udef")
|
|
1252
|
+
end,
|
|
1253
|
+
set = function(self, armor)
|
|
1254
|
+
self:setNumberField("udef", armor)
|
|
1255
|
+
end
|
|
1256
|
+
},
|
|
1257
|
+
true
|
|
1258
|
+
)
|
|
1186
1259
|
__TS__SetDescriptor(
|
|
1187
1260
|
UnitType.prototype,
|
|
1188
1261
|
"armorSoundType",
|
|
@@ -1222,6 +1295,22 @@ __TS__SetDescriptor(
|
|
|
1222
1295
|
},
|
|
1223
1296
|
true
|
|
1224
1297
|
)
|
|
1298
|
+
__TS__SetDescriptor(
|
|
1299
|
+
UnitType.prototype,
|
|
1300
|
+
"armorType",
|
|
1301
|
+
{
|
|
1302
|
+
get = function(self)
|
|
1303
|
+
return stringToArmorType(self:getStringField("udty"))
|
|
1304
|
+
end,
|
|
1305
|
+
set = function(self, armorType)
|
|
1306
|
+
self:setStringField(
|
|
1307
|
+
"udty",
|
|
1308
|
+
armorTypeToString(armorType)
|
|
1309
|
+
)
|
|
1310
|
+
end
|
|
1311
|
+
},
|
|
1312
|
+
true
|
|
1313
|
+
)
|
|
1225
1314
|
__TS__SetDescriptor(
|
|
1226
1315
|
UnitType.prototype,
|
|
1227
1316
|
"combatClassifications",
|
|
@@ -1240,7 +1329,7 @@ __TS__SetDescriptor(
|
|
|
1240
1329
|
)
|
|
1241
1330
|
__TS__SetDescriptor(
|
|
1242
1331
|
UnitType.prototype,
|
|
1243
|
-
"
|
|
1332
|
+
"classifications",
|
|
1244
1333
|
{
|
|
1245
1334
|
get = function(self)
|
|
1246
1335
|
return stringArrayToUnitClassifications(self:getStringsField("utyp"))
|
|
@@ -1476,6 +1565,19 @@ __TS__SetDescriptor(
|
|
|
1476
1565
|
},
|
|
1477
1566
|
true
|
|
1478
1567
|
)
|
|
1568
|
+
__TS__SetDescriptor(
|
|
1569
|
+
UnitType.prototype,
|
|
1570
|
+
"level",
|
|
1571
|
+
{
|
|
1572
|
+
get = function(self)
|
|
1573
|
+
return self:getNumberField("ulev")
|
|
1574
|
+
end,
|
|
1575
|
+
set = function(self, level)
|
|
1576
|
+
self:setNumberField("ulev", level)
|
|
1577
|
+
end
|
|
1578
|
+
},
|
|
1579
|
+
true
|
|
1580
|
+
)
|
|
1479
1581
|
__TS__SetDescriptor(
|
|
1480
1582
|
UnitType.prototype,
|
|
1481
1583
|
"manaRegenerationRate",
|
|
@@ -1622,11 +1724,11 @@ __TS__SetDescriptor(
|
|
|
1622
1724
|
implementReadonlyNumberIndexSupplier(
|
|
1623
1725
|
____exports.UnitType,
|
|
1624
1726
|
function(id)
|
|
1625
|
-
local
|
|
1626
|
-
|
|
1627
|
-
__TS__ClassExtends(
|
|
1628
|
-
|
|
1629
|
-
return
|
|
1727
|
+
local ____class_29 = __TS__Class()
|
|
1728
|
+
____class_29.name = ____class_29.name
|
|
1729
|
+
__TS__ClassExtends(____class_29, ____exports.UnitType)
|
|
1730
|
+
____class_29.BASE_ID = id
|
|
1731
|
+
return ____class_29
|
|
1630
1732
|
end
|
|
1631
1733
|
)
|
|
1632
1734
|
____exports.HeroUnitType = __TS__Class()
|
|
@@ -1687,11 +1789,11 @@ __TS__SetDescriptor(
|
|
|
1687
1789
|
implementReadonlyNumberIndexSupplier(
|
|
1688
1790
|
____exports.HeroUnitType,
|
|
1689
1791
|
function(id)
|
|
1690
|
-
local
|
|
1691
|
-
|
|
1692
|
-
__TS__ClassExtends(
|
|
1693
|
-
|
|
1694
|
-
return
|
|
1792
|
+
local ____class_30 = __TS__Class()
|
|
1793
|
+
____class_30.name = ____class_30.name
|
|
1794
|
+
__TS__ClassExtends(____class_30, ____exports.HeroUnitType)
|
|
1795
|
+
____class_30.BASE_ID = id
|
|
1796
|
+
return ____class_30
|
|
1695
1797
|
end
|
|
1696
1798
|
)
|
|
1697
1799
|
return ____exports
|
|
@@ -12,7 +12,7 @@ import { ReadonlyNonEmptyLinkedSet } from "../../utility/linked-set";
|
|
|
12
12
|
export declare abstract class AbilityField<ValueType extends number | string | boolean = number | string | boolean, NativeFieldType extends jabilityfield = jabilityfield> extends ObjectField<AbilityType, Ability, ValueType, NativeFieldType> {
|
|
13
13
|
protected get instanceClass(): typeof Ability;
|
|
14
14
|
protected getObjectDataEntryId(instance: Ability): AbilityTypeId;
|
|
15
|
-
protected hasNativeFieldValue(
|
|
15
|
+
protected hasNativeFieldValue(abilityTypeId: AbilityTypeId): boolean;
|
|
16
16
|
static get valueChangeEvent(): ObjectFieldValueChangeEvent<ReadonlyObjectFieldType<AbilityField>>;
|
|
17
17
|
}
|
|
18
18
|
export declare class AbilityBooleanField extends AbilityField<boolean, jabilitybooleanfield> {
|
|
@@ -48,7 +48,7 @@ export declare class AbilityStringField extends AbilityField<string, jabilitystr
|
|
|
48
48
|
export declare abstract class AbilityArrayField<ValueType extends number | string | boolean = number | string | boolean, NativeFieldType extends jabilityfield = jabilityfield> extends ObjectArrayField<AbilityType, Ability, ValueType, NativeFieldType> {
|
|
49
49
|
protected get instanceClass(): typeof Ability;
|
|
50
50
|
protected getObjectDataEntryId(instance: Ability): AbilityTypeId;
|
|
51
|
-
protected hasNativeFieldValue(
|
|
51
|
+
protected hasNativeFieldValue(abilityTypeId: AbilityTypeId): boolean;
|
|
52
52
|
}
|
|
53
53
|
export declare class AbilityStringArrayField extends AbilityArrayField<string, jabilitystringlevelfield> {
|
|
54
54
|
protected get defaultValue(): string;
|
|
@@ -68,7 +68,7 @@ export declare abstract class AbilityLevelField<ValueType extends number | strin
|
|
|
68
68
|
protected get instanceClass(): typeof Ability;
|
|
69
69
|
protected getLevelCount(entry: AbilityType | Ability): number;
|
|
70
70
|
protected getObjectDataEntryId(instance: Ability): AbilityTypeId;
|
|
71
|
-
protected hasNativeFieldValue(
|
|
71
|
+
protected hasNativeFieldValue(abilityTypeId: AbilityTypeId): boolean;
|
|
72
72
|
static get valueChangeEvent(): ObjectLevelFieldValueChangeEvent<ReadonlyObjectLevelFieldType<AbilityLevelField>>;
|
|
73
73
|
}
|
|
74
74
|
export declare class AbilityBooleanLevelField extends AbilityLevelField<boolean, boolean, jabilityintegerlevelfield> {
|
|
@@ -7,6 +7,7 @@ local __TS__InstanceOf = ____lualib.__TS__InstanceOf
|
|
|
7
7
|
local ____exports = {}
|
|
8
8
|
local ____ability = require("engine.internal.ability")
|
|
9
9
|
local Ability = ____ability.Ability
|
|
10
|
+
local abilityTypeHasField = ____ability.abilityTypeHasField
|
|
10
11
|
local ____object_2Dfield = require("engine.object-field")
|
|
11
12
|
local ObjectArrayField = ____object_2Dfield.ObjectArrayField
|
|
12
13
|
local ObjectField = ____object_2Dfield.ObjectField
|
|
@@ -29,8 +30,8 @@ __TS__ClassExtends(AbilityField, ObjectField)
|
|
|
29
30
|
function AbilityField.prototype.getObjectDataEntryId(self, instance)
|
|
30
31
|
return instance.typeId
|
|
31
32
|
end
|
|
32
|
-
function AbilityField.prototype.hasNativeFieldValue(self,
|
|
33
|
-
return
|
|
33
|
+
function AbilityField.prototype.hasNativeFieldValue(self, abilityTypeId)
|
|
34
|
+
return abilityTypeHasField(abilityTypeId, self.nativeField)
|
|
34
35
|
end
|
|
35
36
|
__TS__SetDescriptor(
|
|
36
37
|
AbilityField.prototype,
|
|
@@ -197,8 +198,8 @@ __TS__ClassExtends(AbilityArrayField, ObjectArrayField)
|
|
|
197
198
|
function AbilityArrayField.prototype.getObjectDataEntryId(self, instance)
|
|
198
199
|
return instance.typeId
|
|
199
200
|
end
|
|
200
|
-
function AbilityArrayField.prototype.hasNativeFieldValue(self,
|
|
201
|
-
return
|
|
201
|
+
function AbilityArrayField.prototype.hasNativeFieldValue(self, abilityTypeId)
|
|
202
|
+
return abilityTypeHasField(abilityTypeId, self.nativeField)
|
|
202
203
|
end
|
|
203
204
|
__TS__SetDescriptor(
|
|
204
205
|
AbilityArrayField.prototype,
|
|
@@ -269,8 +270,8 @@ end
|
|
|
269
270
|
function AbilityLevelField.prototype.getObjectDataEntryId(self, instance)
|
|
270
271
|
return instance.typeId
|
|
271
272
|
end
|
|
272
|
-
function AbilityLevelField.prototype.hasNativeFieldValue(self,
|
|
273
|
-
return
|
|
273
|
+
function AbilityLevelField.prototype.hasNativeFieldValue(self, abilityTypeId)
|
|
274
|
+
return abilityTypeHasField(abilityTypeId, self.nativeField)
|
|
274
275
|
end
|
|
275
276
|
__TS__SetDescriptor(
|
|
276
277
|
AbilityLevelField.prototype,
|
|
@@ -1,37 +1,44 @@
|
|
|
1
1
|
/** @noSelfInFile */
|
|
2
2
|
import { Unit } from "../internal/unit";
|
|
3
|
-
import { ObjectField, ObjectLevelField, ObjectLevelFieldValueChangeEvent, ReadonlyObjectLevelFieldType } from "../object-field";
|
|
3
|
+
import { ObjectField, ObjectFieldValueChangeEvent, ObjectLevelField, ObjectLevelFieldValueChangeEvent, ReadonlyObjectFieldType, ReadonlyObjectLevelFieldType } from "../object-field";
|
|
4
4
|
import { UnitType, UnitTypeId } from "../object-data/entry/unit-type";
|
|
5
5
|
import { ReadonlyNonEmptyLinkedSet } from "../../utility/linked-set";
|
|
6
6
|
import { AttackType } from "../object-data/auxiliary/attack-type";
|
|
7
|
+
import { UnitClassifications } from "../object-data/auxiliary/unit-classification";
|
|
8
|
+
import { HealthRegenerationType } from "../object-data/auxiliary/health-regeneration-type";
|
|
7
9
|
export declare abstract class UnitField<ValueType extends number | string | boolean = number | string | boolean, NativeFieldType = any> extends ObjectField<UnitType, Unit, ValueType, NativeFieldType> {
|
|
8
10
|
protected get instanceClass(): typeof Unit;
|
|
9
11
|
protected getObjectDataEntryId(instance: Unit): UnitTypeId;
|
|
10
12
|
protected hasNativeFieldValue(): boolean;
|
|
13
|
+
static get valueChangeEvent(): ObjectFieldValueChangeEvent<ReadonlyObjectFieldType<UnitField>>;
|
|
11
14
|
}
|
|
12
15
|
export declare class UnitBooleanField extends UnitField<boolean, junitbooleanfield> {
|
|
13
16
|
protected get defaultValue(): boolean;
|
|
14
17
|
protected getNativeFieldById(id: number): junitbooleanfield;
|
|
15
18
|
protected getNativeFieldValue(instance: Unit): boolean;
|
|
16
19
|
protected setNativeFieldValue(instance: Unit, value: boolean): boolean;
|
|
20
|
+
static get valueChangeEvent(): ObjectFieldValueChangeEvent<ReadonlyObjectFieldType<UnitBooleanField>>;
|
|
17
21
|
}
|
|
18
22
|
export declare class UnitFloatField extends UnitField<number, junitrealfield> {
|
|
19
23
|
protected get defaultValue(): number;
|
|
20
24
|
protected getNativeFieldById(id: number): junitrealfield;
|
|
21
25
|
protected getNativeFieldValue(instance: Unit): number;
|
|
22
26
|
protected setNativeFieldValue(instance: Unit, value: number): boolean;
|
|
27
|
+
static get valueChangeEvent(): ObjectFieldValueChangeEvent<ReadonlyObjectFieldType<UnitFloatField>>;
|
|
23
28
|
}
|
|
24
|
-
export declare class UnitIntegerField extends UnitField<
|
|
25
|
-
protected get defaultValue():
|
|
29
|
+
export declare class UnitIntegerField<T extends number = number> extends UnitField<T, junitintegerfield> {
|
|
30
|
+
protected get defaultValue(): T;
|
|
26
31
|
protected getNativeFieldById(id: number): junitintegerfield;
|
|
27
|
-
protected getNativeFieldValue(instance: Unit):
|
|
28
|
-
protected setNativeFieldValue(instance: Unit, value:
|
|
32
|
+
protected getNativeFieldValue(instance: Unit): T;
|
|
33
|
+
protected setNativeFieldValue(instance: Unit, value: T): boolean;
|
|
34
|
+
static get valueChangeEvent(): ObjectFieldValueChangeEvent<ReadonlyObjectFieldType<UnitIntegerField>>;
|
|
29
35
|
}
|
|
30
36
|
export declare class UnitStringField extends UnitField<string, junitstringfield> {
|
|
31
37
|
protected get defaultValue(): string;
|
|
32
38
|
protected getNativeFieldById(id: number): junitstringfield;
|
|
33
39
|
protected getNativeFieldValue(instance: Unit): string;
|
|
34
40
|
protected setNativeFieldValue(instance: Unit, value: string): boolean;
|
|
41
|
+
static get valueChangeEvent(): ObjectFieldValueChangeEvent<ReadonlyObjectFieldType<UnitStringField>>;
|
|
35
42
|
}
|
|
36
43
|
type junitweaponfield = junitweaponbooleanfield | junitweaponintegerfield | junitweaponrealfield | junitweaponstringfield;
|
|
37
44
|
export declare abstract class UnitWeaponField<ValueType extends number | string | boolean = number | string | boolean, InputValueType extends ValueType = never, NativeFieldType extends junitweaponfield = junitweaponfield> extends ObjectLevelField<UnitType, Unit, ValueType, InputValueType, NativeFieldType> {
|
|
@@ -56,4 +63,23 @@ export declare abstract class UnitEnumWeaponField<T extends number> extends Unit
|
|
|
56
63
|
export declare class UnitAttackTypeWeaponField extends UnitEnumWeaponField<AttackType> {
|
|
57
64
|
protected values: ReadonlyNonEmptyLinkedSet<AttackType>;
|
|
58
65
|
}
|
|
66
|
+
export declare class UnitClassificationsField extends UnitField<UnitClassifications, junitintegerfield> {
|
|
67
|
+
protected get defaultValue(): UnitClassifications;
|
|
68
|
+
protected getNativeFieldById(id: number): junitintegerfield;
|
|
69
|
+
protected getNativeFieldValue(instance: Unit): UnitClassifications;
|
|
70
|
+
protected setNativeFieldValue(instance: Unit, value: UnitClassifications): boolean;
|
|
71
|
+
}
|
|
72
|
+
export declare class UnitFlyHeightField extends UnitFloatField {
|
|
73
|
+
protected getNativeFieldValue(instance: Unit): number;
|
|
74
|
+
protected setNativeFieldValue(instance: Unit, value: number): boolean;
|
|
75
|
+
}
|
|
76
|
+
export declare class UnitPropulsionWindowField extends UnitFloatField {
|
|
77
|
+
protected getNativeFieldValue(instance: Unit): number;
|
|
78
|
+
protected setNativeFieldValue(instance: Unit, value: number): boolean;
|
|
79
|
+
}
|
|
80
|
+
export declare class UnitHealthRegenerationTypeField extends UnitIntegerField<HealthRegenerationType> {
|
|
81
|
+
}
|
|
82
|
+
export declare class UnitScalingValueField extends UnitFloatField {
|
|
83
|
+
protected setNativeFieldValue(instance: Unit, value: number): boolean;
|
|
84
|
+
}
|
|
59
85
|
export {};
|
|
@@ -18,6 +18,11 @@ local convertUnitStringField = ConvertUnitStringField
|
|
|
18
18
|
local convertUnitWeaponIntegerField = ConvertUnitWeaponIntegerField
|
|
19
19
|
local getUnitWeaponIntegerField = BlzGetUnitWeaponIntegerField
|
|
20
20
|
local setUnitWeaponIntegerField = BlzSetUnitWeaponIntegerField
|
|
21
|
+
local getUnitFlyHeight = GetUnitFlyHeight
|
|
22
|
+
local setUnitFlyHeight = SetUnitFlyHeight
|
|
23
|
+
local getUnitPropulsionWindow = GetUnitPropWindow
|
|
24
|
+
local setUnitPropulsionWindow = SetUnitPropWindow
|
|
25
|
+
local setUnitScale = SetUnitScale
|
|
21
26
|
____exports.UnitField = __TS__Class()
|
|
22
27
|
local UnitField = ____exports.UnitField
|
|
23
28
|
UnitField.name = "UnitField"
|
|
@@ -36,6 +41,13 @@ __TS__SetDescriptor(
|
|
|
36
41
|
end},
|
|
37
42
|
true
|
|
38
43
|
)
|
|
44
|
+
__TS__ObjectDefineProperty(
|
|
45
|
+
UnitField,
|
|
46
|
+
"valueChangeEvent",
|
|
47
|
+
{get = function(self)
|
|
48
|
+
return self:getOrCreateValueChangeEvent()
|
|
49
|
+
end}
|
|
50
|
+
)
|
|
39
51
|
____exports.UnitBooleanField = __TS__Class()
|
|
40
52
|
local UnitBooleanField = ____exports.UnitBooleanField
|
|
41
53
|
UnitBooleanField.name = "UnitBooleanField"
|
|
@@ -57,6 +69,13 @@ __TS__SetDescriptor(
|
|
|
57
69
|
end},
|
|
58
70
|
true
|
|
59
71
|
)
|
|
72
|
+
__TS__ObjectDefineProperty(
|
|
73
|
+
UnitBooleanField,
|
|
74
|
+
"valueChangeEvent",
|
|
75
|
+
{get = function(self)
|
|
76
|
+
return self:getOrCreateValueChangeEvent()
|
|
77
|
+
end}
|
|
78
|
+
)
|
|
60
79
|
____exports.UnitFloatField = __TS__Class()
|
|
61
80
|
local UnitFloatField = ____exports.UnitFloatField
|
|
62
81
|
UnitFloatField.name = "UnitFloatField"
|
|
@@ -78,6 +97,13 @@ __TS__SetDescriptor(
|
|
|
78
97
|
end},
|
|
79
98
|
true
|
|
80
99
|
)
|
|
100
|
+
__TS__ObjectDefineProperty(
|
|
101
|
+
UnitFloatField,
|
|
102
|
+
"valueChangeEvent",
|
|
103
|
+
{get = function(self)
|
|
104
|
+
return self:getOrCreateValueChangeEvent()
|
|
105
|
+
end}
|
|
106
|
+
)
|
|
81
107
|
____exports.UnitIntegerField = __TS__Class()
|
|
82
108
|
local UnitIntegerField = ____exports.UnitIntegerField
|
|
83
109
|
UnitIntegerField.name = "UnitIntegerField"
|
|
@@ -99,6 +125,13 @@ __TS__SetDescriptor(
|
|
|
99
125
|
end},
|
|
100
126
|
true
|
|
101
127
|
)
|
|
128
|
+
__TS__ObjectDefineProperty(
|
|
129
|
+
UnitIntegerField,
|
|
130
|
+
"valueChangeEvent",
|
|
131
|
+
{get = function(self)
|
|
132
|
+
return self:getOrCreateValueChangeEvent()
|
|
133
|
+
end}
|
|
134
|
+
)
|
|
102
135
|
____exports.UnitStringField = __TS__Class()
|
|
103
136
|
local UnitStringField = ____exports.UnitStringField
|
|
104
137
|
UnitStringField.name = "UnitStringField"
|
|
@@ -120,6 +153,13 @@ __TS__SetDescriptor(
|
|
|
120
153
|
end},
|
|
121
154
|
true
|
|
122
155
|
)
|
|
156
|
+
__TS__ObjectDefineProperty(
|
|
157
|
+
UnitStringField,
|
|
158
|
+
"valueChangeEvent",
|
|
159
|
+
{get = function(self)
|
|
160
|
+
return self:getOrCreateValueChangeEvent()
|
|
161
|
+
end}
|
|
162
|
+
)
|
|
123
163
|
____exports.UnitWeaponField = __TS__Class()
|
|
124
164
|
local UnitWeaponField = ____exports.UnitWeaponField
|
|
125
165
|
UnitWeaponField.name = "UnitWeaponField"
|
|
@@ -215,4 +255,59 @@ function UnitAttackTypeWeaponField.prototype.____constructor(self, ...)
|
|
|
215
255
|
6
|
|
216
256
|
)
|
|
217
257
|
end
|
|
258
|
+
____exports.UnitClassificationsField = __TS__Class()
|
|
259
|
+
local UnitClassificationsField = ____exports.UnitClassificationsField
|
|
260
|
+
UnitClassificationsField.name = "UnitClassificationsField"
|
|
261
|
+
__TS__ClassExtends(UnitClassificationsField, ____exports.UnitField)
|
|
262
|
+
function UnitClassificationsField.prototype.getNativeFieldById(self, id)
|
|
263
|
+
return convertUnitIntegerField(id)
|
|
264
|
+
end
|
|
265
|
+
function UnitClassificationsField.prototype.getNativeFieldValue(self, instance)
|
|
266
|
+
return instance:getField(self.nativeField)
|
|
267
|
+
end
|
|
268
|
+
function UnitClassificationsField.prototype.setNativeFieldValue(self, instance, value)
|
|
269
|
+
return instance:setField(self.nativeField, value)
|
|
270
|
+
end
|
|
271
|
+
__TS__SetDescriptor(
|
|
272
|
+
UnitClassificationsField.prototype,
|
|
273
|
+
"defaultValue",
|
|
274
|
+
{get = function(self)
|
|
275
|
+
return 0
|
|
276
|
+
end},
|
|
277
|
+
true
|
|
278
|
+
)
|
|
279
|
+
____exports.UnitFlyHeightField = __TS__Class()
|
|
280
|
+
local UnitFlyHeightField = ____exports.UnitFlyHeightField
|
|
281
|
+
UnitFlyHeightField.name = "UnitFlyHeightField"
|
|
282
|
+
__TS__ClassExtends(UnitFlyHeightField, ____exports.UnitFloatField)
|
|
283
|
+
function UnitFlyHeightField.prototype.getNativeFieldValue(self, instance)
|
|
284
|
+
return getUnitFlyHeight(instance.handle)
|
|
285
|
+
end
|
|
286
|
+
function UnitFlyHeightField.prototype.setNativeFieldValue(self, instance, value)
|
|
287
|
+
setUnitFlyHeight(instance.handle, value, 100000)
|
|
288
|
+
return true
|
|
289
|
+
end
|
|
290
|
+
____exports.UnitPropulsionWindowField = __TS__Class()
|
|
291
|
+
local UnitPropulsionWindowField = ____exports.UnitPropulsionWindowField
|
|
292
|
+
UnitPropulsionWindowField.name = "UnitPropulsionWindowField"
|
|
293
|
+
__TS__ClassExtends(UnitPropulsionWindowField, ____exports.UnitFloatField)
|
|
294
|
+
function UnitPropulsionWindowField.prototype.getNativeFieldValue(self, instance)
|
|
295
|
+
return getUnitPropulsionWindow(instance.handle)
|
|
296
|
+
end
|
|
297
|
+
function UnitPropulsionWindowField.prototype.setNativeFieldValue(self, instance, value)
|
|
298
|
+
setUnitPropulsionWindow(instance.handle, value)
|
|
299
|
+
return true
|
|
300
|
+
end
|
|
301
|
+
____exports.UnitHealthRegenerationTypeField = __TS__Class()
|
|
302
|
+
local UnitHealthRegenerationTypeField = ____exports.UnitHealthRegenerationTypeField
|
|
303
|
+
UnitHealthRegenerationTypeField.name = "UnitHealthRegenerationTypeField"
|
|
304
|
+
__TS__ClassExtends(UnitHealthRegenerationTypeField, ____exports.UnitIntegerField)
|
|
305
|
+
____exports.UnitScalingValueField = __TS__Class()
|
|
306
|
+
local UnitScalingValueField = ____exports.UnitScalingValueField
|
|
307
|
+
UnitScalingValueField.name = "UnitScalingValueField"
|
|
308
|
+
__TS__ClassExtends(UnitScalingValueField, ____exports.UnitFloatField)
|
|
309
|
+
function UnitScalingValueField.prototype.setNativeFieldValue(self, instance, value)
|
|
310
|
+
setUnitScale(instance.handle, value, value, value)
|
|
311
|
+
return UnitScalingValueField.____super.prototype.setNativeFieldValue(self, instance, value)
|
|
312
|
+
end
|
|
218
313
|
return ____exports
|
package/engine/object-field.d.ts
CHANGED
|
@@ -5,9 +5,10 @@ import { ObjectDataEntry, ObjectDataEntryIdType, ObjectDataEntryLevelFieldValueS
|
|
|
5
5
|
export type ObjectFieldId = number & {
|
|
6
6
|
readonly __objectDataEntryFieldId: unique symbol;
|
|
7
7
|
};
|
|
8
|
-
export type ObjectFieldConstructor<T extends ObjectFieldBase<any, any, any, any>> = OmitConstructor<typeof ObjectFieldBase> & (new (id: number) => T);
|
|
8
|
+
export type ObjectFieldConstructor<T extends ObjectFieldBase<any, any, any, any>> = OmitConstructor<typeof ObjectFieldBase> & (new (id: number, isGlobal?: boolean) => T);
|
|
9
9
|
export type ObjectFieldAbstractConstructor<T extends ObjectFieldBase<any, any, any, any>> = OmitConstructor<typeof ObjectFieldBase> & (abstract new (id: number) => T);
|
|
10
10
|
declare abstract class ObjectFieldBase<ObjectDataEntryType extends ObjectDataEntry, InstanceType extends AnyNotNil, ValueType, NativeFieldType> {
|
|
11
|
+
readonly isGlobal: boolean;
|
|
11
12
|
protected abstract readonly instanceClass: AbstractConstructor<InstanceType> | Function;
|
|
12
13
|
supports(instance: AnyNotNil): instance is InstanceType & {
|
|
13
14
|
readonly __oneSidedTypeGuard: unique symbol;
|
|
@@ -16,10 +17,10 @@ declare abstract class ObjectFieldBase<ObjectDataEntryType extends ObjectDataEnt
|
|
|
16
17
|
readonly id: ObjectFieldId;
|
|
17
18
|
protected abstract getNativeFieldById(id: number): NativeFieldType;
|
|
18
19
|
protected abstract getObjectDataEntryId(instance: InstanceType): ObjectDataEntryIdType<ObjectDataEntryType>;
|
|
19
|
-
protected abstract hasNativeFieldValue(
|
|
20
|
-
hasValue(
|
|
21
|
-
constructor(id: number);
|
|
22
|
-
static create<T extends ObjectFieldBase<any, any, any, any>>(this: ObjectFieldConstructor<T>, id?: number): T & symbol;
|
|
20
|
+
protected abstract hasNativeFieldValue(objectDataEntryId: ObjectDataEntryIdType<ObjectDataEntryType>): boolean;
|
|
21
|
+
hasValue(objectDataEntryId: ObjectDataEntryIdType<ObjectDataEntryType>): boolean;
|
|
22
|
+
constructor(id: number, isGlobal?: boolean);
|
|
23
|
+
static create<T extends ObjectFieldBase<any, any, any, any>>(this: ObjectFieldConstructor<T>, id?: number, isGlobal?: boolean): T & symbol;
|
|
23
24
|
static of<T extends ObjectFieldBase<any, any, any, any>>(this: ObjectFieldAbstractConstructor<T>, id: number): T | undefined;
|
|
24
25
|
}
|
|
25
26
|
export type ObjectFieldValueChangeEvent<T extends ObjectField<any, any, any, any> | ReadonlyObjectFieldType<ObjectField<any, any, any, any>>> = T extends ObjectField<any, infer InstanceType, infer ValueType, any> ? DispatchingEvent<[
|
|
@@ -35,7 +36,8 @@ export type ObjectFieldValueChangeEvent<T extends ObjectField<any, any, any, any
|
|
|
35
36
|
]> : never;
|
|
36
37
|
export type ReadonlyObjectFieldType<T extends ObjectField<any, any, any, any>> = Omit<T, "setValue" | "removeValue" | "trySetValue">;
|
|
37
38
|
type ReadonlyObjectFieldConstructor<T extends ObjectField> = OmitConstructor<typeof ObjectField> & (abstract new (...args: any[]) => ReadonlyObjectFieldType<T>);
|
|
38
|
-
type ObjectFieldModifier<InstanceType extends AnyNotNil, ValueType extends number | string | boolean> = (instance: InstanceType, currentValue: ValueType, originalValue: ValueType) => ValueType;
|
|
39
|
+
export type ObjectFieldModifier<InstanceType extends AnyNotNil, ValueType extends number | string | boolean> = (instance: InstanceType, currentValue: ValueType, originalValue: ValueType) => ValueType;
|
|
40
|
+
export type ObjectLevelFieldModifier<InstanceType extends AnyNotNil, ValueType extends number | string | boolean> = (instance: InstanceType, level: number, currentValue: ValueType, originalValue: ValueType) => ValueType;
|
|
39
41
|
export declare abstract class ObjectField<ObjectDataEntryType extends ObjectDataEntry = ObjectDataEntry, InstanceType extends AnyNotNil = AnyNotNil, ValueType extends number | string | boolean = number | string | boolean, NativeFieldType = unknown> extends ObjectFieldBase<ObjectDataEntryType, InstanceType, ValueType, NativeFieldType> {
|
|
40
42
|
protected abstract readonly defaultValue: ValueType;
|
|
41
43
|
protected abstract getNativeFieldValue(instance: InstanceType): ValueType;
|
|
@@ -44,6 +46,7 @@ export declare abstract class ObjectField<ObjectDataEntryType extends ObjectData
|
|
|
44
46
|
private modifiersByInstance?;
|
|
45
47
|
getValue(entry: ObjectDataEntryType | InstanceType, includeModifiers?: boolean): ValueType;
|
|
46
48
|
setValue(entry: ObjectDataEntryType | InstanceType, value: ValueType): boolean;
|
|
49
|
+
updateActualValue(instance: InstanceType): void;
|
|
47
50
|
applyModifier(instance: InstanceType, modifier: ObjectFieldModifier<InstanceType, ValueType>): void;
|
|
48
51
|
removeModifier(instance: InstanceType, modifier: ObjectFieldModifier<InstanceType, ValueType>): boolean;
|
|
49
52
|
removeValue(entry: ObjectDataEntryType): boolean;
|
|
@@ -79,13 +82,21 @@ export declare abstract class ObjectArrayField<ObjectDataEntryType extends Objec
|
|
|
79
82
|
setValue(entry: ObjectDataEntryType | InstanceType, value: ValueType[]): boolean;
|
|
80
83
|
}
|
|
81
84
|
export declare abstract class ObjectLevelField<ObjectDataEntryType extends ObjectDataEntry = ObjectDataEntry, InstanceType extends AnyNotNil = AnyNotNil, ValueType extends number | string | boolean = number | string | boolean, InputValueType extends ValueType = never, NativeFieldType = unknown> extends ObjectFieldBase<ObjectDataEntryType, InstanceType, ValueType[], NativeFieldType> {
|
|
85
|
+
private originalValueByLevelByInstance?;
|
|
86
|
+
private modifiersByInstance?;
|
|
82
87
|
protected abstract readonly defaultValue: ValueType;
|
|
83
88
|
protected abstract getNativeFieldValue(instance: InstanceType, level: number): ValueType;
|
|
84
89
|
protected abstract setNativeFieldValue(instance: InstanceType, level: number, value: ValueType): boolean;
|
|
85
90
|
protected abstract getLevelCount(entry: ObjectDataEntryType | InstanceType): number;
|
|
86
91
|
getValue<LevelType extends [number] | []>(entry: ObjectDataEntryType | InstanceType, ...[level]: LevelType): LevelType extends [number] ? ValueType : ValueType[];
|
|
87
92
|
setValue(entry: ObjectDataEntryType | InstanceType, ...[levelOrValue, value]: [value: ObjectDataEntryLevelFieldValueSupplier<InputValueType, ValueType>] | [level: number, value: InputValueType]): boolean;
|
|
93
|
+
updateActualValue(instance: InstanceType, level?: number): void;
|
|
94
|
+
applyModifier(instance: InstanceType, modifier: ObjectLevelFieldModifier<InstanceType, ValueType>): void;
|
|
95
|
+
removeModifier(instance: InstanceType, modifier: ObjectLevelFieldModifier<InstanceType, ValueType>): boolean;
|
|
88
96
|
trySetValue(entry: ObjectDataEntryType | InstanceType, levelOrValue: number | unknown, value?: unknown): boolean;
|
|
97
|
+
private getActualValue;
|
|
98
|
+
private setActualValue;
|
|
99
|
+
private calculateActualValue;
|
|
89
100
|
private invokeValueChangeEvent;
|
|
90
101
|
private invokeValueChangeEventRecursive;
|
|
91
102
|
protected static getOrCreateValueChangeEvent<T extends ObjectLevelField, R extends ReadonlyObjectLevelFieldType<T>>(this: ReadonlyObjectLevelFieldConstructor<T>): ObjectLevelFieldValueChangeEvent<R>;
|