warscript 0.0.1-dev.ea69747 → 0.0.1-dev.eb6b18a

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.
Files changed (249) hide show
  1. package/attributes.d.ts +17 -0
  2. package/attributes.lua +23 -0
  3. package/binaryreader.d.ts +1 -0
  4. package/binaryreader.lua +3 -0
  5. package/config.d.ts +5 -0
  6. package/config.lua +10 -0
  7. package/core/types/effect.d.ts +14 -6
  8. package/core/types/effect.lua +131 -35
  9. package/core/types/frame.d.ts +8 -1
  10. package/core/types/frame.lua +93 -1
  11. package/core/types/group.d.ts +0 -1
  12. package/core/types/handle.d.ts +2 -1
  13. package/core/types/handle.lua +5 -0
  14. package/core/types/image.d.ts +0 -1
  15. package/core/types/missile.d.ts +2 -2
  16. package/core/types/missile.lua +8 -2
  17. package/core/types/sound.d.ts +17 -24
  18. package/core/types/sound.lua +99 -24
  19. package/core/types/timer.d.ts +6 -7
  20. package/core/types/timer.lua +18 -21
  21. package/core/types/unit.lua +8 -0
  22. package/core/util.d.ts +1 -1
  23. package/core/util.lua +18 -1
  24. package/decl/index.d.ts +1 -0
  25. package/decl/native.d.ts +840 -786
  26. package/engine/ability.d.ts +1 -1
  27. package/engine/behavior.d.ts +10 -10
  28. package/engine/behavior.lua +6 -6
  29. package/engine/behaviour/ability/always-enabled.d.ts +7 -0
  30. package/engine/behaviour/ability/always-enabled.lua +31 -0
  31. package/engine/behaviour/ability/apply-buff.d.ts +8 -5
  32. package/engine/behaviour/ability/apply-buff.lua +32 -0
  33. package/engine/behaviour/ability/apply-unit-behavior.d.ts +13 -4
  34. package/engine/behaviour/ability/apply-unit-behavior.lua +32 -9
  35. package/engine/behaviour/ability/damage.d.ts +39 -11
  36. package/engine/behaviour/ability/damage.lua +83 -37
  37. package/engine/behaviour/ability/emulate-impact.d.ts +6 -0
  38. package/engine/behaviour/ability/emulate-impact.lua +42 -0
  39. package/engine/behaviour/ability/heal.d.ts +33 -6
  40. package/engine/behaviour/ability/heal.lua +89 -10
  41. package/engine/behaviour/ability/instant-impact.d.ts +2 -2
  42. package/engine/behaviour/ability/instant-impact.lua +4 -15
  43. package/engine/behaviour/ability/on-command-impact.d.ts +8 -0
  44. package/engine/behaviour/ability/on-command-impact.lua +25 -0
  45. package/engine/behaviour/ability/remove-buffs.d.ts +16 -0
  46. package/engine/behaviour/ability/remove-buffs.lua +28 -0
  47. package/engine/behaviour/ability/restore-mana.d.ts +15 -0
  48. package/engine/behaviour/ability/restore-mana.lua +29 -0
  49. package/engine/behaviour/ability.d.ts +27 -4
  50. package/engine/behaviour/ability.lua +152 -26
  51. package/engine/behaviour/unit/stun-immunity.d.ts +5 -4
  52. package/engine/behaviour/unit/stun-immunity.lua +43 -27
  53. package/engine/behaviour/unit.d.ts +34 -2
  54. package/engine/behaviour/unit.lua +181 -0
  55. package/engine/buff.d.ts +103 -41
  56. package/engine/buff.lua +465 -212
  57. package/engine/game-map.d.ts +7 -0
  58. package/engine/game-map.lua +32 -0
  59. package/engine/internal/ability.d.ts +21 -14
  60. package/engine/internal/ability.lua +97 -76
  61. package/engine/internal/item/ability.lua +112 -4
  62. package/engine/internal/item+owner.lua +2 -2
  63. package/engine/internal/item.d.ts +7 -4
  64. package/engine/internal/item.lua +131 -28
  65. package/engine/internal/mechanics/ability-duration.d.ts +1 -3
  66. package/engine/internal/mechanics/ability-duration.lua +3 -1
  67. package/engine/internal/mechanics/cast-ability.d.ts +2 -0
  68. package/engine/internal/mechanics/cast-ability.lua +86 -0
  69. package/engine/internal/misc/ability-disable-counter.d.ts +2 -0
  70. package/engine/internal/misc/ability-disable-counter.lua +13 -0
  71. package/engine/internal/misc/damage-metadata-by-target.d.ts +2 -0
  72. package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
  73. package/engine/internal/object-data/auto-attack-speed-increase.d.ts +1 -1
  74. package/engine/internal/object-data/auto-attack-speed-increase.lua +2 -0
  75. package/engine/internal/object-data/evasion-probability.d.ts +2 -0
  76. package/engine/internal/object-data/evasion-probability.lua +16 -0
  77. package/engine/internal/unit/ability.d.ts +45 -1
  78. package/engine/internal/unit/ability.lua +98 -14
  79. package/engine/internal/unit/add-item-to-slot-init.d.ts +2 -0
  80. package/engine/internal/unit/add-item-to-slot-init.lua +23 -0
  81. package/engine/internal/unit/add-item-to-slot.d.ts +2 -0
  82. package/engine/internal/unit/add-item-to-slot.lua +52 -0
  83. package/engine/internal/unit/allowed-targets.d.ts +1 -1
  84. package/engine/internal/unit/allowed-targets.lua +9 -1
  85. package/engine/internal/unit/bonus.d.ts +11 -8
  86. package/engine/internal/unit/bonus.lua +23 -1
  87. package/engine/internal/unit/detach-missiles.d.ts +7 -0
  88. package/engine/internal/unit/detach-missiles.lua +30 -0
  89. package/engine/internal/unit/ignore-events-items.d.ts +2 -0
  90. package/engine/internal/unit/ignore-events-items.lua +5 -0
  91. package/engine/internal/unit/item.d.ts +24 -0
  92. package/engine/internal/unit/item.lua +78 -0
  93. package/engine/internal/unit/main-selected.d.ts +13 -0
  94. package/engine/internal/unit/main-selected.lua +51 -0
  95. package/engine/internal/unit/order.d.ts +20 -0
  96. package/engine/internal/unit/order.lua +136 -0
  97. package/engine/internal/unit+ability.lua +2 -2
  98. package/engine/internal/unit+damage.d.ts +2 -11
  99. package/engine/internal/unit+damage.lua +10 -14
  100. package/engine/internal/unit+spellSteal.lua +1 -2
  101. package/engine/internal/unit+transport.lua +4 -10
  102. package/engine/internal/unit-missile-launch.lua +25 -6
  103. package/engine/internal/unit.d.ts +85 -19
  104. package/engine/internal/unit.lua +555 -167
  105. package/engine/internal/utility.lua +12 -0
  106. package/engine/lightning.d.ts +12 -5
  107. package/engine/lightning.lua +48 -14
  108. package/engine/local-client.d.ts +7 -2
  109. package/engine/local-client.lua +82 -0
  110. package/engine/object-data/auxiliary/animation-name.d.ts +1 -0
  111. package/engine/object-data/auxiliary/animation-name.lua +16 -0
  112. package/engine/object-data/auxiliary/attachment-preset.d.ts +7 -3
  113. package/engine/object-data/auxiliary/attachment-preset.lua +4 -3
  114. package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
  115. package/engine/object-data/auxiliary/attack-type.lua +42 -0
  116. package/engine/object-data/auxiliary/combat-classification.d.ts +0 -2
  117. package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
  118. package/engine/object-data/auxiliary/movement-type.lua +22 -0
  119. package/engine/object-data/auxiliary/sound-eax.d.ts +10 -0
  120. package/engine/object-data/auxiliary/sound-eax.lua +2 -0
  121. package/engine/object-data/auxiliary/sound-preset-name.d.ts +5 -1
  122. package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +1 -1
  123. package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
  124. package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
  125. package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
  126. package/engine/object-data/entry/ability-type/berserk.lua +13 -0
  127. package/engine/object-data/entry/ability-type/blank-configurable.d.ts +0 -1
  128. package/engine/object-data/entry/ability-type/blank-configurable.lua +12 -1
  129. package/engine/object-data/entry/ability-type/blank-passive.d.ts +0 -1
  130. package/engine/object-data/entry/ability-type/blink.d.ts +10 -0
  131. package/engine/object-data/entry/ability-type/blink.lua +39 -0
  132. package/engine/object-data/entry/ability-type/carrion-swarm.d.ts +14 -0
  133. package/engine/object-data/entry/ability-type/carrion-swarm.lua +65 -0
  134. package/engine/object-data/entry/ability-type/channel.d.ts +0 -1
  135. package/engine/object-data/entry/ability-type/disease-cloud.lua +2 -2
  136. package/engine/object-data/entry/ability-type/engineering-upgrade.lua +4 -4
  137. package/engine/object-data/entry/ability-type/ensnare.d.ts +12 -0
  138. package/engine/object-data/entry/ability-type/ensnare.lua +52 -0
  139. package/engine/object-data/entry/ability-type/feral-spirit.lua +2 -2
  140. package/engine/object-data/entry/ability-type/mine.d.ts +10 -0
  141. package/engine/object-data/entry/ability-type/mine.lua +39 -0
  142. package/engine/object-data/entry/ability-type/permanent-invisibility.d.ts +8 -0
  143. package/engine/object-data/entry/ability-type/permanent-invisibility.lua +26 -0
  144. package/engine/object-data/entry/ability-type/phase-shift.d.ts +10 -0
  145. package/engine/object-data/entry/ability-type/phase-shift.lua +39 -0
  146. package/engine/object-data/entry/ability-type/phoenix-morph.lua +4 -4
  147. package/engine/object-data/entry/ability-type/raise-dead.d.ts +17 -0
  148. package/engine/object-data/entry/ability-type/raise-dead.lua +78 -0
  149. package/engine/object-data/entry/ability-type/shock-wave.d.ts +4 -0
  150. package/engine/object-data/entry/ability-type/shock-wave.lua +26 -0
  151. package/engine/object-data/entry/ability-type/slow-poison.d.ts +10 -0
  152. package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
  153. package/engine/object-data/entry/ability-type/spirit-touch.d.ts +2 -2
  154. package/engine/object-data/entry/ability-type/spirit-touch.lua +6 -6
  155. package/engine/object-data/entry/ability-type/summon-quilbeast.lua +2 -2
  156. package/engine/object-data/entry/ability-type/summon-water-elemental.lua +2 -2
  157. package/engine/object-data/entry/ability-type/web.d.ts +12 -0
  158. package/engine/object-data/entry/ability-type/web.lua +52 -0
  159. package/engine/object-data/entry/ability-type.d.ts +20 -18
  160. package/engine/object-data/entry/ability-type.lua +90 -33
  161. package/engine/object-data/entry/buff-type/applicable.d.ts +0 -1
  162. package/engine/object-data/entry/buff-type/applicable.lua +39 -102
  163. package/engine/object-data/entry/buff-type/blank.d.ts +0 -1
  164. package/engine/object-data/entry/buff-type.d.ts +6 -13
  165. package/engine/object-data/entry/buff-type.lua +13 -29
  166. package/engine/object-data/entry/destructible-type.d.ts +1 -2
  167. package/engine/object-data/entry/item-type/blank.d.ts +0 -1
  168. package/engine/object-data/entry/item-type.d.ts +15 -2
  169. package/engine/object-data/entry/item-type.lua +93 -2
  170. package/engine/object-data/entry/lightning-type.d.ts +1 -2
  171. package/engine/object-data/entry/sound-preset.d.ts +33 -0
  172. package/engine/object-data/entry/sound-preset.lua +140 -0
  173. package/engine/object-data/entry/unit-type.d.ts +50 -3
  174. package/engine/object-data/entry/unit-type.lua +452 -61
  175. package/engine/object-data/entry/upgrade/blank.d.ts +0 -1
  176. package/engine/object-data/entry/upgrade.d.ts +1 -2
  177. package/engine/object-data/entry/upgrade.lua +4 -4
  178. package/engine/object-data/entry.d.ts +18 -17
  179. package/engine/object-data/entry.lua +60 -32
  180. package/engine/object-data/utility/object-data-entry-id-generator.lua +7 -0
  181. package/engine/object-field/ability.d.ts +33 -8
  182. package/engine/object-field/ability.lua +60 -1
  183. package/engine/object-field/unit.d.ts +50 -2
  184. package/engine/object-field/unit.lua +186 -4
  185. package/engine/object-field.d.ts +21 -8
  186. package/engine/object-field.lua +221 -97
  187. package/engine/random.d.ts +1 -0
  188. package/engine/random.lua +9 -0
  189. package/engine/standard/entries/buff-type.d.ts +3 -0
  190. package/engine/standard/entries/buff-type.lua +3 -0
  191. package/engine/standard/entries/sound-preset.d.ts +10 -0
  192. package/engine/standard/entries/sound-preset.lua +10 -0
  193. package/engine/standard/entries/unit-type.d.ts +42 -1
  194. package/engine/standard/entries/unit-type.lua +42 -1
  195. package/engine/standard/fields/ability.d.ts +3 -1
  196. package/engine/standard/fields/ability.lua +3 -1
  197. package/engine/standard/fields/unit.d.ts +3 -0
  198. package/engine/standard/fields/unit.lua +5 -0
  199. package/engine/text-tag.d.ts +36 -2
  200. package/engine/text-tag.lua +175 -10
  201. package/engine/unit.d.ts +5 -0
  202. package/engine/unit.lua +14 -2
  203. package/event.d.ts +2 -3
  204. package/event.lua +9 -5
  205. package/exception.d.ts +2 -0
  206. package/exception.lua +4 -0
  207. package/global/vec2.lua +1 -0
  208. package/index.d.ts +1 -0
  209. package/index.lua +1 -0
  210. package/lualib_bundle.lua +146 -42
  211. package/math/vec2.d.ts +2 -9
  212. package/math.d.ts +0 -2
  213. package/net/socket.d.ts +7 -1
  214. package/net/socket.lua +45 -4
  215. package/network.d.ts +1 -0
  216. package/network.lua +3 -2
  217. package/objutil/ability.d.ts +0 -1
  218. package/objutil/buff.d.ts +0 -1
  219. package/objutil/buff.lua +2 -3
  220. package/objutil/object.d.ts +0 -1
  221. package/objutil/unit.d.ts +0 -1
  222. package/objutil/unit.lua +8 -0
  223. package/package.json +13 -14
  224. package/patch-lua.d.ts +0 -0
  225. package/patch-lua.lua +10 -0
  226. package/property.d.ts +55 -0
  227. package/property.lua +374 -0
  228. package/string.d.ts +30 -0
  229. package/string.lua +14 -0
  230. package/util/stream.d.ts +0 -1
  231. package/utility/arrays.d.ts +13 -6
  232. package/utility/arrays.lua +41 -4
  233. package/utility/bit-set.d.ts +0 -2
  234. package/utility/functions.d.ts +1 -0
  235. package/utility/functions.lua +1 -0
  236. package/utility/lazy.d.ts +2 -0
  237. package/utility/lazy.lua +14 -0
  238. package/utility/linked-set.d.ts +32 -9
  239. package/utility/linked-set.lua +24 -2
  240. package/utility/lua-maps.d.ts +5 -2
  241. package/utility/lua-maps.lua +20 -0
  242. package/utility/lua-sets.d.ts +2 -2
  243. package/utility/lua-sets.lua +3 -0
  244. package/utility/reflection.lua +11 -7
  245. package/utility/types.d.ts +3 -2
  246. package/core/mapbounds.d.ts +0 -8
  247. package/core/mapbounds.lua +0 -12
  248. package/core/types/order.d.ts +0 -25
  249. package/core/types/order.lua +0 -55
