@pkmn/sim 0.8.3 → 0.8.5

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 (286) hide show
  1. package/build/cjs/config/formats.js +163 -212
  2. package/build/cjs/config/formats.js.map +1 -1
  3. package/build/cjs/data/abilities.js +370 -165
  4. package/build/cjs/data/abilities.js.map +1 -1
  5. package/build/cjs/data/conditions.js +0 -3
  6. package/build/cjs/data/conditions.js.map +1 -1
  7. package/build/cjs/data/formats-data.js +330 -312
  8. package/build/cjs/data/formats-data.js.map +1 -1
  9. package/build/cjs/data/items.js +2 -2
  10. package/build/cjs/data/items.js.map +1 -1
  11. package/build/cjs/data/legality.js +424 -104
  12. package/build/cjs/data/legality.js.map +1 -1
  13. package/build/cjs/data/mods/gen1/formats-data.js +22 -22
  14. package/build/cjs/data/mods/gen1/moves.js +6 -8
  15. package/build/cjs/data/mods/gen1/moves.js.map +1 -1
  16. package/build/cjs/data/mods/gen2/formats-data.js +43 -43
  17. package/build/cjs/data/mods/gen2/formats-data.js.map +1 -1
  18. package/build/cjs/data/mods/gen2/moves.js +4 -7
  19. package/build/cjs/data/mods/gen2/moves.js.map +1 -1
  20. package/build/cjs/data/mods/gen3/abilities.js +6 -5
  21. package/build/cjs/data/mods/gen3/abilities.js.map +1 -1
  22. package/build/cjs/data/mods/gen3/formats-data.js +32 -32
  23. package/build/cjs/data/mods/gen3/formats-data.js.map +1 -1
  24. package/build/cjs/data/mods/gen3/moves.js +15 -10
  25. package/build/cjs/data/mods/gen3/moves.js.map +1 -1
  26. package/build/cjs/data/mods/gen3/scripts.js +11 -6
  27. package/build/cjs/data/mods/gen3/scripts.js.map +1 -1
  28. package/build/cjs/data/mods/gen4/abilities.js +8 -2
  29. package/build/cjs/data/mods/gen4/abilities.js.map +1 -1
  30. package/build/cjs/data/mods/gen4/moves.js +49 -45
  31. package/build/cjs/data/mods/gen4/moves.js.map +1 -1
  32. package/build/cjs/data/mods/gen4/scripts.js +11 -6
  33. package/build/cjs/data/mods/gen4/scripts.js.map +1 -1
  34. package/build/cjs/data/mods/gen5/abilities.js +1 -0
  35. package/build/cjs/data/mods/gen5/abilities.js.map +1 -1
  36. package/build/cjs/data/mods/gen5/moves.js +44 -66
  37. package/build/cjs/data/mods/gen5/moves.js.map +1 -1
  38. package/build/cjs/data/mods/gen6/abilities.js +1 -1
  39. package/build/cjs/data/mods/gen6/abilities.js.map +1 -1
  40. package/build/cjs/data/mods/gen6/moves.js +1 -1
  41. package/build/cjs/data/mods/gen6/moves.js.map +1 -1
  42. package/build/cjs/data/mods/gen7/abilities.js +2 -2
  43. package/build/cjs/data/mods/gen7/abilities.js.map +1 -1
  44. package/build/cjs/data/mods/gen7/moves.js +21 -9
  45. package/build/cjs/data/mods/gen7/moves.js.map +1 -1
  46. package/build/cjs/data/mods/gen8/abilities.js +3 -1
  47. package/build/cjs/data/mods/gen8/abilities.js.map +1 -1
  48. package/build/cjs/data/mods/gen8/moves.js +6 -2
  49. package/build/cjs/data/mods/gen8/moves.js.map +1 -1
  50. package/build/cjs/data/moves.js +760 -770
  51. package/build/cjs/data/moves.js.map +1 -1
  52. package/build/cjs/data/rulesets.js +33 -56
  53. package/build/cjs/data/rulesets.js.map +1 -1
  54. package/build/cjs/data/text/abilities.js +34 -12
  55. package/build/cjs/data/text/abilities.js.map +1 -1
  56. package/build/cjs/data/text/moves.js +9 -9
  57. package/build/cjs/data/text/moves.js.map +1 -1
  58. package/build/cjs/sim/battle-actions.js +21 -21
  59. package/build/cjs/sim/battle-actions.js.map +1 -1
  60. package/build/cjs/sim/battle.js +4 -5
  61. package/build/cjs/sim/battle.js.map +1 -1
  62. package/build/cjs/sim/dex-abilities.d.ts +11 -2
  63. package/build/cjs/sim/dex-abilities.js +1 -0
  64. package/build/cjs/sim/dex-abilities.js.map +1 -1
  65. package/build/cjs/sim/dex-conditions.d.ts +6 -0
  66. package/build/cjs/sim/dex-conditions.js.map +1 -1
  67. package/build/cjs/sim/dex-formats.d.ts +2 -0
  68. package/build/cjs/sim/dex-formats.js +1 -0
  69. package/build/cjs/sim/dex-formats.js.map +1 -1
  70. package/build/cjs/sim/dex-moves.d.ts +1 -4
  71. package/build/cjs/sim/dex-moves.js +0 -1
  72. package/build/cjs/sim/dex-moves.js.map +1 -1
  73. package/build/cjs/sim/exported-global-types.d.ts +2 -2
  74. package/build/cjs/sim/global-types.d.ts +2 -2
  75. package/build/cjs/sim/pokemon.js +7 -4
  76. package/build/cjs/sim/pokemon.js.map +1 -1
  77. package/build/cjs/sim/team-validator.js +1 -1
  78. package/build/cjs/sim/team-validator.js.map +1 -1
  79. package/build/cjs/sim/tools/runner.js +1 -1
  80. package/build/cjs/sim/tools/runner.js.map +1 -1
  81. package/build/esm/config/formats.mjs +163 -212
  82. package/build/esm/config/formats.mjs.map +1 -1
  83. package/build/esm/data/abilities.mjs +370 -165
  84. package/build/esm/data/abilities.mjs.map +1 -1
  85. package/build/esm/data/conditions.mjs +0 -3
  86. package/build/esm/data/conditions.mjs.map +1 -1
  87. package/build/esm/data/formats-data.mjs +330 -312
  88. package/build/esm/data/formats-data.mjs.map +1 -1
  89. package/build/esm/data/items.mjs +2 -2
  90. package/build/esm/data/items.mjs.map +1 -1
  91. package/build/esm/data/legality.mjs +424 -104
  92. package/build/esm/data/legality.mjs.map +1 -1
  93. package/build/esm/data/mods/gen1/formats-data.mjs +22 -22
  94. package/build/esm/data/mods/gen1/moves.mjs +6 -8
  95. package/build/esm/data/mods/gen1/moves.mjs.map +1 -1
  96. package/build/esm/data/mods/gen2/formats-data.mjs +43 -43
  97. package/build/esm/data/mods/gen2/formats-data.mjs.map +1 -1
  98. package/build/esm/data/mods/gen2/moves.mjs +4 -7
  99. package/build/esm/data/mods/gen2/moves.mjs.map +1 -1
  100. package/build/esm/data/mods/gen3/abilities.mjs +6 -5
  101. package/build/esm/data/mods/gen3/abilities.mjs.map +1 -1
  102. package/build/esm/data/mods/gen3/formats-data.mjs +32 -32
  103. package/build/esm/data/mods/gen3/formats-data.mjs.map +1 -1
  104. package/build/esm/data/mods/gen3/moves.mjs +15 -10
  105. package/build/esm/data/mods/gen3/moves.mjs.map +1 -1
  106. package/build/esm/data/mods/gen3/scripts.mjs +11 -6
  107. package/build/esm/data/mods/gen3/scripts.mjs.map +1 -1
  108. package/build/esm/data/mods/gen4/abilities.mjs +8 -2
  109. package/build/esm/data/mods/gen4/abilities.mjs.map +1 -1
  110. package/build/esm/data/mods/gen4/moves.mjs +49 -45
  111. package/build/esm/data/mods/gen4/moves.mjs.map +1 -1
  112. package/build/esm/data/mods/gen4/scripts.mjs +11 -6
  113. package/build/esm/data/mods/gen4/scripts.mjs.map +1 -1
  114. package/build/esm/data/mods/gen5/abilities.mjs +1 -0
  115. package/build/esm/data/mods/gen5/abilities.mjs.map +1 -1
  116. package/build/esm/data/mods/gen5/moves.mjs +44 -66
  117. package/build/esm/data/mods/gen5/moves.mjs.map +1 -1
  118. package/build/esm/data/mods/gen6/abilities.mjs +1 -1
  119. package/build/esm/data/mods/gen6/abilities.mjs.map +1 -1
  120. package/build/esm/data/mods/gen6/moves.mjs +1 -1
  121. package/build/esm/data/mods/gen6/moves.mjs.map +1 -1
  122. package/build/esm/data/mods/gen7/abilities.mjs +2 -2
  123. package/build/esm/data/mods/gen7/abilities.mjs.map +1 -1
  124. package/build/esm/data/mods/gen7/moves.mjs +21 -9
  125. package/build/esm/data/mods/gen7/moves.mjs.map +1 -1
  126. package/build/esm/data/mods/gen8/abilities.mjs +3 -1
  127. package/build/esm/data/mods/gen8/abilities.mjs.map +1 -1
  128. package/build/esm/data/mods/gen8/moves.mjs +6 -2
  129. package/build/esm/data/mods/gen8/moves.mjs.map +1 -1
  130. package/build/esm/data/moves.mjs +760 -770
  131. package/build/esm/data/moves.mjs.map +1 -1
  132. package/build/esm/data/rulesets.mjs +33 -56
  133. package/build/esm/data/rulesets.mjs.map +1 -1
  134. package/build/esm/data/text/abilities.mjs +34 -12
  135. package/build/esm/data/text/abilities.mjs.map +1 -1
  136. package/build/esm/data/text/moves.mjs +9 -9
  137. package/build/esm/data/text/moves.mjs.map +1 -1
  138. package/build/esm/sim/battle-actions.mjs +21 -21
  139. package/build/esm/sim/battle-actions.mjs.map +1 -1
  140. package/build/esm/sim/battle.mjs +4 -5
  141. package/build/esm/sim/battle.mjs.map +1 -1
  142. package/build/esm/sim/dex-abilities.d.mts +11 -2
  143. package/build/esm/sim/dex-abilities.mjs +1 -0
  144. package/build/esm/sim/dex-abilities.mjs.map +1 -1
  145. package/build/esm/sim/dex-conditions.d.mts +6 -0
  146. package/build/esm/sim/dex-conditions.mjs.map +1 -1
  147. package/build/esm/sim/dex-formats.d.mts +2 -0
  148. package/build/esm/sim/dex-formats.mjs +1 -0
  149. package/build/esm/sim/dex-formats.mjs.map +1 -1
  150. package/build/esm/sim/dex-moves.d.mts +1 -4
  151. package/build/esm/sim/dex-moves.mjs +0 -1
  152. package/build/esm/sim/dex-moves.mjs.map +1 -1
  153. package/build/esm/sim/exported-global-types.d.mts +2 -2
  154. package/build/esm/sim/global-types.d.mts +2 -2
  155. package/build/esm/sim/pokemon.mjs +7 -4
  156. package/build/esm/sim/pokemon.mjs.map +1 -1
  157. package/build/esm/sim/team-validator.mjs +1 -1
  158. package/build/esm/sim/team-validator.mjs.map +1 -1
  159. package/build/esm/sim/tools/runner.mjs +1 -1
  160. package/build/esm/sim/tools/runner.mjs.map +1 -1
  161. package/package.json +1 -1
  162. package/build/types/config/formats.d.ts +0 -1
  163. package/build/types/data/abilities.d.ts +0 -3
  164. package/build/types/data/aliases.d.ts +0 -3
  165. package/build/types/data/conditions.d.ts +0 -3
  166. package/build/types/data/formats-data.d.ts +0 -3
  167. package/build/types/data/index.d.ts +0 -11
  168. package/build/types/data/items.d.ts +0 -3
  169. package/build/types/data/learnsets.d.ts +0 -3
  170. package/build/types/data/legality.d.ts +0 -3
  171. package/build/types/data/mods/gen1/conditions.d.ts +0 -12
  172. package/build/types/data/mods/gen1/formats-data.d.ts +0 -3
  173. package/build/types/data/mods/gen1/index.d.ts +0 -7
  174. package/build/types/data/mods/gen1/moves.d.ts +0 -7
  175. package/build/types/data/mods/gen1/pokedex.d.ts +0 -3
  176. package/build/types/data/mods/gen1/rulesets.d.ts +0 -3
  177. package/build/types/data/mods/gen1/scripts.d.ts +0 -6
  178. package/build/types/data/mods/gen1/typechart.d.ts +0 -10
  179. package/build/types/data/mods/gen2/conditions.d.ts +0 -3
  180. package/build/types/data/mods/gen2/formats-data.d.ts +0 -3
  181. package/build/types/data/mods/gen2/index.d.ts +0 -8
  182. package/build/types/data/mods/gen2/items.d.ts +0 -3
  183. package/build/types/data/mods/gen2/learnsets.d.ts +0 -3
  184. package/build/types/data/mods/gen2/legality.d.ts +0 -3
  185. package/build/types/data/mods/gen2/moves.d.ts +0 -6
  186. package/build/types/data/mods/gen2/pokedex.d.ts +0 -3
  187. package/build/types/data/mods/gen2/rulesets.d.ts +0 -3
  188. package/build/types/data/mods/gen2/scripts.d.ts +0 -4
  189. package/build/types/data/mods/gen2/typechart.d.ts +0 -3
  190. package/build/types/data/mods/gen3/abilities.d.ts +0 -3
  191. package/build/types/data/mods/gen3/conditions.d.ts +0 -3
  192. package/build/types/data/mods/gen3/formats-data.d.ts +0 -3
  193. package/build/types/data/mods/gen3/index.d.ts +0 -7
  194. package/build/types/data/mods/gen3/items.d.ts +0 -3
  195. package/build/types/data/mods/gen3/moves.d.ts +0 -6
  196. package/build/types/data/mods/gen3/rulesets.d.ts +0 -3
  197. package/build/types/data/mods/gen3/scripts.d.ts +0 -1
  198. package/build/types/data/mods/gen4/abilities.d.ts +0 -3
  199. package/build/types/data/mods/gen4/conditions.d.ts +0 -3
  200. package/build/types/data/mods/gen4/formats-data.d.ts +0 -3
  201. package/build/types/data/mods/gen4/index.d.ts +0 -8
  202. package/build/types/data/mods/gen4/items.d.ts +0 -3
  203. package/build/types/data/mods/gen4/moves.d.ts +0 -3
  204. package/build/types/data/mods/gen4/pokedex.d.ts +0 -3
  205. package/build/types/data/mods/gen4/rulesets.d.ts +0 -3
  206. package/build/types/data/mods/gen4/scripts.d.ts +0 -1
  207. package/build/types/data/mods/gen5/abilities.d.ts +0 -3
  208. package/build/types/data/mods/gen5/conditions.d.ts +0 -3
  209. package/build/types/data/mods/gen5/formats-data.d.ts +0 -3
  210. package/build/types/data/mods/gen5/index.d.ts +0 -9
  211. package/build/types/data/mods/gen5/items.d.ts +0 -3
  212. package/build/types/data/mods/gen5/moves.d.ts +0 -3
  213. package/build/types/data/mods/gen5/pokedex.d.ts +0 -3
  214. package/build/types/data/mods/gen5/rulesets.d.ts +0 -3
  215. package/build/types/data/mods/gen5/scripts.d.ts +0 -1
  216. package/build/types/data/mods/gen5/typechart.d.ts +0 -3
  217. package/build/types/data/mods/gen6/abilities.d.ts +0 -3
  218. package/build/types/data/mods/gen6/conditions.d.ts +0 -3
  219. package/build/types/data/mods/gen6/formats-data.d.ts +0 -3
  220. package/build/types/data/mods/gen6/index.d.ts +0 -8
  221. package/build/types/data/mods/gen6/items.d.ts +0 -3
  222. package/build/types/data/mods/gen6/learnsets.d.ts +0 -3
  223. package/build/types/data/mods/gen6/legality.d.ts +0 -3
  224. package/build/types/data/mods/gen6/moves.d.ts +0 -3
  225. package/build/types/data/mods/gen6/pokedex.d.ts +0 -3
  226. package/build/types/data/mods/gen6/scripts.d.ts +0 -1
  227. package/build/types/data/mods/gen6/typechart.d.ts +0 -3
  228. package/build/types/data/mods/gen7/abilities.d.ts +0 -3
  229. package/build/types/data/mods/gen7/formats-data.d.ts +0 -3
  230. package/build/types/data/mods/gen7/index.d.ts +0 -7
  231. package/build/types/data/mods/gen7/items.d.ts +0 -3
  232. package/build/types/data/mods/gen7/moves.d.ts +0 -3
  233. package/build/types/data/mods/gen7/pokedex.d.ts +0 -3
  234. package/build/types/data/mods/gen7/rulesets.d.ts +0 -3
  235. package/build/types/data/mods/gen7/scripts.d.ts +0 -1
  236. package/build/types/data/mods/gen8/abilities.d.ts +0 -3
  237. package/build/types/data/mods/gen8/formats-data.d.ts +0 -3
  238. package/build/types/data/mods/gen8/index.d.ts +0 -7
  239. package/build/types/data/mods/gen8/items.d.ts +0 -3
  240. package/build/types/data/mods/gen8/learnsets.d.ts +0 -3
  241. package/build/types/data/mods/gen8/legality.d.ts +0 -3
  242. package/build/types/data/mods/gen8/moves.d.ts +0 -3
  243. package/build/types/data/mods/gen8/pokedex.d.ts +0 -3
  244. package/build/types/data/mods/gen8/rulesets.d.ts +0 -3
  245. package/build/types/data/mods/gen8/scripts.d.ts +0 -1
  246. package/build/types/data/moves.d.ts +0 -3
  247. package/build/types/data/natures.d.ts +0 -3
  248. package/build/types/data/pokedex.d.ts +0 -3
  249. package/build/types/data/pokemongo.d.ts +0 -31
  250. package/build/types/data/rulesets.d.ts +0 -3
  251. package/build/types/data/scripts.d.ts +0 -1
  252. package/build/types/data/tags.d.ts +0 -15
  253. package/build/types/data/text/abilities.d.ts +0 -3
  254. package/build/types/data/text/default.d.ts +0 -3
  255. package/build/types/data/text/items.d.ts +0 -3
  256. package/build/types/data/text/moves.d.ts +0 -3
  257. package/build/types/data/typechart.d.ts +0 -3
  258. package/build/types/lib/index.d.ts +0 -2
  259. package/build/types/lib/streams.d.ts +0 -1
  260. package/build/types/lib/utils.d.ts +0 -139
  261. package/build/types/sim/battle-actions.d.ts +0 -90
  262. package/build/types/sim/battle-queue.d.ts +0 -164
  263. package/build/types/sim/battle-stream.d.ts +0 -67
  264. package/build/types/sim/battle.d.ts +0 -396
  265. package/build/types/sim/dex-abilities.d.ts +0 -35
  266. package/build/types/sim/dex-conditions.d.ts +0 -518
  267. package/build/types/sim/dex-data.d.ts +0 -169
  268. package/build/types/sim/dex-formats.d.ts +0 -170
  269. package/build/types/sim/dex-items.d.ts +0 -110
  270. package/build/types/sim/dex-moves.d.ts +0 -441
  271. package/build/types/sim/dex-species.d.ts +0 -289
  272. package/build/types/sim/dex.d.ts +0 -162
  273. package/build/types/sim/exported-global-types.d.ts +0 -510
  274. package/build/types/sim/field.d.ts +0 -30
  275. package/build/types/sim/global-types.d.ts +0 -510
  276. package/build/types/sim/index.d.ts +0 -13
  277. package/build/types/sim/pokemon.d.ts +0 -427
  278. package/build/types/sim/prng.d.ts +0 -97
  279. package/build/types/sim/side.d.ts +0 -127
  280. package/build/types/sim/state.d.ts +0 -42
  281. package/build/types/sim/team-validator.d.ts +0 -198
  282. package/build/types/sim/teams.d.ts +0 -26
  283. package/build/types/sim/tools/exhaustive-runner.d.ts +0 -52
  284. package/build/types/sim/tools/index.d.ts +0 -2
  285. package/build/types/sim/tools/random-player-ai.d.ts +0 -32
  286. package/build/types/sim/tools/runner.d.ts +0 -41
