warscript 0.0.1-dev.e1acea3 → 0.0.1-dev.e3899e3

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 (207) hide show
  1. package/attributes.d.ts +6 -0
  2. package/attributes.lua +17 -1
  3. package/config.d.ts +5 -0
  4. package/config.lua +10 -0
  5. package/core/types/effect.d.ts +2 -3
  6. package/core/types/effect.lua +95 -48
  7. package/core/types/frame.lua +24 -21
  8. package/core/types/player.d.ts +16 -0
  9. package/core/types/player.lua +60 -15
  10. package/core/types/playerCamera.d.ts +2 -0
  11. package/core/types/playerCamera.lua +123 -5
  12. package/core/types/sound.d.ts +17 -24
  13. package/core/types/sound.lua +99 -24
  14. package/core/types/tileCell.d.ts +11 -1
  15. package/core/types/tileCell.lua +97 -0
  16. package/core/types/timer.d.ts +9 -8
  17. package/core/types/timer.lua +45 -23
  18. package/core/util.d.ts +1 -1
  19. package/core/util.lua +12 -1
  20. package/decl/native.d.ts +846 -790
  21. package/destroyable.d.ts +1 -0
  22. package/destroyable.lua +9 -0
  23. package/engine/behavior.d.ts +14 -1
  24. package/engine/behavior.lua +230 -70
  25. package/engine/behaviour/ability/always-enabled.d.ts +7 -0
  26. package/engine/behaviour/ability/always-enabled.lua +31 -0
  27. package/engine/behaviour/ability/apply-buff.d.ts +5 -0
  28. package/engine/behaviour/ability/apply-buff.lua +36 -4
  29. package/engine/behaviour/ability/apply-unit-behavior.lua +1 -0
  30. package/engine/behaviour/ability/damage.d.ts +9 -3
  31. package/engine/behaviour/ability/damage.lua +26 -38
  32. package/engine/behaviour/ability/emulate-impact.d.ts +1 -1
  33. package/engine/behaviour/ability/emulate-impact.lua +22 -8
  34. package/engine/behaviour/ability/on-command-impact.lua +7 -0
  35. package/engine/behaviour/ability/remove-buffs.d.ts +13 -1
  36. package/engine/behaviour/ability/remove-buffs.lua +29 -2
  37. package/engine/behaviour/ability/restore-mana.d.ts +1 -1
  38. package/engine/behaviour/ability/restore-mana.lua +6 -6
  39. package/engine/behaviour/ability.d.ts +17 -4
  40. package/engine/behaviour/ability.lua +87 -23
  41. package/engine/behaviour/unit/stun-immunity.d.ts +11 -5
  42. package/engine/behaviour/unit/stun-immunity.lua +53 -28
  43. package/engine/behaviour/unit.d.ts +40 -2
  44. package/engine/behaviour/unit.lua +259 -6
  45. package/engine/buff.d.ts +70 -44
  46. package/engine/buff.lua +362 -232
  47. package/engine/internal/ability.d.ts +18 -2
  48. package/engine/internal/ability.lua +116 -11
  49. package/engine/internal/item/ability.lua +162 -4
  50. package/engine/internal/item+owner.lua +12 -6
  51. package/engine/internal/item.d.ts +20 -19
  52. package/engine/internal/item.lua +191 -74
  53. package/engine/internal/mechanics/ability-duration.lua +1 -1
  54. package/engine/internal/misc/ability-disable-counter.d.ts +2 -0
  55. package/engine/internal/misc/ability-disable-counter.lua +13 -0
  56. package/engine/internal/misc/damage-metadata-by-target.d.ts +2 -0
  57. package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
  58. package/engine/internal/misc/frame-coordinates.d.ts +2 -0
  59. package/engine/internal/misc/frame-coordinates.lua +21 -0
  60. package/engine/internal/misc/get-terrain-z.d.ts +2 -0
  61. package/engine/internal/misc/get-terrain-z.lua +11 -0
  62. package/engine/internal/misc/player-local-handle.d.ts +2 -0
  63. package/engine/internal/misc/player-local-handle.lua +5 -0
  64. package/engine/internal/object-data/auto-attack-speed-increase.d.ts +1 -1
  65. package/engine/internal/object-data/auto-attack-speed-increase.lua +2 -0
  66. package/engine/internal/object-data/evasion-probability.d.ts +2 -0
  67. package/engine/internal/object-data/evasion-probability.lua +16 -0
  68. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.d.ts +2 -0
  69. package/engine/internal/object-data/mana-regeneration-rate-increase-factor.lua +16 -0
  70. package/engine/internal/unit/ability.d.ts +35 -0
  71. package/engine/internal/unit/ability.lua +98 -9
  72. package/engine/internal/unit/add-item-to-slot-init.d.ts +2 -0
  73. package/engine/internal/unit/add-item-to-slot-init.lua +23 -0
  74. package/engine/internal/unit/add-item-to-slot.d.ts +2 -0
  75. package/engine/internal/unit/add-item-to-slot.lua +52 -0
  76. package/engine/internal/unit/allowed-targets.d.ts +1 -1
  77. package/engine/internal/unit/allowed-targets.lua +9 -1
  78. package/engine/internal/unit/bonus.d.ts +4 -0
  79. package/engine/internal/unit/bonus.lua +27 -0
  80. package/engine/internal/unit/fly-height.d.ts +7 -0
  81. package/engine/internal/unit/fly-height.lua +20 -0
  82. package/engine/internal/unit/ignore-events-items.d.ts +2 -0
  83. package/engine/internal/unit/ignore-events-items.lua +5 -0
  84. package/engine/internal/unit/item.lua +6 -12
  85. package/engine/internal/unit/main-selected.lua +12 -27
  86. package/engine/internal/unit/order.d.ts +20 -0
  87. package/engine/internal/unit/order.lua +136 -0
  88. package/engine/internal/unit/scale.d.ts +7 -0
  89. package/engine/internal/unit/scale.lua +20 -0
  90. package/engine/internal/unit+ability.lua +10 -1
  91. package/engine/internal/unit+damage.d.ts +2 -11
  92. package/engine/internal/unit+damage.lua +10 -14
  93. package/engine/internal/unit+spellSteal.lua +1 -2
  94. package/engine/internal/unit-missile-launch.lua +45 -14
  95. package/engine/internal/unit.d.ts +45 -18
  96. package/engine/internal/unit.lua +391 -175
  97. package/engine/internal/utility.lua +12 -0
  98. package/engine/lightning.d.ts +12 -5
  99. package/engine/lightning.lua +48 -14
  100. package/engine/local-client.d.ts +2 -0
  101. package/engine/local-client.lua +30 -0
  102. package/engine/object-data/auxiliary/animation-name.d.ts +1 -0
  103. package/engine/object-data/auxiliary/animation-name.lua +16 -0
  104. package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
  105. package/engine/object-data/auxiliary/armor-type.lua +46 -0
  106. package/engine/object-data/auxiliary/attachment-preset.d.ts +7 -2
  107. package/engine/object-data/auxiliary/attachment-preset.lua +4 -3
  108. package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
  109. package/engine/object-data/auxiliary/attack-type.lua +42 -0
  110. package/engine/object-data/auxiliary/health-regeneration-type.d.ts +8 -0
  111. package/engine/object-data/auxiliary/health-regeneration-type.lua +2 -0
  112. package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
  113. package/engine/object-data/auxiliary/movement-type.lua +22 -0
  114. package/engine/object-data/auxiliary/sound-eax.d.ts +10 -0
  115. package/engine/object-data/auxiliary/sound-eax.lua +2 -0
  116. package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +1 -1
  117. package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
  118. package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
  119. package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
  120. package/engine/object-data/entry/ability-type/berserk.lua +13 -0
  121. package/engine/object-data/entry/ability-type/blank-configurable.lua +12 -1
  122. package/engine/object-data/entry/ability-type/carrion-swarm.d.ts +14 -0
  123. package/engine/object-data/entry/ability-type/carrion-swarm.lua +65 -0
  124. package/engine/object-data/entry/ability-type/disease-cloud.lua +2 -2
  125. package/engine/object-data/entry/ability-type/engineering-upgrade.lua +2 -2
  126. package/engine/object-data/entry/ability-type/ensnare.d.ts +12 -0
  127. package/engine/object-data/entry/ability-type/ensnare.lua +52 -0
  128. package/engine/object-data/entry/ability-type/feral-spirit.lua +2 -2
  129. package/engine/object-data/entry/ability-type/mana-regeneration.d.ts +8 -0
  130. package/engine/object-data/entry/ability-type/mana-regeneration.lua +26 -0
  131. package/engine/object-data/entry/ability-type/permanent-invisibility.d.ts +8 -0
  132. package/engine/object-data/entry/ability-type/permanent-invisibility.lua +26 -0
  133. package/engine/object-data/entry/ability-type/phase-shift.d.ts +10 -0
  134. package/engine/object-data/entry/ability-type/phase-shift.lua +39 -0
  135. package/engine/object-data/entry/ability-type/phoenix-morph.lua +4 -4
  136. package/engine/object-data/entry/ability-type/raise-dead.d.ts +17 -0
  137. package/engine/object-data/entry/ability-type/raise-dead.lua +78 -0
  138. package/engine/object-data/entry/ability-type/shock-wave.d.ts +4 -0
  139. package/engine/object-data/entry/ability-type/shock-wave.lua +26 -0
  140. package/engine/object-data/entry/ability-type/slow-poison.d.ts +10 -0
  141. package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
  142. package/engine/object-data/entry/ability-type/summon-quilbeast.lua +2 -2
  143. package/engine/object-data/entry/ability-type/summon-water-elemental.lua +2 -2
  144. package/engine/object-data/entry/ability-type/web.d.ts +12 -0
  145. package/engine/object-data/entry/ability-type/web.lua +52 -0
  146. package/engine/object-data/entry/ability-type.d.ts +19 -17
  147. package/engine/object-data/entry/ability-type.lua +93 -36
  148. package/engine/object-data/entry/buff-type/applicable.lua +18 -37
  149. package/engine/object-data/entry/buff-type.d.ts +6 -12
  150. package/engine/object-data/entry/buff-type.lua +13 -29
  151. package/engine/object-data/entry/destructible-type.d.ts +28 -2
  152. package/engine/object-data/entry/destructible-type.lua +155 -0
  153. package/engine/object-data/entry/item-type.d.ts +3 -1
  154. package/engine/object-data/entry/item-type.lua +15 -2
  155. package/engine/object-data/entry/lightning-type.d.ts +1 -1
  156. package/engine/object-data/entry/sound-preset.d.ts +33 -0
  157. package/engine/object-data/entry/sound-preset.lua +140 -0
  158. package/engine/object-data/entry/unit-type.d.ts +25 -5
  159. package/engine/object-data/entry/unit-type.lua +258 -93
  160. package/engine/object-data/entry/upgrade.d.ts +1 -1
  161. package/engine/object-data/entry/upgrade.lua +4 -4
  162. package/engine/object-data/entry.d.ts +16 -14
  163. package/engine/object-data/entry.lua +60 -32
  164. package/engine/object-data/utility/object-data-entry-id-generator.lua +7 -0
  165. package/engine/object-field/ability.d.ts +12 -6
  166. package/engine/object-field/ability.lua +8 -4
  167. package/engine/object-field/unit.d.ts +72 -3
  168. package/engine/object-field/unit.lua +268 -7
  169. package/engine/object-field.d.ts +23 -6
  170. package/engine/object-field.lua +337 -116
  171. package/engine/random.d.ts +9 -0
  172. package/engine/random.lua +13 -0
  173. package/engine/standard/entries/buff-type.d.ts +3 -0
  174. package/engine/standard/entries/buff-type.lua +3 -0
  175. package/engine/standard/entries/sound-preset.d.ts +10 -0
  176. package/engine/standard/entries/sound-preset.lua +10 -0
  177. package/engine/standard/fields/ability.d.ts +4 -2
  178. package/engine/standard/fields/ability.lua +4 -2
  179. package/engine/standard/fields/unit.d.ts +7 -0
  180. package/engine/standard/fields/unit.lua +13 -0
  181. package/engine/synchronization.d.ts +11 -0
  182. package/engine/synchronization.lua +77 -0
  183. package/engine/text-tag.d.ts +36 -2
  184. package/engine/text-tag.lua +250 -10
  185. package/engine/unit.d.ts +4 -0
  186. package/engine/unit.lua +4 -0
  187. package/net/socket.lua +1 -1
  188. package/objutil/buff.lua +2 -3
  189. package/objutil/unit.lua +8 -0
  190. package/package.json +2 -2
  191. package/patch-lualib.lua +1 -1
  192. package/utility/arrays.d.ts +2 -0
  193. package/utility/arrays.lua +11 -0
  194. package/utility/callback-array.d.ts +17 -0
  195. package/utility/callback-array.lua +61 -0
  196. package/utility/functions.d.ts +8 -0
  197. package/utility/functions.lua +13 -0
  198. package/utility/linked-set.d.ts +2 -0
  199. package/utility/linked-set.lua +22 -1
  200. package/utility/lua-maps.d.ts +15 -2
  201. package/utility/lua-maps.lua +53 -2
  202. package/utility/lua-sets.d.ts +2 -0
  203. package/utility/lua-sets.lua +7 -0
  204. package/utility/reflection.lua +11 -7
  205. package/utility/types.d.ts +3 -0
  206. package/core/types/order.d.ts +0 -25
  207. package/core/types/order.lua +0 -55
