warscript 0.0.1-dev.697548e → 0.0.1-dev.69b6655

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 (203) hide show
  1. package/core/types/frame.d.ts +1 -0
  2. package/core/types/frame.lua +112 -37
  3. package/core/types/handle.lua +6 -9
  4. package/core/types/item.d.ts +1 -0
  5. package/core/types/item.lua +1 -0
  6. package/core/types/player.d.ts +2 -1
  7. package/core/types/player.lua +18 -13
  8. package/core/types/playerColor.lua +4 -3
  9. package/core/types/sound.d.ts +1 -1
  10. package/core/types/sound.lua +13 -8
  11. package/core/types/unit.d.ts +4 -0
  12. package/core/types/unit.lua +4 -0
  13. package/decl/native.d.ts +705 -7
  14. package/engine/behaviour/ability/damage.lua +11 -14
  15. package/engine/behaviour/ability/emulate-impact.lua +5 -4
  16. package/engine/behaviour/ability.d.ts +1 -0
  17. package/engine/behaviour/ability.lua +11 -0
  18. package/engine/behaviour/unit.d.ts +1 -0
  19. package/engine/behaviour/unit.lua +1 -0
  20. package/engine/buff.d.ts +13 -10
  21. package/engine/buff.lua +66 -17
  22. package/engine/index.d.ts +2 -1
  23. package/engine/internal/ability.d.ts +4 -0
  24. package/engine/internal/ability.lua +52 -33
  25. package/engine/internal/item/fields.d.ts +12 -0
  26. package/engine/internal/item/fields.lua +33 -0
  27. package/engine/internal/item+owner.d.ts +1 -0
  28. package/engine/internal/item+owner.lua +7 -0
  29. package/engine/internal/item.d.ts +16 -5
  30. package/engine/internal/item.lua +130 -57
  31. package/engine/internal/unit/ability.lua +15 -3
  32. package/engine/internal/unit/appearance.d.ts +15 -0
  33. package/engine/internal/unit/appearance.lua +85 -0
  34. package/engine/internal/unit/bag.d.ts +18 -0
  35. package/engine/internal/unit/bag.lua +63 -0
  36. package/engine/internal/unit/buff.d.ts +2 -2
  37. package/engine/internal/unit/buff.lua +34 -19
  38. package/engine/internal/unit/equipment.d.ts +36 -0
  39. package/engine/internal/unit/equipment.lua +169 -0
  40. package/engine/internal/unit/{item.d.ts → inventory.d.ts} +3 -3
  41. package/engine/internal/unit/{item.lua → inventory.lua} +25 -26
  42. package/engine/internal/unit/pseudo-passive-abilities.d.ts +2 -0
  43. package/engine/internal/unit/pseudo-passive-abilities.lua +11 -0
  44. package/engine/internal/unit+damage.d.ts +9 -0
  45. package/engine/internal/unit+damage.lua +33 -0
  46. package/engine/internal/unit-missile-data.lua +58 -32
  47. package/engine/internal/unit.d.ts +0 -1
  48. package/engine/internal/unit.lua +2 -7
  49. package/engine/local-client.d.ts +25 -0
  50. package/engine/local-client.lua +364 -54
  51. package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
  52. package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
  53. package/engine/object-data/auxiliary/equipment-type.d.ts +13 -0
  54. package/engine/object-data/auxiliary/equipment-type.lua +2 -0
  55. package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
  56. package/engine/object-data/auxiliary/item-tag.lua +2 -0
  57. package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
  58. package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
  59. package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
  60. package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
  61. package/engine/object-data/entry/ability-type/banshee.lua +13 -0
  62. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
  63. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
  64. package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
  65. package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
  66. package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
  67. package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
  68. package/engine/object-data/entry/ability-type/blank-configurable.d.ts +3 -0
  69. package/engine/object-data/entry/ability-type/blank-configurable.lua +30 -0
  70. package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
  71. package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
  72. package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
  73. package/engine/object-data/entry/ability-type/consecration.lua +52 -0
  74. package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
  75. package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
  76. package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
  77. package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
  78. package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
  79. package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
  80. package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
  81. package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
  82. package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
  83. package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
  84. package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
  85. package/engine/object-data/entry/ability-type/equipment.lua +27 -0
  86. package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
  87. package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
  88. package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
  89. package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
  90. package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
  91. package/engine/object-data/entry/ability-type/grit.lua +65 -0
  92. package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
  93. package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
  94. package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
  95. package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
  96. package/engine/object-data/entry/ability-type/healing-modifier.d.ts +9 -0
  97. package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
  98. package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
  99. package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
  100. package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
  101. package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
  102. package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
  103. package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
  104. package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
  105. package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
  106. package/engine/object-data/entry/ability-type/mana-efficiency.d.ts +12 -0
  107. package/engine/object-data/entry/ability-type/mana-efficiency.lua +39 -0
  108. package/engine/object-data/entry/ability-type/mind-control.d.ts +21 -0
  109. package/engine/object-data/entry/ability-type/mind-control.lua +78 -0
  110. package/engine/object-data/entry/ability-type/on-attack-cast-spell.d.ts +21 -0
  111. package/engine/object-data/entry/ability-type/on-attack-cast-spell.lua +52 -0
  112. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.d.ts +19 -0
  113. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.lua +65 -0
  114. package/engine/object-data/entry/ability-type/on-hit-cast-spell.d.ts +15 -0
  115. package/engine/object-data/entry/ability-type/on-hit-cast-spell.lua +26 -0
  116. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.d.ts +6 -0
  117. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.lua +12 -0
  118. package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
  119. package/engine/object-data/entry/ability-type/provoke.lua +66 -0
  120. package/engine/object-data/entry/ability-type/raise-the-banner.d.ts +9 -0
  121. package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
  122. package/engine/object-data/entry/ability-type/resolve.d.ts +12 -0
  123. package/engine/object-data/entry/ability-type/resolve.lua +39 -0
  124. package/engine/object-data/entry/ability-type/righteous-fury.d.ts +33 -0
  125. package/engine/object-data/entry/ability-type/righteous-fury.lua +130 -0
  126. package/engine/object-data/entry/ability-type/sacred-aura.d.ts +27 -0
  127. package/engine/object-data/entry/ability-type/sacred-aura.lua +104 -0
  128. package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
  129. package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
  130. package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
  131. package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
  132. package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
  133. package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
  134. package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
  135. package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
  136. package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
  137. package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
  138. package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
  139. package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
  140. package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
  141. package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
  142. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
  143. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
  144. package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
  145. package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
  146. package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
  147. package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
  148. package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
  149. package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
  150. package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
  151. package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
  152. package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
  153. package/engine/object-data/entry/ability-type/talents.lua +27 -0
  154. package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
  155. package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
  156. package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
  157. package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
  158. package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
  159. package/engine/object-data/entry/ability-type/warcry.lua +26 -0
  160. package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
  161. package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
  162. package/engine/object-data/entry/ability-type.d.ts +10 -3
  163. package/engine/object-data/entry/ability-type.lua +53 -0
  164. package/engine/object-data/entry/buff-type.d.ts +6 -2
  165. package/engine/object-data/entry/buff-type.lua +26 -0
  166. package/engine/object-data/entry/destructible-type.d.ts +6 -2
  167. package/engine/object-data/entry/destructible-type.lua +26 -0
  168. package/engine/object-data/entry/item-type.d.ts +12 -3
  169. package/engine/object-data/entry/item-type.lua +52 -0
  170. package/engine/object-data/entry/lightning-type.d.ts +2 -2
  171. package/engine/object-data/entry/sound-preset.d.ts +2 -2
  172. package/engine/object-data/entry/unit-type.d.ts +47 -2
  173. package/engine/object-data/entry/unit-type.lua +383 -49
  174. package/engine/object-data/entry/upgrade.d.ts +2 -2
  175. package/engine/object-data/entry.d.ts +4 -1
  176. package/engine/object-field/item.d.ts +22 -0
  177. package/engine/object-field/item.lua +118 -0
  178. package/engine/standard/entries/ability-type.d.ts +3102 -7
  179. package/engine/standard/entries/ability-type.lua +0 -6
  180. package/engine/standard/entries/item-type.d.ts +1299 -0
  181. package/engine/standard/entries/item-type.lua +2 -0
  182. package/engine/standard/entries/unit-type.d.ts +5 -0
  183. package/engine/standard/entries/unit-type.lua +5 -0
  184. package/engine/standard/fields/item.d.ts +4 -0
  185. package/engine/standard/fields/item.lua +6 -0
  186. package/engine/unit.d.ts +4 -1
  187. package/engine/unit.lua +4 -1
  188. package/event.d.ts +1 -1
  189. package/lualib_bundle.lua +46 -117
  190. package/math.d.ts +2 -0
  191. package/math.lua +14 -0
  192. package/network.lua +25 -1
  193. package/operation.d.ts +8 -1
  194. package/operation.lua +49 -35
  195. package/package.json +3 -23
  196. package/utility/linked-map.d.ts +2 -1
  197. package/utility/linked-map.lua +6 -0
  198. package/utility/linked-set.d.ts +1 -0
  199. package/utility/linked-set.lua +6 -0
  200. package/utility/random.d.ts +102 -0
  201. package/utility/random.lua +273 -0
  202. package/utility/unordered-map.d.ts +27 -0
  203. package/utility/unordered-map.lua +99 -0
