warscript 0.0.1-dev.9d56c5c → 0.0.1-dev.9e6f20e

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 (316) hide show
  1. package/attributes.d.ts +6 -1
  2. package/attributes.lua +17 -1
  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 +9 -1
  10. package/core/types/frame.lua +193 -23
  11. package/core/types/group.d.ts +0 -1
  12. package/core/types/handle.lua +6 -9
  13. package/core/types/image.d.ts +0 -1
  14. package/core/types/item.d.ts +1 -0
  15. package/core/types/item.lua +1 -0
  16. package/core/types/missile.d.ts +2 -2
  17. package/core/types/missile.lua +8 -2
  18. package/core/types/player.d.ts +17 -1
  19. package/core/types/player.lua +70 -24
  20. package/core/types/playerCamera.d.ts +2 -0
  21. package/core/types/playerCamera.lua +123 -5
  22. package/core/types/sound.d.ts +17 -24
  23. package/core/types/sound.lua +100 -25
  24. package/core/types/tileCell.d.ts +11 -1
  25. package/core/types/tileCell.lua +97 -0
  26. package/core/types/timer.d.ts +9 -8
  27. package/core/types/timer.lua +45 -23
  28. package/core/types/unit.lua +8 -0
  29. package/core/util.d.ts +1 -1
  30. package/core/util.lua +18 -1
  31. package/decl/index.d.ts +1 -0
  32. package/decl/native.d.ts +846 -790
  33. package/destroyable.d.ts +1 -0
  34. package/destroyable.lua +9 -0
  35. package/engine/ability.d.ts +1 -1
  36. package/engine/behavior.d.ts +24 -11
  37. package/engine/behavior.lua +233 -73
  38. package/engine/behaviour/ability/always-enabled.d.ts +7 -0
  39. package/engine/behaviour/ability/always-enabled.lua +31 -0
  40. package/engine/behaviour/ability/apply-buff.d.ts +8 -5
  41. package/engine/behaviour/ability/apply-buff.lua +36 -4
  42. package/engine/behaviour/ability/apply-unit-behavior.d.ts +6 -1
  43. package/engine/behaviour/ability/apply-unit-behavior.lua +1 -0
  44. package/engine/behaviour/ability/damage.d.ts +42 -11
  45. package/engine/behaviour/ability/damage.lua +89 -37
  46. package/engine/behaviour/ability/emulate-impact.d.ts +6 -0
  47. package/engine/behaviour/ability/emulate-impact.lua +44 -0
  48. package/engine/behaviour/ability/heal.d.ts +33 -6
  49. package/engine/behaviour/ability/heal.lua +89 -10
  50. package/engine/behaviour/ability/instant-impact.d.ts +2 -2
  51. package/engine/behaviour/ability/instant-impact.lua +4 -19
  52. package/engine/behaviour/ability/on-command-impact.d.ts +8 -0
  53. package/engine/behaviour/ability/on-command-impact.lua +25 -0
  54. package/engine/behaviour/ability/remove-buffs.d.ts +25 -0
  55. package/engine/behaviour/ability/remove-buffs.lua +49 -0
  56. package/engine/behaviour/ability/restore-mana.d.ts +15 -0
  57. package/engine/behaviour/ability/restore-mana.lua +29 -0
  58. package/engine/behaviour/ability.d.ts +35 -7
  59. package/engine/behaviour/ability.lua +183 -27
  60. package/engine/behaviour/unit/stun-immunity.d.ts +12 -7
  61. package/engine/behaviour/unit/stun-immunity.lua +57 -31
  62. package/engine/behaviour/unit.d.ts +48 -4
  63. package/engine/behaviour/unit.lua +292 -2
  64. package/engine/buff.d.ts +160 -53
  65. package/engine/buff.lua +711 -269
  66. package/engine/game-map.d.ts +7 -0
  67. package/engine/game-map.lua +32 -0
  68. package/engine/internal/ability.d.ts +23 -14
  69. package/engine/internal/ability.lua +129 -85
  70. package/engine/internal/item/ability.lua +162 -4
  71. package/engine/internal/item/fields.d.ts +12 -0
  72. package/engine/internal/item/fields.lua +33 -0
  73. package/engine/internal/item+owner.lua +12 -6
  74. package/engine/internal/item.d.ts +18 -18
  75. package/engine/internal/item.lua +208 -94
  76. package/engine/internal/mechanics/ability-duration.lua +1 -1
  77. package/engine/internal/mechanics/cast-ability.lua +6 -3
  78. package/engine/internal/misc/ability-disable-counter.lua +13 -0
  79. package/engine/internal/misc/damage-metadata-by-target.d.ts +2 -0
  80. package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
  81. package/engine/internal/misc/frame-coordinates.d.ts +2 -0
  82. package/engine/internal/misc/frame-coordinates.lua +21 -0
  83. package/engine/internal/misc/get-terrain-z.d.ts +2 -0
  84. package/engine/internal/misc/get-terrain-z.lua +11 -0
  85. package/engine/internal/misc/player-local-handle.d.ts +2 -0
  86. package/engine/internal/misc/player-local-handle.lua +5 -0
  87. package/engine/internal/object-data/armor-bonus.d.ts +2 -0
  88. package/engine/internal/object-data/attribute-bonus.lua +2 -2
  89. package/engine/internal/object-data/auto-attack-speed-increase.d.ts +1 -1
  90. package/engine/internal/object-data/auto-attack-speed-increase.lua +2 -0
  91. package/engine/internal/object-data/evasion-probability.d.ts +2 -0
  92. package/engine/internal/object-data/evasion-probability.lua +16 -0
  93. package/engine/internal/object-data/health-bonus.d.ts +2 -0
  94. package/engine/internal/object-data/health-bonus.lua +16 -0
  95. package/engine/internal/object-data/mana-bonus.d.ts +2 -0
  96. package/engine/internal/object-data/mana-bonus.lua +16 -0
  97. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.d.ts +2 -0
  98. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
  99. package/engine/internal/unit/ability.d.ts +45 -1
  100. package/engine/internal/unit/ability.lua +142 -19
  101. package/engine/internal/unit/add-item-to-slot-init.d.ts +2 -0
  102. package/engine/internal/unit/add-item-to-slot-init.lua +23 -0
  103. package/engine/internal/unit/add-item-to-slot.d.ts +2 -0
  104. package/engine/internal/unit/add-item-to-slot.lua +52 -0
  105. package/engine/internal/unit/allowed-targets.d.ts +1 -1
  106. package/engine/internal/unit/allowed-targets.lua +9 -1
  107. package/engine/internal/unit/attributes.d.ts +17 -0
  108. package/engine/internal/unit/attributes.lua +46 -0
  109. package/engine/internal/unit/bonus.d.ts +17 -8
  110. package/engine/internal/unit/bonus.lua +56 -4
  111. package/engine/internal/unit/buff.d.ts +2 -2
  112. package/engine/internal/unit/buff.lua +32 -17
  113. package/engine/internal/unit/fly-height.d.ts +7 -0
  114. package/engine/internal/unit/fly-height.lua +20 -0
  115. package/engine/internal/unit/ignore-events-items.d.ts +2 -0
  116. package/engine/internal/unit/ignore-events-items.lua +5 -0
  117. package/engine/internal/unit/interrupts.d.ts +12 -0
  118. package/engine/internal/unit/interrupts.lua +28 -0
  119. package/engine/internal/unit/item.d.ts +24 -0
  120. package/engine/internal/unit/item.lua +78 -0
  121. package/engine/internal/unit/main-selected.d.ts +13 -0
  122. package/engine/internal/unit/main-selected.lua +36 -0
  123. package/engine/internal/unit/order.d.ts +20 -0
  124. package/engine/internal/unit/order.lua +136 -0
  125. package/engine/internal/unit/pseudo-passive-abilities.d.ts +2 -0
  126. package/engine/internal/unit/pseudo-passive-abilities.lua +11 -0
  127. package/engine/internal/unit/range-event.d.ts +12 -0
  128. package/engine/internal/unit/range-event.lua +90 -0
  129. package/engine/internal/unit/scale.d.ts +7 -0
  130. package/engine/internal/unit/scale.lua +20 -0
  131. package/engine/internal/unit+ability.lua +12 -3
  132. package/engine/internal/unit+bonus.lua +3 -3
  133. package/engine/internal/unit+damage.d.ts +2 -11
  134. package/engine/internal/unit+damage.lua +10 -14
  135. package/engine/internal/unit+spellSteal.lua +1 -2
  136. package/engine/internal/unit+transport.lua +4 -10
  137. package/engine/internal/unit-missile-launch.lua +70 -13
  138. package/engine/internal/unit.d.ts +65 -32
  139. package/engine/internal/unit.lua +503 -290
  140. package/engine/internal/utility.lua +12 -0
  141. package/engine/lightning.d.ts +12 -5
  142. package/engine/lightning.lua +48 -14
  143. package/engine/local-client.d.ts +14 -2
  144. package/engine/local-client.lua +168 -1
  145. package/engine/object-data/auxiliary/animation-name.d.ts +1 -0
  146. package/engine/object-data/auxiliary/animation-name.lua +16 -0
  147. package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
  148. package/engine/object-data/auxiliary/armor-type.lua +46 -0
  149. package/engine/object-data/auxiliary/attachment-preset.d.ts +7 -3
  150. package/engine/object-data/auxiliary/attachment-preset.lua +4 -3
  151. package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
  152. package/engine/object-data/auxiliary/attack-type.lua +42 -0
  153. package/engine/object-data/auxiliary/combat-classification.d.ts +0 -2
  154. package/engine/object-data/auxiliary/health-regeneration-type.d.ts +8 -0
  155. package/engine/object-data/auxiliary/health-regeneration-type.lua +2 -0
  156. package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
  157. package/engine/object-data/auxiliary/movement-type.lua +22 -0
  158. package/engine/object-data/auxiliary/sound-eax.d.ts +10 -0
  159. package/engine/object-data/auxiliary/sound-eax.lua +2 -0
  160. package/engine/object-data/auxiliary/sound-preset-name.d.ts +5 -1
  161. package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +1 -1
  162. package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
  163. package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
  164. package/engine/object-data/entry/ability-type/{armor-increase.d.ts → armor-bonus.d.ts} +3 -3
  165. package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
  166. package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
  167. package/engine/object-data/entry/ability-type/berserk.lua +13 -0
  168. package/engine/object-data/entry/ability-type/blank-configurable.d.ts +3 -1
  169. package/engine/object-data/entry/ability-type/blank-configurable.lua +42 -1
  170. package/engine/object-data/entry/ability-type/blank-passive.d.ts +0 -1
  171. package/engine/object-data/entry/ability-type/carrion-swarm.d.ts +14 -0
  172. package/engine/object-data/entry/ability-type/carrion-swarm.lua +65 -0
  173. package/engine/object-data/entry/ability-type/channel.d.ts +0 -1
  174. package/engine/object-data/entry/ability-type/disease-cloud.lua +2 -2
  175. package/engine/object-data/entry/ability-type/engineering-upgrade.lua +2 -2
  176. package/engine/object-data/entry/ability-type/ensnare.d.ts +12 -0
  177. package/engine/object-data/entry/ability-type/ensnare.lua +52 -0
  178. package/engine/object-data/entry/ability-type/feral-spirit.lua +2 -2
  179. package/engine/object-data/entry/ability-type/health-bonus.d.ts +8 -0
  180. package/engine/object-data/entry/ability-type/health-bonus.lua +26 -0
  181. package/engine/object-data/entry/ability-type/mana-bonus.d.ts +8 -0
  182. package/engine/object-data/entry/ability-type/mana-bonus.lua +26 -0
  183. package/engine/object-data/entry/ability-type/mana-regeneration.d.ts +8 -0
  184. package/engine/object-data/entry/ability-type/mana-regeneration.lua +26 -0
  185. package/engine/object-data/entry/ability-type/mine.d.ts +10 -0
  186. package/engine/object-data/entry/ability-type/mine.lua +39 -0
  187. package/engine/object-data/entry/ability-type/permanent-invisibility.d.ts +8 -0
  188. package/engine/object-data/entry/ability-type/permanent-invisibility.lua +26 -0
  189. package/engine/object-data/entry/ability-type/phase-shift.d.ts +10 -0
  190. package/engine/object-data/entry/ability-type/phase-shift.lua +39 -0
  191. package/engine/object-data/entry/ability-type/phoenix-morph.lua +4 -4
  192. package/engine/object-data/entry/ability-type/raise-dead.d.ts +17 -0
  193. package/engine/object-data/entry/ability-type/raise-dead.lua +78 -0
  194. package/engine/object-data/entry/ability-type/reincarnation.d.ts +8 -0
  195. package/engine/object-data/entry/ability-type/reincarnation.lua +26 -0
  196. package/engine/object-data/entry/ability-type/shock-wave.d.ts +4 -0
  197. package/engine/object-data/entry/ability-type/shock-wave.lua +26 -0
  198. package/engine/object-data/entry/ability-type/slow-poison.d.ts +10 -0
  199. package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
  200. package/engine/object-data/entry/ability-type/summon-quilbeast.lua +2 -2
  201. package/engine/object-data/entry/ability-type/summon-water-elemental.lua +2 -2
  202. package/engine/object-data/entry/ability-type/web.d.ts +12 -0
  203. package/engine/object-data/entry/ability-type/web.lua +52 -0
  204. package/engine/object-data/entry/ability-type.d.ts +21 -18
  205. package/engine/object-data/entry/ability-type.lua +177 -40
  206. package/engine/object-data/entry/buff-type/applicable.d.ts +0 -1
  207. package/engine/object-data/entry/buff-type/applicable.lua +122 -137
  208. package/engine/object-data/entry/buff-type/blank.d.ts +0 -1
  209. package/engine/object-data/entry/buff-type.d.ts +6 -13
  210. package/engine/object-data/entry/buff-type.lua +13 -29
  211. package/engine/object-data/entry/destructible-type.d.ts +28 -3
  212. package/engine/object-data/entry/destructible-type.lua +155 -0
  213. package/engine/object-data/entry/item-type/blank.d.ts +0 -1
  214. package/engine/object-data/entry/item-type.d.ts +15 -2
  215. package/engine/object-data/entry/item-type.lua +93 -2
  216. package/engine/object-data/entry/lightning-type.d.ts +1 -2
  217. package/engine/object-data/entry/sound-preset.d.ts +33 -0
  218. package/engine/object-data/entry/sound-preset.lua +140 -0
  219. package/engine/object-data/entry/unit-type.d.ts +25 -6
  220. package/engine/object-data/entry/unit-type.lua +258 -93
  221. package/engine/object-data/entry/upgrade/blank.d.ts +0 -1
  222. package/engine/object-data/entry/upgrade.d.ts +1 -2
  223. package/engine/object-data/entry/upgrade.lua +4 -4
  224. package/engine/object-data/entry.d.ts +18 -17
  225. package/engine/object-data/entry.lua +60 -32
  226. package/engine/object-data/utility/object-data-entry-id-generator.lua +7 -0
  227. package/engine/object-field/ability.d.ts +28 -5
  228. package/engine/object-field/ability.lua +61 -7
  229. package/engine/object-field/item.d.ts +22 -0
  230. package/engine/object-field/item.lua +118 -0
  231. package/engine/object-field/unit.d.ts +72 -3
  232. package/engine/object-field/unit.lua +268 -7
  233. package/engine/object-field.d.ts +26 -8
  234. package/engine/object-field.lua +362 -117
  235. package/engine/random.d.ts +11 -0
  236. package/engine/random.lua +30 -0
  237. package/engine/standard/entries/buff-type.d.ts +3 -0
  238. package/engine/standard/entries/buff-type.lua +3 -0
  239. package/engine/standard/entries/sound-preset.d.ts +10 -0
  240. package/engine/standard/entries/sound-preset.lua +10 -0
  241. package/engine/standard/entries/unit-type.d.ts +18 -0
  242. package/engine/standard/entries/unit-type.lua +18 -0
  243. package/engine/standard/fields/ability.d.ts +5 -3
  244. package/engine/standard/fields/ability.lua +5 -3
  245. package/engine/standard/fields/item.d.ts +4 -0
  246. package/engine/standard/fields/item.lua +6 -0
  247. package/engine/standard/fields/unit.d.ts +12 -0
  248. package/engine/standard/fields/unit.lua +20 -0
  249. package/engine/synchronization.d.ts +11 -0
  250. package/engine/synchronization.lua +77 -0
  251. package/engine/text-tag.d.ts +36 -2
  252. package/engine/text-tag.lua +250 -10
  253. package/engine/unit.d.ts +9 -0
  254. package/engine/unit.lua +18 -2
  255. package/event.d.ts +3 -4
  256. package/event.lua +9 -5
  257. package/index.d.ts +1 -0
  258. package/index.lua +1 -0
  259. package/lualib_bundle.lua +147 -43
  260. package/math/vec2.d.ts +2 -9
  261. package/math.d.ts +2 -2
  262. package/math.lua +14 -0
  263. package/net/socket.d.ts +7 -1
  264. package/net/socket.lua +45 -4
  265. package/network.d.ts +1 -0
  266. package/network.lua +28 -3
  267. package/objutil/ability.d.ts +0 -1
  268. package/objutil/buff.d.ts +0 -1
  269. package/objutil/buff.lua +12 -11
  270. package/objutil/object.d.ts +0 -1
  271. package/objutil/object.lua +1 -1
  272. package/objutil/unit.d.ts +0 -1
  273. package/objutil/unit.lua +8 -0
  274. package/operation.d.ts +8 -1
  275. package/operation.lua +38 -18
  276. package/package.json +13 -13
  277. package/patch-lua.d.ts +0 -0
  278. package/patch-lua.lua +25 -0
  279. package/patch-lualib.lua +1 -1
  280. package/property.d.ts +55 -0
  281. package/property.lua +374 -0
  282. package/string.d.ts +16 -0
  283. package/string.lua +5 -0
  284. package/util/stream.d.ts +0 -1
  285. package/utility/arrays.d.ts +13 -5
  286. package/utility/arrays.lua +45 -3
  287. package/utility/bit-set.d.ts +0 -2
  288. package/utility/callback-array.d.ts +17 -0
  289. package/utility/callback-array.lua +61 -0
  290. package/utility/functions.d.ts +8 -0
  291. package/utility/functions.lua +13 -0
  292. package/utility/lazy.d.ts +2 -0
  293. package/utility/lazy.lua +14 -0
  294. package/utility/linked-map.d.ts +35 -0
  295. package/utility/linked-map.lua +107 -0
  296. package/utility/linked-set.d.ts +16 -4
  297. package/utility/linked-set.lua +54 -3
  298. package/utility/lua-maps.d.ts +16 -4
  299. package/utility/lua-maps.lua +53 -2
  300. package/utility/lua-sets.d.ts +3 -2
  301. package/utility/lua-sets.lua +7 -0
  302. package/utility/random.d.ts +102 -0
  303. package/utility/random.lua +273 -0
  304. package/utility/records.lua +20 -1
  305. package/utility/reflection.lua +11 -7
  306. package/utility/types.d.ts +4 -0
  307. package/utility/unordered-map.d.ts +27 -0
  308. package/utility/unordered-map.lua +99 -0
  309. package/core/mapbounds.d.ts +0 -8
  310. package/core/mapbounds.lua +0 -12
  311. package/core/types/order.d.ts +0 -25
  312. package/core/types/order.lua +0 -55
  313. /package/engine/internal/{object-data/armor-increase.d.ts → misc/ability-disable-counter.d.ts} +0 -0
  314. /package/engine/internal/object-data/{armor-increase.lua → armor-bonus.lua} +0 -0
  315. /package/engine/object-data/entry/ability-type/{attribute-increase.d.ts → attribute-bonus.d.ts} +0 -0
  316. /package/engine/object-data/entry/ability-type/{attribute-increase.lua → attribute-bonus.lua} +0 -0
