warscript 0.0.1-dev.989e1a3 → 0.0.1-dev.9a5718b

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 (276) hide show
  1. package/core/types/effect.d.ts +11 -1
  2. package/core/types/effect.lua +43 -77
  3. package/core/types/frame.d.ts +1 -0
  4. package/core/types/frame.lua +112 -37
  5. package/core/types/handle.lua +9 -9
  6. package/core/types/item.d.ts +1 -0
  7. package/core/types/item.lua +1 -0
  8. package/core/types/player.d.ts +2 -1
  9. package/core/types/player.lua +18 -13
  10. package/core/types/playerColor.lua +4 -3
  11. package/core/types/sound.d.ts +1 -1
  12. package/core/types/sound.lua +14 -9
  13. package/core/types/unit.d.ts +5 -0
  14. package/core/types/unit.lua +5 -0
  15. package/core/util.d.ts +3 -1
  16. package/core/util.lua +109 -3
  17. package/decl/native.d.ts +705 -7
  18. package/engine/behaviour/ability/damage.d.ts +4 -0
  19. package/engine/behaviour/ability/damage.lua +19 -15
  20. package/engine/behaviour/ability/emulate-impact.lua +5 -4
  21. package/engine/behaviour/ability/on-command-impact.d.ts +1 -0
  22. package/engine/behaviour/ability/on-command-impact.lua +1 -0
  23. package/engine/behaviour/ability.d.ts +10 -5
  24. package/engine/behaviour/ability.lua +40 -0
  25. package/engine/behaviour/unit/stun-immunity.d.ts +1 -1
  26. package/engine/behaviour/unit/stun-immunity.lua +5 -4
  27. package/engine/behaviour/unit.d.ts +1 -0
  28. package/engine/behaviour/unit.lua +14 -3
  29. package/engine/buff.d.ts +61 -25
  30. package/engine/buff.lua +330 -156
  31. package/engine/index.d.ts +2 -1
  32. package/engine/internal/ability.d.ts +4 -0
  33. package/engine/internal/ability.lua +52 -33
  34. package/engine/internal/item/fields.d.ts +12 -0
  35. package/engine/internal/item/fields.lua +33 -0
  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 +20 -5
  41. package/engine/internal/item.lua +146 -57
  42. package/engine/internal/mechanics/cast-ability.lua +6 -3
  43. package/engine/internal/object-data/attribute-bonus.lua +2 -2
  44. package/engine/internal/object-data/health-bonus.d.ts +2 -0
  45. package/engine/internal/object-data/health-bonus.lua +16 -0
  46. package/engine/internal/object-data/mana-bonus.d.ts +2 -0
  47. package/engine/internal/object-data/mana-bonus.lua +16 -0
  48. package/engine/internal/unit/ability.lua +15 -3
  49. package/engine/internal/unit/add-item-to-slot-init.lua +3 -14
  50. package/engine/internal/unit/add-item-to-slot.lua +53 -12
  51. package/engine/internal/unit/appearance.d.ts +15 -0
  52. package/engine/internal/unit/appearance.lua +85 -0
  53. package/engine/internal/unit/attributes.d.ts +17 -0
  54. package/engine/internal/unit/attributes.lua +46 -0
  55. package/engine/internal/unit/bonus.d.ts +4 -0
  56. package/engine/internal/unit/bonus.lua +23 -3
  57. package/engine/internal/unit/buff.d.ts +2 -2
  58. package/engine/internal/unit/buff.lua +34 -19
  59. package/engine/internal/unit/equipment-inventory.d.ts +44 -0
  60. package/engine/internal/unit/equipment-inventory.lua +233 -0
  61. package/engine/internal/unit/expiration-timer.lua +1 -1
  62. package/engine/internal/unit/extended-inventory.d.ts +25 -0
  63. package/engine/internal/unit/extended-inventory.lua +99 -0
  64. package/engine/internal/unit/fly-height.lua +3 -3
  65. package/engine/internal/unit/ignore-events-items.lua +10 -1
  66. package/engine/internal/unit/interrupts.d.ts +12 -0
  67. package/engine/internal/unit/interrupts.lua +28 -0
  68. package/engine/internal/unit/{item.d.ts → inventory.d.ts} +7 -3
  69. package/engine/internal/unit/inventory.lua +87 -0
  70. package/engine/internal/unit/item-container.d.ts +25 -0
  71. package/engine/internal/unit/item-container.lua +11 -0
  72. package/engine/internal/unit/item-order-events.d.ts +17 -0
  73. package/engine/internal/unit/item-order-events.lua +67 -0
  74. package/engine/internal/unit/item-slot.d.ts +27 -0
  75. package/engine/internal/unit/item-slot.lua +92 -0
  76. package/engine/internal/unit/order.d.ts +3 -3
  77. package/engine/internal/unit/order.lua +10 -10
  78. package/engine/internal/unit/pseudo-passive-abilities.d.ts +2 -0
  79. package/engine/internal/unit/pseudo-passive-abilities.lua +11 -0
  80. package/engine/internal/unit/range-event.d.ts +12 -0
  81. package/engine/internal/unit/range-event.lua +90 -0
  82. package/engine/internal/unit/scale.lua +3 -3
  83. package/engine/internal/unit+ability.lua +2 -2
  84. package/engine/internal/unit+bonus.lua +3 -3
  85. package/engine/internal/unit+damage.d.ts +9 -0
  86. package/engine/internal/unit+damage.lua +33 -0
  87. package/engine/internal/unit+rally.lua +9 -31
  88. package/engine/internal/unit-missile-data.lua +58 -32
  89. package/engine/internal/unit-missile-launch.lua +25 -18
  90. package/engine/internal/unit.d.ts +3 -18
  91. package/engine/internal/unit.lua +97 -195
  92. package/engine/local-client.d.ts +26 -0
  93. package/engine/local-client.lua +294 -54
  94. package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
  95. package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
  96. package/engine/object-data/auxiliary/equipment-type.d.ts +12 -0
  97. package/engine/object-data/auxiliary/equipment-type.lua +26 -0
  98. package/engine/object-data/auxiliary/item-class.d.ts +11 -0
  99. package/engine/object-data/auxiliary/item-class.lua +2 -0
  100. package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
  101. package/engine/object-data/auxiliary/item-tag.lua +2 -0
  102. package/engine/object-data/auxiliary/order-type.d.ts +939 -0
  103. package/engine/object-data/auxiliary/order-type.lua +2 -0
  104. package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
  105. package/engine/object-data/auxiliary/unit-attribute.lua +1 -1
  106. package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
  107. package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
  108. package/engine/object-data/entry/ability-type/armor-bonus.d.ts +8 -0
  109. package/engine/object-data/entry/ability-type/{armor-increase.lua → armor-bonus.lua} +9 -9
  110. package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
  111. package/engine/object-data/entry/ability-type/banshee.lua +13 -0
  112. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
  113. package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
  114. package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
  115. package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
  116. package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
  117. package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
  118. package/engine/object-data/entry/ability-type/blank-configurable.d.ts +3 -0
  119. package/engine/object-data/entry/ability-type/blank-configurable.lua +30 -0
  120. package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
  121. package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
  122. package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
  123. package/engine/object-data/entry/ability-type/consecration.lua +52 -0
  124. package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
  125. package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
  126. package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
  127. package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
  128. package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
  129. package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
  130. package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
  131. package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
  132. package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
  133. package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
  134. package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
  135. package/engine/object-data/entry/ability-type/equipment.lua +27 -0
  136. package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
  137. package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
  138. package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
  139. package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
  140. package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
  141. package/engine/object-data/entry/ability-type/grit.lua +65 -0
  142. package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
  143. package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
  144. package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
  145. package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
  146. package/engine/object-data/entry/ability-type/{armor-increase.d.ts → healing-modifier.d.ts} +4 -3
  147. package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
  148. package/engine/object-data/entry/ability-type/health-bonus.d.ts +8 -0
  149. package/engine/object-data/entry/ability-type/health-bonus.lua +26 -0
  150. package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
  151. package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
  152. package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
  153. package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
  154. package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
  155. package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
  156. package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
  157. package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
  158. package/engine/object-data/entry/ability-type/mana-bonus.d.ts +8 -0
  159. package/engine/object-data/entry/ability-type/mana-bonus.lua +26 -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/raise-the-banner.d.ts +9 -0
  175. package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
  176. package/engine/object-data/entry/ability-type/reincarnation.d.ts +8 -0
  177. package/engine/object-data/entry/ability-type/reincarnation.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-lantern.d.ts +30 -0
  185. package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
  186. package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
  187. package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
  188. package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
  189. package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
  190. package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
  191. package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
  192. package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
  193. package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
  194. package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
  195. package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
  196. package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
  197. package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
  198. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
  199. package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
  200. package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
  201. package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
  202. package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
  203. package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
  204. package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
  205. package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
  206. package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
  207. package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
  208. package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
  209. package/engine/object-data/entry/ability-type/talents.lua +27 -0
  210. package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
  211. package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
  212. package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
  213. package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
  214. package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
  215. package/engine/object-data/entry/ability-type/warcry.lua +26 -0
  216. package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
  217. package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
  218. package/engine/object-data/entry/ability-type.d.ts +12 -3
  219. package/engine/object-data/entry/ability-type.lua +137 -4
  220. package/engine/object-data/entry/buff-type/applicable.lua +113 -109
  221. package/engine/object-data/entry/buff-type.d.ts +6 -2
  222. package/engine/object-data/entry/buff-type.lua +26 -0
  223. package/engine/object-data/entry/destructible-type.d.ts +6 -2
  224. package/engine/object-data/entry/destructible-type.lua +26 -0
  225. package/engine/object-data/entry/item-type.d.ts +18 -3
  226. package/engine/object-data/entry/item-type.lua +84 -0
  227. package/engine/object-data/entry/lightning-type.d.ts +2 -2
  228. package/engine/object-data/entry/sound-preset.d.ts +2 -2
  229. package/engine/object-data/entry/unit-type.d.ts +47 -2
  230. package/engine/object-data/entry/unit-type.lua +383 -49
  231. package/engine/object-data/entry/upgrade.d.ts +2 -2
  232. package/engine/object-data/entry.d.ts +4 -1
  233. package/engine/object-field/ability.lua +2 -2
  234. package/engine/object-field/item.d.ts +22 -0
  235. package/engine/object-field/item.lua +118 -0
  236. package/engine/object-field.d.ts +3 -1
  237. package/engine/object-field.lua +42 -18
  238. package/engine/random.d.ts +1 -0
  239. package/engine/random.lua +8 -0
  240. package/engine/standard/entries/ability-type.d.ts +3102 -7
  241. package/engine/standard/entries/ability-type.lua +0 -6
  242. package/engine/standard/entries/item-type.d.ts +1299 -0
  243. package/engine/standard/entries/item-type.lua +2 -0
  244. package/engine/standard/entries/unit-type.d.ts +5 -0
  245. package/engine/standard/entries/unit-type.lua +5 -0
  246. package/engine/standard/fields/item.d.ts +4 -0
  247. package/engine/standard/fields/item.lua +6 -0
  248. package/engine/standard/fields/unit.d.ts +11 -6
  249. package/engine/standard/fields/unit.lua +12 -5
  250. package/engine/unit.d.ts +8 -1
  251. package/engine/unit.lua +8 -1
  252. package/event.d.ts +1 -1
  253. package/lualib_bundle.lua +1 -1
  254. package/math.d.ts +2 -0
  255. package/math.lua +14 -0
  256. package/network.lua +25 -1
  257. package/objutil/buff.lua +10 -8
  258. package/objutil/object.lua +1 -1
  259. package/operation.d.ts +8 -1
  260. package/operation.lua +38 -18
  261. package/package.json +3 -23
  262. package/patch-lua.lua +15 -0
  263. package/utility/linked-map.d.ts +35 -0
  264. package/utility/linked-map.lua +107 -0
  265. package/utility/linked-set.d.ts +3 -1
  266. package/utility/linked-set.lua +27 -0
  267. package/utility/random.d.ts +102 -0
  268. package/utility/random.lua +273 -0
  269. package/utility/records.lua +20 -1
  270. package/utility/unordered-map.d.ts +27 -0
  271. package/utility/unordered-map.lua +99 -0
  272. package/engine/internal/unit/item.lua +0 -78
  273. /package/engine/internal/object-data/{armor-increase.d.ts → armor-bonus.d.ts} +0 -0
  274. /package/engine/internal/object-data/{armor-increase.lua → armor-bonus.lua} +0 -0
  275. /package/engine/object-data/entry/ability-type/{attribute-increase.d.ts → attribute-bonus.d.ts} +0 -0
  276. /package/engine/object-data/entry/ability-type/{attribute-increase.lua → attribute-bonus.lua} +0 -0
