warscript 0.0.1-dev.459629d → 0.0.1-dev.45a73a4

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 (254) hide show
  1. package/core/dummy.lua +4 -2
  2. package/core/types/effect.d.ts +11 -1
  3. package/core/types/effect.lua +43 -77
  4. package/core/types/frame.d.ts +15 -2
  5. package/core/types/frame.lua +16 -30
  6. package/core/types/handle.lua +3 -0
  7. package/core/types/player.d.ts +1 -0
  8. package/core/types/player.lua +6 -2
  9. package/core/types/playerColor.lua +4 -3
  10. package/core/types/sound.d.ts +1 -1
  11. package/core/types/sound.lua +13 -8
  12. package/core/types/tileCell.d.ts +7 -2
  13. package/core/types/tileCell.lua +11 -0
  14. package/core/types/unit.d.ts +5 -0
  15. package/core/types/unit.lua +5 -0
  16. package/core/util.d.ts +3 -1
  17. package/core/util.lua +109 -3
  18. package/decl/native.d.ts +705 -7
  19. package/engine/ability-type-extended-tooltip.d.ts +8 -0
  20. package/engine/ability-type-extended-tooltip.lua +44 -0
  21. package/engine/behaviour/ability/apply-unit-behavior.lua +5 -0
  22. package/engine/behaviour/ability/damage.d.ts +1 -0
  23. package/engine/behaviour/ability/damage.lua +12 -14
  24. package/engine/behaviour/ability/emulate-impact.lua +1 -1
  25. package/engine/behaviour/ability/on-command-impact.d.ts +1 -0
  26. package/engine/behaviour/ability/on-command-impact.lua +1 -0
  27. package/engine/behaviour/ability.d.ts +2 -0
  28. package/engine/behaviour/ability.lua +25 -0
  29. package/engine/behaviour/unit.d.ts +1 -0
  30. package/engine/behaviour/unit.lua +1 -0
  31. package/engine/buff.d.ts +12 -10
  32. package/engine/buff.lua +64 -16
  33. package/engine/index.d.ts +2 -1
  34. package/engine/internal/ability.d.ts +7 -0
  35. package/engine/internal/ability.lua +60 -31
  36. package/engine/internal/item/owner-cache.d.ts +5 -0
  37. package/engine/internal/item/owner-cache.lua +4 -0
  38. package/engine/internal/item+owner.d.ts +2 -0
  39. package/engine/internal/item+owner.lua +27 -4
  40. package/engine/internal/item.d.ts +17 -1
  41. package/engine/internal/item.lua +115 -23
  42. package/engine/internal/misc/unit-ability-level-natives.d.ts +2 -0
  43. package/engine/internal/misc/unit-ability-level-natives.lua +12 -0
  44. package/engine/internal/object-data/health-regeneration-rate-increase.d.ts +2 -0
  45. package/engine/internal/object-data/health-regeneration-rate-increase.lua +48 -0
  46. package/engine/internal/unit/add-item-to-slot-init.lua +3 -14
  47. package/engine/internal/unit/add-item-to-slot.lua +53 -12
  48. package/engine/internal/unit/appearance.d.ts +15 -0
  49. package/engine/internal/unit/appearance.lua +85 -0
  50. package/engine/internal/unit/bonus.d.ts +8 -0
  51. package/engine/internal/unit/bonus.lua +69 -5
  52. package/engine/internal/unit/buff.d.ts +2 -2
  53. package/engine/internal/unit/buff.lua +34 -19
  54. package/engine/internal/unit/equipment-inventory.d.ts +44 -0
  55. package/engine/internal/unit/equipment-inventory.lua +233 -0
  56. package/engine/internal/unit/expiration-timer.lua +1 -1
  57. package/engine/internal/unit/extended-inventory.d.ts +25 -0
  58. package/engine/internal/unit/extended-inventory.lua +99 -0
  59. package/engine/internal/unit/ignore-events-items.lua +10 -1
  60. package/engine/internal/unit/{item.d.ts → inventory.d.ts} +7 -3
  61. package/engine/internal/unit/inventory.lua +87 -0
  62. package/engine/internal/unit/item-container.d.ts +25 -0
  63. package/engine/internal/unit/item-container.lua +11 -0
  64. package/engine/internal/unit/item-order-events.d.ts +17 -0
  65. package/engine/internal/unit/item-order-events.lua +67 -0
  66. package/engine/internal/unit/item-slot.d.ts +27 -0
  67. package/engine/internal/unit/item-slot.lua +92 -0
  68. package/engine/internal/unit/order.d.ts +3 -3
  69. package/engine/internal/unit/order.lua +10 -10
  70. package/engine/internal/unit+ability.d.ts +2 -1
  71. package/engine/internal/unit+ability.lua +63 -2
  72. package/engine/internal/unit+damage.d.ts +9 -0
  73. package/engine/internal/unit+damage.lua +33 -0
  74. package/engine/internal/unit+rally.lua +9 -31
  75. package/engine/internal/unit-missile-data.lua +58 -32
  76. package/engine/internal/unit-missile-launch.lua +13 -13
  77. package/engine/internal/unit.d.ts +2 -10
  78. package/engine/internal/unit.lua +50 -100
  79. package/engine/local-client.d.ts +21 -0
  80. package/engine/local-client.lua +242 -57
  81. package/engine/object-data/auxiliary/attachment-preset.d.ts +7 -0
  82. package/engine/object-data/auxiliary/attachment-preset.lua +7 -0
  83. package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
  84. package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
  85. package/engine/object-data/auxiliary/equipment-type.d.ts +12 -0
  86. package/engine/object-data/auxiliary/equipment-type.lua +26 -0
  87. package/engine/object-data/auxiliary/item-class.d.ts +11 -0
  88. package/engine/object-data/auxiliary/item-class.lua +2 -0
  89. package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
  90. package/engine/object-data/auxiliary/item-tag.lua +2 -0
  91. package/engine/object-data/auxiliary/order-type.d.ts +939 -0
  92. package/engine/object-data/auxiliary/order-type.lua +2 -0
  93. package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
  94. package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
  95. package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
  96. package/engine/object-data/entry/ability-type/aura-of-blight.d.ts +13 -0
  97. package/engine/object-data/entry/ability-type/aura-of-blight.lua +39 -0
  98. package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
  99. package/engine/object-data/entry/ability-type/banshee.lua +13 -0
  100. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
  101. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
  102. package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
  103. package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
  104. package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
  105. package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
  106. package/engine/object-data/entry/ability-type/blank-passive-with-cooldown.d.ts +23 -0
  107. package/engine/object-data/entry/ability-type/blank-passive-with-cooldown.lua +112 -0
  108. package/engine/object-data/entry/ability-type/blank-passive.d.ts +4 -0
  109. package/engine/object-data/entry/ability-type/blank-passive.lua +27 -7
  110. package/engine/object-data/entry/ability-type/breath-of-fire.d.ts +11 -0
  111. package/engine/object-data/entry/ability-type/breath-of-fire.lua +27 -0
  112. package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
  113. package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
  114. package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
  115. package/engine/object-data/entry/ability-type/consecration.lua +52 -0
  116. package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
  117. package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
  118. package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
  119. package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
  120. package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
  121. package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
  122. package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
  123. package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
  124. package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
  125. package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
  126. package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
  127. package/engine/object-data/entry/ability-type/equipment.lua +27 -0
  128. package/engine/object-data/entry/ability-type/exhume-corpses.d.ts +14 -0
  129. package/engine/object-data/entry/ability-type/exhume-corpses.lua +40 -0
  130. package/engine/object-data/entry/ability-type/firebolt.d.ts +7 -0
  131. package/engine/object-data/entry/ability-type/firebolt.lua +13 -0
  132. package/engine/object-data/entry/ability-type/flame-strike.d.ts +25 -0
  133. package/engine/object-data/entry/ability-type/flame-strike.lua +92 -0
  134. package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
  135. package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
  136. package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
  137. package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
  138. package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
  139. package/engine/object-data/entry/ability-type/grit.lua +65 -0
  140. package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
  141. package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
  142. package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
  143. package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
  144. package/engine/object-data/entry/ability-type/healing-modifier.d.ts +9 -0
  145. package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
  146. package/engine/object-data/entry/ability-type/healing-ward-aura.d.ts +13 -0
  147. package/engine/object-data/entry/ability-type/healing-ward-aura.lua +39 -0
  148. package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
  149. package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
  150. package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
  151. package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
  152. package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
  153. package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
  154. package/engine/object-data/entry/ability-type/item-life-regeneration.d.ts +10 -0
  155. package/engine/object-data/entry/ability-type/item-life-regeneration.lua +26 -0
  156. package/engine/object-data/entry/ability-type/life-drain.d.ts +37 -0
  157. package/engine/object-data/entry/ability-type/life-drain.lua +144 -0
  158. package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
  159. package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
  160. package/engine/object-data/entry/ability-type/mana-efficiency.d.ts +12 -0
  161. package/engine/object-data/entry/ability-type/mana-efficiency.lua +39 -0
  162. package/engine/object-data/entry/ability-type/mind-control.d.ts +21 -0
  163. package/engine/object-data/entry/ability-type/mind-control.lua +78 -0
  164. package/engine/object-data/entry/ability-type/on-attack-cast-spell.d.ts +21 -0
  165. package/engine/object-data/entry/ability-type/on-attack-cast-spell.lua +52 -0
  166. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.d.ts +19 -0
  167. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.lua +65 -0
  168. package/engine/object-data/entry/ability-type/on-hit-cast-spell.d.ts +15 -0
  169. package/engine/object-data/entry/ability-type/on-hit-cast-spell.lua +26 -0
  170. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.d.ts +6 -0
  171. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.lua +12 -0
  172. package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
  173. package/engine/object-data/entry/ability-type/provoke.lua +66 -0
  174. package/engine/object-data/entry/ability-type/rain-of-fire.d.ts +7 -0
  175. package/engine/object-data/entry/ability-type/rain-of-fire.lua +13 -0
  176. package/engine/object-data/entry/ability-type/raise-the-banner.d.ts +9 -0
  177. package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
  178. package/engine/object-data/entry/ability-type/resolve.d.ts +12 -0
  179. package/engine/object-data/entry/ability-type/resolve.lua +39 -0
  180. package/engine/object-data/entry/ability-type/righteous-fury.d.ts +33 -0
  181. package/engine/object-data/entry/ability-type/righteous-fury.lua +130 -0
  182. package/engine/object-data/entry/ability-type/sacred-aura.d.ts +27 -0
  183. package/engine/object-data/entry/ability-type/sacred-aura.lua +104 -0
  184. package/engine/object-data/entry/ability-type/soul-burn.d.ts +22 -0
  185. package/engine/object-data/entry/ability-type/soul-burn.lua +79 -0
  186. package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
  187. package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
  188. package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
  189. package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
  190. package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
  191. package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
  192. package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
  193. package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
  194. package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
  195. package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
  196. package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
  197. package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
  198. package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
  199. package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
  200. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
  201. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
  202. package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
  203. package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
  204. package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
  205. package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
  206. package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
  207. package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
  208. package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
  209. package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
  210. package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
  211. package/engine/object-data/entry/ability-type/talents.lua +27 -0
  212. package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
  213. package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
  214. package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
  215. package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
  216. package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
  217. package/engine/object-data/entry/ability-type/warcry.lua +26 -0
  218. package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
  219. package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
  220. package/engine/object-data/entry/ability-type.d.ts +29 -6
  221. package/engine/object-data/entry/ability-type.lua +240 -45
  222. package/engine/object-data/entry/buff-type.d.ts +6 -2
  223. package/engine/object-data/entry/buff-type.lua +26 -0
  224. package/engine/object-data/entry/destructible-type.d.ts +6 -2
  225. package/engine/object-data/entry/destructible-type.lua +26 -0
  226. package/engine/object-data/entry/item-type.d.ts +18 -3
  227. package/engine/object-data/entry/item-type.lua +84 -0
  228. package/engine/object-data/entry/lightning-type.d.ts +6 -8
  229. package/engine/object-data/entry/lightning-type.lua +1 -1
  230. package/engine/object-data/entry/sound-preset.d.ts +2 -2
  231. package/engine/object-data/entry/unit-type.d.ts +47 -2
  232. package/engine/object-data/entry/unit-type.lua +383 -49
  233. package/engine/object-data/entry/upgrade.d.ts +2 -2
  234. package/engine/object-data/entry.d.ts +6 -1
  235. package/engine/object-data/entry.lua +8 -0
  236. package/engine/random.lua +1 -1
  237. package/engine/standard/entries/ability-type.d.ts +3102 -7
  238. package/engine/standard/entries/ability-type.lua +0 -6
  239. package/engine/standard/entries/buff-type.d.ts +45 -0
  240. package/engine/standard/entries/buff-type.lua +43 -0
  241. package/engine/standard/entries/item-type.d.ts +1299 -0
  242. package/engine/standard/entries/item-type.lua +2 -0
  243. package/engine/standard/entries/lightning-type.d.ts +42 -15
  244. package/engine/standard/entries/lightning-type.lua +0 -14
  245. package/engine/standard/entries/unit-type.d.ts +5 -0
  246. package/engine/standard/entries/unit-type.lua +5 -0
  247. package/engine/unit.d.ts +5 -1
  248. package/engine/unit.lua +5 -1
  249. package/event.d.ts +1 -1
  250. package/objutil/buff.lua +1 -1
  251. package/package.json +2 -22
  252. package/utility/arrays.d.ts +7 -1
  253. package/utility/arrays.lua +17 -0
  254. package/engine/internal/unit/item.lua +0 -78