@@ -11,6 +11,8 @@ local ____entry = require("engine.object-data.entry")
11
11
  local ObjectDataEntry = ____entry.ObjectDataEntry
12
12
  local ____object_2Ddata_2Dentry_2Did_2Dgenerator = require("engine.object-data.utility.object-data-entry-id-generator")
13
13
  local ObjectDataEntryIdGenerator = ____object_2Ddata_2Dentry_2Did_2Dgenerator.ObjectDataEntryIdGenerator
14
+ local ____reflection = require("utility.reflection")
15
+ local implementReadonlyNumberIndexSupplier = ____reflection.implementReadonlyNumberIndexSupplier
14
16
  ____exports.DestructibleType = __TS__Class()
15
17
  local DestructibleType = ____exports.DestructibleType
16
18
  DestructibleType.name = "DestructibleType"
@@ -25,6 +27,84 @@ DestructibleType.idGenerator = __TS__New(
25
27
  ObjectDataEntryIdGenerator,
26
28
  fourCC("D000")
27
29
  )
30
+ __TS__SetDescriptor(
31
+ DestructibleType.prototype,
32
+ "fixedFacing",
33
+ {
34
+ get = function(self)
35
+ return self:getNumberField("bfxr")
36
+ end,
37
+ set = function(self, fixedFacing)
38
+ self:setNumberField("bfxr", fixedFacing)
39
+ end
40
+ },
41
+ true
42
+ )
43
+ __TS__SetDescriptor(
44
+ DestructibleType.prototype,
45
+ "flyOverHeight",
46
+ {
47
+ get = function(self)
48
+ return self:getNumberField("bflh")
49
+ end,
50
+ set = function(self, flyOverHeight)
51
+ self:setNumberField("bflh", flyOverHeight)
52
+ end
53
+ },
54
+ true
55
+ )
56
+ __TS__SetDescriptor(
57
+ DestructibleType.prototype,
58
+ "modelPath",
59
+ {
60
+ get = function(self)
61
+ return self:getStringField("bfil")
62
+ end,
63
+ set = function(self, modelPath)
64
+ self:setStringField("bfil", modelPath)
65
+ end
66
+ },
67
+ true
68
+ )
69
+ __TS__SetDescriptor(
70
+ DestructibleType.prototype,
71
+ "modelPathSD",
72
+ {
73
+ get = function(self)
74
+ return self:getStringField("bfil:sd")
75
+ end,
76
+ set = function(self, modelPathSD)
77
+ self:setStringField("bfil:sd", modelPathSD)
78
+ end
79
+ },
80
+ true
81
+ )
82
+ __TS__SetDescriptor(
83
+ DestructibleType.prototype,
84
+ "modelPathHD",
85
+ {
86
+ get = function(self)
87
+ return self:getStringField("bfil:hd")
88
+ end,
89
+ set = function(self, modelPathHD)
90
+ self:setStringField("bfil:hd", modelPathHD)
91
+ end
92
+ },
93
+ true
94
+ )
95
+ __TS__SetDescriptor(
96
+ DestructibleType.prototype,
97
+ "occlusionHeight",
98
+ {
99
+ get = function(self)
100
+ return self:getNumberField("boch")
101
+ end,
102
+ set = function(self, occlusionHeight)
103
+ self:setNumberField("boch", occlusionHeight)
104
+ end
105
+ },
106
+ true
107
+ )
28
108
  __TS__SetDescriptor(
29
109
  DestructibleType.prototype,
30
110
  "armorSoundType",
@@ -80,4 +160,79 @@ __TS__SetDescriptor(
80
160
  },
81
161
  true
82
162
  )