@@ -65,123 +65,127 @@ function ApplicableBuffType.wrap(self, other)
65
65
  return __TS__New(____exports.ApplicableBuffType, other.object)
66
66
  end
67
67
  ApplicableBuffType.BASE_ID = fourCC("BHbz")
68
- local applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId, applicatorUpgradeIdByApplicatorAbilityTypeId = table.unpack(postcompile(function()
69
- local function prepareAbilityType(abilityTypeConstructor, applicableBuffType)
70
- local abilityType = abilityTypeConstructor:create()
71
- abilityType.isInternal = true
72
- abilityType.levelCount = applicableBuffType.levelCount
73
- abilityType.buttonPositionX = 0
74
- abilityType.buttonPositionY = -11
75
- abilityType.casterAttachmentPresets = {}
76
- abilityType.targetEffectPresets = {}
77
- abilityType.casterEffectSoundPresetId = nil
78
- abilityType.learnLevelMinimum = 6
79
- abilityType.race = "other"
80
- abilityType.shouldCheckTechTreeDependencies = false
81
- abilityType.techTreeDependencies = {}
82
- abilityType.allowedTargetCombatClassifications = combatClassificationsOf(
83
- 4,
84
- 2,
85
- 2097152,
86
- 8,
87
- 1048576,
88
- 16
89
- )
90
- abilityType.areaOfEffect = 0
91
- abilityType.castRange = 999999
92
- abilityType.cooldown = 0
93
- abilityType.manaCost = 0
94
- abilityType.buffDuration = 0
95
- abilityType.heroBuffDuration = 0
96
- return abilityType
97
- end
98
- local multilevelPhysicalPositiveApplicatorAbilityTypes = {}
99
- local applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId = {}
100
- for applicableBuffType in pairs(compiletimeApplicableBuffTypes) do
101
- local applicatorAbilityTypeIdByApplicatorType = {}
102
- if applicableBuffType.resistanceType == 1 or applicableBuffType.resistanceType == nil then
103
- if applicableBuffType.polarity == 2 or applicableBuffType.polarity == nil then
104
- local applicatorAbilityType = prepareAbilityType(CurseAbilityType, applicableBuffType)
105
- applicatorAbilityType.missProbability = 0
106
- applicatorAbilityType.buffTypeIds = {applicableBuffType.id}
107
- applicatorAbilityTypeIdByApplicatorType[852190] = applicatorAbilityType.id
68
+ local applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId, applicatorUpgradeIdByApplicatorAbilityTypeId = table.unpack(
69
+ postcompile(function()
70
+ local function prepareAbilityType(abilityTypeConstructor, applicableBuffType)
71
+ local abilityType = abilityTypeConstructor:create()
72
+ abilityType.isInternal = true
73
+ abilityType.levelCount = applicableBuffType.levelCount
74
+ abilityType.buttonPositionX = 0
75
+ abilityType.buttonPositionY = -11
76
+ abilityType.casterAttachmentPresets = {}
77
+ abilityType.targetEffectPresets = {}
78
+ abilityType.casterEffectSoundPresetId = nil
79
+ abilityType.learnLevelMinimum = 6
80
+ abilityType.race = "other"
81
+ abilityType.shouldCheckTechTreeDependencies = false
82
+ abilityType.techTreeDependencies = {}
83
+ abilityType.allowedTargetCombatClassifications = combatClassificationsOf(
84
+ 4,
85
+ 2,
86
+ 2097152,
87
+ 8,
88
+ 1048576,
89
+ 16
90
+ )
91
+ abilityType.areaOfEffect = 0
92
+ abilityType.castRange = 999999
93
+ abilityType.cooldown = 0
94
+ abilityType.manaCost = 0
95
+ abilityType.buffDuration = 0
96
+ abilityType.heroBuffDuration = 0
97
+ return abilityType
98
+ end
99
+ local multilevelPhysicalPositiveApplicatorAbilityTypes = {}
100
+ local applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId = {}
101
+ for applicableBuffType in pairs(compiletimeApplicableBuffTypes) do
102
+ local applicatorAbilityTypeIdByApplicatorType = {}
103
+ if applicableBuffType.resistanceType == 1 or applicableBuffType.resistanceType == nil then
104
+ if applicableBuffType.polarity == 2 or applicableBuffType.polarity == nil then
105
+ local applicatorAbilityType = prepareAbilityType(CurseAbilityType, applicableBuffType)
106
+ applicatorAbilityType.missProbability = 0
107
+ applicatorAbilityType.buffTypeIds = {applicableBuffType.id}
108
+ applicatorAbilityTypeIdByApplicatorType[852190] = applicatorAbilityType.id
109
+ end
110
+ if applicableBuffType.polarity == 1 or applicableBuffType.polarity == nil then
111
+ local applicatorAbilityType = prepareAbilityType(BloodLustAbilityType, applicableBuffType)
112
+ applicatorAbilityType.attackSpeedIncreaseFactor = 0
113
+ applicatorAbilityType.movementSpeedIncreaseFactor = 0
114
+ applicatorAbilityType.scaleIncrease = 0
115
+ applicatorAbilityType.buffTypeIds = {applicableBuffType.id}
116
+ applicatorAbilityTypeIdByApplicatorType[852101] = applicatorAbilityType.id
117
+ end
108
118
  end
109
- if applicableBuffType.polarity == 1 or applicableBuffType.polarity == nil then
110
- local applicatorAbilityType = prepareAbilityType(BloodLustAbilityType, applicableBuffType)
111
- applicatorAbilityType.attackSpeedIncreaseFactor = 0
112
- applicatorAbilityType.movementSpeedIncreaseFactor = 0
113
- applicatorAbilityType.scaleIncrease = 0
119
+ if applicableBuffType.resistanceType == 2 or applicableBuffType.resistanceType == nil then
120
+ if applicableBuffType.polarity == 2 or applicableBuffType.polarity == nil then
121
+ local applicatorAbilityType = prepareAbilityType(SlowPoisonAbilityType, applicableBuffType)
122
+ applicatorAbilityType.damagePerSecond = 0
123
+ applicatorAbilityType.movementSpeedDecreaseFactor = 0
124
+ applicatorAbilityType.attackSpeedDecreaseFactor = 0
125
+ applicatorAbilityType.isDamageStacking = false
126
+ applicatorAbilityType.isMovementSpeedFactorStacking = false
127
+ applicatorAbilityType.isAttackSpeedFactorStacking = false
128
+ applicatorAbilityType.isAbleToKill = false
129
+ applicatorAbilityType.buffTypeIds = {applicableBuffType.id, applicableBuffType.id}
130
+ applicatorAbilityTypeIdByApplicatorType[852173] = applicatorAbilityType.id
131
+ end
132
+ if applicableBuffType.polarity == 1 or applicableBuffType.polarity == nil then
133
+ local applicatorAbilityType = prepareAbilityType(BerserkAbilityType, applicableBuffType)
134
+ applicatorAbilityType.attackSpeedIncreaseFactor = 0
135
+ applicatorAbilityType.movementSpeedIncreaseFactor = 0
136
+ applicatorAbilityType.receivedDamageIncreaseFactor = 0
137
+ applicatorAbilityType.buffTypeIds = {applicableBuffType.id}
138
+ if applicatorAbilityType.levelCount > 1 then
139
+ multilevelPhysicalPositiveApplicatorAbilityTypes[#multilevelPhysicalPositiveApplicatorAbilityTypes + 1] = applicatorAbilityType
140
+ end
141
+ applicatorAbilityTypeIdByApplicatorType[852100] = applicatorAbilityType.id
142
+ end
143
+ end
144
+ if applicableBuffType.polarity == 0 or applicableBuffType.polarity == nil then
145
+ local applicatorAbilityType = prepareAbilityType(PermanentImmolationAbilityType, applicableBuffType)
146
+ applicatorAbilityType.levelCount = 1
147
+ applicatorAbilityType.damagePerInterval = 0
148
+ applicatorAbilityType.castRange = 0
149
+ applicatorAbilityType.buffDuration = MAXIMUM_INTEGER
150
+ applicatorAbilityType.heroBuffDuration = MAXIMUM_INTEGER
151
+ applicatorAbilityType.allowedTargetCombatClassifications = combatClassificationsOf(1)
114
152
  applicatorAbilityType.buffTypeIds = {applicableBuffType.id}
115
- applicatorAbilityTypeIdByApplicatorType[852101] = applicatorAbilityType.id
153
+ applicatorAbilityTypeIdByApplicatorType[0] = applicatorAbilityType.id
116
154
  end
155
+ applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId[applicableBuffType.id] = applicatorAbilityTypeIdByApplicatorType
117
156
  end
118
- if applicableBuffType.resistanceType == 2 or applicableBuffType.resistanceType == nil then
119
- if applicableBuffType.polarity == 2 or applicableBuffType.polarity == nil then
120
- local applicatorAbilityType = prepareAbilityType(SlowPoisonAbilityType, applicableBuffType)
121
- applicatorAbilityType.damagePerSecond = 0
122
- applicatorAbilityType.movementSpeedDecreaseFactor = 0
123
- applicatorAbilityType.attackSpeedDecreaseFactor = 0
124
- applicatorAbilityType.isDamageStacking = false
125
- applicatorAbilityType.isMovementSpeedFactorStacking = false
126
- applicatorAbilityType.isAttackSpeedFactorStacking = false
127
- applicatorAbilityType.isAbleToKill = false
128
- applicatorAbilityType.buffTypeIds = {applicableBuffType.id, applicableBuffType.id}
129
- applicatorAbilityTypeIdByApplicatorType[852173] = applicatorAbilityType.id
130
- end
131
- if applicableBuffType.polarity == 1 or applicableBuffType.polarity == nil then
132
- local applicatorAbilityType = prepareAbilityType(BerserkAbilityType, applicableBuffType)
133
- applicatorAbilityType.attackSpeedIncreaseFactor = 0
134
- applicatorAbilityType.movementSpeedIncreaseFactor = 0
135
- applicatorAbilityType.receivedDamageIncreaseFactor = 0
136
- applicatorAbilityType.buffTypeIds = {applicableBuffType.id}
137
- if applicatorAbilityType.levelCount > 1 then
138
- multilevelPhysicalPositiveApplicatorAbilityTypes[#multilevelPhysicalPositiveApplicatorAbilityTypes + 1] = applicatorAbilityType
157
+ local applicatorUpgradeIds = {}
158
+ local applicatorUpgradeIdByApplicatorAbilityTypeId = {}
159
+ for ____, multilevelPhysicalPositiveApplicatorAbilityTypesChunk in ipairs(chunked(multilevelPhysicalPositiveApplicatorAbilityTypes, 4)) do
160
+ local maxLevelCount = max(map(multilevelPhysicalPositiveApplicatorAbilityTypesChunk, "levelCount"))
161
+ local applicatorAbilityTypeIds = map(multilevelPhysicalPositiveApplicatorAbilityTypesChunk, "id")
162
+ local applicatorUpgrade = BlankUpgrade:create()
163
+ applicatorUpgrade.isInternal = true
164
+ applicatorUpgrade.levelCount = maxLevelCount - 1
165
+ applicatorUpgrade.effects = map(
166
+ applicatorAbilityTypeIds,
167
+ function(applicatorAbilityTypeId)
168
+ return {type = "rlev", bonusBase = 1, bonusIncrement = 1, abilityTypeId = applicatorAbilityTypeId}
139
169
  end
140
- applicatorAbilityTypeIdByApplicatorType[852100] = applicatorAbilityType.id
170
+ )
171
+ applicatorUpgradeIds[#applicatorUpgradeIds + 1] = applicatorUpgrade.id
172
+ for ____, applicatorAbilityTypeId in ipairs(applicatorAbilityTypeIds) do
173
+ applicatorUpgradeIdByApplicatorAbilityTypeId[applicatorAbilityTypeId] = applicatorUpgrade.id
141
174
  end
142
175
  end
143
- if applicableBuffType.polarity == 0 or applicableBuffType.polarity == nil then
144
- local applicatorAbilityType = prepareAbilityType(PermanentImmolationAbilityType, applicableBuffType)
145
- applicatorAbilityType.levelCount = 1
146
- applicatorAbilityType.damagePerInterval = 0
147
- applicatorAbilityType.castRange = 0
148
- applicatorAbilityType.buffDuration = MAXIMUM_INTEGER
149
- applicatorAbilityType.heroBuffDuration = MAXIMUM_INTEGER
150
- applicatorAbilityType.allowedTargetCombatClassifications = combatClassificationsOf(1)
151
- applicatorAbilityType.buffTypeIds = {applicableBuffType.id}
152
- applicatorAbilityTypeIdByApplicatorType[0] = applicatorAbilityType.id
153
- end
154
- applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId[applicableBuffType.id] = applicatorAbilityTypeIdByApplicatorType
155
- end
156
- local applicatorUpgradeIds = {}
157
- local applicatorUpgradeIdByApplicatorAbilityTypeId = {}
158
- for ____, multilevelPhysicalPositiveApplicatorAbilityTypesChunk in ipairs(chunked(multilevelPhysicalPositiveApplicatorAbilityTypes, 4)) do
159
- local maxLevelCount = max(map(multilevelPhysicalPositiveApplicatorAbilityTypesChunk, "levelCount"))
160
- local applicatorAbilityTypeIds = map(multilevelPhysicalPositiveApplicatorAbilityTypesChunk, "id")
161
- local applicatorUpgrade = BlankUpgrade:create()
162
- applicatorUpgrade.isInternal = true
163
- applicatorUpgrade.levelCount = maxLevelCount - 1
164
- applicatorUpgrade.effects = map(
165
- applicatorAbilityTypeIds,
166
- function(applicatorAbilityTypeId)
167
- return {type = "rlev", bonusBase = 1, bonusIncrement = 1, abilityTypeId = applicatorAbilityTypeId}
168
- end
169
- )
170
- applicatorUpgradeIds[#applicatorUpgradeIds + 1] = applicatorUpgrade.id
171
- for ____, applicatorAbilityTypeId in ipairs(applicatorAbilityTypeIds) do
172
- applicatorUpgradeIdByApplicatorAbilityTypeId[applicatorAbilityTypeId] = applicatorUpgrade.id
176
+ for ____, unitType in ipairs(UnitType:getAll()) do
177
+ local ____array_0 = __TS__SparseArrayNew(table.unpack(unitType.affectingUpgradeIds))
178
+ __TS__SparseArrayPush(
179
+ ____array_0,
180
+ table.unpack(applicatorUpgradeIds)
181
+ )
182
+ unitType.affectingUpgradeIds = {__TS__SparseArraySpread(____array_0)}
173
183
  end
174
- end
175
- for ____, unitType in ipairs(UnitType:getAll()) do
176
- local ____array_0 = __TS__SparseArrayNew(table.unpack(unitType.affectingUpgradeIds))
177
- __TS__SparseArrayPush(
178
- ____array_0,
179
- table.unpack(applicatorUpgradeIds)
180
- )
181
- unitType.affectingUpgradeIds = {__TS__SparseArraySpread(____array_0)}
182
- end
183
- return {applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId, applicatorUpgradeIdByApplicatorAbilityTypeId}
184
- end))
184
+ return {applicatorAbilityTypeIdByApplicatorTypeByApplicableBuffTypeId, applicatorUpgradeIdByApplicatorAbilityTypeId}
185
+ end),
186
+ 1,
187
+ 2
188
+ )
185
189
  local EVASION_ABILITY_TYPE_IDS = postcompile(function()
186
190
  return AbilityType:getAllIdsByBaseIds(map({
187
191
  "AEev",
@@ -3,9 +3,9 @@ import { TupleOf } from "../../../utility/types";
3
3
  import { AttachmentPreset, AttachmentPresetInput } from "../auxiliary/attachment-preset";
4
4
  import { Race } from "../auxiliary/race";
5
5
  import { SoundPresetName } from "../auxiliary/sound-preset-name";
6
- import { ObjectDataEntry, ObjectDataEntryConstructor, ObjectDataEntryId } from "../entry";
6
+ import { ObjectDataEntry, ObjectDataEntryConstructor, CustomObjectDataEntryId } from "../entry";
7
7
  import { LightningTypeId } from "./lightning-type";
8
- export type BuffTypeId = ObjectDataEntryId & number & {
8
+ export type BuffTypeId = CustomObjectDataEntryId & number & {
9
9
  readonly __buffTypeId: unique symbol;
10
10
  };
11
11
  export type StandardBuffTypeId = BuffTypeId & {
@@ -24,6 +24,8 @@ export declare abstract class BuffType<Id extends BuffTypeId = BuffTypeId> exten
24
24
  set iconPathSD(iconPathSD: string);
25
25
  get iconPathHD(): string;
26
26
  set iconPathHD(iconPathHD: string);
27
+ get iconPathDE(): string;
28
+ set iconPathDE(iconPathDE: string);
27
29
  get isMissileHoming(): boolean;
28
30
  set isMissileHoming(isMissileHoming: boolean);
29
31
  get lightningTypeIds(): LightningTypeId[];
@@ -34,6 +36,8 @@ export declare abstract class BuffType<Id extends BuffTypeId = BuffTypeId> exten
34
36
  set missileModelPathSD(missileModelPathSD: string);
35
37
  get missileModelPathHD(): string;
36
38
  set missileModelPathHD(missileModelPathHD: string);
39
+ get missileModelPathDE(): string;
40
+ set missileModelPathDE(missileModelPathDE: string);
37
41
  get missileMovementArc(): number;
38
42
  set missileMovementArc(missileMovementArc: number);
39
43
  get missileMovementSpeed(): number;
@@ -78,6 +78,19 @@ __TS__SetDescriptor(
78
78
  },
79
79
  true
80
80
  )
81
+ __TS__SetDescriptor(
82
+ BuffType.prototype,
83
+ "iconPathDE",
84
+ {
85
+ get = function(self)
86
+ return self:getStringField("fart:de")
87
+ end,
88
+ set = function(self, iconPathDE)
89
+ self:setStringField("fart:de", iconPathDE)
90
+ end
91
+ },
92
+ true
93
+ )
81
94
  __TS__SetDescriptor(
82
95
  BuffType.prototype,
83
96
  "isMissileHoming",
@@ -143,6 +156,19 @@ __TS__SetDescriptor(
143
156
  },
144
157
  true
145
158
  )
159
+ __TS__SetDescriptor(
160
+ BuffType.prototype,
161
+ "missileModelPathDE",
162
+ {
163
+ get = function(self)
164
+ return self:getStringField("fmat:de")
165
+ end,
166
+ set = function(self, missileModelPathDE)
167
+ self:setStringField("fmat:de", missileModelPathDE)
168
+ end
169
+ },
170
+ true
171
+ )
146
172
  __TS__SetDescriptor(
147
173
  BuffType.prototype,
148
174
  "missileMovementArc",
@@ -1,8 +1,8 @@
1
1
  /** @noSelfInFile */
2
2
  import { ArmorSoundType } from "../auxiliary/armor-sound-type";
3
3
  import { CombatClassifications } from "../auxiliary/combat-classification";
4
- import { ObjectDataEntry, ObjectDataEntryConstructor, ObjectDataEntryId } from "../entry";
5
- export type DestructibleTypeId = ObjectDataEntryId & number & {
4
+ import { ObjectDataEntry, ObjectDataEntryConstructor, CustomObjectDataEntryId } from "../entry";
5
+ export type DestructibleTypeId = CustomObjectDataEntryId & number & {
6
6
  readonly __destructibleTypeId: unique symbol;
7
7
  };
8
8
  export type StandardDestructibleTypeId = DestructibleTypeId & {
@@ -23,6 +23,8 @@ export declare abstract class DestructibleType extends ObjectDataEntry<Destructi
23
23
  set modelPathSD(modelPathSD: string);
24
24
  get modelPathHD(): string;
25
25
  set modelPathHD(modelPathHD: string);
26
+ get modelPathDE(): string;
27
+ set modelPathDE(modelPathDE: string);
26
28
  get occlusionHeight(): number;
27
29
  set occlusionHeight(occlusionHeight: number);
28
30
  get armorSoundType(): ArmorSoundType;
@@ -31,6 +33,8 @@ export declare abstract class DestructibleType extends ObjectDataEntry<Destructi
31
33
  set armorSoundTypeSD(armorSoundTypeSD: ArmorSoundType);
32
34
  get armorSoundTypeHD(): ArmorSoundType;
33
35
  set armorSoundTypeHD(armorSoundTypeHD: ArmorSoundType);
36
+ get armorSoundTypeDE(): ArmorSoundType;
37
+ set armorSoundTypeDE(armorSoundTypeDE: ArmorSoundType);
34
38
  get combatClassifications(): CombatClassifications;
35
39
  set combatClassifications(combatClassifications: CombatClassifications);
36
40
  get cliffHeight(): number;
@@ -92,6 +92,19 @@ __TS__SetDescriptor(
92
92
  },
93
93
  true
94
94
  )
95
+ __TS__SetDescriptor(
96
+ DestructibleType.prototype,
97
+ "modelPathDE",
98
+ {
99
+ get = function(self)
100
+ return self:getStringField("bfil:de")
101
+ end,
102
+ set = function(self, modelPathDE)
103
+ self:setStringField("bfil:de", modelPathDE)
104
+ end
105
+ },
106
+ true
107
+ )
95
108
  __TS__SetDescriptor(
96
109
  DestructibleType.prototype,
97
110
  "occlusionHeight",
@@ -144,6 +157,19 @@ __TS__SetDescriptor(
144
157
  },
145
158
  true
146
159
  )
160
+ __TS__SetDescriptor(
161
+ DestructibleType.prototype,
162
+ "armorSoundTypeDE",
163
+ {
164
+ get = function(self)
165
+ return self:getStringField("barm:de")
166
+ end,
167
+ set = function(self, armorSoundTypeDE)
168
+ self:setStringField("barm:de", armorSoundTypeDE)
169
+ end
170
+ },
171
+ true
172
+ )
147
173
  __TS__SetDescriptor(
148
174
  DestructibleType.prototype,
149
175
  "combatClassifications",
@@ -1,10 +1,13 @@
1
1
  /** @noSelfInFile */
2
2
  import { ArmorSoundType } from "../auxiliary/armor-sound-type";
3
- import { ObjectDataEntry, ObjectDataEntryId } from "../entry";
3
+ import { EquipmentType } from "../auxiliary/equipment-type";
4
+ import { ItemClass } from "../auxiliary/item-class";
5
+ import { ObjectDataEntry, CustomObjectDataEntryId } from "../entry";
4
6
  import type { AbilityTypeId } from "./ability-type";
5
- export type ItemTypeId = ObjectDataEntryId & number & {
7
+ import { StandardItemTypeId } from "../../standard/entries/item-type";
8
+ export type ItemTypeId = (CustomObjectDataEntryId & number & {
6
9
  readonly __itemTypeId: unique symbol;
7
- };
10
+ }) | StandardItemTypeId;
8
11
  export declare class ItemType extends ObjectDataEntry<ItemTypeId> {
9
12
  private static readonly idGenerator;
10
13
  protected static generateId(): number;
@@ -17,24 +20,32 @@ export declare class ItemType extends ObjectDataEntry<ItemTypeId> {
17
20
  set iconPathSD(iconPathSD: string);
18
21
  get iconPathHD(): string;
19
22
  set iconPathHD(iconPathHD: string);
23
+ get iconPathDE(): string;
24
+ set iconPathDE(iconPathDE: string);
20
25
  get modelPath(): string;
21
26
  set modelPath(modelPath: string);
22
27
  get modelPathSD(): string;
23
28
  set modelPathSD(modelPathSD: string);
24
29
  get modelPathHD(): string;
25
30
  set modelPathHD(modelPathHD: string);
31
+ get modelPathDE(): string;
32
+ set modelPathDE(modelPathDE: string);
26
33
  get scale(): number;
27
34
  set scale(scale: number);
28
35
  get scaleSD(): number;
29
36
  set scaleSD(scaleSD: number);
30
37
  get scaleHD(): number;
31
38
  set scaleHD(scaleHD: number);
39
+ get scaleDE(): number;
40
+ set scaleDE(scaleDE: number);
32
41
  get armorSoundType(): ArmorSoundType;
33
42
  set armorSoundType(armorSoundType: ArmorSoundType);
34
43
  get armorSoundTypeSD(): ArmorSoundType;
35
44
  set armorSoundTypeSD(armorSoundTypeSD: ArmorSoundType);
36
45
  get armorSoundTypeHD(): ArmorSoundType;
37
46
  set armorSoundTypeHD(armorSoundTypeHD: ArmorSoundType);
47
+ get armorSoundTypeDE(): ArmorSoundType;
48
+ set armorSoundTypeDE(armorSoundTypeDE: ArmorSoundType);
38
49
  get description(): string;
39
50
  set description(description: string);
40
51
  get hotkey(): string;
@@ -51,6 +62,10 @@ export declare class ItemType extends ObjectDataEntry<ItemTypeId> {
51
62
  set goldCost(goldCost: number);
52
63
  get lumberCost(): number;
53
64
  set lumberCost(lumberCost: number);
65
+ get itemClass(): ItemClass;
66
+ set itemClass(itemClass: ItemClass);
67
+ get equipmentType(): EquipmentType;
68
+ set equipmentType(equipmentType: EquipmentType);
54
69
  get activelyUsed(): boolean;
55
70
  set activelyUsed(activelyUsed: boolean);
56
71
  get perishable(): boolean;
@@ -4,6 +4,9 @@ local __TS__ClassExtends = ____lualib.__TS__ClassExtends
4
4
  local __TS__New = ____lualib.__TS__New
5
5
  local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
6
6
  local ____exports = {}
7
+ local ____equipment_2Dtype = require("engine.object-data.auxiliary.equipment-type")
8
+ local equipmentTypeToString = ____equipment_2Dtype.equipmentTypeToString
9
+ local stringToEquipmentType = ____equipment_2Dtype.stringToEquipmentType
7
10
  local ____entry = require("engine.object-data.entry")
8
11
  local ObjectDataEntry = ____entry.ObjectDataEntry
9
12
  local ____object_2Ddata_2Dentry_2Did_2Dgenerator = require("engine.object-data.utility.object-data-entry-id-generator")
@@ -74,6 +77,19 @@ __TS__SetDescriptor(
74
77
  },
75
78
  true
76
79
  )
80
+ __TS__SetDescriptor(
81
+ ItemType.prototype,
82
+ "iconPathDE",
83
+ {
84
+ get = function(self)
85
+ return self:getStringField("iico:de")
86
+ end,
87
+ set = function(self, iconPathDE)
88
+ self:setStringField("iico:de", iconPathDE)
89
+ end
90
+ },
91
+ true
92
+ )
77
93
  __TS__SetDescriptor(
78
94
  ItemType.prototype,
79
95
  "modelPath",
@@ -113,6 +129,19 @@ __TS__SetDescriptor(
113
129
  },
114
130
  true
115
131
  )
132
+ __TS__SetDescriptor(
133
+ ItemType.prototype,
134
+ "modelPathDE",
135
+ {
136
+ get = function(self)
137
+ return self:getStringField("ifil:de")
138
+ end,
139
+ set = function(self, modelPathDE)
140
+ self:setStringField("ifil:de", modelPathDE)
141
+ end
142
+ },
143
+ true
144
+ )
116
145
  __TS__SetDescriptor(
117
146
  ItemType.prototype,
118
147
  "scale",
@@ -152,6 +181,19 @@ __TS__SetDescriptor(
152
181
  },
153
182
  true
154
183
  )
184
+ __TS__SetDescriptor(
185
+ ItemType.prototype,
186
+ "scaleDE",
187
+ {
188
+ get = function(self)
189
+ return self:getNumberField("isca:de")
190
+ end,
191
+ set = function(self, scaleDE)
192
+ self:setNumberField("isca:de", scaleDE)
193
+ end
194
+ },
195
+ true
196
+ )
155
197
  __TS__SetDescriptor(
156
198
  ItemType.prototype,
157
199
  "armorSoundType",
@@ -191,6 +233,19 @@ __TS__SetDescriptor(
191
233
  },
192
234
  true
193
235
  )
236
+ __TS__SetDescriptor(
237
+ ItemType.prototype,
238
+ "armorSoundTypeDE",
239
+ {
240
+ get = function(self)
241
+ return self:getStringField("iarm:de")
242
+ end,
243
+ set = function(self, armorSoundTypeDE)
244
+ self:setStringField("iarm:de", armorSoundTypeDE)
245
+ end
246
+ },
247
+ true
248
+ )
194
249
  __TS__SetDescriptor(
195
250
  ItemType.prototype,
196
251
  "description",
@@ -295,6 +350,35 @@ __TS__SetDescriptor(
295
350
  },
296
351
  true
297
352
  )
353
+ __TS__SetDescriptor(
354
+ ItemType.prototype,
355
+ "itemClass",
356
+ {
357
+ get = function(self)
358
+ return self:getStringField("icla")
359
+ end,
360
+ set = function(self, itemClass)
361
+ self:setStringField("icla", itemClass)
362
+ end
363
+ },
364
+ true
365
+ )
366
+ __TS__SetDescriptor(
367
+ ItemType.prototype,
368
+ "equipmentType",
369
+ {
370
+ get = function(self)
371
+ return stringToEquipmentType(self:getStringField("iequ"))
372
+ end,
373
+ set = function(self, equipmentType)
374
+ self:setStringField(
375
+ "iequ",
376
+ equipmentTypeToString(equipmentType)
377
+ )
378
+ end
379
+ },
380
+ true
381
+ )
298
382
  __TS__SetDescriptor(
299
383
  ItemType.prototype,
300
384
  "activelyUsed",
@@ -1,7 +1,7 @@
1
1
  /** @noSelfInFile */
2
- import { ObjectDataEntry, ObjectDataEntryConstructor, ObjectDataEntryId } from "../entry";
2
+ import { ObjectDataEntry, ObjectDataEntryConstructor, CustomObjectDataEntryId } from "../entry";
3
3
  import { Color } from "../../../core/types/color";
4
- export type LightningTypeId = ObjectDataEntryId & number & {
4
+ export type LightningTypeId = CustomObjectDataEntryId & number & {
5
5
  readonly __lightningTypeId: unique symbol;
6
6
  };
7
7
  export type StandardLightningTypeId = LightningTypeId & {
@@ -1,7 +1,7 @@
1
1
  /** @noSelfInFile */
2
- import { ObjectDataEntry, ObjectDataEntryId } from "../entry";
2
+ import { ObjectDataEntry, CustomObjectDataEntryId } from "../entry";
3
3
  import { SoundEax } from "../auxiliary/sound-eax";
4
- export type SoundPresetId = ObjectDataEntryId & string & {
4
+ export type SoundPresetId = CustomObjectDataEntryId & string & {
5
5
  readonly __soundPresetId: unique symbol;
6
6
  };
7
7
  export type StandardSoundPresetId = SoundPresetId & {