@pkmn/sim 0.9.38 → 0.10.0

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 (237) hide show
  1. package/build/cjs/config/formats.js +185 -173
  2. package/build/cjs/config/formats.js.map +1 -1
  3. package/build/cjs/data/abilities.js +62 -72
  4. package/build/cjs/data/abilities.js.map +1 -1
  5. package/build/cjs/data/aliases.js +11 -4
  6. package/build/cjs/data/aliases.js.map +1 -1
  7. package/build/cjs/data/formats-data.js +163 -63
  8. package/build/cjs/data/formats-data.js.map +1 -1
  9. package/build/cjs/data/items.js +406 -2
  10. package/build/cjs/data/items.js.map +1 -1
  11. package/build/cjs/data/legality.js +548 -113
  12. package/build/cjs/data/legality.js.map +1 -1
  13. package/build/cjs/data/mods/gen1/conditions.js +1 -1
  14. package/build/cjs/data/mods/gen2/formats-data.js +2 -2
  15. package/build/cjs/data/mods/gen2/formats-data.js.map +1 -1
  16. package/build/cjs/data/mods/gen3/abilities.js +1 -3
  17. package/build/cjs/data/mods/gen3/abilities.js.map +1 -1
  18. package/build/cjs/data/mods/gen3/formats-data.js +5 -11
  19. package/build/cjs/data/mods/gen3/formats-data.js.map +1 -1
  20. package/build/cjs/data/mods/gen3/moves.js +24 -0
  21. package/build/cjs/data/mods/gen3/moves.js.map +1 -1
  22. package/build/cjs/data/mods/gen4/abilities.js +2 -14
  23. package/build/cjs/data/mods/gen4/abilities.js.map +1 -1
  24. package/build/cjs/data/mods/gen4/formats-data.js.map +1 -1
  25. package/build/cjs/data/mods/gen4/moves.js +37 -6
  26. package/build/cjs/data/mods/gen4/moves.js.map +1 -1
  27. package/build/cjs/data/mods/gen5/abilities.js +4 -0
  28. package/build/cjs/data/mods/gen5/abilities.js.map +1 -1
  29. package/build/cjs/data/mods/gen5/formats-data.js.map +1 -1
  30. package/build/cjs/data/mods/gen6/pokedex.js +104 -0
  31. package/build/cjs/data/mods/gen6/pokedex.js.map +1 -1
  32. package/build/cjs/data/mods/gen7/abilities.js +11 -26
  33. package/build/cjs/data/mods/gen7/abilities.js.map +1 -1
  34. package/build/cjs/data/mods/gen7/formats-data.js +1 -1
  35. package/build/cjs/data/mods/gen7/formats-data.js.map +1 -1
  36. package/build/cjs/data/mods/gen7/pokedex.js +96 -0
  37. package/build/cjs/data/mods/gen7/pokedex.js.map +1 -1
  38. package/build/cjs/data/mods/gen8/abilities.js +0 -3
  39. package/build/cjs/data/mods/gen8/abilities.js.map +1 -1
  40. package/build/cjs/data/mods/gen8bdsp/abilities.d.ts +1 -0
  41. package/build/cjs/data/mods/gen8bdsp/abilities.js +42 -0
  42. package/build/cjs/data/mods/gen8bdsp/abilities.js.map +1 -0
  43. package/build/cjs/data/mods/gen8bdsp/formats-data.d.ts +1 -0
  44. package/build/cjs/data/mods/gen8bdsp/formats-data.js +1837 -0
  45. package/build/cjs/data/mods/gen8bdsp/formats-data.js.map +1 -0
  46. package/build/cjs/data/mods/gen8bdsp/index.d.ts +6 -0
  47. package/build/cjs/data/mods/gen8bdsp/index.js +16 -0
  48. package/build/cjs/data/mods/gen8bdsp/index.js.map +1 -0
  49. package/build/cjs/data/mods/gen8bdsp/items.d.ts +1 -0
  50. package/build/cjs/data/mods/gen8bdsp/items.js +831 -0
  51. package/build/cjs/data/mods/gen8bdsp/items.js.map +1 -0
  52. package/build/cjs/data/mods/gen8bdsp/learnsets.d.ts +3 -0
  53. package/build/cjs/data/mods/gen8bdsp/learnsets.js +25784 -0
  54. package/build/cjs/data/mods/gen8bdsp/learnsets.js.map +1 -0
  55. package/build/cjs/data/mods/gen8bdsp/legality.d.ts +3 -0
  56. package/build/cjs/data/mods/gen8bdsp/legality.js +242 -0
  57. package/build/cjs/data/mods/gen8bdsp/legality.js.map +1 -0
  58. package/build/cjs/data/mods/gen8bdsp/moves.d.ts +1 -0
  59. package/build/cjs/data/mods/gen8bdsp/moves.js +919 -0
  60. package/build/cjs/data/mods/gen8bdsp/moves.js.map +1 -0
  61. package/build/cjs/data/mods/gen8bdsp/pokedex.d.ts +1 -0
  62. package/build/cjs/data/mods/gen8bdsp/pokedex.js +99 -0
  63. package/build/cjs/data/mods/gen8bdsp/pokedex.js.map +1 -0
  64. package/build/cjs/data/mods/gen8bdsp/scripts.d.ts +1 -0
  65. package/build/cjs/data/mods/gen8bdsp/scripts.js +15 -0
  66. package/build/cjs/data/mods/gen8bdsp/scripts.js.map +1 -0
  67. package/build/cjs/data/mods/gen8legends/formats-data.d.ts +1 -0
  68. package/build/cjs/data/mods/gen8legends/formats-data.js +2775 -0
  69. package/build/cjs/data/mods/gen8legends/formats-data.js.map +1 -0
  70. package/build/cjs/data/mods/gen8legends/index.d.ts +2 -0
  71. package/build/cjs/data/mods/gen8legends/index.js +8 -0
  72. package/build/cjs/data/mods/gen8legends/index.js.map +1 -0
  73. package/build/cjs/data/mods/gen8legends/learnsets.d.ts +3 -0
  74. package/build/cjs/data/mods/gen8legends/learnsets.js +5553 -0
  75. package/build/cjs/data/mods/gen8legends/learnsets.js.map +1 -0
  76. package/build/cjs/data/mods/gen8legends/legality.d.ts +3 -0
  77. package/build/cjs/data/mods/gen8legends/legality.js +149 -0
  78. package/build/cjs/data/mods/gen8legends/legality.js.map +1 -0
  79. package/build/cjs/data/mods/gen8legends/scripts.d.ts +1 -0
  80. package/build/cjs/data/mods/gen8legends/scripts.js +8 -0
  81. package/build/cjs/data/mods/gen8legends/scripts.js.map +1 -0
  82. package/build/cjs/data/moves.js +53 -55
  83. package/build/cjs/data/moves.js.map +1 -1
  84. package/build/cjs/data/pokedex.js +735 -10
  85. package/build/cjs/data/pokedex.js.map +1 -1
  86. package/build/cjs/data/rulesets.js +78 -0
  87. package/build/cjs/data/rulesets.js.map +1 -1
  88. package/build/cjs/data/text/items.js +108 -0
  89. package/build/cjs/data/text/items.js.map +1 -1
  90. package/build/cjs/data/text/moves.js +6 -2
  91. package/build/cjs/data/text/moves.js.map +1 -1
  92. package/build/cjs/sim/battle-actions.js +17 -7
  93. package/build/cjs/sim/battle-actions.js.map +1 -1
  94. package/build/cjs/sim/battle-queue.d.ts +11 -6
  95. package/build/cjs/sim/battle-queue.js.map +1 -1
  96. package/build/cjs/sim/battle.d.ts +2 -2
  97. package/build/cjs/sim/battle.js +23 -28
  98. package/build/cjs/sim/battle.js.map +1 -1
  99. package/build/cjs/sim/dex-conditions.d.ts +2 -1
  100. package/build/cjs/sim/dex-conditions.js.map +1 -1
  101. package/build/cjs/sim/dex-formats.d.ts +2 -0
  102. package/build/cjs/sim/dex-formats.js +12 -1
  103. package/build/cjs/sim/dex-formats.js.map +1 -1
  104. package/build/cjs/sim/dex-species.d.ts +13 -2
  105. package/build/cjs/sim/dex-species.js +40 -19
  106. package/build/cjs/sim/dex-species.js.map +1 -1
  107. package/build/cjs/sim/dex.js +11 -0
  108. package/build/cjs/sim/dex.js.map +1 -1
  109. package/build/cjs/sim/exported-global-types.d.ts +5 -4
  110. package/build/cjs/sim/global-types.d.ts +5 -4
  111. package/build/cjs/sim/pokemon.d.ts +6 -4
  112. package/build/cjs/sim/pokemon.js +31 -24
  113. package/build/cjs/sim/pokemon.js.map +1 -1
  114. package/build/cjs/sim/side.js +11 -41
  115. package/build/cjs/sim/side.js.map +1 -1
  116. package/build/cjs/sim/team-validator.d.ts +1 -0
  117. package/build/cjs/sim/team-validator.js +50 -18
  118. package/build/cjs/sim/team-validator.js.map +1 -1
  119. package/build/esm/config/formats.mjs +185 -173
  120. package/build/esm/config/formats.mjs.map +1 -1
  121. package/build/esm/data/abilities.mjs +62 -72
  122. package/build/esm/data/abilities.mjs.map +1 -1
  123. package/build/esm/data/aliases.mjs +11 -4
  124. package/build/esm/data/aliases.mjs.map +1 -1
  125. package/build/esm/data/formats-data.mjs +163 -63
  126. package/build/esm/data/formats-data.mjs.map +1 -1
  127. package/build/esm/data/items.mjs +406 -2
  128. package/build/esm/data/items.mjs.map +1 -1
  129. package/build/esm/data/legality.mjs +548 -113
  130. package/build/esm/data/legality.mjs.map +1 -1
  131. package/build/esm/data/mods/gen1/conditions.mjs +1 -1
  132. package/build/esm/data/mods/gen2/formats-data.mjs +2 -2
  133. package/build/esm/data/mods/gen2/formats-data.mjs.map +1 -1
  134. package/build/esm/data/mods/gen3/abilities.mjs +1 -3
  135. package/build/esm/data/mods/gen3/abilities.mjs.map +1 -1
  136. package/build/esm/data/mods/gen3/formats-data.mjs +5 -11
  137. package/build/esm/data/mods/gen3/formats-data.mjs.map +1 -1
  138. package/build/esm/data/mods/gen3/moves.mjs +24 -0
  139. package/build/esm/data/mods/gen3/moves.mjs.map +1 -1
  140. package/build/esm/data/mods/gen4/abilities.mjs +2 -14
  141. package/build/esm/data/mods/gen4/abilities.mjs.map +1 -1
  142. package/build/esm/data/mods/gen4/formats-data.mjs.map +1 -1
  143. package/build/esm/data/mods/gen4/moves.mjs +37 -6
  144. package/build/esm/data/mods/gen4/moves.mjs.map +1 -1
  145. package/build/esm/data/mods/gen5/abilities.mjs +4 -0
  146. package/build/esm/data/mods/gen5/abilities.mjs.map +1 -1
  147. package/build/esm/data/mods/gen5/formats-data.mjs.map +1 -1
  148. package/build/esm/data/mods/gen6/pokedex.mjs +104 -0
  149. package/build/esm/data/mods/gen6/pokedex.mjs.map +1 -1
  150. package/build/esm/data/mods/gen7/abilities.mjs +11 -26
  151. package/build/esm/data/mods/gen7/abilities.mjs.map +1 -1
  152. package/build/esm/data/mods/gen7/formats-data.mjs +1 -1
  153. package/build/esm/data/mods/gen7/formats-data.mjs.map +1 -1
  154. package/build/esm/data/mods/gen7/pokedex.mjs +96 -0
  155. package/build/esm/data/mods/gen7/pokedex.mjs.map +1 -1
  156. package/build/esm/data/mods/gen8/abilities.mjs +0 -3
  157. package/build/esm/data/mods/gen8/abilities.mjs.map +1 -1
  158. package/build/esm/data/mods/gen8bdsp/abilities.d.mts +1 -0
  159. package/build/esm/data/mods/gen8bdsp/abilities.mjs +39 -0
  160. package/build/esm/data/mods/gen8bdsp/abilities.mjs.map +1 -0
  161. package/build/esm/data/mods/gen8bdsp/formats-data.d.mts +1 -0
  162. package/build/esm/data/mods/gen8bdsp/formats-data.mjs +1834 -0
  163. package/build/esm/data/mods/gen8bdsp/formats-data.mjs.map +1 -0
  164. package/build/esm/data/mods/gen8bdsp/index.d.mts +6 -0
  165. package/build/esm/data/mods/gen8bdsp/index.mjs +7 -0
  166. package/build/esm/data/mods/gen8bdsp/index.mjs.map +1 -0
  167. package/build/esm/data/mods/gen8bdsp/items.d.mts +1 -0
  168. package/build/esm/data/mods/gen8bdsp/items.mjs +828 -0
  169. package/build/esm/data/mods/gen8bdsp/items.mjs.map +1 -0
  170. package/build/esm/data/mods/gen8bdsp/learnsets.d.mts +3 -0
  171. package/build/esm/data/mods/gen8bdsp/learnsets.mjs +25781 -0
  172. package/build/esm/data/mods/gen8bdsp/learnsets.mjs.map +1 -0
  173. package/build/esm/data/mods/gen8bdsp/legality.d.mts +3 -0
  174. package/build/esm/data/mods/gen8bdsp/legality.mjs +239 -0
  175. package/build/esm/data/mods/gen8bdsp/legality.mjs.map +1 -0
  176. package/build/esm/data/mods/gen8bdsp/moves.d.mts +1 -0
  177. package/build/esm/data/mods/gen8bdsp/moves.mjs +916 -0
  178. package/build/esm/data/mods/gen8bdsp/moves.mjs.map +1 -0
  179. package/build/esm/data/mods/gen8bdsp/pokedex.d.mts +1 -0
  180. package/build/esm/data/mods/gen8bdsp/pokedex.mjs +96 -0
  181. package/build/esm/data/mods/gen8bdsp/pokedex.mjs.map +1 -0
  182. package/build/esm/data/mods/gen8bdsp/scripts.d.mts +1 -0
  183. package/build/esm/data/mods/gen8bdsp/scripts.mjs +12 -0
  184. package/build/esm/data/mods/gen8bdsp/scripts.mjs.map +1 -0
  185. package/build/esm/data/mods/gen8legends/formats-data.d.mts +1 -0
  186. package/build/esm/data/mods/gen8legends/formats-data.mjs +2772 -0
  187. package/build/esm/data/mods/gen8legends/formats-data.mjs.map +1 -0
  188. package/build/esm/data/mods/gen8legends/index.d.mts +2 -0
  189. package/build/esm/data/mods/gen8legends/index.mjs +3 -0
  190. package/build/esm/data/mods/gen8legends/index.mjs.map +1 -0
  191. package/build/esm/data/mods/gen8legends/learnsets.d.mts +3 -0
  192. package/build/esm/data/mods/gen8legends/learnsets.mjs +5550 -0
  193. package/build/esm/data/mods/gen8legends/learnsets.mjs.map +1 -0
  194. package/build/esm/data/mods/gen8legends/legality.d.mts +3 -0
  195. package/build/esm/data/mods/gen8legends/legality.mjs +146 -0
  196. package/build/esm/data/mods/gen8legends/legality.mjs.map +1 -0
  197. package/build/esm/data/mods/gen8legends/scripts.d.mts +1 -0
  198. package/build/esm/data/mods/gen8legends/scripts.mjs +5 -0
  199. package/build/esm/data/mods/gen8legends/scripts.mjs.map +1 -0
  200. package/build/esm/data/moves.mjs +53 -55
  201. package/build/esm/data/moves.mjs.map +1 -1
  202. package/build/esm/data/pokedex.mjs +735 -10
  203. package/build/esm/data/pokedex.mjs.map +1 -1
  204. package/build/esm/data/rulesets.mjs +78 -0
  205. package/build/esm/data/rulesets.mjs.map +1 -1
  206. package/build/esm/data/text/items.mjs +108 -0
  207. package/build/esm/data/text/items.mjs.map +1 -1
  208. package/build/esm/data/text/moves.mjs +6 -2
  209. package/build/esm/data/text/moves.mjs.map +1 -1
  210. package/build/esm/sim/battle-actions.mjs +17 -7
  211. package/build/esm/sim/battle-actions.mjs.map +1 -1
  212. package/build/esm/sim/battle-queue.d.mts +11 -6
  213. package/build/esm/sim/battle-queue.mjs.map +1 -1
  214. package/build/esm/sim/battle.d.mts +2 -2
  215. package/build/esm/sim/battle.mjs +23 -28
  216. package/build/esm/sim/battle.mjs.map +1 -1
  217. package/build/esm/sim/dex-conditions.d.mts +2 -1
  218. package/build/esm/sim/dex-conditions.mjs.map +1 -1
  219. package/build/esm/sim/dex-formats.d.mts +2 -0
  220. package/build/esm/sim/dex-formats.mjs +12 -1
  221. package/build/esm/sim/dex-formats.mjs.map +1 -1
  222. package/build/esm/sim/dex-species.d.mts +13 -2
  223. package/build/esm/sim/dex-species.mjs +40 -19
  224. package/build/esm/sim/dex-species.mjs.map +1 -1
  225. package/build/esm/sim/dex.mjs +11 -0
  226. package/build/esm/sim/dex.mjs.map +1 -1
  227. package/build/esm/sim/exported-global-types.d.mts +5 -4
  228. package/build/esm/sim/global-types.d.mts +5 -4
  229. package/build/esm/sim/pokemon.d.mts +6 -4
  230. package/build/esm/sim/pokemon.mjs +31 -24
  231. package/build/esm/sim/pokemon.mjs.map +1 -1
  232. package/build/esm/sim/side.mjs +11 -41
  233. package/build/esm/sim/side.mjs.map +1 -1
  234. package/build/esm/sim/team-validator.d.mts +1 -0
  235. package/build/esm/sim/team-validator.mjs +50 -18
  236. package/build/esm/sim/team-validator.mjs.map +1 -1
  237. package/package.json +2 -2
