@pkmn/sim 0.9.38 → 0.10.1

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
@@ -407,6 +407,21 @@ exports.Items = {
407
407
  gen: 6,
408
408
  isNonstandard: "Past",
409
409
  },
410
+ barbaracite: {
411
+ name: "Barbaracite",
412
+ spritenum: 564,
413
+ megaStone: "Barbaracle-Mega",
414
+ megaEvolves: "Barbaracle",
415
+ itemUser: ["Barbaracle"],
416
+ onTakeItem(item, source) {
417
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
418
+ return false;
419
+ return true;
420
+ },
421
+ num: 2581,
422
+ gen: 9,
423
+ isNonstandard: "Future",
424
+ },
410
425
  beastball: {
411
426
  name: "Beast Ball",
412
427
  spritenum: 661,
@@ -770,6 +785,21 @@ exports.Items = {
770
785
  num: 546,
771
786
  gen: 5,
772
787
  },
788
+ chandelurite: {
789
+ name: "Chandelurite",
790
+ spritenum: 557,
791
+ megaStone: "Chandelure-Mega",
792
+ megaEvolves: "Chandelure",
793
+ itemUser: ["Chandelure"],
794
+ onTakeItem(item, source) {
795
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
796
+ return false;
797
+ return true;
798
+ },
799
+ num: 2574,
800
+ gen: 9,
801
+ isNonstandard: "Future",
802
+ },
773
803
  charcoal: {
774
804
  name: "Charcoal",
775
805
  spritenum: 61,
@@ -868,6 +898,21 @@ exports.Items = {
868
898
  isPokeball: true,
869
899
  isNonstandard: "Unobtainable",
870
900
  },
901
+ chesnaughtite: {
902
+ name: "Chesnaughtite",
903
+ spritenum: 558,
904
+ megaStone: "Chesnaught-Mega",
905
+ megaEvolves: "Chesnaught",
906
+ itemUser: ["Chesnaught"],
907
+ onTakeItem(item, source) {
908
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
909
+ return false;
910
+ return true;
911
+ },
912
+ num: 2575,
913
+ gen: 9,
914
+ isNonstandard: "Future",
915
+ },
871
916
  chestoberry: {
872
917
  name: "Chesto Berry",
873
918
  spritenum: 65,
@@ -1069,6 +1114,21 @@ exports.Items = {
1069
1114
  num: 1882,
1070
1115
  gen: 9,
1071
1116
  },
1117
+ clefablite: {
1118
+ name: "Clefablite",
1119
+ spritenum: 544,
1120
+ megaStone: "Clefable-Mega",
1121
+ megaEvolves: "Clefable",
1122
+ itemUser: ["Clefable"],
1123
+ onTakeItem(item, source) {
1124
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1125
+ return false;
1126
+ return true;
1127
+ },
1128
+ num: 2559,
1129
+ gen: 9,
1130
+ isNonstandard: "Future",
1131
+ },
1072
1132
  cloversweet: {
1073
1133
  name: "Clover Sweet",
1074
1134
  spritenum: 707,
@@ -1322,6 +1382,21 @@ exports.Items = {
1322
1382
  gen: 3,
1323
1383
  isNonstandard: "Past",
1324
1384
  },
1385
+ delphoxite: {
1386
+ name: "Delphoxite",
1387
+ spritenum: 559,
1388
+ megaStone: "Delphox-Mega",
1389
+ megaEvolves: "Delphox",
1390
+ itemUser: ["Delphox"],
1391
+ onTakeItem(item, source) {
1392
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1393
+ return false;
1394
+ return true;
1395
+ },
1396
+ num: 2576,
1397
+ gen: 9,
1398
+ isNonstandard: "Future",
1399
+ },
1325
1400
  destinyknot: {
1326
1401
  name: "Destiny Knot",
1327
1402
  spritenum: 95,
@@ -1407,6 +1482,21 @@ exports.Items = {
1407
1482
  num: 311,
1408
1483
  gen: 4,
1409
1484
  },
1485
+ dragalgite: {
1486
+ name: "Dragalgite",
1487
+ spritenum: 565,
1488
+ megaStone: "Dragalge-Mega",
1489
+ megaEvolves: "Dragalge",
1490
+ itemUser: ["Dragalge"],
1491
+ onTakeItem(item, source) {
1492
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1493
+ return false;
1494
+ return true;
1495
+ },
1496
+ num: 2582,
1497
+ gen: 9,
1498
+ isNonstandard: "Future",
1499
+ },
1410
1500
  dragonfang: {
1411
1501
  name: "Dragon Fang",
1412
1502
  spritenum: 106,
@@ -1462,6 +1552,21 @@ exports.Items = {
1462
1552
  num: 235,
1463
1553
  gen: 2,
1464
1554
  },
1555
+ dragoninite: {
1556
+ name: "Dragoninite",
1557
+ spritenum: 547,
1558
+ megaStone: "Dragonite-Mega",
1559
+ megaEvolves: "Dragonite",
1560
+ itemUser: ["Dragonite"],
1561
+ onTakeItem(item, source) {
1562
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1563
+ return false;
1564
+ return true;
1565
+ },
1566
+ num: 2562,
1567
+ gen: 9,
1568
+ isNonstandard: "Future",
1569
+ },
1465
1570
  dragoniumz: {
1466
1571
  name: "Dragonium Z",
1467
1572
  spritenum: 645,
@@ -1474,6 +1579,21 @@ exports.Items = {
1474
1579
  gen: 7,
1475
1580
  isNonstandard: "Past",
1476
1581
  },
1582
+ drampanite: {
1583
+ name: "Drampanite",
1584
+ spritenum: 569,
1585
+ megaStone: "Drampa-Mega",
1586
+ megaEvolves: "Drampa",
1587
+ itemUser: ["Drampa"],
1588
+ onTakeItem(item, source) {
1589
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1590
+ return false;
1591
+ return true;
1592
+ },
1593
+ num: 2585,
1594
+ gen: 9,
1595
+ isNonstandard: "Future",
1596
+ },
1477
1597
  dreadplate: {
1478
1598
  name: "Dread Plate",
1479
1599
  spritenum: 110,
@@ -1559,6 +1679,21 @@ exports.Items = {
1559
1679
  num: 305,
1560
1680
  gen: 4,
1561
1681
  },
1682
+ eelektrossite: {
1683
+ name: "Eelektrossite",
1684
+ spritenum: 556,
1685
+ megaStone: "Eelektross-Mega",
1686
+ megaEvolves: "Eelektross",
1687
+ itemUser: ["Eelektross"],
1688
+ onTakeItem(item, source) {
1689
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1690
+ return false;
1691
+ return true;
1692
+ },
1693
+ num: 2573,
1694
+ gen: 9,
1695
+ isNonstandard: "Future",
1696
+ },
1562
1697
  eeviumz: {
1563
1698
  name: "Eevium Z",
1564
1699
  spritenum: 657,
@@ -1733,6 +1868,21 @@ exports.Items = {
1733
1868
  gen: 7,
1734
1869
  isNonstandard: "Past",
1735
1870
  },
1871
+ emboarite: {
1872
+ name: "Emboarite",
1873
+ spritenum: 552,
1874
+ megaStone: "Emboar-Mega",
1875
+ megaEvolves: "Emboar",
1876
+ itemUser: ["Emboar"],
1877
+ onTakeItem(item, source) {
1878
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1879
+ return false;
1880
+ return true;
1881
+ },
1882
+ num: 2569,
1883
+ gen: 9,
1884
+ isNonstandard: "Future",
1885
+ },
1736
1886
  enigmaberry: {
1737
1887
  name: "Enigma Berry",
1738
1888
  spritenum: 124,
@@ -1777,6 +1927,21 @@ exports.Items = {
1777
1927
  num: 538,
1778
1928
  gen: 5,
1779
1929
  },
1930
+ excadrite: {
1931
+ name: "Excadrite",
1932
+ spritenum: 553,
1933
+ megaStone: "Excadrill-Mega",
1934
+ megaEvolves: "Excadrill",
1935
+ itemUser: ["Excadrill"],
1936
+ onTakeItem(item, source) {
1937
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
1938
+ return false;
1939
+ return true;
1940
+ },
1941
+ num: 2570,
1942
+ gen: 9,
1943
+ isNonstandard: "Future",
1944
+ },
1780
1945
  expertbelt: {
1781
1946
  name: "Expert Belt",
1782
1947
  spritenum: 132,
@@ -1849,6 +2014,21 @@ exports.Items = {
1849
2014
  gen: 7,
1850
2015
  isNonstandard: "Past",
1851
2016
  },
2017
+ falinksite: {
2018
+ name: "Falinksite",
2019
+ spritenum: 570,
2020
+ megaStone: "Falinks-Mega",
2021
+ megaEvolves: "Falinks",
2022
+ itemUser: ["Falinks"],
2023
+ onTakeItem(item, source) {
2024
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
2025
+ return false;
2026
+ return true;
2027
+ },
2028
+ num: 2586,
2029
+ gen: 9,
2030
+ isNonstandard: "Future",
2031
+ },
1852
2032
  fastball: {
1853
2033
  name: "Fast Ball",
1854
2034
  spritenum: 137,
@@ -1856,6 +2036,21 @@ exports.Items = {
1856
2036
  gen: 2,
1857
2037
  isPokeball: true,
1858
2038
  },
2039
+ feraligite: {
2040
+ name: "Feraligite",
2041
+ spritenum: 549,
2042
+ megaStone: "Feraligatr-Mega",
2043
+ megaEvolves: "Feraligatr",
2044
+ itemUser: ["Feraligatr"],
2045
+ onTakeItem(item, source) {
2046
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
2047
+ return false;
2048
+ return true;
2049
+ },
2050
+ num: 2564,
2051
+ gen: 9,
2052
+ isNonstandard: "Future",
2053
+ },
1859
2054
  fightinggem: {
1860
2055
  name: "Fighting Gem",
1861
2056
  spritenum: 139,
@@ -2045,6 +2240,21 @@ exports.Items = {
2045
2240
  num: 539,
2046
2241
  gen: 5,
2047
2242
  },
2243
+ floettite: {
2244
+ name: "Floettite",
2245
+ spritenum: 562,
2246
+ megaStone: "Floette-Mega",
2247
+ megaEvolves: "Floette-Eternal",
2248
+ itemUser: ["Floette-Eternal"],
2249
+ onTakeItem(item, source) {
2250
+ if (item.megaEvolves === source.baseSpecies.name)
2251
+ return false;
2252
+ return true;
2253
+ },
2254
+ num: 2579,
2255
+ gen: 9,
2256
+ isNonstandard: "Future",
2257
+ },
2048
2258
  flowersweet: {
2049
2259
  name: "Flower Sweet",
2050
2260
  spritenum: 708,
@@ -2177,6 +2387,21 @@ exports.Items = {
2177
2387
  gen: 2,
2178
2388
  isPokeball: true,
2179
2389
  },
2390
+ froslassite: {
2391
+ name: "Froslassite",
2392
+ spritenum: 551,
2393
+ megaStone: "Froslass-Mega",
2394
+ megaEvolves: "Froslass",
2395
+ itemUser: ["Froslass"],
2396
+ onTakeItem(item, source) {
2397
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
2398
+ return false;
2399
+ return true;
2400
+ },
2401
+ num: 2566,
2402
+ gen: 9,
2403
+ isNonstandard: "Future",
2404
+ },
2180
2405
  fullincense: {
2181
2406
  name: "Full Incense",
2182
2407
  spritenum: 155,
@@ -2243,7 +2468,7 @@ exports.Items = {
2243
2468
  },
2244
2469
  garchompite: {
2245
2470
  name: "Garchompite",
2246
- spritenum: 589,
2471
+ spritenum: 573,
2247
2472
  megaStone: "Garchomp-Mega",
2248
2473
  megaEvolves: "Garchomp",
2249
2474
  itemUser: ["Garchomp"],
@@ -2426,6 +2651,22 @@ exports.Items = {
2426
2651
  gen: 1,
2427
2652
  isPokeball: true,
2428
2653
  },
2654
+ greninjite: {
2655
+ name: "Greninjite",
2656
+ spritenum: 560,
2657
+ megaStone: "Greninja-Mega",
2658
+ megaEvolves: "Greninja",
2659
+ itemUser: ["Greninja"],
2660
+ onTakeItem(item, source) {
2661
+ // TODO: Figure out if this works on Greninja-Bond
2662
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
2663
+ return false;
2664
+ return true;
2665
+ },
2666
+ num: 2577,
2667
+ gen: 9,
2668
+ isNonstandard: "Future",
2669
+ },
2429
2670
  grepaberry: {
2430
2671
  name: "Grepa Berry",
2431
2672
  spritenum: 178,
@@ -2581,6 +2822,21 @@ exports.Items = {
2581
2822
  num: 238,
2582
2823
  gen: 2,
2583
2824
  },
2825
+ hawluchanite: {
2826
+ name: "Hawluchanite",
2827
+ spritenum: 566,
2828
+ megaStone: "Hawlucha-Mega",
2829
+ megaEvolves: "Hawlucha",
2830
+ itemUser: ["Hawlucha"],
2831
+ onTakeItem(item, source) {
2832
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
2833
+ return false;
2834
+ return true;
2835
+ },
2836
+ num: 2583,
2837
+ gen: 9,
2838
+ isNonstandard: "Future",
2839
+ },
2584
2840
  healball: {
2585
2841
  name: "Heal Ball",
2586
2842
  spritenum: 188,
@@ -3531,6 +3787,21 @@ exports.Items = {
3531
3787
  gen: 2,
3532
3788
  isNonstandard: "Past",
3533
3789
  },
3790
+ malamarite: {
3791
+ name: "Malamarite",
3792
+ spritenum: 563,
3793
+ megaStone: "Malamar-Mega",
3794
+ megaEvolves: "Malamar",
3795
+ itemUser: ["Malamar"],
3796
+ onTakeItem(item, source) {
3797
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
3798
+ return false;
3799
+ return true;
3800
+ },
3801
+ num: 2580,
3802
+ gen: 9,
3803
+ isNonstandard: "Future",
3804
+ },
3534
3805
  maliciousarmor: {
3535
3806
  name: "Malicious Armor",
3536
3807
  spritenum: 744,
@@ -3651,6 +3922,21 @@ exports.Items = {
3651
3922
  gen: 6,
3652
3923
  isNonstandard: "Past",
3653
3924
  },
3925
+ meganiumite: {
3926
+ name: "Meganiumite",
3927
+ spritenum: 548,
3928
+ megaStone: "Meganium-Mega",
3929
+ megaEvolves: "Meganium",
3930
+ itemUser: ["Meganium"],
3931
+ onTakeItem(item, source) {
3932
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
3933
+ return false;
3934
+ return true;
3935
+ },
3936
+ num: 2563,
3937
+ gen: 9,
3938
+ isNonstandard: "Future",
3939
+ },
3654
3940
  mentalherb: {
3655
3941
  name: "Mental Herb",
3656
3942
  spritenum: 285,
@@ -4601,6 +4887,15 @@ exports.Items = {
4601
4887
  gen: 3,
4602
4888
  isPokeball: true,
4603
4889
  },
4890
+ prettyfeather: {
4891
+ name: "Pretty Feather",
4892
+ spritenum: 1,
4893
+ fling: {
4894
+ basePower: 20,
4895
+ },
4896
+ num: 571,
4897
+ gen: 5,
4898
+ },
4604
4899
  primariumz: {
4605
4900
  name: "Primarium Z",
4606
4901
  spritenum: 652,
@@ -4727,6 +5022,21 @@ exports.Items = {
4727
5022
  num: 1884,
4728
5023
  gen: 9,
4729
5024
  },
5025
+ pyroarite: {
5026
+ name: "Pyroarite",
5027
+ spritenum: 561,
5028
+ megaStone: "Pyroar-Mega",
5029
+ megaEvolves: "Pyroar",
5030
+ itemUser: ["Pyroar"],
5031
+ onTakeItem(item, source) {
5032
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
5033
+ return false;
5034
+ return true;
5035
+ },
5036
+ num: 2578,
5037
+ gen: 9,
5038
+ isNonstandard: "Future",
5039
+ },
4730
5040
  qualotberry: {
4731
5041
  name: "Qualot Berry",
4732
5042
  spritenum: 371,
@@ -5293,6 +5603,21 @@ exports.Items = {
5293
5603
  gen: 6,
5294
5604
  isNonstandard: "Past",
5295
5605
  },
5606
+ scolipite: {
5607
+ name: "Scolipite",
5608
+ spritenum: 554,
5609
+ megaStone: "Scolipede-Mega",
5610
+ megaEvolves: "Scolipede",
5611
+ itemUser: ["Scolipede"],
5612
+ onTakeItem(item, source) {
5613
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
5614
+ return false;
5615
+ return true;
5616
+ },
5617
+ num: 2571,
5618
+ gen: 9,
5619
+ isNonstandard: "Future",
5620
+ },
5296
5621
  scopelens: {
5297
5622
  name: "Scope Lens",
5298
5623
  spritenum: 429,
@@ -5305,6 +5630,21 @@ exports.Items = {
5305
5630
  num: 232,
5306
5631
  gen: 2,
5307
5632
  },
5633
+ scraftinite: {
5634
+ name: "Scraftinite",
5635
+ spritenum: 555,
5636
+ megaStone: "Scrafty-Mega",
5637
+ megaEvolves: "Scrafty",
5638
+ itemUser: ["Scrafty"],
5639
+ onTakeItem(item, source) {
5640
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
5641
+ return false;
5642
+ return true;
5643
+ },
5644
+ num: 2572,
5645
+ gen: 9,
5646
+ isNonstandard: "Future",
5647
+ },
5308
5648
  seaincense: {
5309
5649
  name: "Sea Incense",
5310
5650
  spritenum: 430,
@@ -5359,7 +5699,11 @@ exports.Items = {
5359
5699
  },
5360
5700
  onTrapPokemonPriority: -10,
5361
5701
  onTrapPokemon(pokemon) {
5362
- pokemon.trapped = pokemon.maybeTrapped = false;
5702
+ pokemon.trapped = false;
5703
+ },
5704
+ onMaybeTrapPokemonPriority: -10,
5705
+ onMaybeTrapPokemon(pokemon) {
5706
+ pokemon.maybeTrapped = false;
5363
5707
  },
5364
5708
  num: 295,
5365
5709
  gen: 4,
@@ -5481,6 +5825,21 @@ exports.Items = {
5481
5825
  num: 158,
5482
5826
  gen: 3,
5483
5827
  },
5828
+ skarmorite: {
5829
+ name: "Skarmorite",
5830
+ spritenum: 550,
5831
+ megaStone: "Skarmory-Mega",
5832
+ megaEvolves: "Skarmory",
5833
+ itemUser: ["Skarmory"],
5834
+ onTakeItem(item, source) {
5835
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
5836
+ return false;
5837
+ return true;
5838
+ },
5839
+ num: 2565,
5840
+ gen: 9,
5841
+ isNonstandard: "Future",
5842
+ },
5484
5843
  skullfossil: {
5485
5844
  name: "Skull Fossil",
5486
5845
  spritenum: 449,
@@ -5713,6 +6072,21 @@ exports.Items = {
5713
6072
  num: 207,
5714
6073
  gen: 3,
5715
6074
  },
6075
+ starminite: {
6076
+ name: "Starminite",
6077
+ spritenum: 546,
6078
+ megaStone: "Starmie-Mega",
6079
+ megaEvolves: "Starmie",
6080
+ itemUser: ["Starmie"],
6081
+ onTakeItem(item, source) {
6082
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
6083
+ return false;
6084
+ return true;
6085
+ },
6086
+ num: 2561,
6087
+ gen: 9,
6088
+ isNonstandard: "Future",
6089
+ },
5716
6090
  starsweet: {
5717
6091
  name: "Star Sweet",
5718
6092
  spritenum: 709,
@@ -7160,6 +7534,21 @@ exports.Items = {
7160
7534
  gen: 6,
7161
7535
  isNonstandard: "Past",
7162
7536
  },
7537
+ victreebelite: {
7538
+ name: "Victreebelite",
7539
+ spritenum: 545,
7540
+ megaStone: "Victreebel-Mega",
7541
+ megaEvolves: "Victreebel",
7542
+ itemUser: ["Victreebel"],
7543
+ onTakeItem(item, source) {
7544
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
7545
+ return false;
7546
+ return true;
7547
+ },
7548
+ num: 2560,
7549
+ gen: 9,
7550
+ isNonstandard: "Future",
7551
+ },
7163
7552
  wacanberry: {
7164
7553
  name: "Wacan Berry",
7165
7554
  spritenum: 526,
@@ -7501,6 +7890,21 @@ exports.Items = {
7501
7890
  num: 276,
7502
7891
  gen: 4,
7503
7892
  },
7893
+ zygardite: {
7894
+ name: "Zygardite",
7895
+ spritenum: 568,
7896
+ megaStone: "Zygarde-Mega",
7897
+ megaEvolves: "Zygarde-Complete",
7898
+ itemUser: ["Zygarde-Complete"],
7899
+ onTakeItem(item, source) {
7900
+ if (item.megaEvolves === source.baseSpecies.baseSpecies)
7901
+ return false;
7902
+ return true;
7903
+ },
7904
+ num: 2584,
7905
+ gen: 9,
7906
+ isNonstandard: "Future",
7907
+ },
7504
7908
  // Gen 2 items
7505
7909
  berserkgene: {
7506
7910
  name: "Berserk Gene",