warscript 0.0.1-dev.8895ff6 → 0.0.1-dev.89bc33b

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 (304) 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 +16 -2
  5. package/core/types/frame.lua +128 -67
  6. package/core/types/handle.lua +9 -9
  7. package/core/types/item.d.ts +1 -0
  8. package/core/types/item.lua +1 -0
  9. package/core/types/player.d.ts +2 -1
  10. package/core/types/player.lua +18 -13
  11. package/core/types/playerColor.lua +4 -3
  12. package/core/types/sound.d.ts +1 -1
  13. package/core/types/sound.lua +14 -9
  14. package/core/types/tileCell.d.ts +7 -2
  15. package/core/types/tileCell.lua +11 -0
  16. package/core/types/unit.d.ts +5 -0
  17. package/core/types/unit.lua +5 -0
  18. package/core/util.d.ts +3 -1
  19. package/core/util.lua +109 -3
  20. package/decl/native.d.ts +705 -7
  21. package/engine/ability-type-extended-tooltip.d.ts +8 -0
  22. package/engine/ability-type-extended-tooltip.lua +44 -0
  23. package/engine/behaviour/ability/apply-unit-behavior.lua +5 -0
  24. package/engine/behaviour/ability/damage.d.ts +4 -0
  25. package/engine/behaviour/ability/damage.lua +19 -15
  26. package/engine/behaviour/ability/emulate-impact.lua +5 -4
  27. package/engine/behaviour/ability/on-command-impact.d.ts +1 -0
  28. package/engine/behaviour/ability/on-command-impact.lua +1 -0
  29. package/engine/behaviour/ability.d.ts +11 -5
  30. package/engine/behaviour/ability.lua +54 -0
  31. package/engine/behaviour/unit.d.ts +1 -0
  32. package/engine/behaviour/unit.lua +1 -0
  33. package/engine/buff.d.ts +61 -27
  34. package/engine/buff.lua +304 -133
  35. package/engine/index.d.ts +2 -1
  36. package/engine/internal/ability.d.ts +7 -0
  37. package/engine/internal/ability.lua +65 -36
  38. package/engine/internal/item/fields.d.ts +12 -0
  39. package/engine/internal/item/fields.lua +33 -0
  40. package/engine/internal/item/owner-cache.d.ts +5 -0
  41. package/engine/internal/item/owner-cache.lua +4 -0
  42. package/engine/internal/item+owner.d.ts +2 -0
  43. package/engine/internal/item+owner.lua +27 -4
  44. package/engine/internal/item.d.ts +20 -5
  45. package/engine/internal/item.lua +146 -57
  46. package/engine/internal/misc/unit-ability-level-natives.lua +12 -0
  47. package/engine/internal/object-data/armor-bonus.d.ts +2 -0
  48. package/engine/internal/object-data/attribute-bonus.lua +2 -2
  49. package/engine/internal/object-data/health-bonus.d.ts +2 -0
  50. package/engine/internal/object-data/health-bonus.lua +16 -0
  51. package/engine/internal/object-data/health-regeneration-rate-increase.d.ts +2 -0
  52. package/engine/internal/object-data/health-regeneration-rate-increase.lua +48 -0
  53. package/engine/internal/object-data/mana-bonus.d.ts +2 -0
  54. package/engine/internal/object-data/mana-bonus.lua +16 -0
  55. package/engine/internal/unit/add-item-to-slot-init.lua +3 -14
  56. package/engine/internal/unit/add-item-to-slot.lua +53 -12
  57. package/engine/internal/unit/appearance.d.ts +15 -0
  58. package/engine/internal/unit/appearance.lua +85 -0
  59. package/engine/internal/unit/bonus.d.ts +12 -0
  60. package/engine/internal/unit/bonus.lua +92 -8
  61. package/engine/internal/unit/buff.d.ts +2 -2
  62. package/engine/internal/unit/buff.lua +34 -19
  63. package/engine/internal/unit/equipment-inventory.d.ts +44 -0
  64. package/engine/internal/unit/equipment-inventory.lua +233 -0
  65. package/engine/internal/unit/expiration-timer.lua +1 -1
  66. package/engine/internal/unit/extended-inventory.d.ts +25 -0
  67. package/engine/internal/unit/extended-inventory.lua +99 -0
  68. package/engine/internal/unit/ignore-events-items.lua +10 -1
  69. package/engine/internal/unit/{item.d.ts → inventory.d.ts} +7 -3
  70. package/engine/internal/unit/inventory.lua +87 -0
  71. package/engine/internal/unit/item-container.d.ts +25 -0
  72. package/engine/internal/unit/item-container.lua +11 -0
  73. package/engine/internal/unit/item-order-events.d.ts +17 -0
  74. package/engine/internal/unit/item-order-events.lua +67 -0
  75. package/engine/internal/unit/item-slot.d.ts +27 -0
  76. package/engine/internal/unit/item-slot.lua +92 -0
  77. package/engine/internal/unit/order.d.ts +3 -3
  78. package/engine/internal/unit/order.lua +10 -10
  79. package/engine/internal/unit/range-event.d.ts +12 -0
  80. package/engine/internal/unit/range-event.lua +90 -0
  81. package/engine/internal/unit+ability.d.ts +2 -1
  82. package/engine/internal/unit+ability.lua +63 -2
  83. package/engine/internal/unit+bonus.lua +3 -3
  84. package/engine/internal/unit+damage.d.ts +9 -0
  85. package/engine/internal/unit+damage.lua +33 -0
  86. package/engine/internal/unit+rally.lua +9 -31
  87. package/engine/internal/unit-missile-data.lua +58 -32
  88. package/engine/internal/unit-missile-launch.lua +13 -13
  89. package/engine/internal/unit.d.ts +3 -11
  90. package/engine/internal/unit.lua +113 -152
  91. package/engine/local-client.d.ts +26 -0
  92. package/engine/local-client.lua +294 -54
  93. package/engine/object-data/auxiliary/attachment-preset.d.ts +7 -0
  94. package/engine/object-data/auxiliary/attachment-preset.lua +7 -0
  95. package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
  96. package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
  97. package/engine/object-data/auxiliary/equipment-type.d.ts +12 -0
  98. package/engine/object-data/auxiliary/equipment-type.lua +26 -0
  99. package/engine/object-data/auxiliary/item-class.d.ts +11 -0
  100. package/engine/object-data/auxiliary/item-class.lua +2 -0
  101. package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
  102. package/engine/object-data/auxiliary/item-tag.lua +2 -0
  103. package/engine/object-data/auxiliary/order-type.d.ts +939 -0
  104. package/engine/object-data/auxiliary/order-type.lua +2 -0
  105. package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
  106. package/engine/object-data/auxiliary/unit-attribute.lua +1 -1
  107. package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
  108. package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
  109. package/engine/object-data/entry/ability-type/armor-bonus.d.ts +8 -0
  110. package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
  111. package/engine/object-data/entry/ability-type/aura-of-blight.d.ts +13 -0
  112. package/engine/object-data/entry/ability-type/aura-of-blight.lua +39 -0
  113. package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
  114. package/engine/object-data/entry/ability-type/banshee.lua +13 -0
  115. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
  116. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
  117. package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
  118. package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
  119. package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
  120. package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
  121. package/engine/object-data/entry/ability-type/blank-passive-with-cooldown.d.ts +23 -0
  122. package/engine/object-data/entry/ability-type/blank-passive-with-cooldown.lua +112 -0
  123. package/engine/object-data/entry/ability-type/blank-passive.d.ts +4 -0
  124. package/engine/object-data/entry/ability-type/blank-passive.lua +27 -7
  125. package/engine/object-data/entry/ability-type/breath-of-fire.d.ts +11 -0
  126. package/engine/object-data/entry/ability-type/breath-of-fire.lua +27 -0
  127. package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
  128. package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
  129. package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
  130. package/engine/object-data/entry/ability-type/consecration.lua +52 -0
  131. package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
  132. package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
  133. package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
  134. package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
  135. package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
  136. package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
  137. package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
  138. package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
  139. package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
  140. package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
  141. package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
  142. package/engine/object-data/entry/ability-type/equipment.lua +27 -0
  143. package/engine/object-data/entry/ability-type/exhume-corpses.d.ts +14 -0
  144. package/engine/object-data/entry/ability-type/exhume-corpses.lua +40 -0
  145. package/engine/object-data/entry/ability-type/firebolt.d.ts +7 -0
  146. package/engine/object-data/entry/ability-type/firebolt.lua +13 -0
  147. package/engine/object-data/entry/ability-type/flame-strike.d.ts +25 -0
  148. package/engine/object-data/entry/ability-type/flame-strike.lua +92 -0
  149. package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
  150. package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
  151. package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
  152. package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
  153. package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
  154. package/engine/object-data/entry/ability-type/grit.lua +65 -0
  155. package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
  156. package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
  157. package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
  158. package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
  159. package/engine/object-data/entry/ability-type/{armor-increase.d.ts → healing-modifier.d.ts} +4 -3
  160. package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
  161. package/engine/object-data/entry/ability-type/healing-ward-aura.d.ts +13 -0
  162. package/engine/object-data/entry/ability-type/healing-ward-aura.lua +39 -0
  163. package/engine/object-data/entry/ability-type/health-bonus.d.ts +8 -0
  164. package/engine/object-data/entry/ability-type/health-bonus.lua +26 -0
  165. package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
  166. package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
  167. package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
  168. package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
  169. package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
  170. package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
  171. package/engine/object-data/entry/ability-type/item-life-regeneration.d.ts +10 -0
  172. package/engine/object-data/entry/ability-type/item-life-regeneration.lua +26 -0
  173. package/engine/object-data/entry/ability-type/life-drain.d.ts +37 -0
  174. package/engine/object-data/entry/ability-type/life-drain.lua +144 -0
  175. package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
  176. package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
  177. package/engine/object-data/entry/ability-type/mana-bonus.d.ts +8 -0
  178. package/engine/object-data/entry/ability-type/mana-bonus.lua +26 -0
  179. package/engine/object-data/entry/ability-type/mana-efficiency.d.ts +12 -0
  180. package/engine/object-data/entry/ability-type/mana-efficiency.lua +39 -0
  181. package/engine/object-data/entry/ability-type/mind-control.d.ts +21 -0
  182. package/engine/object-data/entry/ability-type/mind-control.lua +78 -0
  183. package/engine/object-data/entry/ability-type/on-attack-cast-spell.d.ts +21 -0
  184. package/engine/object-data/entry/ability-type/on-attack-cast-spell.lua +52 -0
  185. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.d.ts +19 -0
  186. package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.lua +65 -0
  187. package/engine/object-data/entry/ability-type/on-hit-cast-spell.d.ts +15 -0
  188. package/engine/object-data/entry/ability-type/on-hit-cast-spell.lua +26 -0
  189. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.d.ts +6 -0
  190. package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.lua +12 -0
  191. package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
  192. package/engine/object-data/entry/ability-type/provoke.lua +66 -0
  193. package/engine/object-data/entry/ability-type/rain-of-fire.d.ts +7 -0
  194. package/engine/object-data/entry/ability-type/rain-of-fire.lua +13 -0
  195. package/engine/object-data/entry/ability-type/raise-the-banner.d.ts +9 -0
  196. package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
  197. package/engine/object-data/entry/ability-type/reincarnation.d.ts +8 -0
  198. package/engine/object-data/entry/ability-type/reincarnation.lua +26 -0
  199. package/engine/object-data/entry/ability-type/resolve.d.ts +12 -0
  200. package/engine/object-data/entry/ability-type/resolve.lua +39 -0
  201. package/engine/object-data/entry/ability-type/righteous-fury.d.ts +33 -0
  202. package/engine/object-data/entry/ability-type/righteous-fury.lua +130 -0
  203. package/engine/object-data/entry/ability-type/sacred-aura.d.ts +27 -0
  204. package/engine/object-data/entry/ability-type/sacred-aura.lua +104 -0
  205. package/engine/object-data/entry/ability-type/soul-burn.d.ts +22 -0
  206. package/engine/object-data/entry/ability-type/soul-burn.lua +79 -0
  207. package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
  208. package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
  209. package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
  210. package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
  211. package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
  212. package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
  213. package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
  214. package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
  215. package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
  216. package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
  217. package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
  218. package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
  219. package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
  220. package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
  221. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
  222. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
  223. package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
  224. package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
  225. package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
  226. package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
  227. package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
  228. package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
  229. package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
  230. package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
  231. package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
  232. package/engine/object-data/entry/ability-type/talents.lua +27 -0
  233. package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
  234. package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
  235. package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
  236. package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
  237. package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
  238. package/engine/object-data/entry/ability-type/warcry.lua +26 -0
  239. package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
  240. package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
  241. package/engine/object-data/entry/ability-type.d.ts +25 -6
  242. package/engine/object-data/entry/ability-type.lua +244 -8
  243. package/engine/object-data/entry/buff-type/applicable.lua +113 -109
  244. package/engine/object-data/entry/buff-type.d.ts +6 -2
  245. package/engine/object-data/entry/buff-type.lua +26 -0
  246. package/engine/object-data/entry/destructible-type.d.ts +6 -2
  247. package/engine/object-data/entry/destructible-type.lua +26 -0
  248. package/engine/object-data/entry/item-type.d.ts +18 -3
  249. package/engine/object-data/entry/item-type.lua +84 -0
  250. package/engine/object-data/entry/lightning-type.d.ts +6 -8
  251. package/engine/object-data/entry/lightning-type.lua +1 -1
  252. package/engine/object-data/entry/sound-preset.d.ts +2 -2
  253. package/engine/object-data/entry/unit-type.d.ts +47 -2
  254. package/engine/object-data/entry/unit-type.lua +383 -49
  255. package/engine/object-data/entry/upgrade.d.ts +2 -2
  256. package/engine/object-data/entry.d.ts +6 -1
  257. package/engine/object-data/entry.lua +8 -0
  258. package/engine/object-field/ability.lua +2 -2
  259. package/engine/object-field/item.d.ts +22 -0
  260. package/engine/object-field/item.lua +118 -0
  261. package/engine/object-field.d.ts +1 -1
  262. package/engine/object-field.lua +9 -7
  263. package/engine/random.d.ts +1 -0
  264. package/engine/random.lua +8 -0
  265. package/engine/standard/entries/ability-type.d.ts +3102 -7
  266. package/engine/standard/entries/ability-type.lua +0 -6
  267. package/engine/standard/entries/buff-type.d.ts +45 -0
  268. package/engine/standard/entries/buff-type.lua +43 -0
  269. package/engine/standard/entries/item-type.d.ts +1299 -0
  270. package/engine/standard/entries/item-type.lua +2 -0
  271. package/engine/standard/entries/lightning-type.d.ts +42 -15
  272. package/engine/standard/entries/lightning-type.lua +0 -14
  273. package/engine/standard/entries/unit-type.d.ts +5 -0
  274. package/engine/standard/entries/unit-type.lua +5 -0
  275. package/engine/standard/fields/item.d.ts +4 -0
  276. package/engine/standard/fields/item.lua +6 -0
  277. package/engine/unit.d.ts +6 -1
  278. package/engine/unit.lua +6 -1
  279. package/event.d.ts +1 -1
  280. package/lualib_bundle.lua +1 -1
  281. package/math.d.ts +2 -0
  282. package/math.lua +14 -0
  283. package/network.lua +25 -1
  284. package/objutil/buff.lua +1 -1
  285. package/objutil/object.lua +1 -1
  286. package/operation.d.ts +8 -1
  287. package/operation.lua +38 -18
  288. package/package.json +3 -23
  289. package/patch-lua.lua +15 -0
  290. package/utility/arrays.d.ts +7 -1
  291. package/utility/arrays.lua +17 -0
  292. package/utility/linked-map.d.ts +11 -2
  293. package/utility/linked-map.lua +41 -0
  294. package/utility/linked-set.d.ts +3 -1
  295. package/utility/linked-set.lua +23 -0
  296. package/utility/random.d.ts +102 -0
  297. package/utility/random.lua +273 -0
  298. package/utility/unordered-map.d.ts +27 -0
  299. package/utility/unordered-map.lua +99 -0
  300. package/engine/internal/unit/item.lua +0 -78
  301. /package/engine/internal/{object-data/armor-increase.d.ts → misc/unit-ability-level-natives.d.ts} +0 -0
  302. /package/engine/internal/object-data/{armor-increase.lua → armor-bonus.lua} +0 -0
  303. /package/engine/object-data/entry/ability-type/{attribute-increase.d.ts → attribute-bonus.d.ts} +0 -0
  304. /package/engine/object-data/entry/ability-type/{attribute-increase.lua → attribute-bonus.lua} +0 -0