package/engine/buff.d.ts CHANGED
@@ -12,6 +12,8 @@ import { EffectParameters } from "../core/types/effect";
12
12
  import { UnitBehavior } from "./behaviour/unit";
13
13
  import type { Widget } from "../core/types/widget";
14
14
  import { Destructor } from "../destroyable";
15
+ import { Event } from "../event";
16
+ import { AbilityBehavior } from "./behaviour/ability";
15
17
  export type BuffConstructor<T extends Buff<any> = Buff<any>, Args extends any[] = any> = OmitConstructor<typeof Buff<any>> & (new (...args: Args) => T);
16
18
  type EnumParameterValueType<T extends number> = T | AbilityEnumLevelField<T>;
17
19
  type NumberParameterValueType = number | AbilityNumberField | AbilityNumberLevelField;
@@ -55,12 +57,16 @@ export type BuffParameters<T extends Buff<any> = Buff> = Buff extends T ? {
55
57
  armorIncreaseFactor?: NumberParameterValueType;
56
58
  attackSpeedIncreaseFactor?: NumberParameterValueType;
57
59
  movementSpeedIncreaseFactor?: NumberParameterValueType;
60
+ manaRegenerationRateIncreaseFactor?: NumberParameterValueType;
61
+ evasionProbability?: NumberParameterValueType;
62
+ missProbability?: NumberParameterValueType;
58
63
  damageFactor?: NumberParameterValueType;
59
64
  receivedDamageFactor?: NumberParameterValueType;
60
65
  receivedMagicDamageFactor?: NumberParameterValueType;
61
66
  durationIncreaseOnAutoAttack?: NumberParameterValueType;
62
67
  maximumRemainingDuration?: NumberParameterValueType;
63
68
  maximumDuration?: NumberParameterValueType;
69
+ turnsIntoGhost?: BooleanParameterValueType;
64
70
  stuns?: BooleanParameterValueType;
65
71
  ignoresStunImmunity?: BooleanParameterValueType;
66
72
  providesStunImmunity?: BooleanParameterValueType;
@@ -75,49 +81,55 @@ export type BuffParameters<T extends Buff<any> = Buff> = Buff extends T ? {
75
81
  healingOnExpiration?: NumberParameterValueType;
76
82
  killsOnExpiration?: BooleanParameterValueType;
77
83
  explodesOnExpiration?: BooleanParameterValueType;
84
+ abilityCooldownFactor?: NumberParameterValueType;
78
85
  uniqueGroup?: BuffUniqueGroup;
79
86
  } : BuffParameters & (T extends Buff<infer AdditionalParameters> ? AdditionalParameters : object);
80
87
  declare const enum BuffPropertyKey {
81
- UNIT = 100,
82
- SOURCE = 101,
83
- DURATION = 102,
84
- UNIQUE_GROUP = 103,
85
- EFFECT_MODEL_PATH = 104,
86
- SPECIAL_EFFECT_MODEL_PATH = 105,
87
- DURATION_INCREASE_ON_AUTO_ATTACK = 106,
88
- MAXIMUM_DURATION = 107,
89
- MAXIMUM_REMAINING_DURATION = 108,
90
- DAMAGE_OVER_DURATION = 109,
91
- DAMAGE_PER_INTERVAL = 110,
92
- DAMAGE_INTERVAL = 111,
93
- REMAINING_DAMAGE_OVER_DURATION = 112,
94
- DAMAGE_INTERVAL_TIMER = 113,
95
- HEALING_OVER_DURATION = 114,
96
- HEALING_PER_INTERVAL = 115,
97
- HEALING_INTERVAL = 116,
98
- REMAINING_HEALING_OVER_DURATION = 117,
99
- HEALING_INTERVAL_TIMER = 118,
100
- DAMAGE_ON_EXPIRATION = 119,
101
- HEALING_ON_EXPIRATION = 120,
102
- DAMAGE_UPON_DEATH_ALLOWED_TARGET_CLASSIFICATIONS = 121,
103
- DAMAGE_UPON_DEATH = 122,
104
- DAMAGE_UPON_DEATH_RANGE = 123,
105
- MEDIUM_DAMAGE_UPON_DEATH = 124,
106
- MEDIUM_DAMAGE_UPON_DEATH_RANGE = 125,
107
- SMALL_DAMAGE_UPON_DEATH = 126,
108
- SMALL_DAMAGE_UPON_DEATH_RANGE = 127,
109
- AUTO_ATTACK_COUNT = 128,
110
- MAXIMUM_AUTO_ATTACK_COUNT = 129,
111
- DAMAGE_DEALT_EVENT_COUNT = 130,
112
- MAXIMUM_DAMAGE_DEALT_EVENT_COUNT = 131,
113
- DAMAGE_RECEIVED_EVENT_COUNT = 132,
114
- MAXIMUM_DAMAGE_RECEIVED_EVENT_COUNT = 133,
115
- STUNS = 134,
116
- IGNORES_STUN_IMMUNITY = 135,
117
- DISABLES_AUTO_ATTACK = 136,
118
- PROVIDES_INVULNERABILITY = 137,
119
- KILLS_ON_EXPIRATION = 138,
120
- EXPLODES_ON_EXPIRATION = 139
88
+ STATE = 100,
89
+ UNIT = 101,
90
+ SOURCE = 102,
91
+ DURATION = 103,
92
+ UNIQUE_GROUP = 104,
93
+ EFFECT_MODEL_PATH = 105,
94
+ SPECIAL_EFFECT_MODEL_PATH = 106,
95
+ DURATION_INCREASE_ON_AUTO_ATTACK = 107,
96
+ MAXIMUM_DURATION = 108,
97
+ MAXIMUM_REMAINING_DURATION = 109,
98
+ DAMAGE_OVER_DURATION = 110,
99
+ DAMAGE_PER_INTERVAL = 111,
100
+ DAMAGE_INTERVAL = 112,
101
+ REMAINING_DAMAGE_OVER_DURATION = 113,
102
+ DAMAGE_INTERVAL_TIMER = 114,
103
+ HEALING_OVER_DURATION = 115,
104
+ HEALING_PER_INTERVAL = 116,
105
+ HEALING_INTERVAL = 117,
106
+ REMAINING_HEALING_OVER_DURATION = 118,
107
+ HEALING_INTERVAL_TIMER = 119,
108
+ DAMAGE_ON_EXPIRATION = 120,
109
+ HEALING_ON_EXPIRATION = 121,
110
+ DAMAGE_UPON_DEATH_ALLOWED_TARGET_CLASSIFICATIONS = 122,
111
+ DAMAGE_UPON_DEATH = 123,
112
+ DAMAGE_UPON_DEATH_RANGE = 124,
113
+ MEDIUM_DAMAGE_UPON_DEATH = 125,
114
+ MEDIUM_DAMAGE_UPON_DEATH_RANGE = 126,
115
+ SMALL_DAMAGE_UPON_DEATH = 127,
116
+ SMALL_DAMAGE_UPON_DEATH_RANGE = 128,
117
+ AUTO_ATTACK_COUNT = 129,
118
+ MAXIMUM_AUTO_ATTACK_COUNT = 130,
119
+ DAMAGE_DEALT_EVENT_COUNT = 131,
120
+ MAXIMUM_DAMAGE_DEALT_EVENT_COUNT = 132,
121
+ DAMAGE_RECEIVED_EVENT_COUNT = 133,
122
+ MAXIMUM_DAMAGE_RECEIVED_EVENT_COUNT = 134,
123
+ TURNS_INTO_GHOST = 135,
124
+ STUNS = 136,
125
+ IGNORES_STUN_IMMUNITY = 137,
126
+ DISABLES_AUTO_ATTACK = 138,
127
+ PROVIDES_INVULNERABILITY = 139,
128
+ KILLS_ON_EXPIRATION = 140,
129
+ EXPLODES_ON_EXPIRATION = 141,
130
+ MISS_PROBABILITY = 142,
131
+ ABILITY_COOLDOWN_FACTOR = 143,
132
+ ABILITY_COOLDOWN_MODIFIER = 144
121
133
  }
122
134
  export declare const enum BuffTypeIdSelectionPolicy {
123
135
  LEAST_DURATION = 0
@@ -131,13 +143,14 @@ export type BuffConstructorParameters<AdditionalParameters extends BuffAdditiona
131
143
  polarity: BuffPolarityParameterType,
132
144
  resistanceType: BuffResistanceTypeParameterType,
133
145
  ...abilityOrParameters: [
134
- ability: Ability,
146
+ ability?: Ability | AbilityBehavior,
135
147
  parameters?: BuffParameters & Omit<AdditionalParameters, keyof BuffParameters>
136
148
  ] | [parameters?: BuffParameters & Omit<AdditionalParameters, keyof BuffParameters>]
137
149
  ];
138
150
  export declare class Buff<AdditionalParameters extends Prohibit<Record<string, any>, keyof BuffParameters> = object> extends UnitBehavior {
139
151
  private _unit;
140
152
  protected readonly __additionalParametersBrand?: AdditionalParameters;
153
+ private [BuffPropertyKey.STATE];
141
154
  private [BuffPropertyKey.UNIT];
142
155
  private [BuffPropertyKey.SOURCE]?;
143
156
  private [BuffPropertyKey.DURATION];
@@ -172,12 +185,15 @@ export declare class Buff<AdditionalParameters extends Prohibit<Record<string, a
172
185
  private [BuffPropertyKey.DAMAGE_DEALT_EVENT_COUNT]?;
173
186
  private [BuffPropertyKey.MAXIMUM_DAMAGE_RECEIVED_EVENT_COUNT]?;
174
187
  private [BuffPropertyKey.DAMAGE_RECEIVED_EVENT_COUNT]?;
188
+ private [BuffPropertyKey.TURNS_INTO_GHOST]?;
175
189
  private [BuffPropertyKey.STUNS]?;
176
190
  private [BuffPropertyKey.IGNORES_STUN_IMMUNITY]?;
177
191
  private [BuffPropertyKey.DISABLES_AUTO_ATTACK]?;
178
192
  private [BuffPropertyKey.PROVIDES_INVULNERABILITY]?;
179
193
  private [BuffPropertyKey.KILLS_ON_EXPIRATION]?;
180
194
  private [BuffPropertyKey.EXPLODES_ON_EXPIRATION]?;
195
+ private [BuffPropertyKey.ABILITY_COOLDOWN_FACTOR]?;
196
+ private [BuffPropertyKey.ABILITY_COOLDOWN_MODIFIER]?;
181
197
  protected static readonly defaultParameters: BuffParameters;
182
198
  get source(): Unit;
183
199
  readonly typeId: ApplicableBuffTypeId;
@@ -191,11 +207,9 @@ export declare class Buff<AdditionalParameters extends Prohibit<Record<string, a
191
207
  private readonly _level?;
192
208
  private readonly _spellStealPriority?;
193
209
  private readonly _learnLevelMinimum?;
194
- private _bonusIdByBonusType?;
210
+ private readonly [BuffPropertyKey.MISS_PROBABILITY]?;
195
211
  private readonly _abilityTypeIds?;
196
212
  private _behaviors?;
197
- private getUnitBonus;
198
- private addOrUpdateOrRemoveUnitBonus;
199
213
  constructor(target: Unit, ...parameters: BuffConstructorParameters<AdditionalParameters>);
200
214
  get level(): number;
201
215
  get remainingDamageOverDuration(): number;
@@ -224,6 +238,8 @@ export declare class Buff<AdditionalParameters extends Prohibit<Record<string, a
224
238
  set receivedDamageFactor(receivedDamageFactor: number);
225
239
  get armorIncrease(): number;
226
240
  set armorIncrease(armorIncrease: number);
241
+ get turnsIntoGhost(): boolean;
242
+ set turnsIntoGhost(turnsIntoGhost: boolean);
227
243
  get stuns(): boolean;
228
244
  set stuns(stuns: boolean);
229
245
  get ignoresStunImmunity(): boolean;
@@ -248,9 +264,17 @@ export declare class Buff<AdditionalParameters extends Prohibit<Record<string, a
248
264
  set attackSpeedIncreaseFactor(attackSpeedIncreaseFactor: number);
249
265
  get movementSpeedIncreaseFactor(): number;
250
266
  set movementSpeedIncreaseFactor(movementSpeedIncreaseFactor: number);
267
+ get evasionProbability(): number;
268
+ set evasionProbability(evasionProbability: number);
269
+ get manaRegenerationRateIncreaseFactor(): number;
270
+ set manaRegenerationRateIncreaseFactor(manaRegenerationRateIncreaseFactor: number);
251
271
  get duration(): number;
252
272
  get remainingDuration(): number;
253
273
  set remainingDuration(remainingDuration: number);
274
+ get abilityCooldownFactor(): number;
275
+ set abilityCooldownFactor(abilityCooldownFactor: number);
276
+ onAbilityGained(ability: Ability): void;
277
+ onAbilityLost(ability: Ability): void;
254
278
  flashEffect(...parameters: [
255
279
  ...widgetOrXY: [] | [Widget] | [x: number, x: number],
256
280
  ...parametersOrDuration: [] | [EffectParameters] | [number]
@@ -264,5 +288,7 @@ export declare class Buff<AdditionalParameters extends Prohibit<Record<string, a
264
288
  onDeath(source: Unit | undefined): void;
265
289
  onDamageDealt(target: Unit, event: DamageEvent): void;
266
290
  onDamageReceived(source: Unit | undefined, event: DamageEvent): void;
291
+ static readonly createdEvent: Event<[Buff<object>]>;
292
+ static readonly beingDestroyedEvent: Event<[Buff<object>]>;
267
293
  }
268
294
  export {};