163
+ __TS__SetDescriptor(
164
+ DestructibleType.prototype,
165
+ "cliffHeight",
166
+ {
167
+ get = function(self)
168
+ return self:getNumberField("bclh")
169
+ end,
170
+ set = function(self, cliffHeight)
171
+ self:setNumberField("bclh", cliffHeight)
172
+ end
173
+ },
174
+ true
175
+ )
176
+ __TS__SetDescriptor(
177
+ DestructibleType.prototype,
178
+ "isWalkable",
179
+ {
180
+ get = function(self)
181
+ return self:getBooleanField("bwal")
182
+ end,
183
+ set = function(self, isWalkable)
184
+ self:setBooleanField("bwal", isWalkable)
185
+ end
186
+ },
187
+ true
188
+ )
189
+ __TS__SetDescriptor(
190
+ DestructibleType.prototype,
191
+ "pathingTexturePath",
192
+ {
193
+ get = function(self)
194
+ return self:getStringField("bptx")
195
+ end,
196
+ set = function(self, pathingTexturePath)
197
+ self:setStringField("bptx", pathingTexturePath)
198
+ end
199
+ },
200
+ true
201
+ )
202
+ __TS__SetDescriptor(
203
+ DestructibleType.prototype,
204
+ "deadPathingTexturePath",
205
+ {
206
+ get = function(self)
207
+ return self:getStringField("bptd")
208
+ end,
209
+ set = function(self, deadPathingTexturePath)
210
+ self:setStringField("bptd", deadPathingTexturePath)
211
+ end
212
+ },
213
+ true
214
+ )
215
+ __TS__SetDescriptor(
216
+ DestructibleType.prototype,
217
+ "name",
218
+ {
219
+ get = function(self)
220
+ return self:getStringField("bnam")
221
+ end,
222
+ set = function(self, name)
223
+ self:setStringField("bnam", name)
224
+ end
225
+ },
226
+ true
227
+ )
228
+ implementReadonlyNumberIndexSupplier(
229
+ ____exports.DestructibleType,
230
+ function(id)
231
+ local ____class_0 = __TS__Class()
232
+ ____class_0.name = ____class_0.name
233
+ __TS__ClassExtends(____class_0, ____exports.DestructibleType)
234
+ ____class_0.BASE_ID = id
235
+ return ____class_0
236
+ end
237
+ )
83
238
  return ____exports