@@ -4,6 +4,7 @@ local __TS__Class = ____lualib.__TS__Class
4
4
  local __TS__InstanceOf = ____lualib.__TS__InstanceOf
5
5
  local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
6
6
  local __TS__ClassExtends = ____lualib.__TS__ClassExtends
7
+ local __TS__TypeOf = ____lualib.__TS__TypeOf
7
8
  local __TS__ObjectDefineProperty = ____lualib.__TS__ObjectDefineProperty
8
9
  local ____exports = {}
9
10
  local ____event = require("event")
@@ -19,6 +20,14 @@ local extractObjectDataEntryLevelFieldValue = ____entry.extractObjectDataEntryLe
19
20
  local ObjectDataEntry = ____entry.ObjectDataEntry
20
21
  local ____object_2Ddata_2Dentry_2Did_2Dgenerator = require("engine.object-data.utility.object-data-entry-id-generator")
21
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
22
31
  local compiletimeDefaultValueByObjectDataEntryIdByObjectFieldId = {}
23
32
  local defaultValueByObjectDataEntryIdByObjectFieldId = postcompile(function() return compiletimeDefaultValueByObjectDataEntryIdByObjectFieldId end)
24
33
  local objectFieldById = {}
@@ -28,7 +37,11 @@ local idGenerator = __TS__New(
28
37
  )
