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,154 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__New = ____lualib.__TS__New
4
+ local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
5
+ local ____exports = {}
6
+ local ____localDate = require("time.localDate")
7
+ local LocalDate = ____localDate.LocalDate
8
+ local ____localTime = require("time.localTime")
9
+ local LocalTime = ____localTime.LocalTime
10
+ local date = os.date
11
+ local pack = string.pack
12
+ local cache = {}
13
+ ____exports.LocalDateTime = __TS__Class()
14
+ local LocalDateTime = ____exports.LocalDateTime
15
+ LocalDateTime.name = "LocalDateTime"
16
+ function LocalDateTime.prototype.____constructor(self, date, time, key)
17
+ self.date = date
18
+ self.time = time
19
+ self.key = key
20
+ cache[key] = self
21
+ end
22
+ function LocalDateTime.now()
23
+ local info = date("*t")
24
+ return ____exports.LocalDateTime:of(
25
+ info.year,
26
+ info.month,
27
+ info.day,
28
+ info.hour,
29
+ info.min,
30
+ info.sec
31
+ )
32
+ end
33
+ function LocalDateTime.of(self, year, month, dayOfMonth, hour, minute, second)
34
+ month = type(month) == "number" and month or month.value
35
+ local key = pack(
36
+ ">i4BBBBB",
37
+ year,
38
+ month,
39
+ dayOfMonth,
40
+ hour,
41
+ minute,
42
+ second
43
+ )
44
+ return cache[key] or __TS__New(
45
+ ____exports.LocalDateTime,
46
+ LocalDate:of(year, month, dayOfMonth),
47
+ LocalTime:of(hour, minute, second),
48
+ key
49
+ )
50
+ end
51
+ function LocalDateTime.ofEpochSecond(self, epochSecond)
52
+ local info = date("*t", epochSecond)
53
+ return ____exports.LocalDateTime:of(
54
+ info.year,
55
+ info.month,
56
+ info.day,
57
+ info.hour,
58
+ info.min,
59
+ info.sec
60
+ )
61
+ end
62
+ function LocalDateTime.deserialize(self, reader)
63
+ return ____exports.LocalDateTime:of(
64
+ reader:readInt32(),
65
+ reader:readUInt8(),
66
+ reader:readUInt8(),
67
+ reader:readUInt8(),
68
+ reader:readUInt8(),
69
+ reader:readUInt8()
70
+ )
71
+ end
72
+ function LocalDateTime.prototype.serialize(self, writer)
73
+ writer:writeBytes(self.key)
74
+ end
75
+ function LocalDateTime.prototype.toLocalDate(self)
76
+ return self.date
77
+ end
78
+ function LocalDateTime.prototype.toLocalTime(self)
79
+ return self.time
80
+ end
81
+ function LocalDateTime.prototype.__tostring(self)
82
+ return (tostring(self.date) .. "T") .. tostring(self.time)
83
+ end
84
+ function LocalDateTime.prototype.__lt(self, other)
85
+ return self.date <= other.date and (self.date ~= other.date or self.time < other.time)
86
+ end
87
+ function LocalDateTime.prototype.__le(self, other)
88
+ return self.date <= other.date and (self.date ~= other.date or self.time <= other.time)
89
+ end
90
+ __TS__SetDescriptor(
91
+ LocalDateTime.prototype,
92
+ "year",
93
+ {get = function(self)
94
+ return self.date.year
95
+ end},
96
+ true
97
+ )
98
+ __TS__SetDescriptor(
99
+ LocalDateTime.prototype,
100
+ "month",
101
+ {get = function(self)
102
+ return self.date.month
103
+ end},
104
+ true
105
+ )
106
+ __TS__SetDescriptor(
107
+ LocalDateTime.prototype,
108
+ "dayOfMonth",
109
+ {get = function(self)
110
+ return self.date.dayOfMonth
111
+ end},
112
+ true
113
+ )
114
+ __TS__SetDescriptor(
115
+ LocalDateTime.prototype,
116
+ "dayOfYear",
117
+ {get = function(self)
118
+ return self.date.dayOfYear
119
+ end},
120
+ true
121
+ )
122
+ __TS__SetDescriptor(
123
+ LocalDateTime.prototype,
124
+ "dayOfWeek",
125
+ {get = function(self)
126
+ return self.date.dayOfWeek
127
+ end},
128
+ true
129
+ )
130
+ __TS__SetDescriptor(
131
+ LocalDateTime.prototype,
132
+ "hour",
133
+ {get = function(self)
134
+ return self.time.hour
135
+ end},
136
+ true
137
+ )
138
+ __TS__SetDescriptor(
139
+ LocalDateTime.prototype,
140
+ "minute",
141
+ {get = function(self)
142
+ return self.time.minute
143
+ end},
144
+ true
145
+ )
146
+ __TS__SetDescriptor(
147
+ LocalDateTime.prototype,
148
+ "second",
149
+ {get = function(self)
150
+ return self.time.second
151
+ end},
152
+ true
153
+ )
154
+ return ____exports
@@ -0,0 +1,87 @@
1
+ /** @noSelfInFile */
2
+ import { BinaryReader } from "../binaryreader";
3
+ import { BinaryWriter } from "../binarywriter";
4
+ export declare class LocalTime {
5
+ readonly hour: number;
6
+ readonly minute: number;
7
+ readonly second: number;
8
+ private readonly key;
9
+ /**
10
+ * The minimum supported {@code LocalTime}, '00:00'.
11
+ * This is the time of midnight at the start of the day.
12
+ */
13
+ static readonly MIN: LocalTime;
14
+ /**
15
+ * The maximum supported {@code LocalTime}, '23:59:59'.
16
+ * This is the time just before midnight at the end of the day.
17
+ */
18
+ static readonly MAX: LocalTime;
19
+ /**
20
+ * The time of midnight at the start of the day, '00:00'.
21
+ */
22
+ static readonly MIDNIGHT: LocalTime;
23
+ /**
24
+ * The time of noon in the middle of the day, '12:00'.
25
+ */
26
+ static readonly NOON: LocalTime;
27
+ /**
28
+ * Hours per day.
29
+ */
30
+ static readonly HOURS_PER_DAY = 24;
31
+ /**
32
+ * Minutes per hour.
33
+ */
34
+ static readonly MINUTES_PER_HOUR = 60;
35
+ /**
36
+ * Minutes per day.
37
+ */
38
+ static readonly MINUTES_PER_DAY: number;
39
+ /**
40
+ * Seconds per minute.
41
+ */
42
+ static readonly SECONDS_PER_MINUTE = 60;
43
+ /**
44
+ * Seconds per hour.
45
+ */
46
+ static readonly SECONDS_PER_HOUR: number;
47
+ /**
48
+ * Seconds per day.
49
+ */
50
+ static readonly SECONDS_PER_DAY: number;
51
+ private constructor();
52
+ /**
53
+ * Obtains the current time from the system clock in the default time-zone.
54
+ *
55
+ * @return the current time using the system clock and default time-zone
56
+ */
57
+ static now(): LocalTime;
58
+ /**
59
+ * Obtains an instance of {@code LocalTime} from an hour, minute and second.
60
+ * <p>
61
+ * This returns a {@code LocalTime} with the specified hour, minute and second.
62
+ *
63
+ * @param hour the hour-of-day to represent, from 0 to 23
64
+ * @param minute the minute-of-hour to represent, from 0 to 59
65
+ * @param second the second-of-minute to represent, from 0 to 59
66
+ * @return the local time
67
+ */
68
+ static of(hour: number, minute: number, second?: number): LocalTime;
69
+ static deserialize(reader: BinaryReader): LocalTime;
70
+ serialize(writer: BinaryWriter): void;
71
+ /**
72
+ * Outputs this time as a {@code String}, such as {@code 10:15}.
73
+ * <p>
74
+ * The output will be one of the following ISO-8601 formats:
75
+ * <ul>
76
+ * <li>{@code HH:mm}</li>
77
+ * <li>{@code HH:mm:ss}</li>
78
+ * </ul>
79
+ * The format used will be the shortest that outputs the full value of
80
+ * the time where the omitted parts are implied to be zero.
81
+ *
82
+ * @return a string representation of this time
83
+ */
84
+ toString(): string;
85
+ private __lt;
86
+ private __le;
87
+ }
@@ -0,0 +1,91 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__New = ____lualib.__TS__New
4
+ local ____exports = {}
5
+ local ____stringBuilder = require("util.stringBuilder")
6
+ local StringBuilder = ____stringBuilder.StringBuilder
7
+ local date = os.date
8
+ local pack = string.pack
9
+ local cache = setmetatable({}, {__mode = "v"})
10
+ ____exports.LocalTime = __TS__Class()
11
+ local LocalTime = ____exports.LocalTime
12
+ LocalTime.name = "LocalTime"
13
+ function LocalTime.prototype.____constructor(self, hour, minute, second, key)
14
+ self.hour = hour
15
+ self.minute = minute
16
+ self.second = second
17
+ self.key = key
18
+ assert(math.type(hour) == "integer" and hour >= 0 and hour <= 23)
19
+ assert(math.type(minute) == "integer" and minute >= 0 and minute <= 59)
20
+ assert(math.type(second) == "integer" and second >= 0 and second <= 59)
21
+ cache[key] = self
22
+ end
23
+ function LocalTime.now(self)
24
+ local info = date("*t")
25
+ return ____exports.LocalTime:of(info.hour, info.min, info.sec)
26
+ end
27
+ function LocalTime.of(self, hour, minute, second)
28
+ if second == nil then
29
+ second = 0
30
+ end
31
+ local key = pack(">BBB", hour, minute, second)
32
+ return cache[key] or __TS__New(
33
+ ____exports.LocalTime,
34
+ hour,
35
+ minute,
36
+ second,
37
+ key
38
+ )
39
+ end
40
+ function LocalTime.deserialize(self, reader)
41
+ return ____exports.LocalTime:of(
42
+ reader:readUInt8(),
43
+ reader:readUInt8(),
44
+ reader:readUInt8()
45
+ )
46
+ end
47
+ function LocalTime.prototype.serialize(self, writer)
48
+ writer:writeBytes(self.key)
49
+ end
50
+ function LocalTime.prototype.__tostring(self)
51
+ local hour = self.hour
52
+ local minute = self.minute
53
+ local second = self.second
54
+ local sb = __TS__New(StringBuilder)
55
+ sb:append(hour < 10 and "0" or ""):append(hour):append(minute < 10 and ":0" or ":"):append(minute)
56
+ if second > 0 then
57
+ sb:append(second < 10 and ":0" or ":"):append(second)
58
+ end
59
+ return tostring(sb)
60
+ end
61
+ function LocalTime.prototype.__lt(self, other)
62
+ local cmp = self.hour - other.hour
63
+ if cmp == 0 then
64
+ cmp = self.minute - other.minute
65
+ if cmp == 0 then
66
+ cmp = self.second - other.second
67
+ end
68
+ end
69
+ return cmp < 0
70
+ end
71
+ function LocalTime.prototype.__le(self, other)
72
+ local cmp = self.hour - other.hour
73
+ if cmp == 0 then
74
+ cmp = self.minute - other.minute
75
+ if cmp == 0 then
76
+ cmp = self.second - other.second
77
+ end
78
+ end
79
+ return cmp <= 0
80
+ end
81
+ LocalTime.MIN = ____exports.LocalTime:of(0, 0, 0)
82
+ LocalTime.MAX = ____exports.LocalTime:of(23, 59, 59)
83
+ LocalTime.MIDNIGHT = ____exports.LocalTime:of(0, 0, 0)
84
+ LocalTime.NOON = ____exports.LocalTime:of(12, 0, 0)
85
+ LocalTime.HOURS_PER_DAY = 24
86
+ LocalTime.MINUTES_PER_HOUR = 60
87
+ LocalTime.MINUTES_PER_DAY = ____exports.LocalTime.MINUTES_PER_HOUR * ____exports.LocalTime.HOURS_PER_DAY
88
+ LocalTime.SECONDS_PER_MINUTE = 60
89
+ LocalTime.SECONDS_PER_HOUR = ____exports.LocalTime.SECONDS_PER_MINUTE * ____exports.LocalTime.MINUTES_PER_HOUR
90
+ LocalTime.SECONDS_PER_DAY = ____exports.LocalTime.SECONDS_PER_HOUR * ____exports.LocalTime.HOURS_PER_DAY
91
+ return ____exports
@@ -0,0 +1,146 @@
1
+ /** @noSelfInFile */
2
+ import { BinaryReader } from "../binaryreader";
3
+ import { BinaryWriter } from "../binarywriter";
4
+ /**
5
+ * A month-of-year, such as 'July'.
6
+ * <p>
7
+ * {@code Month} is a class representing the 12 months of the year -
8
+ * January, February, March, April, May, June, July, August, September, October,
9
+ * November and December.
10
+ * <p>
11
+ * This class represents a common concept that is found in many calendar systems.
12
+ * As such, this class may be used by any calendar system that has the month-of-year
13
+ * concept defined exactly equivalent to the ISO-8601 calendar system.
14
+ */
15
+ export declare class Month {
16
+ readonly value: number;
17
+ /**
18
+ * The singleton instance for the month of January with 31 days.
19
+ * This has the numeric value of {@code 1}.
20
+ */
21
+ static readonly JANUARY: Month;
22
+ /**
23
+ * The singleton instance for the month of February with 28 days, or 29 in a leap year.
24
+ * This has the numeric value of {@code 2}.
25
+ */
26
+ static readonly FEBRUARY: Month;
27
+ /**
28
+ * The singleton instance for the month of March with 31 days.
29
+ * This has the numeric value of {@code 3}.
30
+ */
31
+ static readonly MARCH: Month;
32
+ /**
33
+ * The singleton instance for the month of April with 30 days.
34
+ * This has the numeric value of {@code 4}.
35
+ */
36
+ static readonly APRIL: Month;
37
+ /**
38
+ * The singleton instance for the month of May with 31 days.
39
+ * This has the numeric value of {@code 5}.
40
+ */
41
+ static readonly MAY: Month;
42
+ /**
43
+ * The singleton instance for the month of June with 30 days.
44
+ * This has the numeric value of {@code 6}.
45
+ */
46
+ static readonly JUNE: Month;
47
+ /**
48
+ * The singleton instance for the month of July with 31 days.
49
+ * This has the numeric value of {@code 7}.
50
+ */
51
+ static readonly JULY: Month;
52
+ /**
53
+ * The singleton instance for the month of August with 31 days.
54
+ * This has the numeric value of {@code 8}.
55
+ */
56
+ static readonly AUGUST: Month;
57
+ /**
58
+ * The singleton instance for the month of September with 30 days.
59
+ * This has the numeric value of {@code 9}.
60
+ */
61
+ static readonly SEPTEMBER: Month;
62
+ /**
63
+ * The singleton instance for the month of October with 31 days.
64
+ * This has the numeric value of {@code 10}.
65
+ */
66
+ static readonly OCTOBER: Month;
67
+ /**
68
+ * The singleton instance for the month of November with 30 days.
69
+ * This has the numeric value of {@code 11}.
70
+ */
71
+ static readonly NOVEMBER: Month;
72
+ /**
73
+ * The singleton instance for the month of December with 31 days.
74
+ * This has the numeric value of {@code 12}.
75
+ */
76
+ static readonly DECEMBER: Month;
77
+ private constructor();
78
+ /**
79
+ * Obtains an instance of {@code Month} from an {@code int} value.
80
+ * <p>
81
+ * {@code Month} is a class representing the 12 months of the year.
82
+ * This factory allows the class to be obtained from the {@code int} value.
83
+ * The {@code int} value follows the ISO-8601 standard, from 1 (January) to 12 (December).
84
+ *
85
+ * @param month the month-of-year to represent, from 1 (January) to 12 (December)
86
+ * @return the month-of-year
87
+ */
88
+ static of(month: number): Month;
89
+ static deserialize(reader: BinaryReader): Month;
90
+ serialize(writer: BinaryWriter): void;
91
+ /**
92
+ * Returns the month-of-year that is the specified number of months after this one.
93
+ * <p>
94
+ * The calculation rolls around the end of the year from December to January.
95
+ * The specified period may be negative.
96
+ * <p>
97
+ * This instance is immutable and unaffected by this method call.
98
+ *
99
+ * @param months the months to add, positive or negative
100
+ * @return the resulting month
101
+ */
102
+ plus(months: number): Month;
103
+ /**
104
+ * Returns the month-of-year that is the specified number of months before this one.
105
+ * <p>
106
+ * The calculation rolls around the start of the year from January to December.
107
+ * The specified period may be negative.
108
+ * <p>
109
+ * This instance is immutable and unaffected by this method call.
110
+ *
111
+ * @param months the months to subtract, positive or negative
112
+ * @return the resulting month
113
+ */
114
+ minus(months: number): Month;
115
+ /**
116
+ * Gets the length of this month in days.
117
+ * <p>
118
+ * This takes a flag to determine whether to return the length for a leap year or not.
119
+ * <p>
120
+ * February has 28 days in a standard year and 29 days in a leap year.
121
+ * April, June, September and November have 30 days.
122
+ * All other months have 31 days.
123
+ *
124
+ * @param leapYear true if the length is required for a leap year
125
+ * @return the length of this month in days, from 28 to 31
126
+ */
127
+ getLength(leapYear: boolean): number;
128
+ /**
129
+ * Gets the day-of-year corresponding to the first day of this month.
130
+ * <p>
131
+ * This returns the day-of-year that this month begins on, using the leap
132
+ * year flag to determine the length of February.
133
+ *
134
+ * @param leapYear true if the length is required for a leap year
135
+ * @return the day of year corresponding to the first day of this month, from 1 to 336
136
+ */
137
+ getFirstDayOfYear(leapYear: boolean): number;
138
+ /**
139
+ * Outputs this month as a {@code string}.
140
+ *
141
+ * @return a string representation of this month
142
+ */
143
+ toString(): string;
144
+ private __lt;
145
+ private __le;
146
+ }
package/time/month.lua ADDED
@@ -0,0 +1,129 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__New = ____lualib.__TS__New
4
+ local ____exports = {}
5
+ local cache = setmetatable({}, {__mode = "v"})
6
+ --- A month-of-year, such as 'July'.
7
+ -- <p>
8
+ -- {@code Month} is a class representing the 12 months of the year -
9
+ -- January, February, March, April, May, June, July, August, September, October,
10
+ -- November and December.
11
+ -- <p>
12
+ -- This class represents a common concept that is found in many calendar systems.
13
+ -- As such, this class may be used by any calendar system that has the month-of-year
14
+ -- concept defined exactly equivalent to the ISO-8601 calendar system.
15
+ ____exports.Month = __TS__Class()
16
+ local Month = ____exports.Month
17
+ Month.name = "Month"
18
+ function Month.prototype.____constructor(self, value)
19
+ self.value = value
20
+ assert(math.type(value) == "integer" and value >= 1 and value <= 12)
21
+ cache[value] = self
22
+ end
23
+ function Month.of(self, month)
24
+ return cache[month] or __TS__New(____exports.Month, month)
25
+ end
26
+ function Month.deserialize(self, reader)
27
+ return ____exports.Month:of(reader:readUInt8())
28
+ end
29
+ function Month.prototype.serialize(self, writer)
30
+ writer:writeUInt8(self.value)
31
+ end
32
+ function Month.prototype.plus(self, months)
33
+ return ____exports.Month:of((self.value - 1 + (months % 12 + 12)) % 12 + 1)
34
+ end
35
+ function Month.prototype.minus(self, months)
36
+ return self:plus(-(months % 12))
37
+ end
38
+ function Month.prototype.getLength(self, leapYear)
39
+ repeat
40
+ local ____switch9 = self
41
+ local ____cond9 = ____switch9 == ____exports.Month.FEBRUARY
42
+ if ____cond9 then
43
+ return leapYear and 29 or 28
44
+ end
45
+ ____cond9 = ____cond9 or (____switch9 == ____exports.Month.APRIL or ____switch9 == ____exports.Month.JUNE or ____switch9 == ____exports.Month.SEPTEMBER or ____switch9 == ____exports.Month.NOVEMBER)
46
+ if ____cond9 then
47
+ return 30
48
+ end
49
+ do
50
+ return 31
51
+ end
52
+ until true
53
+ end
54
+ function Month.prototype.getFirstDayOfYear(self, leapYear)
55
+ local leap = leapYear and 1 or 0
56
+ repeat
57
+ local ____switch11 = self
58
+ local ____cond11 = ____switch11 == ____exports.Month.JANUARY
59
+ if ____cond11 then
60
+ return 1
61
+ end
62
+ ____cond11 = ____cond11 or ____switch11 == ____exports.Month.FEBRUARY
63
+ if ____cond11 then
64
+ return 32
65
+ end
66
+ ____cond11 = ____cond11 or ____switch11 == ____exports.Month.MARCH
67
+ if ____cond11 then
68
+ return 60 + leap
69
+ end
70
+ ____cond11 = ____cond11 or ____switch11 == ____exports.Month.APRIL
71
+ if ____cond11 then
72
+ return 91 + leap
73
+ end
74
+ ____cond11 = ____cond11 or ____switch11 == ____exports.Month.MAY
75
+ if ____cond11 then
76
+ return 121 + leap
77
+ end
78
+ ____cond11 = ____cond11 or ____switch11 == ____exports.Month.JUNE
79
+ if ____cond11 then
80
+ return 152 + leap
81
+ end
82
+ ____cond11 = ____cond11 or ____switch11 == ____exports.Month.JULY
83
+ if ____cond11 then
84
+ return 182 + leap
85
+ end
86
+ ____cond11 = ____cond11 or ____switch11 == ____exports.Month.AUGUST
87
+ if ____cond11 then
88
+ return 213 + leap
89
+ end
90
+ ____cond11 = ____cond11 or ____switch11 == ____exports.Month.SEPTEMBER
91
+ if ____cond11 then
92
+ return 244 + leap
93
+ end
94
+ ____cond11 = ____cond11 or ____switch11 == ____exports.Month.OCTOBER
95
+ if ____cond11 then
96
+ return 274 + leap
97
+ end
98
+ ____cond11 = ____cond11 or ____switch11 == ____exports.Month.NOVEMBER
99
+ if ____cond11 then
100
+ return 305 + leap
101
+ end
102
+ ____cond11 = ____cond11 or ____switch11 == ____exports.Month.DECEMBER
103
+ do
104
+ return 335 + leap
105
+ end
106
+ until true
107
+ end
108
+ function Month.prototype.__tostring(self)
109
+ return tostring(self.value)
110
+ end
111
+ function Month.prototype.__lt(self, other)
112
+ return self.value < other.value
113
+ end
114
+ function Month.prototype.__le(self, other)
115
+ return self.value <= other.value
116
+ end
117
+ Month.JANUARY = ____exports.Month:of(1)
118
+ Month.FEBRUARY = ____exports.Month:of(2)
119
+ Month.MARCH = ____exports.Month:of(3)
120
+ Month.APRIL = ____exports.Month:of(4)
121
+ Month.MAY = ____exports.Month:of(5)
122
+ Month.JUNE = ____exports.Month:of(6)
123
+ Month.JULY = ____exports.Month:of(7)
124
+ Month.AUGUST = ____exports.Month:of(8)
125
+ Month.SEPTEMBER = ____exports.Month:of(9)
126
+ Month.OCTOBER = ____exports.Month:of(10)
127
+ Month.NOVEMBER = ____exports.Month:of(11)
128
+ Month.DECEMBER = ____exports.Month:of(12)
129
+ return ____exports