@@ -404,6 +404,21 @@ export const Items = {
404
404
  gen: 6,
405
405
  isNonstandard: "Past",
406
406
  },
407
+ barbaracite: {
408
+ name: "Barbaracite",
409
+ spritenum: 564,
410
+ megaStone: "Barbaracle-Mega",
411
+ megaEvolves: "Barbaracle",
412
+ itemUser: ["Barbaracle"],
413
+ onTakeItem(item, source) {
414
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
415
+ return false;
416
+ return true;
417
+ },
418
+ num: 2581,
419
+ gen: 9,
420
+ isNonstandard: "Future",
421
+ },
407
422
  beastball: {
408
423
  name: "Beast Ball",
409
424
  spritenum: 661,
@@ -767,6 +782,21 @@ export const Items = {
767
782
  num: 546,
768
783
  gen: 5,
769
784
  },
785
+ chandelurite: {
786
+ name: "Chandelurite",
787
+ spritenum: 557,
788
+ megaStone: "Chandelure-Mega",
789
+ megaEvolves: "Chandelure",
790
+ itemUser: ["Chandelure"],
791
+ onTakeItem(item, source) {
792
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
793
+ return false;
794
+ return true;
795
+ },
796
+ num: 2574,
797
+ gen: 9,
798
+ isNonstandard: "Future",
799
+ },
770
800
  charcoal: {
771
801
  name: "Charcoal",
772
802
  spritenum: 61,
@@ -865,6 +895,21 @@ export const Items = {
865
895
  isPokeball: true,
866
896
  isNonstandard: "Unobtainable",
867
897
  },
898
+ chesnaughtite: {
899
+ name: "Chesnaughtite",
900
+ spritenum: 558,
901
+ megaStone: "Chesnaught-Mega",
902
+ megaEvolves: "Chesnaught",
903
+ itemUser: ["Chesnaught"],
904
+ onTakeItem(item, source) {
905
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
906
+ return false;
907
+ return true;
908
+ },
909
+ num: 2575,
910
+ gen: 9,
911
+ isNonstandard: "Future",
912
+ },
868
913
  chestoberry: {
869
914
  name: "Chesto Berry",
870
915
  spritenum: 65,
@@ -1066,6 +1111,21 @@ export const Items = {
1066
1111
  num: 1882,
1067
1112
  gen: 9,
1068
1113
  },
1114
+ clefablite: {
1115
+ name: "Clefablite",
1116
+ spritenum: 544,
1117
+ megaStone: "Clefable-Mega",
1118
+ megaEvolves: "Clefable",
1119
+ itemUser: ["Clefable"],
1120
+ onTakeItem(item, source) {
1121
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1122
+ return false;
1123
+ return true;
1124
+ },
1125
+ num: 2559,
1126
+ gen: 9,
1127
+ isNonstandard: "Future",
1128
+ },
1069
1129
  cloversweet: {
1070
1130
  name: "Clover Sweet",
1071
1131
  spritenum: 707,
@@ -1319,6 +1379,21 @@ export const Items = {
1319
1379
  gen: 3,
1320
1380
  isNonstandard: "Past",
1321
1381
  },
1382
+ delphoxite: {
1383
+ name: "Delphoxite",
1384
+ spritenum: 559,
1385
+ megaStone: "Delphox-Mega",
1386
+ megaEvolves: "Delphox",
1387
+ itemUser: ["Delphox"],
1388
+ onTakeItem(item, source) {
1389
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1390
+ return false;
1391
+ return true;
1392
+ },
1393
+ num: 2576,
1394
+ gen: 9,
1395
+ isNonstandard: "Future",
1396
+ },
1322
1397
  destinyknot: {
1323
1398
  name: "Destiny Knot",
1324
1399
  spritenum: 95,
@@ -1404,6 +1479,21 @@ export const Items = {
1404
1479
  num: 311,
1405
1480
  gen: 4,
1406
1481
  },
1482
+ dragalgite: {
1483
+ name: "Dragalgite",
1484
+ spritenum: 565,
1485
+ megaStone: "Dragalge-Mega",
1486
+ megaEvolves: "Dragalge",
1487
+ itemUser: ["Dragalge"],
1488
+ onTakeItem(item, source) {
1489
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1490
+ return false;
1491
+ return true;
1492
+ },
1493
+ num: 2582,
1494
+ gen: 9,
1495
+ isNonstandard: "Future",
1496
+ },
1407
1497
  dragonfang: {
1408
1498
  name: "Dragon Fang",
1409
1499
  spritenum: 106,
@@ -1459,6 +1549,21 @@ export const Items = {
1459
1549
  num: 235,
1460
1550
  gen: 2,
1461
1551
  },
1552
+ dragoninite: {
1553
+ name: "Dragoninite",
1554
+ spritenum: 547,
1555
+ megaStone: "Dragonite-Mega",
1556
+ megaEvolves: "Dragonite",
1557
+ itemUser: ["Dragonite"],
1558
+ onTakeItem(item, source) {
1559
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1560
+ return false;
1561
+ return true;
1562
+ },
1563
+ num: 2562,
1564
+ gen: 9,
1565
+ isNonstandard: "Future",
1566
+ },
1462
1567
  dragoniumz: {
1463
1568
  name: "Dragonium Z",
1464
1569
  spritenum: 645,
@@ -1471,6 +1576,21 @@ export const Items = {
1471
1576
  gen: 7,
1472
1577
  isNonstandard: "Past",
1473
1578
  },
1579
+ drampanite: {
1580
+ name: "Drampanite",
1581
+ spritenum: 569,
1582
+ megaStone: "Drampa-Mega",
1583
+ megaEvolves: "Drampa",
1584
+ itemUser: ["Drampa"],
1585
+ onTakeItem(item, source) {
1586
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1587
+ return false;
1588
+ return true;
1589
+ },
1590
+ num: 2585,
1591
+ gen: 9,
1592
+ isNonstandard: "Future",
1593
+ },
1474
1594
  dreadplate: {
1475
1595
  name: "Dread Plate",
1476
1596
  spritenum: 110,
@@ -1556,6 +1676,21 @@ export const Items = {
1556
1676
  num: 305,
1557
1677
  gen: 4,
1558
1678
  },
1679
+ eelektrossite: {
1680
+ name: "Eelektrossite",
1681
+ spritenum: 556,
1682
+ megaStone: "Eelektross-Mega",
1683
+ megaEvolves: "Eelektross",
1684
+ itemUser: ["Eelektross"],
1685
+ onTakeItem(item, source) {
1686
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1687
+ return false;
1688
+ return true;
1689
+ },
1690
+ num: 2573,
1691
+ gen: 9,
1692
+ isNonstandard: "Future",
1693
+ },
1559
1694
  eeviumz: {
1560
1695
  name: "Eevium Z",
1561
1696
  spritenum: 657,
@@ -1730,6 +1865,21 @@ export const Items = {
1730
1865
  gen: 7,
1731
1866
  isNonstandard: "Past",
1732
1867
  },
1868
+ emboarite: {
1869
+ name: "Emboarite",
1870
+ spritenum: 552,
1871
+ megaStone: "Emboar-Mega",
1872
+ megaEvolves: "Emboar",
1873
+ itemUser: ["Emboar"],
1874
+ onTakeItem(item, source) {
1875
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1876
+ return false;
1877
+ return true;
1878
+ },
1879
+ num: 2569,
1880
+ gen: 9,
1881
+ isNonstandard: "Future",
1882
+ },
1733
1883
  enigmaberry: {
1734
1884
  name: "Enigma Berry",
1735
1885
  spritenum: 124,
@@ -1774,6 +1924,21 @@ export const Items = {
1774
1924
  num: 538,
1775
1925
  gen: 5,
1776
1926
  },
1927
+ excadrite: {
1928
+ name: "Excadrite",
1929
+ spritenum: 553,
1930
+ megaStone: "Excadrill-Mega",
1931
+ megaEvolves: "Excadrill",
1932
+ itemUser: ["Excadrill"],
1933
+ onTakeItem(item, source) {
1934
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1935
+ return false;
1936
+ return true;
1937
+ },
1938
+ num: 2570,
1939
+ gen: 9,
1940
+ isNonstandard: "Future",
1941
+ },
1777
1942
  expertbelt: {
1778
1943
  name: "Expert Belt",
1779
1944
  spritenum: 132,
@@ -1846,6 +2011,21 @@ export const Items = {
1846
2011
  gen: 7,
1847
2012
  isNonstandard: "Past",
1848
2013
  },
2014
+ falinksite: {
2015
+ name: "Falinksite",
2016
+ spritenum: 570,
2017
+ megaStone: "Falinks-Mega",
2018
+ megaEvolves: "Falinks",
2019
+ itemUser: ["Falinks"],
2020
+ onTakeItem(item, source) {
2021
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
2022
+ return false;
2023
+ return true;
2024
+ },
2025
+ num: 2586,
2026
+ gen: 9,
2027
+ isNonstandard: "Future",
2028
+ },
1849
2029
  fastball: {
1850
2030
  name: "Fast Ball",
1851
2031
  spritenum: 137,
@@ -1853,6 +2033,21 @@ export const Items = {
1853
2033
  gen: 2,
1854
2034
  isPokeball: true,
1855
2035
  },
2036
+ feraligite: {
2037
+ name: "Feraligite",
2038
+ spritenum: 549,
2039
+ megaStone: "Feraligatr-Mega",
2040
+ megaEvolves: "Feraligatr",
2041
+ itemUser: ["Feraligatr"],
2042
+ onTakeItem(item, source) {
2043
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
2044
+ return false;
2045
+ return true;
2046
+ },
2047
+ num: 2564,
2048
+ gen: 9,
2049
+ isNonstandard: "Future",
2050
+ },
1856
2051
  fightinggem: {
1857
2052
  name: "Fighting Gem",
1858
2053
  spritenum: 139,
@@ -2042,6 +2237,21 @@ export const Items = {
2042
2237
  num: 539,
2043
2238
  gen: 5,
2044
2239
  },
2240
+ floettite: {
2241
+ name: "Floettite",
2242
+ spritenum: 562,
2243
+ megaStone: "Floette-Mega",
2244
+ megaEvolves: "Floette-Eternal",
2245
+ itemUser: ["Floette-Eternal"],
2246
+ onTakeItem(item, source) {
2247
+ if (item.megaEvolves === source.baseSpecies.name)
2248
+ return false;
2249
+ return true;
2250
+ },
2251
+ num: 2579,
2252
+ gen: 9,
2253
+ isNonstandard: "Future",
2254
+ },
2045
2255
  flowersweet: {
2046
2256
  name: "Flower Sweet",
2047
2257
  spritenum: 708,
@@ -2174,6 +2384,21 @@ export const Items = {
2174
2384
  gen: 2,
2175
2385
  isPokeball: true,
2176
2386
  },
2387
+ froslassite: {
2388
+ name: "Froslassite",
2389
+ spritenum: 551,
2390
+ megaStone: "Froslass-Mega",
2391
+ megaEvolves: "Froslass",
2392
+ itemUser: ["Froslass"],
2393
+ onTakeItem(item, source) {
2394
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
2395
+ return false;
2396
+ return true;
2397
+ },
2398
+ num: 2566,
2399
+ gen: 9,
2400
+ isNonstandard: "Future",
2401
+ },
2177
2402
  fullincense: {
2178
2403
  name: "Full Incense",
2179
2404
  spritenum: 155,
@@ -2240,7 +2465,7 @@ export const Items = {
2240
2465
  },
2241
2466
  garchompite: {
2242
2467
  name: "Garchompite",
2243
- spritenum: 589,
2468
+ spritenum: 573,
2244
2469
  megaStone: "Garchomp-Mega",
2245
2470
  megaEvolves: "Garchomp",
2246
2471
  itemUser: ["Garchomp"],
@@ -2423,6 +2648,22 @@ export const Items = {
2423
2648
  gen: 1,
2424
2649
  isPokeball: true,
2425
2650
  },
2651
+ greninjite: {
2652
+ name: "Greninjite",
2653
+ spritenum: 560,
2654
+ megaStone: "Greninja-Mega",
2655
+ megaEvolves: "Greninja",
2656
+ itemUser: ["Greninja"],
2657
+ onTakeItem(item, source) {
2658
+ // TODO: Figure out if this works on Greninja-Bond
2659
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
2660
+ return false;
2661
+ return true;
2662
+ },
2663
+ num: 2577,
2664
+ gen: 9,
2665
+ isNonstandard: "Future",
2666
+ },
2426
2667
  grepaberry: {
2427
2668
  name: "Grepa Berry",
2428
2669
  spritenum: 178,
@@ -2578,6 +2819,21 @@ export const Items = {
2578
2819
  num: 238,
2579
2820
  gen: 2,
2580
2821
  },
2822
+ hawluchanite: {
2823
+ name: "Hawluchanite",
2824
+ spritenum: 566,
2825
+ megaStone: "Hawlucha-Mega",
2826
+ megaEvolves: "Hawlucha",
2827
+ itemUser: ["Hawlucha"],
2828
+ onTakeItem(item, source) {
2829
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
2830
+ return false;
2831
+ return true;
2832
+ },
2833
+ num: 2583,
2834
+ gen: 9,
2835
+ isNonstandard: "Future",
2836
+ },
2581
2837
  healball: {
2582
2838
  name: "Heal Ball",
2583
2839
  spritenum: 188,
@@ -3528,6 +3784,21 @@ export const Items = {
3528
3784
  gen: 2,
3529
3785
  isNonstandard: "Past",
3530
3786
  },
3787
+ malamarite: {
3788
+ name: "Malamarite",
3789
+ spritenum: 563,
3790
+ megaStone: "Malamar-Mega",
3791
+ megaEvolves: "Malamar",
3792
+ itemUser: ["Malamar"],
3793
+ onTakeItem(item, source) {
3794
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
3795
+ return false;
3796
+ return true;
3797
+ },
3798
+ num: 2580,
3799
+ gen: 9,
3800
+ isNonstandard: "Future",
3801
+ },
3531
3802
  maliciousarmor: {
3532
3803
  name: "Malicious Armor",
3533
3804
  spritenum: 744,
@@ -3648,6 +3919,21 @@ export const Items = {
3648
3919
  gen: 6,
3649
3920
  isNonstandard: "Past",
3650
3921
  },
3922
+ meganiumite: {
3923
+ name: "Meganiumite",
3924
+ spritenum: 548,
3925
+ megaStone: "Meganium-Mega",
3926
+ megaEvolves: "Meganium",
3927
+ itemUser: ["Meganium"],
3928
+ onTakeItem(item, source) {
3929
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
3930
+ return false;
3931
+ return true;
3932
+ },
3933
+ num: 2563,
3934
+ gen: 9,
3935
+ isNonstandard: "Future",
3936
+ },
3651
3937
  mentalherb: {
3652
3938
  name: "Mental Herb",
3653
3939
  spritenum: 285,
@@ -4598,6 +4884,15 @@ export const Items = {
4598
4884
  gen: 3,
4599
4885
  isPokeball: true,
4600
4886
  },
4887
+ prettyfeather: {
4888
+ name: "Pretty Feather",
4889
+ spritenum: 1,
4890
+ fling: {
4891
+ basePower: 20,
4892
+ },
4893
+ num: 571,
4894
+ gen: 5,
4895
+ },
4601
4896
  primariumz: {
4602
4897
  name: "Primarium Z",
4603
4898
  spritenum: 652,
@@ -4724,6 +5019,21 @@ export const Items = {
4724
5019
  num: 1884,
4725
5020
  gen: 9,
4726
5021
  },
5022
+ pyroarite: {
5023
+ name: "Pyroarite",
5024
+ spritenum: 561,
5025
+ megaStone: "Pyroar-Mega",
5026
+ megaEvolves: "Pyroar",
5027
+ itemUser: ["Pyroar"],
5028
+ onTakeItem(item, source) {
5029
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
5030
+ return false;
5031
+ return true;
5032
+ },
5033
+ num: 2578,
5034
+ gen: 9,
5035
+ isNonstandard: "Future",
5036
+ },
4727
5037
  qualotberry: {
4728
5038
  name: "Qualot Berry",
4729
5039
  spritenum: 371,
@@ -5290,6 +5600,21 @@ export const Items = {
5290
5600
  gen: 6,
5291
5601
  isNonstandard: "Past",
5292
5602
  },
5603
+ scolipite: {
5604
+ name: "Scolipite",
5605
+ spritenum: 554,
5606
+ megaStone: "Scolipede-Mega",
5607
+ megaEvolves: "Scolipede",
5608
+ itemUser: ["Scolipede"],
5609
+ onTakeItem(item, source) {
5610
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
5611
+ return false;
5612
+ return true;
5613
+ },
5614
+ num: 2571,
5615
+ gen: 9,
5616
+ isNonstandard: "Future",
5617
+ },
5293
5618
  scopelens: {
5294
5619
  name: "Scope Lens",
5295
5620
  spritenum: 429,
@@ -5302,6 +5627,21 @@ export const Items = {
5302
5627
  num: 232,
5303
5628
  gen: 2,
5304
5629
  },
5630
+ scraftinite: {
5631
+ name: "Scraftinite",
5632
+ spritenum: 555,
5633
+ megaStone: "Scrafty-Mega",
5634
+ megaEvolves: "Scrafty",
5635
+ itemUser: ["Scrafty"],
5636
+ onTakeItem(item, source) {
5637
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
5638
+ return false;
5639
+ return true;
5640
+ },
5641
+ num: 2572,
5642
+ gen: 9,
5643
+ isNonstandard: "Future",
5644
+ },
5305
5645
  seaincense: {
5306
5646
  name: "Sea Incense",
5307
5647
  spritenum: 430,
@@ -5356,7 +5696,11 @@ export const Items = {
5356
5696
  },
5357
5697
  onTrapPokemonPriority: -10,
5358
5698
  onTrapPokemon(pokemon) {
5359
- pokemon.trapped = pokemon.maybeTrapped = false;
5699
+ pokemon.trapped = false;
5700
+ },
5701
+ onMaybeTrapPokemonPriority: -10,
5702
+ onMaybeTrapPokemon(pokemon) {
5703
+ pokemon.maybeTrapped = false;
5360
5704
  },
5361
5705
  num: 295,
5362
5706
  gen: 4,
@@ -5478,6 +5822,21 @@ export const Items = {
5478
5822
  num: 158,
5479
5823
  gen: 3,
5480
5824
  },
5825
+ skarmorite: {
5826
+ name: "Skarmorite",
5827
+ spritenum: 550,
5828
+ megaStone: "Skarmory-Mega",
5829
+ megaEvolves: "Skarmory",
5830
+ itemUser: ["Skarmory"],
5831
+ onTakeItem(item, source) {
5832
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
5833
+ return false;
5834
+ return true;
5835
+ },
5836
+ num: 2565,
5837
+ gen: 9,
5838
+ isNonstandard: "Future",
5839
+ },
5481
5840
  skullfossil: {
5482
5841
  name: "Skull Fossil",
5483
5842
  spritenum: 449,
@@ -5710,6 +6069,21 @@ export const Items = {
5710
6069
  num: 207,
5711
6070
  gen: 3,
5712
6071
  },
6072
+ starminite: {
6073
+ name: "Starminite",
6074
+ spritenum: 546,
6075
+ megaStone: "Starmie-Mega",
6076
+ megaEvolves: "Starmie",
6077
+ itemUser: ["Starmie"],
6078
+ onTakeItem(item, source) {
6079
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
6080
+ return false;
6081
+ return true;
6082
+ },
6083
+ num: 2561,
6084
+ gen: 9,
6085
+ isNonstandard: "Future",
6086
+ },
5713
6087
  starsweet: {
5714
6088
  name: "Star Sweet",
5715
6089
  spritenum: 709,
@@ -7157,6 +7531,21 @@ export const Items = {
7157
7531
  gen: 6,
7158
7532
  isNonstandard: "Past",
7159
7533
  },
7534
+ victreebelite: {
7535
+ name: "Victreebelite",
7536
+ spritenum: 545,
7537
+ megaStone: "Victreebel-Mega",
7538
+ megaEvolves: "Victreebel",
7539
+ itemUser: ["Victreebel"],
7540
+ onTakeItem(item, source) {
7541
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
7542
+ return false;
7543
+ return true;
7544
+ },
7545
+ num: 2560,
7546
+ gen: 9,
7547
+ isNonstandard: "Future",
7548
+ },
7160
7549
  wacanberry: {
7161
7550
  name: "Wacan Berry",
7162
7551
  spritenum: 526,
@@ -7498,6 +7887,21 @@ export const Items = {
7498
7887
  num: 276,
7499
7888
  gen: 4,
7500
7889
  },
7890
+ zygardite: {
7891
+ name: "Zygardite",
7892
+ spritenum: 568,
7893
+ megaStone: "Zygarde-Mega",
7894
+ megaEvolves: "Zygarde-Complete",
7895
+ itemUser: ["Zygarde-Complete"],
7896
+ onTakeItem(item, source) {
7897
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
7898
+ return false;
7899
+ return true;
7900
+ },
7901
+ num: 2584,
7902
+ gen: 9,
7903
+ isNonstandard: "Future",
7904
+ },
7501
7905
  // Gen 2 items
7502
7906
  berserkgene: {
7503
7907
  name: "Berserk Gene",