{ "version": 3, "sources": ["../../../data/items.ts"], "sourcesContent": ["export const Items: {[itemid: string]: ItemData} = {\r\n\tabilityshield: {\r\n\t\tname: \"Ability Shield\",\r\n\t\tspritenum: 0, // TODO\r\n\t\tignoreKlutz: true,\r\n\t\t// Neutralizing Gas protection implemented in Pokemon.ignoringAbility() within sim/pokemon.ts\r\n\t\t// and in Neutralizing Gas itself within data/abilities.ts\r\n\t\tonSetAbility(ability, target, source, effect) {\r\n\t\t\tif (effect && effect.effectType === 'Ability' && effect.name !== 'Trace') {\r\n\t\t\t\tthis.add('-ability', source, effect);\r\n\t\t\t}\r\n\t\t\tthis.add('-block', target, 'item: Ability Shield');\r\n\t\t\treturn null;\r\n\t\t},\r\n\t\t// Mold Breaker protection implemented in Battle.suppressingAbility() within sim/battle.ts\r\n\t\tnum: 1881,\r\n\t\tgen: 9,\r\n\t},\r\n\tabomasite: {\r\n\t\tname: \"Abomasite\",\r\n\t\tspritenum: 575,\r\n\t\tmegaStone: \"Abomasnow-Mega\",\r\n\t\tmegaEvolves: \"Abomasnow\",\r\n\t\titemUser: [\"Abomasnow\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 674,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tabsolite: {\r\n\t\tname: \"Absolite\",\r\n\t\tspritenum: 576,\r\n\t\tmegaStone: \"Absol-Mega\",\r\n\t\tmegaEvolves: \"Absol\",\r\n\t\titemUser: [\"Absol\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 677,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tabsorbbulb: {\r\n\t\tname: \"Absorb Bulb\",\r\n\t\tspritenum: 2,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonDamagingHit(damage, target, source, move) {\r\n\t\t\tif (move.type === 'Water') {\r\n\t\t\t\ttarget.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tboosts: {\r\n\t\t\tspa: 1,\r\n\t\t},\r\n\t\tnum: 545,\r\n\t\tgen: 5,\r\n\t},\r\n\tadamantcrystal: {\r\n\t\tname: \"Adamant Crystal\",\r\n\t\tspritenum: 4, // TODO\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (user.baseSpecies.num === 483 && (move.type === 'Steel' || move.type === 'Dragon')) {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif (source?.baseSpecies.num === 483 || pokemon.baseSpecies.num === 483) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Dialga-Origin\",\r\n\t\titemUser: [\"Dialga-Origin\"],\r\n\t\tnum: 1777,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tadamantorb: {\r\n\t\tname: \"Adamant Orb\",\r\n\t\tspritenum: 4,\r\n\t\tfling: {\r\n\t\t\tbasePower: 60,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (user.baseSpecies.num === 483 && (move.type === 'Steel' || move.type === 'Dragon')) {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\titemUser: [\"Dialga\"],\r\n\t\tnum: 135,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tadrenalineorb: {\r\n\t\tname: \"Adrenaline Orb\",\r\n\t\tspritenum: 660,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonAfterBoost(boost, target, source, effect) {\r\n\t\t\t// Adrenaline Orb activates if Intimidate is blocked by an ability like Hyper Cutter,\r\n\t\t\t// which deletes boost.atk,\r\n\t\t\t// but not if the holder's attack is already at -6 (or +6 if it has Contrary),\r\n\t\t\t// which sets boost.atk to 0\r\n\t\t\tif (target.boosts['spe'] === 6 || boost.atk === 0) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tif (effect.name === 'Intimidate') {\r\n\t\t\t\ttarget.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tboosts: {\r\n\t\t\tspe: 1,\r\n\t\t},\r\n\t\tnum: 846,\r\n\t\tgen: 7,\r\n\t},\r\n\taerodactylite: {\r\n\t\tname: \"Aerodactylite\",\r\n\t\tspritenum: 577,\r\n\t\tmegaStone: \"Aerodactyl-Mega\",\r\n\t\tmegaEvolves: \"Aerodactyl\",\r\n\t\titemUser: [\"Aerodactyl\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 672,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\taggronite: {\r\n\t\tname: \"Aggronite\",\r\n\t\tspritenum: 578,\r\n\t\tmegaStone: \"Aggron-Mega\",\r\n\t\tmegaEvolves: \"Aggron\",\r\n\t\titemUser: [\"Aggron\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 667,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\taguavberry: {\r\n\t\tname: \"Aguav Berry\",\r\n\t\tspritenum: 5,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Dragon\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 4 || (pokemon.hp <= pokemon.maxhp / 2 &&\r\n\t\t\t\t\tpokemon.hasAbility('gluttony') && pokemon.abilityState.gluttony)) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTryEatItem(item, pokemon) {\r\n\t\t\tif (!this.runEvent('TryHeal', pokemon)) return false;\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.heal(pokemon.baseMaxhp / 3);\r\n\t\t\tif (pokemon.getNature().minus === 'spd') {\r\n\t\t\t\tpokemon.addVolatile('confusion');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 162,\r\n\t\tgen: 3,\r\n\t},\r\n\tairballoon: {\r\n\t\tname: \"Air Balloon\",\r\n\t\tspritenum: 6,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonStart(target) {\r\n\t\t\tif (!target.ignoringItem() && !this.field.getPseudoWeather('gravity')) {\r\n\t\t\t\tthis.add('-item', target, 'Air Balloon');\r\n\t\t\t}\r\n\t\t},\r\n\t\t// airborneness implemented in sim/pokemon.js:Pokemon#isGrounded\r\n\t\tonDamagingHit(damage, target, source, move) {\r\n\t\t\tthis.add('-enditem', target, 'Air Balloon');\r\n\t\t\ttarget.item = '';\r\n\t\t\ttarget.itemState = {id: '', target};\r\n\t\t\tthis.runEvent('AfterUseItem', target, null, null, this.dex.items.get('airballoon'));\r\n\t\t},\r\n\t\tonAfterSubDamage(damage, target, source, effect) {\r\n\t\t\tthis.debug('effect: ' + effect.id);\r\n\t\t\tif (effect.effectType === 'Move') {\r\n\t\t\t\tthis.add('-enditem', target, 'Air Balloon');\r\n\t\t\t\ttarget.item = '';\r\n\t\t\t\ttarget.itemState = {id: '', target};\r\n\t\t\t\tthis.runEvent('AfterUseItem', target, null, null, this.dex.items.get('airballoon'));\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 541,\r\n\t\tgen: 5,\r\n\t},\r\n\talakazite: {\r\n\t\tname: \"Alakazite\",\r\n\t\tspritenum: 579,\r\n\t\tmegaStone: \"Alakazam-Mega\",\r\n\t\tmegaEvolves: \"Alakazam\",\r\n\t\titemUser: [\"Alakazam\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 679,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\taloraichiumz: {\r\n\t\tname: \"Aloraichium Z\",\r\n\t\tspritenum: 655,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Stoked Sparksurfer\",\r\n\t\tzMoveFrom: \"Thunderbolt\",\r\n\t\titemUser: [\"Raichu-Alola\"],\r\n\t\tnum: 803,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\taltarianite: {\r\n\t\tname: \"Altarianite\",\r\n\t\tspritenum: 615,\r\n\t\tmegaStone: \"Altaria-Mega\",\r\n\t\tmegaEvolves: \"Altaria\",\r\n\t\titemUser: [\"Altaria\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 755,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tampharosite: {\r\n\t\tname: \"Ampharosite\",\r\n\t\tspritenum: 580,\r\n\t\tmegaStone: \"Ampharos-Mega\",\r\n\t\tmegaEvolves: \"Ampharos\",\r\n\t\titemUser: [\"Ampharos\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 658,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tapicotberry: {\r\n\t\tname: \"Apicot Berry\",\r\n\t\tspritenum: 10,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Ground\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 4 || (pokemon.hp <= pokemon.maxhp / 2 &&\r\n\t\t\t\t\tpokemon.hasAbility('gluttony') && pokemon.abilityState.gluttony)) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.boost({spd: 1});\r\n\t\t},\r\n\t\tnum: 205,\r\n\t\tgen: 3,\r\n\t},\r\n\tarmorfossil: {\r\n\t\tname: \"Armor Fossil\",\r\n\t\tspritenum: 12,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 104,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\taspearberry: {\r\n\t\tname: \"Aspear Berry\",\r\n\t\tspritenum: 13,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Ice\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.status === 'frz') {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tif (pokemon.status === 'frz') {\r\n\t\t\t\tpokemon.cureStatus();\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 153,\r\n\t\tgen: 3,\r\n\t},\r\n\tassaultvest: {\r\n\t\tname: \"Assault Vest\",\r\n\t\tspritenum: 581,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tonModifySpDPriority: 1,\r\n\t\tonModifySpD(spd) {\r\n\t\t\treturn this.chainModify(1.5);\r\n\t\t},\r\n\t\tonDisableMove(pokemon) {\r\n\t\t\tfor (const moveSlot of pokemon.moveSlots) {\r\n\t\t\t\tif (this.dex.moves.get(moveSlot.move).category === 'Status') {\r\n\t\t\t\t\tpokemon.disableMove(moveSlot.id);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 640,\r\n\t\tgen: 6,\r\n\t},\r\n\taudinite: {\r\n\t\tname: \"Audinite\",\r\n\t\tspritenum: 617,\r\n\t\tmegaStone: \"Audino-Mega\",\r\n\t\tmegaEvolves: \"Audino\",\r\n\t\titemUser: [\"Audino\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 757,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tauspiciousarmor: {\r\n\t\tname: \"Auspicious Armor\",\r\n\t\tspritenum: 0, // TODO\r\n\t\tnum: 2344,\r\n\t\tgen: 9,\r\n\t},\r\n\tbabiriberry: {\r\n\t\tname: \"Babiri Berry\",\r\n\t\tspritenum: 17,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Steel\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Steel' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 199,\r\n\t\tgen: 4,\r\n\t},\r\n\tbanettite: {\r\n\t\tname: \"Banettite\",\r\n\t\tspritenum: 582,\r\n\t\tmegaStone: \"Banette-Mega\",\r\n\t\tmegaEvolves: \"Banette\",\r\n\t\titemUser: [\"Banette\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 668,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tbeastball: {\r\n\t\tname: \"Beast Ball\",\r\n\t\tspritenum: 661,\r\n\t\tnum: 851,\r\n\t\tgen: 7,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tbeedrillite: {\r\n\t\tname: \"Beedrillite\",\r\n\t\tspritenum: 628,\r\n\t\tmegaStone: \"Beedrill-Mega\",\r\n\t\tmegaEvolves: \"Beedrill\",\r\n\t\titemUser: [\"Beedrill\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 770,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tbelueberry: {\r\n\t\tname: \"Belue Berry\",\r\n\t\tspritenum: 21,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Electric\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 183,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tberryjuice: {\r\n\t\tname: \"Berry Juice\",\r\n\t\tspritenum: 22,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 2) {\r\n\t\t\t\tif (this.runEvent('TryHeal', pokemon) && pokemon.useItem()) {\r\n\t\t\t\t\tthis.heal(20);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 43,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tberrysweet: {\r\n\t\tname: \"Berry Sweet\",\r\n\t\tspritenum: 706,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tnum: 1111,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tbigroot: {\r\n\t\tname: \"Big Root\",\r\n\t\tspritenum: 29,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonTryHealPriority: 1,\r\n\t\tonTryHeal(damage, target, source, effect) {\r\n\t\t\tconst heals = ['drain', 'leechseed', 'ingrain', 'aquaring', 'strengthsap'];\r\n\t\t\tif (heals.includes(effect.id)) {\r\n\t\t\t\treturn this.chainModify([5324, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 296,\r\n\t\tgen: 4,\r\n\t},\r\n\tbindingband: {\r\n\t\tname: \"Binding Band\",\r\n\t\tspritenum: 31,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\t// implemented in statuses\r\n\t\tnum: 544,\r\n\t\tgen: 5,\r\n\t},\r\n\tblackbelt: {\r\n\t\tname: \"Black Belt\",\r\n\t\tspritenum: 32,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move && move.type === 'Fighting') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 241,\r\n\t\tgen: 2,\r\n\t},\r\n\tblackglasses: {\r\n\t\tname: \"Black Glasses\",\r\n\t\tspritenum: 35,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move && move.type === 'Dark') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 240,\r\n\t\tgen: 2,\r\n\t},\r\n\tblacksludge: {\r\n\t\tname: \"Black Sludge\",\r\n\t\tspritenum: 34,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonResidualOrder: 5,\r\n\t\tonResidualSubOrder: 4,\r\n\t\tonResidual(pokemon) {\r\n\t\t\tif (pokemon.hasType('Poison')) {\r\n\t\t\t\tthis.heal(pokemon.baseMaxhp / 16);\r\n\t\t\t} else {\r\n\t\t\t\tthis.damage(pokemon.baseMaxhp / 8);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 281,\r\n\t\tgen: 4,\r\n\t},\r\n\tblastoisinite: {\r\n\t\tname: \"Blastoisinite\",\r\n\t\tspritenum: 583,\r\n\t\tmegaStone: \"Blastoise-Mega\",\r\n\t\tmegaEvolves: \"Blastoise\",\r\n\t\titemUser: [\"Blastoise\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 661,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tblazikenite: {\r\n\t\tname: \"Blazikenite\",\r\n\t\tspritenum: 584,\r\n\t\tmegaStone: \"Blaziken-Mega\",\r\n\t\tmegaEvolves: \"Blaziken\",\r\n\t\titemUser: [\"Blaziken\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 664,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tblueorb: {\r\n\t\tname: \"Blue Orb\",\r\n\t\tspritenum: 41,\r\n\t\tonSwitchIn(pokemon) {\r\n\t\t\tif (pokemon.isActive && pokemon.baseSpecies.name === 'Kyogre') {\r\n\t\t\t\tthis.queue.insertChoice({choice: 'runPrimal', pokemon: pokemon});\r\n\t\t\t}\r\n\t\t},\r\n\t\tonPrimal(pokemon) {\r\n\t\t\tpokemon.formeChange('Kyogre-Primal', this.effect, true);\r\n\t\t},\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (source.baseSpecies.baseSpecies === 'Kyogre') return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\titemUser: [\"Kyogre\"],\r\n\t\tnum: 535,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tblukberry: {\r\n\t\tname: \"Bluk Berry\",\r\n\t\tspritenum: 44,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Fire\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 165,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tblunderpolicy: {\r\n\t\tname: \"Blunder Policy\",\r\n\t\tspritenum: 716,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\t// Item activation located in scripts.js\r\n\t\tnum: 1121,\r\n\t\tgen: 8,\r\n\t},\r\n\tboosterenergy: {\r\n\t\tname: \"Booster Energy\",\r\n\t\tspritenum: 0, // TODO\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.transformed) return;\r\n\t\t\tif (this.queue.peek(true)?.choice === 'runSwitch') return;\r\n\r\n\t\t\tif (pokemon.hasAbility('protosynthesis') && !this.field.isWeather('sunnyday') && pokemon.useItem()) {\r\n\t\t\t\tpokemon.addVolatile('protosynthesis');\r\n\t\t\t}\r\n\t\t\tif (pokemon.hasAbility('quarkdrive') && !this.field.isTerrain('electricterrain') && pokemon.useItem()) {\r\n\t\t\t\tpokemon.addVolatile('quarkdrive');\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (source.baseSpecies.tags.includes(\"Paradox\")) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 1880,\r\n\t\tgen: 9,\r\n\t},\r\n\tbottlecap: {\r\n\t\tname: \"Bottle Cap\",\r\n\t\tspritenum: 696,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 795,\r\n\t\tgen: 7,\r\n\t},\r\n\tbrightpowder: {\r\n\t\tname: \"Bright Powder\",\r\n\t\tspritenum: 51,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonModifyAccuracyPriority: -2,\r\n\t\tonModifyAccuracy(accuracy) {\r\n\t\t\tif (typeof accuracy !== 'number') return;\r\n\t\t\tthis.debug('brightpowder - decreasing accuracy');\r\n\t\t\treturn this.chainModify([3686, 4096]);\r\n\t\t},\r\n\t\tnum: 213,\r\n\t\tgen: 2,\r\n\t},\r\n\tbuggem: {\r\n\t\tname: \"Bug Gem\",\r\n\t\tspritenum: 53,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status') return;\r\n\t\t\tif (move.type === 'Bug' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 558,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tbugmemory: {\r\n\t\tname: \"Bug Memory\",\r\n\t\tspritenum: 673,\r\n\t\tonMemory: 'Bug',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Bug\",\r\n\t\titemUser: [\"Silvally-Bug\"],\r\n\t\tnum: 909,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tbuginiumz: {\r\n\t\tname: \"Buginium Z\",\r\n\t\tspritenum: 642,\r\n\t\tonPlate: 'Bug',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Bug\",\r\n\t\tforcedForme: \"Arceus-Bug\",\r\n\t\tnum: 787,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tburndrive: {\r\n\t\tname: \"Burn Drive\",\r\n\t\tspritenum: 54,\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 649) || pokemon.baseSpecies.num === 649) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tonDrive: 'Fire',\r\n\t\tforcedForme: \"Genesect-Burn\",\r\n\t\titemUser: [\"Genesect-Burn\"],\r\n\t\tnum: 118,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tcameruptite: {\r\n\t\tname: \"Cameruptite\",\r\n\t\tspritenum: 625,\r\n\t\tmegaStone: \"Camerupt-Mega\",\r\n\t\tmegaEvolves: \"Camerupt\",\r\n\t\titemUser: [\"Camerupt\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 767,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tcellbattery: {\r\n\t\tname: \"Cell Battery\",\r\n\t\tspritenum: 60,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonDamagingHit(damage, target, source, move) {\r\n\t\t\tif (move.type === 'Electric') {\r\n\t\t\t\ttarget.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tboosts: {\r\n\t\t\tatk: 1,\r\n\t\t},\r\n\t\tnum: 546,\r\n\t\tgen: 5,\r\n\t},\r\n\tcharcoal: {\r\n\t\tname: \"Charcoal\",\r\n\t\tspritenum: 61,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move && move.type === 'Fire') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 249,\r\n\t\tgen: 2,\r\n\t},\r\n\tcharizarditex: {\r\n\t\tname: \"Charizardite X\",\r\n\t\tspritenum: 585,\r\n\t\tmegaStone: \"Charizard-Mega-X\",\r\n\t\tmegaEvolves: \"Charizard\",\r\n\t\titemUser: [\"Charizard\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 660,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tcharizarditey: {\r\n\t\tname: \"Charizardite Y\",\r\n\t\tspritenum: 586,\r\n\t\tmegaStone: \"Charizard-Mega-Y\",\r\n\t\tmegaEvolves: \"Charizard\",\r\n\t\titemUser: [\"Charizard\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 678,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tchartiberry: {\r\n\t\tname: \"Charti Berry\",\r\n\t\tspritenum: 62,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Rock\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Rock' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 195,\r\n\t\tgen: 4,\r\n\t},\r\n\tcheriberry: {\r\n\t\tname: \"Cheri Berry\",\r\n\t\tspritenum: 63,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Fire\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.status === 'par') {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tif (pokemon.status === 'par') {\r\n\t\t\t\tpokemon.cureStatus();\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 149,\r\n\t\tgen: 3,\r\n\t},\r\n\tcherishball: {\r\n\t\tname: \"Cherish Ball\",\r\n\t\tspritenum: 64,\r\n\t\tnum: 16,\r\n\t\tgen: 4,\r\n\t\tisPokeball: true,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tchestoberry: {\r\n\t\tname: \"Chesto Berry\",\r\n\t\tspritenum: 65,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Water\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.status === 'slp') {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tif (pokemon.status === 'slp') {\r\n\t\t\t\tpokemon.cureStatus();\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 150,\r\n\t\tgen: 3,\r\n\t},\r\n\tchilanberry: {\r\n\t\tname: \"Chilan Berry\",\r\n\t\tspritenum: 66,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Normal\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (\r\n\t\t\t\tmove.type === 'Normal' &&\r\n\t\t\t\t(!target.volatiles['substitute'] || move.flags['bypasssub'] || (move.infiltrates && this.gen >= 6))\r\n\t\t\t) {\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 200,\r\n\t\tgen: 4,\r\n\t},\r\n\tchilldrive: {\r\n\t\tname: \"Chill Drive\",\r\n\t\tspritenum: 67,\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 649) || pokemon.baseSpecies.num === 649) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tonDrive: 'Ice',\r\n\t\tforcedForme: \"Genesect-Chill\",\r\n\t\titemUser: [\"Genesect-Chill\"],\r\n\t\tnum: 119,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tchippedpot: {\r\n\t\tname: \"Chipped Pot\",\r\n\t\tspritenum: 720,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tnum: 1254,\r\n\t\tgen: 8,\r\n\t},\r\n\tchoiceband: {\r\n\t\tname: \"Choice Band\",\r\n\t\tspritenum: 68,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonStart(pokemon) {\r\n\t\t\tif (pokemon.volatiles['choicelock']) {\r\n\t\t\t\tthis.debug('removing choicelock: ' + pokemon.volatiles['choicelock']);\r\n\t\t\t}\r\n\t\t\tpokemon.removeVolatile('choicelock');\r\n\t\t},\r\n\t\tonModifyMove(move, pokemon) {\r\n\t\t\tpokemon.addVolatile('choicelock');\r\n\t\t},\r\n\t\tonModifyAtkPriority: 1,\r\n\t\tonModifyAtk(atk, pokemon) {\r\n\t\t\tif (pokemon.volatiles['dynamax']) return;\r\n\t\t\treturn this.chainModify(1.5);\r\n\t\t},\r\n\t\tisChoice: true,\r\n\t\tnum: 220,\r\n\t\tgen: 3,\r\n\t},\r\n\tchoicescarf: {\r\n\t\tname: \"Choice Scarf\",\r\n\t\tspritenum: 69,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonStart(pokemon) {\r\n\t\t\tif (pokemon.volatiles['choicelock']) {\r\n\t\t\t\tthis.debug('removing choicelock: ' + pokemon.volatiles['choicelock']);\r\n\t\t\t}\r\n\t\t\tpokemon.removeVolatile('choicelock');\r\n\t\t},\r\n\t\tonModifyMove(move, pokemon) {\r\n\t\t\tpokemon.addVolatile('choicelock');\r\n\t\t},\r\n\t\tonModifySpe(spe, pokemon) {\r\n\t\t\tif (pokemon.volatiles['dynamax']) return;\r\n\t\t\treturn this.chainModify(1.5);\r\n\t\t},\r\n\t\tisChoice: true,\r\n\t\tnum: 287,\r\n\t\tgen: 4,\r\n\t},\r\n\tchoicespecs: {\r\n\t\tname: \"Choice Specs\",\r\n\t\tspritenum: 70,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonStart(pokemon) {\r\n\t\t\tif (pokemon.volatiles['choicelock']) {\r\n\t\t\t\tthis.debug('removing choicelock: ' + pokemon.volatiles['choicelock']);\r\n\t\t\t}\r\n\t\t\tpokemon.removeVolatile('choicelock');\r\n\t\t},\r\n\t\tonModifyMove(move, pokemon) {\r\n\t\t\tpokemon.addVolatile('choicelock');\r\n\t\t},\r\n\t\tonModifySpAPriority: 1,\r\n\t\tonModifySpA(spa, pokemon) {\r\n\t\t\tif (pokemon.volatiles['dynamax']) return;\r\n\t\t\treturn this.chainModify(1.5);\r\n\t\t},\r\n\t\tisChoice: true,\r\n\t\tnum: 297,\r\n\t\tgen: 4,\r\n\t},\r\n\tchopleberry: {\r\n\t\tname: \"Chople Berry\",\r\n\t\tspritenum: 71,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Fighting\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Fighting' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 189,\r\n\t\tgen: 4,\r\n\t},\r\n\tclawfossil: {\r\n\t\tname: \"Claw Fossil\",\r\n\t\tspritenum: 72,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 100,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tclearamulet: {\r\n\t\tname: \"Clear Amulet\",\r\n\t\tspritenum: 0, // TODO\r\n\t\tonTryBoost(boost, target, source, effect) {\r\n\t\t\tif (source && target === source) return;\r\n\t\t\tlet showMsg = false;\r\n\t\t\tlet i: BoostID;\r\n\t\t\tfor (i in boost) {\r\n\t\t\t\tif (boost[i]! < 0) {\r\n\t\t\t\t\tdelete boost[i];\r\n\t\t\t\t\tshowMsg = true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (showMsg && !(effect as ActiveMove).secondaries && effect.id !== 'octolock') {\r\n\t\t\t\tthis.add('-fail', target, 'unboost', '[from] item: Clear Amulet', '[of] ' + target);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 1882,\r\n\t\tgen: 9,\r\n\t},\r\n\tcloversweet: {\r\n\t\tname: \"Clover Sweet\",\r\n\t\tspritenum: 707,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tnum: 1112,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tcobaberry: {\r\n\t\tname: \"Coba Berry\",\r\n\t\tspritenum: 76,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Flying\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Flying' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 192,\r\n\t\tgen: 4,\r\n\t},\r\n\tcolburberry: {\r\n\t\tname: \"Colbur Berry\",\r\n\t\tspritenum: 78,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Dark\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Dark' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 198,\r\n\t\tgen: 4,\r\n\t},\r\n\tcornnberry: {\r\n\t\tname: \"Cornn Berry\",\r\n\t\tspritenum: 81,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Bug\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 175,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tcoverfossil: {\r\n\t\tname: \"Cover Fossil\",\r\n\t\tspritenum: 85,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 572,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tcovertcloak: {\r\n\t\tname: \"Covert Cloak\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 0, // TODO\r\n\t\tonModifySecondaries(secondaries) {\r\n\t\t\tthis.debug('Covert Cloak prevent secondary');\r\n\t\t\treturn secondaries.filter(effect => !!(effect.self || effect.dustproof));\r\n\t\t},\r\n\t\tnum: 1885,\r\n\t\tgen: 9,\r\n\t},\r\n\tcrackedpot: {\r\n\t\tname: \"Cracked Pot\",\r\n\t\tspritenum: 719,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tnum: 1253,\r\n\t\tgen: 8,\r\n\t},\r\n\tcustapberry: {\r\n\t\tname: \"Custap Berry\",\r\n\t\tspritenum: 86,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Ghost\",\r\n\t\t},\r\n\t\tonFractionalPriorityPriority: -2,\r\n\t\tonFractionalPriority(priority, pokemon) {\r\n\t\t\tif (\r\n\t\t\t\tpriority <= 0 &&\r\n\t\t\t\t(pokemon.hp <= pokemon.maxhp / 4 || (pokemon.hp <= pokemon.maxhp / 2 &&\r\n\t\t\t\tpokemon.hasAbility('gluttony') && pokemon.abilityState.gluttony))\r\n\t\t\t) {\r\n\t\t\t\tif (pokemon.eatItem()) {\r\n\t\t\t\t\tthis.add('-activate', pokemon, 'item: Custap Berry', '[consumed]');\r\n\t\t\t\t\treturn 0.1;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 210,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tdamprock: {\r\n\t\tname: \"Damp Rock\",\r\n\t\tspritenum: 88,\r\n\t\tfling: {\r\n\t\t\tbasePower: 60,\r\n\t\t},\r\n\t\tnum: 285,\r\n\t\tgen: 4,\r\n\t},\r\n\tdarkgem: {\r\n\t\tname: \"Dark Gem\",\r\n\t\tspritenum: 89,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status') return;\r\n\t\t\tif (move.type === 'Dark' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 562,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tdarkmemory: {\r\n\t\tname: \"Dark Memory\",\r\n\t\tspritenum: 683,\r\n\t\tonMemory: 'Dark',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Dark\",\r\n\t\titemUser: [\"Silvally-Dark\"],\r\n\t\tnum: 919,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tdarkiniumz: {\r\n\t\tname: \"Darkinium Z\",\r\n\t\tspritenum: 646,\r\n\t\tonPlate: 'Dark',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Dark\",\r\n\t\tforcedForme: \"Arceus-Dark\",\r\n\t\tnum: 791,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tdawnstone: {\r\n\t\tname: \"Dawn Stone\",\r\n\t\tspritenum: 92,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tnum: 109,\r\n\t\tgen: 4,\r\n\t},\r\n\tdecidiumz: {\r\n\t\tname: \"Decidium Z\",\r\n\t\tspritenum: 650,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Sinister Arrow Raid\",\r\n\t\tzMoveFrom: \"Spirit Shackle\",\r\n\t\titemUser: [\"Decidueye\"],\r\n\t\tnum: 798,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tdeepseascale: {\r\n\t\tname: \"Deep Sea Scale\",\r\n\t\tspritenum: 93,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonModifySpDPriority: 2,\r\n\t\tonModifySpD(spd, pokemon) {\r\n\t\t\tif (pokemon.baseSpecies.name === 'Clamperl') {\r\n\t\t\t\treturn this.chainModify(2);\r\n\t\t\t}\r\n\t\t},\r\n\t\titemUser: [\"Clamperl\"],\r\n\t\tnum: 227,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tdeepseatooth: {\r\n\t\tname: \"Deep Sea Tooth\",\r\n\t\tspritenum: 94,\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tonModifySpAPriority: 1,\r\n\t\tonModifySpA(spa, pokemon) {\r\n\t\t\tif (pokemon.baseSpecies.name === 'Clamperl') {\r\n\t\t\t\treturn this.chainModify(2);\r\n\t\t\t}\r\n\t\t},\r\n\t\titemUser: [\"Clamperl\"],\r\n\t\tnum: 226,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tdestinyknot: {\r\n\t\tname: \"Destiny Knot\",\r\n\t\tspritenum: 95,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonAttractPriority: -100,\r\n\t\tonAttract(target, source) {\r\n\t\t\tthis.debug('attract intercepted: ' + target + ' from ' + source);\r\n\t\t\tif (!source || source === target) return;\r\n\t\t\tif (!source.volatiles['attract']) source.addVolatile('attract', target);\r\n\t\t},\r\n\t\tnum: 280,\r\n\t\tgen: 4,\r\n\t},\r\n\tdiancite: {\r\n\t\tname: \"Diancite\",\r\n\t\tspritenum: 624,\r\n\t\tmegaStone: \"Diancie-Mega\",\r\n\t\tmegaEvolves: \"Diancie\",\r\n\t\titemUser: [\"Diancie\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 764,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tdiveball: {\r\n\t\tname: \"Dive Ball\",\r\n\t\tspritenum: 101,\r\n\t\tnum: 7,\r\n\t\tgen: 3,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tdomefossil: {\r\n\t\tname: \"Dome Fossil\",\r\n\t\tspritenum: 102,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 102,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tdousedrive: {\r\n\t\tname: \"Douse Drive\",\r\n\t\tspritenum: 103,\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 649) || pokemon.baseSpecies.num === 649) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tonDrive: 'Water',\r\n\t\tforcedForme: \"Genesect-Douse\",\r\n\t\titemUser: [\"Genesect-Douse\"],\r\n\t\tnum: 116,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tdracoplate: {\r\n\t\tname: \"Draco Plate\",\r\n\t\tspritenum: 105,\r\n\t\tonPlate: 'Dragon',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move && move.type === 'Dragon') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Dragon\",\r\n\t\tnum: 311,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tdragonfang: {\r\n\t\tname: \"Dragon Fang\",\r\n\t\tspritenum: 106,\r\n\t\tfling: {\r\n\t\t\tbasePower: 70,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move && move.type === 'Dragon') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 250,\r\n\t\tgen: 2,\r\n\t},\r\n\tdragongem: {\r\n\t\tname: \"Dragon Gem\",\r\n\t\tspritenum: 107,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status') return;\r\n\t\t\tif (move.type === 'Dragon' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 561,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tdragonmemory: {\r\n\t\tname: \"Dragon Memory\",\r\n\t\tspritenum: 682,\r\n\t\tonMemory: 'Dragon',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Dragon\",\r\n\t\titemUser: [\"Silvally-Dragon\"],\r\n\t\tnum: 918,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tdragonscale: {\r\n\t\tname: \"Dragon Scale\",\r\n\t\tspritenum: 108,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 235,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tdragoniumz: {\r\n\t\tname: \"Dragonium Z\",\r\n\t\tspritenum: 645,\r\n\t\tonPlate: 'Dragon',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Dragon\",\r\n\t\tforcedForme: \"Arceus-Dragon\",\r\n\t\tnum: 790,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tdreadplate: {\r\n\t\tname: \"Dread Plate\",\r\n\t\tspritenum: 110,\r\n\t\tonPlate: 'Dark',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move && move.type === 'Dark') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Dark\",\r\n\t\tnum: 312,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tdreamball: {\r\n\t\tname: \"Dream Ball\",\r\n\t\tspritenum: 111,\r\n\t\tnum: 576,\r\n\t\tgen: 5,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tdubiousdisc: {\r\n\t\tname: \"Dubious Disc\",\r\n\t\tspritenum: 113,\r\n\t\tfling: {\r\n\t\t\tbasePower: 50,\r\n\t\t},\r\n\t\tnum: 324,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tdurinberry: {\r\n\t\tname: \"Durin Berry\",\r\n\t\tspritenum: 114,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Water\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 182,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tduskball: {\r\n\t\tname: \"Dusk Ball\",\r\n\t\tspritenum: 115,\r\n\t\tnum: 13,\r\n\t\tgen: 4,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tduskstone: {\r\n\t\tname: \"Dusk Stone\",\r\n\t\tspritenum: 116,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tnum: 108,\r\n\t\tgen: 4,\r\n\t},\r\n\tearthplate: {\r\n\t\tname: \"Earth Plate\",\r\n\t\tspritenum: 117,\r\n\t\tonPlate: 'Ground',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move && move.type === 'Ground') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Ground\",\r\n\t\tnum: 305,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\teeviumz: {\r\n\t\tname: \"Eevium Z\",\r\n\t\tspritenum: 657,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Extreme Evoboost\",\r\n\t\tzMoveFrom: \"Last Resort\",\r\n\t\titemUser: [\"Eevee\"],\r\n\t\tnum: 805,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tejectbutton: {\r\n\t\tname: \"Eject Button\",\r\n\t\tspritenum: 118,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonAfterMoveSecondaryPriority: 2,\r\n\t\tonAfterMoveSecondary(target, source, move) {\r\n\t\t\tif (source && source !== target && target.hp && move && move.category !== 'Status' && !move.flags['futuremove']) {\r\n\t\t\t\tif (!this.canSwitch(target.side) || target.forceSwitchFlag || target.beingCalledBack || target.isSkyDropped()) return;\r\n\t\t\t\tif (target.volatiles['commanding'] || target.volatiles['commanded']) return;\r\n\t\t\t\tfor (const pokemon of this.getAllActive()) {\r\n\t\t\t\t\tif (pokemon.switchFlag === true) return;\r\n\t\t\t\t}\r\n\t\t\t\ttarget.switchFlag = true;\r\n\t\t\t\tif (target.useItem()) {\r\n\t\t\t\t\tsource.switchFlag = false;\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttarget.switchFlag = false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 547,\r\n\t\tgen: 5,\r\n\t},\r\n\tejectpack: {\r\n\t\tname: \"Eject Pack\",\r\n\t\tspritenum: 714,\r\n\t\tfling: {\r\n\t\t\tbasePower: 50,\r\n\t\t},\r\n\t\tonAfterBoost(boost, target, source, effect) {\r\n\t\t\tif (this.activeMove?.id === 'partingshot') return;\r\n\t\t\tlet eject = false;\r\n\t\t\tlet i: BoostID;\r\n\t\t\tfor (i in boost) {\r\n\t\t\t\tif (boost[i]! < 0) {\r\n\t\t\t\t\teject = true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (eject) {\r\n\t\t\t\tif (target.hp) {\r\n\t\t\t\t\tif (!this.canSwitch(target.side)) return;\r\n\t\t\t\t\tif (target.volatiles['commanding'] || target.volatiles['commanded']) return;\r\n\t\t\t\t\tfor (const pokemon of this.getAllActive()) {\r\n\t\t\t\t\t\tif (pokemon.switchFlag === true) return;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (target.useItem()) target.switchFlag = true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 1119,\r\n\t\tgen: 8,\r\n\t},\r\n\telectirizer: {\r\n\t\tname: \"Electirizer\",\r\n\t\tspritenum: 119,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tnum: 322,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\telectricgem: {\r\n\t\tname: \"Electric Gem\",\r\n\t\tspritenum: 120,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status' || move.flags['pledgecombo']) return;\r\n\t\t\tif (move.type === 'Electric' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 550,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\telectricmemory: {\r\n\t\tname: \"Electric Memory\",\r\n\t\tspritenum: 679,\r\n\t\tonMemory: 'Electric',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Electric\",\r\n\t\titemUser: [\"Silvally-Electric\"],\r\n\t\tnum: 915,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\telectricseed: {\r\n\t\tname: \"Electric Seed\",\r\n\t\tspritenum: 664,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonStart(pokemon) {\r\n\t\t\tif (!pokemon.ignoringItem() && this.field.isTerrain('electricterrain')) {\r\n\t\t\t\tpokemon.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTerrainChange(pokemon) {\r\n\t\t\tif (this.field.isTerrain('electricterrain')) {\r\n\t\t\t\tpokemon.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tboosts: {\r\n\t\t\tdef: 1,\r\n\t\t},\r\n\t\tnum: 881,\r\n\t\tgen: 7,\r\n\t},\r\n\telectriumz: {\r\n\t\tname: \"Electrium Z\",\r\n\t\tspritenum: 634,\r\n\t\tonPlate: 'Electric',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Electric\",\r\n\t\tforcedForme: \"Arceus-Electric\",\r\n\t\tnum: 779,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tenigmaberry: {\r\n\t\tname: \"Enigma Berry\",\r\n\t\tspritenum: 124,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Bug\",\r\n\t\t},\r\n\t\tonHit(target, source, move) {\r\n\t\t\tif (move && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.heal(target.baseMaxhp / 4);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTryEatItem(item, pokemon) {\r\n\t\t\tif (!this.runEvent('TryHeal', pokemon)) return false;\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 208,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\teviolite: {\r\n\t\tname: \"Eviolite\",\r\n\t\tspritenum: 130,\r\n\t\tfling: {\r\n\t\t\tbasePower: 40,\r\n\t\t},\r\n\t\tonModifyDefPriority: 2,\r\n\t\tonModifyDef(def, pokemon) {\r\n\t\t\tif (pokemon.baseSpecies.nfe) {\r\n\t\t\t\treturn this.chainModify(1.5);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonModifySpDPriority: 2,\r\n\t\tonModifySpD(spd, pokemon) {\r\n\t\t\tif (pokemon.baseSpecies.nfe) {\r\n\t\t\t\treturn this.chainModify(1.5);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 538,\r\n\t\tgen: 5,\r\n\t},\r\n\texpertbelt: {\r\n\t\tname: \"Expert Belt\",\r\n\t\tspritenum: 132,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 268,\r\n\t\tgen: 4,\r\n\t},\r\n\tfairiumz: {\r\n\t\tname: \"Fairium Z\",\r\n\t\tspritenum: 648,\r\n\t\tonPlate: 'Fairy',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Fairy\",\r\n\t\tforcedForme: \"Arceus-Fairy\",\r\n\t\tnum: 793,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tfairygem: {\r\n\t\tname: \"Fairy Gem\",\r\n\t\tspritenum: 611,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status') return;\r\n\t\t\tif (move.type === 'Fairy' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 715,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tfairymemory: {\r\n\t\tname: \"Fairy Memory\",\r\n\t\tspritenum: 684,\r\n\t\tonMemory: 'Fairy',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Fairy\",\r\n\t\titemUser: [\"Silvally-Fairy\"],\r\n\t\tnum: 920,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tfastball: {\r\n\t\tname: \"Fast Ball\",\r\n\t\tspritenum: 137,\r\n\t\tnum: 492,\r\n\t\tgen: 2,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tfightinggem: {\r\n\t\tname: \"Fighting Gem\",\r\n\t\tspritenum: 139,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status') return;\r\n\t\t\tif (move.type === 'Fighting' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 553,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tfightingmemory: {\r\n\t\tname: \"Fighting Memory\",\r\n\t\tspritenum: 668,\r\n\t\tonMemory: 'Fighting',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Fighting\",\r\n\t\titemUser: [\"Silvally-Fighting\"],\r\n\t\tnum: 904,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tfightiniumz: {\r\n\t\tname: \"Fightinium Z\",\r\n\t\tspritenum: 637,\r\n\t\tonPlate: 'Fighting',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Fighting\",\r\n\t\tforcedForme: \"Arceus-Fighting\",\r\n\t\tnum: 782,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tfigyberry: {\r\n\t\tname: \"Figy Berry\",\r\n\t\tspritenum: 140,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Bug\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 4 || (pokemon.hp <= pokemon.maxhp / 2 &&\r\n\t\t\t\t\tpokemon.hasAbility('gluttony') && pokemon.abilityState.gluttony)) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTryEatItem(item, pokemon) {\r\n\t\t\tif (!this.runEvent('TryHeal', pokemon)) return false;\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.heal(pokemon.baseMaxhp / 3);\r\n\t\t\tif (pokemon.getNature().minus === 'atk') {\r\n\t\t\t\tpokemon.addVolatile('confusion');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 159,\r\n\t\tgen: 3,\r\n\t},\r\n\tfiregem: {\r\n\t\tname: \"Fire Gem\",\r\n\t\tspritenum: 141,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status' || move.flags['pledgecombo']) return;\r\n\t\t\tif (move.type === 'Fire' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 548,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tfirememory: {\r\n\t\tname: \"Fire Memory\",\r\n\t\tspritenum: 676,\r\n\t\tonMemory: 'Fire',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Fire\",\r\n\t\titemUser: [\"Silvally-Fire\"],\r\n\t\tnum: 912,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tfirestone: {\r\n\t\tname: \"Fire Stone\",\r\n\t\tspritenum: 142,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 82,\r\n\t\tgen: 1,\r\n\t},\r\n\tfiriumz: {\r\n\t\tname: \"Firium Z\",\r\n\t\tspritenum: 632,\r\n\t\tonPlate: 'Fire',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Fire\",\r\n\t\tforcedForme: \"Arceus-Fire\",\r\n\t\tnum: 777,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tfistplate: {\r\n\t\tname: \"Fist Plate\",\r\n\t\tspritenum: 143,\r\n\t\tonPlate: 'Fighting',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move && move.type === 'Fighting') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Fighting\",\r\n\t\tnum: 303,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tflameorb: {\r\n\t\tname: \"Flame Orb\",\r\n\t\tspritenum: 145,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t\tstatus: 'brn',\r\n\t\t},\r\n\t\tonResidualOrder: 28,\r\n\t\tonResidualSubOrder: 3,\r\n\t\tonResidual(pokemon) {\r\n\t\t\tpokemon.trySetStatus('brn', pokemon);\r\n\t\t},\r\n\t\tnum: 273,\r\n\t\tgen: 4,\r\n\t},\r\n\tflameplate: {\r\n\t\tname: \"Flame Plate\",\r\n\t\tspritenum: 146,\r\n\t\tonPlate: 'Fire',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move && move.type === 'Fire') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Fire\",\r\n\t\tnum: 298,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tfloatstone: {\r\n\t\tname: \"Float Stone\",\r\n\t\tspritenum: 147,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonModifyWeight(weighthg) {\r\n\t\t\treturn this.trunc(weighthg / 2);\r\n\t\t},\r\n\t\tnum: 539,\r\n\t\tgen: 5,\r\n\t},\r\n\tflowersweet: {\r\n\t\tname: \"Flower Sweet\",\r\n\t\tspritenum: 708,\r\n\t\tfling: {\r\n\t\t\tbasePower: 0,\r\n\t\t},\r\n\t\tnum: 1113,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tflyinggem: {\r\n\t\tname: \"Flying Gem\",\r\n\t\tspritenum: 149,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status') return;\r\n\t\t\tif (move.type === 'Flying' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 556,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tflyingmemory: {\r\n\t\tname: \"Flying Memory\",\r\n\t\tspritenum: 669,\r\n\t\tonMemory: 'Flying',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Flying\",\r\n\t\titemUser: [\"Silvally-Flying\"],\r\n\t\tnum: 905,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tflyiniumz: {\r\n\t\tname: \"Flyinium Z\",\r\n\t\tspritenum: 640,\r\n\t\tonPlate: 'Flying',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Flying\",\r\n\t\tforcedForme: \"Arceus-Flying\",\r\n\t\tnum: 785,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tfocusband: {\r\n\t\tname: \"Focus Band\",\r\n\t\tspritenum: 150,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonDamagePriority: -40,\r\n\t\tonDamage(damage, target, source, effect) {\r\n\t\t\tif (this.randomChance(1, 10) && damage >= target.hp && effect && effect.effectType === 'Move') {\r\n\t\t\t\tthis.add(\"-activate\", target, \"item: Focus Band\");\r\n\t\t\t\treturn target.hp - 1;\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 230,\r\n\t\tgen: 2,\r\n\t},\r\n\tfocussash: {\r\n\t\tname: \"Focus Sash\",\r\n\t\tspritenum: 151,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonDamagePriority: -40,\r\n\t\tonDamage(damage, target, source, effect) {\r\n\t\t\tif (target.hp === target.maxhp && damage >= target.hp && effect && effect.effectType === 'Move') {\r\n\t\t\t\tif (target.useItem()) {\r\n\t\t\t\t\treturn target.hp - 1;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 275,\r\n\t\tgen: 4,\r\n\t},\r\n\tfossilizedbird: {\r\n\t\tname: \"Fossilized Bird\",\r\n\t\tspritenum: 700,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 1105,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tfossilizeddino: {\r\n\t\tname: \"Fossilized Dino\",\r\n\t\tspritenum: 703,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 1108,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tfossilizeddrake: {\r\n\t\tname: \"Fossilized Drake\",\r\n\t\tspritenum: 702,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 1107,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tfossilizedfish: {\r\n\t\tname: \"Fossilized Fish\",\r\n\t\tspritenum: 701,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 1106,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tfriendball: {\r\n\t\tname: \"Friend Ball\",\r\n\t\tspritenum: 153,\r\n\t\tnum: 497,\r\n\t\tgen: 2,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tfullincense: {\r\n\t\tname: \"Full Incense\",\r\n\t\tspritenum: 155,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonFractionalPriority: -0.1,\r\n\t\tnum: 316,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tgalaricacuff: {\r\n\t\tname: \"Galarica Cuff\",\r\n\t\tspritenum: 739,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 1582,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tgalaricawreath: {\r\n\t\tname: \"Galarica Wreath\",\r\n\t\tspritenum: 740,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 1592,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tgalladite: {\r\n\t\tname: \"Galladite\",\r\n\t\tspritenum: 616,\r\n\t\tmegaStone: \"Gallade-Mega\",\r\n\t\tmegaEvolves: \"Gallade\",\r\n\t\titemUser: [\"Gallade\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 756,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tganlonberry: {\r\n\t\tname: \"Ganlon Berry\",\r\n\t\tspritenum: 158,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Ice\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 4 || (pokemon.hp <= pokemon.maxhp / 2 &&\r\n\t\t\t\t\tpokemon.hasAbility('gluttony') && pokemon.abilityState.gluttony)) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.boost({def: 1});\r\n\t\t},\r\n\t\tnum: 202,\r\n\t\tgen: 3,\r\n\t},\r\n\tgarchompite: {\r\n\t\tname: \"Garchompite\",\r\n\t\tspritenum: 589,\r\n\t\tmegaStone: \"Garchomp-Mega\",\r\n\t\tmegaEvolves: \"Garchomp\",\r\n\t\titemUser: [\"Garchomp\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 683,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tgardevoirite: {\r\n\t\tname: \"Gardevoirite\",\r\n\t\tspritenum: 587,\r\n\t\tmegaStone: \"Gardevoir-Mega\",\r\n\t\tmegaEvolves: \"Gardevoir\",\r\n\t\titemUser: [\"Gardevoir\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 657,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tgengarite: {\r\n\t\tname: \"Gengarite\",\r\n\t\tspritenum: 588,\r\n\t\tmegaStone: \"Gengar-Mega\",\r\n\t\tmegaEvolves: \"Gengar\",\r\n\t\titemUser: [\"Gengar\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 656,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tghostgem: {\r\n\t\tname: \"Ghost Gem\",\r\n\t\tspritenum: 161,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status') return;\r\n\t\t\tif (move.type === 'Ghost' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 560,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tghostmemory: {\r\n\t\tname: \"Ghost Memory\",\r\n\t\tspritenum: 674,\r\n\t\tonMemory: 'Ghost',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Ghost\",\r\n\t\titemUser: [\"Silvally-Ghost\"],\r\n\t\tnum: 910,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tghostiumz: {\r\n\t\tname: \"Ghostium Z\",\r\n\t\tspritenum: 644,\r\n\t\tonPlate: 'Ghost',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Ghost\",\r\n\t\tforcedForme: \"Arceus-Ghost\",\r\n\t\tnum: 789,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tglalitite: {\r\n\t\tname: \"Glalitite\",\r\n\t\tspritenum: 623,\r\n\t\tmegaStone: \"Glalie-Mega\",\r\n\t\tmegaEvolves: \"Glalie\",\r\n\t\titemUser: [\"Glalie\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 763,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tgoldbottlecap: {\r\n\t\tname: \"Gold Bottle Cap\",\r\n\t\tspritenum: 697,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 796,\r\n\t\tgen: 7,\r\n\t},\r\n\tgrassgem: {\r\n\t\tname: \"Grass Gem\",\r\n\t\tspritenum: 172,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status' || move.flags['pledgecombo']) return;\r\n\t\t\tif (move.type === 'Grass' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 551,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tgrassmemory: {\r\n\t\tname: \"Grass Memory\",\r\n\t\tspritenum: 678,\r\n\t\tonMemory: 'Grass',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Grass\",\r\n\t\titemUser: [\"Silvally-Grass\"],\r\n\t\tnum: 914,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tgrassiumz: {\r\n\t\tname: \"Grassium Z\",\r\n\t\tspritenum: 635,\r\n\t\tonPlate: 'Grass',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Grass\",\r\n\t\tforcedForme: \"Arceus-Grass\",\r\n\t\tnum: 780,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tgrassyseed: {\r\n\t\tname: \"Grassy Seed\",\r\n\t\tspritenum: 667,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonStart(pokemon) {\r\n\t\t\tif (!pokemon.ignoringItem() && this.field.isTerrain('grassyterrain')) {\r\n\t\t\t\tpokemon.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTerrainChange(pokemon) {\r\n\t\t\tif (this.field.isTerrain('grassyterrain')) {\r\n\t\t\t\tpokemon.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tboosts: {\r\n\t\t\tdef: 1,\r\n\t\t},\r\n\t\tnum: 884,\r\n\t\tgen: 7,\r\n\t},\r\n\tgreatball: {\r\n\t\tname: \"Great Ball\",\r\n\t\tspritenum: 174,\r\n\t\tnum: 3,\r\n\t\tgen: 1,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tgrepaberry: {\r\n\t\tname: \"Grepa Berry\",\r\n\t\tspritenum: 178,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Flying\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 173,\r\n\t\tgen: 3,\r\n\t},\r\n\tgripclaw: {\r\n\t\tname: \"Grip Claw\",\r\n\t\tspritenum: 179,\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\t// implemented in statuses\r\n\t\tnum: 286,\r\n\t\tgen: 4,\r\n\t},\r\n\tgriseouscore: {\r\n\t\tname: \"Griseous Core\",\r\n\t\tspritenum: 180, // TODO\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (user.baseSpecies.num === 487 && (move.type === 'Ghost' || move.type === 'Dragon')) {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif (source?.baseSpecies.num === 487 || pokemon.baseSpecies.num === 487) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Giratina-Origin\",\r\n\t\titemUser: [\"Giratina-Origin\"],\r\n\t\tnum: 1779,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tgriseousorb: {\r\n\t\tname: \"Griseous Orb\",\r\n\t\tspritenum: 180,\r\n\t\tfling: {\r\n\t\t\tbasePower: 60,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (user.baseSpecies.num === 487 && (move.type === 'Ghost' || move.type === 'Dragon')) {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\titemUser: [\"Giratina\"],\r\n\t\tnum: 112,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tgroundgem: {\r\n\t\tname: \"Ground Gem\",\r\n\t\tspritenum: 182,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status') return;\r\n\t\t\tif (move.type === 'Ground' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 555,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tgroundmemory: {\r\n\t\tname: \"Ground Memory\",\r\n\t\tspritenum: 671,\r\n\t\tonMemory: 'Ground',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Ground\",\r\n\t\titemUser: [\"Silvally-Ground\"],\r\n\t\tnum: 907,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tgroundiumz: {\r\n\t\tname: \"Groundium Z\",\r\n\t\tspritenum: 639,\r\n\t\tonPlate: 'Ground',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Ground\",\r\n\t\tforcedForme: \"Arceus-Ground\",\r\n\t\tnum: 784,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tgyaradosite: {\r\n\t\tname: \"Gyaradosite\",\r\n\t\tspritenum: 589,\r\n\t\tmegaStone: \"Gyarados-Mega\",\r\n\t\tmegaEvolves: \"Gyarados\",\r\n\t\titemUser: [\"Gyarados\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 676,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\thabanberry: {\r\n\t\tname: \"Haban Berry\",\r\n\t\tspritenum: 185,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Dragon\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Dragon' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 197,\r\n\t\tgen: 4,\r\n\t},\r\n\thardstone: {\r\n\t\tname: \"Hard Stone\",\r\n\t\tspritenum: 187,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move && move.type === 'Rock') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 238,\r\n\t\tgen: 2,\r\n\t},\r\n\thealball: {\r\n\t\tname: \"Heal Ball\",\r\n\t\tspritenum: 188,\r\n\t\tnum: 14,\r\n\t\tgen: 4,\r\n\t\tisPokeball: true,\r\n\t},\r\n\theatrock: {\r\n\t\tname: \"Heat Rock\",\r\n\t\tspritenum: 193,\r\n\t\tfling: {\r\n\t\t\tbasePower: 60,\r\n\t\t},\r\n\t\tnum: 284,\r\n\t\tgen: 4,\r\n\t},\r\n\theavyball: {\r\n\t\tname: \"Heavy Ball\",\r\n\t\tspritenum: 194,\r\n\t\tnum: 495,\r\n\t\tgen: 2,\r\n\t\tisPokeball: true,\r\n\t},\r\n\theavydutyboots: {\r\n\t\tname: \"Heavy-Duty Boots\",\r\n\t\tspritenum: 715,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tnum: 1120,\r\n\t\tgen: 8,\r\n\t\t// Hazard Immunity implemented in moves.ts\r\n\t},\r\n\thelixfossil: {\r\n\t\tname: \"Helix Fossil\",\r\n\t\tspritenum: 195,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 101,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\theracronite: {\r\n\t\tname: \"Heracronite\",\r\n\t\tspritenum: 590,\r\n\t\tmegaStone: \"Heracross-Mega\",\r\n\t\tmegaEvolves: \"Heracross\",\r\n\t\titemUser: [\"Heracross\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 680,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\thondewberry: {\r\n\t\tname: \"Hondew Berry\",\r\n\t\tspritenum: 213,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Ground\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 172,\r\n\t\tgen: 3,\r\n\t},\r\n\thoundoominite: {\r\n\t\tname: \"Houndoominite\",\r\n\t\tspritenum: 591,\r\n\t\tmegaStone: \"Houndoom-Mega\",\r\n\t\tmegaEvolves: \"Houndoom\",\r\n\t\titemUser: [\"Houndoom\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 666,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tiapapaberry: {\r\n\t\tname: \"Iapapa Berry\",\r\n\t\tspritenum: 217,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Dark\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 4 || (pokemon.hp <= pokemon.maxhp / 2 &&\r\n\t\t\t\t\tpokemon.hasAbility('gluttony') && pokemon.abilityState.gluttony)) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTryEatItem(item, pokemon) {\r\n\t\t\tif (!this.runEvent('TryHeal', pokemon)) return false;\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.heal(pokemon.baseMaxhp / 3);\r\n\t\t\tif (pokemon.getNature().minus === 'def') {\r\n\t\t\t\tpokemon.addVolatile('confusion');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 163,\r\n\t\tgen: 3,\r\n\t},\r\n\ticegem: {\r\n\t\tname: \"Ice Gem\",\r\n\t\tspritenum: 218,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status') return;\r\n\t\t\tif (move.type === 'Ice' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 552,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ticememory: {\r\n\t\tname: \"Ice Memory\",\r\n\t\tspritenum: 681,\r\n\t\tonMemory: 'Ice',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Ice\",\r\n\t\titemUser: [\"Silvally-Ice\"],\r\n\t\tnum: 917,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ticestone: {\r\n\t\tname: \"Ice Stone\",\r\n\t\tspritenum: 693,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 849,\r\n\t\tgen: 7,\r\n\t},\r\n\ticicleplate: {\r\n\t\tname: \"Icicle Plate\",\r\n\t\tspritenum: 220,\r\n\t\tonPlate: 'Ice',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Ice') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Ice\",\r\n\t\tnum: 302,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\ticiumz: {\r\n\t\tname: \"Icium Z\",\r\n\t\tspritenum: 636,\r\n\t\tonPlate: 'Ice',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Ice\",\r\n\t\tforcedForme: \"Arceus-Ice\",\r\n\t\tnum: 781,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ticyrock: {\r\n\t\tname: \"Icy Rock\",\r\n\t\tspritenum: 221,\r\n\t\tfling: {\r\n\t\t\tbasePower: 40,\r\n\t\t},\r\n\t\tnum: 282,\r\n\t\tgen: 4,\r\n\t},\r\n\tinciniumz: {\r\n\t\tname: \"Incinium Z\",\r\n\t\tspritenum: 651,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Malicious Moonsault\",\r\n\t\tzMoveFrom: \"Darkest Lariat\",\r\n\t\titemUser: [\"Incineroar\"],\r\n\t\tnum: 799,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tinsectplate: {\r\n\t\tname: \"Insect Plate\",\r\n\t\tspritenum: 223,\r\n\t\tonPlate: 'Bug',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Bug') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Bug\",\r\n\t\tnum: 308,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tironball: {\r\n\t\tname: \"Iron Ball\",\r\n\t\tspritenum: 224,\r\n\t\tfling: {\r\n\t\t\tbasePower: 130,\r\n\t\t},\r\n\t\tonEffectiveness(typeMod, target, type, move) {\r\n\t\t\tif (!target) return;\r\n\t\t\tif (target.volatiles['ingrain'] || target.volatiles['smackdown'] || this.field.getPseudoWeather('gravity')) return;\r\n\t\t\tif (move.type === 'Ground' && target.hasType('Flying')) return 0;\r\n\t\t},\r\n\t\t// airborneness negation implemented in sim/pokemon.js:Pokemon#isGrounded\r\n\t\tonModifySpe(spe) {\r\n\t\t\treturn this.chainModify(0.5);\r\n\t\t},\r\n\t\tnum: 278,\r\n\t\tgen: 4,\r\n\t},\r\n\tironplate: {\r\n\t\tname: \"Iron Plate\",\r\n\t\tspritenum: 225,\r\n\t\tonPlate: 'Steel',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Steel') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Steel\",\r\n\t\tnum: 313,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tjabocaberry: {\r\n\t\tname: \"Jaboca Berry\",\r\n\t\tspritenum: 230,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Dragon\",\r\n\t\t},\r\n\t\tonDamagingHit(damage, target, source, move) {\r\n\t\t\tif (move.category === 'Physical' && source.hp && source.isActive && !source.hasAbility('magicguard')) {\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.damage(source.baseMaxhp / (target.hasAbility('ripen') ? 4 : 8), source, target);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 211,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tjawfossil: {\r\n\t\tname: \"Jaw Fossil\",\r\n\t\tspritenum: 694,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 710,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tkasibberry: {\r\n\t\tname: \"Kasib Berry\",\r\n\t\tspritenum: 233,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Ghost\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Ghost' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 196,\r\n\t\tgen: 4,\r\n\t},\r\n\tkebiaberry: {\r\n\t\tname: \"Kebia Berry\",\r\n\t\tspritenum: 234,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Poison\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Poison' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 190,\r\n\t\tgen: 4,\r\n\t},\r\n\tkeeberry: {\r\n\t\tname: \"Kee Berry\",\r\n\t\tspritenum: 593,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Fairy\",\r\n\t\t},\r\n\t\tonAfterMoveSecondary(target, source, move) {\r\n\t\t\tif (move.category === 'Physical') {\r\n\t\t\t\tif (move.id === 'present' && move.heal) return;\r\n\t\t\t\ttarget.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.boost({def: 1});\r\n\t\t},\r\n\t\tnum: 687,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tkelpsyberry: {\r\n\t\tname: \"Kelpsy Berry\",\r\n\t\tspritenum: 235,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Fighting\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 170,\r\n\t\tgen: 3,\r\n\t},\r\n\tkangaskhanite: {\r\n\t\tname: \"Kangaskhanite\",\r\n\t\tspritenum: 592,\r\n\t\tmegaStone: \"Kangaskhan-Mega\",\r\n\t\tmegaEvolves: \"Kangaskhan\",\r\n\t\titemUser: [\"Kangaskhan\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 675,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tkingsrock: {\r\n\t\tname: \"King's Rock\",\r\n\t\tspritenum: 236,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t\tvolatileStatus: 'flinch',\r\n\t\t},\r\n\t\tonModifyMovePriority: -1,\r\n\t\tonModifyMove(move) {\r\n\t\t\tif (move.category !== \"Status\") {\r\n\t\t\t\tif (!move.secondaries) move.secondaries = [];\r\n\t\t\t\tfor (const secondary of move.secondaries) {\r\n\t\t\t\t\tif (secondary.volatileStatus === 'flinch') return;\r\n\t\t\t\t}\r\n\t\t\t\tmove.secondaries.push({\r\n\t\t\t\t\tchance: 10,\r\n\t\t\t\t\tvolatileStatus: 'flinch',\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 221,\r\n\t\tgen: 2,\r\n\t},\r\n\tkommoniumz: {\r\n\t\tname: \"Kommonium Z\",\r\n\t\tspritenum: 690,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Clangorous Soulblaze\",\r\n\t\tzMoveFrom: \"Clanging Scales\",\r\n\t\titemUser: [\"Kommo-o\", \"Kommo-o-Totem\"],\r\n\t\tnum: 926,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tlaggingtail: {\r\n\t\tname: \"Lagging Tail\",\r\n\t\tspritenum: 237,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonFractionalPriority: -0.1,\r\n\t\tnum: 279,\r\n\t\tgen: 4,\r\n\t},\r\n\tlansatberry: {\r\n\t\tname: \"Lansat Berry\",\r\n\t\tspritenum: 238,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Flying\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 4 || (pokemon.hp <= pokemon.maxhp / 2 &&\r\n\t\t\t\t\tpokemon.hasAbility('gluttony') && pokemon.abilityState.gluttony)) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tpokemon.addVolatile('focusenergy');\r\n\t\t},\r\n\t\tnum: 206,\r\n\t\tgen: 3,\r\n\t},\r\n\tlatiasite: {\r\n\t\tname: \"Latiasite\",\r\n\t\tspritenum: 629,\r\n\t\tmegaStone: \"Latias-Mega\",\r\n\t\tmegaEvolves: \"Latias\",\r\n\t\titemUser: [\"Latias\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 684,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tlatiosite: {\r\n\t\tname: \"Latiosite\",\r\n\t\tspritenum: 630,\r\n\t\tmegaStone: \"Latios-Mega\",\r\n\t\tmegaEvolves: \"Latios\",\r\n\t\titemUser: [\"Latios\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 685,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tlaxincense: {\r\n\t\tname: \"Lax Incense\",\r\n\t\tspritenum: 240,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonModifyAccuracyPriority: -2,\r\n\t\tonModifyAccuracy(accuracy) {\r\n\t\t\tif (typeof accuracy !== 'number') return;\r\n\t\t\tthis.debug('lax incense - decreasing accuracy');\r\n\t\t\treturn this.chainModify([3686, 4096]);\r\n\t\t},\r\n\t\tnum: 255,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tleafstone: {\r\n\t\tname: \"Leaf Stone\",\r\n\t\tspritenum: 241,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 85,\r\n\t\tgen: 1,\r\n\t},\r\n\tleek: {\r\n\t\tname: \"Leek\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 60,\r\n\t\t},\r\n\t\tspritenum: 475,\r\n\t\tonModifyCritRatio(critRatio, user) {\r\n\t\t\tif ([\"farfetchd\", \"sirfetchd\"].includes(this.toID(user.baseSpecies.baseSpecies))) {\r\n\t\t\t\treturn critRatio + 2;\r\n\t\t\t}\r\n\t\t},\r\n\t\titemUser: [\"Farfetch\\u2019d\", \"Farfetch\\u2019d-Galar\", \"Sirfetch\\u2019d\"],\r\n\t\tnum: 259,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tleftovers: {\r\n\t\tname: \"Leftovers\",\r\n\t\tspritenum: 242,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonResidualOrder: 5,\r\n\t\tonResidualSubOrder: 4,\r\n\t\tonResidual(pokemon) {\r\n\t\t\tthis.heal(pokemon.baseMaxhp / 16);\r\n\t\t},\r\n\t\tnum: 234,\r\n\t\tgen: 2,\r\n\t},\r\n\tleppaberry: {\r\n\t\tname: \"Leppa Berry\",\r\n\t\tspritenum: 244,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Fighting\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (!pokemon.hp) return;\r\n\t\t\tif (pokemon.moveSlots.some(move => move.pp === 0)) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tconst moveSlot = pokemon.moveSlots.find(move => move.pp === 0) ||\r\n\t\t\t\tpokemon.moveSlots.find(move => move.pp < move.maxpp);\r\n\t\t\tif (!moveSlot) return;\r\n\t\t\tmoveSlot.pp += 10;\r\n\t\t\tif (moveSlot.pp > moveSlot.maxpp) moveSlot.pp = moveSlot.maxpp;\r\n\t\t\tthis.add('-activate', pokemon, 'item: Leppa Berry', moveSlot.move, '[consumed]');\r\n\t\t},\r\n\t\tnum: 154,\r\n\t\tgen: 3,\r\n\t},\r\n\tlevelball: {\r\n\t\tname: \"Level Ball\",\r\n\t\tspritenum: 246,\r\n\t\tnum: 493,\r\n\t\tgen: 2,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tliechiberry: {\r\n\t\tname: \"Liechi Berry\",\r\n\t\tspritenum: 248,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Grass\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 4 || (pokemon.hp <= pokemon.maxhp / 2 &&\r\n\t\t\t\t\tpokemon.hasAbility('gluttony') && pokemon.abilityState.gluttony)) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.boost({atk: 1});\r\n\t\t},\r\n\t\tnum: 201,\r\n\t\tgen: 3,\r\n\t},\r\n\tlifeorb: {\r\n\t\tname: \"Life Orb\",\r\n\t\tspritenum: 249,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonModifyDamage(damage, source, target, move) {\r\n\t\t\treturn this.chainModify([5324, 4096]);\r\n\t\t},\r\n\t\tonAfterMoveSecondarySelf(source, target, move) {\r\n\t\t\tif (source && source !== target && move && move.category !== 'Status' && !source.forceSwitchFlag) {\r\n\t\t\t\tthis.damage(source.baseMaxhp / 10, source, source, this.dex.items.get('lifeorb'));\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 270,\r\n\t\tgen: 4,\r\n\t},\r\n\tlightball: {\r\n\t\tname: \"Light Ball\",\r\n\t\tspritenum: 251,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t\tstatus: 'par',\r\n\t\t},\r\n\t\tonModifyAtkPriority: 1,\r\n\t\tonModifyAtk(atk, pokemon) {\r\n\t\t\tif (pokemon.baseSpecies.baseSpecies === 'Pikachu') {\r\n\t\t\t\treturn this.chainModify(2);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonModifySpAPriority: 1,\r\n\t\tonModifySpA(spa, pokemon) {\r\n\t\t\tif (pokemon.baseSpecies.baseSpecies === 'Pikachu') {\r\n\t\t\t\treturn this.chainModify(2);\r\n\t\t\t}\r\n\t\t},\r\n\t\titemUser: [\"Pikachu\", \"Pikachu-Cosplay\", \"Pikachu-Rock-Star\", \"Pikachu-Belle\", \"Pikachu-Pop-Star\", \"Pikachu-PhD\", \"Pikachu-Libre\", \"Pikachu-Original\", \"Pikachu-Hoenn\", \"Pikachu-Sinnoh\", \"Pikachu-Unova\", \"Pikachu-Kalos\", \"Pikachu-Alola\", \"Pikachu-Partner\", \"Pikachu-Starter\", \"Pikachu-World\"],\r\n\t\tnum: 236,\r\n\t\tgen: 2,\r\n\t},\r\n\tlightclay: {\r\n\t\tname: \"Light Clay\",\r\n\t\tspritenum: 252,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\t// implemented in the corresponding thing\r\n\t\tnum: 269,\r\n\t\tgen: 4,\r\n\t},\r\n\tloadeddice: {\r\n\t\tname: \"Loaded Dice\",\r\n\t\tspritenum: 0, // TODO\r\n\t\t// partially implemented in sim/battle-actions.ts:BattleActions#hitStepMoveHitLoop\r\n\t\tonModifyMove(move) {\r\n\t\t\tif (move.multiaccuracy) {\r\n\t\t\t\tdelete move.multiaccuracy;\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 1886,\r\n\t\tgen: 9,\r\n\t},\r\n\tlopunnite: {\r\n\t\tname: \"Lopunnite\",\r\n\t\tspritenum: 626,\r\n\t\tmegaStone: \"Lopunny-Mega\",\r\n\t\tmegaEvolves: \"Lopunny\",\r\n\t\titemUser: [\"Lopunny\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 768,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tloveball: {\r\n\t\tname: \"Love Ball\",\r\n\t\tspritenum: 258,\r\n\t\tnum: 496,\r\n\t\tgen: 2,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tlovesweet: {\r\n\t\tname: \"Love Sweet\",\r\n\t\tspritenum: 705,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tnum: 1110,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tlucarionite: {\r\n\t\tname: \"Lucarionite\",\r\n\t\tspritenum: 594,\r\n\t\tmegaStone: \"Lucario-Mega\",\r\n\t\tmegaEvolves: \"Lucario\",\r\n\t\titemUser: [\"Lucario\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 673,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tluckypunch: {\r\n\t\tname: \"Lucky Punch\",\r\n\t\tspritenum: 261,\r\n\t\tfling: {\r\n\t\t\tbasePower: 40,\r\n\t\t},\r\n\t\tonModifyCritRatio(critRatio, user) {\r\n\t\t\tif (user.baseSpecies.name === 'Chansey') {\r\n\t\t\t\treturn critRatio + 2;\r\n\t\t\t}\r\n\t\t},\r\n\t\titemUser: [\"Chansey\"],\r\n\t\tnum: 256,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tlumberry: {\r\n\t\tname: \"Lum Berry\",\r\n\t\tspritenum: 262,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Flying\",\r\n\t\t},\r\n\t\tonAfterSetStatusPriority: -1,\r\n\t\tonAfterSetStatus(status, pokemon) {\r\n\t\t\tpokemon.eatItem();\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.status || pokemon.volatiles['confusion']) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tpokemon.cureStatus();\r\n\t\t\tpokemon.removeVolatile('confusion');\r\n\t\t},\r\n\t\tnum: 157,\r\n\t\tgen: 3,\r\n\t},\r\n\tluminousmoss: {\r\n\t\tname: \"Luminous Moss\",\r\n\t\tspritenum: 595,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonDamagingHit(damage, target, source, move) {\r\n\t\t\tif (move.type === 'Water') {\r\n\t\t\t\ttarget.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tboosts: {\r\n\t\t\tspd: 1,\r\n\t\t},\r\n\t\tnum: 648,\r\n\t\tgen: 6,\r\n\t},\r\n\tlunaliumz: {\r\n\t\tname: \"Lunalium Z\",\r\n\t\tspritenum: 686,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Menacing Moonraze Maelstrom\",\r\n\t\tzMoveFrom: \"Moongeist Beam\",\r\n\t\titemUser: [\"Lunala\", \"Necrozma-Dawn-Wings\"],\r\n\t\tnum: 922,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tlureball: {\r\n\t\tname: \"Lure Ball\",\r\n\t\tspritenum: 264,\r\n\t\tnum: 494,\r\n\t\tgen: 2,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tlustrousglobe: {\r\n\t\tname: \"Lustrous Globe\",\r\n\t\tspritenum: 265, // TODO\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (user.baseSpecies.num === 484 && (move.type === 'Water' || move.type === 'Dragon')) {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif (source?.baseSpecies.num === 484 || pokemon.baseSpecies.num === 484) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Palkia-Origin\",\r\n\t\titemUser: [\"Palkia-Origin\"],\r\n\t\tnum: 1778,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tlustrousorb: {\r\n\t\tname: \"Lustrous Orb\",\r\n\t\tspritenum: 265,\r\n\t\tfling: {\r\n\t\t\tbasePower: 60,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (user.baseSpecies.num === 484 && (move.type === 'Water' || move.type === 'Dragon')) {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\titemUser: [\"Palkia\"],\r\n\t\tnum: 136,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tluxuryball: {\r\n\t\tname: \"Luxury Ball\",\r\n\t\tspritenum: 266,\r\n\t\tnum: 11,\r\n\t\tgen: 3,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tlycaniumz: {\r\n\t\tname: \"Lycanium Z\",\r\n\t\tspritenum: 689,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Splintered Stormshards\",\r\n\t\tzMoveFrom: \"Stone Edge\",\r\n\t\titemUser: [\"Lycanroc\", \"Lycanroc-Midnight\", \"Lycanroc-Dusk\"],\r\n\t\tnum: 925,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmachobrace: {\r\n\t\tname: \"Macho Brace\",\r\n\t\tspritenum: 269,\r\n\t\tignoreKlutz: true,\r\n\t\tfling: {\r\n\t\t\tbasePower: 60,\r\n\t\t},\r\n\t\tonModifySpe(spe) {\r\n\t\t\treturn this.chainModify(0.5);\r\n\t\t},\r\n\t\tnum: 215,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmagmarizer: {\r\n\t\tname: \"Magmarizer\",\r\n\t\tspritenum: 272,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tnum: 323,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmagnet: {\r\n\t\tname: \"Magnet\",\r\n\t\tspritenum: 273,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Electric') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 242,\r\n\t\tgen: 2,\r\n\t},\r\n\tmagoberry: {\r\n\t\tname: \"Mago Berry\",\r\n\t\tspritenum: 274,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Ghost\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 4 || (pokemon.hp <= pokemon.maxhp / 2 &&\r\n\t\t\t\t\tpokemon.hasAbility('gluttony') && pokemon.abilityState.gluttony)) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTryEatItem(item, pokemon) {\r\n\t\t\tif (!this.runEvent('TryHeal', pokemon)) return false;\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.heal(pokemon.baseMaxhp / 3);\r\n\t\t\tif (pokemon.getNature().minus === 'spe') {\r\n\t\t\t\tpokemon.addVolatile('confusion');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 161,\r\n\t\tgen: 3,\r\n\t},\r\n\tmagostberry: {\r\n\t\tname: \"Magost Berry\",\r\n\t\tspritenum: 275,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Rock\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 176,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmail: {\r\n\t\tname: \"Mail\",\r\n\t\tspritenum: 403,\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (!this.activeMove) return false;\r\n\t\t\tif (this.activeMove.id !== 'knockoff' && this.activeMove.id !== 'thief' && this.activeMove.id !== 'covet') return false;\r\n\t\t},\r\n\t\tnum: 137,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmaliciousarmor: {\r\n\t\tname: \"Malicious Armor\",\r\n\t\tspritenum: 0, // TODO\r\n\t\tnum: 1861,\r\n\t\tgen: 9,\r\n\t},\r\n\tmanectite: {\r\n\t\tname: \"Manectite\",\r\n\t\tspritenum: 596,\r\n\t\tmegaStone: \"Manectric-Mega\",\r\n\t\tmegaEvolves: \"Manectric\",\r\n\t\titemUser: [\"Manectric\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 682,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmarangaberry: {\r\n\t\tname: \"Maranga Berry\",\r\n\t\tspritenum: 597,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Dark\",\r\n\t\t},\r\n\t\tonAfterMoveSecondary(target, source, move) {\r\n\t\t\tif (move.category === 'Special') {\r\n\t\t\t\ttarget.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.boost({spd: 1});\r\n\t\t},\r\n\t\tnum: 688,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tmarshadiumz: {\r\n\t\tname: \"Marshadium Z\",\r\n\t\tspritenum: 654,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Soul-Stealing 7-Star Strike\",\r\n\t\tzMoveFrom: \"Spectral Thief\",\r\n\t\titemUser: [\"Marshadow\"],\r\n\t\tnum: 802,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmasterball: {\r\n\t\tname: \"Master Ball\",\r\n\t\tspritenum: 276,\r\n\t\tnum: 1,\r\n\t\tgen: 1,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tmawilite: {\r\n\t\tname: \"Mawilite\",\r\n\t\tspritenum: 598,\r\n\t\tmegaStone: \"Mawile-Mega\",\r\n\t\tmegaEvolves: \"Mawile\",\r\n\t\titemUser: [\"Mawile\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 681,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmeadowplate: {\r\n\t\tname: \"Meadow Plate\",\r\n\t\tspritenum: 282,\r\n\t\tonPlate: 'Grass',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Grass') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Grass\",\r\n\t\tnum: 301,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tmedichamite: {\r\n\t\tname: \"Medichamite\",\r\n\t\tspritenum: 599,\r\n\t\tmegaStone: \"Medicham-Mega\",\r\n\t\tmegaEvolves: \"Medicham\",\r\n\t\titemUser: [\"Medicham\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 665,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmentalherb: {\r\n\t\tname: \"Mental Herb\",\r\n\t\tspritenum: 285,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t\teffect(pokemon) {\r\n\t\t\t\tconst conditions = ['attract', 'taunt', 'encore', 'torment', 'disable', 'healblock'];\r\n\t\t\t\tfor (const firstCondition of conditions) {\r\n\t\t\t\t\tif (pokemon.volatiles[firstCondition]) {\r\n\t\t\t\t\t\tfor (const secondCondition of conditions) {\r\n\t\t\t\t\t\t\tpokemon.removeVolatile(secondCondition);\r\n\t\t\t\t\t\t\tif (firstCondition === 'attract' && secondCondition === 'attract') {\r\n\t\t\t\t\t\t\t\tthis.add('-end', pokemon, 'move: Attract', '[from] item: Mental Herb');\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tconst conditions = ['attract', 'taunt', 'encore', 'torment', 'disable', 'healblock'];\r\n\t\t\tfor (const firstCondition of conditions) {\r\n\t\t\t\tif (pokemon.volatiles[firstCondition]) {\r\n\t\t\t\t\tif (!pokemon.useItem()) return;\r\n\t\t\t\t\tfor (const secondCondition of conditions) {\r\n\t\t\t\t\t\tpokemon.removeVolatile(secondCondition);\r\n\t\t\t\t\t\tif (firstCondition === 'attract' && secondCondition === 'attract') {\r\n\t\t\t\t\t\t\tthis.add('-end', pokemon, 'move: Attract', '[from] item: Mental Herb');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 219,\r\n\t\tgen: 3,\r\n\t},\r\n\tmetagrossite: {\r\n\t\tname: \"Metagrossite\",\r\n\t\tspritenum: 618,\r\n\t\tmegaStone: \"Metagross-Mega\",\r\n\t\tmegaEvolves: \"Metagross\",\r\n\t\titemUser: [\"Metagross\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 758,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmetalcoat: {\r\n\t\tname: \"Metal Coat\",\r\n\t\tspritenum: 286,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Steel') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 233,\r\n\t\tgen: 2,\r\n\t},\r\n\tmetalpowder: {\r\n\t\tname: \"Metal Powder\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 287,\r\n\t\tonModifyDefPriority: 2,\r\n\t\tonModifyDef(def, pokemon) {\r\n\t\t\tif (pokemon.species.name === 'Ditto' && !pokemon.transformed) {\r\n\t\t\t\treturn this.chainModify(2);\r\n\t\t\t}\r\n\t\t},\r\n\t\titemUser: [\"Ditto\"],\r\n\t\tnum: 257,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmetronome: {\r\n\t\tname: \"Metronome\",\r\n\t\tspritenum: 289,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonStart(pokemon) {\r\n\t\t\tpokemon.addVolatile('metronome');\r\n\t\t},\r\n\t\tcondition: {\r\n\t\t\tonStart(pokemon) {\r\n\t\t\t\tthis.effectState.lastMove = '';\r\n\t\t\t\tthis.effectState.numConsecutive = 0;\r\n\t\t\t},\r\n\t\t\tonTryMovePriority: -2,\r\n\t\t\tonTryMove(pokemon, target, move) {\r\n\t\t\t\tif (!pokemon.hasItem('metronome')) {\r\n\t\t\t\t\tpokemon.removeVolatile('metronome');\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tif (this.effectState.lastMove === move.id && pokemon.moveLastTurnResult) {\r\n\t\t\t\t\tthis.effectState.numConsecutive++;\r\n\t\t\t\t} else if (pokemon.volatiles['twoturnmove']) {\r\n\t\t\t\t\tif (this.effectState.lastMove !== move.id) {\r\n\t\t\t\t\t\tthis.effectState.numConsecutive = 1;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.effectState.numConsecutive++;\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.effectState.numConsecutive = 0;\r\n\t\t\t\t}\r\n\t\t\t\tthis.effectState.lastMove = move.id;\r\n\t\t\t},\r\n\t\t\tonModifyDamage(damage, source, target, move) {\r\n\t\t\t\tconst dmgMod = [4096, 4915, 5734, 6553, 7372, 8192];\r\n\t\t\t\tconst numConsecutive = this.effectState.numConsecutive > 5 ? 5 : this.effectState.numConsecutive;\r\n\t\t\t\tthis.debug(`Current Metronome boost: ${dmgMod[numConsecutive]}/4096`);\r\n\t\t\t\treturn this.chainModify([dmgMod[numConsecutive], 4096]);\r\n\t\t\t},\r\n\t\t},\r\n\t\tnum: 277,\r\n\t\tgen: 4,\r\n\t},\r\n\tmewniumz: {\r\n\t\tname: \"Mewnium Z\",\r\n\t\tspritenum: 658,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Genesis Supernova\",\r\n\t\tzMoveFrom: \"Psychic\",\r\n\t\titemUser: [\"Mew\"],\r\n\t\tnum: 806,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmewtwonitex: {\r\n\t\tname: \"Mewtwonite X\",\r\n\t\tspritenum: 600,\r\n\t\tmegaStone: \"Mewtwo-Mega-X\",\r\n\t\tmegaEvolves: \"Mewtwo\",\r\n\t\titemUser: [\"Mewtwo\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 662,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmewtwonitey: {\r\n\t\tname: \"Mewtwonite Y\",\r\n\t\tspritenum: 601,\r\n\t\tmegaStone: \"Mewtwo-Mega-Y\",\r\n\t\tmegaEvolves: \"Mewtwo\",\r\n\t\titemUser: [\"Mewtwo\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 663,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmicleberry: {\r\n\t\tname: \"Micle Berry\",\r\n\t\tspritenum: 290,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Rock\",\r\n\t\t},\r\n\t\tonResidual(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 4 || (pokemon.hp <= pokemon.maxhp / 2 &&\r\n\t\t\t\t\tpokemon.hasAbility('gluttony') && pokemon.abilityState.gluttony)) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tpokemon.addVolatile('micleberry');\r\n\t\t},\r\n\t\tcondition: {\r\n\t\t\tduration: 2,\r\n\t\t\tonSourceAccuracy(accuracy, target, source, move) {\r\n\t\t\t\tif (!move.ohko) {\r\n\t\t\t\t\tthis.add('-enditem', source, 'Micle Berry');\r\n\t\t\t\t\tsource.removeVolatile('micleberry');\r\n\t\t\t\t\tif (typeof accuracy === 'number') {\r\n\t\t\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t},\r\n\t\tnum: 209,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tmimikiumz: {\r\n\t\tname: \"Mimikium Z\",\r\n\t\tspritenum: 688,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Let's Snuggle Forever\",\r\n\t\tzMoveFrom: \"Play Rough\",\r\n\t\titemUser: [\"Mimikyu\", \"Mimikyu-Busted\", \"Mimikyu-Totem\", \"Mimikyu-Busted-Totem\"],\r\n\t\tnum: 924,\r\n\t\tisNonstandard: \"Past\",\r\n\t\tgen: 7,\r\n\t},\r\n\tmindplate: {\r\n\t\tname: \"Mind Plate\",\r\n\t\tspritenum: 291,\r\n\t\tonPlate: 'Psychic',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Psychic') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Psychic\",\r\n\t\tnum: 307,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tmiracleseed: {\r\n\t\tname: \"Miracle Seed\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tspritenum: 292,\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Grass') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 239,\r\n\t\tgen: 2,\r\n\t},\r\n\tmirrorherb: {\r\n\t\tname: \"Mirror Herb\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 0, // TODO\r\n\t\tonFoeAfterBoost(boost, target, source, effect) {\r\n\t\t\tif (effect?.name === 'Opportunist' || effect?.name === 'Mirror Herb') return;\r\n\t\t\tconst boostPlus: SparseBoostsTable = {};\r\n\t\t\tlet statsRaised = false;\r\n\t\t\tlet i: BoostID;\r\n\t\t\tfor (i in boost) {\r\n\t\t\t\tif (boost[i]! > 0) {\r\n\t\t\t\t\tboostPlus[i] = boost[i];\r\n\t\t\t\t\tstatsRaised = true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (!statsRaised) return;\r\n\t\t\tconst pokemon: Pokemon = this.effectState.target;\r\n\t\t\tpokemon.useItem();\r\n\t\t\tthis.boost(boostPlus, pokemon);\r\n\t\t},\r\n\t\tnum: 1883,\r\n\t\tgen: 9,\r\n\t},\r\n\tmistyseed: {\r\n\t\tname: \"Misty Seed\",\r\n\t\tspritenum: 666,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonStart(pokemon) {\r\n\t\t\tif (!pokemon.ignoringItem() && this.field.isTerrain('mistyterrain')) {\r\n\t\t\t\tpokemon.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTerrainChange(pokemon) {\r\n\t\t\tif (this.field.isTerrain('mistyterrain')) {\r\n\t\t\t\tpokemon.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tboosts: {\r\n\t\t\tspd: 1,\r\n\t\t},\r\n\t\tnum: 883,\r\n\t\tgen: 7,\r\n\t},\r\n\tmoonball: {\r\n\t\tname: \"Moon Ball\",\r\n\t\tspritenum: 294,\r\n\t\tnum: 498,\r\n\t\tgen: 2,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tmoonstone: {\r\n\t\tname: \"Moon Stone\",\r\n\t\tspritenum: 295,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 81,\r\n\t\tgen: 1,\r\n\t},\r\n\tmuscleband: {\r\n\t\tname: \"Muscle Band\",\r\n\t\tspritenum: 297,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonBasePowerPriority: 16,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.category === 'Physical') {\r\n\t\t\t\treturn this.chainModify([4505, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 266,\r\n\t\tgen: 4,\r\n\t},\r\n\tmysticwater: {\r\n\t\tname: \"Mystic Water\",\r\n\t\tspritenum: 300,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Water') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 243,\r\n\t\tgen: 2,\r\n\t},\r\n\tnanabberry: {\r\n\t\tname: \"Nanab Berry\",\r\n\t\tspritenum: 302,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Water\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 166,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tnestball: {\r\n\t\tname: \"Nest Ball\",\r\n\t\tspritenum: 303,\r\n\t\tnum: 8,\r\n\t\tgen: 3,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tnetball: {\r\n\t\tname: \"Net Ball\",\r\n\t\tspritenum: 304,\r\n\t\tnum: 6,\r\n\t\tgen: 3,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tnevermeltice: {\r\n\t\tname: \"Never-Melt Ice\",\r\n\t\tspritenum: 305,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Ice') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 246,\r\n\t\tgen: 2,\r\n\t},\r\n\tnomelberry: {\r\n\t\tname: \"Nomel Berry\",\r\n\t\tspritenum: 306,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Dragon\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 178,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tnormalgem: {\r\n\t\tname: \"Normal Gem\",\r\n\t\tspritenum: 307,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status' || move.flags['pledgecombo']) return;\r\n\t\t\tif (move.type === 'Normal' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 564,\r\n\t\tgen: 5,\r\n\t},\r\n\tnormaliumz: {\r\n\t\tname: \"Normalium Z\",\r\n\t\tspritenum: 631,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Normal\",\r\n\t\tnum: 776,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\toccaberry: {\r\n\t\tname: \"Occa Berry\",\r\n\t\tspritenum: 311,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Fire\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Fire' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 184,\r\n\t\tgen: 4,\r\n\t},\r\n\toddincense: {\r\n\t\tname: \"Odd Incense\",\r\n\t\tspritenum: 312,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Psychic') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 314,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\toldamber: {\r\n\t\tname: \"Old Amber\",\r\n\t\tspritenum: 314,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 103,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\toranberry: {\r\n\t\tname: \"Oran Berry\",\r\n\t\tspritenum: 319,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Poison\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 2) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTryEatItem(item, pokemon) {\r\n\t\t\tif (!this.runEvent('TryHeal', pokemon)) return false;\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.heal(10);\r\n\t\t},\r\n\t\tnum: 155,\r\n\t\tgen: 3,\r\n\t},\r\n\tovalstone: {\r\n\t\tname: \"Oval Stone\",\r\n\t\tspritenum: 321,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tnum: 110,\r\n\t\tgen: 4,\r\n\t},\r\n\tpamtreberry: {\r\n\t\tname: \"Pamtre Berry\",\r\n\t\tspritenum: 323,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Steel\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 180,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tparkball: {\r\n\t\tname: \"Park Ball\",\r\n\t\tspritenum: 325,\r\n\t\tnum: 500,\r\n\t\tgen: 4,\r\n\t\tisPokeball: true,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tpasshoberry: {\r\n\t\tname: \"Passho Berry\",\r\n\t\tspritenum: 329,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Water\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Water' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 185,\r\n\t\tgen: 4,\r\n\t},\r\n\tpayapaberry: {\r\n\t\tname: \"Payapa Berry\",\r\n\t\tspritenum: 330,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Psychic\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Psychic' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 193,\r\n\t\tgen: 4,\r\n\t},\r\n\tpechaberry: {\r\n\t\tname: \"Pecha Berry\",\r\n\t\tspritenum: 333,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Electric\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.status === 'psn' || pokemon.status === 'tox') {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tif (pokemon.status === 'psn' || pokemon.status === 'tox') {\r\n\t\t\t\tpokemon.cureStatus();\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 151,\r\n\t\tgen: 3,\r\n\t},\r\n\tpersimberry: {\r\n\t\tname: \"Persim Berry\",\r\n\t\tspritenum: 334,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Ground\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.volatiles['confusion']) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tpokemon.removeVolatile('confusion');\r\n\t\t},\r\n\t\tnum: 156,\r\n\t\tgen: 3,\r\n\t},\r\n\tpetayaberry: {\r\n\t\tname: \"Petaya Berry\",\r\n\t\tspritenum: 335,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Poison\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 4 || (pokemon.hp <= pokemon.maxhp / 2 &&\r\n\t\t\t\t\tpokemon.hasAbility('gluttony') && pokemon.abilityState.gluttony)) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.boost({spa: 1});\r\n\t\t},\r\n\t\tnum: 204,\r\n\t\tgen: 3,\r\n\t},\r\n\tpidgeotite: {\r\n\t\tname: \"Pidgeotite\",\r\n\t\tspritenum: 622,\r\n\t\tmegaStone: \"Pidgeot-Mega\",\r\n\t\tmegaEvolves: \"Pidgeot\",\r\n\t\titemUser: [\"Pidgeot\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 762,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tpikaniumz: {\r\n\t\tname: \"Pikanium Z\",\r\n\t\tspritenum: 649,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Catastropika\",\r\n\t\tzMoveFrom: \"Volt Tackle\",\r\n\t\titemUser: [\"Pikachu\"],\r\n\t\tnum: 794,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tpikashuniumz: {\r\n\t\tname: \"Pikashunium Z\",\r\n\t\tspritenum: 659,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"10,000,000 Volt Thunderbolt\",\r\n\t\tzMoveFrom: \"Thunderbolt\",\r\n\t\titemUser: [\"Pikachu-Original\", \"Pikachu-Hoenn\", \"Pikachu-Sinnoh\", \"Pikachu-Unova\", \"Pikachu-Kalos\", \"Pikachu-Alola\", \"Pikachu-Partner\"],\r\n\t\tnum: 836,\r\n\t\tisNonstandard: \"Past\",\r\n\t\tgen: 7,\r\n\t},\r\n\tpinapberry: {\r\n\t\tname: \"Pinap Berry\",\r\n\t\tspritenum: 337,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Grass\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 168,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tpinsirite: {\r\n\t\tname: \"Pinsirite\",\r\n\t\tspritenum: 602,\r\n\t\tmegaStone: \"Pinsir-Mega\",\r\n\t\tmegaEvolves: \"Pinsir\",\r\n\t\titemUser: [\"Pinsir\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 671,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tpixieplate: {\r\n\t\tname: \"Pixie Plate\",\r\n\t\tspritenum: 610,\r\n\t\tonPlate: 'Fairy',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move && move.type === 'Fairy') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Fairy\",\r\n\t\tnum: 644,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tplumefossil: {\r\n\t\tname: \"Plume Fossil\",\r\n\t\tspritenum: 339,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 573,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tpoisonbarb: {\r\n\t\tname: \"Poison Barb\",\r\n\t\tspritenum: 343,\r\n\t\tfling: {\r\n\t\t\tbasePower: 70,\r\n\t\t\tstatus: 'psn',\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Poison') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 245,\r\n\t\tgen: 2,\r\n\t},\r\n\tpoisongem: {\r\n\t\tname: \"Poison Gem\",\r\n\t\tspritenum: 344,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status') return;\r\n\t\t\tif (move.type === 'Poison' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 554,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tpoisonmemory: {\r\n\t\tname: \"Poison Memory\",\r\n\t\tspritenum: 670,\r\n\t\tonMemory: 'Poison',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Poison\",\r\n\t\titemUser: [\"Silvally-Poison\"],\r\n\t\tnum: 906,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tpoisoniumz: {\r\n\t\tname: \"Poisonium Z\",\r\n\t\tspritenum: 638,\r\n\t\tonPlate: 'Poison',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Poison\",\r\n\t\tforcedForme: \"Arceus-Poison\",\r\n\t\tnum: 783,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tpokeball: {\r\n\t\tname: \"Poke Ball\",\r\n\t\tspritenum: 345,\r\n\t\tnum: 4,\r\n\t\tgen: 1,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tpomegberry: {\r\n\t\tname: \"Pomeg Berry\",\r\n\t\tspritenum: 351,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Ice\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 169,\r\n\t\tgen: 3,\r\n\t},\r\n\tpoweranklet: {\r\n\t\tname: \"Power Anklet\",\r\n\t\tspritenum: 354,\r\n\t\tignoreKlutz: true,\r\n\t\tfling: {\r\n\t\t\tbasePower: 70,\r\n\t\t},\r\n\t\tonModifySpe(spe) {\r\n\t\t\treturn this.chainModify(0.5);\r\n\t\t},\r\n\t\tnum: 293,\r\n\t\tgen: 4,\r\n\t},\r\n\tpowerband: {\r\n\t\tname: \"Power Band\",\r\n\t\tspritenum: 355,\r\n\t\tignoreKlutz: true,\r\n\t\tfling: {\r\n\t\t\tbasePower: 70,\r\n\t\t},\r\n\t\tonModifySpe(spe) {\r\n\t\t\treturn this.chainModify(0.5);\r\n\t\t},\r\n\t\tnum: 292,\r\n\t\tgen: 4,\r\n\t},\r\n\tpowerbelt: {\r\n\t\tname: \"Power Belt\",\r\n\t\tspritenum: 356,\r\n\t\tignoreKlutz: true,\r\n\t\tfling: {\r\n\t\t\tbasePower: 70,\r\n\t\t},\r\n\t\tonModifySpe(spe) {\r\n\t\t\treturn this.chainModify(0.5);\r\n\t\t},\r\n\t\tnum: 290,\r\n\t\tgen: 4,\r\n\t},\r\n\tpowerbracer: {\r\n\t\tname: \"Power Bracer\",\r\n\t\tspritenum: 357,\r\n\t\tignoreKlutz: true,\r\n\t\tfling: {\r\n\t\t\tbasePower: 70,\r\n\t\t},\r\n\t\tonModifySpe(spe) {\r\n\t\t\treturn this.chainModify(0.5);\r\n\t\t},\r\n\t\tnum: 289,\r\n\t\tgen: 4,\r\n\t},\r\n\tpowerherb: {\r\n\t\tonChargeMove(pokemon, target, move) {\r\n\t\t\tif (pokemon.useItem()) {\r\n\t\t\t\tthis.debug('power herb - remove charge turn for ' + move.id);\r\n\t\t\t\tthis.attrLastMove('[still]');\r\n\t\t\t\tthis.addMove('-anim', pokemon, move.name, target);\r\n\t\t\t\treturn false; // skip charge turn\r\n\t\t\t}\r\n\t\t},\r\n\t\tname: \"Power Herb\",\r\n\t\tspritenum: 358,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tnum: 271,\r\n\t\tgen: 4,\r\n\t},\r\n\tpowerlens: {\r\n\t\tname: \"Power Lens\",\r\n\t\tspritenum: 359,\r\n\t\tignoreKlutz: true,\r\n\t\tfling: {\r\n\t\t\tbasePower: 70,\r\n\t\t},\r\n\t\tonModifySpe(spe) {\r\n\t\t\treturn this.chainModify(0.5);\r\n\t\t},\r\n\t\tnum: 291,\r\n\t\tgen: 4,\r\n\t},\r\n\tpowerweight: {\r\n\t\tname: \"Power Weight\",\r\n\t\tspritenum: 360,\r\n\t\tignoreKlutz: true,\r\n\t\tfling: {\r\n\t\t\tbasePower: 70,\r\n\t\t},\r\n\t\tonModifySpe(spe) {\r\n\t\t\treturn this.chainModify(0.5);\r\n\t\t},\r\n\t\tnum: 294,\r\n\t\tgen: 4,\r\n\t},\r\n\tpremierball: {\r\n\t\tname: \"Premier Ball\",\r\n\t\tspritenum: 363,\r\n\t\tnum: 12,\r\n\t\tgen: 3,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tprimariumz: {\r\n\t\tname: \"Primarium Z\",\r\n\t\tspritenum: 652,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Oceanic Operetta\",\r\n\t\tzMoveFrom: \"Sparkling Aria\",\r\n\t\titemUser: [\"Primarina\"],\r\n\t\tnum: 800,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tprismscale: {\r\n\t\tname: \"Prism Scale\",\r\n\t\tspritenum: 365,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 537,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tprotectivepads: {\r\n\t\tname: \"Protective Pads\",\r\n\t\tspritenum: 663,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\t// protective effect handled in Battle#checkMoveMakesContact\r\n\t\tnum: 880,\r\n\t\tgen: 7,\r\n\t},\r\n\tprotector: {\r\n\t\tname: \"Protector\",\r\n\t\tspritenum: 367,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tnum: 321,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tpsychicgem: {\r\n\t\tname: \"Psychic Gem\",\r\n\t\tspritenum: 369,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status') return;\r\n\t\t\tif (move.type === 'Psychic' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 557,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tpsychicmemory: {\r\n\t\tname: \"Psychic Memory\",\r\n\t\tspritenum: 680,\r\n\t\tonMemory: 'Psychic',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Psychic\",\r\n\t\titemUser: [\"Silvally-Psychic\"],\r\n\t\tnum: 916,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tpsychicseed: {\r\n\t\tname: \"Psychic Seed\",\r\n\t\tspritenum: 665,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonStart(pokemon) {\r\n\t\t\tif (!pokemon.ignoringItem() && this.field.isTerrain('psychicterrain')) {\r\n\t\t\t\tpokemon.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTerrainChange(pokemon) {\r\n\t\t\tif (this.field.isTerrain('psychicterrain')) {\r\n\t\t\t\tpokemon.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tboosts: {\r\n\t\t\tspd: 1,\r\n\t\t},\r\n\t\tnum: 882,\r\n\t\tgen: 7,\r\n\t},\r\n\tpsychiumz: {\r\n\t\tname: \"Psychium Z\",\r\n\t\tspritenum: 641,\r\n\t\tonPlate: 'Psychic',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Psychic\",\r\n\t\tforcedForme: \"Arceus-Psychic\",\r\n\t\tnum: 786,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tpunchingglove: {\r\n\t\tname: \"Punching Glove\",\r\n\t\tspritenum: 0, // TODO\r\n\t\tonBasePowerPriority: 23,\r\n\t\tonBasePower(basePower, attacker, defender, move) {\r\n\t\t\tif (move.flags['punch']) {\r\n\t\t\t\tthis.debug('Punching Glove boost');\r\n\t\t\t\treturn this.chainModify([4506, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonModifyMovePriority: 1,\r\n\t\tonModifyMove(move) {\r\n\t\t\tif (move.flags['punch']) delete move.flags['contact'];\r\n\t\t},\r\n\t\tnum: 1884,\r\n\t\tgen: 9,\r\n\t},\r\n\tqualotberry: {\r\n\t\tname: \"Qualot Berry\",\r\n\t\tspritenum: 371,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Poison\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 171,\r\n\t\tgen: 3,\r\n\t},\r\n\tquickball: {\r\n\t\tname: \"Quick Ball\",\r\n\t\tspritenum: 372,\r\n\t\tnum: 15,\r\n\t\tgen: 4,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tquickclaw: {\r\n\t\tonFractionalPriorityPriority: -2,\r\n\t\tonFractionalPriority(priority, pokemon) {\r\n\t\t\tif (priority <= 0 && this.randomChance(1, 5)) {\r\n\t\t\t\tthis.add('-activate', pokemon, 'item: Quick Claw');\r\n\t\t\t\treturn 0.1;\r\n\t\t\t}\r\n\t\t},\r\n\t\tname: \"Quick Claw\",\r\n\t\tspritenum: 373,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tnum: 217,\r\n\t\tgen: 2,\r\n\t},\r\n\tquickpowder: {\r\n\t\tname: \"Quick Powder\",\r\n\t\tspritenum: 374,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonModifySpe(spe, pokemon) {\r\n\t\t\tif (pokemon.species.name === 'Ditto' && !pokemon.transformed) {\r\n\t\t\t\treturn this.chainModify(2);\r\n\t\t\t}\r\n\t\t},\r\n\t\titemUser: [\"Ditto\"],\r\n\t\tnum: 274,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\trabutaberry: {\r\n\t\tname: \"Rabuta Berry\",\r\n\t\tspritenum: 375,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Ghost\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 177,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\trarebone: {\r\n\t\tname: \"Rare Bone\",\r\n\t\tspritenum: 379,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 106,\r\n\t\tgen: 4,\r\n\t},\r\n\trawstberry: {\r\n\t\tname: \"Rawst Berry\",\r\n\t\tspritenum: 381,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Grass\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.status === 'brn') {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tif (pokemon.status === 'brn') {\r\n\t\t\t\tpokemon.cureStatus();\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 152,\r\n\t\tgen: 3,\r\n\t},\r\n\trazorclaw: {\r\n\t\tname: \"Razor Claw\",\r\n\t\tspritenum: 382,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tonModifyCritRatio(critRatio) {\r\n\t\t\treturn critRatio + 1;\r\n\t\t},\r\n\t\tnum: 326,\r\n\t\tgen: 4,\r\n\t},\r\n\trazorfang: {\r\n\t\tname: \"Razor Fang\",\r\n\t\tspritenum: 383,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t\tvolatileStatus: 'flinch',\r\n\t\t},\r\n\t\tonModifyMovePriority: -1,\r\n\t\tonModifyMove(move) {\r\n\t\t\tif (move.category !== \"Status\") {\r\n\t\t\t\tif (!move.secondaries) move.secondaries = [];\r\n\t\t\t\tfor (const secondary of move.secondaries) {\r\n\t\t\t\t\tif (secondary.volatileStatus === 'flinch') return;\r\n\t\t\t\t}\r\n\t\t\t\tmove.secondaries.push({\r\n\t\t\t\t\tchance: 10,\r\n\t\t\t\t\tvolatileStatus: 'flinch',\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 327,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\trazzberry: {\r\n\t\tname: \"Razz Berry\",\r\n\t\tspritenum: 384,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Steel\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 164,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\treapercloth: {\r\n\t\tname: \"Reaper Cloth\",\r\n\t\tspritenum: 385,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tnum: 325,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tredcard: {\r\n\t\tname: \"Red Card\",\r\n\t\tspritenum: 387,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonAfterMoveSecondary(target, source, move) {\r\n\t\t\tif (source && source !== target && source.hp && target.hp && move && move.category !== 'Status') {\r\n\t\t\t\tif (!source.isActive || !this.canSwitch(source.side) || source.forceSwitchFlag || target.forceSwitchFlag) {\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\t// The item is used up even against a pokemon with Ingrain or that otherwise can't be forced out\r\n\t\t\t\tif (target.useItem(source)) {\r\n\t\t\t\t\tif (this.runEvent('DragOut', source, target, move)) {\r\n\t\t\t\t\t\tsource.forceSwitchFlag = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 542,\r\n\t\tgen: 5,\r\n\t},\r\n\tredorb: {\r\n\t\tname: \"Red Orb\",\r\n\t\tspritenum: 390,\r\n\t\tonSwitchIn(pokemon) {\r\n\t\t\tif (pokemon.isActive && pokemon.baseSpecies.name === 'Groudon') {\r\n\t\t\t\tthis.queue.insertChoice({choice: 'runPrimal', pokemon: pokemon});\r\n\t\t\t}\r\n\t\t},\r\n\t\tonPrimal(pokemon) {\r\n\t\t\tpokemon.formeChange('Groudon-Primal', this.effect, true);\r\n\t\t},\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (source.baseSpecies.baseSpecies === 'Groudon') return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\titemUser: [\"Groudon\"],\r\n\t\tnum: 534,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\trepeatball: {\r\n\t\tname: \"Repeat Ball\",\r\n\t\tspritenum: 401,\r\n\t\tnum: 9,\r\n\t\tgen: 3,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tribbonsweet: {\r\n\t\tname: \"Ribbon Sweet\",\r\n\t\tspritenum: 710,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tnum: 1115,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\trindoberry: {\r\n\t\tname: \"Rindo Berry\",\r\n\t\tspritenum: 409,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Grass\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Grass' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 187,\r\n\t\tgen: 4,\r\n\t},\r\n\tringtarget: {\r\n\t\tname: \"Ring Target\",\r\n\t\tspritenum: 410,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonNegateImmunity: false,\r\n\t\tnum: 543,\r\n\t\tgen: 5,\r\n\t},\r\n\trockgem: {\r\n\t\tname: \"Rock Gem\",\r\n\t\tspritenum: 415,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status') return;\r\n\t\t\tif (move.type === 'Rock' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 559,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\trockincense: {\r\n\t\tname: \"Rock Incense\",\r\n\t\tspritenum: 416,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Rock') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 315,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\trockmemory: {\r\n\t\tname: \"Rock Memory\",\r\n\t\tspritenum: 672,\r\n\t\tonMemory: 'Rock',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Rock\",\r\n\t\titemUser: [\"Silvally-Rock\"],\r\n\t\tnum: 908,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\trockiumz: {\r\n\t\tname: \"Rockium Z\",\r\n\t\tspritenum: 643,\r\n\t\tonPlate: 'Rock',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Rock\",\r\n\t\tforcedForme: \"Arceus-Rock\",\r\n\t\tnum: 788,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\trockyhelmet: {\r\n\t\tname: \"Rocky Helmet\",\r\n\t\tspritenum: 417,\r\n\t\tfling: {\r\n\t\t\tbasePower: 60,\r\n\t\t},\r\n\t\tonDamagingHitOrder: 2,\r\n\t\tonDamagingHit(damage, target, source, move) {\r\n\t\t\tif (this.checkMoveMakesContact(move, source, target)) {\r\n\t\t\t\tthis.damage(source.baseMaxhp / 6, source, target);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 540,\r\n\t\tgen: 5,\r\n\t},\r\n\troomservice: {\r\n\t\tname: \"Room Service\",\r\n\t\tspritenum: 717,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tonStart(pokemon) {\r\n\t\t\tif (!pokemon.ignoringItem() && this.field.getPseudoWeather('trickroom')) {\r\n\t\t\t\tpokemon.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonAnyPseudoWeatherChange() {\r\n\t\t\tconst pokemon = this.effectState.target;\r\n\t\t\tif (this.field.getPseudoWeather('trickroom')) {\r\n\t\t\t\tpokemon.useItem(pokemon);\r\n\t\t\t}\r\n\t\t},\r\n\t\tboosts: {\r\n\t\t\tspe: -1,\r\n\t\t},\r\n\t\tnum: 1122,\r\n\t\tgen: 8,\r\n\t},\r\n\trootfossil: {\r\n\t\tname: \"Root Fossil\",\r\n\t\tspritenum: 418,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 99,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\troseincense: {\r\n\t\tname: \"Rose Incense\",\r\n\t\tspritenum: 419,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Grass') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 318,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\troseliberry: {\r\n\t\tname: \"Roseli Berry\",\r\n\t\tspritenum: 603,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Fairy\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Fairy' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 686,\r\n\t\tgen: 6,\r\n\t},\r\n\trowapberry: {\r\n\t\tname: \"Rowap Berry\",\r\n\t\tspritenum: 420,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Dark\",\r\n\t\t},\r\n\t\tonDamagingHit(damage, target, source, move) {\r\n\t\t\tif (move.category === 'Special' && source.hp && source.isActive && !source.hasAbility('magicguard')) {\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.damage(source.baseMaxhp / (target.hasAbility('ripen') ? 4 : 8), source, target);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 212,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\trustedshield: {\r\n\t\tname: \"Rusted Shield\",\r\n\t\tspritenum: 699,\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 889) || pokemon.baseSpecies.num === 889) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\titemUser: [\"Zamazenta-Crowned\"],\r\n\t\tnum: 1104,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\trustedsword: {\r\n\t\tname: \"Rusted Sword\",\r\n\t\tspritenum: 698,\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 888) || pokemon.baseSpecies.num === 888) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\titemUser: [\"Zacian-Crowned\"],\r\n\t\tnum: 1103,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tsablenite: {\r\n\t\tname: \"Sablenite\",\r\n\t\tspritenum: 614,\r\n\t\tmegaStone: \"Sableye-Mega\",\r\n\t\tmegaEvolves: \"Sableye\",\r\n\t\titemUser: [\"Sableye\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 754,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tsachet: {\r\n\t\tname: \"Sachet\",\r\n\t\tspritenum: 691,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tnum: 647,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tsafariball: {\r\n\t\tname: \"Safari Ball\",\r\n\t\tspritenum: 425,\r\n\t\tnum: 5,\r\n\t\tgen: 1,\r\n\t\tisPokeball: true,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tsafetygoggles: {\r\n\t\tname: \"Safety Goggles\",\r\n\t\tspritenum: 604,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tonImmunity(type, pokemon) {\r\n\t\t\tif (type === 'sandstorm' || type === 'hail' || type === 'powder') return false;\r\n\t\t},\r\n\t\tonTryHit(pokemon, source, move) {\r\n\t\t\tif (move.flags['powder'] && pokemon !== source && this.dex.getImmunity('powder', pokemon)) {\r\n\t\t\t\tthis.add('-activate', pokemon, 'item: Safety Goggles', move.name);\r\n\t\t\t\treturn null;\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 650,\r\n\t\tgen: 6,\r\n\t},\r\n\tsailfossil: {\r\n\t\tname: \"Sail Fossil\",\r\n\t\tspritenum: 695,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 711,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tsalacberry: {\r\n\t\tname: \"Salac Berry\",\r\n\t\tspritenum: 426,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Fighting\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 4 || (pokemon.hp <= pokemon.maxhp / 2 &&\r\n\t\t\t\t\tpokemon.hasAbility('gluttony') && pokemon.abilityState.gluttony)) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.boost({spe: 1});\r\n\t\t},\r\n\t\tnum: 203,\r\n\t\tgen: 3,\r\n\t},\r\n\tsalamencite: {\r\n\t\tname: \"Salamencite\",\r\n\t\tspritenum: 627,\r\n\t\tmegaStone: \"Salamence-Mega\",\r\n\t\tmegaEvolves: \"Salamence\",\r\n\t\titemUser: [\"Salamence\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 769,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tsceptilite: {\r\n\t\tname: \"Sceptilite\",\r\n\t\tspritenum: 613,\r\n\t\tmegaStone: \"Sceptile-Mega\",\r\n\t\tmegaEvolves: \"Sceptile\",\r\n\t\titemUser: [\"Sceptile\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 753,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tscizorite: {\r\n\t\tname: \"Scizorite\",\r\n\t\tspritenum: 605,\r\n\t\tmegaStone: \"Scizor-Mega\",\r\n\t\tmegaEvolves: \"Scizor\",\r\n\t\titemUser: [\"Scizor\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 670,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tscopelens: {\r\n\t\tname: \"Scope Lens\",\r\n\t\tspritenum: 429,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonModifyCritRatio(critRatio) {\r\n\t\t\treturn critRatio + 1;\r\n\t\t},\r\n\t\tnum: 232,\r\n\t\tgen: 2,\r\n\t},\r\n\tseaincense: {\r\n\t\tname: \"Sea Incense\",\r\n\t\tspritenum: 430,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move && move.type === 'Water') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 254,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tsharpbeak: {\r\n\t\tname: \"Sharp Beak\",\r\n\t\tspritenum: 436,\r\n\t\tfling: {\r\n\t\t\tbasePower: 50,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move && move.type === 'Flying') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 244,\r\n\t\tgen: 2,\r\n\t},\r\n\tsharpedonite: {\r\n\t\tname: \"Sharpedonite\",\r\n\t\tspritenum: 619,\r\n\t\tmegaStone: \"Sharpedo-Mega\",\r\n\t\tmegaEvolves: \"Sharpedo\",\r\n\t\titemUser: [\"Sharpedo\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 759,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tshedshell: {\r\n\t\tname: \"Shed Shell\",\r\n\t\tspritenum: 437,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonTrapPokemonPriority: -10,\r\n\t\tonTrapPokemon(pokemon) {\r\n\t\t\tpokemon.trapped = pokemon.maybeTrapped = false;\r\n\t\t},\r\n\t\tnum: 295,\r\n\t\tgen: 4,\r\n\t},\r\n\tshellbell: {\r\n\t\tname: \"Shell Bell\",\r\n\t\tspritenum: 438,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonAfterMoveSecondarySelfPriority: -1,\r\n\t\tonAfterMoveSecondarySelf(pokemon, target, move) {\r\n\t\t\tif (move.totalDamage && !pokemon.forceSwitchFlag) {\r\n\t\t\t\tthis.heal(move.totalDamage / 8, pokemon);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 253,\r\n\t\tgen: 3,\r\n\t},\r\n\tshinystone: {\r\n\t\tname: \"Shiny Stone\",\r\n\t\tspritenum: 439,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tnum: 107,\r\n\t\tgen: 4,\r\n\t},\r\n\tshockdrive: {\r\n\t\tname: \"Shock Drive\",\r\n\t\tspritenum: 442,\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 649) || pokemon.baseSpecies.num === 649) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tonDrive: 'Electric',\r\n\t\tforcedForme: \"Genesect-Shock\",\r\n\t\titemUser: [\"Genesect-Shock\"],\r\n\t\tnum: 117,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tshucaberry: {\r\n\t\tname: \"Shuca Berry\",\r\n\t\tspritenum: 443,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Ground\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Ground' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 191,\r\n\t\tgen: 4,\r\n\t},\r\n\tsilkscarf: {\r\n\t\tname: \"Silk Scarf\",\r\n\t\tspritenum: 444,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Normal') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 251,\r\n\t\tgen: 3,\r\n\t},\r\n\tsilverpowder: {\r\n\t\tname: \"Silver Powder\",\r\n\t\tspritenum: 447,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Bug') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 222,\r\n\t\tgen: 2,\r\n\t},\r\n\tsitrusberry: {\r\n\t\tname: \"Sitrus Berry\",\r\n\t\tspritenum: 448,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Psychic\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 2) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTryEatItem(item, pokemon) {\r\n\t\t\tif (!this.runEvent('TryHeal', pokemon)) return false;\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.heal(pokemon.baseMaxhp / 4);\r\n\t\t},\r\n\t\tnum: 158,\r\n\t\tgen: 3,\r\n\t},\r\n\tskullfossil: {\r\n\t\tname: \"Skull Fossil\",\r\n\t\tspritenum: 449,\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tnum: 105,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tskyplate: {\r\n\t\tname: \"Sky Plate\",\r\n\t\tspritenum: 450,\r\n\t\tonPlate: 'Flying',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Flying') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Flying\",\r\n\t\tnum: 306,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tslowbronite: {\r\n\t\tname: \"Slowbronite\",\r\n\t\tspritenum: 620,\r\n\t\tmegaStone: \"Slowbro-Mega\",\r\n\t\tmegaEvolves: \"Slowbro\",\r\n\t\titemUser: [\"Slowbro\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 760,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tsmoothrock: {\r\n\t\tname: \"Smooth Rock\",\r\n\t\tspritenum: 453,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tnum: 283,\r\n\t\tgen: 4,\r\n\t},\r\n\tsnorliumz: {\r\n\t\tname: \"Snorlium Z\",\r\n\t\tspritenum: 656,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Pulverizing Pancake\",\r\n\t\tzMoveFrom: \"Giga Impact\",\r\n\t\titemUser: [\"Snorlax\"],\r\n\t\tnum: 804,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tsnowball: {\r\n\t\tname: \"Snowball\",\r\n\t\tspritenum: 606,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonDamagingHit(damage, target, source, move) {\r\n\t\t\tif (move.type === 'Ice') {\r\n\t\t\t\ttarget.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tboosts: {\r\n\t\t\tatk: 1,\r\n\t\t},\r\n\t\tnum: 649,\r\n\t\tgen: 6,\r\n\t},\r\n\tsoftsand: {\r\n\t\tname: \"Soft Sand\",\r\n\t\tspritenum: 456,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Ground') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 237,\r\n\t\tgen: 2,\r\n\t},\r\n\tsolganiumz: {\r\n\t\tname: \"Solganium Z\",\r\n\t\tspritenum: 685,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Searing Sunraze Smash\",\r\n\t\tzMoveFrom: \"Sunsteel Strike\",\r\n\t\titemUser: [\"Solgaleo\", \"Necrozma-Dusk-Mane\"],\r\n\t\tnum: 921,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tsouldew: {\r\n\t\tname: \"Soul Dew\",\r\n\t\tspritenum: 459,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (\r\n\t\t\t\tmove && (user.baseSpecies.num === 380 || user.baseSpecies.num === 381) &&\r\n\t\t\t\t(move.type === 'Psychic' || move.type === 'Dragon')\r\n\t\t\t) {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\titemUser: [\"Latios\", \"Latias\"],\r\n\t\tnum: 225,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tspelltag: {\r\n\t\tname: \"Spell Tag\",\r\n\t\tspritenum: 461,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Ghost') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 247,\r\n\t\tgen: 2,\r\n\t},\r\n\tspelonberry: {\r\n\t\tname: \"Spelon Berry\",\r\n\t\tspritenum: 462,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Dark\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 179,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tsplashplate: {\r\n\t\tname: \"Splash Plate\",\r\n\t\tspritenum: 463,\r\n\t\tonPlate: 'Water',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Water') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Water\",\r\n\t\tnum: 299,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tspookyplate: {\r\n\t\tname: \"Spooky Plate\",\r\n\t\tspritenum: 464,\r\n\t\tonPlate: 'Ghost',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Ghost') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Ghost\",\r\n\t\tnum: 310,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tsportball: {\r\n\t\tname: \"Sport Ball\",\r\n\t\tspritenum: 465,\r\n\t\tnum: 499,\r\n\t\tgen: 2,\r\n\t\tisPokeball: true,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tstarfberry: {\r\n\t\tname: \"Starf Berry\",\r\n\t\tspritenum: 472,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Psychic\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 4 || (pokemon.hp <= pokemon.maxhp / 2 &&\r\n\t\t\t\t\tpokemon.hasAbility('gluttony') && pokemon.abilityState.gluttony)) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tconst stats: BoostID[] = [];\r\n\t\t\tlet stat: BoostID;\r\n\t\t\tfor (stat in pokemon.boosts) {\r\n\t\t\t\tif (stat !== 'accuracy' && stat !== 'evasion' && pokemon.boosts[stat] < 6) {\r\n\t\t\t\t\tstats.push(stat);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (stats.length) {\r\n\t\t\t\tconst randomStat = this.sample(stats);\r\n\t\t\t\tconst boost: SparseBoostsTable = {};\r\n\t\t\t\tboost[randomStat] = 2;\r\n\t\t\t\tthis.boost(boost);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 207,\r\n\t\tgen: 3,\r\n\t},\r\n\tstarsweet: {\r\n\t\tname: \"Star Sweet\",\r\n\t\tspritenum: 709,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tnum: 1114,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tsteelixite: {\r\n\t\tname: \"Steelixite\",\r\n\t\tspritenum: 621,\r\n\t\tmegaStone: \"Steelix-Mega\",\r\n\t\tmegaEvolves: \"Steelix\",\r\n\t\titemUser: [\"Steelix\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 761,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tsteelgem: {\r\n\t\tname: \"Steel Gem\",\r\n\t\tspritenum: 473,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status') return;\r\n\t\t\tif (move.type === 'Steel' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 563,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tsteelmemory: {\r\n\t\tname: \"Steel Memory\",\r\n\t\tspritenum: 675,\r\n\t\tonMemory: 'Steel',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Steel\",\r\n\t\titemUser: [\"Silvally-Steel\"],\r\n\t\tnum: 911,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tsteeliumz: {\r\n\t\tname: \"Steelium Z\",\r\n\t\tspritenum: 647,\r\n\t\tonPlate: 'Steel',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Steel\",\r\n\t\tforcedForme: \"Arceus-Steel\",\r\n\t\tnum: 792,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tstick: {\r\n\t\tname: \"Stick\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 60,\r\n\t\t},\r\n\t\tspritenum: 475,\r\n\t\tonModifyCritRatio(critRatio, user) {\r\n\t\t\tif (this.toID(user.baseSpecies.baseSpecies) === 'farfetchd') {\r\n\t\t\t\treturn critRatio + 2;\r\n\t\t\t}\r\n\t\t},\r\n\t\titemUser: [\"Farfetch\\u2019d\"],\r\n\t\tnum: 259,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tstickybarb: {\r\n\t\tname: \"Sticky Barb\",\r\n\t\tspritenum: 476,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tonResidualOrder: 28,\r\n\t\tonResidualSubOrder: 3,\r\n\t\tonResidual(pokemon) {\r\n\t\t\tthis.damage(pokemon.baseMaxhp / 8);\r\n\t\t},\r\n\t\tonHit(target, source, move) {\r\n\t\t\tif (source && source !== target && !source.item && move && this.checkMoveMakesContact(move, source, target)) {\r\n\t\t\t\tconst barb = target.takeItem();\r\n\t\t\t\tif (!barb) return; // Gen 4 Multitype\r\n\t\t\t\tsource.setItem(barb);\r\n\t\t\t\t// no message for Sticky Barb changing hands\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 288,\r\n\t\tgen: 4,\r\n\t},\r\n\tstoneplate: {\r\n\t\tname: \"Stone Plate\",\r\n\t\tspritenum: 477,\r\n\t\tonPlate: 'Rock',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Rock') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Rock\",\r\n\t\tnum: 309,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tstrangeball: {\r\n\t\tname: \"Strange Ball\",\r\n\t\tspritenum: 303, // TODO\r\n\t\tnum: 1785,\r\n\t\tgen: 8,\r\n\t\tisPokeball: true,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tstrawberrysweet: {\r\n\t\tname: \"Strawberry Sweet\",\r\n\t\tspritenum: 704,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tnum: 1109,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tsunstone: {\r\n\t\tname: \"Sun Stone\",\r\n\t\tspritenum: 480,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 80,\r\n\t\tgen: 2,\r\n\t},\r\n\tswampertite: {\r\n\t\tname: \"Swampertite\",\r\n\t\tspritenum: 612,\r\n\t\tmegaStone: \"Swampert-Mega\",\r\n\t\tmegaEvolves: \"Swampert\",\r\n\t\titemUser: [\"Swampert\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 752,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tsweetapple: {\r\n\t\tname: \"Sweet Apple\",\r\n\t\tspritenum: 711,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 1116,\r\n\t\tgen: 8,\r\n\t},\r\n\ttamatoberry: {\r\n\t\tname: \"Tamato Berry\",\r\n\t\tspritenum: 486,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Psychic\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 174,\r\n\t\tgen: 3,\r\n\t},\r\n\ttangaberry: {\r\n\t\tname: \"Tanga Berry\",\r\n\t\tspritenum: 487,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Bug\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Bug' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 194,\r\n\t\tgen: 4,\r\n\t},\r\n\ttapuniumz: {\r\n\t\tname: \"Tapunium Z\",\r\n\t\tspritenum: 653,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Guardian of Alola\",\r\n\t\tzMoveFrom: \"Nature's Madness\",\r\n\t\titemUser: [\"Tapu Koko\", \"Tapu Lele\", \"Tapu Bulu\", \"Tapu Fini\"],\r\n\t\tnum: 801,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttartapple: {\r\n\t\tname: \"Tart Apple\",\r\n\t\tspritenum: 712,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 1117,\r\n\t\tgen: 8,\r\n\t},\r\n\tterrainextender: {\r\n\t\tname: \"Terrain Extender\",\r\n\t\tspritenum: 662,\r\n\t\tfling: {\r\n\t\t\tbasePower: 60,\r\n\t\t},\r\n\t\tnum: 879,\r\n\t\tgen: 7,\r\n\t},\r\n\tthickclub: {\r\n\t\tname: \"Thick Club\",\r\n\t\tspritenum: 491,\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tonModifyAtkPriority: 1,\r\n\t\tonModifyAtk(atk, pokemon) {\r\n\t\t\tif (pokemon.baseSpecies.baseSpecies === 'Cubone' || pokemon.baseSpecies.baseSpecies === 'Marowak') {\r\n\t\t\t\treturn this.chainModify(2);\r\n\t\t\t}\r\n\t\t},\r\n\t\titemUser: [\"Marowak\", \"Marowak-Alola\", \"Marowak-Alola-Totem\", \"Cubone\"],\r\n\t\tnum: 258,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tthroatspray: {\r\n\t\tname: \"Throat Spray\",\r\n\t\tspritenum: 713,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonAfterMoveSecondarySelf(target, source, move) {\r\n\t\t\tif (move.flags['sound']) {\r\n\t\t\t\ttarget.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tboosts: {\r\n\t\t\tspa: 1,\r\n\t\t},\r\n\t\tnum: 1118,\r\n\t\tgen: 8,\r\n\t},\r\n\tthunderstone: {\r\n\t\tname: \"Thunder Stone\",\r\n\t\tspritenum: 492,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 83,\r\n\t\tgen: 1,\r\n\t},\r\n\ttimerball: {\r\n\t\tname: \"Timer Ball\",\r\n\t\tspritenum: 494,\r\n\t\tnum: 10,\r\n\t\tgen: 3,\r\n\t\tisPokeball: true,\r\n\t},\r\n\ttoxicorb: {\r\n\t\tname: \"Toxic Orb\",\r\n\t\tspritenum: 515,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t\tstatus: 'tox',\r\n\t\t},\r\n\t\tonResidualOrder: 28,\r\n\t\tonResidualSubOrder: 3,\r\n\t\tonResidual(pokemon) {\r\n\t\t\tpokemon.trySetStatus('tox', pokemon);\r\n\t\t},\r\n\t\tnum: 272,\r\n\t\tgen: 4,\r\n\t},\r\n\ttoxicplate: {\r\n\t\tname: \"Toxic Plate\",\r\n\t\tspritenum: 516,\r\n\t\tonPlate: 'Poison',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Poison') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Poison\",\r\n\t\tnum: 304,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\ttr00: {\r\n\t\tname: \"TR00\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 721,\r\n\t\tnum: 1130,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr01: {\r\n\t\tname: \"TR01\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 85,\r\n\t\t},\r\n\t\tspritenum: 721,\r\n\t\tnum: 1131,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr02: {\r\n\t\tname: \"TR02\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 730,\r\n\t\tnum: 1132,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr03: {\r\n\t\tname: \"TR03\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 110,\r\n\t\t},\r\n\t\tspritenum: 731,\r\n\t\tnum: 1133,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr04: {\r\n\t\tname: \"TR04\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 731,\r\n\t\tnum: 1134,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr05: {\r\n\t\tname: \"TR05\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 735,\r\n\t\tnum: 1135,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr06: {\r\n\t\tname: \"TR06\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 110,\r\n\t\t},\r\n\t\tspritenum: 735,\r\n\t\tnum: 1136,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr07: {\r\n\t\tname: \"TR07\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 722,\r\n\t\tnum: 1137,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr08: {\r\n\t\tname: \"TR08\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 733,\r\n\t\tnum: 1138,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr09: {\r\n\t\tname: \"TR09\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 110,\r\n\t\t},\r\n\t\tspritenum: 733,\r\n\t\tnum: 1139,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr10: {\r\n\t\tname: \"TR10\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tspritenum: 725,\r\n\t\tnum: 1140,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr11: {\r\n\t\tname: \"TR11\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 734,\r\n\t\tnum: 1141,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr12: {\r\n\t\tname: \"TR12\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 734,\r\n\t\tnum: 1142,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr13: {\r\n\t\tname: \"TR13\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 721,\r\n\t\tnum: 1143,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr14: {\r\n\t\tname: \"TR14\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 721,\r\n\t\tnum: 1144,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr15: {\r\n\t\tname: \"TR15\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 110,\r\n\t\t},\r\n\t\tspritenum: 730,\r\n\t\tnum: 1145,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr16: {\r\n\t\tname: \"TR16\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 731,\r\n\t\tnum: 1146,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr17: {\r\n\t\tname: \"TR17\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 734,\r\n\t\tnum: 1147,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr18: {\r\n\t\tname: \"TR18\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 727,\r\n\t\tnum: 1148,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr19: {\r\n\t\tname: \"TR19\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 721,\r\n\t\tnum: 1149,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr20: {\r\n\t\tname: \"TR20\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 721,\r\n\t\tnum: 1150,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr21: {\r\n\t\tname: \"TR21\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 722,\r\n\t\tnum: 1151,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr22: {\r\n\t\tname: \"TR22\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 724,\r\n\t\tnum: 1152,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr23: {\r\n\t\tname: \"TR23\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 725,\r\n\t\tnum: 1153,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr24: {\r\n\t\tname: \"TR24\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 120,\r\n\t\t},\r\n\t\tspritenum: 736,\r\n\t\tnum: 1154,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr25: {\r\n\t\tname: \"TR25\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 734,\r\n\t\tnum: 1155,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr26: {\r\n\t\tname: \"TR26\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 721,\r\n\t\tnum: 1156,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr27: {\r\n\t\tname: \"TR27\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 721,\r\n\t\tnum: 1157,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr28: {\r\n\t\tname: \"TR28\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 120,\r\n\t\t},\r\n\t\tspritenum: 727,\r\n\t\tnum: 1158,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr29: {\r\n\t\tname: \"TR29\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 721,\r\n\t\tnum: 1159,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr30: {\r\n\t\tname: \"TR30\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 721,\r\n\t\tnum: 1160,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr31: {\r\n\t\tname: \"TR31\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tspritenum: 729,\r\n\t\tnum: 1161,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr32: {\r\n\t\tname: \"TR32\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 737,\r\n\t\tnum: 1162,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr33: {\r\n\t\tname: \"TR33\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 728,\r\n\t\tnum: 1163,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr34: {\r\n\t\tname: \"TR34\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 120,\r\n\t\t},\r\n\t\tspritenum: 734,\r\n\t\tnum: 1164,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr35: {\r\n\t\tname: \"TR35\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 721,\r\n\t\tnum: 1165,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr36: {\r\n\t\tname: \"TR36\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 95,\r\n\t\t},\r\n\t\tspritenum: 730,\r\n\t\tnum: 1166,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr37: {\r\n\t\tname: \"TR37\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 737,\r\n\t\tnum: 1167,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr38: {\r\n\t\tname: \"TR38\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 734,\r\n\t\tnum: 1168,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr39: {\r\n\t\tname: \"TR39\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 120,\r\n\t\t},\r\n\t\tspritenum: 722,\r\n\t\tnum: 1169,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr40: {\r\n\t\tname: \"TR40\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 734,\r\n\t\tnum: 1170,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr41: {\r\n\t\tname: \"TR41\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 85,\r\n\t\t},\r\n\t\tspritenum: 730,\r\n\t\tnum: 1171,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr42: {\r\n\t\tname: \"TR42\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 721,\r\n\t\tnum: 1172,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr43: {\r\n\t\tname: \"TR43\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 130,\r\n\t\t},\r\n\t\tspritenum: 730,\r\n\t\tnum: 1173,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr44: {\r\n\t\tname: \"TR44\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 734,\r\n\t\tnum: 1174,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr45: {\r\n\t\tname: \"TR45\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 731,\r\n\t\tnum: 1175,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr46: {\r\n\t\tname: \"TR46\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 729,\r\n\t\tnum: 1176,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr47: {\r\n\t\tname: \"TR47\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 736,\r\n\t\tnum: 1177,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr48: {\r\n\t\tname: \"TR48\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 722,\r\n\t\tnum: 1178,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr49: {\r\n\t\tname: \"TR49\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 734,\r\n\t\tnum: 1179,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr50: {\r\n\t\tname: \"TR50\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 732,\r\n\t\tnum: 1180,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr51: {\r\n\t\tname: \"TR51\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 736,\r\n\t\tnum: 1181,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr52: {\r\n\t\tname: \"TR52\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 729,\r\n\t\tnum: 1182,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr53: {\r\n\t\tname: \"TR53\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 120,\r\n\t\t},\r\n\t\tspritenum: 722,\r\n\t\tnum: 1183,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr54: {\r\n\t\tname: \"TR54\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 724,\r\n\t\tnum: 1184,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr55: {\r\n\t\tname: \"TR55\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 120,\r\n\t\t},\r\n\t\tspritenum: 730,\r\n\t\tnum: 1185,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr56: {\r\n\t\tname: \"TR56\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 722,\r\n\t\tnum: 1186,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr57: {\r\n\t\tname: \"TR57\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 724,\r\n\t\tnum: 1187,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr58: {\r\n\t\tname: \"TR58\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 737,\r\n\t\tnum: 1188,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr59: {\r\n\t\tname: \"TR59\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 732,\r\n\t\tnum: 1189,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr60: {\r\n\t\tname: \"TR60\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 727,\r\n\t\tnum: 1190,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr61: {\r\n\t\tname: \"TR61\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 727,\r\n\t\tnum: 1191,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr62: {\r\n\t\tname: \"TR62\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 85,\r\n\t\t},\r\n\t\tspritenum: 736,\r\n\t\tnum: 1192,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr63: {\r\n\t\tname: \"TR63\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 726,\r\n\t\tnum: 1193,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr64: {\r\n\t\tname: \"TR64\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 120,\r\n\t\t},\r\n\t\tspritenum: 722,\r\n\t\tnum: 1194,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr65: {\r\n\t\tname: \"TR65\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 732,\r\n\t\tnum: 1195,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr66: {\r\n\t\tname: \"TR66\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 120,\r\n\t\t},\r\n\t\tspritenum: 723,\r\n\t\tnum: 1196,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr67: {\r\n\t\tname: \"TR67\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 725,\r\n\t\tnum: 1197,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr68: {\r\n\t\tname: \"TR68\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 737,\r\n\t\tnum: 1198,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr69: {\r\n\t\tname: \"TR69\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 734,\r\n\t\tnum: 1199,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr70: {\r\n\t\tname: \"TR70\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 729,\r\n\t\tnum: 1200,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr71: {\r\n\t\tname: \"TR71\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 130,\r\n\t\t},\r\n\t\tspritenum: 732,\r\n\t\tnum: 1201,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr72: {\r\n\t\tname: \"TR72\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 120,\r\n\t\t},\r\n\t\tspritenum: 732,\r\n\t\tnum: 1202,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr73: {\r\n\t\tname: \"TR73\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 120,\r\n\t\t},\r\n\t\tspritenum: 724,\r\n\t\tnum: 1203,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr74: {\r\n\t\tname: \"TR74\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 729,\r\n\t\tnum: 1204,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr75: {\r\n\t\tname: \"TR75\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 100,\r\n\t\t},\r\n\t\tspritenum: 726,\r\n\t\tnum: 1205,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr76: {\r\n\t\tname: \"TR76\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 726,\r\n\t\tnum: 1206,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr77: {\r\n\t\tname: \"TR77\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 732,\r\n\t\tnum: 1207,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr78: {\r\n\t\tname: \"TR78\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 95,\r\n\t\t},\r\n\t\tspritenum: 724,\r\n\t\tnum: 1208,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr79: {\r\n\t\tname: \"TR79\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 729,\r\n\t\tnum: 1209,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr80: {\r\n\t\tname: \"TR80\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 733,\r\n\t\tnum: 1210,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr81: {\r\n\t\tname: \"TR81\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 95,\r\n\t\t},\r\n\t\tspritenum: 737,\r\n\t\tnum: 1211,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr82: {\r\n\t\tname: \"TR82\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 20,\r\n\t\t},\r\n\t\tspritenum: 734,\r\n\t\tnum: 1212,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr83: {\r\n\t\tname: \"TR83\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 734,\r\n\t\tnum: 1213,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr84: {\r\n\t\tname: \"TR84\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 731,\r\n\t\tnum: 1214,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr85: {\r\n\t\tname: \"TR85\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 721,\r\n\t\tnum: 1215,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr86: {\r\n\t\tname: \"TR86\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 733,\r\n\t\tnum: 1216,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr87: {\r\n\t\tname: \"TR87\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 725,\r\n\t\tnum: 1217,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr88: {\r\n\t\tname: \"TR88\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 730,\r\n\t\tnum: 1218,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr89: {\r\n\t\tname: \"TR89\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 110,\r\n\t\t},\r\n\t\tspritenum: 723,\r\n\t\tnum: 1219,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr90: {\r\n\t\tname: \"TR90\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 738,\r\n\t\tnum: 1220,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr91: {\r\n\t\tname: \"TR91\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tspritenum: 724,\r\n\t\tnum: 1221,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr92: {\r\n\t\tname: \"TR92\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 738,\r\n\t\tnum: 1222,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr93: {\r\n\t\tname: \"TR93\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 85,\r\n\t\t},\r\n\t\tspritenum: 737,\r\n\t\tnum: 1223,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr94: {\r\n\t\tname: \"TR94\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 95,\r\n\t\t},\r\n\t\tspritenum: 725,\r\n\t\tnum: 1224,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr95: {\r\n\t\tname: \"TR95\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 737,\r\n\t\tnum: 1225,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr96: {\r\n\t\tname: \"TR96\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 90,\r\n\t\t},\r\n\t\tspritenum: 727,\r\n\t\tnum: 1226,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr97: {\r\n\t\tname: \"TR97\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 85,\r\n\t\t},\r\n\t\tspritenum: 734,\r\n\t\tnum: 1227,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr98: {\r\n\t\tname: \"TR98\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 85,\r\n\t\t},\r\n\t\tspritenum: 731,\r\n\t\tnum: 1228,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttr99: {\r\n\t\tname: \"TR99\",\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tspritenum: 722,\r\n\t\tnum: 1229,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ttwistedspoon: {\r\n\t\tname: \"Twisted Spoon\",\r\n\t\tspritenum: 520,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Psychic') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 248,\r\n\t\tgen: 2,\r\n\t},\r\n\ttyranitarite: {\r\n\t\tname: \"Tyranitarite\",\r\n\t\tspritenum: 607,\r\n\t\tmegaStone: \"Tyranitar-Mega\",\r\n\t\tmegaEvolves: \"Tyranitar\",\r\n\t\titemUser: [\"Tyranitar\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 669,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tultraball: {\r\n\t\tname: \"Ultra Ball\",\r\n\t\tspritenum: 521,\r\n\t\tnum: 2,\r\n\t\tgen: 1,\r\n\t\tisPokeball: true,\r\n\t},\r\n\tultranecroziumz: {\r\n\t\tname: \"Ultranecrozium Z\",\r\n\t\tspritenum: 687,\r\n\t\tonTakeItem: false,\r\n\t\tzMove: \"Light That Burns the Sky\",\r\n\t\tzMoveFrom: \"Photon Geyser\",\r\n\t\titemUser: [\"Necrozma-Ultra\"],\r\n\t\tnum: 923,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tupgrade: {\r\n\t\tname: \"Up-Grade\",\r\n\t\tspritenum: 523,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 252,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tutilityumbrella: {\r\n\t\tname: \"Utility Umbrella\",\r\n\t\tspritenum: 718,\r\n\t\tfling: {\r\n\t\t\tbasePower: 60,\r\n\t\t},\r\n\t\t// Partially implemented in Pokemon.effectiveWeather() in sim/pokemon.ts\r\n\t\tonStart(pokemon) {\r\n\t\t\tif (!pokemon.ignoringItem()) return;\r\n\t\t\tif (['sunnyday', 'raindance', 'desolateland', 'primordialsea'].includes(this.field.effectiveWeather())) {\r\n\t\t\t\tthis.runEvent('WeatherChange', pokemon, pokemon, this.effect);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (!this.effectState.inactive) return;\r\n\t\t\tthis.effectState.inactive = false;\r\n\t\t\tif (['sunnyday', 'raindance', 'desolateland', 'primordialsea'].includes(this.field.effectiveWeather())) {\r\n\t\t\t\tthis.runEvent('WeatherChange', pokemon, pokemon, this.effect);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEnd(pokemon) {\r\n\t\t\tif (['sunnyday', 'raindance', 'desolateland', 'primordialsea'].includes(this.field.effectiveWeather())) {\r\n\t\t\t\tthis.runEvent('WeatherChange', pokemon, pokemon, this.effect);\r\n\t\t\t}\r\n\t\t\tthis.effectState.inactive = true;\r\n\t\t},\r\n\t\tnum: 1123,\r\n\t\tgen: 8,\r\n\t},\r\n\tvenusaurite: {\r\n\t\tname: \"Venusaurite\",\r\n\t\tspritenum: 608,\r\n\t\tmegaStone: \"Venusaur-Mega\",\r\n\t\tmegaEvolves: \"Venusaur\",\r\n\t\titemUser: [\"Venusaur\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: 659,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\twacanberry: {\r\n\t\tname: \"Wacan Berry\",\r\n\t\tspritenum: 526,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Electric\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Electric' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 186,\r\n\t\tgen: 4,\r\n\t},\r\n\twatergem: {\r\n\t\tname: \"Water Gem\",\r\n\t\tspritenum: 528,\r\n\t\tisGem: true,\r\n\t\tonSourceTryPrimaryHit(target, source, move) {\r\n\t\t\tif (target === source || move.category === 'Status' || move.flags['pledgecombo']) return;\r\n\t\t\tif (move.type === 'Water' && source.useItem()) {\r\n\t\t\t\tsource.addVolatile('gem');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 549,\r\n\t\tgen: 5,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\twatermemory: {\r\n\t\tname: \"Water Memory\",\r\n\t\tspritenum: 677,\r\n\t\tonMemory: 'Water',\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 773) || pokemon.baseSpecies.num === 773) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Silvally-Water\",\r\n\t\titemUser: [\"Silvally-Water\"],\r\n\t\tnum: 913,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\twaterstone: {\r\n\t\tname: \"Water Stone\",\r\n\t\tspritenum: 529,\r\n\t\tfling: {\r\n\t\t\tbasePower: 30,\r\n\t\t},\r\n\t\tnum: 84,\r\n\t\tgen: 1,\r\n\t},\r\n\twateriumz: {\r\n\t\tname: \"Waterium Z\",\r\n\t\tspritenum: 633,\r\n\t\tonPlate: 'Water',\r\n\t\tonTakeItem: false,\r\n\t\tzMove: true,\r\n\t\tzMoveType: \"Water\",\r\n\t\tforcedForme: \"Arceus-Water\",\r\n\t\tnum: 778,\r\n\t\tgen: 7,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\twatmelberry: {\r\n\t\tname: \"Watmel Berry\",\r\n\t\tspritenum: 530,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 100,\r\n\t\t\ttype: \"Fire\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 181,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\twaveincense: {\r\n\t\tname: \"Wave Incense\",\r\n\t\tspritenum: 531,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Water') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 317,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tweaknesspolicy: {\r\n\t\tname: \"Weakness Policy\",\r\n\t\tspritenum: 609,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tonDamagingHit(damage, target, source, move) {\r\n\t\t\tif (!move.damage && !move.damageCallback && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\ttarget.useItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tboosts: {\r\n\t\t\tatk: 2,\r\n\t\t\tspa: 2,\r\n\t\t},\r\n\t\tnum: 639,\r\n\t\tgen: 6,\r\n\t},\r\n\twepearberry: {\r\n\t\tname: \"Wepear Berry\",\r\n\t\tspritenum: 533,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 90,\r\n\t\t\ttype: \"Electric\",\r\n\t\t},\r\n\t\tonEat: false,\r\n\t\tnum: 167,\r\n\t\tgen: 3,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\twhippeddream: {\r\n\t\tname: \"Whipped Dream\",\r\n\t\tspritenum: 692,\r\n\t\tfling: {\r\n\t\t\tbasePower: 80,\r\n\t\t},\r\n\t\tnum: 646,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\twhiteherb: {\r\n\t\tname: \"White Herb\",\r\n\t\tspritenum: 535,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t\teffect(pokemon) {\r\n\t\t\t\tlet activate = false;\r\n\t\t\t\tconst boosts: SparseBoostsTable = {};\r\n\t\t\t\tlet i: BoostID;\r\n\t\t\t\tfor (i in pokemon.boosts) {\r\n\t\t\t\t\tif (pokemon.boosts[i] < 0) {\r\n\t\t\t\t\t\tactivate = true;\r\n\t\t\t\t\t\tboosts[i] = 0;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tif (activate) {\r\n\t\t\t\t\tpokemon.setBoost(boosts);\r\n\t\t\t\t\tthis.add('-clearnegativeboost', pokemon, '[silent]');\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tlet activate = false;\r\n\t\t\tconst boosts: SparseBoostsTable = {};\r\n\t\t\tlet i: BoostID;\r\n\t\t\tfor (i in pokemon.boosts) {\r\n\t\t\t\tif (pokemon.boosts[i] < 0) {\r\n\t\t\t\t\tactivate = true;\r\n\t\t\t\t\tboosts[i] = 0;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (activate && pokemon.useItem()) {\r\n\t\t\t\tpokemon.setBoost(boosts);\r\n\t\t\t\tthis.add('-clearnegativeboost', pokemon, '[silent]');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 214,\r\n\t\tgen: 3,\r\n\t},\r\n\twidelens: {\r\n\t\tname: \"Wide Lens\",\r\n\t\tspritenum: 537,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonSourceModifyAccuracyPriority: -2,\r\n\t\tonSourceModifyAccuracy(accuracy) {\r\n\t\t\tif (typeof accuracy === 'number') {\r\n\t\t\t\treturn this.chainModify([4505, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 265,\r\n\t\tgen: 4,\r\n\t},\r\n\twikiberry: {\r\n\t\tname: \"Wiki Berry\",\r\n\t\tspritenum: 538,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Rock\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 4 || (pokemon.hp <= pokemon.maxhp / 2 &&\r\n\t\t\t\t\tpokemon.hasAbility('gluttony') && pokemon.abilityState.gluttony)) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTryEatItem(item, pokemon) {\r\n\t\t\tif (!this.runEvent('TryHeal', pokemon)) return false;\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.heal(pokemon.baseMaxhp / 3);\r\n\t\t\tif (pokemon.getNature().minus === 'spa') {\r\n\t\t\t\tpokemon.addVolatile('confusion');\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 160,\r\n\t\tgen: 3,\r\n\t},\r\n\twiseglasses: {\r\n\t\tname: \"Wise Glasses\",\r\n\t\tspritenum: 539,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonBasePowerPriority: 16,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.category === 'Special') {\r\n\t\t\t\treturn this.chainModify([4505, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 267,\r\n\t\tgen: 4,\r\n\t},\r\n\tyacheberry: {\r\n\t\tname: \"Yache Berry\",\r\n\t\tspritenum: 567,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Ice\",\r\n\t\t},\r\n\t\tonSourceModifyDamage(damage, source, target, move) {\r\n\t\t\tif (move.type === 'Ice' && target.getMoveHitData(move).typeMod > 0) {\r\n\t\t\t\tconst hitSub = target.volatiles['substitute'] && !move.flags['bypasssub'] && !(move.infiltrates && this.gen >= 6);\r\n\t\t\t\tif (hitSub) return;\r\n\r\n\t\t\t\tif (target.eatItem()) {\r\n\t\t\t\t\tthis.debug('-50% reduction');\r\n\t\t\t\t\tthis.add('-enditem', target, this.effect, '[weaken]');\r\n\t\t\t\t\treturn this.chainModify(0.5);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat() { },\r\n\t\tnum: 188,\r\n\t\tgen: 4,\r\n\t},\r\n\tzapplate: {\r\n\t\tname: \"Zap Plate\",\r\n\t\tspritenum: 572,\r\n\t\tonPlate: 'Electric',\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Electric') {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif ((source && source.baseSpecies.num === 493) || pokemon.baseSpecies.num === 493) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Arceus-Electric\",\r\n\t\tnum: 300,\r\n\t\tgen: 4,\r\n\t\tisNonstandard: \"Unobtainable\",\r\n\t},\r\n\tzoomlens: {\r\n\t\tname: \"Zoom Lens\",\r\n\t\tspritenum: 574,\r\n\t\tfling: {\r\n\t\t\tbasePower: 10,\r\n\t\t},\r\n\t\tonSourceModifyAccuracyPriority: -2,\r\n\t\tonSourceModifyAccuracy(accuracy, target) {\r\n\t\t\tif (typeof accuracy === 'number' && !this.queue.willMove(target)) {\r\n\t\t\t\tthis.debug('Zoom Lens boosting accuracy');\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 276,\r\n\t\tgen: 4,\r\n\t},\r\n\r\n\t// Gen 2 items\r\n\r\n\tberserkgene: {\r\n\t\tname: \"Berserk Gene\",\r\n\t\tspritenum: 388,\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.useItem()) {\r\n\t\t\t\tpokemon.addVolatile('confusion');\r\n\t\t\t}\r\n\t\t},\r\n\t\tboosts: {\r\n\t\t\tatk: 2,\r\n\t\t},\r\n\t\tnum: 0,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tberry: {\r\n\t\tname: \"Berry\",\r\n\t\tspritenum: 319,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Poison\",\r\n\t\t},\r\n\t\tonResidualOrder: 5,\r\n\t\tonResidual(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 2) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTryEatItem(item, pokemon) {\r\n\t\t\tif (!this.runEvent('TryHeal', pokemon)) return false;\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.heal(10);\r\n\t\t},\r\n\t\tnum: 155,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tbitterberry: {\r\n\t\tname: \"Bitter Berry\",\r\n\t\tspritenum: 334,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Ground\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.volatiles['confusion']) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tpokemon.removeVolatile('confusion');\r\n\t\t},\r\n\t\tnum: 156,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tburntberry: {\r\n\t\tname: \"Burnt Berry\",\r\n\t\tspritenum: 13,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Ice\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.status === 'frz') {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tif (pokemon.status === 'frz') {\r\n\t\t\t\tpokemon.cureStatus();\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 153,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tgoldberry: {\r\n\t\tname: \"Gold Berry\",\r\n\t\tspritenum: 448,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Psychic\",\r\n\t\t},\r\n\t\tonResidualOrder: 5,\r\n\t\tonResidual(pokemon) {\r\n\t\t\tif (pokemon.hp <= pokemon.maxhp / 2) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTryEatItem(item, pokemon) {\r\n\t\t\tif (!this.runEvent('TryHeal', pokemon)) return false;\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tthis.heal(30);\r\n\t\t},\r\n\t\tnum: 158,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\ticeberry: {\r\n\t\tname: \"Ice Berry\",\r\n\t\tspritenum: 381,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Grass\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.status === 'brn') {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tif (pokemon.status === 'brn') {\r\n\t\t\t\tpokemon.cureStatus();\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 152,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmintberry: {\r\n\t\tname: \"Mint Berry\",\r\n\t\tspritenum: 65,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Water\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.status === 'slp') {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tif (pokemon.status === 'slp') {\r\n\t\t\t\tpokemon.cureStatus();\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 150,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmiracleberry: {\r\n\t\tname: \"Miracle Berry\",\r\n\t\tspritenum: 262,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Flying\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.status || pokemon.volatiles['confusion']) {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tpokemon.cureStatus();\r\n\t\t\tpokemon.removeVolatile('confusion');\r\n\t\t},\r\n\t\tnum: 157,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tmysteryberry: {\r\n\t\tname: \"Mystery Berry\",\r\n\t\tspritenum: 244,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Fighting\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (!pokemon.hp) return;\r\n\t\t\tconst moveSlot = pokemon.lastMove && pokemon.getMoveData(pokemon.lastMove.id);\r\n\t\t\tif (moveSlot && moveSlot.pp === 0) {\r\n\t\t\t\tpokemon.addVolatile('leppaberry');\r\n\t\t\t\tpokemon.volatiles['leppaberry'].moveSlot = moveSlot;\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tlet moveSlot;\r\n\t\t\tif (pokemon.volatiles['leppaberry']) {\r\n\t\t\t\tmoveSlot = pokemon.volatiles['leppaberry'].moveSlot;\r\n\t\t\t\tpokemon.removeVolatile('leppaberry');\r\n\t\t\t} else {\r\n\t\t\t\tlet pp = 99;\r\n\t\t\t\tfor (const possibleMoveSlot of pokemon.moveSlots) {\r\n\t\t\t\t\tif (possibleMoveSlot.pp < pp) {\r\n\t\t\t\t\t\tmoveSlot = possibleMoveSlot;\r\n\t\t\t\t\t\tpp = moveSlot.pp;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tmoveSlot.pp += 5;\r\n\t\t\tif (moveSlot.pp > moveSlot.maxpp) moveSlot.pp = moveSlot.maxpp;\r\n\t\t\tthis.add('-activate', pokemon, 'item: Mystery Berry', moveSlot.move);\r\n\t\t},\r\n\t\tnum: 154,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tpinkbow: {\r\n\t\tname: \"Pink Bow\",\r\n\t\tspritenum: 444,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Normal') {\r\n\t\t\t\treturn basePower * 1.1;\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 251,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tpolkadotbow: {\r\n\t\tname: \"Polkadot Bow\",\r\n\t\tspritenum: 444,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (move.type === 'Normal') {\r\n\t\t\t\treturn basePower * 1.1;\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 251,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tprzcureberry: {\r\n\t\tname: \"PRZ Cure Berry\",\r\n\t\tspritenum: 63,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Fire\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.status === 'par') {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tif (pokemon.status === 'par') {\r\n\t\t\t\tpokemon.cureStatus();\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 149,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\tpsncureberry: {\r\n\t\tname: \"PSN Cure Berry\",\r\n\t\tspritenum: 333,\r\n\t\tisBerry: true,\r\n\t\tnaturalGift: {\r\n\t\t\tbasePower: 80,\r\n\t\t\ttype: \"Electric\",\r\n\t\t},\r\n\t\tonUpdate(pokemon) {\r\n\t\t\tif (pokemon.status === 'psn' || pokemon.status === 'tox') {\r\n\t\t\t\tpokemon.eatItem();\r\n\t\t\t}\r\n\t\t},\r\n\t\tonEat(pokemon) {\r\n\t\t\tif (pokemon.status === 'psn' || pokemon.status === 'tox') {\r\n\t\t\t\tpokemon.cureStatus();\r\n\t\t\t}\r\n\t\t},\r\n\t\tnum: 151,\r\n\t\tgen: 2,\r\n\t\tisNonstandard: \"Past\",\r\n\t},\r\n\r\n\t// CAP items\r\n\r\n\tcrucibellite: {\r\n\t\tname: \"Crucibellite\",\r\n\t\tspritenum: 577,\r\n\t\tmegaStone: \"Crucibelle-Mega\",\r\n\t\tmegaEvolves: \"Crucibelle\",\r\n\t\titemUser: [\"Crucibelle\"],\r\n\t\tonTakeItem(item, source) {\r\n\t\t\tif (item.megaEvolves === source.baseSpecies.baseSpecies) return false;\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tnum: -1,\r\n\t\tgen: 6,\r\n\t\tisNonstandard: \"CAP\",\r\n\t},\r\n\tvilevial: {\r\n\t\tname: \"Vile Vial\",\r\n\t\tspritenum: 752,\r\n\t\tfling: {\r\n\t\t\tbasePower: 60,\r\n\t\t},\r\n\t\tonBasePowerPriority: 15,\r\n\t\tonBasePower(basePower, user, target, move) {\r\n\t\t\tif (user.baseSpecies.num === -66 && ['Poison', 'Flying'].includes(move.type)) {\r\n\t\t\t\treturn this.chainModify([4915, 4096]);\r\n\t\t\t}\r\n\t\t},\r\n\t\tonTakeItem(item, pokemon, source) {\r\n\t\t\tif (source?.baseSpecies.num === -66 || pokemon.baseSpecies.num === -66) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\treturn true;\r\n\t\t},\r\n\t\tforcedForme: \"Venomicon-Epilogue\",\r\n\t\titemUser: [\"Venomicon-Epilogue\"],\r\n\t\tnum: -2,\r\n\t\tgen: 8,\r\n\t\tisNonstandard: \"CAP\",\r\n\t},\r\n};\r\n"], "mappings": "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", "names": [] }