warscript 0.0.1-dev.404878c

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 (493) hide show
  1. package/LICENSE +23 -0
  2. package/binaryreader.d.ts +20 -0
  3. package/binaryreader.lua +50 -0
  4. package/binarywriter.d.ts +21 -0
  5. package/binarywriter.lua +90 -0
  6. package/core/dummy.d.ts +22 -0
  7. package/core/dummy.lua +133 -0
  8. package/core/game.d.ts +3 -0
  9. package/core/game.lua +24 -0
  10. package/core/mapbounds.d.ts +8 -0
  11. package/core/mapbounds.lua +12 -0
  12. package/core/thread.d.ts +8 -0
  13. package/core/thread.lua +40 -0
  14. package/core/types/ability.d.ts +4 -0
  15. package/core/types/ability.lua +10 -0
  16. package/core/types/async.d.ts +3 -0
  17. package/core/types/async.lua +2 -0
  18. package/core/types/camera.d.ts +4 -0
  19. package/core/types/camera.lua +21 -0
  20. package/core/types/cameraField.d.ts +15 -0
  21. package/core/types/cameraField.lua +38 -0
  22. package/core/types/color.d.ts +16 -0
  23. package/core/types/color.lua +93 -0
  24. package/core/types/destructable.d.ts +31 -0
  25. package/core/types/destructable.lua +245 -0
  26. package/core/types/effect.d.ts +31 -0
  27. package/core/types/effect.lua +209 -0
  28. package/core/types/frame.d.ts +140 -0
  29. package/core/types/frame.lua +882 -0
  30. package/core/types/game.d.ts +8 -0
  31. package/core/types/game.lua +41 -0
  32. package/core/types/group.d.ts +22 -0
  33. package/core/types/group.lua +94 -0
  34. package/core/types/handle.d.ts +48 -0
  35. package/core/types/handle.lua +169 -0
  36. package/core/types/image.d.ts +30 -0
  37. package/core/types/image.lua +121 -0
  38. package/core/types/internal/ability+cooldownRemaining.d.ts +1 -0
  39. package/core/types/internal/ability+cooldownRemaining.lua +0 -0
  40. package/core/types/item.d.ts +4 -0
  41. package/core/types/item.lua +6 -0
  42. package/core/types/missile.d.ts +22 -0
  43. package/core/types/missile.lua +233 -0
  44. package/core/types/order.d.ts +25 -0
  45. package/core/types/order.lua +55 -0
  46. package/core/types/player.d.ts +71 -0
  47. package/core/types/player.lua +448 -0
  48. package/core/types/playerCamera.d.ts +32 -0
  49. package/core/types/playerCamera.lua +162 -0
  50. package/core/types/playerColor.d.ts +40 -0
  51. package/core/types/playerColor.lua +203 -0
  52. package/core/types/rect.d.ts +39 -0
  53. package/core/types/rect.lua +152 -0
  54. package/core/types/region.d.ts +14 -0
  55. package/core/types/region.lua +84 -0
  56. package/core/types/sound.d.ts +69 -0
  57. package/core/types/sound.lua +247 -0
  58. package/core/types/tileCell.d.ts +13 -0
  59. package/core/types/tileCell.lua +100 -0
  60. package/core/types/timer.d.ts +36 -0
  61. package/core/types/timer.lua +230 -0
  62. package/core/types/timerDialog.d.ts +19 -0
  63. package/core/types/timerDialog.lua +95 -0
  64. package/core/types/unit.d.ts +10 -0
  65. package/core/types/unit.lua +24 -0
  66. package/core/types/widget.d.ts +5 -0
  67. package/core/types/widget.lua +2 -0
  68. package/core/util.d.ts +62 -0
  69. package/core/util.lua +464 -0
  70. package/core/vecmath/common.d.ts +18 -0
  71. package/core/vecmath/common.lua +29 -0
  72. package/core/vecmath/mat2.d.ts +73 -0
  73. package/core/vecmath/mat2.lua +261 -0
  74. package/core/vecmath/vec3.d.ts +47 -0
  75. package/core/vecmath/vec3.lua +350 -0
  76. package/core/vecmath/vec4.d.ts +54 -0
  77. package/core/vecmath/vec4.lua +400 -0
  78. package/crypto/ecc.d.ts +6 -0
  79. package/crypto/ecc.lua +1734 -0
  80. package/decl/index.d.ts +116 -0
  81. package/decl/native.d.ts +8198 -0
  82. package/destroyable.d.ts +20 -0
  83. package/destroyable.lua +31 -0
  84. package/engine/ability.d.ts +5 -0
  85. package/engine/ability.lua +7 -0
  86. package/engine/behavior.d.ts +28 -0
  87. package/engine/behavior.lua +181 -0
  88. package/engine/behaviour/ability/apply-buff.d.ts +38 -0
  89. package/engine/behaviour/ability/apply-buff.lua +126 -0
  90. package/engine/behaviour/ability/apply-unit-behavior.d.ts +12 -0
  91. package/engine/behaviour/ability/apply-unit-behavior.lua +36 -0
  92. package/engine/behaviour/ability/damage.d.ts +25 -0
  93. package/engine/behaviour/ability/damage.lua +75 -0
  94. package/engine/behaviour/ability/heal.d.ts +16 -0
  95. package/engine/behaviour/ability/heal.lua +35 -0
  96. package/engine/behaviour/ability/instant-impact.d.ts +6 -0
  97. package/engine/behaviour/ability/instant-impact.lua +25 -0
  98. package/engine/behaviour/ability.d.ts +40 -0
  99. package/engine/behaviour/ability.lua +175 -0
  100. package/engine/behaviour/unit/stun-immunity.d.ts +19 -0
  101. package/engine/behaviour/unit/stun-immunity.lua +67 -0
  102. package/engine/behaviour/unit.d.ts +20 -0
  103. package/engine/behaviour/unit.lua +75 -0
  104. package/engine/buff.d.ts +221 -0
  105. package/engine/buff.lua +1093 -0
  106. package/engine/constants.d.ts +7 -0
  107. package/engine/constants.lua +8 -0
  108. package/engine/index.d.ts +5 -0
  109. package/engine/index.lua +2 -0
  110. package/engine/internal/ability.d.ts +91 -0
  111. package/engine/internal/ability.lua +531 -0
  112. package/engine/internal/item/ability.d.ts +2 -0
  113. package/engine/internal/item/ability.lua +48 -0
  114. package/engine/internal/item+owner.d.ts +7 -0
  115. package/engine/internal/item+owner.lua +22 -0
  116. package/engine/internal/item.d.ts +86 -0
  117. package/engine/internal/item.lua +580 -0
  118. package/engine/internal/mechanics/ability-duration.d.ts +4 -0
  119. package/engine/internal/mechanics/ability-duration.lua +11 -0
  120. package/engine/internal/mechanics/area-damage.d.ts +2 -0
  121. package/engine/internal/mechanics/area-damage.lua +33 -0
  122. package/engine/internal/misc/dummy-units.d.ts +2 -0
  123. package/engine/internal/misc/dummy-units.lua +14 -0
  124. package/engine/internal/object-data/armor-increase.d.ts +2 -0
  125. package/engine/internal/object-data/armor-increase.lua +19 -0
  126. package/engine/internal/object-data/attribute-bonus.d.ts +2 -0
  127. package/engine/internal/object-data/attribute-bonus.lua +15 -0
  128. package/engine/internal/object-data/auto-attack-damage-increase.d.ts +2 -0
  129. package/engine/internal/object-data/auto-attack-damage-increase.lua +17 -0
  130. package/engine/internal/object-data/auto-attack-speed-increase.d.ts +2 -0
  131. package/engine/internal/object-data/auto-attack-speed-increase.lua +14 -0
  132. package/engine/internal/object-data/dummy-inventory.d.ts +2 -0
  133. package/engine/internal/object-data/dummy-inventory.lua +16 -0
  134. package/engine/internal/object-data/dummy-item.d.ts +2 -0
  135. package/engine/internal/object-data/dummy-item.lua +10 -0
  136. package/engine/internal/object-data/ghost-visible.d.ts +2 -0
  137. package/engine/internal/object-data/ghost-visible.lua +15 -0
  138. package/engine/internal/object-data/invulnerable.d.ts +2 -0
  139. package/engine/internal/object-data/invulnerable.lua +11 -0
  140. package/engine/internal/object-data/movement-speed-increase-factor.d.ts +2 -0
  141. package/engine/internal/object-data/movement-speed-increase-factor.lua +18 -0
  142. package/engine/internal/unit/ability.d.ts +143 -0
  143. package/engine/internal/unit/ability.lua +369 -0
  144. package/engine/internal/unit/allowed-targets.d.ts +17 -0
  145. package/engine/internal/unit/allowed-targets.lua +19 -0
  146. package/engine/internal/unit/band-aids/ancestral-spirit-cannibalize.d.ts +2 -0
  147. package/engine/internal/unit/band-aids/ancestral-spirit-cannibalize.lua +21 -0
  148. package/engine/internal/unit/bonus.d.ts +41 -0
  149. package/engine/internal/unit/bonus.lua +188 -0
  150. package/engine/internal/unit/buff.d.ts +38 -0
  151. package/engine/internal/unit/buff.lua +81 -0
  152. package/engine/internal/unit/expiration-timer.d.ts +22 -0
  153. package/engine/internal/unit/expiration-timer.lua +44 -0
  154. package/engine/internal/unit/ghost-counter.d.ts +12 -0
  155. package/engine/internal/unit/ghost-counter.lua +26 -0
  156. package/engine/internal/unit/invulnerability-counter.d.ts +12 -0
  157. package/engine/internal/unit/invulnerability-counter.lua +26 -0
  158. package/engine/internal/unit/missile.d.ts +42 -0
  159. package/engine/internal/unit/missile.lua +70 -0
  160. package/engine/internal/unit/movement-speed.d.ts +18 -0
  161. package/engine/internal/unit/movement-speed.lua +42 -0
  162. package/engine/internal/unit/summon-event.d.ts +12 -0
  163. package/engine/internal/unit/summon-event.lua +50 -0
  164. package/engine/internal/unit+ability.d.ts +9 -0
  165. package/engine/internal/unit+ability.lua +59 -0
  166. package/engine/internal/unit+bonus.d.ts +8 -0
  167. package/engine/internal/unit+bonus.lua +40 -0
  168. package/engine/internal/unit+damage.d.ts +69 -0
  169. package/engine/internal/unit+damage.lua +123 -0
  170. package/engine/internal/unit+rally.d.ts +10 -0
  171. package/engine/internal/unit+rally.lua +159 -0
  172. package/engine/internal/unit+spellSteal.d.ts +7 -0
  173. package/engine/internal/unit+spellSteal.lua +64 -0
  174. package/engine/internal/unit+transport.d.ts +12 -0
  175. package/engine/internal/unit+transport.lua +102 -0
  176. package/engine/internal/unit-missile-data.d.ts +2 -0
  177. package/engine/internal/unit-missile-data.lua +107 -0
  178. package/engine/internal/unit-missile-launch.d.ts +7 -0
  179. package/engine/internal/unit-missile-launch.lua +32 -0
  180. package/engine/internal/unit.d.ts +312 -0
  181. package/engine/internal/unit.lua +2430 -0
  182. package/engine/internal/utility.d.ts +2 -0
  183. package/engine/internal/utility.lua +13 -0
  184. package/engine/lightning.d.ts +51 -0
  185. package/engine/lightning.lua +303 -0
  186. package/engine/local-client.d.ts +16 -0
  187. package/engine/local-client.lua +86 -0
  188. package/engine/object-data/auxiliary/animation-name.d.ts +14 -0
  189. package/engine/object-data/auxiliary/animation-name.lua +2 -0
  190. package/engine/object-data/auxiliary/animation-qualifier.d.ts +53 -0
  191. package/engine/object-data/auxiliary/animation-qualifier.lua +2 -0
  192. package/engine/object-data/auxiliary/armor-sound-type.d.ts +8 -0
  193. package/engine/object-data/auxiliary/armor-sound-type.lua +2 -0
  194. package/engine/object-data/auxiliary/attachment-preset.d.ts +15 -0
  195. package/engine/object-data/auxiliary/attachment-preset.lua +29 -0
  196. package/engine/object-data/auxiliary/attack-type.d.ts +11 -0
  197. package/engine/object-data/auxiliary/attack-type.lua +2 -0
  198. package/engine/object-data/auxiliary/buff-polarity.d.ts +6 -0
  199. package/engine/object-data/auxiliary/buff-polarity.lua +2 -0
  200. package/engine/object-data/auxiliary/buff-resistance-type.d.ts +6 -0
  201. package/engine/object-data/auxiliary/buff-resistance-type.lua +2 -0
  202. package/engine/object-data/auxiliary/combat-classification.d.ts +46 -0
  203. package/engine/object-data/auxiliary/combat-classification.lua +206 -0
  204. package/engine/object-data/auxiliary/detection-type.d.ts +7 -0
  205. package/engine/object-data/auxiliary/detection-type.lua +2 -0
  206. package/engine/object-data/auxiliary/model-node-name.d.ts +12 -0
  207. package/engine/object-data/auxiliary/model-node-name.lua +2 -0
  208. package/engine/object-data/auxiliary/model-node-qualifier.d.ts +21 -0
  209. package/engine/object-data/auxiliary/model-node-qualifier.lua +2 -0
  210. package/engine/object-data/auxiliary/movement-type.d.ts +10 -0
  211. package/engine/object-data/auxiliary/movement-type.lua +2 -0
  212. package/engine/object-data/auxiliary/race.d.ts +14 -0
  213. package/engine/object-data/auxiliary/race.lua +2 -0
  214. package/engine/object-data/auxiliary/sound-preset-name.d.ts +8 -0
  215. package/engine/object-data/auxiliary/sound-preset-name.lua +2 -0
  216. package/engine/object-data/auxiliary/sound-set-name.d.ts +35 -0
  217. package/engine/object-data/auxiliary/sound-set-name.lua +2 -0
  218. package/engine/object-data/auxiliary/targeting-type.d.ts +8 -0
  219. package/engine/object-data/auxiliary/targeting-type.lua +2 -0
  220. package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +16 -0
  221. package/engine/object-data/auxiliary/tech-tree-dependency.lua +8 -0
  222. package/engine/object-data/auxiliary/unit-classification.d.ts +19 -0
  223. package/engine/object-data/auxiliary/unit-classification.lua +50 -0
  224. package/engine/object-data/auxiliary/weapon-sound-type.d.ts +17 -0
  225. package/engine/object-data/auxiliary/weapon-sound-type.lua +2 -0
  226. package/engine/object-data/entry/ability-type/armor-increase.d.ts +8 -0
  227. package/engine/object-data/entry/ability-type/armor-increase.lua +26 -0
  228. package/engine/object-data/entry/ability-type/attribute-increase.d.ts +12 -0
  229. package/engine/object-data/entry/ability-type/attribute-increase.lua +52 -0
  230. package/engine/object-data/entry/ability-type/auto-attack-damage-increase.d.ts +8 -0
  231. package/engine/object-data/entry/ability-type/auto-attack-damage-increase.lua +26 -0
  232. package/engine/object-data/entry/ability-type/auto-attack-heal-reduction-effect.d.ts +12 -0
  233. package/engine/object-data/entry/ability-type/auto-attack-heal-reduction-effect.lua +52 -0
  234. package/engine/object-data/entry/ability-type/auto-attack-speed-increase.d.ts +8 -0
  235. package/engine/object-data/entry/ability-type/auto-attack-speed-increase.lua +26 -0
  236. package/engine/object-data/entry/ability-type/bash.d.ts +16 -0
  237. package/engine/object-data/entry/ability-type/bash.lua +78 -0
  238. package/engine/object-data/entry/ability-type/berserk.d.ts +10 -0
  239. package/engine/object-data/entry/ability-type/berserk.lua +39 -0
  240. package/engine/object-data/entry/ability-type/blank-configurable.d.ts +21 -0
  241. package/engine/object-data/entry/ability-type/blank-configurable.lua +249 -0
  242. package/engine/object-data/entry/ability-type/blank-passive.d.ts +7 -0
  243. package/engine/object-data/entry/ability-type/blank-passive.lua +28 -0
  244. package/engine/object-data/entry/ability-type/blizzard.d.ts +16 -0
  245. package/engine/object-data/entry/ability-type/blizzard.lua +78 -0
  246. package/engine/object-data/entry/ability-type/blood-lust.d.ts +12 -0
  247. package/engine/object-data/entry/ability-type/blood-lust.lua +52 -0
  248. package/engine/object-data/entry/ability-type/chain-lightning.d.ts +12 -0
  249. package/engine/object-data/entry/ability-type/chain-lightning.lua +52 -0
  250. package/engine/object-data/entry/ability-type/channel.d.ts +48 -0
  251. package/engine/object-data/entry/ability-type/channel.lua +140 -0
  252. package/engine/object-data/entry/ability-type/charge-gold-and-lumber.d.ts +14 -0
  253. package/engine/object-data/entry/ability-type/charge-gold-and-lumber.lua +65 -0
  254. package/engine/object-data/entry/ability-type/cleaving-attack.d.ts +8 -0
  255. package/engine/object-data/entry/ability-type/cleaving-attack.lua +26 -0
  256. package/engine/object-data/entry/ability-type/cluster-rockets.d.ts +18 -0
  257. package/engine/object-data/entry/ability-type/cluster-rockets.lua +91 -0
  258. package/engine/object-data/entry/ability-type/cripple.d.ts +12 -0
  259. package/engine/object-data/entry/ability-type/cripple.lua +52 -0
  260. package/engine/object-data/entry/ability-type/critical-strike.d.ts +18 -0
  261. package/engine/object-data/entry/ability-type/critical-strike.lua +91 -0
  262. package/engine/object-data/entry/ability-type/curse.d.ts +8 -0
  263. package/engine/object-data/entry/ability-type/curse.lua +26 -0
  264. package/engine/object-data/entry/ability-type/dark-summoning.d.ts +10 -0
  265. package/engine/object-data/entry/ability-type/dark-summoning.lua +39 -0
  266. package/engine/object-data/entry/ability-type/death-coil.d.ts +8 -0
  267. package/engine/object-data/entry/ability-type/death-coil.lua +26 -0
  268. package/engine/object-data/entry/ability-type/disease-cloud.d.ts +15 -0
  269. package/engine/object-data/entry/ability-type/disease-cloud.lua +65 -0
  270. package/engine/object-data/entry/ability-type/divine-shield.d.ts +5 -0
  271. package/engine/object-data/entry/ability-type/divine-shield.lua +12 -0
  272. package/engine/object-data/entry/ability-type/endurance-aura.d.ts +10 -0
  273. package/engine/object-data/entry/ability-type/endurance-aura.lua +39 -0
  274. package/engine/object-data/entry/ability-type/engineering-upgrade.d.ts +13 -0
  275. package/engine/object-data/entry/ability-type/engineering-upgrade.lua +88 -0
  276. package/engine/object-data/entry/ability-type/evasion.d.ts +8 -0
  277. package/engine/object-data/entry/ability-type/evasion.lua +26 -0
  278. package/engine/object-data/entry/ability-type/faerie-fire.d.ts +10 -0
  279. package/engine/object-data/entry/ability-type/faerie-fire.lua +39 -0
  280. package/engine/object-data/entry/ability-type/far-sight.d.ts +9 -0
  281. package/engine/object-data/entry/ability-type/far-sight.lua +26 -0
  282. package/engine/object-data/entry/ability-type/feral-spirit.d.ts +11 -0
  283. package/engine/object-data/entry/ability-type/feral-spirit.lua +39 -0
  284. package/engine/object-data/entry/ability-type/frenzy.d.ts +12 -0
  285. package/engine/object-data/entry/ability-type/frenzy.lua +52 -0
  286. package/engine/object-data/entry/ability-type/frost-nova.d.ts +12 -0
  287. package/engine/object-data/entry/ability-type/frost-nova.lua +52 -0
  288. package/engine/object-data/entry/ability-type/ghost-visible.d.ts +10 -0
  289. package/engine/object-data/entry/ability-type/ghost-visible.lua +39 -0
  290. package/engine/object-data/entry/ability-type/gold-mine.d.ts +12 -0
  291. package/engine/object-data/entry/ability-type/gold-mine.lua +52 -0
  292. package/engine/object-data/entry/ability-type/heal.d.ts +8 -0
  293. package/engine/object-data/entry/ability-type/heal.lua +26 -0
  294. package/engine/object-data/entry/ability-type/healing-salve.d.ts +22 -0
  295. package/engine/object-data/entry/ability-type/healing-salve.lua +78 -0
  296. package/engine/object-data/entry/ability-type/healing-spray.d.ts +18 -0
  297. package/engine/object-data/entry/ability-type/healing-spray.lua +91 -0
  298. package/engine/object-data/entry/ability-type/healing-wave.d.ts +12 -0
  299. package/engine/object-data/entry/ability-type/healing-wave.lua +52 -0
  300. package/engine/object-data/entry/ability-type/holy-light.d.ts +8 -0
  301. package/engine/object-data/entry/ability-type/holy-light.lua +26 -0
  302. package/engine/object-data/entry/ability-type/incinerate.d.ts +18 -0
  303. package/engine/object-data/entry/ability-type/incinerate.lua +91 -0
  304. package/engine/object-data/entry/ability-type/inner-fire.d.ts +14 -0
  305. package/engine/object-data/entry/ability-type/inner-fire.lua +65 -0
  306. package/engine/object-data/entry/ability-type/inventory.d.ts +16 -0
  307. package/engine/object-data/entry/ability-type/inventory.lua +78 -0
  308. package/engine/object-data/entry/ability-type/invulnerable.d.ts +5 -0
  309. package/engine/object-data/entry/ability-type/invulnerable.lua +12 -0
  310. package/engine/object-data/entry/ability-type/lightning-shield.d.ts +8 -0
  311. package/engine/object-data/entry/ability-type/lightning-shield.lua +26 -0
  312. package/engine/object-data/entry/ability-type/movement-speed-increase.d.ts +8 -0
  313. package/engine/object-data/entry/ability-type/movement-speed-increase.lua +26 -0
  314. package/engine/object-data/entry/ability-type/permanent-immolation.d.ts +8 -0
  315. package/engine/object-data/entry/ability-type/permanent-immolation.lua +26 -0
  316. package/engine/object-data/entry/ability-type/phoenix-morph.d.ts +25 -0
  317. package/engine/object-data/entry/ability-type/phoenix-morph.lua +130 -0
  318. package/engine/object-data/entry/ability-type/recall.d.ts +10 -0
  319. package/engine/object-data/entry/ability-type/recall.lua +39 -0
  320. package/engine/object-data/entry/ability-type/rejuvenation.d.ts +20 -0
  321. package/engine/object-data/entry/ability-type/rejuvenation.lua +65 -0
  322. package/engine/object-data/entry/ability-type/searing-arrows.d.ts +8 -0
  323. package/engine/object-data/entry/ability-type/searing-arrows.lua +26 -0
  324. package/engine/object-data/entry/ability-type/shock-wave.d.ts +10 -0
  325. package/engine/object-data/entry/ability-type/shock-wave.lua +39 -0
  326. package/engine/object-data/entry/ability-type/slow-poison.d.ts +12 -0
  327. package/engine/object-data/entry/ability-type/slow-poison.lua +52 -0
  328. package/engine/object-data/entry/ability-type/slow.d.ts +12 -0
  329. package/engine/object-data/entry/ability-type/slow.lua +52 -0
  330. package/engine/object-data/entry/ability-type/spell-damage-reduction.d.ts +10 -0
  331. package/engine/object-data/entry/ability-type/spell-damage-reduction.lua +39 -0
  332. package/engine/object-data/entry/ability-type/spiked-carapace.d.ts +12 -0
  333. package/engine/object-data/entry/ability-type/spiked-carapace.lua +52 -0
  334. package/engine/object-data/entry/ability-type/spirit-touch.d.ts +14 -0
  335. package/engine/object-data/entry/ability-type/spirit-touch.lua +65 -0
  336. package/engine/object-data/entry/ability-type/storm-bolt.d.ts +8 -0
  337. package/engine/object-data/entry/ability-type/storm-bolt.lua +26 -0
  338. package/engine/object-data/entry/ability-type/summon-quilbeast.d.ts +11 -0
  339. package/engine/object-data/entry/ability-type/summon-quilbeast.lua +39 -0
  340. package/engine/object-data/entry/ability-type/summon-water-elemental.d.ts +11 -0
  341. package/engine/object-data/entry/ability-type/summon-water-elemental.lua +39 -0
  342. package/engine/object-data/entry/ability-type.d.ts +148 -0
  343. package/engine/object-data/entry/ability-type.lua +1058 -0
  344. package/engine/object-data/entry/buff-type/applicable.d.ts +16 -0
  345. package/engine/object-data/entry/buff-type/applicable.lua +377 -0
  346. package/engine/object-data/entry/buff-type/blank.d.ts +8 -0
  347. package/engine/object-data/entry/buff-type/blank.lua +17 -0
  348. package/engine/object-data/entry/buff-type.d.ts +64 -0
  349. package/engine/object-data/entry/buff-type.lua +316 -0
  350. package/engine/object-data/entry/destructible-type.d.ts +21 -0
  351. package/engine/object-data/entry/destructible-type.lua +83 -0
  352. package/engine/object-data/entry/item-type/blank.d.ts +8 -0
  353. package/engine/object-data/entry/item-type/blank.lua +21 -0
  354. package/engine/object-data/entry/item-type.d.ts +49 -0
  355. package/engine/object-data/entry/item-type.lua +259 -0
  356. package/engine/object-data/entry/lightning-type.d.ts +37 -0
  357. package/engine/object-data/entry/lightning-type.lua +191 -0
  358. package/engine/object-data/entry/unit-type/blank.d.ts +6 -0
  359. package/engine/object-data/entry/unit-type/blank.lua +13 -0
  360. package/engine/object-data/entry/unit-type.d.ts +218 -0
  361. package/engine/object-data/entry/unit-type.lua +1306 -0
  362. package/engine/object-data/entry/upgrade/blank.d.ts +8 -0
  363. package/engine/object-data/entry/upgrade/blank.lua +22 -0
  364. package/engine/object-data/entry/upgrade.d.ts +59 -0
  365. package/engine/object-data/entry/upgrade.lua +238 -0
  366. package/engine/object-data/entry.d.ts +80 -0
  367. package/engine/object-data/entry.lua +634 -0
  368. package/engine/object-data/utility/object-data-entry-id-generator.d.ts +6 -0
  369. package/engine/object-data/utility/object-data-entry-id-generator.lua +63 -0
  370. package/engine/object-data/utility/order-type-string-id-factory.d.ts +9 -0
  371. package/engine/object-data/utility/order-type-string-id-factory.lua +368 -0
  372. package/engine/object-field/ability.d.ts +115 -0
  373. package/engine/object-field/ability.lua +471 -0
  374. package/engine/object-field/unit.d.ts +15 -0
  375. package/engine/object-field/unit.lua +49 -0
  376. package/engine/object-field.d.ts +84 -0
  377. package/engine/object-field.lua +444 -0
  378. package/engine/random.d.ts +10 -0
  379. package/engine/random.lua +9 -0
  380. package/engine/standard/entries/ability-type.d.ts +8 -0
  381. package/engine/standard/entries/ability-type.lua +8 -0
  382. package/engine/standard/entries/lightning-type.d.ts +16 -0
  383. package/engine/standard/entries/lightning-type.lua +16 -0
  384. package/engine/standard/entries/unit-type.d.ts +63 -0
  385. package/engine/standard/entries/unit-type.lua +63 -0
  386. package/engine/standard/entries/upgrade.d.ts +92 -0
  387. package/engine/standard/entries/upgrade.lua +92 -0
  388. package/engine/standard/fields/ability.d.ts +737 -0
  389. package/engine/standard/fields/ability.lua +749 -0
  390. package/engine/standard/pathing-textures.d.ts +6 -0
  391. package/engine/standard/pathing-textures.lua +7 -0
  392. package/engine/text-tag.d.ts +25 -0
  393. package/engine/text-tag.lua +109 -0
  394. package/engine/unit.d.ts +20 -0
  395. package/engine/unit.lua +31 -0
  396. package/event.d.ts +53 -0
  397. package/event.lua +269 -0
  398. package/exception.d.ts +17 -0
  399. package/exception.lua +53 -0
  400. package/file.d.ts +4 -0
  401. package/file.lua +42 -0
  402. package/global/math.d.ts +21 -0
  403. package/global/math.lua +72 -0
  404. package/global/vec2.d.ts +66 -0
  405. package/global/vec2.lua +159 -0
  406. package/index.d.ts +8 -0
  407. package/index.lua +9 -0
  408. package/lualib_bundle.lua +2629 -0
  409. package/math/vec2.d.ts +18 -0
  410. package/math/vec2.lua +42 -0
  411. package/math.d.ts +39 -0
  412. package/math.lua +91 -0
  413. package/net/signal.d.ts +11 -0
  414. package/net/signal.lua +56 -0
  415. package/net/socket.d.ts +9 -0
  416. package/net/socket.lua +26 -0
  417. package/network.d.ts +31 -0
  418. package/network.lua +194 -0
  419. package/objutil/ability.d.ts +710 -0
  420. package/objutil/ability.lua +3781 -0
  421. package/objutil/buff.d.ts +110 -0
  422. package/objutil/buff.lua +769 -0
  423. package/objutil/dummy.d.ts +2 -0
  424. package/objutil/dummy.lua +49 -0
  425. package/objutil/idgen.d.ts +9 -0
  426. package/objutil/idgen.lua +92 -0
  427. package/objutil/item.d.ts +38 -0
  428. package/objutil/item.lua +254 -0
  429. package/objutil/object.d.ts +43 -0
  430. package/objutil/object.lua +213 -0
  431. package/objutil/unit.d.ts +134 -0
  432. package/objutil/unit.lua +913 -0
  433. package/objutil/upgrade.d.ts +22 -0
  434. package/objutil/upgrade.lua +127 -0
  435. package/operation.d.ts +35 -0
  436. package/operation.lua +179 -0
  437. package/package.json +47 -0
  438. package/patch-lualib.d.ts +2 -0
  439. package/patch-lualib.lua +67 -0
  440. package/patch-natives.d.ts +11 -0
  441. package/patch-natives.lua +14 -0
  442. package/string.d.ts +106 -0
  443. package/string.lua +34 -0
  444. package/time/dayOfWeek.d.ts +97 -0
  445. package/time/dayOfWeek.lua +53 -0
  446. package/time/localDate.d.ts +145 -0
  447. package/time/localDate.lua +236 -0
  448. package/time/localDateTime.d.ts +133 -0
  449. package/time/localDateTime.lua +154 -0
  450. package/time/localTime.d.ts +87 -0
  451. package/time/localTime.lua +91 -0
  452. package/time/month.d.ts +146 -0
  453. package/time/month.lua +129 -0
  454. package/time/year.d.ts +117 -0
  455. package/time/year.lua +81 -0
  456. package/types.d.ts +13 -0
  457. package/types.lua +0 -0
  458. package/util/objectPool.d.ts +6 -0
  459. package/util/objectPool.lua +28 -0
  460. package/util/stream.d.ts +29 -0
  461. package/util/stream.lua +453 -0
  462. package/util/stringBuilder.d.ts +8 -0
  463. package/util/stringBuilder.lua +25 -0
  464. package/utility/arrays.d.ts +57 -0
  465. package/utility/arrays.lua +369 -0
  466. package/utility/base64.d.ts +23 -0
  467. package/utility/base64.lua +177 -0
  468. package/utility/bit-set.d.ts +18 -0
  469. package/utility/bit-set.lua +12 -0
  470. package/utility/functions.d.ts +5 -0
  471. package/utility/functions.lua +90 -0
  472. package/utility/json.d.ts +2 -0
  473. package/utility/json.lua +400 -0
  474. package/utility/linked-set.d.ts +49 -0
  475. package/utility/linked-set.lua +181 -0
  476. package/utility/lua-maps.d.ts +6 -0
  477. package/utility/lua-maps.lua +25 -0
  478. package/utility/lua-sets.d.ts +6 -0
  479. package/utility/lua-sets.lua +37 -0
  480. package/utility/lzw.d.ts +2 -0
  481. package/utility/lzw.lua +161 -0
  482. package/utility/observable-array.d.ts +17 -0
  483. package/utility/observable-array.lua +30 -0
  484. package/utility/preconditions.d.ts +23 -0
  485. package/utility/preconditions.lua +58 -0
  486. package/utility/records.d.ts +3 -0
  487. package/utility/records.lua +9 -0
  488. package/utility/reflection.d.ts +4 -0
  489. package/utility/reflection.lua +31 -0
  490. package/utility/strings.d.ts +2 -0
  491. package/utility/strings.lua +44 -0
  492. package/utility/types.d.ts +39 -0
  493. package/utility/types.lua +2 -0