29
38
  local ObjectFieldBase = __TS__Class()
30
39
  ObjectFieldBase.name = "ObjectFieldBase"
31
- 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
32
45
  self.valueByInstance = setmetatable({}, {__mode = "k"})
33
46
  if objectFieldById[id] ~= nil then
34
47
  error(
@@ -45,10 +58,15 @@ end
45
58
  function ObjectFieldBase.prototype.supports(self, instance)
46
59
  return __TS__InstanceOf(instance, self.instanceClass)
47
60
  end
48
- function ObjectFieldBase.create(self, id)
61
+ function ObjectFieldBase.prototype.hasValue(self, instance)
62
+ local defaultValueByObjectDataEntryId = defaultValueByObjectDataEntryIdByObjectFieldId[self.id]
63
+ return self.isGlobal or defaultValueByObjectDataEntryId ~= nil and defaultValueByObjectDataEntryId[self:getObjectDataEntryId(instance)] ~= nil or self:hasNativeFieldValue(instance)
64
+ end
65
+ function ObjectFieldBase.create(self, id, isGlobal)
49
66
  return __TS__New(
50
67
  self,
51
- id or idGenerator:next()
68
+ id or idGenerator:next(),
69
+ isGlobal
52
70
  )
53
71
  end
54
72
  function ObjectFieldBase.of(self, id)
@@ -70,7 +88,7 @@ ____exports.ObjectField = __TS__Class()
70
88
  local ObjectField = ____exports.ObjectField
71
89
  ObjectField.name = "ObjectField"
72
90
  __TS__ClassExtends(ObjectField, ObjectFieldBase)
73
- function ObjectField.prototype.getValue(self, entry)
91
+ function ObjectField.prototype.getValue(self, entry, includeModifiers)
74
92
  if __TS__InstanceOf(entry, ObjectDataEntry) then
75
93
  local defaultValueByObjectDataEntryId = (warpack.compiletime and compiletimeDefaultValueByObjectDataEntryIdByObjectFieldId or defaultValueByObjectDataEntryIdByObjectFieldId)[self.id]
76
94
  if defaultValueByObjectDataEntryId ~= nil then
@@ -81,22 +99,16 @@ function ObjectField.prototype.getValue(self, entry)
81
99
  end
82
100
  return self.defaultValue
83
101
  end
84
- local defaultValueByObjectDataEntryId = defaultValueByObjectDataEntryIdByObjectFieldId[self.id]
85
- if defaultValueByObjectDataEntryId ~= nil then
86
- local defaultValue = defaultValueByObjectDataEntryId[self:getObjectDataEntryId(entry)]
87
- if defaultValue ~= nil then
88
- local ____self_valueByInstance_entry_0 = self.valueByInstance[entry]
89
- if ____self_valueByInstance_entry_0 == nil then
90
- ____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
91
108
  end
92
- return ____self_valueByInstance_entry_0
93
109
  end
94
110
  end
95
- local ____temp_1 = self:getNativeFieldValue(entry)
96
- if ____temp_1 == nil then
97
- ____temp_1 = self.defaultValue
98
- end
99
- return ____temp_1
111
+ return self:getActualValue(entry)
100
112
  end
101
113
  function ObjectField.prototype.setValue(self, entry, value)
102
114
  if __TS__InstanceOf(entry, ObjectDataEntry) then
@@ -111,35 +123,53 @@ function ObjectField.prototype.setValue(self, entry, value)
111
123
  defaultValueByObjectDataEntryId[entry.id] = value
112
124
  return true
113
125
  end
114
- local defaultValueByObjectDataEntryId = defaultValueByObjectDataEntryIdByObjectFieldId[self.id]
115
- if defaultValueByObjectDataEntryId ~= nil then
116
- local defaultValue = defaultValueByObjectDataEntryId[self:getObjectDataEntryId(entry)]
117
- if defaultValue ~= nil then
118
- local ____self_valueByInstance_entry_2 = self.valueByInstance[entry]
119
- if ____self_valueByInstance_entry_2 == nil then
120
- ____self_valueByInstance_entry_2 = defaultValue
121
- end
122
- local ____self_valueByInstance_entry_2_3 = ____self_valueByInstance_entry_2
123
- if ____self_valueByInstance_entry_2_3 == nil then
124
- ____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
125
134
  end
126
- local previousValue = ____self_valueByInstance_entry_2_3
127
- if value ~= previousValue then
128
- self.valueByInstance[entry] = value
129
- self:invokeValueChangeEvent(entry, self, previousValue, value)
130
- end
131
- return true
135
+ originalValueByInstance[entry] = value
136
+ value = self:calculateActualValue(entry)
132
137
  end
133
138
  end
134
- local previousValue = self:getNativeFieldValue(entry)
135
- if value ~= previousValue then
136
- if self:setNativeFieldValue(entry, value) then
137
- self:invokeValueChangeEvent(entry, self, previousValue, value)
138
- else
139
- return false
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
140
152
  end
153
+ originalValueByInstance[instance] = self:getActualValue(instance)
154
+ self:setActualValue(
155
+ instance,
156
+ self:calculateActualValue(instance)
157
+ )
141
158
  end
142
- return true
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
170
+ end
171
+ end
172
+ return false
143
173
  end
144
174
  function ObjectField.prototype.removeValue(self, entry)
145
175
  if not warpack.compiletime then
@@ -155,6 +185,83 @@ function ObjectField.prototype.removeValue(self, entry)
155
185
  end
156
186
  return false
157
187
  end
188
+ function ObjectField.prototype.trySetValue(self, entry, value)
189
+ if __TS__TypeOf(value) ~= __TS__TypeOf(self.defaultValue) then
190
+ return false
191
+ end
192
+ return self:setValue(entry, value)
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
158
265
  function ObjectField.prototype.invokeValueChangeEvent(self, ...)
159
266
  self:invokeValueChangeEventRecursive(
160
267
  getClass(self),
@@ -208,37 +315,37 @@ function ObjectArrayField.prototype.getValue(self, entry, index)
208
315
  if defaultValueByObjectDataEntryId ~= nil then
209
316
  local value = defaultValueByObjectDataEntryId[entry.id]
210
317
  if value ~= nil then
211
- local ____temp_5
318
+ local ____temp_10
212
319
  if index == nil then
213
- ____temp_5 = value
320
+ ____temp_10 = value
214
321
  else
215
- local ____value_index_4 = value[index + 1]
216
- if ____value_index_4 == nil then
217
- ____value_index_4 = self.defaultValue
322
+ local ____value_index_9 = value[index + 1]
323
+ if ____value_index_9 == nil then
324
+ ____value_index_9 = self.defaultValue
218
325
  end
219
- ____temp_5 = ____value_index_4
326
+ ____temp_10 = ____value_index_9
220
327
  end
221
- return ____temp_5
328
+ return ____temp_10
222
329
  end
223
330
  end
224
331
  return index == nil and ({}) or self.defaultValue
225
332
  end
226
333
  local defaultValueByObjectDataEntryId = defaultValueByObjectDataEntryIdByObjectFieldId[self.id]
227
- if defaultValueByObjectDataEntryId ~= nil then
228
- local defaultValue = defaultValueByObjectDataEntryId[self:getObjectDataEntryId(entry)]
229
- if defaultValue ~= nil then
230
- local value = self.valueByInstance[entry] or defaultValue
231
- local ____temp_7
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
232
339
  if index == nil then
233
- ____temp_7 = value
340
+ ____temp_12 = value
234
341
  else
235
- local ____value_index_6 = value[index + 1]
236
- if ____value_index_6 == nil then
237
- ____value_index_6 = self.defaultValue
342
+ local ____value_index_11 = value[index + 1]
343
+ if ____value_index_11 == nil then
344
+ ____value_index_11 = self.defaultValue
238
345
  end
239
- ____temp_7 = ____value_index_6
346
+ ____temp_12 = ____value_index_11
240
347
  end
241
- return ____temp_7
348
+ return ____temp_12
242
349
  end
243
350
  end
244
351
  if index ~= nil then
@@ -283,36 +390,36 @@ function ObjectLevelField.prototype.getValue(self, entry, level)
283
390
  if defaultValueByObjectDataEntryId ~= nil then
284
391
  local valueByLevel = defaultValueByObjectDataEntryId[entry.id]
285
392
  if valueByLevel ~= nil then
286
- local ____valueByLevel_index_8 = valueByLevel[level + 1]
287
- if ____valueByLevel_index_8 == nil then
288
- ____valueByLevel_index_8 = self.defaultValue
393
+ local ____valueByLevel_index_13 = valueByLevel[level + 1]
394
+ if ____valueByLevel_index_13 == nil then
395
+ ____valueByLevel_index_13 = self.defaultValue
289
396
  end
290
- return ____valueByLevel_index_8
397
+ return ____valueByLevel_index_13
291
398
  end
292
399
  end
293
400
  return self.defaultValue
294
401
  end
295
402
  local defaultValueByObjectDataEntryId = defaultValueByObjectDataEntryIdByObjectFieldId[self.id]
296
- if defaultValueByObjectDataEntryId ~= nil then
297
- local defaultValueByLevel = defaultValueByObjectDataEntryId[self:getObjectDataEntryId(entry)]
298
- if defaultValueByLevel ~= nil then
299
- local ____opt_9 = self.valueByInstance[entry]
300
- local ____temp_11 = ____opt_9 and ____opt_9[level + 1]
301
- if ____temp_11 == nil then
302
- ____temp_11 = defaultValueByLevel[level + 1]
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]
303
410
  end
304
- local ____temp_11_12 = ____temp_11
305
- if ____temp_11_12 == nil then
306
- ____temp_11_12 = self.defaultValue
411
+ local ____temp_16_17 = ____temp_16
412
+ if ____temp_16_17 == nil then
413
+ ____temp_16_17 = self.defaultValue
307
414
  end
308
- return ____temp_11_12
415
+ return ____temp_16_17
309
416
  end
310
417
  end
311
- local ____temp_13 = self:getNativeFieldValue(entry, level)
312
- if ____temp_13 == nil then
313
- ____temp_13 = self.defaultValue
418
+ local ____temp_18 = self:getNativeFieldValue(entry, level)
419
+ if ____temp_18 == nil then
420
+ ____temp_18 = self.defaultValue
314
421
  end
315
- return ____temp_13
422
+ return ____temp_18
316
423
  end
317
424
  function ObjectLevelField.prototype.setValue(self, entry, levelOrValue, value)
318
425
  if value == nil then
@@ -353,23 +460,23 @@ function ObjectLevelField.prototype.setValue(self, entry, levelOrValue, value)
353
460
  return true
354
461
  end
355
462
  local defaultValueByObjectDataEntryId = defaultValueByObjectDataEntryIdByObjectFieldId[self.id]
356
- if defaultValueByObjectDataEntryId ~= nil then
357
- local defaultValueByLevel = defaultValueByObjectDataEntryId[self:getObjectDataEntryId(entry)]
358
- 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
359
466
  local valueByLevel = self.valueByInstance[entry]
360
467
  if valueByLevel == nil then
361
468
  valueByLevel = {}
362
469
  self.valueByInstance[entry] = valueByLevel
363
470
  end
364
- local ____valueByLevel_index_14 = valueByLevel[level + 1]
365
- if ____valueByLevel_index_14 == nil then
366
- ____valueByLevel_index_14 = defaultValueByLevel[level + 1]
471
+ local ____valueByLevel_index_19 = valueByLevel[level + 1]
472
+ if ____valueByLevel_index_19 == nil then
473
+ ____valueByLevel_index_19 = (defaultValueByLevel or emptyArray())[level + 1]
367
474
  end
368
- local ____valueByLevel_index_14_15 = ____valueByLevel_index_14
369
- if ____valueByLevel_index_14_15 == nil then
370
- ____valueByLevel_index_14_15 = self.defaultValue
475
+ local ____valueByLevel_index_19_20 = ____valueByLevel_index_19
476
+ if ____valueByLevel_index_19_20 == nil then
477
+ ____valueByLevel_index_19_20 = self.defaultValue
371
478
  end
372
- local previousValue = ____valueByLevel_index_14_15
479
+ local previousValue = ____valueByLevel_index_19_20
373
480
  if value ~= previousValue then
374
481
  valueByLevel[level + 1] = value
375
482
  self:invokeValueChangeEvent(
@@ -383,22 +490,39 @@ function ObjectLevelField.prototype.setValue(self, entry, levelOrValue, value)
383
490
  return true
384
491
  end
385
492
  end
493
+ if not self:hasNativeFieldValue(entry) then
494
+ return false
495
+ end
386
496
  local previousValue = self:getNativeFieldValue(entry, level)
387
497
  if value ~= previousValue then
388
- if self:setNativeFieldValue(entry, level, value) then
389
- self:invokeValueChangeEvent(
390
- entry,
391
- self,
392
- level,
393
- previousValue,
394
- value
395
- )
396
- else
498
+ if not self:setNativeFieldValue(entry, level, value) then
397
499
  return false
398
500
  end
501
+ self:invokeValueChangeEvent(
502
+ entry,
503
+ self,
504
+ level,
505
+ previousValue,
506
+ value
507
+ )
399
508
  end
400
509
  return true
401
510
  end
511
+ function ObjectLevelField.prototype.trySetValue(self, entry, levelOrValue, value)
512
+ if value ~= nil then
513
+ if __TS__TypeOf(value) ~= __TS__TypeOf(self.defaultValue) then
514
+ return false
515
+ end
516
+ if type(levelOrValue) ~= "number" then
517
+ return false
518
+ end
519
+ return self:setValue(entry, levelOrValue, value)
520
+ end
521
+ if __TS__TypeOf(levelOrValue) ~= __TS__TypeOf(self.defaultValue) then
522
+ return false
523
+ end
524
+ return self:setValue(entry, levelOrValue)
525
+ end
402
526
  function ObjectLevelField.prototype.invokeValueChangeEvent(self, ...)
403
527
  self:invokeValueChangeEventRecursive(
404
528
  getClass(self),
@@ -8,3 +8,4 @@ export declare const randomFloat: {
8
8
  (upperBound?: number): number;
9
9
  (lowerBound: number, upperBound: number): number;
10
10
  };
11
+ export declare const randomXY: (centerX: number, centerY: number, range: number) => LuaMultiReturn<[x: number, y: number]>;
package/engine/random.lua CHANGED
@@ -1,9 +1,18 @@
1
1
  local ____exports = {}
2
2
  local ____math = require("math")
3
3
  local MAXIMUM_INTEGER = ____math.MAXIMUM_INTEGER
4
+ local PI = ____math.PI
4
5
  local getRandomInt = GetRandomInt
5
6
  local getRandomReal = GetRandomReal
7
+ local cos = math.cos
8
+ local sin = math.sin
9
+ local sqrt = math.sqrt
6
10
  ____exports.randomAngle = function() return getRandomReal(0, 360) end
7
11
  ____exports.randomInteger = function(m, n) return n ~= nil and getRandomInt(m, n) or getRandomInt(0, m or MAXIMUM_INTEGER) end
8
12
  ____exports.randomFloat = function(m, n) return n ~= nil and getRandomReal(m, n) or getRandomReal(0, m or MAXIMUM_INTEGER) end
13
+ ____exports.randomXY = function(centerX, centerY, range)
14
+ local r = range * sqrt(getRandomReal(0, 1))
15
+ local t = getRandomReal(0, 1) * 2 * PI
16
+ return centerX + r * cos(t), centerY + r * sin(t)
17
+ end
9
18
  return ____exports
@@ -0,0 +1,3 @@
1
+ /** @noSelfInFile */
2
+ import { StandardBuffTypeId } from "../../object-data/entry/buff-type";
3
+ export declare const CHEMICAL_RAGE_BUFF_TYPE_ID: StandardBuffTypeId;
@@ -0,0 +1,3 @@
1
+ local ____exports = {}
2
+ ____exports.CHEMICAL_RAGE_BUFF_TYPE_ID = fourCC("BNcr")
3
+ return ____exports
@@ -0,0 +1,10 @@
1
+ /** @noSelfInFile */
2
+ import { StandardSoundPresetId } from "../../object-data/entry/sound-preset";
3
+ export declare const ABOMINATION_PISSED_SOUND_PRESET_ID: StandardSoundPresetId;
4
+ export declare const ABOMINATION_READY_SOUND_PRESET_ID: StandardSoundPresetId;
5
+ export declare const ABOMINATION_WAR_CRY_SOUND_PRESET_ID: StandardSoundPresetId;
6
+ export declare const AXE_MEDIUM_CHOP_WOOD_SOUND_PRESET_ID: StandardSoundPresetId;
7
+ export declare const IMPALE_SOUND_PRESET_ID: StandardSoundPresetId;
8
+ export declare const IMPALE_HIT_SOUND_PRESET_ID: StandardSoundPresetId;
9
+ export declare const IMPALE_LAND_SOUND_PRESET_ID: StandardSoundPresetId;
10
+ export declare const IMPALE_CAST_SOUND_PRESET_ID: StandardSoundPresetId;
@@ -0,0 +1,10 @@
1
+ local ____exports = {}
2
+ ____exports.ABOMINATION_PISSED_SOUND_PRESET_ID = "AbominationPissed"
3
+ ____exports.ABOMINATION_READY_SOUND_PRESET_ID = "AbominationReady"
4
+ ____exports.ABOMINATION_WAR_CRY_SOUND_PRESET_ID = "AbominationWarcry"
5
+ ____exports.AXE_MEDIUM_CHOP_WOOD_SOUND_PRESET_ID = "AxeMediumChopWood"
6
+ ____exports.IMPALE_SOUND_PRESET_ID = "Impale"
7
+ ____exports.IMPALE_HIT_SOUND_PRESET_ID = "ImpaleHit"
8
+ ____exports.IMPALE_LAND_SOUND_PRESET_ID = "ImpaleLand"
9
+ ____exports.IMPALE_CAST_SOUND_PRESET_ID = "ImpaleCast"
10
+ return ____exports
@@ -9,11 +9,33 @@ export declare const RIFLEMAN_UNIT_TYPE_ID: StandardUnitTypeId;
9
9
  export declare const SIEGE_ENGINE_UNIT_TYPE_ID: StandardUnitTypeId;
10
10
  export declare const SORCERESS_UNIT_TYPE_ID: StandardUnitTypeId;
11
11
  export declare const SPELLBREAKER_UNIT_TYPE_ID: StandardUnitTypeId;
12
- export declare const PALADIN_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
13
12
  export declare const ARCHMAGE_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
13
+ export declare const BLOOD_MAGE_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
14
+ export declare const MOUNTAIN_KING_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
15
+ export declare const PALADIN_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
16
+ export declare const ARCHER_HIGH_ELF_UNIT_TYPE_ID: StandardUnitTypeId;
14
17
  export declare const CAPTAIN_UNIT_TYPE_ID: StandardUnitTypeId;
18
+ export declare const SWORDSMAN_UNIT_TYPE_ID: StandardUnitTypeId;
19
+ export declare const ADMIRAL_PROUDMOORE_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
20
+ export declare const ANASTERIAN_SUNSTRIDER_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
21
+ export declare const ANTONIDAS_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
22
+ export declare const ANTONIDAS_GHOST_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
15
23
  export declare const ARTHAS_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
16
24
  export declare const ARTHAS_WITH_FROSTMOURNE_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
25
+ export declare const DAGREN_THE_ORCSLAYER_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
26
+ export declare const HALAHK_THE_LIFEBRINGER_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
27
+ export declare const JAINA_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
28
+ export declare const JENNALLA_DEEMSPRING_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
29
+ export declare const KAEL_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
30
+ export declare const KELEN_THE_SEEKER_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
31
+ export declare const LORD_GARITHOS_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
32
+ export declare const LORD_NICHOLAS_BUZAN_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
33
+ export declare const MAGROTH_THE_DEFENDER_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
34
+ export declare const MURADIN_BRONZEBEARD_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
35
+ export declare const SIR_GREGORY_EDMUNSON_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
36
+ export declare const SYLVANAS_WINDRUNNER_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
37
+ export declare const THALORIEN_DAWNSEEKER_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
38
+ export declare const UTHER_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
17
39
  export declare const BATRIDER_UNIT_TYPE_ID: StandardUnitTypeId;
18
40
  export declare const DEMOLISHER_UNIT_TYPE_ID: StandardUnitTypeId;
19
41
  export declare const GRUNT_UNIT_TYPE_ID: StandardUnitTypeId;
@@ -25,11 +47,29 @@ export declare const SPIRIT_WALKER_UNIT_TYPE_ID: StandardUnitTypeId;
25
47
  export declare const TAUREN_UNIT_TYPE_ID: StandardUnitTypeId;
26
48
  export declare const WIND_RIDER_UNIT_TYPE_ID: StandardUnitTypeId;
27
49
  export declare const WITCH_DOCTOR_UNIT_TYPE_ID: StandardUnitTypeId;
50
+ export declare const ARCHER_UNIT_TYPE_ID: StandardUnitTypeId;
51
+ export declare const CHIMAERA_UNIT_TYPE_ID: StandardUnitTypeId;
52
+ export declare const DRUID_OF_THE_CLAW_UNIT_TYPE_ID: StandardUnitTypeId;
53
+ export declare const DRUID_OF_THE_TALON_UNIT_TYPE_ID: StandardUnitTypeId;
54
+ export declare const DRYAD_UNIT_TYPE_ID: StandardUnitTypeId;
55
+ export declare const FAERIE_DRAGON_UNIT_TYPE_ID: StandardUnitTypeId;
56
+ export declare const GLAIVE_THROWER_UNIT_TYPE_ID: StandardUnitTypeId;
57
+ export declare const HIPPOGRYPH_UNIT_TYPE_ID: StandardUnitTypeId;
58
+ export declare const HIPPOGRYPH_RIDER_UNIT_TYPE_ID: StandardUnitTypeId;
59
+ export declare const HUNTRESS_UNIT_TYPE_ID: StandardUnitTypeId;
60
+ export declare const MOUNTAIN_GIANT_THROWER_UNIT_TYPE_ID: StandardUnitTypeId;
61
+ export declare const WISP_UNIT_TYPE_ID: StandardUnitTypeId;
28
62
  export declare const DEMON_HUNTER_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
63
+ export declare const KEEPER_OF_THE_GROVE_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
64
+ export declare const MOON_PRIESTESS_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
65
+ export declare const WARDEN_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
29
66
  export declare const DEMON_HUNTER_DEMON_FORM_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
30
67
  export declare const ABOMINATION_UNIT_TYPE_ID: StandardUnitTypeId;
31
68
  export declare const GHOUL_UNIT_TYPE_ID: StandardUnitTypeId;
32
69
  export declare const DEATH_KNIGHT_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
70
+ export declare const ZOMBIE_UNIT_TYPE_ID: StandardUnitTypeId;
71
+ export declare const ZOMBIE_FEMALE_UNIT_TYPE_ID: StandardUnitTypeId;
72
+ export declare const ARTHAS_EVIL_HERO_UNIT_TYPE_ID: StandardHeroUnitTypeId;
33
73
  export declare const DIRE_MAMMOTH_UNIT_TYPE_ID: StandardUnitTypeId;
34
74
  export declare const ELDER_JUNGLE_STALKER_UNIT_TYPE_ID: StandardUnitTypeId;
35
75
  export declare const ENRAGED_ELEMENTAL_UNIT_TYPE_ID: StandardUnitTypeId;
@@ -58,6 +98,7 @@ export declare const WENDIGO_UNIT_TYPE_ID: StandardUnitTypeId;
58
98
  export declare const WENDIGO_SHAMAN_UNIT_TYPE_ID: StandardUnitTypeId;
59
99
  export declare const WILDKIN_UNIT_TYPE_ID: StandardUnitTypeId;
60
100
  export declare const WRAITH_UNIT_TYPE_ID: StandardUnitTypeId;
101
+ export declare const GOBLIN_LAND_MINE_UNIT_TYPE_ID: StandardUnitTypeId;
61
102
  export declare const CIRCLE_OF_POWER_UNIT_TYPE_ID: StandardUnitTypeId;
62
103
  export declare const CIRCLE_OF_POWER_MEDIUM_UNIT_TYPE_ID: StandardUnitTypeId;
63
104
  export declare const CIRCLE_OF_POWER_LARGE_UNIT_TYPE_ID: StandardUnitTypeId;
@@ -8,11 +8,33 @@ ____exports.RIFLEMAN_UNIT_TYPE_ID = fourCC("hrif")
8
8
  ____exports.SIEGE_ENGINE_UNIT_TYPE_ID = fourCC("hmtt")
9
9
  ____exports.SORCERESS_UNIT_TYPE_ID = fourCC("hsor")
10
10
  ____exports.SPELLBREAKER_UNIT_TYPE_ID = fourCC("hspt")
11
- ____exports.PALADIN_HERO_UNIT_TYPE_ID = fourCC("Hpal")
12
11
  ____exports.ARCHMAGE_HERO_UNIT_TYPE_ID = fourCC("Hamg")
12
+ ____exports.BLOOD_MAGE_HERO_UNIT_TYPE_ID = fourCC("Hblm")
13
+ ____exports.MOUNTAIN_KING_HERO_UNIT_TYPE_ID = fourCC("Hmkg")
14
+ ____exports.PALADIN_HERO_UNIT_TYPE_ID = fourCC("Hpal")
15
+ ____exports.ARCHER_HIGH_ELF_UNIT_TYPE_ID = fourCC("nhea")
13
16
  ____exports.CAPTAIN_UNIT_TYPE_ID = fourCC("hcth")
17
+ ____exports.SWORDSMAN_UNIT_TYPE_ID = fourCC("hhes")
18
+ ____exports.ADMIRAL_PROUDMOORE_HERO_UNIT_TYPE_ID = fourCC("Hapm")
19
+ ____exports.ANASTERIAN_SUNSTRIDER_HERO_UNIT_TYPE_ID = fourCC("Hssa")
20
+ ____exports.ANTONIDAS_HERO_UNIT_TYPE_ID = fourCC("Hant")
21
+ ____exports.ANTONIDAS_GHOST_HERO_UNIT_TYPE_ID = fourCC("Hgam")
14
22
  ____exports.ARTHAS_HERO_UNIT_TYPE_ID = fourCC("Hart")
15
23
  ____exports.ARTHAS_WITH_FROSTMOURNE_HERO_UNIT_TYPE_ID = fourCC("Harf")
24
+ ____exports.DAGREN_THE_ORCSLAYER_HERO_UNIT_TYPE_ID = fourCC("Hdgo")
25
+ ____exports.HALAHK_THE_LIFEBRINGER_HERO_UNIT_TYPE_ID = fourCC("Hhkl")
26
+ ____exports.JAINA_HERO_UNIT_TYPE_ID = fourCC("Hjai")
27
+ ____exports.JENNALLA_DEEMSPRING_HERO_UNIT_TYPE_ID = fourCC("Hjnd")
28
+ ____exports.KAEL_HERO_UNIT_TYPE_ID = fourCC("Hkal")
29
+ ____exports.KELEN_THE_SEEKER_HERO_UNIT_TYPE_ID = fourCC("Haah")
30
+ ____exports.LORD_GARITHOS_HERO_UNIT_TYPE_ID = fourCC("Hlgr")
31
+ ____exports.LORD_NICHOLAS_BUZAN_HERO_UNIT_TYPE_ID = fourCC("Hpb1")
32
+ ____exports.MAGROTH_THE_DEFENDER_HERO_UNIT_TYPE_ID = fourCC("Hmgd")
33
+ ____exports.MURADIN_BRONZEBEARD_HERO_UNIT_TYPE_ID = fourCC("Hmbr")
34
+ ____exports.SIR_GREGORY_EDMUNSON_HERO_UNIT_TYPE_ID = fourCC("Hpb2")
35
+ ____exports.SYLVANAS_WINDRUNNER_HERO_UNIT_TYPE_ID = fourCC("Hvwd")
36
+ ____exports.THALORIEN_DAWNSEEKER_HERO_UNIT_TYPE_ID = fourCC("Hddt")
37
+ ____exports.UTHER_HERO_UNIT_TYPE_ID = fourCC("Huth")
16
38
  ____exports.BATRIDER_UNIT_TYPE_ID = fourCC("otbr")
17
39
  ____exports.DEMOLISHER_UNIT_TYPE_ID = fourCC("ocat")
18
40
  ____exports.GRUNT_UNIT_TYPE_ID = fourCC("ogru")
@@ -24,11 +46,29 @@ ____exports.SPIRIT_WALKER_UNIT_TYPE_ID = fourCC("ospw")
24
46
  ____exports.TAUREN_UNIT_TYPE_ID = fourCC("otau")
25
47
  ____exports.WIND_RIDER_UNIT_TYPE_ID = fourCC("owyv")
26
48
  ____exports.WITCH_DOCTOR_UNIT_TYPE_ID = fourCC("odoc")
49
+ ____exports.ARCHER_UNIT_TYPE_ID = fourCC("earc")
50
+ ____exports.CHIMAERA_UNIT_TYPE_ID = fourCC("echm")
51
+ ____exports.DRUID_OF_THE_CLAW_UNIT_TYPE_ID = fourCC("edoc")
52
+ ____exports.DRUID_OF_THE_TALON_UNIT_TYPE_ID = fourCC("edot")
53
+ ____exports.DRYAD_UNIT_TYPE_ID = fourCC("edry")
54
+ ____exports.FAERIE_DRAGON_UNIT_TYPE_ID = fourCC("efdr")
55
+ ____exports.GLAIVE_THROWER_UNIT_TYPE_ID = fourCC("ebal")
56
+ ____exports.HIPPOGRYPH_UNIT_TYPE_ID = fourCC("ehip")
57
+ ____exports.HIPPOGRYPH_RIDER_UNIT_TYPE_ID = fourCC("ehpr")
58
+ ____exports.HUNTRESS_UNIT_TYPE_ID = fourCC("esen")
59
+ ____exports.MOUNTAIN_GIANT_THROWER_UNIT_TYPE_ID = fourCC("emtg")
60
+ ____exports.WISP_UNIT_TYPE_ID = fourCC("ewsp")
27
61
  ____exports.DEMON_HUNTER_HERO_UNIT_TYPE_ID = fourCC("Edem")
62
+ ____exports.KEEPER_OF_THE_GROVE_HERO_UNIT_TYPE_ID = fourCC("Ekee")
63
+ ____exports.MOON_PRIESTESS_HERO_UNIT_TYPE_ID = fourCC("Emoo")
64
+ ____exports.WARDEN_HERO_UNIT_TYPE_ID = fourCC("Ewar")
28
65
  ____exports.DEMON_HUNTER_DEMON_FORM_HERO_UNIT_TYPE_ID = fourCC("Edmm")
29
66
  ____exports.ABOMINATION_UNIT_TYPE_ID = fourCC("uabo")
30
67
  ____exports.GHOUL_UNIT_TYPE_ID = fourCC("ugho")
31
68
  ____exports.DEATH_KNIGHT_HERO_UNIT_TYPE_ID = fourCC("Udea")
69
+ ____exports.ZOMBIE_UNIT_TYPE_ID = fourCC("nzom")
70
+ ____exports.ZOMBIE_FEMALE_UNIT_TYPE_ID = fourCC("nzof")
71
+ ____exports.ARTHAS_EVIL_HERO_UNIT_TYPE_ID = fourCC("Uear")
32
72
  ____exports.DIRE_MAMMOTH_UNIT_TYPE_ID = fourCC("nmdr")
33
73
  ____exports.ELDER_JUNGLE_STALKER_UNIT_TYPE_ID = fourCC("njga")
34
74
  ____exports.ENRAGED_ELEMENTAL_UNIT_TYPE_ID = fourCC("nele")
@@ -57,6 +97,7 @@ ____exports.WENDIGO_UNIT_TYPE_ID = fourCC("nwen")
57
97
  ____exports.WENDIGO_SHAMAN_UNIT_TYPE_ID = fourCC("nwns")
58
98
  ____exports.WILDKIN_UNIT_TYPE_ID = fourCC("nowb")
59
99
  ____exports.WRAITH_UNIT_TYPE_ID = fourCC("ngh2")
100
+ ____exports.GOBLIN_LAND_MINE_UNIT_TYPE_ID = fourCC("nglm")
60
101
  ____exports.CIRCLE_OF_POWER_UNIT_TYPE_ID = fourCC("ncop")
61
102
  ____exports.CIRCLE_OF_POWER_MEDIUM_UNIT_TYPE_ID = fourCC("ncp2")
62
103
  ____exports.CIRCLE_OF_POWER_LARGE_UNIT_TYPE_ID = fourCC("ncp3")