@@ -0,0 +1,22 @@
1
+ /** @noSelfInFile */
2
+ import { ObjectField } from "../object-field";
3
+ import { Item } from "../internal/item";
4
+ import { ItemType, ItemTypeId } from "../object-data/entry/item-type";
5
+ export declare abstract class ItemField<ValueType extends number | string | boolean = number | string | boolean, NativeFieldType = any> extends ObjectField<ItemType, Item, ValueType, NativeFieldType> {
6
+ protected get instanceClass(): typeof Item;
7
+ protected getObjectDataEntryId(instance: Item): ItemTypeId;
8
+ }
9
+ export declare class ItemBooleanField extends ItemField<boolean, jitembooleanfield> {
10
+ protected get defaultValue(): boolean;
11
+ protected getNativeFieldById(id: number): jitembooleanfield;
12
+ protected hasNativeFieldValue(): boolean;
13
+ protected getNativeFieldValue(instance: Item): boolean;
14
+ protected setNativeFieldValue(instance: Item, value: boolean): boolean;
15
+ }
16
+ export declare class ItemIntegerField extends ItemField<number, jitemintegerfield> {
17
+ protected get defaultValue(): number;
18
+ protected getNativeFieldById(id: number): jitemintegerfield;
19
+ protected hasNativeFieldValue(): boolean;
20
+ protected getNativeFieldValue(instance: Item): number;
21
+ protected setNativeFieldValue(instance: Item, value: number): boolean;
22
+ }
@@ -0,0 +1,118 @@
1
+ local ____lualib = require("lualib_bundle")
2
+ local __TS__Class = ____lualib.__TS__Class
3
+ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
+ local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
5
+ local ____exports = {}
6
+ local ____object_2Dfield = require("engine.object-field")
7
+ local ObjectField = ____object_2Dfield.ObjectField
8
+ local ____item = require("engine.internal.item")
9
+ local Item = ____item.Item
10
+ local ____lua_2Dsets = require("utility.lua-sets")
11
+ local luaSetOf = ____lua_2Dsets.luaSetOf
12
+ local convertItemBooleanField = ConvertItemBooleanField
13
+ local convertItemIntegerField = ConvertItemIntegerField
14
+ local getItemBooleanField = BlzGetItemBooleanField
15
+ local getItemIntegerField = BlzGetItemIntegerField
16
+ local isItemPawnable = IsItemPawnable
17
+ local isItemPowerup = IsItemPowerup
18
+ local setItemBooleanField = BlzSetItemBooleanField
19
+ local setItemDropOnDeath = SetItemDropOnDeath
20
+ local setItemDroppable = SetItemDroppable
21
+ local setItemPawnable = SetItemPawnable
22
+ local setItemIntegerField = BlzSetItemIntegerField
23
+ ____exports.ItemField = __TS__Class()
24
+ local ItemField = ____exports.ItemField
25
+ ItemField.name = "ItemField"
26
+ __TS__ClassExtends(ItemField, ObjectField)
27
+ function ItemField.prototype.getObjectDataEntryId(self, instance)
28
+ return instance.typeId
29
+ end
30
+ __TS__SetDescriptor(
31
+ ItemField.prototype,
32
+ "instanceClass",
33
+ {get = function(self)
34
+ return Item
35
+ end},
36
+ true
37
+ )
38
+ local nativeItemBooleanFieldIds = luaSetOf(
39
+ fourCC("ipaw"),
40
+ fourCC("iusa")
41
+ )
42
+ ____exports.ItemBooleanField = __TS__Class()
43
+ local ItemBooleanField = ____exports.ItemBooleanField
44
+ ItemBooleanField.name = "ItemBooleanField"
45
+ __TS__ClassExtends(ItemBooleanField, ____exports.ItemField)
46
+ function ItemBooleanField.prototype.getNativeFieldById(self, id)
47
+ return convertItemBooleanField(id)
48
+ end
49
+ function ItemBooleanField.prototype.hasNativeFieldValue(self)
50
+ return nativeItemBooleanFieldIds[self.id] ~= nil
51
+ end
52
+ function ItemBooleanField.prototype.getNativeFieldValue(self, instance)
53
+ return getItemBooleanField(instance.handle, self.nativeField)
54
+ end
55
+ function ItemBooleanField.prototype.setNativeFieldValue(self, instance, value)
56
+ if self.id == fourCC("iusa") then
57
+ local handle = instance.handle
58
+ local powerUp = isItemPowerup(handle)
59
+ local perishes = getItemBooleanField(handle, ITEM_BF_PERISHABLE)
60
+ local dropsOnDeath = getItemBooleanField(handle, ITEM_BF_DROPPED_WHEN_CARRIER_DIES)
61
+ local canBeDropped = getItemBooleanField(handle, ITEM_BF_CAN_BE_DROPPED)
62
+ local canBeSold = isItemPawnable(handle)
63
+ local result = setItemBooleanField(handle, ITEM_BF_ACTIVELY_USED, value)
64
+ setItemPawnable(handle, canBeSold)
65
+ setItemDroppable(handle, canBeDropped)
66
+ setItemDropOnDeath(handle, dropsOnDeath)
67
+ setItemBooleanField(handle, ITEM_BF_PERISHABLE, perishes)
68
+ setItemBooleanField(handle, ITEM_BF_USE_AUTOMATICALLY_WHEN_ACQUIRED, powerUp)
69
+ return result
70
+ end
71
+ return setItemBooleanField(instance.handle, self.nativeField, value)
72
+ end
73
+ __TS__SetDescriptor(
74
+ ItemBooleanField.prototype,
75
+ "defaultValue",
76
+ {get = function(self)
77
+ return false
78
+ end},
79
+ true
80
+ )
81
+ local nativeItemIntegerFieldIds = luaSetOf(
82
+ fourCC("ilev"),
83
+ fourCC("iuse"),
84
+ fourCC("icid"),
85
+ fourCC("ihtp"),
86
+ fourCC("ihpc"),
87
+ fourCC("ipri"),
88
+ fourCC("iarm"),
89
+ fourCC("iclr"),
90
+ fourCC("iclg"),
91
+ fourCC("iclb"),
92
+ fourCC("ical")
93
+ )
94
+ ____exports.ItemIntegerField = __TS__Class()
95
+ local ItemIntegerField = ____exports.ItemIntegerField
96
+ ItemIntegerField.name = "ItemIntegerField"
97
+ __TS__ClassExtends(ItemIntegerField, ____exports.ItemField)
98
+ function ItemIntegerField.prototype.getNativeFieldById(self, id)
99
+ return convertItemIntegerField(id)
100
+ end
101
+ function ItemIntegerField.prototype.hasNativeFieldValue(self)
102
+ return nativeItemIntegerFieldIds[self.id] ~= nil
103
+ end
104
+ function ItemIntegerField.prototype.getNativeFieldValue(self, instance)
105
+ return getItemIntegerField(instance.handle, self.nativeField)
106
+ end
107
+ function ItemIntegerField.prototype.setNativeFieldValue(self, instance, value)
108
+ return setItemIntegerField(instance.handle, self.nativeField, value)
109
+ end
110
+ __TS__SetDescriptor(
111
+ ItemIntegerField.prototype,
112
+ "defaultValue",
113
+ {get = function(self)
114
+ return 0
115
+ end},
116
+ true
117
+ )
118
+ return ____exports