@@ -0,0 +1,8 @@
1
+ /// <reference types="warpack-types/warpack" />
2
+ /** @noSelfInFile */
3
+ import { Upgrade, UpgradeId } from "../upgrade";
4
+ export declare class BlankUpgrade extends Upgrade {
5
+ static readonly BASE_ID: UpgradeId;
6
+ protected static readonly IS_SYNTHETIC = true;
7
+ constructor(object: WarObject);
8
+ }
@@ -0,0 +1,22 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local ____exports = {}
5
+ local ____upgrade = require("engine.object-data.entry.upgrade")
6
+ local Upgrade = ____upgrade.Upgrade
7
+ ____exports.BlankUpgrade = __TS__Class()
8
+ local BlankUpgrade = ____exports.BlankUpgrade
9
+ BlankUpgrade.name = "BlankUpgrade"
10
+ __TS__ClassExtends(BlankUpgrade, Upgrade)
11
+ function BlankUpgrade.prototype.____constructor(self, object)
12
+ Upgrade.prototype.____constructor(self, object)
13
+ self.iconPath = ""
14
+ self.hotkey = ""
15
+ self.name = ""
16
+ self.tooltipText = ""
17
+ self.tooltipExtendedText = ""
18
+ self.techTreeDependencies = {}
19
+ end
20
+ BlankUpgrade.BASE_ID = fourCC("Rhsb")
21
+ BlankUpgrade.IS_SYNTHETIC = true
22
+ return ____exports
@@ -0,0 +1,59 @@
1
+ /// <reference types="warpack-types/warpack" />
2
+ /** @noSelfInFile */
3
+ import { TupleOf } from "../../../utility/types";
4
+ import { TechTreeDependency, TechTreeDependencyInput } from "../auxiliary/tech-tree-dependency";
5
+ import { ObjectDataEntry, ObjectDataEntryId, ObjectDataEntryLevelFieldValueSupplier } from "../entry";
6
+ import { AbilityTypeId } from "./ability-type";
7
+ export type UpgradeId = ObjectDataEntryId & {
8
+ readonly __upgradeId: unique symbol;
9
+ };
10
+ export declare const enum UpgradeEffectType {
11
+ ABILITY_LEVEL_BONUS = "rlev",
12
+ ADD_ULTRAVISION = "rauv",
13
+ APPLY_AUTO_ATTACK_UPGRADE_BONUS = "ratt",
14
+ APPLY_ARMOR_UPGRADE_BONUS = "rarm",
15
+ AUTO_ATTACK_TARGET_COUNT_BONUS = "ratc"
16
+ }
17
+ export type UpgradeEffect = {
18
+ type: UpgradeEffectType.ADD_ULTRAVISION | UpgradeEffectType.APPLY_AUTO_ATTACK_UPGRADE_BONUS | UpgradeEffectType.APPLY_ARMOR_UPGRADE_BONUS;
19
+ bonusBase: undefined;
20
+ bonusIncrement: undefined;
21
+ abilityTypeId: undefined;
22
+ } | {
23
+ type: UpgradeEffectType.ABILITY_LEVEL_BONUS;
24
+ bonusBase: number;
25
+ bonusIncrement: number;
26
+ abilityTypeId: AbilityTypeId;
27
+ } | {
28
+ type: UpgradeEffectType.AUTO_ATTACK_TARGET_COUNT_BONUS;
29
+ bonusBase: number;
30
+ bonusIncrement: number;
31
+ abilityTypeId: undefined;
32
+ };
33
+ export declare abstract class Upgrade extends ObjectDataEntry<UpgradeId> {
34
+ private static readonly idGenerator;
35
+ protected static generateId(): number;
36
+ protected static getObjectData(map: WarMap): WarObjects;
37
+ get buttonPositionX(): number;
38
+ set buttonPositionX(buttonPositionX: number);
39
+ get buttonPositionY(): number;
40
+ set buttonPositionY(buttonPositionY: number);
41
+ get iconPath(): string[];
42
+ set iconPath(iconPath: ObjectDataEntryLevelFieldValueSupplier<string>);
43
+ get effects(): TupleOf<UpgradeEffect, 0 | 1 | 2 | 3 | 4>;
44
+ set effects(effects: TupleOf<UpgradeEffect, 0 | 1 | 2 | 3 | 4>);
45
+ get levelCount(): number;
46
+ set levelCount(levelCount: number);
47
+ get techTreeDependencies(): TechTreeDependency[][];
48
+ set techTreeDependencies(techTreeDependencies: ObjectDataEntryLevelFieldValueSupplier<TechTreeDependencyInput[]>);
49
+ get hotkey(): string[];
50
+ set hotkey(hotkey: ObjectDataEntryLevelFieldValueSupplier<string>);
51
+ get name(): string[];
52
+ set name(name: ObjectDataEntryLevelFieldValueSupplier<string>);
53
+ get tooltipText(): string[];
54
+ set tooltipText(tooltipText: ObjectDataEntryLevelFieldValueSupplier<string>);
55
+ get tooltipExtendedText(): string[];
56
+ set tooltipExtendedText(tooltipExtendedText: ObjectDataEntryLevelFieldValueSupplier<string>);
57
+ private getEffect;
58
+ private setEffect;
59
+ }
@@ -0,0 +1,238 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local __TS__New = ____lualib.__TS__New
5
+ local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
6
+ local ____exports = {}
7
+ local ____arrays = require("utility.arrays")
8
+ local map = ____arrays.map
9
+ local mapIndexed = ____arrays.mapIndexed
10
+ local ____tech_2Dtree_2Ddependency = require("engine.object-data.auxiliary.tech-tree-dependency")
11
+ local extractTechTreeDependencyInputLevel = ____tech_2Dtree_2Ddependency.extractTechTreeDependencyInputLevel
12
+ local extractTechTreeDependencyInputObjectDataEntryId = ____tech_2Dtree_2Ddependency.extractTechTreeDependencyInputObjectDataEntryId
13
+ local ____entry = require("engine.object-data.entry")
14
+ local extractObjectDataEntryLevelArrayFieldValue = ____entry.extractObjectDataEntryLevelArrayFieldValue
15
+ local ObjectDataEntry = ____entry.ObjectDataEntry
16
+ local ____object_2Ddata_2Dentry_2Did_2Dgenerator = require("engine.object-data.utility.object-data-entry-id-generator")
17
+ local ObjectDataEntryIdGenerator = ____object_2Ddata_2Dentry_2Did_2Dgenerator.ObjectDataEntryIdGenerator
18
+ ____exports.Upgrade = __TS__Class()
19
+ local Upgrade = ____exports.Upgrade
20
+ Upgrade.name = "Upgrade"
21
+ __TS__ClassExtends(Upgrade, ObjectDataEntry)
22
+ function Upgrade.generateId(self)
23
+ return self.idGenerator:next()
24
+ end
25
+ function Upgrade.getObjectData(self, map)
26
+ return map.objects.upgrade
27
+ end
28
+ function Upgrade.prototype.getEffect(self, i)
29
+ local effectType = self:getStringField("gef" .. tostring(i))
30
+ if effectType == "rlev" then
31
+ return {
32
+ type = effectType,
33
+ bonusBase = self:getNumberField("gba" .. tostring(i)),
34
+ bonusIncrement = self:getNumberField("gmo" .. tostring(i)),
35
+ abilityTypeId = self:getObjectDataEntryIdField("gco" .. tostring(i))
36
+ }
37
+ end
38
+ return nil
39
+ end
40
+ function Upgrade.prototype.setEffect(self, i, effect)
41
+ self:setStringField(
42
+ "gef" .. tostring(i),
43
+ effect and effect.type or "_"
44
+ )
45
+ self:setNumberField(
46
+ "gba" .. tostring(i),
47
+ effect and effect.bonusBase or 0
48
+ )
49
+ self:setNumberField(
50
+ "gmo" .. tostring(i),
51
+ effect and effect.bonusIncrement or 0
52
+ )
53
+ if (effect and effect.abilityTypeId) ~= nil then
54
+ self:setObjectDataEntryIdField(
55
+ "gco" .. tostring(i),
56
+ effect and effect.abilityTypeId
57
+ )
58
+ else
59
+ self:setStringField(
60
+ "gco" .. tostring(i),
61
+ ""
62
+ )
63
+ end
64
+ end
65
+ Upgrade.idGenerator = __TS__New(
66
+ ObjectDataEntryIdGenerator,
67
+ fourCC("R000")
68
+ )
69
+ __TS__SetDescriptor(
70
+ Upgrade.prototype,
71
+ "buttonPositionX",
72
+ {
73
+ get = function(self)
74
+ return self:getNumberField("gbpx")
75
+ end,
76
+ set = function(self, buttonPositionX)
77
+ self:setNumberField("gbpx", buttonPositionX)
78
+ end
79
+ },
80
+ true
81
+ )
82
+ __TS__SetDescriptor(
83
+ Upgrade.prototype,
84
+ "buttonPositionY",
85
+ {
86
+ get = function(self)
87
+ return self:getNumberField("gbpy")
88
+ end,
89
+ set = function(self, buttonPositionY)
90
+ self:setNumberField("gbpy", buttonPositionY)
91
+ end
92
+ },
93
+ true
94
+ )
95
+ __TS__SetDescriptor(
96
+ Upgrade.prototype,
97
+ "iconPath",
98
+ {
99
+ get = function(self)
100
+ return self:getStringLevelField("gar1")
101
+ end,
102
+ set = function(self, iconPath)
103
+ self:setStringLevelField("gar1", iconPath)
104
+ end
105
+ },
106
+ true
107
+ )
108
+ __TS__SetDescriptor(
109
+ Upgrade.prototype,
110
+ "effects",
111
+ {
112
+ get = function(self)
113
+ local effects = {}
114
+ for i = 1, 4 do
115
+ local effect = self:getEffect(i)
116
+ if effect ~= nil then
117
+ effects[#effects + 1] = effect
118
+ end
119
+ end
120
+ return effects
121
+ end,
122
+ set = function(self, effects)
123
+ for i = 1, 4 do
124
+ self:setEffect(i, effects[i])
125
+ end
126
+ end
127
+ },
128
+ true
129
+ )
130
+ __TS__SetDescriptor(
131
+ Upgrade.prototype,
132
+ "levelCount",
133
+ {
134
+ get = function(self)
135
+ return self:getNumberField("glvl")
136
+ end,
137
+ set = function(self, levelCount)
138
+ self:setNumberField("glvl", levelCount)
139
+ end
140
+ },
141
+ true
142
+ )
143
+ __TS__SetDescriptor(
144
+ Upgrade.prototype,
145
+ "techTreeDependencies",
146
+ {
147
+ get = function(self)
148
+ local techTreeDependencyIds = self:getObjectDataEntryIdsLevelField("greq")
149
+ local techTreeDependencyInternalLevels = self:getNumbersLevelField("grqc")
150
+ return mapIndexed(
151
+ techTreeDependencyIds,
152
+ function(level, levelTechTreeDependencyIds)
153
+ local levelTechTreeDependencyInternalLevels = techTreeDependencyInternalLevels[level + 1] or ({})
154
+ return mapIndexed(
155
+ levelTechTreeDependencyIds,
156
+ function(index, levelTechTreeDependencyId)
157
+ local levelTechTreeDependencyInternalLevel = levelTechTreeDependencyInternalLevels[index + 1] or 1
158
+ if #____exports.Upgrade:getAllIdsByBaseIds(levelTechTreeDependencyId) ~= 0 then
159
+ return {upgradeId = levelTechTreeDependencyId, level = levelTechTreeDependencyInternalLevel - 1}
160
+ else
161
+ return {unitTypeId = levelTechTreeDependencyId}
162
+ end
163
+ end
164
+ )
165
+ end
166
+ )
167
+ end,
168
+ set = function(self, techTreeDependencies)
169
+ local currentTechTreeDependencies = self.techTreeDependencies
170
+ local techTreeDependencyIds = {}
171
+ local techTreeDependencyInternalLevels = {}
172
+ for level = 0, self.levelCount - 1 do
173
+ local levelTechTreeDependencies = extractObjectDataEntryLevelArrayFieldValue(techTreeDependencies, level, currentTechTreeDependencies[level + 1])
174
+ techTreeDependencyIds[level + 1] = map(levelTechTreeDependencies, extractTechTreeDependencyInputObjectDataEntryId)
175
+ techTreeDependencyInternalLevels[level + 1] = map(
176
+ map(levelTechTreeDependencies, extractTechTreeDependencyInputLevel),
177
+ function(level) return level + 1 end
178
+ )
179
+ end
180
+ self:setObjectDataEntryIdsLevelField("greq", techTreeDependencyIds)
181
+ self:setNumbersLevelField("grqc", techTreeDependencyInternalLevels)
182
+ end
183
+ },
184
+ true
185
+ )
186
+ __TS__SetDescriptor(
187
+ Upgrade.prototype,
188
+ "hotkey",
189
+ {
190
+ get = function(self)
191
+ return self:getStringLevelField("ghk1")
192
+ end,
193
+ set = function(self, hotkey)
194
+ self:setStringLevelField("ghk1", hotkey)
195
+ end
196
+ },
197
+ true
198
+ )
199
+ __TS__SetDescriptor(
200
+ Upgrade.prototype,
201
+ "name",
202
+ {
203
+ get = function(self)
204
+ return self:getStringLevelField("gnam")
205
+ end,
206
+ set = function(self, name)
207
+ self:setStringLevelField("gnam", name)
208
+ end
209
+ },
210
+ true
211
+ )
212
+ __TS__SetDescriptor(
213
+ Upgrade.prototype,
214
+ "tooltipText",
215
+ {
216
+ get = function(self)
217
+ return self:getStringLevelField("gtp1")
218
+ end,
219
+ set = function(self, tooltipText)
220
+ self:setStringLevelField("gtp1", tooltipText)
221
+ end
222
+ },
223
+ true
224
+ )
225
+ __TS__SetDescriptor(
226
+ Upgrade.prototype,
227
+ "tooltipExtendedText",
228
+ {
229
+ get = function(self)
230
+ return self:getStringLevelField("gub1")
231
+ end,
232
+ set = function(self, tooltipExtendedText)
233
+ self:setStringLevelField("gub1", tooltipExtendedText)
234
+ end
235
+ },
236
+ true
237
+ )
238
+ return ____exports
@@ -0,0 +1,80 @@
1
+ /// <reference types="warpack-types/warpack" />
2
+ /** @noSelfInFile */
3
+ import { AttachmentPreset, AttachmentPresetInput } from "./auxiliary/attachment-preset";
4
+ import { MutableKeys } from "../../utility/types";
5
+ export type ObjectDataEntryId = number & {
6
+ readonly __objectDataEntryId: unique symbol;
7
+ };
8
+ export type ObjectDataEntryIdType<T extends ObjectDataEntry> = T extends ObjectDataEntry<infer Id> ? Id : never;
9
+ export type ObjectDataEntryConstructor<T extends ObjectDataEntry> = OmitConstructor<typeof ObjectDataEntry> & (new (object: WarObject) => T);
10
+ export type ObjectDataEntryAbstractConstructor<T extends ObjectDataEntry> = OmitConstructor<typeof ObjectDataEntry> & (abstract new (object: WarObject) => T);
11
+ export type ObjectDataEntryProperties<T extends ObjectDataEntry> = Partial<T[MutableKeys<T>]>;
12
+ export type ObjectDataEntryLevelFieldValueSupplier<ValueType extends string | number | boolean | undefined | Record<string, any>, InputValueType = ValueType> = ValueType | readonly ValueType[] | ((level: number, currentValue: InputValueType) => ValueType);
13
+ export declare const extractObjectDataEntryLevelFieldValue: <ValueType extends string | number | boolean | Record<string, any> | undefined, InputValueType = ValueType>(supplier: ObjectDataEntryLevelFieldValueSupplier<ValueType, InputValueType>, level: number, currentValue: InputValueType) => ValueType;
14
+ export declare const extractObjectDataEntryLevelArrayFieldValue: <T extends string | number | boolean | Record<string, any> | undefined, S extends T[]>(supplier: ObjectDataEntryLevelFieldValueSupplier<S, S>, level: number, currentValue: S) => S;
15
+ export declare abstract class ObjectDataEntry<Id extends ObjectDataEntryId = ObjectDataEntryId> {
16
+ protected readonly object: WarObject;
17
+ static readonly BASE_ID: ObjectDataEntryId;
18
+ protected static readonly IS_SYNTHETIC: boolean;
19
+ private readonly levelFieldParametersByField;
20
+ private readonly maxAffectedLevelByField;
21
+ private _isInternal;
22
+ get isInternal(): boolean;
23
+ protected static generateId(): number;
24
+ protected static getObjectData(map: WarMap): WarObjects;
25
+ static getAllIdsByBaseIds<T extends ObjectDataEntry>(this: ObjectDataEntryAbstractConstructor<T>, baseIds: number | number[]): ObjectDataEntryIdType<T>[];
26
+ static create<T extends ObjectDataEntry>(this: ObjectDataEntryConstructor<T>, ...args: [id?: number, properties?: ObjectDataEntryProperties<T>] | [properties: ObjectDataEntryProperties<T>]): T;
27
+ static getAllByBaseIds<T extends ObjectDataEntry>(this: ObjectDataEntryAbstractConstructor<T>, baseIds: number | number[]): T[];
28
+ static getAll<T extends ObjectDataEntry>(this: ObjectDataEntryAbstractConstructor<T>): T[];
29
+ static of<T extends ObjectDataEntry>(this: ObjectDataEntryAbstractConstructor<T>, id: number): T | undefined;
30
+ constructor(object: WarObject);
31
+ get id(): Id;
32
+ get baseId(): Id;
33
+ get isCustom(): boolean;
34
+ getFieldValue<This extends this, Args extends any[], T>(this: This, field: {
35
+ getValue(entry: This, ...args: Args): T;
36
+ }, ...args: Args): T;
37
+ setFieldValue<This extends this, Args extends any[]>(this: This, field: {
38
+ setValue(entry: This, ...args: Args): boolean;
39
+ }, ...args: Args): void;
40
+ protected getBooleanField(field: string): boolean;
41
+ protected setBooleanField(field: string, value: boolean): void;
42
+ protected getNumberField(field: string): number;
43
+ protected setNumberField(field: string, value: number): void;
44
+ protected getStringField(field: string): string;
45
+ protected setStringField(field: string, value: string): void;
46
+ protected getObjectDataEntryIdField<Id extends ObjectDataEntryId>(field: string): Id;
47
+ protected setObjectDataEntryIdField<Id extends ObjectDataEntryId>(field: string, value: Id): void;
48
+ protected getAttachmentPresetField(modelPathField: string, nodeFQNField: string): AttachmentPreset | undefined;
49
+ protected setAttachmentPresetField(modelPathField: string, nodeFQNField: string, attachmentPreset: AttachmentPresetInput | undefined): void;
50
+ protected getBooleansField(field: string): boolean[];
51
+ protected setBooleansField(field: string, values: boolean[]): void;
52
+ protected getNumbersField(field: string): number[];
53
+ protected setNumbersField(field: string, values: number[]): void;
54
+ protected getStringsField(field: string): string[];
55
+ protected setStringsField(field: string, values: string[]): void;
56
+ protected getObjectDataEntryIdsField<Id extends ObjectDataEntryId>(field: string): Id[];
57
+ protected setObjectDataEntryIdsField<Id extends ObjectDataEntryId>(field: string, values: Id[]): void;
58
+ protected getAttachmentPresetListField(modelPathListField: string, nodeFQNFields: string[]): AttachmentPreset[];
59
+ protected setAttachmentPresetListField(modelPathListField: string, nodeFQNFields: string[], lengthField: string, attachmentPresets: AttachmentPresetInput[]): void;
60
+ protected setFlagLevelFieldValue(fieldId: string, flag: 1 | 2 | 4 | 8 | 16, supplier: ObjectDataEntryLevelFieldValueSupplier<boolean>): void;
61
+ protected getFlagLevelFieldValue(fieldId: string, flag: 1 | 2 | 4 | 8 | 16): boolean[];
62
+ protected getBooleanLevelField(field: string): boolean[];
63
+ protected setBooleanLevelField(field: string, values: ObjectDataEntryLevelFieldValueSupplier<boolean>): void;
64
+ protected getNumberLevelField(field: string): number[];
65
+ protected setNumberLevelField(field: string, values: ObjectDataEntryLevelFieldValueSupplier<number>): void;
66
+ protected getStringLevelField(field: string): string[];
67
+ protected setStringLevelField(field: string, values: ObjectDataEntryLevelFieldValueSupplier<string>): void;
68
+ protected getObjectDataEntryIdLevelField<Id extends ObjectDataEntryId>(field: string): Id[];
69
+ protected setObjectDataEntryIdLevelField<Id extends ObjectDataEntryId>(field: string, values: ObjectDataEntryLevelFieldValueSupplier<Id>): void;
70
+ protected getBooleansLevelField(field: string): boolean[][];
71
+ protected setBooleansLevelField(field: string, values: ObjectDataEntryLevelFieldValueSupplier<boolean[]>): void;
72
+ protected getNumbersLevelField(field: string): number[][];
73
+ protected setNumbersLevelField(field: string, values: ObjectDataEntryLevelFieldValueSupplier<number[]>): void;
74
+ protected getStringsLevelField(field: string): string[][];
75
+ protected setStringsLevelField(field: string, values: ObjectDataEntryLevelFieldValueSupplier<string[]>): void;
76
+ protected getObjectDataEntryIdsLevelField<T extends ObjectDataEntryId>(field: string): T[][];
77
+ protected setObjectDataEntryIdsLevelField<T extends ObjectDataEntryId>(field: string, values: ObjectDataEntryLevelFieldValueSupplier<T[]>): void;
78
+ private getLevelField;
79
+ private setLevelField;
80
+ }