@@ -1,9 +1,13 @@
1
1
  /** @noSelfInFile */
2
2
  import { AttachmentPreset, AttachmentPresetInput } from "./auxiliary/attachment-preset";
3
3
  import { MutableKeys } from "../../utility/types";
4
- export type ObjectDataEntryId = (number | string) & {
4
+ import { StandardAbilityTypeId } from "../standard/entries/ability-type";
5
+ import { StandardItemTypeId } from "../standard/entries/item-type";
6
+ import { StandardLightningTypeId } from "../standard/entries/lightning-type";
7
+ export type CustomObjectDataEntryId = (number | string) & {
5
8
  readonly __objectDataEntryId: unique symbol;
6
9
  };
10
+ export type ObjectDataEntryId = CustomObjectDataEntryId | StandardAbilityTypeId | StandardItemTypeId | StandardLightningTypeId;
7
11
  export type ObjectDataEntryIdType<T extends ObjectDataEntry> = T extends ObjectDataEntry<infer Id> ? Id : never;
8
12
  export type ObjectDataEntryConstructor<T extends ObjectDataEntry> = OmitConstructor<typeof ObjectDataEntry> & (new (object: WarObject) => T);
9
13
  export type ObjectDataEntryAbstractConstructor<T extends ObjectDataEntry> = OmitConstructor<typeof ObjectDataEntry> & (abstract new (object: WarObject) => T);
@@ -38,6 +42,7 @@ export declare abstract class ObjectDataEntry<Id extends ObjectDataEntryId = Obj
38
42
  setFieldValue<This extends this, Args extends any[]>(this: This, field: {
39
43
  setValue(entry: This, ...args: Args): boolean;
40
44
  }, ...args: Args): void;
45
+ copyFrom(id: Id): void;
41
46
  protected getBooleanField(field: string): boolean;
42
47
  protected setBooleanField(field: string, value: boolean): void;
43
48
  protected getNumberField(field: string): number;
@@ -181,6 +181,14 @@ end
181
181
  function ObjectDataEntry.prototype.setFieldValue(self, field, ...)
182
182
  check(field:setValue(self, ...))
183
183
  end
184
+ function ObjectDataEntry.prototype.copyFrom(self, id)
185
+ local that = self.type:of(id)
186
+ if that == nil then
187
+ return
188
+ end
189
+ for ____, field in ipairs(self.object.all) do
190
+ end
191
+ end
184
192
  function ObjectDataEntry.prototype.getBooleanField(self, field)
185
193
  return dataToBoolean(self.object:getField(field))
186
194
  end
package/engine/random.lua CHANGED
@@ -29,7 +29,7 @@ ____exports.random = function(...)
29
29
  ))
30
30
  end
31
31
  ____exports.shuffle = function(array)
32
- for i = #array - 1, 1 do
32
+ for i = #array - 1, 1, -1 do
33
33
  local j = getRandomInt(0, i)
34
34
  local value = array[i + 1]
35
35
  array[i + 1] = array[j + 1]