warscript 0.0.1-dev.effa673 → 0.0.1-dev.f024cc2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/attributes.d.ts +5 -0
- package/attributes.lua +8 -1
- package/core/types/frame.lua +10 -12
- package/core/types/player.lua +3 -1
- package/core/types/playerCamera.d.ts +2 -0
- package/core/types/playerCamera.lua +79 -5
- package/core/types/sound.lua +5 -0
- package/core/types/timer.d.ts +8 -8
- package/core/types/timer.lua +25 -23
- package/decl/native.d.ts +844 -788
- package/engine/behavior.d.ts +2 -0
- package/engine/behavior.lua +53 -27
- package/engine/behaviour/ability/apply-buff.lua +1 -1
- package/engine/behaviour/ability/damage.d.ts +6 -3
- package/engine/behaviour/ability/damage.lua +24 -36
- package/engine/behaviour/ability/emulate-impact.d.ts +1 -1
- package/engine/behaviour/ability/emulate-impact.lua +18 -3
- package/engine/behaviour/ability/restore-mana.d.ts +1 -1
- package/engine/behaviour/ability/restore-mana.lua +6 -6
- package/engine/behaviour/ability.lua +8 -17
- package/engine/behaviour/unit/stun-immunity.d.ts +5 -3
- package/engine/behaviour/unit/stun-immunity.lua +43 -27
- package/engine/behaviour/unit.d.ts +26 -0
- package/engine/behaviour/unit.lua +163 -4
- package/engine/buff.d.ts +2 -1
- package/engine/buff.lua +9 -3
- package/engine/internal/ability.d.ts +4 -0
- package/engine/internal/ability.lua +23 -0
- package/engine/internal/item/ability.lua +63 -11
- package/engine/internal/item+owner.lua +12 -6
- package/engine/internal/item.d.ts +5 -2
- package/engine/internal/item.lua +75 -3
- package/engine/internal/misc/damage-metadata-by-target.d.ts +2 -0
- package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
- package/engine/internal/misc/frame-coordinates.d.ts +2 -0
- package/engine/internal/misc/frame-coordinates.lua +21 -0
- package/engine/internal/misc/get-terrain-z.d.ts +2 -0
- package/engine/internal/misc/get-terrain-z.lua +11 -0
- package/engine/internal/misc/player-local-handle.d.ts +2 -0
- package/engine/internal/misc/player-local-handle.lua +5 -0
- package/engine/internal/unit/ability.d.ts +35 -0
- package/engine/internal/unit/ability.lua +62 -0
- package/engine/internal/unit/allowed-targets.d.ts +1 -1
- package/engine/internal/unit/allowed-targets.lua +9 -1
- package/engine/internal/unit/order.d.ts +20 -0
- package/engine/internal/unit/order.lua +136 -0
- package/engine/internal/unit+ability.lua +1 -1
- package/engine/internal/unit+damage.d.ts +2 -11
- package/engine/internal/unit+damage.lua +10 -14
- package/engine/internal/unit+spellSteal.lua +1 -2
- package/engine/internal/unit-missile-launch.lua +9 -2
- package/engine/internal/unit.d.ts +24 -7
- package/engine/internal/unit.lua +242 -99
- package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
- package/engine/object-data/auxiliary/armor-type.lua +46 -0
- package/engine/object-data/auxiliary/attachment-preset.d.ts +1 -1
- package/engine/object-data/auxiliary/attachment-preset.lua +3 -2
- package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
- package/engine/object-data/auxiliary/attack-type.lua +42 -0
- package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
- package/engine/object-data/auxiliary/movement-type.lua +22 -0
- package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
- package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
- package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
- package/engine/object-data/entry/ability-type/berserk.lua +13 -0
- package/engine/object-data/entry/ability-type/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/slow-poison.d.ts +10 -0
- package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
- package/engine/object-data/entry/ability-type.lua +8 -3
- package/engine/object-data/entry/buff-type/applicable.lua +5 -0
- package/engine/object-data/entry/buff-type.d.ts +5 -11
- package/engine/object-data/entry/buff-type.lua +11 -27
- package/engine/object-data/entry/unit-type.d.ts +13 -4
- package/engine/object-data/entry/unit-type.lua +153 -85
- package/engine/object-field/ability.d.ts +1 -1
- package/engine/object-field/unit.d.ts +57 -3
- package/engine/object-field/unit.lua +207 -7
- package/engine/object-field.d.ts +15 -4
- package/engine/object-field.lua +184 -90
- package/engine/standard/entries/buff-type.d.ts +3 -0
- package/engine/standard/entries/buff-type.lua +3 -0
- package/engine/standard/fields/unit.d.ts +4 -0
- package/engine/standard/fields/unit.lua +7 -0
- package/engine/text-tag.d.ts +36 -2
- package/engine/text-tag.lua +249 -10
- package/engine/unit.d.ts +1 -0
- package/engine/unit.lua +1 -0
- package/objutil/buff.lua +1 -2
- package/package.json +2 -2
- package/utility/arrays.d.ts +1 -0
- package/utility/arrays.lua +3 -0
- package/utility/functions.d.ts +8 -0
- package/utility/functions.lua +13 -0
- package/utility/linked-set.d.ts +1 -0
- package/utility/linked-set.lua +3 -0
- package/utility/lua-maps.d.ts +4 -0
- package/utility/lua-maps.lua +20 -0
- package/utility/lua-sets.d.ts +2 -0
- package/utility/lua-sets.lua +7 -0
- package/core/types/order.d.ts +0 -25
- package/core/types/order.lua +0 -55
package/engine/object-field.lua
CHANGED
|
@@ -20,6 +20,14 @@ local extractObjectDataEntryLevelFieldValue = ____entry.extractObjectDataEntryLe
|
|
|
20
20
|
local ObjectDataEntry = ____entry.ObjectDataEntry
|
|
21
21
|
local ____object_2Ddata_2Dentry_2Did_2Dgenerator = require("engine.object-data.utility.object-data-entry-id-generator")
|
|
22
22
|
local ObjectDataEntryIdGenerator = ____object_2Ddata_2Dentry_2Did_2Dgenerator.ObjectDataEntryIdGenerator
|
|
23
|
+
local ____linked_2Dset = require("utility.linked-set")
|
|
24
|
+
local mutableLinkedSet = ____linked_2Dset.mutableLinkedSet
|
|
25
|
+
local ____lua_2Dmaps = require("utility.lua-maps")
|
|
26
|
+
local emptyLuaMap = ____lua_2Dmaps.emptyLuaMap
|
|
27
|
+
local getOrPut = ____lua_2Dmaps.getOrPut
|
|
28
|
+
local mutableWeakLuaMap = ____lua_2Dmaps.mutableWeakLuaMap
|
|
29
|
+
local ____arrays = require("utility.arrays")
|
|
30
|
+
local emptyArray = ____arrays.emptyArray
|
|
23
31
|
local compiletimeDefaultValueByObjectDataEntryIdByObjectFieldId = {}
|
|
24
32
|
local defaultValueByObjectDataEntryIdByObjectFieldId = postcompile(function() return compiletimeDefaultValueByObjectDataEntryIdByObjectFieldId end)
|
|
25
33
|
local objectFieldById = {}
|
|
@@ -29,7 +37,11 @@ local idGenerator = __TS__New(
|
|
|
29
37
|
)
|
|
30
38
|
local ObjectFieldBase = __TS__Class()
|
|
31
39
|
ObjectFieldBase.name = "ObjectFieldBase"
|
|
32
|
-
function ObjectFieldBase.prototype.____constructor(self, id)
|
|
40
|
+
function ObjectFieldBase.prototype.____constructor(self, id, isGlobal)
|
|
41
|
+
if isGlobal == nil then
|
|
42
|
+
isGlobal = false
|
|
43
|
+
end
|
|
44
|
+
self.isGlobal = isGlobal
|
|
33
45
|
self.valueByInstance = setmetatable({}, {__mode = "k"})
|
|
34
46
|
if objectFieldById[id] ~= nil then
|
|
35
47
|
error(
|
|
@@ -48,12 +60,13 @@ function ObjectFieldBase.prototype.supports(self, instance)
|
|
|
48
60
|
end
|
|
49
61
|
function ObjectFieldBase.prototype.hasValue(self, instance)
|
|
50
62
|
local defaultValueByObjectDataEntryId = defaultValueByObjectDataEntryIdByObjectFieldId[self.id]
|
|
51
|
-
return defaultValueByObjectDataEntryId ~= nil and defaultValueByObjectDataEntryId[self:getObjectDataEntryId(instance)] ~= nil or self:hasNativeFieldValue(instance)
|
|
63
|
+
return self.isGlobal or defaultValueByObjectDataEntryId ~= nil and defaultValueByObjectDataEntryId[self:getObjectDataEntryId(instance)] ~= nil or self:hasNativeFieldValue(instance)
|
|
52
64
|
end
|
|
53
|
-
function ObjectFieldBase.create(self, id)
|
|
65
|
+
function ObjectFieldBase.create(self, id, isGlobal)
|
|
54
66
|
return __TS__New(
|
|
55
67
|
self,
|
|
56
|
-
id or idGenerator:next()
|
|
68
|
+
id or idGenerator:next(),
|
|
69
|
+
isGlobal
|
|
57
70
|
)
|
|
58
71
|
end
|
|
59
72
|
function ObjectFieldBase.of(self, id)
|
|
@@ -75,7 +88,7 @@ ____exports.ObjectField = __TS__Class()
|
|
|
75
88
|
local ObjectField = ____exports.ObjectField
|
|
76
89
|
ObjectField.name = "ObjectField"
|
|
77
90
|
__TS__ClassExtends(ObjectField, ObjectFieldBase)
|
|
78
|
-
function ObjectField.prototype.getValue(self, entry)
|
|
91
|
+
function ObjectField.prototype.getValue(self, entry, includeModifiers)
|
|
79
92
|
if __TS__InstanceOf(entry, ObjectDataEntry) then
|
|
80
93
|
local defaultValueByObjectDataEntryId = (warpack.compiletime and compiletimeDefaultValueByObjectDataEntryIdByObjectFieldId or defaultValueByObjectDataEntryIdByObjectFieldId)[self.id]
|
|
81
94
|
if defaultValueByObjectDataEntryId ~= nil then
|
|
@@ -86,22 +99,16 @@ function ObjectField.prototype.getValue(self, entry)
|
|
|
86
99
|
end
|
|
87
100
|
return self.defaultValue
|
|
88
101
|
end
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
____self_valueByInstance_entry_0 = defaultValue
|
|
102
|
+
if includeModifiers == false then
|
|
103
|
+
local originalValueByInstance = self.originalValueByInstance
|
|
104
|
+
if originalValueByInstance ~= nil then
|
|
105
|
+
local originalValue = originalValueByInstance[entry]
|
|
106
|
+
if originalValue ~= nil then
|
|
107
|
+
return originalValue
|
|
96
108
|
end
|
|
97
|
-
return ____self_valueByInstance_entry_0
|
|
98
109
|
end
|
|
99
110
|
end
|
|
100
|
-
|
|
101
|
-
if ____temp_1 == nil then
|
|
102
|
-
____temp_1 = self.defaultValue
|
|
103
|
-
end
|
|
104
|
-
return ____temp_1
|
|
111
|
+
return self:getActualValue(entry)
|
|
105
112
|
end
|
|
106
113
|
function ObjectField.prototype.setValue(self, entry, value)
|
|
107
114
|
if __TS__InstanceOf(entry, ObjectDataEntry) then
|
|
@@ -116,37 +123,53 @@ function ObjectField.prototype.setValue(self, entry, value)
|
|
|
116
123
|
defaultValueByObjectDataEntryId[entry.id] = value
|
|
117
124
|
return true
|
|
118
125
|
end
|
|
119
|
-
local
|
|
120
|
-
if
|
|
121
|
-
local
|
|
122
|
-
if
|
|
123
|
-
local
|
|
124
|
-
if
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
local ____self_valueByInstance_entry_2_3 = ____self_valueByInstance_entry_2
|
|
128
|
-
if ____self_valueByInstance_entry_2_3 == nil then
|
|
129
|
-
____self_valueByInstance_entry_2_3 = self.defaultValue
|
|
126
|
+
local modifiersByInstance = self.modifiersByInstance
|
|
127
|
+
if modifiersByInstance ~= nil then
|
|
128
|
+
local modifiers = modifiersByInstance[entry]
|
|
129
|
+
if modifiers ~= nil and modifiers.size ~= 0 then
|
|
130
|
+
local originalValueByInstance = self.originalValueByInstance
|
|
131
|
+
if originalValueByInstance == nil then
|
|
132
|
+
originalValueByInstance = mutableWeakLuaMap()
|
|
133
|
+
self.originalValueByInstance = originalValueByInstance
|
|
130
134
|
end
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
self.valueByInstance[entry] = value
|
|
134
|
-
self:invokeValueChangeEvent(entry, self, previousValue, value)
|
|
135
|
-
end
|
|
136
|
-
return true
|
|
135
|
+
originalValueByInstance[entry] = value
|
|
136
|
+
value = self:calculateActualValue(entry)
|
|
137
137
|
end
|
|
138
138
|
end
|
|
139
|
-
|
|
140
|
-
|
|
139
|
+
return self:setActualValue(entry, value)
|
|
140
|
+
end
|
|
141
|
+
function ObjectField.prototype.applyModifier(self, instance, modifier)
|
|
142
|
+
local modifiersByInstance = self.modifiersByInstance
|
|
143
|
+
if modifiersByInstance == nil then
|
|
144
|
+
modifiersByInstance = mutableWeakLuaMap()
|
|
145
|
+
self.modifiersByInstance = modifiersByInstance
|
|
146
|
+
end
|
|
147
|
+
if getOrPut(modifiersByInstance, instance, mutableLinkedSet):add(modifier) then
|
|
148
|
+
local originalValueByInstance = self.originalValueByInstance
|
|
149
|
+
if originalValueByInstance == nil then
|
|
150
|
+
originalValueByInstance = mutableWeakLuaMap()
|
|
151
|
+
self.originalValueByInstance = originalValueByInstance
|
|
152
|
+
end
|
|
153
|
+
originalValueByInstance[instance] = self:getActualValue(instance)
|
|
154
|
+
self:setActualValue(
|
|
155
|
+
instance,
|
|
156
|
+
self:calculateActualValue(instance)
|
|
157
|
+
)
|
|
141
158
|
end
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
159
|
+
end
|
|
160
|
+
function ObjectField.prototype.removeModifier(self, instance, modifier)
|
|
161
|
+
local modifiersByInstance = self.modifiersByInstance
|
|
162
|
+
if modifiersByInstance ~= nil then
|
|
163
|
+
local modifiers = modifiersByInstance[instance]
|
|
164
|
+
if modifiers ~= nil and modifiers:remove(modifier) then
|
|
165
|
+
self:setActualValue(
|
|
166
|
+
instance,
|
|
167
|
+
self:calculateActualValue(instance)
|
|
168
|
+
)
|
|
169
|
+
return true
|
|
146
170
|
end
|
|
147
|
-
self:invokeValueChangeEvent(entry, self, previousValue, value)
|
|
148
171
|
end
|
|
149
|
-
return
|
|
172
|
+
return false
|
|
150
173
|
end
|
|
151
174
|
function ObjectField.prototype.removeValue(self, entry)
|
|
152
175
|
if not warpack.compiletime then
|
|
@@ -168,6 +191,77 @@ function ObjectField.prototype.trySetValue(self, entry, value)
|
|
|
168
191
|
end
|
|
169
192
|
return self:setValue(entry, value)
|
|
170
193
|
end
|
|
194
|
+
function ObjectField.prototype.getActualValue(self, instance)
|
|
195
|
+
local defaultValueByObjectDataEntryId = defaultValueByObjectDataEntryIdByObjectFieldId[self.id]
|
|
196
|
+
if defaultValueByObjectDataEntryId ~= nil or self.isGlobal then
|
|
197
|
+
local defaultValue = (defaultValueByObjectDataEntryId or emptyLuaMap())[self:getObjectDataEntryId(instance)]
|
|
198
|
+
if defaultValue ~= nil or self.isGlobal then
|
|
199
|
+
local ____self_valueByInstance_instance_0 = self.valueByInstance[instance]
|
|
200
|
+
if ____self_valueByInstance_instance_0 == nil then
|
|
201
|
+
____self_valueByInstance_instance_0 = defaultValue
|
|
202
|
+
end
|
|
203
|
+
local ____self_valueByInstance_instance_0_1 = ____self_valueByInstance_instance_0
|
|
204
|
+
if ____self_valueByInstance_instance_0_1 == nil then
|
|
205
|
+
____self_valueByInstance_instance_0_1 = self.defaultValue
|
|
206
|
+
end
|
|
207
|
+
return ____self_valueByInstance_instance_0_1
|
|
208
|
+
end
|
|
209
|
+
end
|
|
210
|
+
local ____temp_2 = self:getNativeFieldValue(instance)
|
|
211
|
+
if ____temp_2 == nil then
|
|
212
|
+
____temp_2 = self.defaultValue
|
|
213
|
+
end
|
|
214
|
+
return ____temp_2
|
|
215
|
+
end
|
|
216
|
+
function ObjectField.prototype.setActualValue(self, instance, value)
|
|
217
|
+
local defaultValueByObjectDataEntryId = defaultValueByObjectDataEntryIdByObjectFieldId[self.id]
|
|
218
|
+
if defaultValueByObjectDataEntryId ~= nil or self.isGlobal then
|
|
219
|
+
local defaultValue = (defaultValueByObjectDataEntryId or emptyLuaMap())[self:getObjectDataEntryId(instance)]
|
|
220
|
+
if defaultValue ~= nil or self.isGlobal then
|
|
221
|
+
local ____self_valueByInstance_instance_3 = self.valueByInstance[instance]
|
|
222
|
+
if ____self_valueByInstance_instance_3 == nil then
|
|
223
|
+
____self_valueByInstance_instance_3 = defaultValue
|
|
224
|
+
end
|
|
225
|
+
local ____self_valueByInstance_instance_3_4 = ____self_valueByInstance_instance_3
|
|
226
|
+
if ____self_valueByInstance_instance_3_4 == nil then
|
|
227
|
+
____self_valueByInstance_instance_3_4 = self.defaultValue
|
|
228
|
+
end
|
|
229
|
+
local previousValue = ____self_valueByInstance_instance_3_4
|
|
230
|
+
if value ~= previousValue then
|
|
231
|
+
self.valueByInstance[instance] = value
|
|
232
|
+
self:invokeValueChangeEvent(instance, self, previousValue, value)
|
|
233
|
+
end
|
|
234
|
+
return true
|
|
235
|
+
end
|
|
236
|
+
end
|
|
237
|
+
if not self:hasNativeFieldValue(instance) then
|
|
238
|
+
return false
|
|
239
|
+
end
|
|
240
|
+
local previousValue = self:getNativeFieldValue(instance)
|
|
241
|
+
if value ~= previousValue then
|
|
242
|
+
if not self:setNativeFieldValue(instance, value) then
|
|
243
|
+
return false
|
|
244
|
+
end
|
|
245
|
+
self:invokeValueChangeEvent(instance, self, previousValue, value)
|
|
246
|
+
end
|
|
247
|
+
return true
|
|
248
|
+
end
|
|
249
|
+
function ObjectField.prototype.calculateActualValue(self, instance)
|
|
250
|
+
local ____opt_5 = self.originalValueByInstance
|
|
251
|
+
local originalValue = ____opt_5 and ____opt_5[instance]
|
|
252
|
+
local ____opt_7 = self.modifiersByInstance
|
|
253
|
+
local modifiers = ____opt_7 and ____opt_7[instance]
|
|
254
|
+
if originalValue ~= nil then
|
|
255
|
+
local value = originalValue
|
|
256
|
+
if modifiers ~= nil then
|
|
257
|
+
for modifier in pairs(modifiers) do
|
|
258
|
+
value = modifier(instance, value, originalValue)
|
|
259
|
+
end
|
|
260
|
+
end
|
|
261
|
+
return value
|
|
262
|
+
end
|
|
263
|
+
return self.defaultValue
|
|
264
|
+
end
|
|
171
265
|
function ObjectField.prototype.invokeValueChangeEvent(self, ...)
|
|
172
266
|
self:invokeValueChangeEventRecursive(
|
|
173
267
|
getClass(self),
|
|
@@ -221,37 +315,37 @@ function ObjectArrayField.prototype.getValue(self, entry, index)
|
|
|
221
315
|
if defaultValueByObjectDataEntryId ~= nil then
|
|
222
316
|
local value = defaultValueByObjectDataEntryId[entry.id]
|
|
223
317
|
if value ~= nil then
|
|
224
|
-
local
|
|
318
|
+
local ____temp_10
|
|
225
319
|
if index == nil then
|
|
226
|
-
|
|
320
|
+
____temp_10 = value
|
|
227
321
|
else
|
|
228
|
-
local
|
|
229
|
-
if
|
|
230
|
-
|
|
322
|
+
local ____value_index_9 = value[index + 1]
|
|
323
|
+
if ____value_index_9 == nil then
|
|
324
|
+
____value_index_9 = self.defaultValue
|
|
231
325
|
end
|
|
232
|
-
|
|
326
|
+
____temp_10 = ____value_index_9
|
|
233
327
|
end
|
|
234
|
-
return
|
|
328
|
+
return ____temp_10
|
|
235
329
|
end
|
|
236
330
|
end
|
|
237
331
|
return index == nil and ({}) or self.defaultValue
|
|
238
332
|
end
|
|
239
333
|
local defaultValueByObjectDataEntryId = defaultValueByObjectDataEntryIdByObjectFieldId[self.id]
|
|
240
|
-
if defaultValueByObjectDataEntryId ~= nil then
|
|
241
|
-
local defaultValue = defaultValueByObjectDataEntryId[self:getObjectDataEntryId(entry)]
|
|
242
|
-
if defaultValue ~= nil then
|
|
243
|
-
local value = self.valueByInstance[entry] or defaultValue
|
|
244
|
-
local
|
|
334
|
+
if defaultValueByObjectDataEntryId ~= nil or self.isGlobal then
|
|
335
|
+
local defaultValue = (defaultValueByObjectDataEntryId or emptyLuaMap())[self:getObjectDataEntryId(entry)]
|
|
336
|
+
if defaultValue ~= nil or self.isGlobal then
|
|
337
|
+
local value = self.valueByInstance[entry] or defaultValue or emptyArray()
|
|
338
|
+
local ____temp_12
|
|
245
339
|
if index == nil then
|
|
246
|
-
|
|
340
|
+
____temp_12 = value
|
|
247
341
|
else
|
|
248
|
-
local
|
|
249
|
-
if
|
|
250
|
-
|
|
342
|
+
local ____value_index_11 = value[index + 1]
|
|
343
|
+
if ____value_index_11 == nil then
|
|
344
|
+
____value_index_11 = self.defaultValue
|
|
251
345
|
end
|
|
252
|
-
|
|
346
|
+
____temp_12 = ____value_index_11
|
|
253
347
|
end
|
|
254
|
-
return
|
|
348
|
+
return ____temp_12
|
|
255
349
|
end
|
|
256
350
|
end
|
|
257
351
|
if index ~= nil then
|
|
@@ -296,36 +390,36 @@ function ObjectLevelField.prototype.getValue(self, entry, level)
|
|
|
296
390
|
if defaultValueByObjectDataEntryId ~= nil then
|
|
297
391
|
local valueByLevel = defaultValueByObjectDataEntryId[entry.id]
|
|
298
392
|
if valueByLevel ~= nil then
|
|
299
|
-
local
|
|
300
|
-
if
|
|
301
|
-
|
|
393
|
+
local ____valueByLevel_index_13 = valueByLevel[level + 1]
|
|
394
|
+
if ____valueByLevel_index_13 == nil then
|
|
395
|
+
____valueByLevel_index_13 = self.defaultValue
|
|
302
396
|
end
|
|
303
|
-
return
|
|
397
|
+
return ____valueByLevel_index_13
|
|
304
398
|
end
|
|
305
399
|
end
|
|
306
400
|
return self.defaultValue
|
|
307
401
|
end
|
|
308
402
|
local defaultValueByObjectDataEntryId = defaultValueByObjectDataEntryIdByObjectFieldId[self.id]
|
|
309
|
-
if defaultValueByObjectDataEntryId ~= nil then
|
|
310
|
-
local defaultValueByLevel = defaultValueByObjectDataEntryId[self:getObjectDataEntryId(entry)]
|
|
311
|
-
if defaultValueByLevel ~= nil then
|
|
312
|
-
local
|
|
313
|
-
local
|
|
314
|
-
if
|
|
315
|
-
|
|
403
|
+
if defaultValueByObjectDataEntryId ~= nil or self.isGlobal then
|
|
404
|
+
local defaultValueByLevel = (defaultValueByObjectDataEntryId or emptyLuaMap())[self:getObjectDataEntryId(entry)]
|
|
405
|
+
if defaultValueByLevel ~= nil or self.isGlobal then
|
|
406
|
+
local ____opt_14 = self.valueByInstance[entry]
|
|
407
|
+
local ____temp_16 = ____opt_14 and ____opt_14[level + 1]
|
|
408
|
+
if ____temp_16 == nil then
|
|
409
|
+
____temp_16 = (defaultValueByLevel or emptyArray())[level + 1]
|
|
316
410
|
end
|
|
317
|
-
local
|
|
318
|
-
if
|
|
319
|
-
|
|
411
|
+
local ____temp_16_17 = ____temp_16
|
|
412
|
+
if ____temp_16_17 == nil then
|
|
413
|
+
____temp_16_17 = self.defaultValue
|
|
320
414
|
end
|
|
321
|
-
return
|
|
415
|
+
return ____temp_16_17
|
|
322
416
|
end
|
|
323
417
|
end
|
|
324
|
-
local
|
|
325
|
-
if
|
|
326
|
-
|
|
418
|
+
local ____temp_18 = self:getNativeFieldValue(entry, level)
|
|
419
|
+
if ____temp_18 == nil then
|
|
420
|
+
____temp_18 = self.defaultValue
|
|
327
421
|
end
|
|
328
|
-
return
|
|
422
|
+
return ____temp_18
|
|
329
423
|
end
|
|
330
424
|
function ObjectLevelField.prototype.setValue(self, entry, levelOrValue, value)
|
|
331
425
|
if value == nil then
|
|
@@ -366,23 +460,23 @@ function ObjectLevelField.prototype.setValue(self, entry, levelOrValue, value)
|
|
|
366
460
|
return true
|
|
367
461
|
end
|
|
368
462
|
local defaultValueByObjectDataEntryId = defaultValueByObjectDataEntryIdByObjectFieldId[self.id]
|
|
369
|
-
if defaultValueByObjectDataEntryId ~= nil then
|
|
370
|
-
local defaultValueByLevel = defaultValueByObjectDataEntryId[self:getObjectDataEntryId(entry)]
|
|
371
|
-
if defaultValueByLevel ~= nil then
|
|
463
|
+
if defaultValueByObjectDataEntryId ~= nil or self.isGlobal then
|
|
464
|
+
local defaultValueByLevel = (defaultValueByObjectDataEntryId or emptyLuaMap())[self:getObjectDataEntryId(entry)]
|
|
465
|
+
if defaultValueByLevel ~= nil or self.isGlobal then
|
|
372
466
|
local valueByLevel = self.valueByInstance[entry]
|
|
373
467
|
if valueByLevel == nil then
|
|
374
468
|
valueByLevel = {}
|
|
375
469
|
self.valueByInstance[entry] = valueByLevel
|
|
376
470
|
end
|
|
377
|
-
local
|
|
378
|
-
if
|
|
379
|
-
|
|
471
|
+
local ____valueByLevel_index_19 = valueByLevel[level + 1]
|
|
472
|
+
if ____valueByLevel_index_19 == nil then
|
|
473
|
+
____valueByLevel_index_19 = (defaultValueByLevel or emptyArray())[level + 1]
|
|
380
474
|
end
|
|
381
|
-
local
|
|
382
|
-
if
|
|
383
|
-
|
|
475
|
+
local ____valueByLevel_index_19_20 = ____valueByLevel_index_19
|
|
476
|
+
if ____valueByLevel_index_19_20 == nil then
|
|
477
|
+
____valueByLevel_index_19_20 = self.defaultValue
|
|
384
478
|
end
|
|
385
|
-
local previousValue =
|
|
479
|
+
local previousValue = ____valueByLevel_index_19_20
|
|
386
480
|
if value ~= previousValue then
|
|
387
481
|
valueByLevel[level + 1] = value
|
|
388
482
|
self:invokeValueChangeEvent(
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/** @noSelfInFile */
|
|
2
|
+
import { UnitClassificationsField, UnitPropulsionWindowField } from "../../object-field/unit";
|
|
3
|
+
export declare const PROPULSION_WINDOW_UNIT_FLOAT_FIELD: UnitPropulsionWindowField & symbol;
|
|
4
|
+
export declare const UNIT_CLASSIFICATIONS_FIELD: UnitClassificationsField & symbol;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
local ____exports = {}
|
|
2
|
+
local ____unit = require("engine.object-field.unit")
|
|
3
|
+
local UnitClassificationsField = ____unit.UnitClassificationsField
|
|
4
|
+
local UnitPropulsionWindowField = ____unit.UnitPropulsionWindowField
|
|
5
|
+
____exports.PROPULSION_WINDOW_UNIT_FLOAT_FIELD = UnitPropulsionWindowField:create(fourCC("urpw"))
|
|
6
|
+
____exports.UNIT_CLASSIFICATIONS_FIELD = UnitClassificationsField:create(fourCC("utyp"))
|
|
7
|
+
return ____exports
|
package/engine/text-tag.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
/** @noSelfInFile */
|
|
2
2
|
import { Color } from "../core/types/color";
|
|
3
|
+
import { Unit } from "./internal/unit";
|
|
4
|
+
import { AbstractDestroyable, Destructor } from "../destroyable";
|
|
3
5
|
export type TextTagPreset = {
|
|
4
6
|
fadepoint: number;
|
|
5
7
|
lifespan: number;
|
|
@@ -10,9 +12,39 @@ export type TextTagPreset = {
|
|
|
10
12
|
velocityY: number;
|
|
11
13
|
color: Color;
|
|
12
14
|
};
|
|
13
|
-
|
|
14
|
-
|
|
15
|
+
declare const enum TextTagPropertyKey {
|
|
16
|
+
UNIT = 100,
|
|
17
|
+
HANDLE = 101,
|
|
18
|
+
CONFIGURATION = 102,
|
|
19
|
+
TEXT = 103,
|
|
20
|
+
FONT_SIZE = 104,
|
|
21
|
+
COLOR = 105,
|
|
22
|
+
X = 106,
|
|
23
|
+
Y = 107
|
|
24
|
+
}
|
|
25
|
+
export declare class TextTag extends AbstractDestroyable {
|
|
26
|
+
private [TextTagPropertyKey.HANDLE]?;
|
|
27
|
+
private [TextTagPropertyKey.CONFIGURATION]?;
|
|
28
|
+
private [TextTagPropertyKey.TEXT]?;
|
|
29
|
+
private [TextTagPropertyKey.FONT_SIZE]?;
|
|
30
|
+
private [TextTagPropertyKey.COLOR]?;
|
|
31
|
+
private [TextTagPropertyKey.UNIT]?;
|
|
32
|
+
private [TextTagPropertyKey.X]?;
|
|
33
|
+
private [TextTagPropertyKey.Y]?;
|
|
15
34
|
private constructor();
|
|
35
|
+
protected onDestroy(): Destructor;
|
|
36
|
+
get text(): string;
|
|
37
|
+
set text(text: string);
|
|
38
|
+
get fontSize(): number;
|
|
39
|
+
set fontSize(fontSize: number);
|
|
40
|
+
get color(): Color;
|
|
41
|
+
set color(color: Color);
|
|
42
|
+
get unit(): Unit | undefined;
|
|
43
|
+
set unit(unit: Unit | undefined);
|
|
44
|
+
get x(): number;
|
|
45
|
+
set x(x: number);
|
|
46
|
+
get y(): number;
|
|
47
|
+
set y(y: number);
|
|
16
48
|
static BASE: Readonly<TextTagPreset>;
|
|
17
49
|
static BASH: Readonly<TextTagPreset>;
|
|
18
50
|
static CRITICAL_STRIKE: Readonly<TextTagPreset>;
|
|
@@ -22,4 +54,6 @@ export declare class TextTag {
|
|
|
22
54
|
static MISS: Readonly<TextTagPreset>;
|
|
23
55
|
static SHADOW_STRIKE: Readonly<TextTagPreset>;
|
|
24
56
|
static flash(configuration: Readonly<TextTagPreset>, text: string, x: number, y: number, z?: number): void;
|
|
57
|
+
static create(configuration: Readonly<TextTagPreset>, text: string, unit: Unit): TextTag;
|
|
25
58
|
}
|
|
59
|
+
export {};
|