@@ -1,4 +1,3 @@
1
- /// <reference types="warpack-types/warpack" />
2
1
  /** @noSelfInFile */
3
2
  import { ItemType, ItemTypeId } from "../item-type";
4
3
  export declare class BlankItemType extends ItemType {
@@ -1,9 +1,8 @@
1
- /// <reference types="warpack-types/warpack" />
2
1
  /** @noSelfInFile */
3
2
  import { ArmorSoundType } from "../auxiliary/armor-sound-type";
4
3
  import { ObjectDataEntry, ObjectDataEntryId } from "../entry";
5
4
  import type { AbilityTypeId } from "./ability-type";
6
- export type ItemTypeId = ObjectDataEntryId & {
5
+ export type ItemTypeId = ObjectDataEntryId & number & {
7
6
  readonly __itemTypeId: unique symbol;
8
7
  };
9
8
  export declare class ItemType extends ObjectDataEntry<ItemTypeId> {
@@ -46,4 +45,18 @@ export declare class ItemType extends ObjectDataEntry<ItemTypeId> {
46
45
  set tooltipText(tooltipText: string);
47
46
  get tooltipExtendedText(): string;
48
47
  set tooltipExtendedText(tooltipText: string);
48
+ get cooldownGroupId(): number;
49
+ set cooldownGroupId(cooldownGroupId: number);
50
+ get goldCost(): number;
51
+ set goldCost(goldCost: number);
52
+ get lumberCost(): number;
53
+ set lumberCost(lumberCost: number);
54
+ get activelyUsed(): boolean;
55
+ set activelyUsed(activelyUsed: boolean);
56
+ get perishable(): boolean;
57
+ set perishable(perishable: boolean);
58
+ get initialStackSize(): number;
59
+ set initialStackSize(initialStackSize: number);
60
+ get maximumStackSize(): number;
61
+ set maximumStackSize(maximumStackSize: number);
49
62
  }
@@ -27,10 +27,10 @@ __TS__SetDescriptor(
27
27
  "abilityTypeIds",
28
28
  {
29
29
  get = function(self)
30
- return self:getObjectDataEntryIdsField("iabi")
30
+ return self:getObjectDataEntryNumericIdsField("iabi")
31
31
  end,
32
32
  set = function(self, abilityTypeIds)
33
- self:setObjectDataEntryIdsField("iabi", abilityTypeIds)
33
+ self:setObjectDataEntryNumericIdsField("iabi", abilityTypeIds)
34
34
  end
35
35
  },
36
36
  true
@@ -256,4 +256,95 @@ __TS__SetDescriptor(
256
256
  },
257
257
  true
258
258
  )
259
+ __TS__SetDescriptor(
260
+ ItemType.prototype,
261
+ "cooldownGroupId",
262
+ {
263
+ get = function(self)
264
+ return self:getObjectDataEntryNumericIdField("icid")
265
+ end,
266
+ set = function(self, cooldownGroupId)
267
+ self:setObjectDataEntryNumericIdField("icid", cooldownGroupId)
268
+ end
269
+ },
270
+ true
271
+ )
272
+ __TS__SetDescriptor(
273
+ ItemType.prototype,
274
+ "goldCost",
275
+ {
276
+ get = function(self)
277
+ return self:getNumberField("igol")
278
+ end,
279
+ set = function(self, goldCost)
280
+ self:setNumberField("igol", goldCost)
281
+ end
282
+ },
283
+ true
284
+ )
285
+ __TS__SetDescriptor(
286
+ ItemType.prototype,
287
+ "lumberCost",
288
+ {
289
+ get = function(self)
290
+ return self:getNumberField("ilum")
291
+ end,
292
+ set = function(self, lumberCost)
293
+ self:setNumberField("ilum", lumberCost)
294
+ end
295
+ },
296
+ true
297
+ )
298
+ __TS__SetDescriptor(
299
+ ItemType.prototype,
300
+ "activelyUsed",
301
+ {
302
+ get = function(self)
303
+ return self:getBooleanField("iusa")
304
+ end,
305
+ set = function(self, activelyUsed)
306
+ self:setBooleanField("iusa", activelyUsed)
307
+ end
308
+ },
309
+ true
310
+ )
311
+ __TS__SetDescriptor(
312
+ ItemType.prototype,
313
+ "perishable",
314
+ {
315
+ get = function(self)
316
+ return self:getBooleanField("iper")
317
+ end,
318
+ set = function(self, perishable)
319
+ self:setBooleanField("iper", perishable)
320
+ end
321
+ },
322
+ true
323
+ )
324
+ __TS__SetDescriptor(
325
+ ItemType.prototype,
326
+ "initialStackSize",
327
+ {
328
+ get = function(self)
329
+ return self:getNumberField("iuse")
330
+ end,
331
+ set = function(self, initialStackSize)
332
+ self:setNumberField("iuse", initialStackSize)
333
+ end
334
+ },
335
+ true
336
+ )
337
+ __TS__SetDescriptor(
338
+ ItemType.prototype,
339
+ "maximumStackSize",
340
+ {
341
+ get = function(self)
342
+ return self:getNumberField("ista")
343
+ end,
344
+ set = function(self, maximumStackSize)
345
+ self:setNumberField("ista", maximumStackSize)
346
+ end
347
+ },
348
+ true
349
+ )
259
350
  return ____exports
@@ -1,8 +1,7 @@
1
- /// <reference types="warpack-types/warpack" />
2
1
  /** @noSelfInFile */
3
2
  import { ObjectDataEntry, ObjectDataEntryConstructor, ObjectDataEntryId } from "../entry";
4
3
  import { Color } from "../../../core/types/color";
5
- export type LightningTypeId = ObjectDataEntryId & {
4
+ export type LightningTypeId = ObjectDataEntryId & number & {
6
5
  readonly __lightningTypeId: unique symbol;
7
6
  };
8
7
  export type StandardLightningTypeId = LightningTypeId & {
@@ -0,0 +1,33 @@
1
+ /** @noSelfInFile */
2
+ import { ObjectDataEntry, ObjectDataEntryId } from "../entry";
3
+ import { SoundEax } from "../auxiliary/sound-eax";
4
+ export type SoundPresetId = ObjectDataEntryId & string & {
5
+ readonly __soundPresetId: unique symbol;
6
+ };
7
+ export type StandardSoundPresetId = SoundPresetId & {
8
+ readonly __standardSoundPresetId: unique symbol;
9
+ };
10
+ export declare class SoundPreset extends ObjectDataEntry<SoundPresetId> {
11
+ static readonly BASE_ID: SoundPresetId;
12
+ private static nextId;
13
+ protected static generateId(): string;
14
+ protected static getObjectData(map: WarMap): WarObjects;
15
+ get filePaths(): string[];
16
+ set filePaths(filePaths: string[]);
17
+ get volume(): number;
18
+ set volume(volume: number);
19
+ get pitch(): number;
20
+ set pitch(pitch: number);
21
+ get priority(): number;
22
+ set priority(priority: number);
23
+ get channel(): number;
24
+ set channel(channel: number);
25
+ get minimumDistance(): number;
26
+ set minimumDistance(minimumDistance: number);
27
+ get maximumDistance(): number;
28
+ set maximumDistance(maximumDistance: number);
29
+ get distanceCutoff(): number;
30
+ set distanceCutoff(distanceCutoff: number);
31
+ get eax(): SoundEax;
32
+ set eax(eax: SoundEax);
33
+ }
@@ -0,0 +1,140 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
5
+ local ____exports = {}
6
+ local ____entry = require("engine.object-data.entry")
7
+ local ObjectDataEntry = ____entry.ObjectDataEntry
8
+ ____exports.SoundPreset = __TS__Class()
9
+ local SoundPreset = ____exports.SoundPreset
10
+ SoundPreset.name = "SoundPreset"
11
+ __TS__ClassExtends(SoundPreset, ObjectDataEntry)
12
+ function SoundPreset.generateId(self)
13
+ local ____self_0, ____nextId_1 = self, "nextId"
14
+ local ____self_nextId_2 = ____self_0[____nextId_1]
15
+ ____self_0[____nextId_1] = ____self_nextId_2 + 1
16
+ return "CustomSound" .. tostring(____self_nextId_2)
17
+ end
18
+ function SoundPreset.getObjectData(self, map)
19
+ return map.objects.sound
20
+ end
21
+ SoundPreset.BASE_ID = "BlizzardWave"
22
+ SoundPreset.nextId = 0
23
+ __TS__SetDescriptor(
24
+ SoundPreset.prototype,
25
+ "filePaths",
26
+ {
27
+ get = function(self)
28
+ return self:getStringsField("FileNames")
29
+ end,
30
+ set = function(self, filePaths)
31
+ self:setStringsField("FileNames", filePaths)
32
+ end
33
+ },
34
+ true
35
+ )
36
+ __TS__SetDescriptor(
37
+ SoundPreset.prototype,
38
+ "volume",
39
+ {
40
+ get = function(self)
41
+ return self:getNumberField("Volume")
42
+ end,
43
+ set = function(self, volume)
44
+ self:setNumberField("Volume", volume)
45
+ end
46
+ },
47
+ true
48
+ )
49
+ __TS__SetDescriptor(
50
+ SoundPreset.prototype,
51
+ "pitch",
52
+ {
53
+ get = function(self)
54
+ return self:getNumberField("Pitch")
55
+ end,
56
+ set = function(self, pitch)
57
+ self:setNumberField("Pitch", pitch)
58
+ end
59
+ },
60
+ true
61
+ )
62
+ __TS__SetDescriptor(
63
+ SoundPreset.prototype,
64
+ "priority",
65
+ {
66
+ get = function(self)
67
+ return self:getNumberField("Priority")
68
+ end,
69
+ set = function(self, priority)
70
+ self:setNumberField("Priority", priority)
71
+ end
72
+ },
73
+ true
74
+ )
75
+ __TS__SetDescriptor(
76
+ SoundPreset.prototype,
77
+ "channel",
78
+ {
79
+ get = function(self)
80
+ return self:getNumberField("Channel")
81
+ end,
82
+ set = function(self, channel)
83
+ self:setNumberField("Channel", channel)
84
+ end
85
+ },
86
+ true
87
+ )
88
+ __TS__SetDescriptor(
89
+ SoundPreset.prototype,
90
+ "minimumDistance",
91
+ {
92
+ get = function(self)
93
+ return self:getNumberField("MinDistance")
94
+ end,
95
+ set = function(self, minimumDistance)
96
+ self:setNumberField("MinDistance", minimumDistance)
97
+ end
98
+ },
99
+ true
100
+ )
101
+ __TS__SetDescriptor(
102
+ SoundPreset.prototype,
103
+ "maximumDistance",
104
+ {
105
+ get = function(self)
106
+ return self:getNumberField("MaxDistance")
107
+ end,
108
+ set = function(self, maximumDistance)
109
+ self:setNumberField("MaxDistance", maximumDistance)
110
+ end
111
+ },
112
+ true
113
+ )
114
+ __TS__SetDescriptor(
115
+ SoundPreset.prototype,
116
+ "distanceCutoff",
117
+ {
118
+ get = function(self)
119
+ return self:getNumberField("DistanceCutoff")
120
+ end,
121
+ set = function(self, distanceCutoff)
122
+ self:setNumberField("DistanceCutoff", distanceCutoff)
123
+ end
124
+ },
125
+ true
126
+ )
127
+ __TS__SetDescriptor(
128
+ SoundPreset.prototype,
129
+ "eax",
130
+ {
131
+ get = function(self)
132
+ return self:getStringField("EAXFlags")
133
+ end,
134
+ set = function(self, eax)
135
+ self:setStringField("EAXFlags", eax)
136
+ end
137
+ },
138
+ true
139
+ )
140
+ return ____exports
@@ -1,4 +1,3 @@
1
- /// <reference types="warpack-types/warpack" />
2
1
  /** @noSelfInFile */
3
2
  import { TupleOf } from "../../../utility/types";
4
3
  import { ArmorSoundType } from "../auxiliary/armor-sound-type";
@@ -14,7 +13,8 @@ import type { AbilityTypeId } from "./ability-type";
14
13
  import type { UpgradeId } from "./upgrade";
15
14
  import { AnimationQualifier } from "../auxiliary/animation-qualifier";
16
15
  import { AttackType } from "../auxiliary/attack-type";
17
- export type UnitTypeId = ObjectDataEntryId & {
16
+ import { ArmorType } from "../auxiliary/armor-type";
17
+ export type UnitTypeId = ObjectDataEntryId & number & {
18
18
  readonly __unitTypeId: unique symbol;
19
19
  };
20
20
  export type StandardUnitTypeId = UnitTypeId & {
@@ -24,8 +24,8 @@ export declare class UnitTypeWeapon {
24
24
  private readonly unitType;
25
25
  private readonly index;
26
26
  private constructor();
27
- get attackType(): AttackType;
28
- set attackType(attackType: AttackType);
27
+ get attackType(): AttackType | undefined;
28
+ set attackType(attackType: AttackType | undefined);
29
29
  get backSwingDuration(): number;
30
30
  set backSwingDuration(backSwingDuration: number);
31
31
  get cooldown(): number;
@@ -42,6 +42,10 @@ export declare class UnitTypeWeapon {
42
42
  set impactDelay(impactDelay: number);
43
43
  get missileModelPath(): string;
44
44
  set missileModelPath(missileModelPath: string);
45
+ get missileModelPathSD(): string;
46
+ set missileModelPathSD(missileModelPathSD: string);
47
+ get missileModelPathHD(): string;
48
+ set missileModelPathHD(missileModelPathHD: string);
45
49
  get range(): number;
46
50
  set range(range: number);
47
51
  get soundType(): WeaponSoundType;
@@ -56,6 +60,7 @@ export declare abstract class UnitType<Id extends UnitTypeId = UnitTypeId> exten
56
60
  protected static readonly idGenerator: ObjectDataEntryIdGenerator;
57
61
  protected static generateId(): number;
58
62
  protected static getObjectData(map: WarMap): WarObjects;
63
+ private isPortraitModelPathSet?;
59
64
  get abilityTypeIds(): AbilityTypeId[];
60
65
  set abilityTypeIds(abilityTypeIds: AbilityTypeId[]);
61
66
  get defaultActiveAbilityTypeId(): AbilityTypeId | undefined;
@@ -132,12 +137,20 @@ export declare abstract class UnitType<Id extends UnitTypeId = UnitTypeId> exten
132
137
  set modelPathSD(modelPathSD: string);
133
138
  get modelPathHD(): string;
134
139
  set modelPathHD(modelPathHD: string);
140
+ get portraitModelPath(): string;
141
+ set portraitModelPath(portraitModelPath: string);
142
+ get portraitModelPathSD(): string;
143
+ set portraitModelPathSD(portraitModelPathSD: string);
144
+ get portraitModelPathHD(): string;
145
+ set portraitModelPathHD(portraitModelPathHD: string);
135
146
  get runSpeed(): number;
136
147
  set runSpeed(runSpeed: number);
137
148
  get runSpeedSD(): number;
138
149
  set runSpeedSD(runSpeedSD: number);
139
150
  get runSpeedHD(): number;
140
151
  set runSpeedHD(runSpeedHD: number);
152
+ get selectionCircleHeight(): number;
153
+ set selectionCircleHeight(height: number);
141
154
  get selectionCircleScale(): number;
142
155
  set selectionCircleScale(selectionCircleScale: number);
143
156
  get selectionCircleScaleSD(): number;
@@ -176,16 +189,20 @@ export declare abstract class UnitType<Id extends UnitTypeId = UnitTypeId> exten
176
189
  set walkSpeedSD(walkSpeedSD: number);
177
190
  get walkSpeedHD(): number;
178
191
  set walkSpeedHD(walkSpeedHD: number);
192
+ get armor(): number;
193
+ set armor(armor: number);
179
194
  get armorSoundType(): ArmorSoundType;
180
195
  set armorSoundType(armorSoundType: ArmorSoundType);
181
196
  get armorSoundTypeSD(): ArmorSoundType;
182
197
  set armorSoundTypeSD(armorSoundTypeSD: ArmorSoundType);
183
198
  get armorSoundTypeHD(): ArmorSoundType;
184
199
  set armorSoundTypeHD(armorSoundTypeHD: ArmorSoundType);
200
+ get armorType(): ArmorType;
201
+ set armorType(armorType: ArmorType);
185
202
  get combatClassifications(): CombatClassifications;
186
203
  set combatClassifications(combatClassifications: CombatClassifications);
187
- get unitClassifications(): UnitClassifications;
188
- set unitClassifications(unitClassifications: UnitClassifications);
204
+ get classifications(): UnitClassifications;
205
+ set classifications(unitClassifications: UnitClassifications);
189
206
  get weapons(): TupleOf<UnitTypeWeapon, 2>;
190
207
  get firstWeapon(): UnitTypeWeapon;
191
208
  get secondWeapon(): UnitTypeWeapon;
@@ -219,6 +236,8 @@ export declare abstract class UnitType<Id extends UnitTypeId = UnitTypeId> exten
219
236
  set goldCost(goldCost: number);
220
237
  get healthRegenerationRate(): number;
221
238
  set healthRegenerationRate(healthRegenerationRate: number);
239
+ get level(): number;
240
+ set level(level: number);
222
241
  get manaRegenerationRate(): number;
223
242
  set manaRegenerationRate(manaRegenerationRate: number);
224
243
  get maximumHealth(): number;