warscript 0.0.1-dev.2af030d → 0.0.1-dev.2b9d42c

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 (260) hide show
  1. package/attributes.d.ts +6 -1
  2. package/attributes.lua +17 -1
  3. package/binaryreader.d.ts +1 -0
  4. package/binaryreader.lua +3 -0
  5. package/config.d.ts +5 -0
  6. package/config.lua +10 -0
  7. package/core/types/effect.d.ts +14 -6
  8. package/core/types/effect.lua +131 -35
  9. package/core/types/frame.d.ts +8 -1
  10. package/core/types/frame.lua +117 -22
  11. package/core/types/group.d.ts +0 -1
  12. package/core/types/image.d.ts +0 -1
  13. package/core/types/missile.d.ts +2 -2
  14. package/core/types/missile.lua +8 -2
  15. package/core/types/player.d.ts +16 -0
  16. package/core/types/player.lua +60 -15
  17. package/core/types/playerCamera.d.ts +2 -0
  18. package/core/types/playerCamera.lua +123 -5
  19. package/core/types/sound.d.ts +17 -24
  20. package/core/types/sound.lua +99 -24
  21. package/core/types/tileCell.d.ts +11 -1
  22. package/core/types/tileCell.lua +97 -0
  23. package/core/types/timer.d.ts +9 -8
  24. package/core/types/timer.lua +45 -23
  25. package/core/types/unit.lua +8 -0
  26. package/core/util.d.ts +1 -1
  27. package/core/util.lua +18 -1
  28. package/decl/index.d.ts +1 -0
  29. package/decl/native.d.ts +846 -790
  30. package/engine/ability.d.ts +1 -1
  31. package/engine/behavior.d.ts +22 -11
  32. package/engine/behavior.lua +175 -73
  33. package/engine/behaviour/ability/always-enabled.d.ts +7 -0
  34. package/engine/behaviour/ability/always-enabled.lua +31 -0
  35. package/engine/behaviour/ability/apply-buff.d.ts +8 -5
  36. package/engine/behaviour/ability/apply-buff.lua +36 -4
  37. package/engine/behaviour/ability/apply-unit-behavior.d.ts +6 -1
  38. package/engine/behaviour/ability/apply-unit-behavior.lua +1 -0
  39. package/engine/behaviour/ability/damage.d.ts +39 -11
  40. package/engine/behaviour/ability/damage.lua +83 -37
  41. package/engine/behaviour/ability/emulate-impact.d.ts +6 -0
  42. package/engine/behaviour/ability/emulate-impact.lua +43 -0
  43. package/engine/behaviour/ability/heal.d.ts +33 -6
  44. package/engine/behaviour/ability/heal.lua +89 -10
  45. package/engine/behaviour/ability/instant-impact.d.ts +2 -2
  46. package/engine/behaviour/ability/instant-impact.lua +4 -15
  47. package/engine/behaviour/ability/on-command-impact.d.ts +8 -0
  48. package/engine/behaviour/ability/on-command-impact.lua +25 -0
  49. package/engine/behaviour/ability/remove-buffs.d.ts +25 -0
  50. package/engine/behaviour/ability/remove-buffs.lua +49 -0
  51. package/engine/behaviour/ability/restore-mana.d.ts +15 -0
  52. package/engine/behaviour/ability/restore-mana.lua +29 -0
  53. package/engine/behaviour/ability.d.ts +29 -5
  54. package/engine/behaviour/ability.lua +154 -27
  55. package/engine/behaviour/unit/stun-immunity.d.ts +11 -6
  56. package/engine/behaviour/unit/stun-immunity.lua +53 -28
  57. package/engine/behaviour/unit.d.ts +48 -4
  58. package/engine/behaviour/unit.lua +282 -2
  59. package/engine/buff.d.ts +114 -44
  60. package/engine/buff.lua +525 -224
  61. package/engine/game-map.d.ts +7 -0
  62. package/engine/game-map.lua +32 -0
  63. package/engine/internal/ability.d.ts +23 -14
  64. package/engine/internal/ability.lua +129 -85
  65. package/engine/internal/item/ability.lua +162 -4
  66. package/engine/internal/item+owner.lua +12 -6
  67. package/engine/internal/item.d.ts +20 -19
  68. package/engine/internal/item.lua +191 -74
  69. package/engine/internal/mechanics/ability-duration.lua +1 -1
  70. package/engine/internal/misc/ability-disable-counter.d.ts +2 -0
  71. package/engine/internal/misc/ability-disable-counter.lua +13 -0
  72. package/engine/internal/misc/damage-metadata-by-target.d.ts +2 -0
  73. package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
  74. package/engine/internal/misc/frame-coordinates.d.ts +2 -0
  75. package/engine/internal/misc/frame-coordinates.lua +21 -0
  76. package/engine/internal/misc/get-terrain-z.d.ts +2 -0
  77. package/engine/internal/misc/get-terrain-z.lua +11 -0
  78. package/engine/internal/misc/player-local-handle.d.ts +2 -0
  79. package/engine/internal/misc/player-local-handle.lua +5 -0
  80. package/engine/internal/object-data/auto-attack-speed-increase.d.ts +1 -1
  81. package/engine/internal/object-data/auto-attack-speed-increase.lua +2 -0
  82. package/engine/internal/object-data/evasion-probability.d.ts +2 -0
  83. package/engine/internal/object-data/evasion-probability.lua +16 -0
  84. package/engine/internal/unit/ability.d.ts +45 -1
  85. package/engine/internal/unit/ability.lua +128 -17
  86. package/engine/internal/unit/add-item-to-slot-init.d.ts +2 -0
  87. package/engine/internal/unit/add-item-to-slot-init.lua +23 -0
  88. package/engine/internal/unit/add-item-to-slot.d.ts +2 -0
  89. package/engine/internal/unit/add-item-to-slot.lua +52 -0
  90. package/engine/internal/unit/allowed-targets.d.ts +1 -1
  91. package/engine/internal/unit/allowed-targets.lua +9 -1
  92. package/engine/internal/unit/bonus.d.ts +11 -8
  93. package/engine/internal/unit/bonus.lua +23 -1
  94. package/engine/internal/unit/fly-height.d.ts +7 -0
  95. package/engine/internal/unit/fly-height.lua +20 -0
  96. package/engine/internal/unit/ignore-events-items.d.ts +2 -0
  97. package/engine/internal/unit/ignore-events-items.lua +5 -0
  98. package/engine/internal/unit/item.d.ts +24 -0
  99. package/engine/internal/unit/item.lua +78 -0
  100. package/engine/internal/unit/main-selected.d.ts +13 -0
  101. package/engine/internal/unit/main-selected.lua +36 -0
  102. package/engine/internal/unit/order.d.ts +20 -0
  103. package/engine/internal/unit/order.lua +136 -0
  104. package/engine/internal/unit/scale.d.ts +7 -0
  105. package/engine/internal/unit/scale.lua +20 -0
  106. package/engine/internal/unit+ability.lua +12 -3
  107. package/engine/internal/unit+damage.d.ts +2 -11
  108. package/engine/internal/unit+damage.lua +10 -14
  109. package/engine/internal/unit+spellSteal.lua +1 -2
  110. package/engine/internal/unit+transport.lua +4 -10
  111. package/engine/internal/unit-missile-launch.lua +63 -13
  112. package/engine/internal/unit.d.ts +65 -24
  113. package/engine/internal/unit.lua +453 -195
  114. package/engine/internal/utility.lua +12 -0
  115. package/engine/lightning.d.ts +12 -5
  116. package/engine/lightning.lua +48 -14
  117. package/engine/local-client.d.ts +9 -2
  118. package/engine/local-client.lua +112 -0
  119. package/engine/object-data/auxiliary/animation-name.d.ts +1 -0
  120. package/engine/object-data/auxiliary/animation-name.lua +16 -0
  121. package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
  122. package/engine/object-data/auxiliary/armor-type.lua +46 -0
  123. package/engine/object-data/auxiliary/attachment-preset.d.ts +7 -3
  124. package/engine/object-data/auxiliary/attachment-preset.lua +4 -3
  125. package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
  126. package/engine/object-data/auxiliary/attack-type.lua +42 -0
  127. package/engine/object-data/auxiliary/combat-classification.d.ts +0 -2
  128. package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
  129. package/engine/object-data/auxiliary/movement-type.lua +22 -0
  130. package/engine/object-data/auxiliary/sound-eax.d.ts +10 -0
  131. package/engine/object-data/auxiliary/sound-eax.lua +2 -0
  132. package/engine/object-data/auxiliary/sound-preset-name.d.ts +5 -1
  133. package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +1 -1
  134. package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
  135. package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
  136. package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
  137. package/engine/object-data/entry/ability-type/berserk.lua +13 -0
  138. package/engine/object-data/entry/ability-type/blank-configurable.d.ts +0 -1
  139. package/engine/object-data/entry/ability-type/blank-configurable.lua +12 -1
  140. package/engine/object-data/entry/ability-type/blank-passive.d.ts +0 -1
  141. package/engine/object-data/entry/ability-type/carrion-swarm.d.ts +14 -0
  142. package/engine/object-data/entry/ability-type/carrion-swarm.lua +65 -0
  143. package/engine/object-data/entry/ability-type/channel.d.ts +0 -1
  144. package/engine/object-data/entry/ability-type/disease-cloud.lua +2 -2
  145. package/engine/object-data/entry/ability-type/engineering-upgrade.lua +2 -2
  146. package/engine/object-data/entry/ability-type/ensnare.d.ts +12 -0
  147. package/engine/object-data/entry/ability-type/ensnare.lua +52 -0
  148. package/engine/object-data/entry/ability-type/feral-spirit.lua +2 -2
  149. package/engine/object-data/entry/ability-type/mine.d.ts +10 -0
  150. package/engine/object-data/entry/ability-type/mine.lua +39 -0
  151. package/engine/object-data/entry/ability-type/permanent-invisibility.d.ts +8 -0
  152. package/engine/object-data/entry/ability-type/permanent-invisibility.lua +26 -0
  153. package/engine/object-data/entry/ability-type/phase-shift.d.ts +10 -0
  154. package/engine/object-data/entry/ability-type/phase-shift.lua +39 -0
  155. package/engine/object-data/entry/ability-type/phoenix-morph.lua +4 -4
  156. package/engine/object-data/entry/ability-type/raise-dead.d.ts +17 -0
  157. package/engine/object-data/entry/ability-type/raise-dead.lua +78 -0
  158. package/engine/object-data/entry/ability-type/shock-wave.d.ts +4 -0
  159. package/engine/object-data/entry/ability-type/shock-wave.lua +26 -0
  160. package/engine/object-data/entry/ability-type/slow-poison.d.ts +10 -0
  161. package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
  162. package/engine/object-data/entry/ability-type/spirit-touch.d.ts +2 -2
  163. package/engine/object-data/entry/ability-type/spirit-touch.lua +6 -6
  164. package/engine/object-data/entry/ability-type/summon-quilbeast.lua +2 -2
  165. package/engine/object-data/entry/ability-type/summon-water-elemental.lua +2 -2
  166. package/engine/object-data/entry/ability-type/web.d.ts +12 -0
  167. package/engine/object-data/entry/ability-type/web.lua +52 -0
  168. package/engine/object-data/entry/ability-type.d.ts +19 -18
  169. package/engine/object-data/entry/ability-type.lua +93 -36
  170. package/engine/object-data/entry/buff-type/applicable.d.ts +0 -1
  171. package/engine/object-data/entry/buff-type/applicable.lua +18 -37
  172. package/engine/object-data/entry/buff-type/blank.d.ts +0 -1
  173. package/engine/object-data/entry/buff-type.d.ts +6 -13
  174. package/engine/object-data/entry/buff-type.lua +13 -29
  175. package/engine/object-data/entry/destructible-type.d.ts +1 -2
  176. package/engine/object-data/entry/item-type/blank.d.ts +0 -1
  177. package/engine/object-data/entry/item-type.d.ts +15 -2
  178. package/engine/object-data/entry/item-type.lua +93 -2
  179. package/engine/object-data/entry/lightning-type.d.ts +1 -2
  180. package/engine/object-data/entry/sound-preset.d.ts +33 -0
  181. package/engine/object-data/entry/sound-preset.lua +140 -0
  182. package/engine/object-data/entry/unit-type.d.ts +25 -6
  183. package/engine/object-data/entry/unit-type.lua +258 -93
  184. package/engine/object-data/entry/upgrade/blank.d.ts +0 -1
  185. package/engine/object-data/entry/upgrade.d.ts +1 -2
  186. package/engine/object-data/entry/upgrade.lua +4 -4
  187. package/engine/object-data/entry.d.ts +18 -17
  188. package/engine/object-data/entry.lua +60 -32
  189. package/engine/object-data/utility/object-data-entry-id-generator.lua +7 -0
  190. package/engine/object-field/ability.d.ts +28 -5
  191. package/engine/object-field/ability.lua +59 -5
  192. package/engine/object-field/unit.d.ts +69 -3
  193. package/engine/object-field/unit.lua +264 -7
  194. package/engine/object-field.d.ts +23 -7
  195. package/engine/object-field.lua +311 -124
  196. package/engine/random.d.ts +10 -0
  197. package/engine/random.lua +22 -0
  198. package/engine/standard/entries/buff-type.d.ts +3 -0
  199. package/engine/standard/entries/buff-type.lua +3 -0
  200. package/engine/standard/entries/sound-preset.d.ts +10 -0
  201. package/engine/standard/entries/sound-preset.lua +10 -0
  202. package/engine/standard/entries/unit-type.d.ts +18 -0
  203. package/engine/standard/entries/unit-type.lua +18 -0
  204. package/engine/standard/fields/ability.d.ts +5 -3
  205. package/engine/standard/fields/ability.lua +5 -3
  206. package/engine/standard/fields/unit.d.ts +6 -0
  207. package/engine/standard/fields/unit.lua +11 -0
  208. package/engine/synchronization.d.ts +11 -0
  209. package/engine/synchronization.lua +77 -0
  210. package/engine/text-tag.d.ts +36 -2
  211. package/engine/text-tag.lua +250 -10
  212. package/engine/unit.d.ts +6 -0
  213. package/engine/unit.lua +15 -2
  214. package/event.d.ts +2 -3
  215. package/event.lua +9 -5
  216. package/index.d.ts +1 -0
  217. package/index.lua +1 -0
  218. package/lualib_bundle.lua +146 -42
  219. package/math/vec2.d.ts +2 -9
  220. package/math.d.ts +0 -2
  221. package/net/socket.d.ts +7 -1
  222. package/net/socket.lua +45 -4
  223. package/network.d.ts +1 -0
  224. package/network.lua +3 -2
  225. package/objutil/ability.d.ts +0 -1
  226. package/objutil/buff.d.ts +0 -1
  227. package/objutil/buff.lua +3 -4
  228. package/objutil/object.d.ts +0 -1
  229. package/objutil/unit.d.ts +0 -1
  230. package/objutil/unit.lua +8 -0
  231. package/package.json +13 -13
  232. package/patch-lua.d.ts +0 -0
  233. package/patch-lua.lua +10 -0
  234. package/patch-lualib.lua +1 -1
  235. package/property.d.ts +55 -0
  236. package/property.lua +374 -0
  237. package/string.d.ts +16 -0
  238. package/string.lua +5 -0
  239. package/util/stream.d.ts +0 -1
  240. package/utility/arrays.d.ts +13 -5
  241. package/utility/arrays.lua +45 -3
  242. package/utility/bit-set.d.ts +0 -2
  243. package/utility/callback-array.d.ts +17 -0
  244. package/utility/callback-array.lua +61 -0
  245. package/utility/functions.d.ts +8 -0
  246. package/utility/functions.lua +13 -0
  247. package/utility/lazy.d.ts +2 -0
  248. package/utility/lazy.lua +14 -0
  249. package/utility/linked-set.d.ts +13 -3
  250. package/utility/linked-set.lua +27 -3
  251. package/utility/lua-maps.d.ts +16 -4
  252. package/utility/lua-maps.lua +53 -2
  253. package/utility/lua-sets.d.ts +3 -2
  254. package/utility/lua-sets.lua +7 -0
  255. package/utility/reflection.lua +11 -7
  256. package/utility/types.d.ts +4 -0
  257. package/core/mapbounds.d.ts +0 -8
  258. package/core/mapbounds.lua +0 -12
  259. package/core/types/order.d.ts +0 -25
  260. package/core/types/order.lua +0 -55