@@ -1,518 +0,0 @@
1
- import { ActiveMove, AnyObject, Battle, CommonHandlers, Effect, Field, ID, Item, ModdedDex, Pokemon, Side, SparseBoostsTable } from './exported-global-types';
2
- import { BasicEffect } from './dex-data';
3
- import type { SecondaryEffect, MoveEventMethods } from './dex-moves';
4
- export interface EventMethods {
5
- onDamagingHit?: (this: Battle, damage: number, target: Pokemon, source: Pokemon, move: ActiveMove) => void;
6
- onEmergencyExit?: (this: Battle, pokemon: Pokemon) => void;
7
- onAfterEachBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon, effect: Effect) => void;
8
- onAfterHit?: MoveEventMethods['onAfterHit'];
9
- onAfterMega?: (this: Battle, pokemon: Pokemon) => void;
10
- onAfterSetStatus?: (this: Battle, status: Condition, target: Pokemon, source: Pokemon, effect: Effect) => void;
11
- onAfterSubDamage?: MoveEventMethods['onAfterSubDamage'];
12
- onAfterSwitchInSelf?: (this: Battle, pokemon: Pokemon) => void;
13
- onAfterTerastallization?: (this: Battle, pokemon: Pokemon) => void;
14
- onAfterUseItem?: (this: Battle, item: Item, pokemon: Pokemon) => void;
15
- onAfterTakeItem?: (this: Battle, item: Item, pokemon: Pokemon) => void;
16
- onAfterBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon, effect: Effect) => void;
17
- onAfterFaint?: (this: Battle, length: number, target: Pokemon, source: Pokemon, effect: Effect) => void;
18
- onAfterMoveSecondarySelf?: MoveEventMethods['onAfterMoveSecondarySelf'];
19
- onAfterMoveSecondary?: MoveEventMethods['onAfterMoveSecondary'];
20
- onAfterMove?: MoveEventMethods['onAfterMove'];
21
- onAfterMoveSelf?: CommonHandlers['VoidSourceMove'];
22
- onAttract?: (this: Battle, target: Pokemon, source: Pokemon) => void;
23
- onAccuracy?: (this: Battle, accuracy: number, target: Pokemon, source: Pokemon, move: ActiveMove) => number | boolean | null | void;
24
- onBasePower?: CommonHandlers['ModifierSourceMove'];
25
- onBeforeFaint?: (this: Battle, pokemon: Pokemon, effect: Effect) => void;
26
- onBeforeMove?: CommonHandlers['VoidSourceMove'];
27
- onBeforeSwitchIn?: (this: Battle, pokemon: Pokemon) => void;
28
- onBeforeSwitchOut?: (this: Battle, pokemon: Pokemon) => void;
29
- onBeforeTurn?: (this: Battle, pokemon: Pokemon) => void;
30
- onChangeBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon, effect: Effect) => void;
31
- onTryBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon, effect: Effect) => void;
32
- onChargeMove?: CommonHandlers['VoidSourceMove'];
33
- onCriticalHit?: ((this: Battle, pokemon: Pokemon, source: null, move: ActiveMove) => boolean | void) | boolean;
34
- onDamage?: (this: Battle, damage: number, target: Pokemon, source: Pokemon, effect: Effect) => number | boolean | null | void;
35
- onDeductPP?: (this: Battle, target: Pokemon, source: Pokemon) => number | void;
36
- onDisableMove?: (this: Battle, pokemon: Pokemon) => void;
37
- onDragOut?: (this: Battle, pokemon: Pokemon, source?: Pokemon, move?: ActiveMove) => void;
38
- onEatItem?: (this: Battle, item: Item, pokemon: Pokemon) => void;
39
- onEffectiveness?: MoveEventMethods['onEffectiveness'];
40
- onEntryHazard?: (this: Battle, pokemon: Pokemon) => void;
41
- onFaint?: CommonHandlers['VoidEffect'];
42
- onFlinch?: ((this: Battle, pokemon: Pokemon) => boolean | void) | boolean;
43
- onFractionalPriority?: CommonHandlers['ModifierSourceMove'] | -0.1;
44
- onHit?: MoveEventMethods['onHit'];
45
- onImmunity?: (this: Battle, type: string, pokemon: Pokemon) => void;
46
- onLockMove?: string | ((this: Battle, pokemon: Pokemon) => void | string);
47
- onMaybeTrapPokemon?: (this: Battle, pokemon: Pokemon) => void;
48
- onModifyAccuracy?: CommonHandlers['ModifierMove'];
49
- onModifyAtk?: CommonHandlers['ModifierSourceMove'];
50
- onModifyBoost?: (this: Battle, boosts: SparseBoostsTable, pokemon: Pokemon) => SparseBoostsTable | void;
51
- onModifyCritRatio?: CommonHandlers['ModifierSourceMove'];
52
- onModifyDamage?: CommonHandlers['ModifierSourceMove'];
53
- onModifyDef?: CommonHandlers['ModifierMove'];
54
- onModifyMove?: MoveEventMethods['onModifyMove'];
55
- onModifyPriority?: CommonHandlers['ModifierSourceMove'];
56
- onModifySecondaries?: (this: Battle, secondaries: SecondaryEffect[], target: Pokemon, source: Pokemon, move: ActiveMove) => void;
57
- onModifyType?: MoveEventMethods['onModifyType'];
58
- onModifyTarget?: MoveEventMethods['onModifyTarget'];
59
- onModifySpA?: CommonHandlers['ModifierSourceMove'];
60
- onModifySpD?: CommonHandlers['ModifierMove'];
61
- onModifySpe?: (this: Battle, spe: number, pokemon: Pokemon) => number | void;
62
- onModifyWeight?: (this: Battle, weighthg: number, pokemon: Pokemon) => number | void;
63
- onMoveAborted?: CommonHandlers['VoidMove'];
64
- onNegateImmunity?: ((this: Battle, pokemon: Pokemon, type: string) => boolean | void) | boolean;
65
- onOverrideAction?: (this: Battle, pokemon: Pokemon, target: Pokemon, move: ActiveMove) => string | void;
66
- onPrepareHit?: CommonHandlers['ResultSourceMove'];
67
- onRedirectTarget?: (this: Battle, target: Pokemon, source: Pokemon, source2: Effect, move: ActiveMove) => Pokemon | void;
68
- onResidual?: (this: Battle, target: Pokemon, source: Pokemon, effect: Effect) => void;
69
- onSetAbility?: (this: Battle, ability: string, target: Pokemon, source: Pokemon, effect: Effect) => null | void;
70
- onSetStatus?: (this: Battle, status: Condition, target: Pokemon, source: Pokemon, effect: Effect) => boolean | null | void;
71
- onSetWeather?: (this: Battle, target: Pokemon, source: Pokemon, weather: Condition) => boolean | void;
72
- onStallMove?: (this: Battle, pokemon: Pokemon) => boolean | void;
73
- onSwitchIn?: (this: Battle, pokemon: Pokemon) => void;
74
- onSwitchOut?: (this: Battle, pokemon: Pokemon) => void;
75
- onSwap?: (this: Battle, target: Pokemon, source: Pokemon) => void;
76
- onTakeItem?: ((this: Battle, item: Item, pokemon: Pokemon, source: Pokemon, move?: ActiveMove) => boolean | void) | boolean;
77
- onWeatherChange?: (this: Battle, target: Pokemon, source: Pokemon, sourceEffect: Effect) => void;
78
- onTerrainChange?: (this: Battle, target: Pokemon, source: Pokemon, sourceEffect: Effect) => void;
79
- onTrapPokemon?: (this: Battle, pokemon: Pokemon) => void;
80
- onTryAddVolatile?: (this: Battle, status: Condition, target: Pokemon, source: Pokemon, sourceEffect: Effect) => boolean | null | void;
81
- onTryEatItem?: boolean | ((this: Battle, item: Item, pokemon: Pokemon) => boolean | void);
82
- onTryHeal?: (((this: Battle, relayVar: number, target: Pokemon, source: Pokemon, effect: Effect) => number | boolean | void));
83
- onTryHit?: MoveEventMethods['onTryHit'];
84
- onTryHitField?: MoveEventMethods['onTryHitField'];
85
- onTryHitSide?: CommonHandlers['ResultMove'];
86
- onInvulnerability?: CommonHandlers['ExtResultMove'];
87
- onTryMove?: MoveEventMethods['onTryMove'];
88
- onTryPrimaryHit?: (this: Battle, target: Pokemon, source: Pokemon, move: ActiveMove) => boolean | null | number | void;
89
- onType?: (this: Battle, types: string[], pokemon: Pokemon) => string[] | void;
90
- onUseItem?: (this: Battle, item: Item, pokemon: Pokemon) => void;
91
- onUpdate?: (this: Battle, pokemon: Pokemon) => void;
92
- onWeather?: (this: Battle, target: Pokemon, source: null, effect: Condition) => void;
93
- onWeatherModifyDamage?: CommonHandlers['ModifierSourceMove'];
94
- onModifyDamagePhase1?: CommonHandlers['ModifierSourceMove'];
95
- onModifyDamagePhase2?: CommonHandlers['ModifierSourceMove'];
96
- onFoeDamagingHit?: (this: Battle, damage: number, target: Pokemon, source: Pokemon, move: ActiveMove) => void;
97
- onFoeAfterEachBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon) => void;
98
- onFoeAfterHit?: MoveEventMethods['onAfterHit'];
99
- onFoeAfterSetStatus?: (this: Battle, status: Condition, target: Pokemon, source: Pokemon, effect: Effect) => void;
100
- onFoeAfterSubDamage?: MoveEventMethods['onAfterSubDamage'];
101
- onFoeAfterSwitchInSelf?: (this: Battle, pokemon: Pokemon) => void;
102
- onFoeAfterUseItem?: (this: Battle, item: Item, pokemon: Pokemon) => void;
103
- onFoeAfterBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon, effect: Effect) => void;
104
- onFoeAfterFaint?: (this: Battle, length: number, target: Pokemon, source: Pokemon, effect: Effect) => void;
105
- onFoeAfterMoveSecondarySelf?: MoveEventMethods['onAfterMoveSecondarySelf'];
106
- onFoeAfterMoveSecondary?: MoveEventMethods['onAfterMoveSecondary'];
107
- onFoeAfterMove?: MoveEventMethods['onAfterMove'];
108
- onFoeAfterMoveSelf?: CommonHandlers['VoidSourceMove'];
109
- onFoeAttract?: (this: Battle, target: Pokemon, source: Pokemon) => void;
110
- onFoeAccuracy?: (this: Battle, accuracy: number, target: Pokemon, source: Pokemon, move: ActiveMove) => number | boolean | null | void;
111
- onFoeBasePower?: CommonHandlers['ModifierSourceMove'];
112
- onFoeBeforeFaint?: (this: Battle, pokemon: Pokemon, effect: Effect) => void;
113
- onFoeBeforeMove?: CommonHandlers['VoidSourceMove'];
114
- onFoeBeforeSwitchIn?: (this: Battle, pokemon: Pokemon) => void;
115
- onFoeBeforeSwitchOut?: (this: Battle, pokemon: Pokemon) => void;
116
- onFoeTryBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon, effect: Effect) => void;
117
- onFoeChargeMove?: CommonHandlers['VoidSourceMove'];
118
- onFoeCriticalHit?: ((this: Battle, pokemon: Pokemon, source: null, move: ActiveMove) => boolean | void) | boolean;
119
- onFoeDamage?: (this: Battle, damage: number, target: Pokemon, source: Pokemon, effect: Effect) => number | boolean | null | void;
120
- onFoeDeductPP?: (this: Battle, target: Pokemon, source: Pokemon) => number | void;
121
- onFoeDisableMove?: (this: Battle, pokemon: Pokemon) => void;
122
- onFoeDragOut?: (this: Battle, pokemon: Pokemon, source?: Pokemon, move?: ActiveMove) => void;
123
- onFoeEatItem?: (this: Battle, item: Item, pokemon: Pokemon) => void;
124
- onFoeEffectiveness?: MoveEventMethods['onEffectiveness'];
125
- onFoeFaint?: CommonHandlers['VoidEffect'];
126
- onFoeFlinch?: ((this: Battle, pokemon: Pokemon) => boolean | void) | boolean;
127
- onFoeHit?: MoveEventMethods['onHit'];
128
- onFoeImmunity?: (this: Battle, type: string, pokemon: Pokemon) => void;
129
- onFoeLockMove?: string | ((this: Battle, pokemon: Pokemon) => void | string);
130
- onFoeMaybeTrapPokemon?: (this: Battle, pokemon: Pokemon, source?: Pokemon) => void;
131
- onFoeModifyAccuracy?: CommonHandlers['ModifierMove'];
132
- onFoeModifyAtk?: CommonHandlers['ModifierSourceMove'];
133
- onFoeModifyBoost?: (this: Battle, boosts: SparseBoostsTable, pokemon: Pokemon) => SparseBoostsTable | void;
134
- onFoeModifyCritRatio?: CommonHandlers['ModifierSourceMove'];
135
- onFoeModifyDamage?: CommonHandlers['ModifierSourceMove'];
136
- onFoeModifyDef?: CommonHandlers['ModifierMove'];
137
- onFoeModifyMove?: MoveEventMethods['onModifyMove'];
138
- onFoeModifyPriority?: CommonHandlers['ModifierSourceMove'];
139
- onFoeModifySecondaries?: (this: Battle, secondaries: SecondaryEffect[], target: Pokemon, source: Pokemon, move: ActiveMove) => void;
140
- onFoeModifySpA?: CommonHandlers['ModifierSourceMove'];
141
- onFoeModifySpD?: CommonHandlers['ModifierMove'];
142
- onFoeModifySpe?: (this: Battle, spe: number, pokemon: Pokemon) => number | void;
143
- onFoeModifyType?: MoveEventMethods['onModifyType'];
144
- onFoeModifyTarget?: MoveEventMethods['onModifyTarget'];
145
- onFoeModifyWeight?: (this: Battle, weighthg: number, pokemon: Pokemon) => number | void;
146
- onFoeMoveAborted?: CommonHandlers['VoidMove'];
147
- onFoeNegateImmunity?: ((this: Battle, pokemon: Pokemon, type: string) => boolean | void) | boolean;
148
- onFoeOverrideAction?: (this: Battle, pokemon: Pokemon, target: Pokemon, move: ActiveMove) => string | void;
149
- onFoePrepareHit?: CommonHandlers['ResultSourceMove'];
150
- onFoeRedirectTarget?: (this: Battle, target: Pokemon, source: Pokemon, source2: Effect, move: ActiveMove) => Pokemon | void;
151
- onFoeResidual?: (this: Battle, target: Pokemon & Side, source: Pokemon, effect: Effect) => void;
152
- onFoeSetAbility?: (this: Battle, ability: string, target: Pokemon, source: Pokemon, effect: Effect) => boolean | void;
153
- onFoeSetStatus?: (this: Battle, status: Condition, target: Pokemon, source: Pokemon, effect: Effect) => boolean | null | void;
154
- onFoeSetWeather?: (this: Battle, target: Pokemon, source: Pokemon, weather: Condition) => boolean | void;
155
- onFoeStallMove?: (this: Battle, pokemon: Pokemon) => boolean | void;
156
- onFoeSwitchIn?: (this: Battle, pokemon: Pokemon) => void;
157
- onFoeSwitchOut?: (this: Battle, pokemon: Pokemon) => void;
158
- onFoeTakeItem?: ((this: Battle, item: Item, pokemon: Pokemon, source: Pokemon, move?: ActiveMove) => boolean | void) | boolean;
159
- onFoeTerrain?: (this: Battle, pokemon: Pokemon) => void;
160
- onFoeTrapPokemon?: (this: Battle, pokemon: Pokemon) => void;
161
- onFoeTryAddVolatile?: (this: Battle, status: Condition, target: Pokemon, source: Pokemon, sourceEffect: Effect) => boolean | null | void;
162
- onFoeTryEatItem?: boolean | ((this: Battle, item: Item, pokemon: Pokemon) => boolean | void);
163
- onFoeTryHeal?: (((this: Battle, relayVar: number, target: Pokemon, source: Pokemon, effect: Effect) => number | boolean | void) | ((this: Battle, pokemon: Pokemon) => boolean | void) | boolean);
164
- onFoeTryHit?: MoveEventMethods['onTryHit'];
165
- onFoeTryHitField?: MoveEventMethods['onTryHitField'];
166
- onFoeTryHitSide?: CommonHandlers['ResultMove'];
167
- onFoeInvulnerability?: CommonHandlers['ExtResultMove'];
168
- onFoeTryMove?: MoveEventMethods['onTryMove'];
169
- onFoeTryPrimaryHit?: (this: Battle, target: Pokemon, source: Pokemon, move: ActiveMove) => boolean | null | number | void;
170
- onFoeType?: (this: Battle, types: string[], pokemon: Pokemon) => string[] | void;
171
- onFoeWeatherModifyDamage?: CommonHandlers['ModifierSourceMove'];
172
- onFoeModifyDamagePhase1?: CommonHandlers['ModifierSourceMove'];
173
- onFoeModifyDamagePhase2?: CommonHandlers['ModifierSourceMove'];
174
- onSourceDamagingHit?: (this: Battle, damage: number, target: Pokemon, source: Pokemon, move: ActiveMove) => void;
175
- onSourceAfterEachBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon) => void;
176
- onSourceAfterHit?: MoveEventMethods['onAfterHit'];
177
- onSourceAfterSetStatus?: (this: Battle, status: Condition, target: Pokemon, source: Pokemon, effect: Effect) => void;
178
- onSourceAfterSubDamage?: MoveEventMethods['onAfterSubDamage'];
179
- onSourceAfterSwitchInSelf?: (this: Battle, pokemon: Pokemon) => void;
180
- onSourceAfterUseItem?: (this: Battle, item: Item, pokemon: Pokemon) => void;
181
- onSourceAfterBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon, effect: Effect) => void;
182
- onSourceAfterFaint?: (this: Battle, length: number, target: Pokemon, source: Pokemon, effect: Effect) => void;
183
- onSourceAfterMoveSecondarySelf?: MoveEventMethods['onAfterMoveSecondarySelf'];
184
- onSourceAfterMoveSecondary?: MoveEventMethods['onAfterMoveSecondary'];
185
- onSourceAfterMove?: MoveEventMethods['onAfterMove'];
186
- onSourceAfterMoveSelf?: CommonHandlers['VoidSourceMove'];
187
- onSourceAttract?: (this: Battle, target: Pokemon, source: Pokemon) => void;
188
- onSourceAccuracy?: (this: Battle, accuracy: number, target: Pokemon, source: Pokemon, move: ActiveMove) => number | boolean | null | void;
189
- onSourceBasePower?: CommonHandlers['ModifierSourceMove'];
190
- onSourceBeforeFaint?: (this: Battle, pokemon: Pokemon, effect: Effect) => void;
191
- onSourceBeforeMove?: CommonHandlers['VoidSourceMove'];
192
- onSourceBeforeSwitchIn?: (this: Battle, pokemon: Pokemon) => void;
193
- onSourceBeforeSwitchOut?: (this: Battle, pokemon: Pokemon) => void;
194
- onSourceTryBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon, effect: Effect) => void;
195
- onSourceChargeMove?: CommonHandlers['VoidSourceMove'];
196
- onSourceCriticalHit?: ((this: Battle, pokemon: Pokemon, source: null, move: ActiveMove) => boolean | void) | boolean;
197
- onSourceDamage?: (this: Battle, damage: number, target: Pokemon, source: Pokemon, effect: Effect) => number | boolean | null | void;
198
- onSourceDeductPP?: (this: Battle, target: Pokemon, source: Pokemon) => number | void;
199
- onSourceDisableMove?: (this: Battle, pokemon: Pokemon) => void;
200
- onSourceDragOut?: (this: Battle, pokemon: Pokemon, source?: Pokemon, move?: ActiveMove) => void;
201
- onSourceEatItem?: (this: Battle, item: Item, pokemon: Pokemon) => void;
202
- onSourceEffectiveness?: MoveEventMethods['onEffectiveness'];
203
- onSourceFaint?: CommonHandlers['VoidEffect'];
204
- onSourceFlinch?: ((this: Battle, pokemon: Pokemon) => boolean | void) | boolean;
205
- onSourceHit?: MoveEventMethods['onHit'];
206
- onSourceImmunity?: (this: Battle, type: string, pokemon: Pokemon) => void;
207
- onSourceLockMove?: string | ((this: Battle, pokemon: Pokemon) => void | string);
208
- onSourceMaybeTrapPokemon?: (this: Battle, pokemon: Pokemon) => void;
209
- onSourceModifyAccuracy?: CommonHandlers['ModifierMove'];
210
- onSourceModifyAtk?: CommonHandlers['ModifierSourceMove'];
211
- onSourceModifyBoost?: (this: Battle, boosts: SparseBoostsTable, pokemon: Pokemon) => SparseBoostsTable | void;
212
- onSourceModifyCritRatio?: CommonHandlers['ModifierSourceMove'];
213
- onSourceModifyDamage?: CommonHandlers['ModifierSourceMove'];
214
- onSourceModifyDef?: CommonHandlers['ModifierMove'];
215
- onSourceModifyMove?: MoveEventMethods['onModifyMove'];
216
- onSourceModifyPriority?: CommonHandlers['ModifierSourceMove'];
217
- onSourceModifySecondaries?: (this: Battle, secondaries: SecondaryEffect[], target: Pokemon, source: Pokemon, move: ActiveMove) => void;
218
- onSourceModifySpA?: CommonHandlers['ModifierSourceMove'];
219
- onSourceModifySpD?: CommonHandlers['ModifierMove'];
220
- onSourceModifySpe?: (this: Battle, spe: number, pokemon: Pokemon) => number | void;
221
- onSourceModifyType?: MoveEventMethods['onModifyType'];
222
- onSourceModifyTarget?: MoveEventMethods['onModifyTarget'];
223
- onSourceModifyWeight?: (this: Battle, weighthg: number, pokemon: Pokemon) => number | void;
224
- onSourceMoveAborted?: CommonHandlers['VoidMove'];
225
- onSourceNegateImmunity?: ((this: Battle, pokemon: Pokemon, type: string) => boolean | void) | boolean;
226
- onSourceOverrideAction?: (this: Battle, pokemon: Pokemon, target: Pokemon, move: ActiveMove) => string | void;
227
- onSourcePrepareHit?: CommonHandlers['ResultSourceMove'];
228
- onSourceRedirectTarget?: (this: Battle, target: Pokemon, source: Pokemon, source2: Effect, move: ActiveMove) => Pokemon | void;
229
- onSourceResidual?: (this: Battle, target: Pokemon & Side, source: Pokemon, effect: Effect) => void;
230
- onSourceSetAbility?: (this: Battle, ability: string, target: Pokemon, source: Pokemon, effect: Effect) => boolean | void;
231
- onSourceSetStatus?: (this: Battle, status: Condition, target: Pokemon, source: Pokemon, effect: Effect) => boolean | null | void;
232
- onSourceSetWeather?: (this: Battle, target: Pokemon, source: Pokemon, weather: Condition) => boolean | void;
233
- onSourceStallMove?: (this: Battle, pokemon: Pokemon) => boolean | void;
234
- onSourceSwitchIn?: (this: Battle, pokemon: Pokemon) => void;
235
- onSourceSwitchOut?: (this: Battle, pokemon: Pokemon) => void;
236
- onSourceTakeItem?: ((this: Battle, item: Item, pokemon: Pokemon, source: Pokemon, move?: ActiveMove) => boolean | void) | boolean;
237
- onSourceTerrain?: (this: Battle, pokemon: Pokemon) => void;
238
- onSourceTrapPokemon?: (this: Battle, pokemon: Pokemon) => void;
239
- onSourceTryAddVolatile?: (this: Battle, status: Condition, target: Pokemon, source: Pokemon, sourceEffect: Effect) => boolean | null | void;
240
- onSourceTryEatItem?: boolean | ((this: Battle, item: Item, pokemon: Pokemon) => boolean | void);
241
- onSourceTryHeal?: (((this: Battle, relayVar: number, target: Pokemon, source: Pokemon, effect: Effect) => number | boolean | void) | ((this: Battle, pokemon: Pokemon) => boolean | void) | boolean);
242
- onSourceTryHit?: MoveEventMethods['onTryHit'];
243
- onSourceTryHitField?: MoveEventMethods['onTryHitField'];
244
- onSourceTryHitSide?: CommonHandlers['ResultMove'];
245
- onSourceInvulnerability?: CommonHandlers['ExtResultMove'];
246
- onSourceTryMove?: MoveEventMethods['onTryMove'];
247
- onSourceTryPrimaryHit?: (this: Battle, target: Pokemon, source: Pokemon, move: ActiveMove) => boolean | null | number | void;
248
- onSourceType?: (this: Battle, types: string[], pokemon: Pokemon) => string[] | void;
249
- onSourceWeatherModifyDamage?: CommonHandlers['ModifierSourceMove'];
250
- onSourceModifyDamagePhase1?: CommonHandlers['ModifierSourceMove'];
251
- onSourceModifyDamagePhase2?: CommonHandlers['ModifierSourceMove'];
252
- onAnyDamagingHit?: (this: Battle, damage: number, target: Pokemon, source: Pokemon, move: ActiveMove) => void;
253
- onAnyAfterEachBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon) => void;
254
- onAnyAfterHit?: MoveEventMethods['onAfterHit'];
255
- onAnyAfterSetStatus?: (this: Battle, status: Condition, target: Pokemon, source: Pokemon, effect: Effect) => void;
256
- onAnyAfterSubDamage?: MoveEventMethods['onAfterSubDamage'];
257
- onAnyAfterSwitchInSelf?: (this: Battle, pokemon: Pokemon) => void;
258
- onAnyAfterUseItem?: (this: Battle, item: Item, pokemon: Pokemon) => void;
259
- onAnyAfterBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon, effect: Effect) => void;
260
- onAnyAfterFaint?: (this: Battle, length: number, target: Pokemon, source: Pokemon, effect: Effect) => void;
261
- onAnyAfterMoveSecondarySelf?: MoveEventMethods['onAfterMoveSecondarySelf'];
262
- onAnyAfterMoveSecondary?: MoveEventMethods['onAfterMoveSecondary'];
263
- onAnyAfterMove?: MoveEventMethods['onAfterMove'];
264
- onAnyAfterMoveSelf?: CommonHandlers['VoidSourceMove'];
265
- onAnyAttract?: (this: Battle, target: Pokemon, source: Pokemon) => void;
266
- onAnyAccuracy?: (this: Battle, accuracy: number, target: Pokemon, source: Pokemon, move: ActiveMove) => number | boolean | null | void;
267
- onAnyBasePower?: CommonHandlers['ModifierSourceMove'];
268
- onAnyBeforeFaint?: (this: Battle, pokemon: Pokemon, effect: Effect) => void;
269
- onAnyBeforeMove?: CommonHandlers['VoidSourceMove'];
270
- onAnyBeforeSwitchIn?: (this: Battle, pokemon: Pokemon) => void;
271
- onAnyBeforeSwitchOut?: (this: Battle, pokemon: Pokemon) => void;
272
- onAnyTryBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon, effect: Effect) => void;
273
- onAnyChargeMove?: CommonHandlers['VoidSourceMove'];
274
- onAnyCriticalHit?: ((this: Battle, pokemon: Pokemon, source: null, move: ActiveMove) => boolean | void) | boolean;
275
- onAnyDamage?: (this: Battle, damage: number, target: Pokemon, source: Pokemon, effect: Effect) => number | boolean | null | void;
276
- onAnyDeductPP?: (this: Battle, target: Pokemon, source: Pokemon) => number | void;
277
- onAnyDisableMove?: (this: Battle, pokemon: Pokemon) => void;
278
- onAnyDragOut?: (this: Battle, pokemon: Pokemon, source?: Pokemon, move?: ActiveMove) => void;
279
- onAnyEatItem?: (this: Battle, item: Item, pokemon: Pokemon) => void;
280
- onAnyEffectiveness?: MoveEventMethods['onEffectiveness'];
281
- onAnyFaint?: CommonHandlers['VoidEffect'];
282
- onAnyFlinch?: ((this: Battle, pokemon: Pokemon) => boolean | void) | boolean;
283
- onAnyHit?: MoveEventMethods['onHit'];
284
- onAnyImmunity?: (this: Battle, type: string, pokemon: Pokemon) => void;
285
- onAnyLockMove?: string | ((this: Battle, pokemon: Pokemon) => void | string);
286
- onAnyMaybeTrapPokemon?: (this: Battle, pokemon: Pokemon) => void;
287
- onAnyModifyAccuracy?: CommonHandlers['ModifierMove'];
288
- onAnyModifyAtk?: CommonHandlers['ModifierSourceMove'];
289
- onAnyModifyBoost?: (this: Battle, boosts: SparseBoostsTable, pokemon: Pokemon) => SparseBoostsTable | void;
290
- onAnyModifyCritRatio?: CommonHandlers['ModifierSourceMove'];
291
- onAnyModifyDamage?: CommonHandlers['ModifierSourceMove'];
292
- onAnyModifyDef?: CommonHandlers['ModifierMove'];
293
- onAnyModifyMove?: MoveEventMethods['onModifyMove'];
294
- onAnyModifyPriority?: CommonHandlers['ModifierSourceMove'];
295
- onAnyModifySecondaries?: (this: Battle, secondaries: SecondaryEffect[], target: Pokemon, source: Pokemon, move: ActiveMove) => void;
296
- onAnyModifySpA?: CommonHandlers['ModifierSourceMove'];
297
- onAnyModifySpD?: CommonHandlers['ModifierMove'];
298
- onAnyModifySpe?: (this: Battle, spe: number, pokemon: Pokemon) => number | void;
299
- onAnyModifyType?: MoveEventMethods['onModifyType'];
300
- onAnyModifyTarget?: MoveEventMethods['onModifyTarget'];
301
- onAnyModifyWeight?: (this: Battle, weighthg: number, pokemon: Pokemon) => number | void;
302
- onAnyMoveAborted?: CommonHandlers['VoidMove'];
303
- onAnyNegateImmunity?: ((this: Battle, pokemon: Pokemon, type: string) => boolean | void) | boolean;
304
- onAnyOverrideAction?: (this: Battle, pokemon: Pokemon, target: Pokemon, move: ActiveMove) => string | void;
305
- onAnyPrepareHit?: CommonHandlers['ResultSourceMove'];
306
- onAnyPseudoWeatherChange?: (this: Battle, target: Pokemon, source: Pokemon, pseudoWeather: Condition) => void;
307
- onAnyRedirectTarget?: (this: Battle, target: Pokemon, source: Pokemon, source2: Effect, move: ActiveMove) => Pokemon | void;
308
- onAnyResidual?: (this: Battle, target: Pokemon & Side, source: Pokemon, effect: Effect) => void;
309
- onAnySetAbility?: (this: Battle, ability: string, target: Pokemon, source: Pokemon, effect: Effect) => boolean | void;
310
- onAnySetStatus?: (this: Battle, status: Condition, target: Pokemon, source: Pokemon, effect: Effect) => boolean | null | void;
311
- onAnySetWeather?: (this: Battle, target: Pokemon, source: Pokemon, weather: Condition) => boolean | void;
312
- onAnyStallMove?: (this: Battle, pokemon: Pokemon) => boolean | void;
313
- onAnySwitchIn?: (this: Battle, pokemon: Pokemon) => void;
314
- onAnySwitchOut?: (this: Battle, pokemon: Pokemon) => void;
315
- onAnyTakeItem?: ((this: Battle, item: Item, pokemon: Pokemon, source: Pokemon, move?: ActiveMove) => boolean | void) | boolean;
316
- onAnyTerrain?: (this: Battle, pokemon: Pokemon) => void;
317
- onAnyTrapPokemon?: (this: Battle, pokemon: Pokemon) => void;
318
- onAnyTryAddVolatile?: (this: Battle, status: Condition, target: Pokemon, source: Pokemon, sourceEffect: Effect) => boolean | null | void;
319
- onAnyTryEatItem?: boolean | ((this: Battle, item: Item, pokemon: Pokemon) => boolean | void);
320
- onAnyTryHeal?: (((this: Battle, relayVar: number, target: Pokemon, source: Pokemon, effect: Effect) => number | boolean | void) | ((this: Battle, pokemon: Pokemon) => boolean | void) | boolean);
321
- onAnyTryHit?: MoveEventMethods['onTryHit'];
322
- onAnyTryHitField?: MoveEventMethods['onTryHitField'];
323
- onAnyTryHitSide?: CommonHandlers['ResultMove'];
324
- onAnyInvulnerability?: CommonHandlers['ExtResultMove'];
325
- onAnyTryMove?: MoveEventMethods['onTryMove'];
326
- onAnyTryPrimaryHit?: (this: Battle, target: Pokemon, source: Pokemon, move: ActiveMove) => boolean | null | number | void;
327
- onAnyType?: (this: Battle, types: string[], pokemon: Pokemon) => string[] | void;
328
- onAnyWeatherModifyDamage?: CommonHandlers['ModifierSourceMove'];
329
- onAnyModifyDamagePhase1?: CommonHandlers['ModifierSourceMove'];
330
- onAnyModifyDamagePhase2?: CommonHandlers['ModifierSourceMove'];
331
- onAccuracyPriority?: number;
332
- onDamagingHitOrder?: number;
333
- onAfterMoveSecondaryPriority?: number;
334
- onAfterMoveSecondarySelfPriority?: number;
335
- onAfterMoveSelfPriority?: number;
336
- onAfterSetStatusPriority?: number;
337
- onAnyBasePowerPriority?: number;
338
- onAnyInvulnerabilityPriority?: number;
339
- onAnyModifyAccuracyPriority?: number;
340
- onAnyFaintPriority?: number;
341
- onAnyPrepareHitPriority?: number;
342
- onAllyBasePowerPriority?: number;
343
- onAllyModifyAtkPriority?: number;
344
- onAllyModifySpAPriority?: number;
345
- onAllyModifySpDPriority?: number;
346
- onAttractPriority?: number;
347
- onBasePowerPriority?: number;
348
- onBeforeMovePriority?: number;
349
- onBeforeSwitchOutPriority?: number;
350
- onChangeBoostPriority?: number;
351
- onDamagePriority?: number;
352
- onDragOutPriority?: number;
353
- onEffectivenessPriority?: number;
354
- onFoeBasePowerPriority?: number;
355
- onFoeBeforeMovePriority?: number;
356
- onFoeModifyDefPriority?: number;
357
- onFoeModifySpDPriority?: number;
358
- onFoeRedirectTargetPriority?: number;
359
- onFoeTrapPokemonPriority?: number;
360
- onFractionalPriorityPriority?: number;
361
- onHitPriority?: number;
362
- onInvulnerabilityPriority?: number;
363
- onModifyAccuracyPriority?: number;
364
- onModifyAtkPriority?: number;
365
- onModifyCritRatioPriority?: number;
366
- onModifyDefPriority?: number;
367
- onModifyMovePriority?: number;
368
- onModifyPriorityPriority?: number;
369
- onModifySpAPriority?: number;
370
- onModifySpDPriority?: number;
371
- onModifySpePriority?: number;
372
- onModifyTypePriority?: number;
373
- onModifyWeightPriority?: number;
374
- onRedirectTargetPriority?: number;
375
- onResidualOrder?: number;
376
- onResidualPriority?: number;
377
- onResidualSubOrder?: number;
378
- onSourceBasePowerPriority?: number;
379
- onSourceInvulnerabilityPriority?: number;
380
- onSourceModifyAccuracyPriority?: number;
381
- onSourceModifyAtkPriority?: number;
382
- onSourceModifyDamagePriority?: number;
383
- onSourceModifySpAPriority?: number;
384
- onSwitchInPriority?: number;
385
- onTrapPokemonPriority?: number;
386
- onTryEatItemPriority?: number;
387
- onTryHealPriority?: number;
388
- onTryHitPriority?: number;
389
- onTryMovePriority?: number;
390
- onTryPrimaryHitPriority?: number;
391
- onTypePriority?: number;
392
- }
393
- export interface PokemonEventMethods extends EventMethods {
394
- onAllyDamagingHit?: (this: Battle, damage: number, target: Pokemon, source: Pokemon, move: ActiveMove) => void;
395
- onAllyAfterEachBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon) => void;
396
- onAllyAfterHit?: MoveEventMethods['onAfterHit'];
397
- onAllyAfterSetStatus?: (this: Battle, status: Condition, target: Pokemon, source: Pokemon, effect: Effect) => void;
398
- onAllyAfterSubDamage?: MoveEventMethods['onAfterSubDamage'];
399
- onAllyAfterSwitchInSelf?: (this: Battle, pokemon: Pokemon) => void;
400
- onAllyAfterUseItem?: (this: Battle, item: Item, pokemon: Pokemon) => void;
401
- onAllyAfterBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon, effect: Effect) => void;
402
- onAllyAfterFaint?: (this: Battle, length: number, target: Pokemon, source: Pokemon, effect: Effect) => void;
403
- onAllyAfterMoveSecondarySelf?: MoveEventMethods['onAfterMoveSecondarySelf'];
404
- onAllyAfterMoveSecondary?: MoveEventMethods['onAfterMoveSecondary'];
405
- onAllyAfterMove?: MoveEventMethods['onAfterMove'];
406
- onAllyAfterMoveSelf?: CommonHandlers['VoidSourceMove'];
407
- onAllyAttract?: (this: Battle, target: Pokemon, source: Pokemon) => void;
408
- onAllyAccuracy?: (this: Battle, accuracy: number, target: Pokemon, source: Pokemon, move: ActiveMove) => number | boolean | null | void;
409
- onAllyBasePower?: CommonHandlers['ModifierSourceMove'];
410
- onAllyBeforeFaint?: (this: Battle, pokemon: Pokemon, effect: Effect) => void;
411
- onAllyBeforeMove?: CommonHandlers['VoidSourceMove'];
412
- onAllyBeforeSwitchIn?: (this: Battle, pokemon: Pokemon) => void;
413
- onAllyBeforeSwitchOut?: (this: Battle, pokemon: Pokemon) => void;
414
- onAllyTryBoost?: (this: Battle, boost: SparseBoostsTable, target: Pokemon, source: Pokemon, effect: Effect) => void;
415
- onAllyChargeMove?: CommonHandlers['VoidSourceMove'];
416
- onAllyCriticalHit?: ((this: Battle, pokemon: Pokemon, source: null, move: ActiveMove) => boolean | void) | boolean;
417
- onAllyDamage?: (this: Battle, damage: number, target: Pokemon, source: Pokemon, effect: Effect) => number | boolean | null | void;
418
- onAllyDeductPP?: (this: Battle, target: Pokemon, source: Pokemon) => number | void;
419
- onAllyDisableMove?: (this: Battle, pokemon: Pokemon) => void;
420
- onAllyDragOut?: (this: Battle, pokemon: Pokemon, source?: Pokemon, move?: ActiveMove) => void;
421
- onAllyEatItem?: (this: Battle, item: Item, pokemon: Pokemon) => void;
422
- onAllyEffectiveness?: MoveEventMethods['onEffectiveness'];
423
- onAllyFaint?: CommonHandlers['VoidEffect'];
424
- onAllyFlinch?: ((this: Battle, pokemon: Pokemon) => boolean | void) | boolean;
425
- onAllyHit?: MoveEventMethods['onHit'];
426
- onAllyImmunity?: (this: Battle, type: string, pokemon: Pokemon) => void;
427
- onAllyLockMove?: string | ((this: Battle, pokemon: Pokemon) => void | string);
428
- onAllyMaybeTrapPokemon?: (this: Battle, pokemon: Pokemon) => void;
429
- onAllyModifyAccuracy?: CommonHandlers['ModifierMove'];
430
- onAllyModifyAtk?: CommonHandlers['ModifierSourceMove'];
431
- onAllyModifyBoost?: (this: Battle, boosts: SparseBoostsTable, pokemon: Pokemon) => SparseBoostsTable | void;
432
- onAllyModifyCritRatio?: CommonHandlers['ModifierSourceMove'];
433
- onAllyModifyDamage?: CommonHandlers['ModifierSourceMove'];
434
- onAllyModifyDef?: CommonHandlers['ModifierMove'];
435
- onAllyModifyMove?: MoveEventMethods['onModifyMove'];
436
- onAllyModifyPriority?: CommonHandlers['ModifierSourceMove'];
437
- onAllyModifySecondaries?: (this: Battle, secondaries: SecondaryEffect[], target: Pokemon, source: Pokemon, move: ActiveMove) => void;
438
- onAllyModifySpA?: CommonHandlers['ModifierSourceMove'];
439
- onAllyModifySpD?: CommonHandlers['ModifierMove'];
440
- onAllyModifySpe?: (this: Battle, spe: number, pokemon: Pokemon) => number | void;
441
- onAllyModifyType?: MoveEventMethods['onModifyType'];
442
- onAllyModifyTarget?: MoveEventMethods['onModifyTarget'];
443
- onAllyModifyWeight?: (this: Battle, weighthg: number, pokemon: Pokemon) => number | void;
444
- onAllyMoveAborted?: CommonHandlers['VoidMove'];
445
- onAllyNegateImmunity?: ((this: Battle, pokemon: Pokemon, type: string) => boolean | void) | boolean;
446
- onAllyOverrideAction?: (this: Battle, pokemon: Pokemon, target: Pokemon, move: ActiveMove) => string | void;
447
- onAllyPrepareHit?: CommonHandlers['ResultSourceMove'];
448
- onAllyRedirectTarget?: (this: Battle, target: Pokemon, source: Pokemon, source2: Effect, move: ActiveMove) => Pokemon | void;
449
- onAllyResidual?: (this: Battle, target: Pokemon & Side, source: Pokemon, effect: Effect) => void;
450
- onAllySetAbility?: (this: Battle, ability: string, target: Pokemon, source: Pokemon, effect: Effect) => boolean | void;
451
- onAllySetStatus?: (this: Battle, status: Condition, target: Pokemon, source: Pokemon, effect: Effect) => boolean | null | void;
452
- onAllySetWeather?: (this: Battle, target: Pokemon, source: Pokemon, weather: Condition) => boolean | void;
453
- onAllySideConditionStart?: (this: Battle, target: Pokemon, source: Pokemon, sideCondition: Condition) => void;
454
- onAllyStallMove?: (this: Battle, pokemon: Pokemon) => boolean | void;
455
- onAllySwitchIn?: (this: Battle, pokemon: Pokemon) => void;
456
- onAllySwitchOut?: (this: Battle, pokemon: Pokemon) => void;
457
- onAllyTakeItem?: ((this: Battle, item: Item, pokemon: Pokemon, source: Pokemon, move?: ActiveMove) => boolean | void) | boolean;
458
- onAllyTerrain?: (this: Battle, pokemon: Pokemon) => void;
459
- onAllyTrapPokemon?: (this: Battle, pokemon: Pokemon) => void;
460
- onAllyTryAddVolatile?: (this: Battle, status: Condition, target: Pokemon, source: Pokemon, sourceEffect: Effect) => boolean | null | void;
461
- onAllyTryEatItem?: boolean | ((this: Battle, item: Item, pokemon: Pokemon) => boolean | void);
462
- onAllyTryHeal?: (((this: Battle, relayVar: number, target: Pokemon, source: Pokemon, effect: Effect) => number | boolean | void) | ((this: Battle, pokemon: Pokemon) => boolean | void) | boolean);
463
- onAllyTryHit?: MoveEventMethods['onTryHit'];
464
- onAllyTryHitField?: MoveEventMethods['onTryHitField'];
465
- onAllyTryHitSide?: CommonHandlers['ResultMove'];
466
- onAllyInvulnerability?: CommonHandlers['ExtResultMove'];
467
- onAllyTryMove?: MoveEventMethods['onTryMove'];
468
- onAllyTryPrimaryHit?: (this: Battle, target: Pokemon, source: Pokemon, move: ActiveMove) => boolean | null | number | void;
469
- onAllyType?: (this: Battle, types: string[], pokemon: Pokemon) => string[] | void;
470
- onAllyWeatherModifyDamage?: CommonHandlers['ModifierSourceMove'];
471
- onAllyModifyDamagePhase1?: CommonHandlers['ModifierSourceMove'];
472
- onAllyModifyDamagePhase2?: CommonHandlers['ModifierSourceMove'];
473
- }
474
- export interface SideEventMethods extends EventMethods {
475
- onSideStart?: (this: Battle, target: Side, source: Pokemon, sourceEffect: Effect) => void;
476
- onSideRestart?: (this: Battle, target: Side, source: Pokemon, sourceEffect: Effect) => void;
477
- onSideResidual?: (this: Battle, target: Side, source: Pokemon, effect: Effect) => void;
478
- onSideEnd?: (this: Battle, target: Side) => void;
479
- onSideResidualOrder?: number;
480
- onSideResidualPriority?: number;
481
- onSideResidualSubOrder?: number;
482
- }
483
- export interface FieldEventMethods extends EventMethods {
484
- onFieldStart?: (this: Battle, target: Field, source: Pokemon, sourceEffect: Effect) => void;
485
- onFieldRestart?: (this: Battle, target: Field, source: Pokemon, sourceEffect: Effect) => void;
486
- onFieldResidual?: (this: Battle, target: Field, source: Pokemon, effect: Effect) => void;
487
- onFieldEnd?: (this: Battle, target: Field) => void;
488
- onFieldResidualOrder?: number;
489
- onFieldResidualPriority?: number;
490
- onFieldResidualSubOrder?: number;
491
- }
492
- export interface PokemonConditionData extends Partial<Condition>, PokemonEventMethods {
493
- }
494
- export interface SideConditionData extends Partial<Omit<Condition, 'onStart' | 'onRestart' | 'onEnd'>>, SideEventMethods {
495
- }
496
- export interface FieldConditionData extends Partial<Omit<Condition, 'onStart' | 'onRestart' | 'onEnd'>>, FieldEventMethods {
497
- }
498
- export type ConditionData = PokemonConditionData | SideConditionData | FieldConditionData;
499
- export type ModdedConditionData = ConditionData & {
500
- inherit?: true;
501
- };
502
- export declare class Condition extends BasicEffect implements Readonly<BasicEffect & SideConditionData & FieldConditionData & PokemonConditionData> {
503
- readonly effectType: 'Condition' | 'Weather' | 'Status' | 'Terastal';
504
- readonly counterMax?: number;
505
- readonly durationCallback?: (this: Battle, target: Pokemon, source: Pokemon, effect: Effect | null) => number;
506
- readonly onCopy?: (this: Battle, pokemon: Pokemon) => void;
507
- readonly onEnd?: (this: Battle, target: Pokemon) => void;
508
- readonly onRestart?: (this: Battle, target: Pokemon, source: Pokemon, sourceEffect: Effect) => boolean | null | void;
509
- readonly onStart?: (this: Battle, target: Pokemon, source: Pokemon, sourceEffect: Effect) => boolean | null | void;
510
- constructor(data: AnyObject);
511
- }
512
- export declare class DexConditions {
513
- readonly dex: ModdedDex;
514
- readonly conditionCache: Map<ID, Condition>;
515
- constructor(dex: ModdedDex);
516
- get(name?: string | Effect | null): Condition;
517
- getByID(id: ID): Condition;
518
- }