@@ -1,78 +0,0 @@
1
- local ____lualib = require("lualib_bundle")
2
- local __TS__Class = ____lualib.__TS__Class
3
- local __TS__New = ____lualib.__TS__New
4
- local __TS__ObjectDefineProperty = ____lualib.__TS__ObjectDefineProperty
5
- local ____exports = {}
6
- local ____item = require("engine.internal.item")
7
- local Item = ____item.Item
8
- local ____unit = require("engine.internal.unit")
9
- local Unit = ____unit.Unit
10
- local ____utility = require("engine.internal.utility")
11
- local findUnitItemSlot = ____utility.findUnitItemSlot
12
- local ____add_2Ditem_2Dto_2Dslot = require("engine.internal.unit.add-item-to-slot")
13
- local unitAddItemToSlot = ____add_2Ditem_2Dto_2Dslot.unitAddItemToSlot
14
- local rawset = _G.rawset
15
- local ____type = _G.type
16
- local isItemPowerup = IsItemPowerup
17
- local setItemBooleanField = BlzSetItemBooleanField
18
- local unitInventorySize = UnitInventorySize
19
- local unitItemInSlot = UnitItemInSlot
20
- local unitRemoveItemFromSlot = UnitRemoveItemFromSlot
21
- local handleByUnitItems = setmetatable({}, {__mode = "k"})
22
- local function unitItemsNext(handle, index)
23
- local slot = index & 7
24
- if index >> 3 == slot then
25
- return nil, nil
26
- end
27
- return index + 1, Item:of(unitItemInSlot(handle, slot))
28
- end
29
- ____exports.UnitItems = __TS__Class()
30
- local UnitItems = ____exports.UnitItems
31
- UnitItems.name = "UnitItems"
32
- function UnitItems.prototype.____constructor(self, handle)
33
- handleByUnitItems[self] = handle
34
- end
35
- function UnitItems.prototype.findSlot(self, item)
36
- return findUnitItemSlot(handleByUnitItems[self], item.handle)
37
- end
38
- function UnitItems.prototype.__newindex(self, slot, item)
39
- local handle = handleByUnitItems[self]
40
- if slot < 1 or slot > unitInventorySize(handle) then
41
- return
42
- end
43
- unitRemoveItemFromSlot(handle, slot - 1)
44
- if item ~= nil then
45
- local itemHandle = item.handle
46
- local isPowerup = isItemPowerup(itemHandle)
47
- if isPowerup then
48
- setItemBooleanField(itemHandle, ITEM_BF_USE_AUTOMATICALLY_WHEN_ACQUIRED, false)
49
- end
50
- unitAddItemToSlot(handle, itemHandle, slot - 1)
51
- if isPowerup then
52
- setItemBooleanField(itemHandle, ITEM_BF_USE_AUTOMATICALLY_WHEN_ACQUIRED, true)
53
- end
54
- end
55
- end
56
- function UnitItems.prototype.__index(self, key)
57
- if ____type(key) == "number" then
58
- return Item:of(unitItemInSlot(handleByUnitItems[self], key - 1))
59
- end
60
- return rawget(____exports.UnitItems.prototype, key)
61
- end
62
- function UnitItems.prototype.__len(self)
63
- return unitInventorySize(handleByUnitItems[self])
64
- end
65
- function UnitItems.prototype.__ipairs(self)
66
- local handle = handleByUnitItems[self]
67
- return unitItemsNext, handle, unitInventorySize(handle) << 3
68
- end
69
- __TS__ObjectDefineProperty(
70
- Unit.prototype,
71
- "items",
72
- {get = function(self)
73
- local items = __TS__New(____exports.UnitItems, self.handle)
74
- rawset(self, "items", items)
75
- return items
76
- end}
77
- )
78
- return ____exports