@@ -1,4 +1,3 @@
1
- /// <reference types="warpack-types/warpack" />
2
1
  /** @noSelfInFile */
3
2
  import { TupleOf } from "../../../utility/types";
4
3
  import { ArmorSoundType } from "../auxiliary/armor-sound-type";
@@ -14,7 +13,8 @@ import type { AbilityTypeId } from "./ability-type";
14
13
  import type { UpgradeId } from "./upgrade";
15
14
  import { AnimationQualifier } from "../auxiliary/animation-qualifier";
16
15
  import { AttackType } from "../auxiliary/attack-type";
17
- export type UnitTypeId = ObjectDataEntryId & {
16
+ import { ArmorType } from "../auxiliary/armor-type";
17
+ export type UnitTypeId = ObjectDataEntryId & number & {
18
18
  readonly __unitTypeId: unique symbol;
19
19
  };
20
20
  export type StandardUnitTypeId = UnitTypeId & {
@@ -24,8 +24,8 @@ export declare class UnitTypeWeapon {
24
24
  private readonly unitType;
25
25
  private readonly index;
26
26
  private constructor();
27
- get attackType(): AttackType;
28
- set attackType(attackType: AttackType);
27
+ get attackType(): AttackType | undefined;
28
+ set attackType(attackType: AttackType | undefined);
29
29
  get backSwingDuration(): number;
30
30
  set backSwingDuration(backSwingDuration: number);
31
31
  get cooldown(): number;
@@ -42,6 +42,10 @@ export declare class UnitTypeWeapon {
42
42
  set impactDelay(impactDelay: number);
43
43
  get missileModelPath(): string;
44
44
  set missileModelPath(missileModelPath: string);
45
+ get missileModelPathSD(): string;
46
+ set missileModelPathSD(missileModelPathSD: string);
47
+ get missileModelPathHD(): string;
48
+ set missileModelPathHD(missileModelPathHD: string);
45
49
  get range(): number;
46
50
  set range(range: number);
47
51
  get soundType(): WeaponSoundType;
@@ -56,6 +60,7 @@ export declare abstract class UnitType<Id extends UnitTypeId = UnitTypeId> exten
56
60
  protected static readonly idGenerator: ObjectDataEntryIdGenerator;
57
61
  protected static generateId(): number;
58
62
  protected static getObjectData(map: WarMap): WarObjects;
63
+ private isPortraitModelPathSet?;
59
64
  get abilityTypeIds(): AbilityTypeId[];
60
65
  set abilityTypeIds(abilityTypeIds: AbilityTypeId[]);
61
66
  get defaultActiveAbilityTypeId(): AbilityTypeId | undefined;
@@ -132,12 +137,20 @@ export declare abstract class UnitType<Id extends UnitTypeId = UnitTypeId> exten
132
137
  set modelPathSD(modelPathSD: string);
133
138
  get modelPathHD(): string;
134
139
  set modelPathHD(modelPathHD: string);
140
+ get portraitModelPath(): string;
141
+ set portraitModelPath(portraitModelPath: string);
142
+ get portraitModelPathSD(): string;
143
+ set portraitModelPathSD(portraitModelPathSD: string);
144
+ get portraitModelPathHD(): string;
145
+ set portraitModelPathHD(portraitModelPathHD: string);
135
146
  get runSpeed(): number;
136
147
  set runSpeed(runSpeed: number);
137
148
  get runSpeedSD(): number;
138
149
  set runSpeedSD(runSpeedSD: number);
139
150
  get runSpeedHD(): number;
140
151
  set runSpeedHD(runSpeedHD: number);
152
+ get selectionCircleHeight(): number;
153
+ set selectionCircleHeight(height: number);
141
154
  get selectionCircleScale(): number;
142
155
  set selectionCircleScale(selectionCircleScale: number);
143
156
  get selectionCircleScaleSD(): number;
@@ -176,16 +189,20 @@ export declare abstract class UnitType<Id extends UnitTypeId = UnitTypeId> exten
176
189
  set walkSpeedSD(walkSpeedSD: number);
177
190
  get walkSpeedHD(): number;
178
191
  set walkSpeedHD(walkSpeedHD: number);
192
+ get armor(): number;
193
+ set armor(armor: number);
179
194
  get armorSoundType(): ArmorSoundType;
180
195
  set armorSoundType(armorSoundType: ArmorSoundType);
181
196
  get armorSoundTypeSD(): ArmorSoundType;
182
197
  set armorSoundTypeSD(armorSoundTypeSD: ArmorSoundType);
183
198
  get armorSoundTypeHD(): ArmorSoundType;
184
199
  set armorSoundTypeHD(armorSoundTypeHD: ArmorSoundType);
200
+ get armorType(): ArmorType;
201
+ set armorType(armorType: ArmorType);
185
202
  get combatClassifications(): CombatClassifications;
186
203
  set combatClassifications(combatClassifications: CombatClassifications);
187
- get unitClassifications(): UnitClassifications;
188
- set unitClassifications(unitClassifications: UnitClassifications);
204
+ get classifications(): UnitClassifications;
205
+ set classifications(unitClassifications: UnitClassifications);
189
206
  get weapons(): TupleOf<UnitTypeWeapon, 2>;
190
207
  get firstWeapon(): UnitTypeWeapon;
191
208
  get secondWeapon(): UnitTypeWeapon;
@@ -219,6 +236,8 @@ export declare abstract class UnitType<Id extends UnitTypeId = UnitTypeId> exten
219
236
  set goldCost(goldCost: number);
220
237
  get healthRegenerationRate(): number;
221
238
  set healthRegenerationRate(healthRegenerationRate: number);
239
+ get level(): number;
240
+ set level(level: number);
222
241
  get manaRegenerationRate(): number;
223
242
  set manaRegenerationRate(manaRegenerationRate: number);
224
243
  get maximumHealth(): number;