diff --git a/config/formats.ts b/config/formats.ts index b849f50b69..2e9615df7e 100644 --- a/config/formats.ts +++ b/config/formats.ts @@ -933,6 +933,7 @@ export const Formats: FormatList = [ 'Crustboar', 'Paracoal', 'Arctovic', 'Altarizard', 'Altarizard-Mega-X', 'Altarizard-Mega', 'Altarizard-Mega-Y', 'Sandamar-Alola', 'Jirachonator', 'Dredvul', 'Druddifini', 'Swannamence', 'Tyranette-Eternal', 'Lurodactyl', 'Lurodactyl-Mega', 'Ninelands-Alola', 'Aurorona', 'Monferpa-Unbound', 'Gigacrab', 'Rosenaught', 'Keclyrex-Shadow', + 'Regibee', 'Regibee-Mega', 'Sigileye', 'Darmearna', 'Mr. Ace', 'Deciduskorch', 'Hypnakart', 'Zerclef', 'Silvino-Bug', 'Silvino-Dark', 'Silvino-Dragon', 'Silvino-Electric', 'Silvino-Fairy', 'Silvino-Fighting', 'Silvino-Fire', 'Silvino-Flying', 'Silvino-Ghost', 'Silvino-Grass', 'Silvino-Ground', 'Silvino-Ice', @@ -1594,6 +1595,7 @@ export const Formats: FormatList = [ 'Crustboar', 'Paracoal', 'Arctovic', 'Altarizard', 'Altarizard-Mega-X', 'Altarizard-Mega', 'Altarizard-Mega-Y', 'Sandamar-Alola', 'Jirachonator', 'Dredvul', 'Druddifini', 'Swannamence', 'Tyranette-Eternal', 'Lurodactyl', 'Lurodactyl-Mega', 'Ninelands-Alola', 'Aurorona', 'Monferpa-Unbound', 'Gigacrab', 'Rosenaught', 'Keclyrex-Shadow', + 'Regibee', 'Regibee-Mega', 'Sigileye', 'Darmearna', 'Mr. Ace', 'Deciduskorch', 'Hypnakart', 'Zerclef', 'Silvino-Bug', 'Silvino-Dark', 'Silvino-Dragon', 'Silvino-Electric', 'Silvino-Fairy', 'Silvino-Fighting', @@ -2474,11 +2476,12 @@ export const Formats: FormatList = [ `• Post in Solomods Megathread`, `• Spreadsheet`, ], - mod: 'pkmnyb', + mod: 'pkmnybv2', teambuilderFormat: 'OU', ruleset: ['Standard NatDex', 'OHKO Clause', 'Evasion Moves Clause', 'Species Clause', 'Dynamax Clause', 'Sleep Clause Mod', 'Data Mod', 'Mega Data Mod'], - unbanlist: ['Dracovish', 'Floette-Eternal', 'Light of Ruin'], - banlist: ['Uber', 'Arena Trap', 'Power Construct', 'Shadow Tag', 'Baton Pass', 'Alakazite', 'Blastoisinite', 'Arceus', 'Darkrai', 'Darmanitan-Galar', 'Deoxys-Attack', 'Deoxys-Speed', 'Dialga', 'Genesect', 'Gengarite', 'Greninja-Ash', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kangaskhanite', 'Kyogre', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base', 'Lucarionite', 'Lugia', 'Lunala', 'Marshadow', 'Metagrossite', 'Mewtwo', 'Mewtwo-Mega-X', 'Mewtwo-Mega-Y', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Palkia', 'Pheromosa', 'Rayquaza', 'Reshiram', 'Salamencite', 'Shaymin-Sky', 'Solgaleo', 'Tornadus-Therian', 'Urshifu', 'Xerneas', 'Yveltal', 'Zacian', 'Zamazenta', 'Zekrom', 'Zygarde', 'Berserk Gene', 'Kommonium Z', 'Eevee-Starter', 'Pikachu-Starter', 'Floette-Eternal'], + unbanlist: ['Floette-Eternal', 'Light of Ruin'], + banlist: ['Uber', 'Arena Trap', 'Power Construct', 'Shadow Tag', 'Baton Pass', 'Alakazite', 'Arceus', 'Darkrai', 'Gorilla Tactics', 'Deoxys-Attack', 'Deoxys-Speed', 'Dialga', 'Genesect', 'Gengarite', 'Greninja-Ash', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kyogre', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base', 'Lucarionite', 'Lugia', 'Lunala', 'Marshadow', 'Metagrossite', 'Mewtwo', 'Mewtwo-Mega-X', 'Mewtwo-Mega-Y', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Palkia', 'Pheromosa', 'Rayquaza', 'Reshiram', 'Salamencite', 'Solgaleo', 'Tornadus-Therian', 'Xerneas', 'Yveltal', 'Zacian', 'Zamazenta', 'Zekrom', 'Zygarde', 'Berserk Gene', 'Kommonium Z', 'Eevee-Starter', 'Pikachu-Starter', + 'Normalium Z', 'Fairium Z', 'Fightinium Z', 'Firium Z', 'Flyinium Z', 'Darkinium Z', 'Dragonium Z', 'Buginium Z', 'Waterium Z', 'Electrium Z', 'Ghostium Z', 'Grassium Z', 'Groundium Z', 'Icium Z', 'Poisonium Z', 'Psychium Z', 'Rockium Z', 'Steelium Z'], }, { name: "[Gen 8] PKMN YB VGC", @@ -2489,7 +2492,7 @@ export const Formats: FormatList = [ `• Post in Solomods Megathread`, `• Spreadsheet`, ], - mod: 'pkmnyb', + mod: 'pkmnybv2', teambuilderFormat: 'Doubles OU', gameType: 'doubles', forcedLevel: 77, @@ -2497,9 +2500,32 @@ export const Formats: FormatList = [ validate: [4, 6], battle: 4, }, - ruleset: ['Standard GBU', 'VGC Timer', 'Dynamax Clause', 'Data Mod', 'Mega Data Mod'], - banlist: ['All Pokemon'], - unbanlist: ['Floette-Eternal', 'Light of Ruin', 'Butterfree', 'Butterfree-Mega', 'Beedrill', 'Beedrillite', 'Raticate', 'Raticate-Alola', 'Arbok', 'Pikachu', 'Raichu', 'Raichu-Alola','Sandslash', 'Sandslash-Alola', 'Clefairy', 'Clefable', 'Ninetales', 'Ninetales-Alola', 'Vileplume', 'Wigglytuff', 'Golduck', 'Arcanine', 'Poliwrath', 'Alakazam', 'Alakazite', 'Victreebel', 'Tentacruel', 'Slowbro', 'Slowbronite', 'Slowbro-Galar', 'Slowbro-Galar-Mega', 'Farfetchd', 'Farfetchd-Galar', 'Dodrio', 'Dewgong', 'Cloyster', 'Gengar', 'Gengarite', 'Hypno', 'Exeggutor', 'Exeggutor-Alola', 'Marowak', 'Marowak-Alola', 'Weezing', 'Weezing-Galar', 'Seaking', 'Mr. Mime', 'Mr. Mime-Galar', 'Scyther', 'Jynx', 'Magmar', 'Electabuzz', 'Pinsir', 'Pinsirite', 'Gyarados', 'Gyaradosite', 'Ditto', 'Jolteon', 'Vaporeon', 'Flareon', 'Snorlax', 'Dragonite-Mega', 'Meganium', 'Meganium-Mega', 'Typhlosion', 'Typhlosion-Mega', 'Feraligatr', 'Feraligatr-Mega', 'Furret', 'Ledian', 'Ariados', 'Crobat', 'Golbat', 'Xatu', 'Bellossom', 'Azumarill', 'Sunflora', 'Murkrow', 'Politoed', 'Steelix', 'Steelixite', 'Heracross', 'Heracronite', 'Scizor', 'Scizorite', 'Slowking', 'Slowking-Mega', 'Kingdra', 'Espeon', 'Umbreon', 'Granbull', 'Houndoom', 'Houndoominite', 'Donphan', 'Stantler', 'Mightyena', 'Linoone', 'Linoone-Galar', 'Ludicolo', 'Shiftry', 'Swellow', 'Pelipper', 'Gardevoir', 'Gardevoirite', 'Masquerain', 'Breloom', 'Shedinja', 'Hariyama', 'Delcatty', 'Manectric', 'Manectite', 'Volbeat', 'Illumise', 'Sharpedo', 'Sharpedonite', 'Camerupt', 'Cameruptite', 'Torkoal', 'Spinda', 'Flygon', 'Flygon-Mega', 'Zangoose', 'Seviper', 'Crawdaunt', 'Kecleon', 'Milotic', 'Milotic-Mega', 'Banette', 'Banettite', 'Dusclops', 'Tropius', 'Clamperl', 'Huntail', 'Gorebyss', 'Luvdisc', 'Glalie', 'Glalitite', 'Metagross', 'Metagrossite', 'Staraptor', 'Kricketune', 'Luxray', 'Rampardos', 'Bastiodon', 'Wormadam', 'Wormadam-Sandy', 'Wormadam-Trash', 'Mothim', 'Floatzel', 'Ambipom', 'Drifblim', 'Mismagius', 'Honchkrow', 'Purugly', 'Bronzong', 'Spiritomb', 'Garchomp', 'Garchompite', 'Toxicroak', 'Lumineon', 'Abomasnow', 'Abomasite', 'Weavile', 'Gliscor', 'Tangrowth', 'Yanmega', 'Magmortar', 'Electivire', 'Dusknoir', 'Dusknoir-Mega', 'Gallade', 'Galladite', 'Froslass', 'Froslass-Mega', 'Leafeon', 'Glaceon', 'Rotom', 'Rotom-Wash', 'Rotom-Heat', 'Rotom-Frost', 'Rotom-Mow', 'Rotom-Fan', 'Uxie', 'Mesprit', 'Azelf', 'Stoutland', 'Simisage', 'Simisear', 'Simipour', 'Musharna', 'Musharna-Mega', 'Zebstrika', 'Zebstrika-Mega', 'Gigalith', 'Excadrill', 'Seismitoad', 'Leavanny', 'Scolipede', 'Krookodile', 'Darmanitan', 'Darmanitan-Galar', 'Sigilyph', 'Cofagrigus', 'Zoroark', 'Zoroark-Mega', 'Cinccino', 'Swanna', 'Sawsbuck', 'Escavalier', 'Alomomola', 'Ferrothorn', 'Eelektross', 'Beheeyem', 'Cryogonal', 'Accelgor', 'Mienshao', 'Mienshao-Mega', 'Druddigon', 'Bisharp', 'Heatmor', 'Durant', 'Hydreigon', 'Hydreigon-Mega', 'Talonflame', 'Talonflame-Mega', 'Pyroar', 'Florges', 'Gogoat', 'Gogoat-Mega', 'Barbaracle', 'Barbaracle-Mega', 'Meowstic', 'Meowstic-F', 'Meowstic-Mega', 'Meowstic-F-Mega', 'Doublade', 'Aegislash', 'Aromatisse', 'Slurpuff', 'Dragalge', 'Clawitzer', 'Heliolisk', 'Tyrantrum', 'Aurorus', 'Sylveon', 'Hawlucha', 'Goodra', 'Goodra-Mega', 'Trevenant', 'Gourgeist', 'Gourgeist-Small', 'Gourgeist-Large', 'Gourgeist-Super', 'Toucannon', 'Gumshoos', 'Crabominable', 'Oricorio', 'Oricorio-Pom-Pom', 'Oricorio-Pau', 'Oricorio-Sensu', 'Ribombee', 'Lycanroc', 'Lycanroc-Midnight', 'Lycanroc-Dusk', 'Wishiwashi', 'Araquanid', 'Lurantis', 'Shiinotic', 'Shiinotic-Mega', 'Oranguru', 'Passimian', 'Golisopod', 'Golisopod-Mega', 'Palossand', 'Type: Null', 'Silvally', 'Silvally-Bug', 'Silvally-Dark', 'Silvally-Dragon', 'Silvally-Electric', 'Silvally-Fairy', 'Silvally-Fighting', 'Silvally-Fire', 'Silvally-Flying', 'Silvally-Ghost', 'Silvally-Grass', 'Silvally-Ground', 'Silvally-Ice', 'Silvally-Poison', 'Silvally-Psychic', 'Silvally-Rock', 'Silvally-Steel', 'Silvally-Water', 'Komala', 'Turtonator', 'Turtonator-Mega', 'Togedemaru', 'Mimikyu', 'Drampa', 'Drampa-Mega', 'Dhelmise', 'Kommo-o', 'Kommo-o-Mega', 'Rillaboom', 'Cinderace', 'Inteleon', 'Corviknight', 'Corviknight-Mega', 'Orbeetle', 'Eldegoss', 'Dubwool', 'Boltund', 'Boltund-Mega', 'Coalossal', 'Flapple', 'Appletun', 'Sandaconda', 'Cramorant', 'Barraskewda', 'Toxtricity', 'Toxtricity-Low-Key', 'Grapploct', 'Obstagoon', 'Sirfetchd', 'Runerigus', 'Mr. Rime', 'Alcremie', 'Falinks', 'Falinks-Mega', 'Pincurchin', 'Stonjourner', 'Eiscue', 'Indeedee', 'Indeedee-F', 'Indeedee-Mega', 'Indeedee-F-Mega', 'Morpeko', 'Duraludon', 'Dragapult', 'Dragapult-Mega', 'Arbborry', 'Bersawk', 'Bloomivolt', 'Buffalocean', 'Chemicander', 'Chemicander-Mega', 'Chompean', 'Creaviary', 'Darsqueak', 'Dominidon', 'Electzal', 'Frixen', 'Fyrecho', 'Gammaroo', 'Geareon', 'Ghoulgoyle', 'Giraflame', 'Glaciarch', 'Goblizz', 'Hareloom', 'Ingarde', 'Kaclash', 'Menursa', 'Mothicoal', 'Muaytiger', 'Mustellar', 'Mytheon', 'Necrice', 'Neurowatt', 'Nimbless', 'Osprime', 'Petradvena', 'Petrasapien', 'Photyrant', 'Plummuse', 'Primadillo', 'Primadillo-Mega', 'Ptarabola', 'Pyrogrine', 'Razorine', 'Sanatee', 'Sparsqueak', 'Synthinobi', 'Synthinobi-Mega', 'Venometta', 'Wolverflare', 'Yamaboucha', 'Zapish'], + ruleset: ['Standard GBU', 'VGC Timer', 'Dynamax Clause', 'Data Mod', 'Mega Data Mod', '+Past'], + banlist: ['All Pokemon', 'Normalium Z', 'Fairium Z', 'Fightinium Z', 'Firium Z', 'Flyinium Z', 'Darkinium Z', 'Dragonium Z', 'Buginium Z', 'Waterium Z', 'Electrium Z', 'Ghostium Z', 'Grassium Z', 'Groundium Z', 'Icium Z', 'Poisonium Z', 'Psychium Z', 'Rockium Z', 'Steelium Z'], + unbanlist: [ + 'Floette-Eternal', 'Light of Ruin', + 'Synthinobi', 'Chemicander', 'Primadillo', 'Bersawk', 'Electzal', 'Pyrogrine', 'Chompean', 'Mothicoal', 'Neurowatt', 'Menursa', 'Bloomivolt', 'Muaytiger', 'Hareloom', 'Razorine', 'Frospherous', 'Arbborry', 'Mustellar', 'Wolverflare', 'Photyrant', 'Ghoulgoyle', 'Cortefauna', 'Gammaroo', 'Serpentorch', 'Kaclash', 'Solinira', 'Zapish', 'Sanatee', 'Glaciarch', 'Creaviary', 'Plummuse', 'Sparsqueak', 'Darsqueak', 'Giraflame', 'Lycacia', 'Remodile', 'Petrasapien', 'Petradvena', 'Fyrecho', 'Osprime', 'Buffalocean', 'Ingarde', 'Venometta', 'Nimbless', 'Frixen', 'Necrice', 'Goblizz', 'Ptarabola', 'Dominidon', 'Frostonna', 'Geareon', 'Mytheon', + 'Butterfree', 'Vespiquen', 'Ariados', 'Ledian', 'Yanmega', 'Accelgor', 'Escavalier', 'Masquerain', 'Mothim', 'Pinsir', + 'Drapion', 'Thievul', 'Hypno', 'Weavile', 'Scrafty', 'Absol', 'Houndoom', 'Morpeko', 'Cacturne', 'Sharpedo', + 'Hydreigon', 'Noivern', 'Drampa', 'Goodra', 'Flygon', 'Tyrantrum', 'Dracovish', 'Dracozolt', 'Dragalge', 'Altaria', + 'Boltund', 'Togedemaru', 'Electivire', 'Pachirisu', 'Luxray', 'Lanturn', 'Raichu', 'Volbeat', 'Vikavolt', 'Eelektross', + 'Granbull', 'Shiinotic', 'Ribombee', 'Florges', 'Illumise', 'Mienshao', 'Wigglytuff', 'Rapidash', 'Gardevoir', 'Comfey', + 'Bewear', 'Falinks', 'Infernape', 'Passimian', 'Breloom', 'Grapploct', 'Hariyama', 'Toxicroak', 'Poliwrath', 'Heracross', + 'Typhlosion', 'Turtonator', 'Magmortar', 'Ninetales', 'Camerupt', 'Pyroar', 'Salazzle', 'Magcargo', 'Centiskorch', 'Darmanitan', + 'Talonflame', 'Honchkrow', 'Beautifly', 'Gliscor', 'Staraptor', 'Cramorant', 'Drifblim', 'Sirfetchd', 'Minior', 'Pidgeot', + 'Dusknoir', 'Mismagius', 'Banette', 'Gourgeist', 'Golurk', 'Palossand', 'Jellicent', 'Polteageist', 'Cofagrigus', 'Sableye', + 'Meganium', 'Cherrim', 'Carnivine', 'Wormadam', 'Tropius', 'Jumpluff', 'Cradily', 'Tsareena', 'Gogoat', 'Victreebel', + 'Krookodile', 'Torterra', 'Wormadam-Sandy', 'Sandaconda', 'Claydol', 'Whiscash', 'Golem', 'Dugtrio', 'Steelix', 'Sandslash', + 'Froslass', 'Walrein', 'Glalie', 'Arctozolt', 'Vanilluxe', 'Dewgong', 'Mamoswine', 'Eiscue', 'Avalugg', 'Minun', + 'Cinccino', 'Lickilicky', 'Delcatty', 'Oranguru', 'Castform', 'Bibarel', 'Kecleon', 'Purugly', 'Stantler', 'Zangoose', + 'Tentacruel', 'Roserade', 'Dustox', 'Vileplume', 'Crobat', 'Swalot', 'Toxtricity', 'Seviper', 'Garbodor', 'Arbok', + 'Malamar', 'Beheeyem', 'Slowbro', 'Mr. Mime', 'Gallade', 'Xatu', 'Girafarig', 'Bruxish', 'Musharna', 'Exeggutor', + 'Rhyperior', 'Aurorus', 'Gigalith', 'Armaldo', 'Stonjourner', 'Drednaw', 'Sudowoodo', 'Lycanroc', 'Shuckle', 'Probopass', + 'Duraludon', 'Copperajah', 'Empoleon', 'Wormadam-Steel', 'Chimecho', 'Skarmory', 'Scizor', 'Perrserker', 'Klinklang', 'Bisharp', + 'Feraligatr', 'Slowking', 'Milotic', 'Arctovish', 'Clawitzer', 'Floatzel', 'Politoed', 'Seaking', 'Qwilfish', 'Quagsire', + 'Zweilous', 'Electabuzz', 'Magmar', 'Murkrow', 'Misdreavus', 'Dusclops', 'Lickitung', 'Roselia', 'Rhydon', 'Floette', 'Mr. Mime-Galar', 'Pikachu', 'Charjabug', 'Jigglypuff', 'Jynx', 'Scyther', + 'Unown', 'Mr. Rime', 'Azelf', 'Uxie', 'Mesprit', 'Rapidash-Galar', 'Ninetales-Alola', 'Simisage', 'Simisear', 'Simipour', 'Darmanitan-Galar', 'Gourgeist-Large', 'Gourgeist-Super', 'Gourgeist-Small', 'Runerigus', 'Bellossom', 'Golem-Alola', 'Dugtrio-Alola', 'Sandslash-Alola', 'Plusle', 'Exeggutor-Alola', 'Lycanroc-Midnight', 'Lycanroc-Dusk', 'Persian', 'Persian-Alola', + ], }, // Past Gens OU /////////////////////////////////////////////////////////////////// diff --git a/data/mods/feuu/abilities.ts b/data/mods/feuu/abilities.ts index b3d9acc3b8..76aaab5701 100644 --- a/data/mods/feuu/abilities.ts +++ b/data/mods/feuu/abilities.ts @@ -2038,29 +2038,15 @@ export const Abilities: {[k: string]: ModdedAbilityData} = { */ reversegear: { name: "Reverse Gear", - shortDesc: "(Non-functional placeholder) Stat boosts to the Speed stat are inversed.", + onBoost(boost) { + boost.spe *= -1; + }, + shortDesc: "Stat boosts to the Speed stat are inversed.", }, plotarmor: { name: "Plot Armor", shortDesc: "(Non-Functional Placeholder) Reckless + If this Pokemon would faint due to recoil or crash damage, it will instead survive with 1 HP.", }, -/* - reversegear: { - onAfterBoost(boost, target, source, effect) { - if (source && target === source) return; - if (boost.spe && boost.spe < 0) { - if (source.boosts[spe] === 0) continue; - source.boosts[i] = -source.boosts[i]; - success = true; - } - if (!success) return false; - this.add('-invertboost', source, '[from] ability: Contrary Boost'); - } - }, - name: "Reverse Gear", - shortDesc: "Stat boosts to the Speed stat are inversed.", - }, -*/ innerfocus: { onTryAddVolatile(status, pokemon) { if (status.id === 'flinch') return null; @@ -2345,5 +2331,144 @@ export const Abilities: {[k: string]: ModdedAbilityData} = { name: "As One (Kecleon)", shortDesc: "As One (Spectrier) + Color Change.", }, + heavyarmor: { + onBoost(boost, target, source, effect) { + if (source && target === source) return; + let showMsg = false; + let i: BoostName; + for (i in boost) { + if (boost[i]! < 0) { + delete boost[i]; + showMsg = true; + } + } + if (showMsg && !(effect as ActiveMove).secondaries && effect.id !== 'octolock') { + this.add("-fail", target, "unboost", "[from] ability: Heavy Armor", "[of] " + target); + } + }, + onCriticalHit: false, + name: "Heavy Armor", + shortDesc: "Prevents other Pokemon from lowering this Pokemon's stat stages. This Pokemon cannot be struck by a critical hit.", + }, + magicwand: { + onModifyMove(move) { + delete move.flags['contact']; + }, + onDamage(damage, target, source, effect) { + if (effect.effectType !== 'Move') { + if (effect.effectType === 'Ability') this.add('-activate', source, 'ability: ' + effect.name); + return false; + } + }, + name: "Magic Wand", + shortDesc: "Long Reach + Magic Guard", + }, + sportsshowtime: { + onPrepareHit(source, target, move) { + if (move.hasBounced) return; + const type = move.type; + if (type && type !== '???' && source.getTypes().join() !== type) { + if (!source.setType(type)) return; + this.add('-start', source, 'typechange', type, '[from] ability: Sports Showtime'); + this.heal(source.baseMaxhp / 16); + } + }, + name: "Sports Showtime", + shortDesc: "Changes to the type of its used move and heals 1/16 of its max HP before dealing damage", + }, + firestarter: { + onDamagingHit(damage, target, source, move) { + if (move.flags['contact']) { + if (this.randomChance(3, 10)) { + source.trySetStatus('brn', target); + } + } + }, + onModifyMove(move) { + if (!move || !move.flags['contact'] || move.target === 'self') return; + if (!move.secondaries) { + move.secondaries = []; + } + move.secondaries.push({ + chance: 30, + status: 'brn', + ability: this.dex.getAbility('firestarter'), + }); + }, + name: "Fire Starter", + shortDesc: "30% chance to burn opponent when using a contact move or when the opponent makes contact with this Pokemon", + }, + "parasomnia": { + shortDesc: "Upon a KO or falling asleep, highest non-HP stat is raised by 1 stage.", + id: "parasomnia", + name: "Parasomnia", + onSourceFaint(target, source, effect) { + if (effect && effect.effectType === 'Move') { + let statName = 'atk'; + let bestStat = 0; + /** @type {StatNameExceptHP} */ + let s; + for (s in source.storedStats) { + if (source.storedStats[s] > bestStat) { + statName = s; + bestStat = source.storedStats[s]; + } + } + this.boost({[statName]: 1}, source); + } + }, + onSetStatus(status, target, source, effect) { + let statName = 'atk'; + let bestStat = 0; + /** @type {StatNameExceptHP} */ + let s; + for (s in this.effectData.target.storedStats) { + if (this.effectData.target.storedStats[s] > bestStat) { + statName = s; + bestStat = this.effectData.target.storedStats[s]; + } + } + if (status.id === 'slp') { + this.boost({[statName]: 1}, this.effectData.target); + } + }, + }, + willfulcharge: { + onTryHit(target, source, move) { + if (target !== source && move.type === 'Electric') { + if (!this.heal(target.baseMaxhp / 4)) { + this.add('-immune', target, '[from] ability: Willful Charge'); + } + return null; + } + }, + onAnyModifyBoost(boosts, pokemon, move) { + const unawareUser = this.effectData.target; + if (unawareUser === pokemon) return; + if (unawareUser === this.activePokemon && pokemon === this.activeTarget) { + boosts['def'] = 0; + boosts['spd'] = 0; + boosts['evasion'] = 0; + } + }, + name: "Willful Charge", + shortDesc: "(Bugged) Ignores opponent’s stat changes when doing damage with Electric-type moves and recovers 1/4 max HP when hit by an electric type move; Electric immunity.", + }, + sheerheart: { + onBasePowerPriority: 21, + onBasePower(basePower, pokemon, target, move) { + if (move.category === 'Special') return this.chainModify([0x14CD, 0x1000]); + }, + onBoost(boost, target, source, effect) { + if (boost.spa && boost.spa < 0) { + delete boost.spa; + if (!(effect as ActiveMove).secondaries) { + this.add("-fail", target, "unboost", "Special Attack", "[from] ability: Sheer Heart", "[of] " + target); + } + } + }, + name: "Sheer Heart", + shortDesc: "Special attacks have 1.3x power; stat changes to the Special Attack stat have no effect.", + }, }; diff --git a/data/mods/feuu/formats-data.ts b/data/mods/feuu/formats-data.ts index 77a437407d..00157a7bad 100644 --- a/data/mods/feuu/formats-data.ts +++ b/data/mods/feuu/formats-data.ts @@ -574,7 +574,7 @@ export const FormatsData: {[k: string]: ModdedSpeciesFormatsData} = { doublesTier: "DUU", }, sandamaralola: { - tier: "Uncoded", + tier: "FEUU", doublesTier: "DUU", }, @@ -637,6 +637,40 @@ export const FormatsData: {[k: string]: ModdedSpeciesFormatsData} = { tier: "FEUU", doublesTier: "DUU", }, + +// Slate 19 + regibee: { + tier: "FEUU", + doublesTier: "DUU", + }, + regibeemega: { + tier: "FEUU", + doublesTier: "DUU", + }, + sigileye: { + tier: "FEUU", + doublesTier: "DUU", + }, + darmearna: { + tier: "FEUU", + doublesTier: "DUU", + }, + mrace: { + tier: "FEUU", + doublesTier: "DUU", + }, + deciduskorch: { + tier: "FEUU", + doublesTier: "DUU", + }, + hypnakart: { + tier: "FEUU", + doublesTier: "DUU", + }, + zerclef: { + tier: "Uncoded", + doublesTier: "DUU", + }, //Silvino Nightmare Hours diff --git a/data/mods/feuu/items.ts b/data/mods/feuu/items.ts index f3d73480a8..4e305433c4 100644 --- a/data/mods/feuu/items.ts +++ b/data/mods/feuu/items.ts @@ -344,4 +344,17 @@ export const Items: {[itemid: string]: ModdedItemData} = { num: 672, desc: "If held by a Lurodactyl, this item allows it to Mega Evolve in battle.", }, + beedrillite: { + name: "Beedrillite", + spritenum: 628, + megaStone: "Regibee-Mega", + megaEvolves: "Regibee", + itemUser: ["Regibee"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: 770, + desc: "If held by a Regibee, this item allows it to Mega Evolve in battle.", + }, }; diff --git a/data/mods/feuu/pokedex.ts b/data/mods/feuu/pokedex.ts index aa450ba367..d73a7ac652 100644 --- a/data/mods/feuu/pokedex.ts +++ b/data/mods/feuu/pokedex.ts @@ -1302,6 +1302,84 @@ export const Pokedex: {[k: string]: ModdedSpeciesData} = { abilities: {0: "As One (Kecleon)"}, weightkg: 37.8, }, + +// Slate 19 + regibee: { + fusion: ['Registeel', 'Beedrill'], + num: 97, + name: "Regibee", + types: ["Poison", "Steel"], + baseStats: {hp: 86, atk: 90, def: 110, spa: 60, spd: 115, spe: 65}, + abilities: {0: "Heavy Armor"}, + weightkg: 117.3, + }, + regibeemega: { + fusion: ['Registeel', 'Beedrill'], + num: 97, + name: "Regibee-Mega", + baseSpecies: "Regibee", + forme: "Mega", + types: ["Poison", "Steel"], + baseStats: {hp: 86, atk: 150, def: 110, spa: 30, spd: 115, spe: 135}, + abilities: {0: "Adaptability"}, + weightkg: 128.3, + requiredItem: "Beedrillite", + battleOnly: "Regibee", + }, + sigileye: { + fusion: ['Sigilyph', 'Decidueye'], + num: 98, + name: "Sigileye", + types: ["Ghost", "Flying"], + baseStats: {hp: 83, atk: 85, def: 95, spa: 105, spd: 95, spe: 85}, + abilities: {0: "Magic Wand"}, + weightkg: 25.3, + }, + darmearna: { + fusion: ['Darmanitan', 'Magearna'], + num: 99, + name: "Darmearna", + types: ["Fire", "Fairy"], + baseStats: {hp: 95, atk: 135, def: 85, spa: 84, spd: 85, spe: 95}, + abilities: {0: "Sheer Heart"}, + weightkg: 86.7, + }, + mrace: { + fusion: ['Mr. Rime', 'Cinderace'], + num: 100, + name: "Mr. Ace", + types: ["Fire", "Psychic"], + baseStats: {hp: 80, atk: 100, def: 95, spa: 87, spd: 95, spe: 106}, + abilities: {0: "Sports Showtime"}, + weightkg: 45.6, + }, + deciduskorch: { + fusion: ['Decidueye', 'Centiskorch'], + num: 101, + name: "Deciduskorch", + types: ["Fire", "Ghost"], + baseStats: {hp: 90, atk: 120, def: 80, spa: 95, spd: 95, spe: 87}, + abilities: {0: "Fire Starter"}, + weightkg: 78.3, + }, + hypnakart: { + fusion: ['Hypno', 'Kartana'], + num: 102, + name: "Hypnakart", + types: ["Psychic", "Grass"], + baseStats: {hp: 73, atk: 139, def: 107, spa: 67, spd: 73, spe: 107}, + abilities: {0: "Parasomnia"}, + weightkg: 37.9, + }, + zerclef: { + fusion: ['Zeraora', 'Clefable'], + num: 103, + name: "Zerclef", + types: ["Electric", "Fairy"], + baseStats: {hp: 91, atk: 111, def: 74, spa: 98, spd: 85, spe: 121}, + abilities: {0: "Willful Charge"}, + weightkg: 42.3, + }, //silvino formes silvinobug: { diff --git a/data/mods/feuu/sprites/front-shiny/darmearna.png b/data/mods/feuu/sprites/front-shiny/darmearna.png new file mode 100644 index 0000000000..ea4038169b Binary files /dev/null and b/data/mods/feuu/sprites/front-shiny/darmearna.png differ diff --git a/data/mods/feuu/sprites/front-shiny/deciduskorch.png b/data/mods/feuu/sprites/front-shiny/deciduskorch.png new file mode 100644 index 0000000000..5392a7c575 Binary files /dev/null and b/data/mods/feuu/sprites/front-shiny/deciduskorch.png differ diff --git a/data/mods/feuu/sprites/front-shiny/mrace.png b/data/mods/feuu/sprites/front-shiny/mrace.png new file mode 100644 index 0000000000..e516525b99 Binary files /dev/null and b/data/mods/feuu/sprites/front-shiny/mrace.png differ diff --git a/data/mods/feuu/sprites/front-shiny/regibee.png b/data/mods/feuu/sprites/front-shiny/regibee.png new file mode 100644 index 0000000000..788f91e449 Binary files /dev/null and b/data/mods/feuu/sprites/front-shiny/regibee.png differ diff --git a/data/mods/feuu/sprites/front-shiny/regibeemega.png b/data/mods/feuu/sprites/front-shiny/regibeemega.png new file mode 100644 index 0000000000..9a9fee500d Binary files /dev/null and b/data/mods/feuu/sprites/front-shiny/regibeemega.png differ diff --git a/data/mods/feuu/sprites/front-shiny/sigileye.png b/data/mods/feuu/sprites/front-shiny/sigileye.png new file mode 100644 index 0000000000..5388442951 Binary files /dev/null and b/data/mods/feuu/sprites/front-shiny/sigileye.png differ diff --git a/data/mods/feuu/sprites/front-shiny/zerclef.png b/data/mods/feuu/sprites/front-shiny/zerclef.png new file mode 100644 index 0000000000..ca563b0ede Binary files /dev/null and b/data/mods/feuu/sprites/front-shiny/zerclef.png differ diff --git a/data/mods/feuu/sprites/front/darmearna.png b/data/mods/feuu/sprites/front/darmearna.png new file mode 100644 index 0000000000..886c5fc87e Binary files /dev/null and b/data/mods/feuu/sprites/front/darmearna.png differ diff --git a/data/mods/feuu/sprites/front/deciduskorch.png b/data/mods/feuu/sprites/front/deciduskorch.png new file mode 100644 index 0000000000..a5e8677e4a Binary files /dev/null and b/data/mods/feuu/sprites/front/deciduskorch.png differ diff --git a/data/mods/feuu/sprites/front/mrace.png b/data/mods/feuu/sprites/front/mrace.png new file mode 100644 index 0000000000..a0c7f1751b Binary files /dev/null and b/data/mods/feuu/sprites/front/mrace.png differ diff --git a/data/mods/feuu/sprites/front/regibee.png b/data/mods/feuu/sprites/front/regibee.png new file mode 100644 index 0000000000..91b5d3aa49 Binary files /dev/null and b/data/mods/feuu/sprites/front/regibee.png differ diff --git a/data/mods/feuu/sprites/front/regibeemega.png b/data/mods/feuu/sprites/front/regibeemega.png new file mode 100644 index 0000000000..bf1ccbc65d Binary files /dev/null and b/data/mods/feuu/sprites/front/regibeemega.png differ diff --git a/data/mods/feuu/sprites/front/sigileye.png b/data/mods/feuu/sprites/front/sigileye.png new file mode 100644 index 0000000000..5d4d4ef3d9 Binary files /dev/null and b/data/mods/feuu/sprites/front/sigileye.png differ diff --git a/data/mods/feuu/sprites/front/zerclef.png b/data/mods/feuu/sprites/front/zerclef.png new file mode 100644 index 0000000000..08f410d837 Binary files /dev/null and b/data/mods/feuu/sprites/front/zerclef.png differ diff --git a/data/mods/pkmnybv2/abilities.ts b/data/mods/pkmnybv2/abilities.ts new file mode 100644 index 0000000000..86d0ec56e0 --- /dev/null +++ b/data/mods/pkmnybv2/abilities.ts @@ -0,0 +1,760 @@ +export const Abilities: {[k: string]: ModdedAbilityData} = { + harvester: { + shortDesc: "This Pokemon's Grass-type moves have their power boosted 1.5x.", + onModifyAtkPriority: 5, + onModifyAtk(atk, attacker, defender, move) { + if (move.type === 'Grass') { + this.debug('Harvester boost'); + return this.chainModify(1.5); + } + }, + onModifySpAPriority: 5, + onModifySpA(atk, attacker, defender, move) { + if (move.type === 'Grass') { + this.debug('Harvester boost'); + return this.chainModify(1.5); + } + }, + name: "Harvester", + rating: 3.5, + }, + burningechoes: { + shortDesc: "This Pokemon's Sound moves have a 20% chance to burn and have 1.2x power.", + // upokecenter says this is implemented as an added secondary effect + onModifyMove(move) { + if (!move || !move.flags['sound'] || move.target === 'self') return; + if (!move.secondaries) { + move.secondaries = []; + } + move.secondaries.push({ + chance: 20, + status: 'brn', + ability: this.dex.getAbility('burningechoes'), + }); + }, + onBasePowerPriority: 19, + onBasePower(basePower, attacker, defender, move) { + if (move.flags['sound']) { + return this.chainModify(1.2); + } + }, + name: "Burning Echoes", + }, + cacophony: { + shortDesc: "Boosts the power of sound moves by 1.3x.", + onBasePowerPriority: 7, + onBasePower(basePower, attacker, defender, move) { + if (move.flags['sound']) { + this.debug('Punk Rock boost'); + return this.chainModify([0x14CD, 0x1000]); + } + }, + name: "Cacophony", + rating: 3.5, + }, + shadowbeacon: { + shortDesc: "Ghost and Dark-type moves used by any Pokemon on the field are boosted 1.3x. Effected by Aura Break.", + onStart(pokemon) { + this.add('-ability', pokemon, 'Shadow Beacon'); + }, + onAnyBasePowerPriority: 20, + onAnyBasePower(basePower, source, target, move) { + if (target === source || move.category === 'Status' || move.type !== 'Dark' || move.type !== 'Ghost') return; + if (!move.auraBooster) move.auraBooster = this.effectData.target; + if (move.auraBooster !== this.effectData.target) return; + return this.chainModify([move.hasAuraBreak ? 0x0C00 : 0x1547, 0x1000]); + }, + isUnbreakable: true, + name: "Shadow Beacon", + }, + energybeacon: { + shortDesc: "Electric and Fighting-type moves used by any Pokemon on the field are boosted 1.3x. Effected by Aura Break.", + onStart(pokemon) { + this.add('-ability', pokemon, 'Energy Beacon'); + }, + onAnyBasePowerPriority: 20, + onAnyBasePower(basePower, source, target, move) { + if (target === source || move.category === 'Status' || move.type !== 'Electric' || move.type !== 'Fighting') return; + if (!move.auraBooster) move.auraBooster = this.effectData.target; + if (move.auraBooster !== this.effectData.target) return; + return this.chainModify([move.hasAuraBreak ? 0x0C00 : 0x1547, 0x1000]); + }, + isUnbreakable: true, + name: "Energy Beacon", + }, + solidify: { + shortDesc: "This Pokemon's Defense is boosted by 1.5x but its Speed is halved.", + onModifyDefPriority: 6, + onModifyDef(def) { + return this.chainModify(1.5); + }, + onModifySpe(spe, pokemon) { + return this.chainModify(0.5); + }, + name: "Solidify", + }, + royalpresence: { + shortDesc: "While this Pokemon is active, allies are protected from opposing priority moves.", + onFoeTryMove(target, source, move) { + const targetAllExceptions = ['perishsong', 'flowershield', 'rototiller']; + if (move.target === 'foeSide' || (move.target === 'all' && !targetAllExceptions.includes(move.id))) { + return; + } + + const dazzlingHolder = this.effectData.target; + if ((source.side === dazzlingHolder.side || move.target === 'all') && move.priority > 0.1) { + this.attrLastMove('[still]'); + this.add('cant', dazzlingHolder, 'ability: Royal Presence', move, '[of] ' + target); + return false; + } + }, + name: "Royal Presence", + rating: 2.5, + }, + knightsblade: { + shortDesc: "Boosts the power of sword, cut, slash, claw, and blade moves by 1.3x", + onBasePowerPriority: 8, + onBasePower(basePower, attacker, defender, move) { + if (move.name === 'Psycho Cut' || move.name === 'Cut' || move.name === 'Slash' || move.name === 'Night Slash' || move.name === 'Solar Blade' || move.name === 'Leaf Blade' || move.name === 'X-Scissor' || move.name === 'Cross Poison' || move.name === 'Air Slash' || move.name === 'Air Cutter' || move.name === 'Fury Cutter' || move.name === 'Sacred Sword' || move.name === 'Secret Sword' || move.name === 'Razor Shell' || move.name === 'Behemoth Blade' || move.name === 'Aerial Ace' || move.name === 'Metal Claw' || move.name === 'Dragon Claw' || move.name === 'Shadow Claw' || move.name === 'Crush Claw' || move.name === 'False Swipe' || move.name === 'Scratch' || move.name === 'Smart Strike' || move.name === 'Behemoth Blade' || move.name === 'Secret Sword') { + return this.chainModify(1.3); + } + }, + name: "Knight's Blade", + }, + divinelight: { + desc: "On switch-in, this Pokemon lowers the Attack and Sp. Attack of adjacent opposing Pokemon by 1 stage, regardless of the opponent's ability. Pokemon behind a substitute are immune.", + shortDesc: "On switch-in, this Pokemon lowers the Attack and Sp. Attack of adjacent opponents by 1 stage; Ignores abilities.", + onStart (pokemon) { + let activated = false; + for (const target of pokemon.side.foe.active) { + if (!target || !this.isAdjacent(target, pokemon)) continue; + if (!activated) { + this.add('-ability', pokemon, 'Divine Light', 'boost'); + activated = true; + } + if (target.volatiles['substitute']) { + this.add('-immune', target); + } else { + this.boost({atk: -1, spa: -1}, target, pokemon); + } + } + }, + name: "Divine Light", + }, + mattersplitter: { + desc: "On switch-in, this Pokemon lowers the Defense and Sp. Defense of adjacent opposing Pokemon by 1 stage, regardless of the opponent's ability. Pokemon behind a substitute are immune.", + shortDesc: "On switch-in, this Pokemon lowers the Defense and Sp. Defense of adjacent opponents by 1 stage; Ignores abilities.", + onStart (pokemon) { + let activated = false; + for (const target of pokemon.side.foe.active) { + if (!target || !this.isAdjacent(target, pokemon)) continue; + if (!activated) { + this.add('-ability', pokemon, 'Matter Splitter', 'boost'); + activated = true; + } + if (target.volatiles['substitute']) { + this.add('-immune', target); + } else { + this.boost({def: -1, spd: -1}, target, pokemon); + } + } + }, + name: "Matter Splitter", + }, + atomsmasher: { + shortDesc: "This Pokemon's Special Attack is doubled.", + onModifyAtkPriority: 5, + onModifyAtk(spa) { + return this.chainModify(2); + }, + name: "Atom Smasher", + }, + demotivate: { + shortDesc: "On switch-in, this Pokemon lowers the Special Attack of adjacent opponents by 1 stage.", + onStart(pokemon) { + let activated = false; + for (const target of pokemon.side.foe.active) { + if (!target || !this.isAdjacent(target, pokemon)) continue; + if (!activated) { + this.add('-ability', pokemon, 'Demotivate', 'boost'); + activated = true; + } + if (target.volatiles['substitute']) { + this.add('-immune', target); + } else { + this.boost({spa: -1}, target, pokemon, null, true); + } + } + }, + name: "Demotivate", + rating: 3.5, + }, + innerfocus: { + onTryAddVolatile(status, pokemon) { + if (status.id === 'flinch') return null; + }, + onBoost(boost, target, source, effect) { + if (effect.id === 'intimidate') { + delete boost.atk; + this.add('-immune', target, '[from] ability: Inner Focus'); + } + if (effect.id === 'demotivate') { + delete boost.spa; + this.add('-immune', target, '[from] ability: Inner Focus'); + } + }, + name: "Inner Focus", + rating: 1.5, + num: 39, + }, + oblivious: { + onUpdate(pokemon) { + if (pokemon.volatiles['attract']) { + this.add('-activate', pokemon, 'ability: Oblivious'); + pokemon.removeVolatile('attract'); + this.add('-end', pokemon, 'move: Attract', '[from] ability: Oblivious'); + } + if (pokemon.volatiles['taunt']) { + this.add('-activate', pokemon, 'ability: Oblivious'); + pokemon.removeVolatile('taunt'); + // Taunt's volatile already sends the -end message when removed + } + }, + onImmunity(type, pokemon) { + if (type === 'attract') return false; + }, + onTryHit(pokemon, target, move) { + if (move.id === 'attract' || move.id === 'captivate' || move.id === 'taunt') { + this.add('-immune', pokemon, '[from] ability: Oblivious'); + return null; + } + }, + onBoost(boost, target, source, effect) { + if (effect.id === 'intimidate') { + delete boost.atk; + this.add('-immune', target, '[from] ability: Oblivious'); + } + if (effect.id === 'demotivate') { + delete boost.spa; + this.add('-immune', target, '[from] ability: Oblivious'); + } + }, + name: "Oblivious", + rating: 1.5, + num: 12, + }, + owntempo: { + onUpdate(pokemon) { + if (pokemon.volatiles['confusion']) { + this.add('-activate', pokemon, 'ability: Own Tempo'); + pokemon.removeVolatile('confusion'); + } + }, + onTryAddVolatile(status, pokemon) { + if (status.id === 'confusion') return null; + }, + onHit(target, source, move) { + if (move?.volatileStatus === 'confusion') { + this.add('-immune', target, 'confusion', '[from] ability: Own Tempo'); + } + }, + onBoost(boost, target, source, effect) { + if (effect.id === 'intimidate') { + delete boost.atk; + this.add('-immune', target, '[from] ability: Own Tempo'); + } + if (effect.id === 'demotivate') { + delete boost.spa; + this.add('-immune', target, '[from] ability: Own Tempo'); + } + }, + name: "Own Tempo", + rating: 1.5, + num: 20, + }, + rattled: { + onDamagingHit(damage, target, source, move) { + if (['Dark', 'Bug', 'Ghost'].includes(move.type)) { + this.boost({spe: 1}); + } + }, + onAfterBoost(boost, target, source, effect) { + if (effect && effect.id === 'intimidate' || effect.id === 'demotivate') { + this.boost({spe: 1}); + } + }, + name: "Rattled", + rating: 1.5, + num: 155, + }, + scrappy: { + onModifyMovePriority: -5, + onModifyMove(move) { + if (!move.ignoreImmunity) move.ignoreImmunity = {}; + if (move.ignoreImmunity !== true) { + move.ignoreImmunity['Fighting'] = true; + move.ignoreImmunity['Normal'] = true; + } + }, + onBoost(boost, target, source, effect) { + if (effect.id === 'intimidate') { + delete boost.atk; + this.add('-immune', target, '[from] ability: Scrappy'); + } + if (effect.id === 'demotivate') { + delete boost.spa; + this.add('-immune', target, '[from] ability: Scrappy'); + } + }, + name: "Scrappy", + rating: 3, + num: 113, + }, + watercompaction: { + shortDesc: "This Pokemon's Defense goes up 1 stage when hit by a Water-type move; Water immunity", + onTryHitPriority: 1, + onTryHit(target, source, move) { + if (target !== source && move.type === 'Water') { + if (!this.boost({def: 1})) { + this.add('-immune', target, '[from] ability: Water Compaction'); + } + return null; + } + }, + onAllyTryHitSide(target, source, move) { + if (target === this.effectData.target || target.side !== source.side) return; + if (move.type === 'Water') { + this.boost({def: 1}, this.effectData.target); + } + }, + name: "Water Compaction", + rating: 3, + num: 195, + }, + pixiepower: { + shortDesc: "This Pokemon's Special Attack is boosted 1.3x in Misty Terrain.", + onModifySpAPriority: 5, + onModifySpA(spa, pokemon) { + if (this.field.isTerrain('mistyterrain')) return this.chainModify(1.3); + }, + name: "Pixie Power", + rating: 3, + }, + mentalhealth: { + shortDesc: "If Psychic Terrain is active, this Pokemon heals 1/12 of its max HP at the end of the turn.", + onResidualOrder: 26, + onResidualSubOrder: 1, + onResidual(pokemon) { + if (this.field.isTerrain('psychicterrain')) { + this.heal(pokemon.baseMaxhp / 12); + } + }, + name: "Mental Health", + rating: 0.5, + }, + powerspot: { + shortDesc: "This Pokemon and its allies have the power of their moves multiplied by 1.3", + onAllyBasePowerPriority: 22, + onAllyBasePower(basePower, attacker, defender, move) { + if (attacker !== this.effectData.target) { + this.debug('Power Spot boost'); + return this.chainModify([0x14CD, 0x1000]); + } + }, + onModifyAtkPriority: 5, + onModifyAtk(atk) { + return this.chainModify(1.3); + }, + onModifySpAPriority: 5, + onModifySpA(spa) { + return this.chainModify(1.3); + }, + name: "Power Spot", + rating: 1, + num: 249, + }, + normalize: { + shortDesc: "All of this Pokemon's moves are Normal-type and have doubled power.", + onModifyTypePriority: 1, + onModifyType(move, pokemon) { + const noModifyType = [ + 'hiddenpower', 'judgment', 'multiattack', 'naturalgift', 'revelationdance', 'struggle', 'technoblast', 'terrainpulse', 'weatherball', 'adaptableattack', + ]; + if (!(move.isZ && move.category !== 'Status') && !noModifyType.includes(move.id)) { + move.type = 'Normal'; + move.normalizeBoosted = true; + } + }, + onBasePowerPriority: 23, + onBasePower(basePower, pokemon, target, move) { + if (move.normalizeBoosted) return this.chainModify(2); + }, + name: "Normalize", + rating: 4, + num: 96, + }, + honeygather: { + shortDesc: "This Pokemon heals 1/8 of its max HP if it's holding Honey.", + onResidualOrder: 26, + onResidualSubOrder: 1, + onResidual(pokemon) { + if (pokemon.hasItem('honey')) { + this.heal(pokemon.baseMaxhp / 8); + } + }, + name: "Honey Gather", + rating: 2, + num: 118, + }, + leafguard: { + shortDesc: "If Sunny Day is active, this Pokemon heals its status at the end of the turn.", + onResidualOrder: 5, + onResidualSubOrder: 4, + onResidual(pokemon) { + if (pokemon.status && ['sunnyday', 'desolateland'].includes(pokemon.effectiveWeather())) { + this.debug('leafguard'); + this.add('-activate', pokemon, 'ability: Leaf Guard'); + pokemon.cureStatus(); + } + }, + name: "Leaf Guard", + rating: 1.5, + num: 102, + }, + sealaway: { + shortDesc: "On switch-in, this Pokemon uses Imprison.", + onStart(source) { + this.useMove("Imprison", source); + }, + name: "Seal Away", + rating: 3, + }, + asoneglastrier: { + shortDesc: "The combined effects of Unnerve, Harvester, and Chilling Neigh.", + onPreStart(pokemon) { + this.add('-ability', pokemon, 'As One'); + this.add('-ability', pokemon, 'Unnerve', pokemon.side.foe); + }, + onFoeTryEatItem: false, + onSourceAfterFaint(length, target, source, effect) { + if (effect && effect.effectType === 'Move') { + this.boost({atk: length}, source, source, this.dex.getAbility('chillingneigh')); + } + }, + onModifyAtkPriority: 5, + onModifyAtk(atk, attacker, defender, move) { + if (move.type === 'Grass') { + this.debug('Harvester boost'); + return this.chainModify(1.5); + } + }, + onModifySpAPriority: 5, + onModifySpA(atk, attacker, defender, move) { + if (move.type === 'Grass') { + this.debug('Harvester boost'); + return this.chainModify(1.5); + } + }, + isPermanent: true, + name: "As One (Glastrier)", + rating: 3.5, + num: 266, + }, + asonespectrier: { + shortDesc: "The combined effects of Unnerve, Harvester, and Grim Neigh.", + onPreStart(pokemon) { + this.add('-ability', pokemon, 'As One'); + this.add('-ability', pokemon, 'Unnerve', pokemon.side.foe); + }, + onFoeTryEatItem: false, + onSourceAfterFaint(length, target, source, effect) { + if (effect && effect.effectType === 'Move') { + this.boost({spa: length}, source, source, this.dex.getAbility('grimneigh')); + } + }, + onModifyAtkPriority: 5, + onModifyAtk(atk, attacker, defender, move) { + if (move.type === 'Grass') { + this.debug('Harvester boost'); + return this.chainModify(1.5); + } + }, + onModifySpAPriority: 5, + onModifySpA(atk, attacker, defender, move) { + if (move.type === 'Grass') { + this.debug('Harvester boost'); + return this.chainModify(1.5); + } + }, + isPermanent: true, + name: "As One (Spectrier)", + rating: 3.5, + num: 267, + }, + dragonsmaw: { + shortDesc: "This Pokemon's biting moves become Dragon-type and have 1.2x power.", + onModifyTypePriority: -1, + onModifyType(move, pokemon) { + if (move.flags['bite'] && !pokemon.volatiles['dynamax']) { // hardcode + move.type = 'Dragon'; + } + }, + onBasePowerPriority: 19, + onBasePower(basePower, attacker, defender, move) { + if (move.flags['bite']) { + return this.chainModify(1.2); + } + }, + name: "Dragon's Maw", + rating: 3.5, + num: 263, + }, + transistor: { + shortDesc: "This Pokemon's bullet moves become Electric-type and have 1.2x power.", + onModifyTypePriority: -1, + onModifyType(move, pokemon) { + if (move.flags['bullet'] && !pokemon.volatiles['dynamax']) { // hardcode + move.type = 'Electric'; + } + }, + onBasePowerPriority: 19, + onBasePower(basePower, attacker, defender, move) { + if (move.flags['bullet']) { + return this.chainModify(1.2); + } + }, + name: "Transistor", + rating: 3.5, + num: 262, + }, + flareboost: { + shortDesc: "When burned, this Pokemon's SpA is boosted 1.5x and heals 1/16 of its max HP per turn.", + onBasePowerPriority: 19, + onBasePower(basePower, attacker, defender, move) { + if (attacker.status === 'brn' && move.category === 'Special') { + return this.chainModify(1.5); + } + }, + onDamagePriority: 1, + onDamage(damage, target, source, effect) { + if (effect.id === 'brn') { + this.heal(target.baseMaxhp / 16); + return false; + } + }, + name: "Flare Boost", + rating: 5, + num: 138, + }, + toxicboost: { + shortDesc: "When poisoned, this Pokemon's Atk is boosted 1.5x and heals 1/16 of its max HP per turn.", + onBasePowerPriority: 19, + onBasePower(basePower, attacker, defender, move) { + if ((attacker.status === 'psn' || attacker.status === 'tox') && move.category === 'Physical') { + return this.chainModify(1.5); + } + }, + onDamagePriority: 1, + onDamage(damage, target, source, effect) { + if (effect.id === 'psn' || effect.id === 'tox') { + this.heal(target.baseMaxhp / 16); + return false; + } + }, + name: "Toxic Boost", + rating: 5, + num: 137, + }, + anticipation: { + shortDesc: "This Pokemon takes 75% damage from super effective moves and shudders on switch-in if the opposing Pokemon has one", + onStart(pokemon) { + for (const target of pokemon.side.foe.active) { + if (!target || target.fainted) continue; + for (const moveSlot of target.moveSlots) { + const move = this.dex.getMove(moveSlot.move); + if (move.category === 'Status') continue; + const moveType = move.id === 'hiddenpower' ? target.hpType : move.type; + if ( + this.dex.getImmunity(moveType, pokemon) && this.dex.getEffectiveness(moveType, pokemon) > 0 || + move.ohko + ) { + this.add('-ability', pokemon, 'Anticipation'); + return; + } + } + } + }, + onSourceModifyDamage(damage, source, target, move) { + if (target.getMoveHitData(move).typeMod > 0) { + this.debug('Anticipation neutralize'); + return this.chainModify(0.75); + } + }, + name: "Anticipation", + rating: 2.5, + num: 107, + }, + forecast: { + onUpdate(pokemon) { + if (pokemon.baseSpecies.baseSpecies !== 'Castform' || pokemon.transformed) return; + let forme = null; + switch (pokemon.effectiveWeather()) { + case 'sunnyday': + case 'desolateland': + if (pokemon.species.id !== 'castformsunny') forme = 'Castform-Sunny'; + break; + case 'raindance': + case 'primordialsea': + if (pokemon.species.id !== 'castformrainy') forme = 'Castform-Rainy'; + break; + case 'hail': + if (pokemon.species.id !== 'castformsnowy') forme = 'Castform-Snowy'; + break; + case 'sandstorm': + if (pokemon.species.id !== 'castformsandy') forme = 'Castform-Sandy'; + break; + default: + if (pokemon.species.id !== 'castform') forme = 'Castform'; + break; + } + if (pokemon.isActive && forme) { + pokemon.formeChange(forme, this.effect, false, '[msg]'); + } + }, + name: "Forecast", + rating: 2, + num: 59, + }, + liquidvoice: { + shortDesc: "This Pokemon's sound moves become Water-type and have 1.2x power.", + onModifyTypePriority: -1, + onModifyType(move, pokemon) { + if (move.flags['sound'] && !pokemon.volatiles['dynamax']) { // hardcode + move.type = 'Water'; + } + }, + onBasePowerPriority: 19, + onBasePower(basePower, attacker, defender, move) { + if (move.flags['sound']) { + return this.chainModify(1.2); + } + }, + name: "Liquid Voice", + rating: 3.5, + num: 204, + }, + galewings: { + shortDesc: "This Pokemon's Flying-type moves have +1 priority when this Pokemon is above 50% HP.", + onModifyPriority(priority, pokemon, target, move) { + if (move?.type === 'Flying' && pokemon.hp >= pokemon.maxhp / 2) return priority + 1; + }, + name: "Gale Wings", + rating: 3, + num: 177, + }, + /* + zenmode: { + shortDesc: "This Pokemon enters Zen Mode on switch-in", + onStart(pokemon) { + if (pokemon.baseSpecies.baseSpecies !== 'Darmanitan' || pokemon.transformed) return; + if (pokemon.species.forme !== 'Zen') { + pokemon.formeChange('Darmanitan-Zen'); + } + else { + if (pokemon.species.forme === 'Zen') { + pokemon.formeChange(pokemon.set.species); + } + } + }, + isPermanent: true, + name: "Zen Mode", + rating: 0, + num: 161, + }, + + iceface: { + onDamagePriority: 1, + onDamage(damage, target, source, effect) { + if ( + effect && effect.effectType === 'Move' && + ['eiscue'].includes(target.species.id) && !target.transformed + ) { + this.add('-activate', target, 'ability: Ice Face'); + this.effectData.busted = true; + return 0; + } + }, + onCriticalHit(target, source, move) { + if (!target) return; + if (!['eiscue'].includes(target.species.id) || target.transformed) { + return; + } + const hitSub = target.volatiles['substitute'] && !move.flags['authentic'] && !(move.infiltrates && this.gen >= 6); + if (hitSub) return; + + if (!target.runImmunity(move.type)) return; + return false; + }, + onEffectiveness(typeMod, target, type, move) { + if (!target) return; + if (!['eiscue'].includes(target.species.id) || target.transformed) { + return; + } + const hitSub = target.volatiles['substitute'] && !move.flags['authentic'] && !(move.infiltrates && this.gen >= 6); + if (hitSub) return; + + if (!target.runImmunity(move.type)) return; + return 0; + }, + onUpdate(pokemon) { + if (['eiscue'].includes(pokemon.species.id) && this.effectData.busted) { + const speciesid = pokemon.species.id === 'eiscue' : 'Eiscue-Noice'; + pokemon.formeChange(speciesid, this.effect, true); + this.damage(pokemon.baseMaxhp / 8, pokemon, pokemon, this.dex.getSpecies(speciesid)); + } + }, + isPermanent: true, + name: "Ice Face", + rating: 3.5, + num: 248, + }, +*/ + elementalteething: { + shortDesc: "This Pokemon's type changes before using a move and its biting moves are boosted 1.2x", + onPrepareHit(source, target, move) { + if (move.hasBounced) return; + const type = move.type; + if (type && type !== '???' && source.getTypes().join() !== type) { + if (!source.setType(type)) return; + this.add('-start', source, 'typechange', type, '[from] ability: Elemental Teething'); + } + }, + onBasePowerPriority: 19, + onBasePower(basePower, attacker, defender, move) { + if (move.flags['bite']) { + return this.chainModify(1.2); + } + }, + name: "Elemental Teething", + rating: 4.5, + }, + maximumpotential: { + shortDesc: "This Pokemon is immune to the same moves Dynamax Pokemon are immune to.", + onTryHit(pokemon, target, move) { + if (move.name === 'Knock Off' || move.name === 'Low Kick' || move.name === 'Heat Crash' || move.name === 'Grass Knot' || move.name === 'Heavy Slam' || move.name === 'Pluck' || move.name === 'Bug Bite' || move.name === 'Incinerate' || move.name === 'Thief' || move.name === 'Covet' || move.name === 'Horn Drill' || move.name === 'Sheer Cold' || move.name === 'Guillotine' || move.name === 'Fissure' || move.name === 'Sky Drop' || move.name === 'Skill Swap' || move.name === 'Entrainment') { + this.add('-immune', pokemon, '[from] ability: Maximum Potential'); + return null; + } + }, + onTryAddVolatile(status, pokemon) { + if (status.id === 'flinch' || status.id === 'disable') return null; + }, + onDragOutPriority: 1, + onDragOut(pokemon) { + this.add('-activate', pokemon, 'ability: Maximum Potential'); + return null; + }, + name: "Maximum Potential", + rating: 3, + }, +}; diff --git a/data/mods/pkmnybv2/conditions.ts b/data/mods/pkmnybv2/conditions.ts new file mode 100644 index 0000000000..3b319dea13 --- /dev/null +++ b/data/mods/pkmnybv2/conditions.ts @@ -0,0 +1,26 @@ +export const Conditions: {[k: string]: ConditionData} = { + par: { + name: 'par', + effectType: 'Status', + onStart(target, source, sourceEffect) { + if (sourceEffect && sourceEffect.effectType === 'Ability') { + this.add('-status', target, 'par', '[from] ability: ' + sourceEffect.name, '[of] ' + source); + } else { + this.add('-status', target, 'par'); + } + }, + onModifySpe(spe, pokemon) { + if (!pokemon.hasAbility('quickfeet')) { + return this.chainModify(0.5); + } + }, + onBeforeMovePriority: 1, + onBeforeMove(pokemon) { + if (pokemon.hasAbility('quickfeet')) return; + if (this.randomChance(1, 4)) { + this.add('cant', pokemon, 'par'); + return false; + } + }, + }, + }; diff --git a/data/mods/pkmnybv2/formats-data.ts b/data/mods/pkmnybv2/formats-data.ts new file mode 100644 index 0000000000..bd19d4516d --- /dev/null +++ b/data/mods/pkmnybv2/formats-data.ts @@ -0,0 +1,1048 @@ +export const FormatsData: {[k: string]: SpeciesFormatsData} = { + // New Mons + synthinobi: { + tier: "YB", + doublesTier: "DYB", + }, + chemicander: { + tier: "YB", + doublesTier: "DYB", + }, + primadillo: { + tier: "YB", + doublesTier: "DYB", + }, + bersawk: { + tier: "YB", + doublesTier: "DYB", + }, + electzal: { + tier: "YB", + doublesTier: "DYB", + }, + pyrogrine: { + tier: "YB", + doublesTier: "DYB", + }, + chompean: { + tier: "YB", + doublesTier: "DYB", + }, + mothicoal: { + tier: "YB", + doublesTier: "DYB", + }, + neurowatt: { + tier: "YB", + doublesTier: "DYB", + }, + menursa: { + tier: "YB", + doublesTier: "DYB", + }, + bloomivolt: { + tier: "YB", + doublesTier: "DYB", + }, + muaytiger: { + tier: "YB", + doublesTier: "DYB", + }, + razorine: { + tier: "YB", + doublesTier: "DYB", + }, + hareloom: { + tier: "YB", + doublesTier: "DYB", + }, + frospherous: { + tier: "YB", + doublesTier: "DYB", + }, + arbborry: { + tier: "YB", + doublesTier: "DYB", + }, + mustellar: { + tier: "YB", + doublesTier: "DYB", + }, + wolverflare: { + tier: "YB", + doublesTier: "DYB", + }, + photyrant: { + tier: "YB", + doublesTier: "DYB", + }, + ghoulgoyle: { + tier: "YB", + doublesTier: "DYB", + }, + cortefauna: { + tier: "YB", + doublesTier: "DYB", + }, + gammaroo: { + tier: "YB", + doublesTier: "DYB", + }, + serpentorch: { + tier: "YB", + doublesTier: "DYB", + }, + kaclash: { + tier: "YB", + doublesTier: "DYB", + }, + solinira: { + tier: "YB", + doublesTier: "DYB", + }, + zapish: { + tier: "YB", + doublesTier: "DYB", + }, + sanatee: { + tier: "YB", + doublesTier: "DYB", + }, + glaciarch: { + tier: "YB", + doublesTier: "DYB", + }, + creaviary: { + tier: "YB", + doublesTier: "DYB", + }, + plummuse: { + tier: "YB", + doublesTier: "DYB", + }, + sparsqueak: { + tier: "YB", + doublesTier: "DYB", + }, + darsqueak: { + tier: "YB", + doublesTier: "DYB", + }, + giraflame: { + tier: "YB", + doublesTier: "DYB", + }, + lycacia: { + tier: "YB", + doublesTier: "DYB", + }, + remodile: { + tier: "YB", + doublesTier: "DYB", + }, + petrasapien: { + tier: "YB", + doublesTier: "DYB", + }, + petradvena: { + tier: "YB", + doublesTier: "DYB", + }, + fyrecho: { + tier: "YB", + doublesTier: "DYB", + }, + osprime: { + tier: "YB", + doublesTier: "DYB", + }, + buffalocean: { + tier: "YB", + doublesTier: "DYB", + }, + ingarde: { + tier: "YB", + doublesTier: "DYB", + }, + venometta: { + tier: "YB", + doublesTier: "DYB", + }, + nimbless: { + tier: "YB", + doublesTier: "DYB", + }, + frixen: { + tier: "YB", + doublesTier: "DYB", + }, + necrice: { + tier: "YB", + doublesTier: "DYB", + }, + goblizz: { + tier: "YB", + doublesTier: "DYB", + }, + ptarabola: { + tier: "YB", + doublesTier: "DYB", + }, + dominidon: { + tier: "YB", + doublesTier: "DYB", + }, + poufos: { + tier: "YB", + doublesTier: "DYB", + }, + balatadi: { + tier: "YB", + doublesTier: "DYB", + }, + ultratom: { + tier: "YB", + doublesTier: "DYB", + }, + frostonna: { + tier: "YB", + doublesTier: "DYB", + }, + geareon: { + tier: "YB", + doublesTier: "DYB", + }, + mytheon: { + tier: "YB", + doublesTier: "DYB", + }, + +// New Megas + butterfreemega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + tentacruelmega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + meganiummega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + typhlosionmega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + feraligatrmega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + slowkingmega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + granbullmega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + miloticmega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + dusknoirmega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + froslassmega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + drapionmega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + cinccinomega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + hydregionmega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + talonflamemega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + malamarmega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + shiinoticmega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + bewearmega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + thievulmega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + duraludonmega: { + tier: "YB Megas", + doublesTier: "DYB Megas", + }, + +// NatDex Mons +beedrill: { + tier: "UU", + doublesTier: "DOU", +}, +beedrillmega: { + tier: "OU", + doublesTier: "DOU", +}, +pidgeot: { + tier: "UU", + doublesTier: "DOU", +}, +pidgeotmega: { + tier: "UU", + doublesTier: "DOU", +}, +charizardmegax: { + tier: "OU", + doublesTier: "DOU", +}, +charizardmegay: { + tier: "OU", + doublesTier: "DOU", +}, +venusaurmega: { + tier: "OU", + doublesTier: "DOU", +}, +blastoisemega: { + tier: "OU", + doublesTier: "DUber", +}, +alakazammega: { + tier: "Uber", + doublesTier: "DOU", +}, +gengarmega: { + tier: "Uber", + doublesTier: "DOU", +}, +lucariomega: { + tier: "Uber", + doublesTier: "DOU", +}, +raticate: { + tier: "UU", + doublesTier: "DOU", +}, +raticatealola: { + tier: "UU", + doublesTier: "DOU", +}, +fearow: { + tier: "UU", + doublesTier: "DOU", +}, +arbok: { + tier: "UU", + doublesTier: "DOU", +}, +parasect: { + tier: "UU", + doublesTier: "DOU", +}, +venomoth: { + tier: "UU", + doublesTier: "DOU", +}, +primeape: { + tier: "UU", + doublesTier: "DOU", +}, +victreebel: { + tier: "UU", + doublesTier: "DOU", +}, +golem: { + tier: "UU", + doublesTier: "DOU", +}, +golemalola: { + tier: "UU", + doublesTier: "DOU", +}, +dodrio: { + tier: "UU", + doublesTier: "DOU", +}, +dewgong: { + tier: "UU", + doublesTier: "DOU", +}, +muk: { + tier: "UU", + doublesTier: "DOU", +}, +mukalola: { + tier: "UU", + doublesTier: "DOU", +}, +hypno: { + tier: "UU", + doublesTier: "DOU", +}, +electrode: { + tier: "UU", + doublesTier: "DOU", +}, +meganium: { + tier: "UU", + doublesTier: "DOU", +}, +feraligatr: { + tier: "UU", + doublesTier: "DOU", +}, +typhlosion: { + tier: "UU", + doublesTier: "DOU", +}, +furret: { + tier: "UU", + doublesTier: "DOU", +}, +ledian: { + tier: "UU", + doublesTier: "DOU", +}, +ariados: { + tier: "UU", + doublesTier: "DOU", +}, +ampharos: { + tier: "UU", + doublesTier: "DOU", +}, +ampharosmega: { + tier: "UU", + doublesTier: "DOU", +}, +jumpluff: { + tier: "UU", + doublesTier: "DOU", +}, +aipom: { + tier: "NFE", + doublesTier: "DOU", +}, +ambipom: { + tier: "UU", + doublesTier: "DOU", +}, +sunflora: { + tier: "UU", + doublesTier: "DOU", +}, +yanma: { + tier: "NFE", + doublesTier: "DOU", +}, +yanmega: { + tier: "UU", + doublesTier: "DOU", +}, +murkrow: { + tier: "NFE", + doublesTier: "DOU", +}, +misdreavus: { + tier: "NFE", + doublesTier: "DOU", +}, +mismagius: { + tier: "UU", + doublesTier: "DOU", +}, +honchkrow: { + tier: "UU", + doublesTier: "DOU", +}, +girafarig: { + tier: "UU", + doublesTier: "DOU", +}, +forretress: { + tier: "UU", + doublesTier: "DOU", +}, +gligar: { + tier: "UU", + doublesTier: "DOU", +}, +gliscor: { + tier: "OU", + doublesTier: "DOU", +}, +granbull: { + tier: "UU", + doublesTier: "DOU", +}, +ursaring: { + tier: "UU", + doublesTier: "DOU", +}, +magcargo: { + tier: "UU", + doublesTier: "DOU", +}, +houndoom: { + tier: "UU", + doublesTier: "DOU", +}, +houndoommega: { + tier: "UU", + doublesTier: "DOU", +}, +donphan: { + tier: "OU", + doublesTier: "DOU", +}, +stantler: { + tier: "UU", + doublesTier: "DOU", +}, +smeargle: { + tier: "OU", + doublesTier: "DOU", +}, +mightyena: { + tier: "UU", + doublesTier: "DOU", +}, +beautifly: { + tier: "UU", + doublesTier: "DOU", +}, +dustox: { + tier: "UU", + doublesTier: "DOU", +}, +swellow: { + tier: "UU", + doublesTier: "DOU", +}, +masquerain: { + tier: "UU", + doublesTier: "DOU", +}, +breloom: { + tier: "OU", + doublesTier: "DOU", +}, +vigoroth: { + tier: "NFE", + doublesTier: "DOU", +}, +slaking: { + tier: "UU", + doublesTier: "DOU", +}, +hariyama: { + tier: "UU", + doublesTier: "DOU", +}, +probopass: { + tier: "UU", + doublesTier: "DOU", +}, +delcatty: { + tier: "OU", + doublesTier: "DOU", +}, +skitty: { + tier: "LC", + doublesTier: "DOU", +}, +medicham: { + tier: "UU", + doublesTier: "DOU", +}, +medichammega: { + tier: "OU", + doublesTier: "DOU", +}, +gyaradosmega: { + tier: "OU", + doublesTier: "DOU", +}, +gallademega: { + tier: "OU", + doublesTier: "DOU", +}, +gardevoirmega: { + tier: "OU", + doublesTier: "DOU", +}, +glaliemega: { + tier: "UU", + doublesTier: "DOU", +}, +aggronmega: { + tier: "UU", + doublesTier: "DOU", +}, +manectricmega: { + tier: "UU", + doublesTier: "DOU", +}, +heracrossmega: { + tier: "OU", + doublesTier: "DOU", +}, +pinsirmega: { + tier: "OU", + doublesTier: "DOU", +}, +scizormega: { + tier: "OU", + doublesTier: "DOU", +}, +cameruptmega: { + tier: "UU", + doublesTier: "DOU", +}, +camerupt: { + tier: "UU", + doublesTier: "DOU", +}, +plusle: { + tier: "UU", + doublesTier: "DOU", +}, +minun: { + tier: "UU", + doublesTier: "DOU", +}, +volbeat: { + tier: "UU", + doublesTier: "DOU", +}, +illumise: { + tier: "UU", + doublesTier: "DOU", +}, +swalot: { + tier: "UU", + doublesTier: "DOU", +}, +grumpig: { + tier: "UU", + doublesTier: "DOU", +}, +spinda: { + tier: "UU", + doublesTier: "DOU", +}, +cacturne: { + tier: "UU", + doublesTier: "DOU", +}, +zangoose: { + tier: "UU", + doublesTier: "DOU", +}, +seviper: { + tier: "UU", + doublesTier: "DOU", +}, +audinomega: { + tier: "UU", + doublesTier: "DOU", +}, +castform: { + tier: "UU", + doublesTier: "DOU", +}, +kecleon: { + tier: "UU", + doublesTier: "DOU", +}, +banette: { + tier: "UU", + doublesTier: "DOU", +}, +banettemega: { + tier: "UU", + doublesTier: "DOU", +}, +tropius: { + tier: "UU", + doublesTier: "DOU", +}, +chimecho: { + tier: "UU", + doublesTier: "DOU", +}, +clamperl: { + tier: "LC", + doublesTier: "DOU", +}, +huntail: { + tier: "UU", + doublesTier: "DOU", +}, +gorebyss: { + tier: "UU", + doublesTier: "DOU", +}, +luvdisc: { + tier: "LC", + doublesTier: "DOU", +}, +alomomola: { + tier: "OU", + doublesTier: "DOU", +}, +deoxys: { + tier: "OU", + doublesTier: "DUber", +}, +deoxysdefense: { + tier: "UU", + doublesTier: "DUber", +}, +torterra: { + tier: "UU", + doublesTier: "DOU", +}, +empoleon: { + tier: "UU", + doublesTier: "DOU", +}, +infernape: { + tier: "OU", + doublesTier: "DOU", +}, +blazikenmega: { + tier: "Uber", + doublesTier: "DUber", +}, +staraptor: { + tier: "OU", + doublesTier: "DOU", +}, +bibarel: { + tier: "UU", + doublesTier: "DOU", +}, +kricketune: { + tier: "UU", + doublesTier: "DOU", +}, +rampardos: { + tier: "UU", + doublesTier: "DOU", +}, +bastiodon: { + tier: "UU", + doublesTier: "DOU", +}, +wormadam: { + tier: "UU", + doublesTier: "DOU", +}, +wormadamsandy: { + tier: "UU", + doublesTier: "DOU", +}, +wormadamtrash: { + tier: "UU", + doublesTier: "DOU", +}, +mothim: { + tier: "UU", + doublesTier: "DOU", +}, +pachirisu: { + tier: "UU", + doublesTier: "DOU", +}, +floatzel: { + tier: "UU", + doublesTier: "DOU", +}, +purugly: { + tier: "UU", + doublesTier: "DOU", +}, +chatot: { + tier: "UU", + doublesTier: "DOU", +}, +carnivine: { + tier: "UU", + doublesTier: "DOU", +}, +dianciemega: { + tier: "UU", + doublesTier: "DOU", +}, +lumineon: { + tier: "UU", + doublesTier: "DOU", +}, +phione: { + tier: "UU", + doublesTier: "DOU", +}, +manaphy: { + tier: "UU", + doublesTier: "DOU", +}, +shaymin: { + tier: "UU", + doublesTier: "DOU", +}, +serperior: { + tier: "OU", + doublesTier: "DOU", +}, +servine: { + tier: "NFE", + doublesTier: "DOU", +}, +emboar: { + tier: "UU", + doublesTier: "DOU", +}, +samurott: { + tier: "UU", + doublesTier: "DOU", +}, +watchog: { + tier: "UU", + doublesTier: "DOU", +}, +simisage: { + tier: "UU", + doublesTier: "DOU", +}, +simipour: { + tier: "UU", + doublesTier: "DOU", +}, +simisear: { + tier: "UU", + doublesTier: "DOU", +}, +zebstrika: { + tier: "UU", + doublesTier: "DOU", +}, +leavanny: { + tier: "UU", + doublesTier: "DOU", +}, +swanna: { + tier: "UU", + doublesTier: "DOU", +}, +sawsbuck: { + tier: "UU", + doublesTier: "DOU", +}, +eelektross: { + tier: "UU", + doublesTier: "DOU", +}, +meloetta: { + tier: "UU", + doublesTier: "DOU", +}, +meloettapirouette: { + tier: "OU", + doublesTier: "DOU", +}, +chesnaught: { + tier: "UU", + doublesTier: "DOU", +}, +delphox: { + tier: "UU", + doublesTier: "DOU", +}, +greninjaash: { + tier: "OU", + doublesTier: "DOU", +}, +greninja: { + tier: "OU", + doublesTier: "DOU", +}, +vivillon: { + tier: "UU", + doublesTier: "DOU", +}, +pyroar: { + tier: "UU", + doublesTier: "DOU", +}, +florges: { + tier: "UU", + doublesTier: "DOU", +}, +floetteeternal: { + tier: "UU", + doublesTier: "DOU", +}, +gogoat: { + tier: "UU", + doublesTier: "DOU", +}, +furfrou: { + tier: "UU", + doublesTier: "DOU", +}, +hoopa: { + tier: "UU", + doublesTier: "DOU", +}, +hoopaunbound: { + tier: "OU", + doublesTier: "DOU", +}, +toucannon: { + tier: "UU", + doublesTier: "DOU", +}, +gumshoos: { + tier: "UU", + doublesTier: "DOU", +}, +crabominable: { + tier: "UU", + doublesTier: "DOU", +}, +oricorio: { + tier: "UU", + doublesTier: "DOU", +}, +oricoriopompom: { + tier: "UU", + doublesTier: "DOU", +}, +oricoriopau: { + tier: "UU", + doublesTier: "DOU", +}, +oricoriosensu: { + tier: "UU", + doublesTier: "DOU", +}, +minior: { + tier: "UU", + doublesTier: "DOU", +}, +komala: { + tier: "UU", + doublesTier: "DOU", +}, +bruxish: { + tier: "UU", + doublesTier: "DOU", +}, +lopunnymega: { + tier: "OU", + doublesTier: "DOU", +}, +aerodactylmega: { + tier: "OU", + doublesTier: "DOU", +}, +tyranitarmega: { + tier: "UU", + doublesTier: "DOU", +}, +mawilemega: { + tier: "OU", + doublesTier: "DOU", +}, +sableyemega: { + tier: "OU", + doublesTier: "DOU", +}, +absolmega: { + tier: "UU", + doublesTier: "DOU", +}, +latiosmega: { + tier: "OU", + doublesTier: "DOU", +}, +latiasmega: { + tier: "OU", + doublesTier: "DOU", +}, +garchompmega: { + tier: "OU", + doublesTier: "DOU", +}, +abomasnowmega: { + tier: "UU", + doublesTier: "DOU", +}, +slowbromega: { + tier: "OU", + doublesTier: "DOU", +}, +steelixmega: { + tier: "UU", + doublesTier: "DOU", +}, +sceptilemega: { + tier: "UU", + doublesTier: "DOU", +}, +swampertmega: { + tier: "OU", + doublesTier: "DOU", +}, +sharpedomega: { + tier: "UU", + doublesTier: "DOU", +}, +altariamega: { + tier: "UU", + doublesTier: "DOU", +}, +metagrossmega: { + tier: "Uber", + doublesTier: "DOU", +}, +shayminsky: { + tier: "OU", + doublesTier: "DOU", +}, +darmanitangalar: { + tier: "OU", + doublesTier: "DOU", +}, +cinderace: { + tier: "OU", + doublesTier: "DOU", +}, +dracovish: { + tier: "OU", + doublesTier: "DOU", +}, + +}; diff --git a/data/mods/pkmnybv2/items.ts b/data/mods/pkmnybv2/items.ts new file mode 100644 index 0000000000..20d0c294e0 --- /dev/null +++ b/data/mods/pkmnybv2/items.ts @@ -0,0 +1,598 @@ +export const Items: {[k: string]: ModdedItemData} = { + honey: { + name: "Honey", + fling: { + basePower: 20, + }, + num: -1005, + gen: 4, + shortDesc: "Pokemon with the ability Honey Gather heal 12.5% when holding this item.", + }, + reliccharm: { + name: "Relic Charm", + spritenum: 390, + onSwitchIn(pokemon) { + if (pokemon.isActive && pokemon.baseSpecies.name === 'Meloetta') { + pokemon.formeChange('Meloetta-Pirouette'); + } + }, + onBasePower(basePower, user, target, move) { + if (move && move.type === 'Fighting') { + return this.chainModify([0x1333, 0x1000]); + } + }, + onTakeItem(item, source) { + if (source.baseSpecies.baseSpecies === 'Meloetta') return false; + return true; + }, + itemUser: ["Meloetta"], + num: -1006, + gen: 8, + desc: "If held by Meloetta: Pirouette Forme on entry, 1.2x power Fighting-type attacks.", + }, + eternamaxcandy: { + name: "Eternamax Candy", + onSwitchIn(pokemon) { + if (pokemon.isActive && pokemon.baseSpecies.name === 'Eternatus') { + pokemon.formeChange('Eternatus-Eternamax'); + } + }, + onTakeItem(item, source) { + if (source.baseSpecies.baseSpecies === 'Eternatus') return false; + return true; + }, + itemUser: ["Eternatus"], + num: -1007, + gen: 8, + desc: "If held by Eternatus: Eternamaxes on entry.", + }, + electirizer: { + name: "Electirizer", + spritenum: 119, + fling: { + basePower: 80, + }, + onBasePowerPriority: 15, + onBasePower(basePower, user, target, move) { + if (user.baseSpecies.num === 466 && (move.type === 'Electric' || move.type === 'Fighting')) { + return this.chainModify([0x1333, 0x1000]); + } + }, + onTakeItem(item, source) { + if (source.baseSpecies.baseSpecies === 'Electivire') return false; + return true; + }, + itemUser: ["Electivire"], + num: 322, + gen: 4, + desc: "If held by Electivire: 1.2x power on Electric and Fighting-type moves.", + }, + magmarizer: { + name: "Magmarizer", + spritenum: 272, + fling: { + basePower: 80, + }, + onBasePowerPriority: 15, + onBasePower(basePower, user, target, move) { + if (user.baseSpecies.num === 467 && (move.type === 'Fire' || move.type === 'Dark')) { + return this.chainModify([0x1333, 0x1000]); + } + }, + onTakeItem(item, source) { + if (source.baseSpecies.baseSpecies === 'Magmortar') return false; + return true; + }, + itemUser: ["Magmortar"], + num: 323, + gen: 4, + desc: "If held by Magmortar: 1.2x power on Fire and Dark-type moves.", + }, + frosterizer: { + name: "Frosterizer", + spritenum: 272, + fling: { + basePower: 80, + }, + onBasePowerPriority: 15, + onBasePower(basePower, user, target, move) { + if (user.baseSpecies.num === 8998 && (move.type === 'Ice' || move.type === 'Psychic')) { + return this.chainModify([0x1333, 0x1000]); + } + }, + onTakeItem(item, source) { + if (source.baseSpecies.baseSpecies === 'Frostonna') return false; + return true; + }, + itemUser: ["Frostonna"], + num: -1008, + gen: 8, + desc: "If held by Frostonna: 1.2x power on Ice and Psychic-type moves.", + }, + stunorb: { + name: "Stun Orb", + spritenum: 515, + fling: { + basePower: 30, + status: 'par', + }, + onResidualOrder: 26, + onResidualSubOrder: 2, + onResidual(pokemon) { + pokemon.trySetStatus('par', pokemon); + }, + num: -1009, + gen: 8, + desc: "Attempts to paralyze holder at the end of every turn.", + }, + +// Z-Crystals + rhyperiumz: { + name: "Rhyperium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Cobblestone Carnage", + zMoveFrom: "Rock Wrecker", + itemUser: ["Rhyperior"], + num: -1029, + gen: 8, + desc: "If held by a Rhyperior with Rock Wrecker, allows it to use the Z-Move Cobblestone Carnage.", + }, + lickilickiumz: { + name: "Lickilickium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Tongue-Tied Tirade", + zMoveFrom: "Body Slam", + itemUser: ["Lickilicky"], + num: -1030, + gen: 8, + desc: "If held by a Lickilicky with Body Slam, allows it to use the Z-Move Tongue-Tied Tirade.", + }, + honchkriumz: { + name: "Honchkrium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Crow's Calling Card", + zMoveFrom: "Sucker Punch", + itemUser: ["Honchkrow"], + num: -1031, + gen: 8, + desc: "If held by a Honchkrow with Sucker Punch, allows it to use the Z-Move Crow's Calling Card.", + }, + mismagiumz: { + name: "Mismagium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Witches' Wishes", + zMoveFrom: "Shadow Ball", + itemUser: ["Mismagius"], + num: -1032, + gen: 8, + desc: "If held by a Mismagius with Shadow Ball, allows it to use the Z-Move Witches' Wishes.", + }, + roseradiumz: { + name: "Roseradium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Lily's Last Dance", + zMoveFrom: "Sludge Bomb", + itemUser: ["Roserade"], + num: -1033, + gen: 8, + desc: "If held by a Roserade with Sludge Bomb, allows it to use the Z-Move Lily's Last Dance.", + }, + walreiniumz: { + name: "Walreinium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Ice Age Reign", + zMoveFrom: "Ice Beam", + itemUser: ["Walrein"], + num: -1034, + gen: 8, + desc: "If held by a Walrein with Ice Beam, allows it to use the Z-Move Ice Age Reign.", + }, + cherriumz: { + name: "Cherrium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Salute to Sunshine", + zMoveFrom: "Solar Blade", + itemUser: ["Cherrim"], + num: -1035, + gen: 8, + desc: "If held by a Cherrim with Solar Blade, allows it to use the Z-Move Salute to Sunshine.", + }, + vespiumz: { + name: "Vespium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Hectic Hivemind", + zMoveFrom: "Attack Order", + itemUser: ["Vespiquen"], + num: -1036, + gen: 8, + desc: "If held by a Vespiquen with Attack Order, allows it to use the Z-Move Hectic Hivemind.", + }, + krookiumz: { + name: "Krookium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Desert Disaster", + zMoveFrom: "Earthquake", + itemUser: ["Krookodile"], + num: -1037, + gen: 8, + desc: "If held by a Krookodile with Earthquake, allows it to use the Z-Move Desert Disaster.", + }, + beheeyemiumz: { + name: "Beheeyemium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Alien Atmosphere", + zMoveFrom: "Psyshock", + itemUser: ["Beheeyem"], + num: -1038, + gen: 8, + desc: "If held by a Beheeyem with Psyshock, allows it to use the Z-Move Alien Atmosphere.", + }, + noiviumz: { + name: "Noivium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Ear-Splitting Echoes", + zMoveFrom: "Hurricane", + itemUser: ["Noivern"], + num: -1039, + gen: 8, + desc: "If held by a Noivern with Hurricane, allows it to use the Z-Move Ear-Splitting Echoes.", + }, + volcaniumz: { + name: "Volcanium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Smoldering Sauna", + zMoveFrom: "Steam Eruption", + itemUser: ["Volcanion"], + num: -1040, + gen: 8, + desc: "If held by a Volcanion with Steam Eruption, allows it to use the Z-Move Smoldering Sauna.", + }, + floettiumz: { + name: "Floettium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Eternal Blossom", + zMoveFrom: "Light of Ruin", + itemUser: ["Floette-Eternal"], + num: -1041, + gen: 8, + desc: "If held by an Eternal Floette with Light of Ruin, allows it to use the Z-Move Eternal Blossom.", + }, + togedemariumz: { + name: "Togedemarium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Amped-Up Spikeball", + zMoveFrom: "Zing Zap", + itemUser: ["Togedemaru"], + num: -1042, + gen: 8, + desc: "If held by a Togedemaru with Zing Zap, allows it to use the Z-Move Amped-Up Spikeball.", + }, + drampiumz: { + name: "Drampium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Neverending War Story", + zMoveFrom: "Draco Meteor", + itemUser: ["Drampa"], + num: -1043, + gen: 8, + desc: "If held by a Drampa with Draco Meteor, allows it to use the Z-Move Neverending War Story.", + }, + turtonatiumz: { + name: "Turtonatium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Molten Minefield", + zMoveFrom: "Shell Trap", + itemUser: ["Turtonator"], + num: -1044, + gen: 8, + desc: "If held by a Turtonator with Shell Trap, allows it to use the Z-Move Molten Minefield.", + }, + falinksiumz: { + name: "Falinksium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Crusader's Courage", + zMoveFrom: "No Retreat", + itemUser: ["Falinks"], + num: -1045, + gen: 8, + desc: "If held by a Falinks with No Retreat, allows it to use the Z-Move Crusader's Courage.", + }, + copperajiumz: { + name: "Copperajium Z", + spritenum: 656, + onTakeItem: false, + zMove: "Metallic Mausoleum", + zMoveFrom: "Iron Head", + itemUser: ["Copperajah"], + num: -1046, + gen: 8, + desc: "If held by a Copperajah with Iron Head, allows it to use the Z-Move Metallic Mausoleum.", + }, + + + +// Mega Stones + butterfrite: { + name: "Butterfrite", + spritenum: 578, + megaStone: "Butterfree-Mega", + megaEvolves: "Butterfree", + itemUser: ["Butterfree"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1010, + gen: 8, + desc: "If held by a Butterfree, this item allows it to Mega Evolve in battle.", + }, + milotite: { + name: "Milotite", + spritenum: 578, + megaStone: "Milotic-Mega", + megaEvolves: "Milotic", + itemUser: ["Milotic"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1011, + gen: 8, + desc: "If held by a Milotic, this item allows it to Mega Evolve in battle.", + }, + froslassite: { + name: "Froslassite", + spritenum: 578, + megaStone: "Froslass-Mega", + megaEvolves: "Froslass", + itemUser: ["Froslass"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1012, + gen: 8, + desc: "If held by a Froslass, this item allows it to Mega Evolve in battle.", + }, + slowkinite: { + name: "Slowkinite", + spritenum: 578, + megaStone: "Slowking-Mega", + megaEvolves: "Slowking", + itemUser: ["Slowking"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1013, + gen: 8, + desc: "If held by a Slowking, this item allows it to Mega Evolve in battle.", + }, + tentacruelite: { + name: "Tentacruelite", + spritenum: 578, + megaStone: "Tentacruel-Mega", + megaEvolves: "Tentacruel", + itemUser: ["Tentacruel"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1014, + gen: 8, + desc: "If held by a Tentacruel, this item allows it to Mega Evolve in battle.", + }, + meganiumite: { + name: "Meganiumite", + spritenum: 578, + megaStone: "Meganium-Mega", + megaEvolves: "Meganium", + itemUser: ["Meganium"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1015, + gen: 8, + desc: "If held by a Meganium, this item allows it to Mega Evolve in battle.", + }, + typhlosionite: { + name: "Typhlosionite", + spritenum: 578, + megaStone: "Typhlosion-Mega", + megaEvolves: "Typhlosion", + itemUser: ["Typhlosion"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1016, + gen: 8, + desc: "If held by a Typhlosion, this item allows it to Mega Evolve in battle.", + }, + feraligatrite: { + name: "Feraligatrite", + spritenum: 578, + megaStone: "Feraligatr-Mega", + megaEvolves: "Feraligatr", + itemUser: ["Feraligatr"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1017, + gen: 8, + desc: "If held by a Feraligatr, this item allows it to Mega Evolve in battle.", + }, + granbullite: { + name: "Granbullite", + spritenum: 578, + megaStone: "Granbull-Mega", + megaEvolves: "Granbull", + itemUser: ["Granbull"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1018, + gen: 8, + desc: "If held by a Granbull, this item allows it to Mega Evolve in battle.", + }, + dusknoirite: { + name: "Dusknoirite", + spritenum: 578, + megaStone: "Dusknoir-Mega", + megaEvolves: "Dusknoir", + itemUser: ["Dusknoir"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1019, + gen: 8, + desc: "If held by a Dusknoir, this item allows it to Mega Evolve in battle.", + }, + drapionite: { + name: "Drapionite", + spritenum: 578, + megaStone: "Drapion-Mega", + megaEvolves: "Drapion", + itemUser: ["Drapion"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1020, + gen: 8, + desc: "If held by a Drapion, this item allows it to Mega Evolve in battle.", + }, + cinccinite: { + name: "Cinccinite", + spritenum: 578, + megaStone: "Cinccino-Mega", + megaEvolves: "Cinccino", + itemUser: ["Cinccino"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1021, + gen: 8, + desc: "If held by a Cinccino, this item allows it to Mega Evolve in battle.", + }, + hydreigonite: { + name: "Hydreigonite", + spritenum: 578, + megaStone: "Hydreigon-Mega", + megaEvolves: "Hydreigon", + itemUser: ["Hydreigon"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1022, + gen: 8, + desc: "If held by a Hydreigon, this item allows it to Mega Evolve in battle.", + }, + talonflite: { + name: "Talonflite", + spritenum: 578, + megaStone: "Talonflame-Mega", + megaEvolves: "Talonflame", + itemUser: ["Talonflame"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1023, + gen: 8, + desc: "If held by a Talonflame, this item allows it to Mega Evolve in battle.", + }, + malamarite: { + name: "Malamarite", + spritenum: 578, + megaStone: "Malamar-Mega", + megaEvolves: "Malamar", + itemUser: ["Malamar"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1024, + gen: 8, + desc: "If held by a Malamar, this item allows it to Mega Evolve in battle.", + }, + shiinotite: { + name: "Shiinotite", + spritenum: 578, + megaStone: "Shiinotic-Mega", + megaEvolves: "Shiinotic", + itemUser: ["Shiinotic"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1025, + gen: 8, + desc: "If held by a Shiinotic, this item allows it to Mega Evolve in battle.", + }, + bewearite: { + name: "Bewearite", + spritenum: 578, + megaStone: "Bewear-Mega", + megaEvolves: "Bewear", + itemUser: ["Bewear"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1026, + gen: 8, + desc: "If held by a Bewear, this item allows it to Mega Evolve in battle.", + }, + thievulite: { + name: "Thievulite", + spritenum: 578, + megaStone: "Thievul-Mega", + megaEvolves: "Thievul", + itemUser: ["Thievul"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1027, + gen: 8, + desc: "If held by a Thievul, this item allows it to Mega Evolve in battle.", + }, + duraludite: { + name: "Duraludite", + spritenum: 578, + megaStone: "Duraludon-Mega", + megaEvolves: "Duraludon", + itemUser: ["Duraludon"], + onTakeItem(item, source) { + if (item.megaEvolves === source.baseSpecies.baseSpecies) return false; + return true; + }, + num: -1028, + gen: 8, + desc: "If held by a Duraludon, this item allows it to Mega Evolve in battle.", + }, +}; diff --git a/data/mods/pkmnybv2/learnsets.ts b/data/mods/pkmnybv2/learnsets.ts new file mode 100644 index 0000000000..a6056ab470 --- /dev/null +++ b/data/mods/pkmnybv2/learnsets.ts @@ -0,0 +1,3248 @@ +export const Learnsets: {[speciesid: string]: LearnsetData} = { + // New Mons + synthinobi: { + learnset: { + hiddenleafstrike: ["8L1"], + leafblade: ["8L1"], + nightslash: ["8L1"], + knockoff: ["8L1"], + stoneedge: ["8L1"], + uturn: ["8L1"], + swordsdance: ["8L1"], + poisonjab: ["8L1"], + taunt: ["8L1"], + bulkup: ["8L1"], + grassyglide: ["8L1"], + grassyterrain: ["8L1"], + grasspledge: ["8L1"], + frenzyplant: ["8L1"], + rockslide: ["8L1"], + rocktomb: ["8L1"], + poweruppunch: ["8L1"], + sunnyday: ["8L1"], + solarblade: ["8L1"], + weatherball: ["8L1"], + raindance: ["8L1"], + aerialace: ["8L1"], + workup: ["8L1"], + gigadrain: ["8L1"], + energyball: ["8L1"], + focusblast: ["8L1"], + sludgebomb: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + grassknot: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + chemicander: { + learnset: { + corrosiveacid: ["8L1"], + fireblast: ["8L1"], + flamethrower: ["8L1"], + gigadrain: ["8L1"], + psychic: ["8L1"], + recover: ["8L1"], + workup: ["8L1"], + toxicspikes: ["8L1"], + willowisp: ["8L1"], + thunderwave: ["8L1"], + hex: ["8L1"], + shadowball: ["8L1"], + burningjealousy: ["8L1"], + firepledge: ["8L1"], + blastburn: ["8L1"], + sludgebomb: ["8L1"], + sludgewave: ["8L1"], + irontail: ["8L1"], + solarbeam: ["8L1"], + sunnyday: ["8L1"], + corrosivegas: ["8L1"], + gunkshot: ["8L1"], + flamecharge: ["8L1"], + flareblitz: ["8L1"], + overheat: ["8L1"], + lightscreen: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + primadillo: { + learnset: { + ballup: ["8L1"], + spikes: ["8L1"], + earthquake: ["8L1"], + scald: ["8L1"], + liquidation: ["8L1"], + wipeout: ["8L1"], + icebeam: ["8L1"], + hydropump: ["8L1"], + icepunch: ["8L1"], + avalanche: ["8L1"], + revenge: ["8L1"], + drainpunch: ["8L1"], + curse: ["8L1"], + earthpower: ["8L1"], + stoneedge: ["8L1"], + gunkshot: ["8L1"], + thunderpunch: ["8L1"], + chipaway: ["8L1"], + stealthrock: ["8L1"], + rapidspin: ["8L1"], + raindance: ["8L1"], + counter: ["8L1"], + workup: ["8L1"], + reflect: ["8L1"], + submission: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + bersawk: { + learnset: { + bravebird: ["8L1"], + cloudcrush: ["8L1"], + shadowclaw: ["8L1"], + playrough: ["8L1"], + rockslide: ["8L1"], + steelwing: ["8L1"], + jumpkick: ["8L1"], + swordsdance: ["8L1"], + quickattack: ["8L1"], + defog: ["8L1"], + roost: ["8L1"], + uturn: ["8L1"], + tailwind: ["8L1"], + outrage: ["8L1"], + followme: ["8L1"], + chipaway: ["8L1"], + poisonjab: ["8L1"], + hurricane: ["8L1"], + heatwave: ["8L1"], + thrash: ["8L1"], + shadowball: ["8L1"], + whirlwind: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + electzal: { + learnset: { + discharge: ["8L1"], + voltswitch: ["8L1"], + roost: ["8L1"], + defog: ["8L1"], + thunderbolt: ["8L1"], + thunder: ["8L1"], + thunderwave: ["8L1"], + uturn: ["8L1"], + heatwave: ["8L1"], + tailwind: ["8L1"], + risingvoltage: ["8L1"], + cloudcrush: ["8L1"], + magnetrise: ["8L1"], + shadowball: ["8L1"], + airslash: ["8L1"], + taunt: ["8L1"], + eerieimpulse: ["8L1"], + paraboliccharge: ["8L1"], + zingzap: ["8L1"], + raindance: ["8L1"], + whirlwind: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + pyrogrine: { + learnset: { + flareblitz: ["8L1"], + bravebird: ["8L1"], + fireblast: ["8L1"], + flamethrower: ["8L1"], + airslash: ["8L1"], + dualwingbeat: ["8L1"], + burningjealousy: ["8L1"], + bonerush: ["8L1"], + knockoff: ["8L1"], + shadowball: ["8L1"], + taunt: ["8L1"], + bulkup: ["8L1"], + roost: ["8L1"], + defog: ["8L1"], + solarbeam: ["8L1"], + flamecharge: ["8L1"], + lowsweep: ["8L1"], + playrough: ["8L1"], + workup: ["8L1"], + oxidation: ["8L1"], + tailwind: ["8L1"], + sunnyday: ["8L1"], + overheat: ["8L1"], + uturn: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + chompean: { + learnset: { + hyperfang: ["8L1"], + firefang: ["8L1"], + icefang: ["8L1"], + thunderfang: ["8L1"], + poisonfang: ["8L1"], + psychicfangs: ["8L1"], + crunch: ["8L1"], + bite: ["8L1"], + quickattack: ["8L1"], + swordsdance: ["8L1"], + stompingtantrum: ["8L1"], + roar: ["8L1"], + thunderwave: ["8L1"], + howl: ["8L1"], + bulkup: ["8L1"], + playrough: ["8L1"], + stalagbite: ["8L1"], + chipaway: ["8L1"], + icebeam: ["8L1"], + bodyslam: ["8L1"], + entrainment: ["8L1"], + wideguard: ["8L1"], + grassknot: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + mothicoal: { + learnset: { + bugbuzz: ["8L1"], + stunspore: ["8L1"], + fireblast: ["8L1"], + psyshock: ["8L1"], + extrasensory: ["8L1"], + quiverdance: ["8L1"], + quickattack: ["8L1"], + gigadrain: ["8L1"], + willowisp: ["8L1"], + roost: ["8L1"], + uturn: ["8L1"], + airslash: ["8L1"], + stringshot: ["8L1"], + irondefense: ["8L1"], + dazzlinggleam: ["8L1"], + shadowball: ["8L1"], + flamethrower: ["8L1"], + spitfire: ["8L1"], + tailwind: ["8L1"], + skillswap: ["8L1"], + overheat: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + neurowatt: { + learnset: { + psychic: ["8L1"], + psyshock: ["8L1"], + fakeout: ["8L1"], + wish: ["8L1"], + nuzzle: ["8L1"], + detect: ["8L1"], + imprison: ["8L1"], + thunder: ["8L1"], + thunderbolt: ["8L1"], + thunderwave: ["8L1"], + psychicterrain: ["8L1"], + electricterrain: ["8L1"], + followme: ["8L1"], + voltswitch: ["8L1"], + grassknot: ["8L1"], + telekinesis: ["8L1"], + gravity: ["8L1"], + speedswap: ["8L1"], + discharge: ["8L1"], + dazzlinggleam: ["8L1"], + shadowball: ["8L1"], + electroweb: ["8L1"], + quickattack: ["8L1"], + expandingforce: ["8L1"], + risingvoltage: ["8L1"], + calmmind: ["8L1"], + nastyplot: ["8L1"], + mysticalfire: ["8L1"], + synchronoise: ["8L1"], + signalbeam: ["8L1"], + mirrorcoat: ["8L1"], + roleplay: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + safeguard: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + menursa: { + learnset: { + knockoff: ["8L1"], + pursuit: ["8L1"], + crunch: ["8L1"], + throatchop: ["8L1"], + darkestlariat: ["8L1"], + thief: ["8L1"], + closecombat: ["8L1"], + earthquake: ["8L1"], + poweruppunch: ["8L1"], + lashout: ["8L1"], + stoneedge: ["8L1"], + firepunch: ["8L1"], + icepunch: ["8L1"], + thunderpunch: ["8L1"], + heatcrash: ["8L1"], + heavyslam: ["8L1"], + ironhead: ["8L1"], + highhorsepower: ["8L1"], + block: ["8L1"], + amnesia: ["8L1"], + sweetscent: ["8L1"], + counter: ["8L1"], + dynamicpunch: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + bloomivolt: { + learnset: { + energyball: ["8L1"], + gigadrain: ["8L1"], + thunder: ["8L1"], + thunderbolt: ["8L1"], + discharge: ["8L1"], + weatherball: ["8L1"], + thunderwave: ["8L1"], + nuzzle: ["8L1"], + pollenpuff: ["8L1"], + electricterrain: ["8L1"], + grassyterrain: ["8L1"], + risingvoltage: ["8L1"], + growth: ["8L1"], + sleeppowder: ["8L1"], + poisonpowder: ["8L1"], + ragepowder: ["8L1"], + cottonspore: ["8L1"], + cottonguard: ["8L1"], + voltswitch: ["8L1"], + shadowball: ["8L1"], + spotlight: ["8L1"], + synthesis: ["8L1"], + leechseed: ["8L1"], + suckerpunch: ["8L1"], + ancientpower: ["8L1"], + sunnyday: ["8L1"], + solarbeam: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + grassknot: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + muaytiger: { + learnset: { + closecombat: ["8L1"], + icefang: ["8L1"], + crunch: ["8L1"], + thunderfang: ["8L1"], + psychicfangs: ["8L1"], + uturn: ["8L1"], + bulkup: ["8L1"], + poweruppunch: ["8L1"], + shadowclaw: ["8L1"], + taunt: ["8L1"], + coaching: ["8L1"], + crosschop: ["8L1"], + stoneedge: ["8L1"], + jumpkick: ["8L1"], + lowkick: ["8L1"], + lowsweep: ["8L1"], + rockslide: ["8L1"], + rocktomb: ["8L1"], + doublekick: ["8L1"], + counter: ["8L1"], + brickpunch: ["8L1"], + dynamicpunch: ["8L1"], + quickguard: ["8L1"], + fakeout: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + razorine: { + learnset: { + extremespeed: ["8L1"], + ironhead: ["8L1"], + irontail: ["8L1"], + spikes: ["8L1"], + stealthrock: ["8L1"], + rapidspin: ["8L1"], + toxicspikes: ["8L1"], + stompingtantrum: ["8L1"], + uturn: ["8L1"], + dig: ["8L1"], + rockslide: ["8L1"], + rocktomb: ["8L1"], + cobaltwave: ["8L1"], + knockoff: ["8L1"], + swordsdance: ["8L1"], + metalclaw: ["8L1"], + zenheadbutt: ["8L1"], + suckerpunch: ["8L1"], + aerialace: ["8L1"], + steelbeam: ["8L1"], + spikyshield: ["8L1"], + reflect: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + hareloom: { + learnset: { + swordsdance: ["8L1"], + bulkup: ["8L1"], + uturn: ["8L1"], + healbell: ["8L1"], + highjumpkick: ["8L1"], + jumpkick: ["8L1"], + playrough: ["8L1"], + dizzypunch: ["8L1"], + icepunch: ["8L1"], + firepunch: ["8L1"], + thunderpunch: ["8L1"], + quickattack: ["8L1"], + zenheadbutt: ["8L1"], + bounce: ["8L1"], + thief: ["8L1"], + covet: ["8L1"], + fakeout: ["8L1"], + coaching: ["8L1"], + torment: ["8L1"], + mistyexplosion: ["8L1"], + counter: ["8L1"], + dazzlinggleam: ["8L1"], + foucsblast: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + drainpunch: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + frospherous: { + learnset: { + icebeam: ["8L1"], + chillout: ["8L1"], + earthpower: ["8L1"], + hypervoice: ["8L1"], + thunderbolt: ["8L1"], + hail: ["8L1"], + blizzard: ["8L1"], + thunderwave: ["8L1"], + thunder: ["8L1"], + wildcharge: ["8L1"], + stompingtantrum: ["8L1"], + dig: ["8L1"], + iceshard: ["8L1"], + stuffcheeks: ["8L1"], + recycle: ["8L1"], + uturn: ["8L1"], + workup: ["8L1"], + encore: ["8L1"], + superfang: ["8L1"], + thunderfang: ["8L1"], + icefang: ["8L1"], + psychicfangs: ["8L1"], + crunch: ["8L1"], + shadowball: ["8L1"], + hornattack: ["8L1"], + smartstrike: ["8L1"], + peck: ["8L1"], + yawn: ["8L1"], + icywind: ["8L1"], + bodyslam: ["8L1"], + mimic: ["8L1"], + swift: ["8L1"], + quickattack: ["8L1"], + swordsdance: ["8L1"], + iciclespear: ["8L1"], + spikecannon: ["8L1"], + terrainpulse: ["8L1"], + chargebeam: ["8L1"], + waterpulse: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + arbborry: { + learnset: { + suckerpunch: ["8L1"], + earthquake: ["8L1"], + woodhammer: ["8L1"], + petalblizzard: ["8L1"], + seedbomb: ["8L1"], + leechseed: ["8L1"], + agility: ["8L1"], + swordsdance: ["8L1"], + nastyplot: ["8L1"], + rockslide: ["8L1"], + stoneedge: ["8L1"], + knockoff: ["8L1"], + throatchop: ["8L1"], + gigadrain: ["8L1"], + synthesis: ["8L1"], + drainpunch: ["8L1"], + brickbreak: ["8L1"], + zenheadbutt: ["8L1"], + growth: ["8L1"], + weatherball: ["8L1"], + darkpulse: ["8L1"], + focusblast: ["8L1"], + sunnyday: ["8L1"], + solarblade: ["8L1"], + revenge: ["8L1"], + submission: ["8L1"], + grassknot: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + mustellar: { + learnset: { + waterpulse: ["8L1"], + psybeam: ["8L1"], + confusion: ["8L1"], + psyshock: ["8L1"], + psychic: ["8L1"], + extrasensory: ["8L1"], + expandingforce: ["8L1"], + icywind: ["8L1"], + icebeam: ["8L1"], + swift: ["8L1"], + washaway: ["8L1"], + scald: ["8L1"], + surf: ["8L1"], + uturn: ["8L1"], + cosmicpower: ["8L1"], + calmmind: ["8L1"], + taunt: ["8L1"], + extremespeed: ["8L1"], + blizzard: ["8L1"], + raindance: ["8L1"], + hail: ["8L1"], + sunnyday: ["8L1"], + meteorbeam: ["8L1"], + dazzlinggleam: ["8L1"], + shadowball: ["8L1"], + mirrorcoat: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + wolverflare: { + learnset: { + flareblitz: ["8L1"], + flamecharge: ["8L1"], + fireblast: ["8L1"], + bulkup: ["8L1"], + flamethrower: ["8L1"], + lavaplume: ["8L1"], + spitfire: ["8L1"], + focusblast: ["8L1"], + aurasphere: ["8L1"], + superpower: ["8L1"], + drainpunch: ["8L1"], + lowkick: ["8L1"], + machpunch: ["8L1"], + willowisp: ["8L1"], + sunnyday: ["8L1"], + solarbeam: ["8L1"], + thunderpunch: ["8L1"], + zenheadbutt: ["8L1"], + psychic: ["8L1"], + shadowpunch: ["8L1"], + grassknot: ["8L1"], + vacuumwave: ["8L1"], + uturn: ["8L1"], + chipaway: ["8L1"], + nastyplot: ["8L1"], + meditate: ["8L1"], + workup: ["8L1"], + rockslide: ["8L1"], + aerialace: ["8L1"], + doublekick: ["8L1"], + counter: ["8L1"], + overheat: ["8L1"], + submission: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + photyrant: { + learnset: { + shadowball: ["8L1"], + shadowpunch: ["8L1"], + poltergeist: ["8L1"], + gigadrain: ["8L1"], + synthesis: ["8L1"], + psychic: ["8L1"], + focusblast: ["8L1"], + energyball: ["8L1"], + zenheadbutt: ["8L1"], + woodhammer: ["8L1"], + sludgebomb: ["8L1"], + brickbreak: ["8L1"], + poweruppunch: ["8L1"], + thunderpunch: ["8L1"], + leechseed: ["8L1"], + hex: ["8L1"], + willowisp: ["8L1"], + eclipse: ["8L1"], + shadowsneak: ["8L1"], + bulkup: ["8L1"], + taunt: ["8L1"], + disable: ["8L1"], + rockslide: ["8L1"], + earthquake: ["8L1"], + ingrain: ["8L1"], + drainpunch: ["8L1"], + grassknot: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + ghoulgoyle: { + learnset: { + stoneedge: ["8L1"], + stalagbite: ["8L1"], + earthquake: ["8L1"], + shadowpunch: ["8L1"], + poltergeist: ["8L1"], + knockoff: ["8L1"], + taunt: ["8L1"], + roost: ["8L1"], + willowisp: ["8L1"], + aerialace: ["8L1"], + dualwingbeat: ["8L1"], + brickbreak: ["8L1"], + poweruppunch: ["8L1"], + irondefense: ["8L1"], + bodypress: ["8L1"], + stealthrock: ["8L1"], + defog: ["8L1"], + imprison: ["8L1"], + shadowball: ["8L1"], + rockpolish: ["8L1"], + firepunch: ["8L1"], + reflect: ["8L1"], + submission: ["8L1"], + steelwing: ["8L1"], + ironhead: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + cortefauna: { + learnset: { + dracometeor: ["8L1"], + scaleshot: ["8L1"], + expandingforce: ["8L1"], + surf: ["8L1"], + hydropump: ["8L1"], + raindance: ["8L1"], + psychicterrain: ["8L1"], + dragonpulse: ["8L1"], + chipaway: ["8L1"], + outrage: ["8L1"], + aquatail: ["8L1"], + waterpulse: ["8L1"], + dragontail: ["8L1"], + roar: ["8L1"], + calmmind: ["8L1"], + psychic: ["8L1"], + psyshock: ["8L1"], + zenheadbutt: ["8L1"], + psychicfangs: ["8L1"], + shadowball: ["8L1"], + signalbeam: ["8L1"], + barrier: ["8L1"], + sludgebomb: ["8L1"], + sludgewave: ["8L1"], + venoshock: ["8L1"], + crunch: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + trickroom: ["8L1"], + trick: ["8L1"], + storedpower: ["8L1"], + dragonrage: ["8L1"], + dreameater: ["8L1"], + telekinesis: ["8L1"], + focusblast: ["8L1"], + earthquake: ["8L1"], + thunderwave: ["8L1"], + thunderbolt: ["8L1"], + energyball: ["8L1"], + grassknot: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + gammaroo: { + learnset: { + focusblast: ["8L1"], + aurasphere: ["8L1"], + thunderbolt: ["8L1"], + psychic: ["8L1"], + psyshock: ["8L1"], + calmmind: ["8L1"], + expandingforce: ["8L1"], + vacuumwave: ["8L1"], + closecombat: ["8L1"], + zenheadbutt: ["8L1"], + shadowball: ["8L1"], + icepunch: ["8L1"], + firepunch: ["8L1"], + thunderpunch: ["8L1"], + wildcharge: ["8L1"], + signalbeam: ["8L1"], + psychicterrain: ["8L1"], + electricterrain: ["8L1"], + risingvoltage: ["8L1"], + thunderwave: ["8L1"], + confuseray: ["8L1"], + bulkup: ["8L1"], + focuspunch: ["8L1"], + drainpunch: ["8L1"], + poweruppunch: ["8L1"], + trickroom: ["8L1"], + gravity: ["8L1"], + magnetrise: ["8L1"], + metronome: ["8L1"], + fakeout: ["8L1"], + coachingtaunt: ["8L1"], + flashcannon: ["8L1"], + counter: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + safeguard: ["8L1"], + flash: ["8L1"], + submission: ["8L1"], + grassknot: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + psywave: ["8L1"], + }, + }, + serpentorch: { + learnset: { + firelash: ["8L1"], + flareblitz: ["8L1"], + poisonjab: ["8L1"], + suckerpunch: ["8L1"], + morningsun: ["8L1"], + gigadrain: ["8L1"], + glare: ["8L1"], + poisontail: ["8L1"], + dragontail: ["8L1"], + wrap: ["8L1"], + firespin: ["8L1"], + fireblast: ["8L1"], + solarbeam: ["8L1"], + sunnyday: ["8L1"], + flamethrower: ["8L1"], + willowisp: ["8L1"], + burningjealousy: ["8L1"], + sludgebomb: ["8L1"], + sludgewave: ["8L1"], + venoshock: ["8L1"], + irontail: ["8L1"], + coil: ["8L1"], + dig: ["8L1"], + stockpile: ["8L1"], + swallow: ["8L1"], + spitup: ["8L1"], + grassknot: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + kaclash: { + learnset: { + airslash: ["8L1"], + closecombat: ["8L1"], + focusblast: ["8L1"], + bugbuzz: ["8L1"], + hypervoice: ["8L1"], + aurasphere: ["8L1"], + drainpunch: ["8L1"], + brickbreak: ["8L1"], + dualwingbeat: ["8L1"], + bulletpunch: ["8L1"], + aerialace: ["8L1"], + uturn: ["8L1"], + lunge: ["8L1"], + rockslide: ["8L1"], + roost: ["8L1"], + bulkup: ["8L1"], + whirlwind: ["8L1"], + strugglebug: ["8L1"], + gigadrain: ["8L1"], + energyball: ["8L1"], + pollenpuff: ["8L1"], + steelwing: ["8L1"], + ironhead: ["8L1"], + workup: ["8L1"], + synchronoise: ["8L1"], + skittersmack: ["8L1"], + cloudcrush: ["8L1"], + tailwind: ["8L1"], + grassknot: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + solinira: { + learnset: { + spikes: ["8L1"], + toxicspikes: ["8L1"], + stealthrock: ["8L1"], + rapidspin: ["8L1"], + suckerpunch: ["8L1"], + scald: ["8L1"], + liquidation: ["8L1"], + poisonjab: ["8L1"], + stoneedge: ["8L1"], + earthquake: ["8L1"], + steamroller: ["8L1"], + steelroller: ["8L1"], + raindance: ["8L1"], + washaway: ["8L1"], + rockslide: ["8L1"], + rocktomb: ["8L1"], + meteorbeam: ["8L1"], + bodypress: ["8L1"], + camouflage: ["8L1"], + reflect: ["8L1"], + grassknot: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + zapish: { + learnset: { + swordsdance: ["8L1"], + aquajet: ["8L1"], + wipeout: ["8L1"], + waterfall: ["8L1"], + zingzap: ["8L1"], + xscissor: ["8L1"], + voltswitch: ["8L1"], + drillrun: ["8L1"], + hydropump: ["8L1"], + surf: ["8L1"], + scald: ["8L1"], + icebeam: ["8L1"], + blizzard: ["8L1"], + raindance: ["8L1"], + agility: ["8L1"], + thunderwave: ["8L1"], + thunder: ["8L1"], + thunderbolt: ["8L1"], + discharge: ["8L1"], + electricterrain: ["8L1"], + flipturn: ["8L1"], + risingvoltage: ["8L1"], + electroweb: ["8L1"], + icywind: ["8L1"], + smartstrike: ["8L1"], + poisonjab: ["8L1"], + eerieimpulse: ["8L1"], + bodyslam: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + wildcharge: ["8L1"], + }, + }, + sanatee: { + learnset: { + scald: ["8L1"], + calmmind: ["8L1"], + icebeam: ["8L1"], + dazzlinggleam: ["8L1"], + washaway: ["8L1"], + wipeout: ["8L1"], + icywind: ["8L1"], + freezedry: ["8L1"], + aurorabeam: ["8L1"], + auroraveil: ["8L1"], + hail: ["8L1"], + raindance: ["8L1"], + chillout: ["8L1"], + fakeout: ["8L1"], + helpinghand: ["8L1"], + healpulse: ["8L1"], + refresh: ["8L1"], + surf: ["8L1"], + waterfall: ["8L1"], + bodyslam: ["8L1"], + charm: ["8L1"], + teeterdance: ["8L1"], + entrainment: ["8L1"], + playnice: ["8L1"], + luckychant: ["8L1"], + knockoff: ["8L1"], + amnesia: ["8L1"], + lifedew: ["8L1"], + stockpile: ["8L1"], + swallow: ["8L1"], + spitup: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + glaciarch: { + learnset: { + recover: ["8L1"], + chillout: ["8L1"], + icebeam: ["8L1"], + freezedry: ["8L1"], + blizzard: ["8L1"], + tripleaxel: ["8L1"], + surf: ["8L1"], + hydropump: ["8L1"], + washaway: ["8L1"], + waterpulse: ["8L1"], + icepunch: ["8L1"], + auroraveil: ["8L1"], + signalbeam: ["8L1"], + focusblast: ["8L1"], + psychic: ["8L1"], + powertrip: ["8L1"], + haze: ["8L1"], + iceshard: ["8L1"], + avalanche: ["8L1"], + icywind: ["8L1"], + iciclespear: ["8L1"], + bubblebeam: ["8L1"], + zenheadbutt: ["8L1"], + metronome: ["8L1"], + poweruppunch: ["8L1"], + healpulse: ["8L1"], + mirrorcoat: ["8L1"], + mist: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + creaviary: { + learnset: { + psychic: ["8L1"], + psyshock: ["8L1"], + shadowball: ["8L1"], + moonblast: ["8L1"], + dazzlinggleam: ["8L1"], + playrough: ["8L1"], + dualwingbeat: ["8L1"], + cloudcrush: ["8L1"], + roost: ["8L1"], + airslash: ["8L1"], + thunderwave: ["8L1"], + calmmind: ["8L1"], + healbell: ["8L1"], + steelwing: ["8L1"], + mysticalfire: ["8L1"], + heatwave: ["8L1"], + defog: ["8L1"], + expandingforce: ["8L1"], + mistyterrain: ["8L1"], + psychicterrain: ["8L1"], + raindance: ["8L1"], + psywave: ["8L1"], + featherdance: ["8L1"], + mirrorcoat: ["8L1"], + tailwind: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + }, + }, + plummuse: { + learnset: { + psychic: ["8L1"], + psyshock: ["8L1"], + shadowball: ["8L1"], + moonblast: ["8L1"], + dazzlinggleam: ["8L1"], + playrough: ["8L1"], + dualwingbeat: ["8L1"], + cloudcrush: ["8L1"], + roost: ["8L1"], + airslash: ["8L1"], + thunderwave: ["8L1"], + calmmind: ["8L1"], + healbell: ["8L1"], + steelwing: ["8L1"], + mysticalfire: ["8L1"], + heatwave: ["8L1"], + defog: ["8L1"], + expandingforce: ["8L1"], + mistyterrain: ["8L1"], + psychicterrain: ["8L1"], + raindance: ["8L1"], + psywave: ["8L1"], + featherdance: ["8L1"], + mirrorcoat: ["8L1"], + tailwind: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + sparsqueak: { + learnset: { + wildcharge: ["8L1"], + zingzap: ["8L1"], + doublekick: ["8L1"], + drainpunch: ["8L1"], + icepunch: ["8L1"], + machpunch: ["8L1"], + swordsdance: ["8L1"], + knockoff: ["8L1"], + spark: ["8L1"], + electricterrain: ["8L1"], + coaching: ["8L1"], + risingvoltage: ["8L1"], + uturn: ["8L1"], + voltswitch: ["8L1"], + fakeout: ["8L1"], + aurasphere: ["8L1"], + firepunch: ["8L1"], + thunderpunch: ["8L1"], + dig: ["8L1"], + feint: ["8L1"], + helpinghand: ["8L1"], + quickguard: ["8L1"], + charm: ["8L1"], + eerieimpulse: ["8L1"], + followme: ["8L1"], + mefirst: ["8L1"], + thunderwave: ["8L1"], + electroweb: ["8L1"], + superfang: ["8L1"], + grassknot: ["8L1"], + sunnyday: ["8L1"], + sandstorm: ["8L1"], + counter: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + submission: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + darsqueak: { + learnset: { + eclipse: ["8L1"], + darkpulse: ["8L1"], + nastyplot: ["8L1"], + shadowball: ["8L1"], + shadowsneak: ["8L1"], + uturn: ["8L1"], + sludgebomb: ["8L1"], + grassknot: ["8L1"], + shockwave: ["8L1"], + fakeout: ["8L1"], + feint: ["8L1"], + knockoff: ["8L1"], + lashout: ["8L1"], + faketears: ["8L1"], + tearfullook: ["8L1"], + wideguard: ["8L1"], + suckerpunch: ["8L1"], + snatch: ["8L1"], + quash: ["8L1"], + spotlight: ["8L1"], + afteryou: ["8L1"], + burningjealousy: ["8L1"], + icywind: ["8L1"], + superfang: ["8L1"], + psybeam: ["8L1"], + raindance: ["8L1"], + hail: ["8L1"], + mirrorcoat: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + giraflame: { + learnset: { + flareblitz: ["8L1"], + earthquake: ["8L1"], + irontail: ["8L1"], + doublekick: ["8L1"], + willowisp: ["8L1"], + morningsun: ["8L1"], + rapidspin: ["8L1"], + flamethrower: ["8L1"], + fireblast: ["8L1"], + lavaplume: ["8L1"], + extrasensory: ["8L1"], + roar: ["8L1"], + zenheadbutt: ["8L1"], + wildcharge: ["8L1"], + burningjealousy: ["8L1"], + chipaway: ["8L1"], + skullbash: ["8L1"], + rockslide: ["8L1"], + bulldoze: ["8L1"], + sunnyday: ["8L1"], + solarbeam: ["8L1"], + mirrorcoat: ["8L1"], + overheat: ["8L1"], + magiccoat: ["8L1"], + psychic: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + grassknot: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + lycacia: { + learnset: { + flareblitz: ["8L1"], + leechseed: ["8L1"], + woodhammer: ["8L1"], + leafblade: ["8L1"], + seedbomb: ["8L1"], + crunch: ["8L1"], + psychicfangs: ["8L1"], + morningsun: ["8L1"], + sunnyday: ["8L1"], + solarblade: ["8L1"], + solarbeam: ["8L1"], + spitfire: ["8L1"], + heatwave: ["8L1"], + shadowclaw: ["8L1"], + superpower: ["8L1"], + swordsdance: ["8L1"], + thunderfang: ["8L1"], + gigadrain: ["8L1"], + pursuit: ["8L1"], + poisonfang: ["8L1"], + flamethrower: ["8L1"], + fireblast: ["8L1"], + mysticalfire: ["8L1"], + suckerpunch: ["8L1"], + punishment: ["8L1"], + willowisp: ["8L1"], + worryseed: ["8L1"], + grassknot: ["8L1"], + bind: ["8L1"], + grassyterrain: ["8L1"], + grassyglide: ["8L1"], + camouflage: ["8L1"], + overheat: ["8L1"], + leafstorm: ["8L1"], + powertrip: ["8L1"], + knockoff: ["8L1"], + grassknot: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + remodile: { + learnset: { + yawn: ["8L1"], + earthquake: ["8L1"], + playrough: ["8L1"], + scaleshot: ["8L1"], + scorchingsands: ["8L1"], + mistyterrain: ["8L1"], + rockslide: ["8L1"], + stoneedge: ["8L1"], + roar: ["8L1"], + irontail: ["8L1"], + dragontail: ["8L1"], + dazzlinggleam: ["8L1"], + moonblast: ["8L1"], + earthpower: ["8L1"], + ancientpower: ["8L1"], + dreameater: ["8L1"], + gastroacid: ["8L1"], + moonlight: ["8L1"], + charm: ["8L1"], + surf: ["8L1"], + sandtomb: ["8L1"], + stompingtantrum: ["8L1"], + eclipse: ["8L1"], + recycle: ["8L1"], + stealthrock: ["8L1"], + dragonpulse: ["8L1"], + nightmare: ["8L1"], + snarl: ["8L1"], + irondefense: ["8L1"], + lightscreen: ["8L1"], + reflect: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + petrasapien: { + learnset: { + fakeout: ["8L1"], + quickattack: ["8L1"], + knockoff: ["8L1"], + earthquake: ["8L1"], + swordsdance: ["8L1"], + stoneedge: ["8L1"], + rockslide: ["8L1"], + firepunch: ["8L1"], + icepunch: ["8L1"], + thunderpunch: ["8L1"], + rocktomb: ["8L1"], + sandtomb: ["8L1"], + rockclimb: ["8L1"], + ironhead: ["8L1"], + captivate: ["8L1"], + poweruppunch: ["8L1"], + psychup: ["8L1"], + mefirst: ["8L1"], + skillswap: ["8L1"], + brickbreak: ["8L1"], + lowkick: ["8L1"], + suckerpunch: ["8L1"], + meteorbeam: ["8L1"], + counter: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + petradvena: { + learnset: { + expandingforce: ["8L1"], + psychicterrain: ["8L1"], + psybeam: ["8L1"], + psychic: ["8L1"], + psyshock: ["8L1"], + powergem: ["8L1"], + ancientpower: ["8L1"], + firepunch: ["8L1"], + thunderbolt: ["8L1"], + thunder: ["8L1"], + earthpower: ["8L1"], + magnetrise: ["8L1"], + telekinesis: ["8L1"], + calmmind: ["8L1"], + recover: ["8L1"], + rockslide: ["8L1"], + stoneedge: ["8L1"], + rocktomb: ["8L1"], + shadowball: ["8L1"], + signalbeam: ["8L1"], + bugbuzz: ["8L1"], + strugglebug: ["8L1"], + xscissor: ["8L1"], + focusblast: ["8L1"], + mist: ["8L1"], + haze: ["8L1"], + knockoff: ["8L1"], + meteorbeam: ["8L1"], + meteormash: ["8L1"], + hail: ["8L1"], + synchronoise: ["8L1"], + skittersmack: ["8L1"], + mirrorcoat: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + grassknot: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + stealthrock: ["8L1"], + }, + }, + fyrecho: { + learnset: { + boomburst: ["8L1"], + spitfire: ["8L1"], + heatwave: ["8L1"], + fireblast: ["8L1"], + solarbeam: ["8L1"], + flamethrower: ["8L1"], + willowisp: ["8L1"], + roost: ["8L1"], + uturn: ["8L1"], + hypervoice: ["8L1"], + snarl: ["8L1"], + synchronoise: ["8L1"], + belch: ["8L1"], + knockoff: ["8L1"], + defog: ["8L1"], + flamecharge: ["8L1"], + sunnyday: ["8L1"], + workup: ["8L1"], + flareblitz: ["8L1"], + dualwingbeat: ["8L1"], + burningjealousy: ["8L1"], + airslash: ["8L1"], + hurricane: ["8L1"], + raindance: ["8L1"], + tailwind: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + osprime: { + learnset: { + hurricane: ["8L1"], + raindance: ["8L1"], + surf: ["8L1"], + scald: ["8L1"], + uturn: ["8L1"], + oxidation: ["8L1"], + shockwave: ["8L1"], + roost: ["8L1"], + defog: ["8L1"], + featherdance: ["8L1"], + icywind: ["8L1"], + muddywater: ["8L1"], + bind: ["8L1"], + bravebird: ["8L1"], + wipeout: ["8L1"], + liquidation: ["8L1"], + brickbreak: ["8L1"], + stompingtantrum: ["8L1"], + sunnyday: ["8L1"], + solarbeam: ["8L1"], + quickattack: ["8L1"], + hypervoice: ["8L1"], + uproar: ["8L1"], + cloudcrush: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + buffalocean: { + learnset: { + wipeout: ["8L1"], + waterfall: ["8L1"], + playrough: ["8L1"], + spiritbreak: ["8L1"], + earthquake: ["8L1"], + washaway: ["8L1"], + earthquake: ["8L1"], + highhorsepower: ["8L1"], + aquajet: ["8L1"], + bodyslam: ["8L1"], + skullbash: ["8L1"], + irondefense: ["8L1"], + moonblast: ["8L1"], + moonlight: ["8L1"], + icebeam: ["8L1"], + icywind: ["8L1"], + blizzard: ["8L1"], + raindance: ["8L1"], + hail: ["8L1"], + dazzlinggleam: ["8L1"], + roar: ["8L1"], + torment: ["8L1"], + superpower: ["8L1"], + irontail: ["8L1"], + rockslide: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + ingarde: { + learnset: { + ironhead: ["8L1"], + metalclaw: ["8L1"], + smartstrike: ["8L1"], + sacredsword: ["8L1"], + xscissor: ["8L1"], + swordsdance: ["8L1"], + irondefense: ["8L1"], + brickbreak: ["8L1"], + uturn: ["8L1"], + roost: ["8L1"], + defog: ["8L1"], + quickattack: ["8L1"], + doublehit: ["8L1"], + slash: ["8L1"], + psychocut: ["8L1"], + nightslash: ["8L1"], + cobaltwave: ["8L1"], + strugglebug: ["8L1"], + bugbuzz: ["8L1"], + feint: ["8L1"], + feintattack: ["8L1"], + steelbeam: ["8L1"], + shadowclaw: ["8L1"], + counter: ["8L1"], + irondefense: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + venometta: { + learnset: { + poisonjab: ["8L1"], + gunkshot: ["8L1"], + drainpunch: ["8L1"], + doublekick: ["8L1"], + icepunch: ["8L1"], + thunderpunch: ["8L1"], + poweruppunch: ["8L1"], + shadowsneak: ["8L1"], + shadowpunch: ["8L1"], + feintattack: ["8L1"], + bodyslam: ["8L1"], + sludgebomb: ["8L1"], + venoshock: ["8L1"], + hex: ["8L1"], + shadowball: ["8L1"], + sludgewave: ["8L1"], + grassknot: ["8L1"], + corrosivegas: ["8L1"], + rocktomb: ["8L1"], + superpower: ["8L1"], + fakeout: ["8L1"], + uturn: ["8L1"], + suckerpunch: ["8L1"], + throatchop: ["8L1"], + counter: ["8L1"], + submission: ["8L1"], + grassknot: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + nimbless: { + learnset: { + defog: ["8L1"], + discharge: ["8L1"], + moonblast: ["8L1"], + cloudcrush: ["8L1"], + dazzlinggleam: ["8L1"], + thunder: ["8L1"], + thunderbolt: ["8L1"], + thunderwave: ["8L1"], + thunderwave: ["8L1"], + surf: ["8L1"], + raindance: ["8L1"], + hail: ["8L1"], + weatherball: ["8L1"], + lifedew: ["8L1"], + healpulse: ["8L1"], + waterpulse: ["8L1"], + paraboliccharge: ["8L1"], + calmmind: ["8L1"], + moonlight: ["8L1"], + airslash: ["8L1"], + hurricane: ["8L1"], + hypervoice: ["8L1"], + auroraveil: ["8L1"], + signalbeam: ["8L1"], + extrasensory: ["8L1"], + aurorabeam: ["8L1"], + electroweb: ["8L1"], + voltswitch: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + frixen: { + learnset: { + icepunch: ["8L1"], + tripleaxel: ["8L1"], + rockclimb: ["8L1"], + doublekick: ["8L1"], + uturn: ["8L1"], + iceshard: ["8L1"], + fakeout: ["8L1"], + auroraveil: ["8L1"], + bulkup: ["8L1"], + pursuit: ["8L1"], + knockoff: ["8L1"], + crunch: ["8L1"], + hail: ["8L1"], + blizzard: ["8L1"], + icebeam: ["8L1"], + waterpulse: ["8L1"], + irontail: ["8L1"], + ironhead: ["8L1"], + counter: ["8L1"], + grassknot: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + necrice: { + learnset: { + trickroom: ["8L1"], + blizzard: ["8L1"], + sludgewave: ["8L1"], + stealthrock: ["8L1"], + sludgebomb: ["8L1"], + psychic: ["8L1"], + icebeam: ["8L1"], + powergem: ["8L1"], + waterpulse: ["8L1"], + icywind: ["8L1"], + auroraveil: ["8L1"], + avalanche: ["8L1"], + iciclecrash: ["8L1"], + corrosivegas: ["8L1"], + toxicspikes: ["8L1"], + venoshock: ["8L1"], + counter: ["8L1"], + mirrorcoat: ["8L1"], + haze: ["8L1"], + recover: ["8L1"], + mist: ["8L1"], + freezedry: ["8L1"], + wideguard: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + goblizz: { + learnset: { + tripleaxel: ["8L1"], + dragonclaw: ["8L1"], + chipaway: ["8L1"], + dragondance: ["8L1"], + iciclecrash: ["8L1"], + dualwingbeat: ["8L1"], + drainpunch: ["8L1"], + brickbreak: ["8L1"], + dragonrush: ["8L1"], + uturn: ["8L1"], + defog: ["8L1"], + moonlight: ["8L1"], + poisonjab: ["8L1"], + iceshard: ["8L1"], + poweruppunch: ["8L1"], + bodyslam: ["8L1"], + steelwing: ["8L1"], + ironhead: ["8L1"], + smartstrike: ["8L1"], + doublehit: ["8L1"], + doubleslap: ["8L1"], + focusblast: ["8L1"], + icebeam: ["8L1"], + hail: ["8L1"], + blizzard: ["8L1"], + detect: ["8L1"], + auroraveil: ["8L1"], + icywind: ["8L1"], + tailwind: ["8L1"], + whirlwind: ["8L1"], + hurricane: ["8L1"], + venoshock: ["8L1"], + sludgebomb: ["8L1"], + dracometeor: ["8L1"], + outrage: ["8L1"], + submission: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + ptarabola: { + learnset: { + dragonpulse: ["8L1"], + mysticalfire: ["8L1"], + hurricane: ["8L1"], + oxidation: ["8L1"], + uturn: ["8L1"], + roost: ["8L1"], + dragondance: ["8L1"], + defog: ["8L1"], + dracometeor: ["8L1"], + fireblast: ["8L1"], + flamethrower: ["8L1"], + heatwave: ["8L1"], + scaleshot: ["8L1"], + dualwingbeat: ["8L1"], + cloudcrush: ["8L1"], + chipaway: ["8L1"], + steelwing: ["8L1"], + tailwind: ["8L1"], + quickattack: ["8L1"], + waterpulse: ["8L1"], + dive: ["8L1"], + spitfire: ["8L1"], + focusblast: ["8L1"], + shadowball: ["8L1"], + weatherball: ["8L1"], + screech: ["8L1"], + outrage: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + dominidon: { + learnset: { + chipaway: ["8L1"], + dragonrush: ["8L1"], + outrage: ["8L1"], + earthquake: ["8L1"], + highhorsepower: ["8L1"], + hammerarm: ["8L1"], + firepunch: ["8L1"], + icepunch: ["8L1"], + thunderpunch: ["8L1"], + ironhead: ["8L1"], + knockoff: ["8L1"], + crunch: ["8L1"], + dracometeor: ["8L1"], + dragonclaw: ["8L1"], + dragonpulse: ["8L1"], + fireblast: ["8L1"], + roar: ["8L1"], + dragontail: ["8L1"], + swordsdance: ["8L1"], + stalagbite: ["8L1"], + stoneedge: ["8L1"], + rockslide: ["8L1"], + counter: ["8L1"], + irondefense: ["8L1"], + stockpile: ["8L1"], + swallow: ["8L1"], + spitup: ["8L1"], + outrage: ["8L1"], + breakingswipe: ["8L1"], + poisonfang: ["8L1"], + surf: ["8L1"], + muddywater: ["8L1"], + hydropump: ["8L1"], + lashout: ["8L1"], + brickbreak: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + poufos: { + learnset: { + bindinglight: ["8L1"], + fireblast: ["8L1"], + moonblast: ["8L1"], + earthpower: ["8L1"], + roost: ["8L1"], + magnetrise: ["8L1"], + spotlight: ["8L1"], + calmmind: ["8L1"], + flareblitz: ["8L1"], + fullmooncrash: ["8L1"], + defog: ["8L1"], + uturn: ["8L1"], + reflect: ["8L1"], + lightscreen: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + balatadi: { + learnset: { + darkdivide: ["8L1"], + darkpulse: ["8L1"], + powergem: ["8L1"], + nastyplot: ["8L1"], + focusblast: ["8L1"], + flashcannon: ["8L1"], + icebeam: ["8L1"], + psyshock: ["8L1"], + cut: ["8L1"], + gigadrain: ["8L1"], + stealthrock: ["8L1"], + stoneedge: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + }, + }, + ultratom: { + learnset: { + splitatoms: ["8L1"], + ionicbond: ["8L1"], + covalentbond: ["8L1"], + adaptableattack: ["8L1"], + auroraveil: ["8L1"], + lightscreen: ["8L1"], + reflect: ["8L1"], + attract: ["8L1"], + bide: ["8L1"], + captivate: ["8L1"], + confide: ["8L1"], + curse: ["8L1"], + doubleteam: ["8L1"], + doubleedge: ["8L1"], + endure: ["8L1"], + facade: ["8L1"], + frustration: ["8L1"], + hiddenpower: ["8L1"], + mimic: ["8L1"], + naturalgift: ["8L1"], + protect: ["8L1"], + rage: ["8L1"], + rest: ["8L1"], + return: ["8L1"], + round: ["8L1"], + secretpower: ["8L1"], + sleeptalk: ["8L1"], + snore: ["8L1"], + substitute: ["8L1"], + swagger: ["8L1"], + takedown: ["8L1"], + toxic: ["8L1"], + gigaimpact: ["8L1"], + hyperbeam: ["8L1"], + thunderbolt: ["8L1"], + thunder: ["8L1"], + thunderwave: ["8L1"], + voltswitch: ["8L1"], + magnetrise: ["8L1"], + eerieimpulse: ["8L1"], + risingvoltage: ["8L1"], + electricterrain: ["8L1"], + terrainpulse: ["8L1"], + mistyexplosion: ["8L1"], + explosion: ["8L1"], + selfdestruct: ["8L1"], + iondeluge: ["8L1"], + psychic: ["8L1"], + psyshock: ["8L1"], + psywave: ["8L1"], + expandingforce: ["8L1"], + psychicterrain: ["8L1"], + magicroom: ["8L1"], + wonderroom: ["8L1"], + skillswap: ["8L1"], + guardswap: ["8L1"], + powerswap: ["8L1"], + speedswap: ["8L1"], + powertrick: ["8L1"], + psychocut: ["8L1"], + powersplit: ["8L1"], + guardsplit: ["8L1"], + miracleeye: ["8L1"], + discharge: ["8L1"], + powergem: ["8L1"], + minimize: ["8L1"], + voltswitch: ["8L1"], + mirrorcoat: ["8L1"], + lightscreen: ["8L1"], + reflect: ["8L1"], + energyball: ["8L1"], + memento: ["8L1"], + finalgambit: ["8L1"], + recover: ["8L1"], + shadowball: ["8L1"], + calmmind: ["8L1"], + }, + }, + frostonna: { + learnset: { + thunderbolt: ["8L1"], + thunder: ["8L1"], + thunderpunch: ["8L1"], + thunderwave: ["8L1"], + haze: ["8L1"], + mist: ["8L1"], + mirrorcoat: ["8L1"], + playrough: ["8L1"], + hex: ["8L1"], + teeterdance: ["8L1"], + iciclecrash: ["8L1"], + }, + }, + geareon: { + learnset: { + flashcannon: ["8L1"], + cobaltwave: ["8L1"], + stealthrock: ["8L1"], + signalbeam: ["8L1"], + flamecharge: ["8L1"], + flamewheel: ["8L1"], + clearsmog: ["8L1"], + metalburst: ["8L1"], + autotomoize: ["8L1"], + ironhead: ["8L1"], + metalclaw: ["8L1"], + steelroller: ["8L1"], + steelbeam: ["8L1"], + mist: ["8L1"], + powergem: ["8L1"], + snarl: ["8L1"], + metalsound: ["8L1"], + screech: ["8L1"], + waterpulse: ["8L1"], + }, + }, + mytheon: { + learnset: { + chipaway: ["8L1"], + dragonclaw: ["8L1"], + dragonrush: ["8L1"], + swordsdance: ["8L1"], + poisonfang: ["8L1"], + firefang: ["8L1"], + icefang: ["8L1"], + thunderfang: ["8L1"], + psychicfangs: ["8L1"], + crunch: ["8L1"], + skittersmack: ["8L1"], + uturn: ["8L1"], + dracometeor: ["8L1"], + dragonpulse: ["8L1"], + doublekick: ["8L1"], + embargo: ["8L1"], + honeclaws: ["8L1"], + twister: ["8L1"], + breakingswipe: ["8L1"], + reflect: ["8L1"], + }, + }, + + // Rotoms + rotomheat: { + learnset: { + overheat: ["8L1", "7R", "6R", "5R", "4R"], + incinerate: ["8L1"], + }, + }, + rotomwash: { + learnset: { + hydropump: ["8L1", "7R", "6R", "5R", "4R"], + washaway: ["8L1"], + }, + }, + rotomfrost: { + learnset: { + blizzard: ["8L1", "7R", "6R", "5R", "4R"], + aurorabeam: ["8L1"], + }, + }, + rotomfan: { + learnset: { + mirrorshot: ["8L1", "7R", "6R", "5R", "4R"], + cobaltwave: ["8L1"], + }, + }, + rotommow: { + learnset: { + leafstorm: ["8L1", "7R", "6R", "5R", "4R"], + magicalleaf: ["8L1"], + }, + }, + + // Kangaskhan + kangaskhan: { + learnset: { + aerialace: ["7M", "6M", "5M", "4M", "3M"], + aquatail: ["7T", "6T", "5T", "4T"], + assurance: ["8M"], + attract: ["8M", "7M", "7V", "6M", "5M", "4M", "3M"], + avalanche: ["8M", "4M"], + beatup: ["8M"], + bide: ["7V"], + bite: ["8L12", "8V", "7L13", "7V", "6L13", "5L13", "4L13", "3L7", "3S1"], + blizzard: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"], + bodyslam: ["8M", "7V", "3T"], + brickbreak: ["8M", "8V", "7M", "6M", "5M", "4M", "3M"], + bubblebeam: ["7V"], + bulldoze: ["8M", "7M", "6M", "5M"], + captivate: ["4M"], + chipaway: ["7L31", "6L31", "5L31"], + circlethrow: ["8E", "7E", "6E", "5E"], + cometpunch: ["8V", "7L1", "7V", "6L1", "5L1", "4L1", "3L1", "3S1"], + confide: ["7M", "6M"], + counter: ["8E", "7E", "7V", "6E", "5E", "5D", "4E", "3T", "3E"], + covet: ["7T", "6T", "5T"], + crunch: ["8M", "8L36", "8V", "7L37", "6L37", "5L37", "4L31"], + crushclaw: ["7E", "6E", "5E", "4E", "3E"], + curse: ["7V"], + cut: ["6M", "5M", "4M", "3M"], + dig: ["8M", "8V", "6M", "5M", "4M", "3M"], + disable: ["8E", "7E", "7V", "6E", "5E", "4E", "3E"], + dizzypunch: ["8V", "7L34", "7V", "6L34", "5L34", "4L25", "3L43", "3S2"], + doubleedge: ["8E", "7E", "7V", "6E", "5E", "4E", "3T"], + doublehit: ["8L32", "7L19", "6L19", "5L19", "4L43"], + doubleteam: ["7M", "7V", "6M", "5M", "4M", "3M"], + drainpunch: ["8M", "7T", "6T", "5T", "5D", "4M"], + dynamicpunch: ["7V", "3T"], + earthquake: ["8M", "8V", "7M", "7V", "6M", "6S3", "5M", "4M", "3M", "3S2"], + endeavor: ["8E", "7T", "7E", "6T", "6E", "5T", "5E", "4T", "4E"], + endure: ["8M", "8L40", "7L43", "7V", "6L43", "5L43", "4M", "4L34", "3T", "3L37"], + facade: ["8M", "8V", "7M", "6M", "5M", "4M", "3M"], + fakeout: ["8L8", "8V", "7L7", "6L7", "6S3", "5L7", "5D", "4L7", "3L19"], + fireblast: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"], + firepunch: ["8M", "8V", "7T", "7V", "6T", "5T", "4T", "3T"], + fissure: ["7V"], + flamethrower: ["8M", "8V", "7M", "6M", "5M", "4M", "3M"], + fling: ["8M", "7M", "6M", "5M", "4M"], + focusblast: ["8M", "7M", "6M", "5M", "4M"], + focusenergy: ["8M", "8L20", "7E", "7V", "6E", "5E", "4E", "3E"], + focuspunch: ["7T", "7E", "6T", "6E", "5E", "4M", "3M"], + foresight: ["7E", "7V", "6E", "5E", "4E", "3E"], + frustration: ["7M", "7V", "6M", "5M", "4M", "3M"], + furycutter: ["7V", "4T", "3T"], + gigaimpact: ["8M", "7M", "6M", "5M", "4M"], + growl: ["8L4"], + hail: ["8M", "7M", "6M", "5M", "4M", "3M"], + hammerarm: ["8E", "7E", "6E", "5E", "4E"], + headbutt: ["8L24", "8V", "7V", "4T"], + helpinghand: ["8M", "8V", "7T", "6T", "5T", "4T"], + hiddenpower: ["7M", "7V", "6M", "5M", "4M", "3M"], + hydropump: ["8M"], + hyperbeam: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"], + icebeam: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"], + icepunch: ["8M", "8V", "7T", "7V", "6T", "5T", "4T", "3T"], + icywind: ["8M", "7T", "7V", "6T", "5T", "4T", "3T"], + incinerate: ["6M", "5M"], + irontail: ["8M", "8V", "7T", "7V", "6T", "5T", "4M", "3M"], + lastresort: ["8L52"], + leer: ["8V", "7L1", "7V", "6L1", "5L1", "4L1", "3L1", "3S1"], + lowkick: ["8M", "7T", "6T", "5T", "4T"], + megakick: ["8M", "7V", "3T"], + megapunch: ["8M", "8V", "7L25", "7V", "6L25", "5L25", "4L19", "3T", "3L25"], + mimic: ["7V", "3T"], + mudslap: ["7V", "4T", "3T"], + naturalgift: ["4M"], + outrage: ["8M", "8L48", "8V", "7T", "7L46", "6T", "6L46", "5T", "5L46", "4T", "4L37"], + pound: ["8L1"], + protect: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"], + rage: ["8V", "7L22", "7V", "6L22", "5L22", "4L22", "3L31"], + raindance: ["8M", "7M", "7V", "6M", "5M", "4M", "3M"], + rest: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"], + retaliate: ["8M", "6M", "5M"], + return: ["7M", "7V", "6M", "6S3", "5M", "4M", "3M"], + reversal: ["8M", "8L44", "7L50", "7V", "6L50", "5L55", "4L49", "3L49"], + roar: ["7M", "7V", "6M", "5M", "4M", "3M"], + rockclimb: ["4M"], + rockslide: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "3T"], + rocksmash: ["7V", "6M", "5M", "4M", "3M"], + rocktomb: ["8M", "7M", "6M", "5M", "4M", "3M"], + round: ["8M", "7M", "6M", "5M"], + safeguard: ["8M", "7M", "7V", "6M", "5M", "4E", "3E"], + sandstorm: ["8M", "7M", "7V", "6M", "5M", "4M", "3M"], + secretpower: ["6M", "4M", "3M"], + shadowball: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"], + shadowclaw: ["8M", "7M", "6M", "5M", "4M"], + shockwave: ["7T", "6T", "4M", "3M"], + sing: ["3S2"], + skullbash: ["7V"], + sleeptalk: ["8M", "7M", "7V", "6M", "5T", "4M", "3T"], + snore: ["8M", "7T", "7V", "6T", "5T", "4T", "3T"], + solarbeam: ["8M", "8V", "7M", "6M", "5M", "4M", "3M"], + spite: ["7T", "6T", "5T", "4T"], + stomp: ["8L16", "7E", "7V", "6E", "5E", "4E", "3E"], + strength: ["7V", "6M", "5M", "4M", "3M"], + submission: ["7V"], + substitute: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "4E", "3T", "3E"], + suckerpunch: ["8L28", "8V", "7L49", "6L49", "6S3", "5L49", "4T", "4L46"], + sunnyday: ["8M", "7M", "7V", "6M", "5M", "4M", "3M"], + surf: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"], + swagger: ["7M", "7V", "6M", "5M", "4M", "3T"], + tailwhip: ["8L1", "8V", "7L10", "7V", "6L10", "5L10", "4L10", "3L13", "3S2"], + takedown: ["7V"], + terrainpulse: ["8T"], + thief: ["8M", "7M", "6M", "5M", "4M", "3M"], + thunder: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"], + thunderbolt: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"], + thunderpunch: ["8M", "8V", "7T", "7V", "6T", "5T", "4T", "3T"], + toxic: ["8V", "7M", "7V", "6M", "5M", "4M", "3M"], + trumpcard: ["7E", "6E", "5E"], + uproar: ["8M", "7T", "7E", "6T", "6E", "5T", "5E", "4T"], + watergun: ["7V"], + waterpulse: ["7T", "6T", "4M", "3M"], + whirlpool: ["8M", "4M"], + wish: ["3S0"], + workup: ["8M", "7M", "5M"], + yawn: ["3S0"], + zapcannon: ["7V"], + }, + eventData: [ + {generation: 3, level: 5, shiny: 1, abilities: ["earlybird"], moves: ["yawn", "wish"], pokeball: "pokeball"}, + {generation: 3, level: 10, abilities: ["earlybird"], moves: ["cometpunch", "leer", "bite"], pokeball: "pokeball"}, + {generation: 3, level: 35, abilities: ["earlybird"], moves: ["sing", "earthquake", "tailwhip", "dizzypunch"]}, + {generation: 6, level: 50, abilities: ["scrappy"], moves: ["fakeout", "return", "earthquake", "suckerpunch"], pokeball: "cherishball"}, + ], + encounters: [ + {generation: 1, level: 25}, + ], + }, +}; diff --git a/data/mods/pkmnybv2/moves.ts b/data/mods/pkmnybv2/moves.ts new file mode 100644 index 0000000000..c1fe156097 --- /dev/null +++ b/data/mods/pkmnybv2/moves.ts @@ -0,0 +1,1650 @@ +/* +List of flags and their descriptions: +authentic: Ignores a target's substitute. +bite: Power is multiplied by 1.5 when used by a Pokemon with the Ability Strong Jaw. +bullet: Has no effect on Pokemon with the Ability Bulletproof. +charge: The user is unable to make a move between turns. +contact: Makes contact. +dance: When used by a Pokemon, other Pokemon with the Ability Dancer can attempt to execute the same move. +defrost: Thaws the user if executed successfully while the user is frozen. +distance: Can target a Pokemon positioned anywhere in a Triple Battle. +gravity: Prevented from being executed or selected during Gravity's effect. +heal: Prevented from being executed or selected during Heal Block's effect. +mirror: Can be copied by Mirror Move. +mystery: Unknown effect. +nonsky: Prevented from being executed or selected in a Sky Battle. +powder: Has no effect on Grass-type Pokemon, Pokemon with the Ability Overcoat, and Pokemon holding Safety Goggles. +protect: Blocked by Detect, Protect, Spiky Shield, and if not a Status move, King's Shield. +pulse: Power is multiplied by 1.5 when used by a Pokemon with the Ability Mega Launcher. +punch: Power is multiplied by 1.2 when used by a Pokemon with the Ability Iron Fist. +recharge: If this move is successful, the user must recharge on the following turn and cannot make a move. +reflectable: Bounced back to the original user by Magic Coat or the Ability Magic Bounce. +snatch: Can be stolen from the original user and instead used by another Pokemon using Snatch. +sound: Has no effect on Pokemon with the Ability Soundproof. +*/ +export const Moves: {[k: string]: ModdedMoveData} = { + adaptableattack: { + accuracy: 100, + basePower: 90, + category: "Physical", + shortDesc: "Deals typeless damage. Special if SpA > Atk.", + isViable: true, + name: "Adaptable Attack", + pp: 10, + priority: 0, + flags: {protect: 1, mirror: 1, contact: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Multi-Attack", target); + }, + onModifyMove(move, pokemon, target) { + move.type = '???'; + if (pokemon.getStat('spa', false, true) > pokemon.getStat('atk', false, true)) move.category = 'Special'; + }, + onBasePower(basePower, pokemon, target) { + if (pokemon.species.name === 'Type: Null') { + return this.chainModify(1.5); + } + }, + secondary: null, + target: "normal", + type: "Normal", + contestType: "Cute", + }, + multiattack: { + num: 718, + accuracy: 100, + basePower: 120, + category: "Physical", + name: "Multi-Attack", + pp: 10, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + onModifyType(move, pokemon) { + if (pokemon.ignoringItem()) return; + move.type = this.runEvent('Memory', pokemon, null, move, 'Normal'); + }, + onModifyMove(move, pokemon) { + if (pokemon.getStat('spa', false, true) > pokemon.getStat('atk', false, true)) move.category = 'Special'; + }, + secondary: null, + target: "normal", + type: "Normal", + zMove: {basePower: 185}, + maxMove: {basePower: 95}, + contestType: "Tough", + }, + spitfire: { + accuracy: 100, + basePower: 80, + category: "Special", + shortDesc: "20% chance to burn foe(s).", + isViable: true, + name: "Spitfire", + pp: 10, + priority: 0, + flags: {protect: 1, mirror: 1, sound: 1, authentic: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Heat Wave", target); + }, + secondary: { + chance: 20, + status: 'brn', + }, + target: "allAdjacentFoes", + type: "Fire", + }, + moonblast: { + num: 585, + accuracy: 100, + basePower: 90, + category: "Special", + name: "Moonblast", + pp: 15, + priority: 0, + flags: {protect: 1, mirror: 1}, + secondary: { + chance: 10, + boosts: { + spa: -1, + }, + }, + target: "normal", + type: "Fairy", + contestType: "Beautiful", + }, + hiddenleafstrike: { + accuracy: true, + basePower: 100, + category: "Physical", + shortDesc: "High critical hit ratio. Never misses", + isViable: true, + name: "Hidden Leaf Strike", + pp: 15, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Cross Chop", target); + }, + critRatio: 2, + secondary: null, + target: "normal", + type: "Fighting", + contestType: "Cool", + }, + snipeshot: { + num: 745, + accuracy: true, + basePower: 100, + category: "Special", + shortDesc: "High critical hit ratio. Never misses", + name: "Snipe Shot", + pp: 15, + priority: 0, + flags: {protect: 1, mirror: 1, pulse: 1}, + critRatio: 2, + tracksTarget: true, + secondary: null, + target: "normal", + type: "Water", + }, + falsesurrender: { + num: 793, + accuracy: true, + basePower: 100, + category: "Physical", + shortDesc: "High critical hit ratio. Never misses", + name: "False Surrender", + pp: 10, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + critRatio: 2, + secondary: null, + target: "normal", + type: "Dark", + }, + corrosiveacid: { + accuracy: 100, + basePower: 60, + category: "Special", + shortDesc: "30% chance to burn or poison. 2x damage if target is burned or poisoned", + isViable: true, + name: "Corrosive Acid", + pp: 10, + priority: 0, + flags: {protect: 1, mirror: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Acid Spray", target); + }, + onBasePower(basePower, pokemon, target) { + if (target.status === 'psn' || target.status === 'tox' || target.status === 'brn') { + return this.chainModify(2); + } + }, + secondary: { + chance: 30, + onHit(target, source) { + const result = this.random(2); + if (result === 0) { + target.trySetStatus('brn', source); + } else if (result === 1) { + target.trySetStatus('psn', source); + } + }, + }, + target: "normal", + type: "Poison", + contestType: "Beautiful", + }, + ballup: { + accuracy: true, + basePower: 0, + category: "Status", + name: "Ball Up", + pp: 10, + priority: 4, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Defense Curl", target); + }, + stallingMove: true, + volatileStatus: 'ballup', + onTryHit(pokemon) { + return !!this.queue.willAct() && this.runEvent('StallMove', pokemon); + }, + onHit(pokemon) { + pokemon.addVolatile('stall'); + }, + condition: { + duration: 1, + onStart(target) { + this.add('-singleturn', target, 'Protect'); + }, + onTryHitPriority: 3, + onTryHit(target, source, move) { + if (!move.flags['protect'] || move.category === 'Status') { + if (move.isZ || (move.isMax && !move.breaksProtect)) target.getMoveHitData(move).zBrokeProtect = true; + return; + } + if (move.smartTarget) { + move.smartTarget = false; + } else { + this.add('-activate', target, 'move: Protect'); + } + const lockedmove = source.getVolatile('lockedmove'); + if (lockedmove) { + // Outrage counter is reset + if (source.volatiles['lockedmove'].duration === 2) { + delete source.volatiles['lockedmove']; + } + } + if (move.flags['contact']) { + this.boost({spe: -2}, source, target, this.dex.getActiveMove("Ball Up")); + } + return this.NOT_FAIL; + }, + onHit(target, source, move) { + if (move.isZOrMaxPowered && move.flags['contact']) { + this.boost({spe: -2}, source, target, this.dex.getActiveMove("Ball Up")); + } + }, + }, + secondary: null, + target: "self", + type: "Ground", + }, + doublekick: { + num: 24, + accuracy: 90, + basePower: 50, + category: "Physical", + name: "Double Kick", + pp: 30, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + multihit: 2, + secondary: null, + target: "normal", + type: "Fighting", + maxMove: {basePower: 80}, + contestType: "Cool", + }, + doublehit: { + num: 458, + accuracy: 90, + basePower: 50, + category: "Physical", + name: "Double Hit", + pp: 10, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + multihit: 2, + secondary: null, + target: "normal", + type: "Normal", + zMove: {basePower: 140}, + maxMove: {basePower: 120}, + contestType: "Cool", + }, + twineedle: { + num: 41, + accuracy: 100, + basePower: 40, + category: "Physical", + isNonstandard: null, + name: "Twineedle", + pp: 20, + priority: 0, + flags: {protect: 1, mirror: 1}, + multihit: 2, + secondary: { + chance: 20, + status: 'psn', + }, + target: "normal", + type: "Bug", + maxMove: {basePower: 100}, + contestType: "Cool", + }, + bindinglight: { + accuracy: 100, + basePower: 0, + category: "Status", + desc: "Prevents the target from switching out and increase the user's Defense and Special Defense by 1. The target can still switch out if it is holding Shed Shell or uses Baton Pass, Parting Shot, U-turn, or Volt Switch. If the target leaves the field using Baton Pass, the replacement will remain trapped. The effect ends if the user leaves the field.", + shortDesc: "Prevents the target from switching out. Raises Def and SpD by 1.", + name: "Binding Light", + pp: 5, + priority: 0, + flags: {reflectable: 1, mirror: 1, protect: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Flash", target); + }, + onHit(target, source, move) { + return target.addVolatile('trapped', source, move, 'trapper'); + }, + secondary: { + chance: 100, + self: { + boosts: { + def: 1, + spd: 1, + }, + }, + }, + target: "normal", + type: "Fairy", + zMoveBoost: {def: 1}, + contestType: "Beautiful", + }, + darkdivide: { + accuracy: 100, + basePower: 100, + category: "Special", + shortDesc: "Foe: -1 Def & SpD", + isViable: true, + name: "Dark Divide", + pp: 5, + priority: 0, + flags: {protect: 1, mirror: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Spacial Rend", target); + this.add('-anim', source, "Hex", target); + }, + secondary: { + chance: 100, + boosts: { + def: -1, + spd: -1, + }, + }, + target: "normal", + type: "Dark", + contestType: "Cute", + }, + splitatoms: { + accuracy: 100, + basePower: 250, + category: "Special", + shortDesc: "User faints after use. Summons Aurora Veil.", + name: "Split Atoms", + pp: 5, + priority: 0, + flags: {protect: 1, mirror: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Acid Armor", target); + this.add('-anim', source, "Misty Explosion", target); + }, + selfdestruct: "always", + self: { + sideCondition: 'auroraveil', + }, + secondary: null, + target: "allAdjacent", + type: "Psychic", + }, + ionicbond: { + accuracy: 90, + basePower: 0, + damageCallback(pokemon, target) { + return this.clampIntRange(target.getUndynamaxedHP() / 2, 1); + }, + category: "Special", + desc: "Deals damage to the target equal to half of its current HP, rounded down, but not less than 1 HP. Heals the user by 50% of the damage dealt", + shortDesc: "Does damage equal to 1/2 target's current HP. Heals 50% of damage dealt", + id: "ionicbond", + name: "Ionic Bond", + pp: 10, + priority: 0, + flags: {protect: 1, mirror: 1, heal: 1}, + drain: [1, 2], + secondary: null, + target: "normal", + type: "Electric", + contestType: "Tough", + }, + naturalgift: { + num: 363, + accuracy: 100, + basePower: 0, + category: "Physical", + isNonstandard: null, + shortDesc: "Type and power based on user's berry.", + name: "Natural Gift", + pp: 15, + priority: 0, + flags: {protect: 1, mirror: 1}, + onModifyType(move, pokemon) { + if (pokemon.ignoringItem()) return; + const item = pokemon.getItem(); + if (!item.naturalGift) return; + move.type = item.naturalGift.type; + }, + onPrepareHit(target, pokemon, move) { + if (pokemon.ignoringItem()) return false; + const item = pokemon.getItem(); + if (!item.naturalGift) return false; + move.basePower = item.naturalGift.basePower; + }, + secondary: null, + target: "normal", + type: "Normal", + zMove: {basePower: 160}, + maxMove: {basePower: 130}, + contestType: "Clever", + }, + websling: { + accuracy: 100, + basePower: 40, + category: "Physical", + shortDesc: "+1 Priority. Hits all adjacent foes.", + name: "Web Sling", + pp: 30, + priority: 1, + flags: {protect: 1, mirror: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Sticky Web", target); + }, + secondary: null, + target: "allAdjacentFoes", + type: "Bug", + contestType: "Cool", + }, + cloudcrush: { + accuracy: 100, + basePower: 85, + category: "Physical", + shortDesc: "20% chance to lower foe's Speed by 1", + isViable: true, + name: "Cloud Crush", + pp: 10, + priority: 0, + flags: {protect: 1, mirror: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Gust", target); + this.add('-anim', source, "Psyshock", target); + }, + secondary: { + chance: 20, + boosts: { + spe: -1, + }, + }, + target: "normal", + type: "Flying", + contestType: "Cool", + }, + oxidation: { + accuracy: 100, + basePower: 70, + category: "Special", + shortDesc: "Super effective against Steel-types", + isViable: true, + name: "Oxidation", + pp: 20, + priority: 0, + flags: {protect: 1, mirror: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Hurricane", target); + }, + onEffectiveness(typeMod, target, type) { + if (type === 'Steel') return 1; + }, + secondary: null, + target: "normal", + type: "Flying", + contestType: "Beautiful", + }, + dizzypunch: { + num: 146, + accuracy: 100, + basePower: 75, + category: "Physical", + shortDesc: "10% chance to confuse foe", + isViable: true, + isNonstandard: null, + name: "Dizzy Punch", + pp: 10, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1, punch: 1}, + secondary: { + chance: 10, + volatileStatus: 'confusion', + }, + target: "normal", + type: "Fairy", + contestType: "Cute", + }, + rockclimb: { + num: 431, + accuracy: 100, + basePower: 85, + category: "Physical", + isNonstandard: null, + shortDesc: "Gives the user the High Ground (Magnet Rise).", + isViable: true, + name: "Rock Climb", + pp: 10, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + self: { + onHit(source) { + for (const pokemon of source.side.active) { + pokemon.addVolatile('magnetrise'); + } + }, + }, + secondary: null, + target: "normal", + type: "Ground", + contestType: "Tough", + }, + bittrip: { + accuracy: 95, + basePower: 4, + basePowerCallback(pokemon, target, move) { + return 4 * (Math.pow(2, move.hit)); + }, + category: "Special", + shortDesc: "Hits 4 times. Each hit can miss, but power rises exponentially.", + isViable: true, + name: "Bit Trip", + pp: 10, + priority: 0, + flags: {protect: 1, mirror: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Signal Beam", target); + }, + multihit: 4, + multiaccuracy: true, + secondary: null, + target: "normal", + type: "Electric", + zMove: {basePower: 120}, + maxMove: {basePower: 140}, + }, + meditate: { + num: 96, + accuracy: true, + basePower: 0, + category: "Status", + shortDesc: "+1 Attack and Special Defense", + isViable: true, + isNonstandard: null, + name: "Meditate", + pp: 40, + priority: 0, + flags: {snatch: 1}, + boosts: { + atk: 1, + spd: 1, + }, + secondary: null, + target: "self", + type: "Psychic", + zMove: {boost: {atk: 1}}, + contestType: "Beautiful", + }, + chipaway: { + num: 498, + accuracy: 100, + basePower: 85, + category: "Physical", + isNonstandard: null, + name: "Chip Away", + pp: 20, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + ignoreDefensive: true, + ignoreEvasion: true, + secondary: null, + target: "normal", + type: "Dragon", + contestType: "Tough", + }, + synchronoise: { + num: 485, + accuracy: 100, + basePower: 70, + category: "Special", + shortDesc: "2x on targets that share a type. Ignores immunities", + isViable: true, + isNonstandard: null, + name: "Synchronoise", + pp: 10, + priority: 0, + flags: {protect: 1, mirror: 1, sound: 1}, + ignoreImmunity: true, + onBasePower(basePower, pokemon, target) { + if (target.hasType(pokemon.getTypes())) { + return this.chainModify(2); + } + }, + secondary: null, + target: "allAdjacent", + type: "Psychic", + contestType: "Clever", + }, + fishiousrend: { + num: 755, + accuracy: 100, + basePower: 85, + basePowerCallback(pokemon, target, move) { + if (target.newlySwitched || this.queue.willMove(target)) { + this.debug('Fishious Rend damage boost'); + return move.basePower * 2; + } + this.debug('Fishious Rend NOT boosted'); + return move.basePower; + }, + category: "Physical", + name: "Fishious Rend", + pp: 10, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + secondary: null, + target: "normal", + type: "Water", + }, + voltswitch: { + num: 521, + accuracy: 100, + basePower: 60, + category: "Special", + name: "Volt Switch", + pp: 20, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + selfSwitch: true, + secondary: null, + target: "normal", + type: "Electric", + contestType: "Cool", + }, + uturn: { + num: 369, + accuracy: 100, + basePower: 60, + category: "Physical", + name: "U-turn", + pp: 20, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + selfSwitch: true, + secondary: null, + target: "normal", + type: "Bug", + contestType: "Cute", + }, + eternabeam: { + num: 795, + accuracy: 100, + basePower: 150, + category: "Special", + desc: "User must recharge next turn unless this move KO'd its target last turn.", + shortDesc: "User must recharge next turn unless this move KO'd its target last turn.", + name: "Eternabeam", + pp: 10, + priority: 0, + flags: {recharge: 1, protect: 1, mirror: 1}, + self: null, + onHit(target, source) { + if (target.hp) { + source.addVolatile('mustrecharge'); + } + }, + secondary: null, + target: "normal", + type: "Dragon", + }, + stalagbite: { + accuracy: 100, + basePower: 80, + category: "Physical", + shortDesc: "20% chance to lower foe's Defense by 1", + isViable: true, + name: "Stalag-Bite", + pp: 15, + priority: 0, + flags: {bite: 1, contact: 1, protect: 1, mirror: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Stone Edge", target); + this.add('-anim', source, "Crunch", target); + }, + secondary: { + chance: 20, + boosts: { + def: -1, + }, + }, + target: "normal", + type: "Rock", + contestType: "Tough", + }, + cobaltwave: { + accuracy: 80, + basePower: 110, + category: "Special", + shortDesc: "10% chance to lower foe(s)'s Special Defense by 1", + isViable: true, + name: "Cobalt Wave", + pp: 5, + priority: 0, + flags: {protect: 1, mirror: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Iron Defense", target); + this.add('-anim', source, "Surf", target); + }, + secondary: { + chance: 10, + boosts: { + spd: -1, + }, + }, + target: "allAdjacent", + type: "Steel", + contestType: "Cool", + }, + petalblizzard: { + num: 572, + accuracy: 100, + basePower: 95, + category: "Physical", + name: "Petal Blizzard", + pp: 15, + priority: 0, + flags: {protect: 1, mirror: 1}, + secondary: null, + target: "allAdjacent", + type: "Grass", + contestType: "Beautiful", + }, + chillout: { + accuracy: 100, + basePower: 80, + category: "Special", + shortDesc: "Resets user's negative stats and summons Mist", + isViable: true, + name: "Chill Out", + pp: 10, + priority: 0, + flags: {protect: 1, mirror: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Icy Wind", target); + this.add('-anim', source, "Mist", target); + }, + self: { + onHit(pokemon) { + const boosts: SparseBoostsTable = {}; + let i: BoostName; + for (i in pokemon.boosts) { + if (pokemon.boosts[i] < 0) { + boosts[i] = 0; + } + } + pokemon.setBoost(boosts); + this.add('-clearnegativeboost', pokemon, '[silent]'); + this.add('-message', pokemon.name + "'s negative stat changes were removed!"); + }, + sideCondition: 'mist', + }, + secondary: null, + target: "allAdjacentFoes", + type: "Ice", + contestType: "Beautiful", + }, + eclipse: { + num: 399, + accuracy: 100, + basePower: 90, + category: "Special", + shortDesc: "Clears weather conditions", + isViable: true, + name: "Eclipse", + pp: 15, + priority: 0, + flags: {protect: 1, mirror: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Moonlight", target); + this.add('-anim', source, "Fiery Wrath", target); + }, + onHit() { + this.field.clearWeather(); + }, + secondary: null, + target: "normal", + type: "Dark", + contestType: "Cool", + }, + oceanicoperetta: { + num: 697, + accuracy: true, + basePower: 195, + category: "Special", + isNonstandard: "Past", + name: "Oceanic Operetta", + pp: 1, + priority: 0, + flags: {sound: 1}, + isZ: "primariumz", + secondary: null, + target: "normal", + type: "Fairy", + contestType: "Cool", + }, + washaway: { + accuracy: 100, + basePower: 60, + category: "Special", + shortDesc: "Heals 50% of the damage dealt and resets negative stat changes", + isViable: true, + name: "Wash Away", + pp: 10, + priority: 0, + flags: {protect: 1, mirror: 1, heal: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Soak", target); + }, + drain: [1, 2], + self: { + onHit(pokemon) { + const boosts: SparseBoostsTable = {}; + let i: BoostName; + for (i in pokemon.boosts) { + if (pokemon.boosts[i] < 0) { + boosts[i] = 0; + } + } + pokemon.setBoost(boosts); + this.add('-clearnegativeboost', pokemon, '[silent]'); + this.add('-message', pokemon.name + "'s negative stat changes were removed!"); + }, + }, + secondary: null, + target: "normal", + type: "Water", + contestType: "Clever", + }, + wipeout: { + accuracy: 100, + basePower: 120, + category: "Physical", + shortDesc: "User takes 33% recoil damamge", + isViable: true, + name: "Wipe Out", + pp: 15, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Waterfall", target); + }, + recoil: [33, 100], + secondary: null, + target: "normal", + type: "Water", + contestType: "Tough", + }, + shadowpunch: { + num: 325, + accuracy: true, + basePower: 80, + category: "Physical", + isViable: true, + name: "Shadow Punch", + pp: 20, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1, punch: 1}, + secondary: null, + target: "normal", + type: "Ghost", + contestType: "Clever", + }, + mysticalfire: { + num: 595, + accuracy: 100, + basePower: 75, + category: "Special", + isViable: true, + name: "Mystical Fire", + pp: 10, + priority: 0, + flags: {protect: 1, mirror: 1, pulse: 1}, + secondary: { + chance: 100, + boosts: { + spa: -1, + }, + }, + target: "normal", + type: "Fire", + contestType: "Beautiful", + }, + playrough: { + num: 583, + accuracy: 90, + basePower: 100, + category: "Physical", + shortDesc: "20% chance to lower foe's Attack by 1", + name: "Play Rough", + pp: 10, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + secondary: { + chance: 20, + boosts: { + atk: -1, + }, + }, + target: "normal", + type: "Fairy", + contestType: "Cute", + }, + meteormash: { + num: 309, + accuracy: 90, + basePower: 100, + category: "Physical", + name: "Meteor Mash", + pp: 10, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1, punch: 1}, + secondary: { + chance: 20, + self: { + boosts: { + atk: 1, + }, + }, + }, + target: "normal", + type: "Steel", + contestType: "Cool", + }, + wildcharge: { + num: 528, + accuracy: 100, + basePower: 100, + category: "Physical", + name: "Wild Charge", + pp: 15, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + recoil: [1, 4], + secondary: null, + target: "normal", + type: "Electric", + contestType: "Tough", + }, + skittersmack: { + num: 806, + accuracy: 100, + basePower: 90, + category: "Physical", + shortDesc: "30% chance to lower target's Special Attack by 1", + isViable: true, + name: "Skitter Smack", + pp: 10, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + secondary: { + chance: 30, + boosts: { + spa: -1, + }, + }, + target: "normal", + type: "Bug", + }, + poisonfang: { + num: 305, + accuracy: 95, + basePower: 65, + category: "Physical", + shortDesc: "50% chance to badly poison foe, 10% chance to flinch foe", + isViable: true, + name: "Poison Fang", + pp: 15, + priority: 0, + flags: {bite: 1, contact: 1, protect: 1, mirror: 1}, + secondaries: [ + { + chance: 50, + status: 'tox', + }, { + chance: 10, + volatileStatus: 'flinch', + }, + ], + target: "normal", + type: "Poison", + contestType: "Clever", + }, + heartbeat: { + num: 331, + accuracy: 100, + basePower: 25, + category: "Physical", + shortDesc: "Hits 2-5 times", + isViable: true, + name: "Heartbeat", + pp: 30, + priority: 0, + flags: {sound: 1, protect: 1, mirror: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Heart Stamp", target); + }, + multihit: [2, 5], + secondary: null, + target: "normal", + type: "Fairy", + zMove: {basePower: 140}, + maxMove: {basePower: 130}, + contestType: "Cool", + }, + toxicthread: { + num: 672, + accuracy: 90, + basePower: 0, + category: "Status", + shortDesc: "Badly poisons and lowers the target's Speed by 2", + isViable: true, + isNonstandard: null, + name: "Toxic Thread", + pp: 20, + priority: 0, + flags: {protect: 1, reflectable: 1, mirror: 1}, + status: 'tox', + boosts: { + spe: -2, + }, + secondary: null, + target: "normal", + type: "Poison", + zMove: {boost: {spe: 1}}, + contestType: "Tough", + }, + darkvoid: { + num: 464, + accuracy: 80, + basePower: 0, + category: "Status", + isNonstandard: "Past", + name: "Dark Void", + pp: 10, + priority: 0, + flags: {protect: 1, reflectable: 1, mirror: 1}, + status: 'slp', + onTryMove(pokemon, target, move) { + if (pokemon.species.name === 'Darkrai' || move.hasBounced) { + return; + } + this.add('-fail', pokemon, 'move: Dark Void'); + this.hint("Only a Pokemon whose form is Darkrai can use this move."); + return null; + }, + secondary: null, + target: "allAdjacentFoes", + type: "Dark", + zMove: {effect: 'clearnegativeboost'}, + contestType: "Clever", + }, + rototiller: { + num: 563, + accuracy: true, + basePower: 0, + category: "Status", + shortDesc: "+2 Atk and SpA for all active grounded Grass-types", + isViable: true, + isNonstandard: null, + name: "Rototiller", + pp: 10, + priority: 0, + flags: {distance: 1, nonsky: 1}, + onHitField(target, source) { + const targets: Pokemon[] = []; + let anyAirborne = false; + for (const pokemon of this.getAllActive()) { + if (!pokemon.runImmunity('Ground')) { + this.add('-immune', pokemon); + anyAirborne = true; + continue; + } + if (pokemon.hasType('Grass')) { + // This move affects every grounded Grass-type Pokemon in play. + targets.push(pokemon); + } + } + if (!targets.length && !anyAirborne) return false; // Fails when there are no grounded Grass types or airborne Pokemon + for (const pokemon of targets) { + this.boost({atk: 2, spa: 2}, pokemon, source); + } + }, + secondary: null, + target: "all", + type: "Ground", + zMove: {boost: {atk: 1}}, + contestType: "Tough", + }, + disarmingvoice: { + num: 574, + accuracy: true, + basePower: 40, + category: "Special", + shortDesc: "+1 priority. Never misses", + isViable: true, + name: "Disarming Voice", + pp: 15, + priority: 1, + flags: {protect: 1, mirror: 1, sound: 1, authentic: 1}, + secondary: null, + target: "allAdjacentFoes", + type: "Fairy", + contestType: "Cute", + }, + surf: { + num: 57, + accuracy: 100, + basePower: 95, + category: "Special", + name: "Surf", + pp: 15, + priority: 0, + flags: {protect: 1, mirror: 1, nonsky: 1}, + secondary: null, + target: "allAdjacent", + type: "Water", + contestType: "Beautiful", + }, + behemothblade: { + num: 781, + accuracy: 100, + basePower: 100, + category: "Physical", + name: "Behemoth Blade", + pp: 5, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + onBasePower(basePower, pokemon, target) { + if (target.hasAbility('maximumpotential')) { + return this.chainModify(2); + } + }, + secondary: null, + target: "normal", + type: "Steel", + }, + behemothbash: { + num: 782, + accuracy: 100, + basePower: 100, + category: "Physical", + name: "Behemoth Bash", + pp: 5, + priority: 0, + flags: {contact: 1, protect: 1, mirror: 1}, + onBasePower(basePower, pokemon, target) { + if (target.hasAbility('maximumpotential')) { + return this.chainModify(2); + } + }, + secondary: null, + target: "normal", + type: "Steel", + }, + +// Z-Moves + cobblestonecarnage: { + accuracy: true, + basePower: 210, + category: "Physical", + shortDesc: "No additional effect", + isNonstandard: "Past", + name: "Cobblestone Carnage", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Stealth Rock", target); + this.add('-anim', source, "Rock Wrecker", target); + }, + isZ: "rhyperiumz", + secondary: null, + target: "normal", + type: "Rock", + contestType: "Cool", + }, + tonguetiedtirade: { + accuracy: true, + basePower: 200, + category: "Physical", + shortDesc: "Wraps foe", + isNonstandard: "Past", + name: "Tongue-Tied Tirade", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Wrap", target); + this.add('-anim', source, "Stomp", target); + }, + isZ: "lickilickiumz", + volatileStatus: 'partiallytrapped', + secondary: null, + target: "normal", + type: "Normal", + contestType: "Cool", + }, + crowscallingcard: { + accuracy: true, + basePower: 190, + category: "Physical", + shortDesc: "No additional effect", + isNonstandard: "Past", + name: "Crow's Calling Card", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Trump Card", target); + this.add('-anim', source, "Fiery Wrath", target); + }, + isZ: "honchkriumz", + secondary: null, + target: "normal", + type: "Dark", + contestType: "Cool", + }, + witcheswishes: { + accuracy: true, + basePower: 190, + category: "Special", + shortDesc: "No additional effect", + isNonstandard: "Past", + name: "Witches' Wishes", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Astral Barrage", target); + this.add('-anim', source, "Hex", target); + }, + isZ: "mismagiumz", + secondary: null, + target: "normal", + type: "Ghost", + contestType: "Cool", + }, + lilyslastdance: { + accuracy: true, + basePower: 180, + category: "Special", + shortDesc: "Sets one layer of Toxic Spikes", + isNonstandard: "Past", + name: "Lily's Last Dance", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Petal Dance", target); + this.add('-anim', source, "Toxic Spikes", target); + }, + isZ: "roseradiumz", + self: { + onHit(source) { + source.side.foe.addSideCondition('toxicspikes'); + }, + }, + secondary: null, + target: "normal", + type: "Poison", + contestType: "Cool", + }, + iceagereign: { + accuracy: true, + basePower: 190, + category: "Special", + shortDesc: "Summons Mist", + isNonstandard: "Past", + name: "Ice Age Reign", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Sheer Cold", target); + this.add('-anim', source, "Mist", target); + }, + isZ: "walreiniumz", + self: { + sideCondition: 'mist', + }, + secondary: null, + target: "normal", + type: "Ice", + contestType: "Cool", + }, + salutetosunshine : { + accuracy: true, + basePower: 180, + category: "Physical", + shortDesc: "Summons Sunny Day", + isNonstandard: "Past", + name: "Salute to Sunshine", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Solar Blade", target); + this.add('-anim', source, "Morning Sun", target); + }, + isZ: "cherriumz", + self: { + onHit(source) { + this.field.setWeather('sunnyday'); + }, + }, + secondary: null, + target: "normal", + type: "Grass", + contestType: "Cool", + }, + hectichivemind : { + accuracy: true, + basePower: 185, + category: "Physical", + shortDesc: "User: +2 Def and SpD", + isNonstandard: "Past", + name: "Hectic Hivemind", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Heal Order", target); + this.add('-anim', source, "Attack Order", target); + }, + isZ: "vespiumz", + selfBoost: { + boosts: { + def: 2, + spd: 2, + }, + }, + secondary: null, + target: "normal", + type: "Bug", + contestType: "Cool", + }, + desertdisaster : { + accuracy: true, + basePower: 195, + category: "Physical", + shortDesc: "No additional effect", + isNonstandard: "Past", + name: "Desert Disaster", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Laser Focus", target); + this.add('-anim', source, "Drill Run", target); + }, + isZ: "krookiumz", + secondary: null, + target: "normal", + type: "Ground", + contestType: "Cool", + }, + alienatmosphere : { + accuracy: true, + basePower: 190, + category: "Special", + defensiveCategory: "Physical", + shortDesc: "Targets foe's Defense. Summons Gravity", + isNonstandard: "Past", + name: "Alien Atmosphere", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Calm Mind", target); + this.add('-anim', source, "Expanding Force", target); + }, + isZ: "beheeyemiumz", + self: { + pseudoWeather: 'gravity', + }, + secondary: null, + target: "normal", + type: "Psychic", + contestType: "Cool", + }, + earsplittingechoes : { + accuracy: true, + basePower: 190, + category: "Special", + shortDesc: "No additional effect", + isNonstandard: "Past", + name: "Ear-Splitting Echoes", + pp: 1, + priority: 0, + flags: {sound: 1, authentic: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Hyper Voice", target); + this.add('-anim', source, "Boomburst", target); + }, + isZ: "noiviumz", + secondary: null, + target: "normal", + type: "Flying", + contestType: "Cool", + }, + smolderingsauna : { + accuracy: true, + basePower: 190, + category: "Special", + shortDesc: "Burns foe. 2x damage in Sun", + isNonstandard: "Past", + name: "Smoldering Sauna", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Steam Eruption", target); + }, + onBasePower(basePower, pokemon, target) { + if (['sunnyday'].includes(pokemon.effectiveWeather())) { + this.debug('strengthend by sun'); + return this.chainModify(2); + } + }, + isZ: "volcaniumz", + secondary: { + chance: 100, + status: 'brn', + }, + target: "normal", + type: "Water", + contestType: "Cool", + }, + eternalblossom : { + accuracy: true, + basePower: 195, + category: "Special", + shortDesc: "Heals user by 50% of the damage dealt", + isNonstandard: "Past", + name: "Eternal Blossom", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Recover", target); + this.add('-anim', source, "Light of Ruin", target); + }, + drain: [1, 2], + isZ: "floettiumz", + secondary: null, + target: "normal", + type: "Fairy", + contestType: "Cool", + }, + ampedupspikeball : { + accuracy: true, + basePower: 180, + category: "Physical", + shortDesc: "Sets one layer of Spikes", + isNonstandard: "Past", + name: "Amped-Up Spikeball", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Bolt Strike", target); + this.add('-anim', source, "Spikes", target); + }, + isZ: "togedemariumz", + self: { + onHit(source) { + source.side.foe.addSideCondition('spikes'); + }, + }, + secondary: null, + target: "normal", + type: "Electric", + contestType: "Cool", + }, + neverendingwarstory : { + accuracy: true, + basePower: 180, + category: "Special", + shortDesc: "User: +2 Special Attack", + isNonstandard: "Past", + name: "Neverending War Story", + pp: 1, + priority: 0, + flags: {sound: 1, authentic: 1}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Hyper Voice", target); + this.add('-anim', source, "Clanging Scales", target); + }, + isZ: "drampiumz", + selfBoost: { + boosts: { + spa: 2, + }, + }, + secondary: null, + target: "normal", + type: "Dragon", + contestType: "Cool", + }, + moltenminefield : { + accuracy: true, + basePower: 180, + category: "Special", + shortDesc: "Burns foe", + isNonstandard: "Past", + name: "Molten Minefield", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "Work Up", target); + this.add('-anim', source, "Inferno Overdrive", target); + }, + isZ: "turtonatiumz", + secondary: { + chance: 100, + status: 'brn', + }, + target: "normal", + type: "Fire", + contestType: "Cool", + }, + crusaderscourage : { + accuracy: true, + basePower: 130, + category: "Physical", + shortDesc: "User: +1 All Stats", + isNonstandard: "Past", + name: "Crusader's Courage", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "No Retreat", target); + this.add('-anim', source, "Sacred Sword", target); + }, + isZ: "falinksiumz", + selfBoost: { + boosts: { + atk: 1, + def: 1, + spa: 1, + spd: 1, + spe: 1, + }, + }, + secondary: null, + target: "normal", + type: "Fighting", + contestType: "Cool", + }, + metallicmausoleum : { + accuracy: true, + basePower: 180, + category: "Physical", + shortDesc: "Sets a hazard that factors Steel weakness", + isNonstandard: "Past", + name: "Metallic Mausoleum", + pp: 1, + priority: 0, + flags: {}, + onPrepareHit: function(target, source, move) { + this.attrLastMove('[still]'); + this.add('-anim', source, "G-Max Steelsurge", target); + }, + isZ: "copperajiumz", + self: { + onHit(source) { + source.side.foe.addSideCondition('gmaxsteelsurge'); + }, + }, + secondary: null, + target: "normal", + type: "Steel", + contestType: "Cool", + }, +}; diff --git a/data/mods/pkmnybv2/pokedex.ts b/data/mods/pkmnybv2/pokedex.ts new file mode 100644 index 0000000000..1ffb805c4c --- /dev/null +++ b/data/mods/pkmnybv2/pokedex.ts @@ -0,0 +1,2226 @@ + +export const Pokedex: {[k: string]: ModdedSpeciesData} = { + blastoisemega: { + inherit: true, + baseStats: {hp: 79, atk: 113, def: 130, spa: 115, spd: 125, spe: 68}, + }, + butterfree: { + inherit: true, + types: ["Bug", "Psychic"], + otherFormes: ["Butterfree-Mega"], + formeOrder: ["Butterfree", "Butterfree-Mega"], + }, + butterfreemega: { + num: 12, + name: "Butterfree-Mega", + baseSpecies: "Butterfree", + forme: "Mega", + types: ["Bug", "Psychic"], + baseStats: {hp: 60, atk: 15, def: 50, spa: 150, spd: 80, spe: 140}, + abilities: {0: "Magic Guard"}, + weightkg: 32, + color: "Blue", + requiredItem: "Butterfrite", + }, + raticate: { + inherit: true, + baseStats: {hp: 65, atk: 101, def: 67, spa: 50, spd: 80, spe: 97}, + }, + raticatealola: { + inherit: true, + baseStats: {hp: 85, atk: 91, def: 77, spa: 40, spd: 90, spe: 77}, + }, + fearow: { + inherit: true, + abilities: {0: "Keen Eye", 1: "Hustle", H: "Sniper"}, + }, + spearow: { + inherit: true, + abilities: {0: "Keen Eye", 1: "Hustle", H: "Sniper"}, + }, + ekans: { + inherit: true, + types: ["Poison", "Dragon"], + }, + arbok: { + inherit: true, + types: ["Poison", "Dragon"], + baseStats: {hp: 60, atk: 105, def: 79, spa: 65, spd: 81, spe: 90}, + }, + raichualola: { + inherit: true, + abilities: {0: "Levitate", 1: "Surge Surfer", H: "Mental Health"}, + }, + sandslash: { + inherit: true, + baseStats: {hp: 75, atk: 110, def: 110, spa: 45, spd: 55, spe: 85}, + abilities: {0: "Sand Veil", 1: "Rough Skin", H: "Sand Rush"}, + }, + sandslashalola: { + inherit: true, + baseStats: {hp: 75, atk: 110, def: 120, spa: 25, spd: 65, spe: 85}, + abilities: {0: "Snow Cloak", 1: "Iron Barbs", H: "Slush Rush"}, + }, + nidoqueen: { + inherit: true, + baseStats: {hp: 91, atk: 92, def: 87, spa: 75, spd: 85, spe: 76}, + abilities: {0: "Poison Point", 1: "Royal Presence", H: "Sheer Force"}, + }, + nidoking: { + inherit: true, + baseStats: {hp: 81, atk: 102, def: 77, spa: 85, spd: 75, spe: 86}, + abilities: {0: "Poison Point", 1: "Royal Presence", H: "Sheer Force"}, + }, + wigglytuff: { + inherit: true, + baseStats: {hp: 140, atk: 80, def: 55, spa: 95, spd: 55, spe: 58}, + abilities: {0: "Cute Charm", 1: "Competitive", H: "Cacophony"}, + }, + oddish: { + inherit: true, + abilities: {0: "Chlorophyll", 1: "Leaf Guard", H: "Run Away"}, + }, + gloom: { + inherit: true, + abilities: {0: "Chlorophyll", 1: "Leaf Guard", H: "Stench"}, + }, + vileplume: { + inherit: true, + abilities: {0: "Chlorophyll", 1: "Leaf Guard", H: "Effect Spore"}, + }, + parasect: { + inherit: true, + types: ["Bug", "Ghost"], + baseStats: {hp: 60, atk: 125, def: 80, spa: 30, spd: 80, spe: 30}, + abilities: {0: "Effect Spore", 1: "Dry Skin", H: "Cursed Body"}, + }, + dugtrioalola: { + inherit: true, + baseStats: {hp: 35, atk: 100, def: 50, spa: 40, spd: 80, spe: 120}, + }, + persian: { + inherit: true, + baseStats: {hp: 65, atk: 85, def: 60, spa: 65, spd: 65, spe: 115}, + }, + persianalola: { + inherit: true, + baseStats: {hp: 65, atk: 60, def: 60, spa: 90, spd: 65, spe: 115}, + }, + golduck: { + inherit: true, + types: ["Water", "Psychic"], + baseStats: {hp: 80, atk: 82, def: 78, spa: 110, spd: 80, spe: 90}, + abilities: {0: "Mental Health", 1: "Cloud Nine", H: "Swift Swim"}, + }, + psyduck: { + inherit: true, + types: ["Water", "Psychic"], + abilities: {0: "Mental Health", 1: "Cloud Nine", H: "Swift Swim"}, + }, + machamp: { + inherit: true, + baseStats: {hp: 90, atk: 130, def: 80, spa: 55, spd: 80, spe: 70}, + }, + victreebel: { + inherit: true, + abilities: {0: "Chlorophyll", 1: "Harvest", H: "Gluttony"}, + }, + tentacruel: { + inherit: true, + otherFormes: ["Tentacruel-Mega"], + formeOrder: ["Tentacruel", "Tentacruel-Mega"], + }, + tentacruelmega: { + num: 73, + name: "Tentacruel-Mega", + baseSpecies: "Tentacruel", + forme: "Mega", + types: ["Water", "Poison"], + baseStats: {hp: 80, atk: 70, def: 90, spa: 125, spd: 125, spe: 125}, + abilities: {0: "Merciless"}, + weightkg: 55, + color: "Blue", + requiredItem: "Tentacruelite", + }, + rapidash: { + inherit: true, + types: ["Fire", "Fairy"], + baseStats: {hp: 65, atk: 100, def: 70, spa: 80, spd: 80, spe: 115}, + abilities: {0: "Reckless", 1: "Flash Fire", H: "Flame Body"}, + }, + rapidashgalar: { + inherit: true, + baseStats: {hp: 65, atk: 90, def: 70, spa: 90, spd: 80, spe: 115}, + abilities: {0: "Pixie Power", 1: "Pastel Veil", H: "Anticipation"}, + }, + farfetchdgalar: { + inherit: true, + types: ["Fighting", "Flying"], + }, + dodrio: { + inherit: true, + abilities: {0: "Quick Feet", 1: "Early Bird", H: "Tangled Feet"}, + }, + seel: { + inherit: true, + abilities: {0: "Thick Fat", 1: "Technician", H: "Seal Away"}, + }, + dewgong: { + inherit: true, + baseStats: {hp: 95, atk: 70, def: 95, spa: 70, spd: 95, spe: 70}, + abilities: {0: "Thick Fat", 1: "Technician", H: "Seal Away"}, + }, + drowzee: { + inherit: true, + types: ["Psychic", "Dark"], + abilities: {0: "Insomnia", 1: "Forewarn", H: "Mental Health"}, + }, + hypno: { + inherit: true, + types: ["Psychic", "Dark"], + baseStats: {hp: 85, atk: 83, def: 70, spa: 83, spd: 125, spe: 67}, + abilities: {0: "Insomnia", 1: "Forewarn", H: "Mental Health"}, + }, + kingler: { + inherit: true, + baseStats: {hp: 55, atk: 140, def: 115, spa: 50, spd: 50, spe: 75}, + }, + exeggcute: { + inherit: true, + abilities: {0: "Chlorophyll", 1: "Mental Health", H: "Harvest"}, + }, + exeggutor: { + inherit: true, + abilities: {0: "Chlorophyll", 1: "Mental Health", H: "Harvest"}, + }, + exeggutoralola: { + inherit: true, + abilities: {0: "Chlorophyll", 1: "Frisk", H: "Harvest"}, + }, + marowak: { + inherit: true, + types: ["Ground", "Fighting"], + }, + hitmonlee: { + inherit: true, + baseStats: {hp: 70, atk: 120, def: 53, spa: 35, spd: 110, spe: 87}, + }, + hitmonchan: { + inherit: true, + baseStats: {hp: 70, atk: 89, def: 100, spa: 35, spd: 110, spe: 71}, + }, + weezing: { + inherit: true, + baseStats: {hp: 65, atk: 90, def: 130, spa: 85, spd: 70, spe: 60}, + }, + weezinggalar: { + inherit: true, + baseStats: {hp: 65, atk: 85, def: 130, spa: 90, spd: 70, spe: 60}, + }, + goldeen: { + inherit: true, + abilities: {0: "Swift Swim", 1: "Lightning Rod", H: "Galvanize"}, + }, + seaking: { + inherit: true, + baseStats: {hp: 80, atk: 112, def: 75, spa: 65, spd: 80, spe: 88}, + abilities: {0: "Swift Swim", 1: "Lightning Rod", H: "Galvanize"}, + }, + jynx: { + inherit: true, + evos: ["Frostonna"], + }, + frostonna: { + num: 8998, + name: "Frostonna", + types: ["Ice", "Psychic"], + gender: "F", + baseStats: {hp: 75, atk: 60, def: 67, spa: 138, spd: 115, spe: 85}, + abilities: {0: "Oblivious", 1: "Demotivate", H: "Dry Skin"}, + heightm: 1.7, + weightkg: 80.6, + color: "Red", + prevo: "Jynx", + evoType: "trade", + evoItem: "Frosterizer", + eggGroups: ["Human-Like"], + }, + elekid: { + inherit: true, + abilities: {0: "Static", 1: "Lightning Rod", H: "Vital Spirit"}, + }, + electabuzz: { + inherit: true, + abilities: {0: "Static", 1: "Lightning Rod", H: "Vital Spirit"}, + }, + magby: { + inherit: true, + abilities: {0: "Flame Body", 1: "Flash Fire", H: "Vital Spirit"}, + }, + magmar: { + inherit: true, + abilities: {0: "Flame Body", 1: "Flash Fire", H: "Vital Spirit"}, + }, + magikarp: { + inherit: true, + abilities: {0: "Swift Swim", 1: "Steadfast", H: "Rattled"}, + }, + gyarados: { + inherit: true, + abilities: {0: "Intimidate", 1: "Defiant", H: "Moxie"}, + }, + ditto: { + inherit: true, + baseStats: {hp: 58, atk: 58, def: 58, spa: 58, spd: 58, spe: 58}, + }, + eevee: { + inherit: true, + evos: ["Vaporeon", "Jolteon", "Flareon", "Espeon", "Umbreon", "Leafeon", "Glaceon", "Sylveon", "Geareon", "Mytheon"], + }, + geareon: { + num: 8999, + name: "Geareon", + types: ["Steel"], + genderRatio: {M: 0.875, F: 0.125}, + baseStats: {hp: 95, atk: 65, def: 130, spa: 110, spd: 60, spe: 65}, + abilities: {0: "Light Metal", H: "Steam Engine"}, + heightm: 1.1, + weightkg: 50, + color: "Gray", + prevo: "Eevee", + evoType: "trade", + evoItem: "Metal Coat", + eggGroups: ["Field"], + }, + mytheon: { + num: 9000, + name: "Mytheon", + types: ["Dragon"], + genderRatio: {M: 0.875, F: 0.125}, + baseStats: {hp: 110, atk: 95, def: 65, spa: 60, spd: 65, spe: 130}, + abilities: {0: "Pressure", H: "Tough Claws"}, + heightm: 0.9, + weightkg: 24, + color: "Blue", + prevo: "Eevee", + evoType: "trade", + evoItem: "Dragon Scale", + eggGroups: ["Field"], + }, + jolteon: { + inherit: true, + abilities: {0: "Volt Absorb", H: "Iron Barbs"}, + }, + flareon: { + inherit: true, + baseStats: {hp: 65, atk: 130, def: 60, spa: 110, spd: 65, spe: 95}, + }, + porygon: { + inherit: true, + types: ["Normal", "Electric"], + }, + porygon2: { + inherit: true, + types: ["Normal", "Electric"], + }, + porygonz: { + inherit: true, + types: ["Normal", "Electric"], + }, + chikorita: { + inherit: true, + abilities: {0: "Overgrow", H: "Flower Veil"}, + }, + bayleef: { + inherit: true, + abilities: {0: "Overgrow", H: "Flower Veil"}, + }, + meganium: { + inherit: true, + abilities: {0: "Overgrow", H: "Flower Veil"}, + otherFormes: ["Meganium-Mega"], + formeOrder: ["Meganium", "Meganium-Mega"], + }, + meganiummega: { + num: 154, + name: "Meganium-Mega", + baseSpecies: "Meganium", + forme: "Mega", + types: ["Grass"], + baseStats: {hp: 80, atk: 85, def: 131, spa: 118, spd: 131, spe: 80}, + abilities: {0: "Unaware"}, + weightkg: 101, + color: "Green", + requiredItem: "Meganiumite", + }, + cyndaquil: { + inherit: true, + baseStats: {hp: 52, atk: 39, def: 50, spa: 65, spd: 43, spe: 60}, + }, + quilava: { + inherit: true, + baseStats: {hp: 64, atk: 58, def: 65, spa: 80, spd: 58, spe: 80}, + }, + typhlosion: { + inherit: true, + baseStats: {hp: 84, atk: 78, def: 85, spa: 100, spd: 78, spe: 109}, + otherFormes: ["Typhlosion-Mega"], + formeOrder: ["Typhlosion", "Typhlosion-Mega"], + }, + typhlosionmega: { + num: 157, + name: "Typhlosion-Mega", + baseSpecies: "Typhlosion", + forme: "Mega", + types: ["Fire"], + baseStats: {hp: 84, atk: 78, def: 110, spa: 143, spd: 100, spe: 119}, + abilities: {0: "Demotivate"}, + weightkg: 80, + color: "Yellow", + requiredItem: "Typhlosionite", + }, + feraligatr: { + inherit: true, + otherFormes: ["Typhlosion-Mega"], + formeOrder: ["Typhlosion", "Typhlosion-Mega"], + }, + feraligatrmega: { + num: 160, + name: "Feraligatr-Mega", + baseSpecies: "Feraligatr", + forme: "Mega", + types: ["Water"], + baseStats: {hp: 85, atk: 155, def: 120, spa: 79, spd: 103, spe: 88}, + abilities: {0: "Strong Jaw"}, + weightkg: 89, + color: "Blue", + requiredItem: "Feraligatrite", + }, + sentret: { + inherit: true, + types: ["Normal", "Fairy"], + abilities: {0: "Long Reach", 1: "Keen Eye", H: "Friend Guard"}, + }, + furret: { + inherit: true, + types: ["Normal", "Fairy"], + baseStats: {hp: 85, atk: 81, def: 64, spa: 45, spd: 95, spe: 90}, + abilities: {0: "Long Reach", 1: "Keen Eye", H: "Fluffy"}, + }, + noctowl: { + inherit: true, + baseStats: {hp: 110, atk: 50, def: 60, spa: 96, spd: 96, spe: 70}, + }, + ledyba: { + inherit: true, + abilities: {0: "Swarm", 1: "Early Bird", H: "Pure Power"}, + }, + ledian: { + inherit: true, + types: ["Bug", "Fighting"], + baseStats: {hp: 55, atk: 50, def: 45, spa: 55, spd: 110, spe: 95}, + abilities: {0: "Swarm", 1: "Early Bird", H: "Pure Power"}, + }, + ariados: { + inherit: true, + baseStats: {hp: 70, atk: 100, def: 70, spa: 60, spd: 70, spe: 40}, + abilities: {0: "Swarm", 1: "Insomnia", H: "Prankster"}, + }, + lanturn: { + inherit: true, + baseStats: {hp: 125, atk: 58, def: 58, spa: 86, spd: 86, spe: 67}, + }, + xatu: { + inherit: true, + baseStats: {hp: 75, atk: 75, def: 80, spa: 95, spd: 80, spe: 95}, + }, + bellossom: { + inherit: true, + abilities: {0: "Chlorophyll", 1: "Dancer", H: "Healer"}, + }, + politoed: { + inherit: true, + baseStats: {hp: 90, atk: 75, def: 75, spa: 90, spd: 100, spe: 80}, + }, + sunflora: { + inherit: true, + baseStats: {hp: 85, atk: 65, def: 85, spa: 105, spd: 95, spe: 30}, + abilities: {0: "Chlorophyll", 1: "Drought", H: "Early Bird"}, + }, + umbreon: { + inherit: true, + abilities: {0: "Synchronize", H: "Poison Point"}, + }, + slowking: { + inherit: true, + otherFormes: ["Slowking-Mega", "Slowking-Galar"], + formeOrder: ["Slowking", "Slowking-Mega", "Slowking-Galar"], + }, + slowkingmega: { + num: 199, + name: "Slowking-Mega", + baseSpecies: "Slowking", + forme: "Mega", + types: ["Water", "Psychic"], + baseStats: {hp: 95, atk: 75, def: 80, spa: 130, spd: 180, spe: 30}, + abilities: {0: "Analytic"}, + weightkg: 279.5, + color: "Pink", + requiredItem: "Slowkinite", + }, + misdreavus: { + inherit: true, + types: ["Ghost", "Fairy"], + }, + unown: { + inherit: true, + baseStats: {hp: 48, atk: 48, def: 48, spa: 144, spd: 48, spe: 48}, + abilities: {0: "Levitate"}, + }, + girafarig: { + inherit: true, + baseStats: {hp: 70, atk: 100, def: 65, spa: 100, spd: 65, spe: 85}, + abilities: {0: "Inner Focus", 1: "Sap Sipper", H: "Parental Bond"}, + }, + dunsparce: { + inherit: true, + types: ["Normal", "Dragon"], + baseStats: {hp: 100, atk: 90, def: 80, spa: 70, spd: 60, spe: 50}, + }, + steelixmega: { + inherit: true, + abilities: {0: "Solidify"}, + }, + granbull: { + inherit: true, + otherFormes: ["Granbull-Mega"], + formeOrder: ["Granbull", "Granbull-Mega"], + }, + granbullmega: { + num: 210, + name: "Granbull-Mega", + baseSpecies: "Granbull", + forme: "Mega", + types: ["Fairy", "Rock"], + baseStats: {hp: 90, atk: 150, def: 90, spa: 60, spd: 100, spe: 60}, + abilities: {0: "Strong Jaw"}, + weightkg: 48.7, + color: "Pink", + requiredItem: "Granbullite", + }, + ursaring: { + inherit: true, + abilities: {0: "Guts", 1: "Quick Feet", H: "Honey Gather"}, + }, + magcargo: { + inherit: true, + baseStats: {hp: 60, atk: 50, def: 140, spa: 100, spd: 80, spe: 50}, + }, + corsolagalar: { + inherit: true, + abilities: {0: "Weak Armor", 1: "Cursed Body", H: "Perish Body"}, + }, + remoraid: { + inherit: true, + abilities: {0: "Hustle", 1: "Mega Launcher", H: "Moody"}, + }, + octillery: { + inherit: true, + abilities: {0: "Suction Cups", 1: "Mega Launcher", H: "Protean"}, + }, + stantler: { + inherit: true, + baseStats: {hp: 73, atk: 85, def: 72, spa: 105, spd: 65, spe: 95}, + }, + hitmontop: { + inherit: true, + baseStats: {hp: 70, atk: 95, def: 95, spa: 35, spd: 110, spe: 70}, + }, + raikou: { + inherit: true, + abilities: {0: "Pressure", H: "Vital Spirit"}, + }, + entei: { + inherit: true, + abilities: {0: "Pressure", H: "Scrappy"}, + }, + mightyena: { + inherit: true, + baseStats: {hp: 70, atk: 100, def: 70, spa: 60, spd: 60, spe: 100}, + }, + beautifly: { + inherit: true, + baseStats: {hp: 60, atk: 70, def: 50, spa: 100, spd: 50, spe: 75}, + abilities: {0: "Swarm", 1: "Tinted Lens", H: "Rivalry"}, + }, + dustox: { + inherit: true, + baseStats: {hp: 60, atk: 50, def: 70, spa: 50, spd: 100, spe: 75}, + abilities: {0: "Shield Dust", 1: "Compound Eyes", H: "Honey Gather"}, + }, + taillow: { + inherit: true, + abilities: {0: "Guts", 1: "Scrappy", H: "Cacophony"}, + }, + swellow: { + inherit: true, + abilities: {0: "Guts", 1: "Scrappy", H: "Cacophony"}, + }, + masquerain: { + inherit: true, + types: ["Bug", "Water"], + }, + slakoth: { + inherit: true, + abilities: {0: "Truant", H: "Klutz"}, + }, + slaking: { + inherit: true, + abilities: {0: "Truant", H: "Klutz"}, + }, + vigoroth: { + inherit: true, + abilities: {0: "Vital Spirit", H: "Tough Claws"}, + }, + shedinja: { + inherit: true, + baseStats: {hp: 1, atk: 110, def: 45, spa: 30, spd: 30, spe: 40}, + }, + loudred: { + inherit: true, + abilities: {0: "Soundproof", 1: "Scrappy", H: "Cacophony"}, + }, + exploud: { + inherit: true, + abilities: {0: "Soundproof", 1: "Scrappy", H: "Cacophony"}, + }, + whismur: { + inherit: true, + abilities: {0: "Soundproof", 1: "Rattled", H: "Cacophony"}, + }, + nosepass: { + inherit: true, + types: ["Rock", "Electric"], + }, + delcatty: { + inherit: true, + baseStats: {hp: 90, atk: 65, def: 65, spa: 55, spd: 55, spe: 90}, + }, + plusle: { + inherit: true, + types: ["Electric", "Fire"], + baseStats: {hp: 60, atk: 60, def: 50, spa: 95, spd: 85, spe: 95}, + }, + minun: { + inherit: true, + types: ["Electric", "Ice"], + baseStats: {hp: 60, atk: 50, def: 60, spa: 85, spd: 95, spe: 95}, + }, + gulpin: { + inherit: true, + types: ["Poison", "Normal"], + }, + swalot: { + inherit: true, + types: ["Poison", "Normal"], + baseStats: {hp: 113, atk: 83, def: 83, spa: 83, spd: 83, spe: 63}, + }, + wailord: { + inherit: true, + baseStats: {hp: 190, atk: 100, def: 45, spa: 100, spd: 45, spe: 60}, + }, + grumpig: { + inherit: true, + baseStats: {hp: 80, atk: 90, def: 65, spa: 90, spd: 110, spe: 80}, + }, + spinda: { + inherit: true, + baseStats: {hp: 70, atk: 70, def: 70, spa: 70, spd: 70, spe: 70}, + }, + trapinch: { + inherit: true, + types: ["Ground", "Bug"], + }, + vibrava: { + inherit: true, + types: ["Ground", "Bug"], + abilities: {0: "Levitate", 1: "Shield Dust", H: "Tinted Lens"}, + }, + flygon: { + inherit: true, + types: ["Ground", "Bug"], + abilities: {0: "Levitate", 1: "Shield Dust", H: "Tinted Lens"}, + }, + zangoose: { + inherit: true, + baseStats: {hp: 73, atk: 115, def: 60, spa: 60, spd: 60, spe: 100}, + }, + seviper: { + inherit: true, + baseStats: {hp: 73, atk: 75, def: 60, spa: 100, spd: 60, spe: 100}, + }, + whiscash: { + inherit: true, + baseStats: {hp: 130, atk: 78, def: 73, spa: 78, spd: 73, spe: 71}, + }, + baltoy: { + inherit: true, + abilities: {0: "Levitate", H: "Seal Away"}, + }, + claydol: { + inherit: true, + abilities: {0: "Levitate", H: "Seal Away"}, + }, + milotic: { + inherit: true, + otherFormes: ["Milotic-Mega"], + formeOrder: ["Milotic", "Milotic-Mega"], + }, + miloticmega: { + num: 350, + name: "Milotic-Mega", + baseSpecies: "Milotic", + forme: "Mega", + types: ["Water", "Fairy"], + baseStats: {hp: 95, atk: 70, def: 109, spa: 130, spd: 155, spe: 81}, + abilities: {0: "Pressure"}, + weightkg: 162, + color: "Blue", + requiredItem: "Milotite", + }, + castform: { + inherit: true, + otherFormes: ["Castform-Sunny", "Castform-Rainy", "Castform-Snowy", "Castform-Sandy"], + formeOrder: ["Castform", "Castform-Sunny", "Castform-Rainy", "Castform-Snowy", "Castform-Sandy"], + }, + castformsandy: { + num: 351, + name: "Castform-Sandy", + baseSpecies: "Castform", + forme: "Sandy", + types: ["Rock"], + baseStats: {hp: 70, atk: 70, def: 70, spa: 70, spd: 70, spe: 70}, + abilities: {0: "Forecast"}, + heightm: 0.3, + weightkg: 0.8, + color: "Brown", + eggGroups: ["Fairy", "Amorphous"], + requiredAbility: "Forecast", + battleOnly: "Castform", + }, + kecleon: { + inherit: true, + baseStats: {hp: 80, atk: 100, def: 70, spa: 70, spd: 120, spe: 40}, + }, + shuppet: { + inherit: true, + types: ["Ghost", "Normal"], + }, + banette: { + inherit: true, + types: ["Ghost", "Normal"], + }, + banettemega: { + inherit: true, + types: ["Ghost", "Normal"], + }, + duskull: { + inherit: true, + abilities: {0: "Levitate", 1: "Seal Away", H: "Frisk"}, + }, + dusclops: { + inherit: true, + abilities: {0: "Pressure", 1: "Seal Away", H: "Frisk"}, + }, + dusknoir: { + inherit: true, + abilities: {0: "Levitate", 1: "Seal Away", H: "Frisk"}, + otherFormes: ["Dusknoir-Mega"], + formeOrder: ["Dusknoir", "Dusknoir-Mega"], + }, + dusknoirmega: { + num: 477, + name: "Dusknoir-Mega", + baseSpecies: "Dusknoir", + forme: "Mega", + types: ["Ghost", "Fighting"], + baseStats: {hp: 45, atk: 140, def: 160, spa: 75, spd: 160, spe: 45}, + abilities: {0: "Iron Fist"}, + weightkg: 107, + color: "Black", + requiredItem: "Dusknoirite", + }, + tropius: { + inherit: true, + types: ["Grass", "Dragon"], + baseStats: {hp: 109, atk: 68, def: 93, spa: 72, spd: 97, spe: 51}, + abilities: {0: "Chlorophyll", 1: "Thick Fat", H: "Harvest"}, + }, + chimecho: { + inherit: true, + types: ["Psychic", "Steel"], + baseStats: {hp: 75, atk: 50, def: 80, spa: 105, spd: 100, spe: 65}, + }, + absolmega: { + inherit: true, + types: ["Dark", "Fairy"], + }, + froslass: { + inherit: true, + otherFormes: ["Froslass-Mega"], + formeOrder: ["Froslass", "Froslass-Mega"], + }, + froslassmega: { + num: 478, + name: "Froslass-Mega", + baseSpecies: "Froslass", + forme: "Mega", + types: ["Ice", "Ghost"], + baseStats: {hp: 70, atk: 120, def: 70, spa: 120, spd: 70, spe: 130}, + abilities: {0: "Shadow Beacon"}, + weightkg: 27, + color: "White", + requiredItem: "Froslassite", + }, + huntail: { + inherit: true, + types: ["Water", "Dark"], + }, + gorebyss: { + inherit: true, + types: ["Water", "Psychic"], + }, + luvdisc: { + inherit: true, + types: ["Water", "Fairy"], + abilities: {0: "Swift Swim", 1: "Mental Health", H: "Regenerator"}, + evos: ["Alomomola"], + }, + alomomola: { + inherit: true, + types: ["Water", "Fairy"], + abilities: {0: "Swift Swim", 1: "Mental Health", H: "Regenerator"}, + prevo: "Luvdisc", + evoLevel: 40, + canHatch: true, + }, + deoxys: { + inherit: true, + types: ["Psychic", "Poison"], + baseStats: {hp: 50, atk: 110, def: 110, spa: 110, spd: 110, spe: 110}, + }, + deoxysattack: { + inherit: true, + types: ["Psychic", "Poison"], + }, + deoxysdefense: { + inherit: true, + types: ["Psychic", "Poison"], + }, + deoxysspeed: { + inherit: true, + types: ["Psychic", "Poison"], + }, + torterra: { + inherit: true, + baseStats: {hp: 95, atk: 114, def: 110, spa: 66, spd: 85, spe: 64}, + }, + piplup: { + inherit: true, + abilities: {0: "Torrent", H: "Competitive"}, + }, + prinplup: { + inherit: true, + abilities: {0: "Torrent", H: "Competitive"}, + }, + empoleon: { + inherit: true, + baseStats: {hp: 88, atk: 86, def: 88, spa: 111, spd: 101, spe: 60}, + abilities: {0: "Torrent", H: "Competitive"}, + }, + bibarel: { + inherit: true, + baseStats: {hp: 99, atk: 85, def: 60, spa: 75, spd: 60, spe: 81}, + }, + kricketune: { + inherit: true, + types: ["Bug", "Normal"], + baseStats: {hp: 77, atk: 85, def: 51, spa: 85, spd: 51, spe: 75}, + abilities: {0: "Swarm", 1: "Cacophony", H: "Technician"}, + }, + kricketot: { + inherit: true, + types: ["Bug", "Normal"], + abilities: {0: "Shed Skin", 1: "Soundproof", H: "Run Away"}, + }, + shinx: { + inherit: true, + abilities: {0: "Strong Jaw", 1: "Intimidate", H: "Guts"}, + }, + luxio: { + inherit: true, + abilities: {0: "Strong Jaw", 1: "Intimidate", H: "Guts"}, + }, + luxray: { + inherit: true, + types: ["Electric", "Dark"], + baseStats: {hp: 80, atk: 120, def: 79, spa: 95, spd: 79, spe: 80}, + abilities: {0: "Strong Jaw", 1: "Intimidate", H: "Guts"}, + }, + cranidos: { + inherit: true, + types: ["Rock", "Fighting"], + abilities: {0: "Mold Breaker", 1: "Reckless", H: "Sheer Force"}, + }, + rampardos: { + inherit: true, + types: ["Rock", "Fighting"], + baseStats: {hp: 97, atk: 165, def: 50, spa: 65, spd: 50, spe: 68}, + abilities: {0: "Mold Breaker", 1: "Reckless", H: "Sheer Force"}, + }, + shieldon: { + inherit: true, + baseStats: {hp: 30, atk: 42, def: 118, spa: 52, spd: 88, spe: 20}, + abilities: {0: "Sturdy", 1: "Solid Rock", H: "Soundproof"}, + }, + bastiodon: { + inherit: true, + baseStats: {hp: 70, atk: 42, def: 158, spa: 62, spd: 138, spe: 20}, + abilities: {0: "Sturdy", 1: "Solid Rock", H: "Soundproof"}, + }, + burmy: { + inherit: true, + abilities: {0: "Shed Skin", 1: "Rattled", H: "Overcoat"}, + }, + wormadam: { + inherit: true, + baseStats: {hp: 70, atk: 69, def: 95, spa: 89, spd: 135, spe: 36}, + abilities: {0: "Anticipation", 1: "Grass Pelt", H: "Overcoat"}, + }, + wormadamsandy: { + inherit: true, + baseStats: {hp: 70, atk: 89, def: 135, spa: 69, spd: 95, spe: 36}, + abilities: {0: "Anticipation", 1: "Sand Force", H: "Overcoat"}, + }, + wormadamtrash: { + inherit: true, + baseStats: {hp: 70, atk: 79, def: 115, spa: 79, spd: 115, spe: 36}, + abilities: {0: "Anticipation", 1: "Light Metal", H: "Overcoat"}, + }, + mothim: { + inherit: true, + baseStats: {hp: 70, atk: 104, def: 60, spa: 104, spd: 60, spe: 86}, + abilities: {0: "Swarm", 1: "Honey Gather", H: "Tinted Lens"}, + }, + combee: { + inherit: true, + abilities: {0: "Healer", 1: "Honey Gather", H: "Hustle"}, + }, + vespiquen: { + inherit: true, + types: ["Bug", "Poison"], + baseStats: {hp: 70, atk: 90, def: 112, spa: 90, spd: 112, spe: 40}, + abilities: {0: "Royal Presence", 1: "Honey Gather", H: "Intimidate"}, + }, + pachirisu: { + inherit: true, + types: ["Electric", "Grass"], + baseStats: {hp: 70, atk: 45, def: 90, spa: 55, spd: 90, spe: 95}, + abilities: {0: "Anticipation", 1: "Pickup", H: "Volt Absorb"}, + }, + buizel: { + inherit: true, + abilities: {0: "Swift Swim", 1: "Technician", H: "Water Veil"}, + }, + floatzel: { + inherit: true, + types: ["Water", "Dark"], + baseStats: {hp: 85, atk: 115, def: 55, spa: 85, spd: 50, spe: 115}, + abilities: {0: "Swift Swim", 1: "Technician", H: "Water Veil"}, + }, + cherrim: { + inherit: true, + types: ["Grass", "Ghost"], + baseStats: {hp: 70, atk: 80, def: 70, spa: 87, spd: 78, spe: 105}, + }, + cherrimsunshine: { + inherit: true, + types: ["Grass", "Fairy"], + baseStats: {hp: 70, atk: 80, def: 70, spa: 87, spd: 78, spe: 105}, + }, + drifblim: { + inherit: true, + baseStats: {hp: 150, atk: 80, def: 44, spa: 100, spd: 54, spe: 80}, + }, + mismagius: { + inherit: true, + types: ["Ghost", "Fairy"], + baseStats: {hp: 60, atk: 60, def: 60, spa: 115, spd: 115, spe: 115}, + }, + honchkrow: { + inherit: true, + types: ["Dark", "Flying"], + baseStats: {hp: 100, atk: 125, def: 52, spa: 105, spd: 52, spe: 91}, + }, + chingling: { + inherit: true, + types: ["Psychic", "Steel"], + }, + stunky: { + inherit: true, + abilities: {0: "Stench", 1: "Aftermath", H: "Honey Gather"}, + }, + skuntank: { + inherit: true, + baseStats: {hp: 103, atk: 93, def: 67, spa: 91, spd: 61, spe: 84}, + abilities: {0: "Stench", 1: "Aftermath", H: "Honey Gather"}, + }, + chatot: { + inherit: true, + baseStats: {hp: 76, atk: 65, def: 65, spa: 97, spd: 62, spe: 91}, + abilities: {0: "Keen Eye", 1: "Cacophony", H: "Own Tempo"}, + }, + spiritomb: { + inherit: true, + baseStats: {hp: 54, atk: 108, def: 108, spa: 108, spd: 108, spe: 54}, + abilities: {0: "Seal Away", 1: "Shadow Beacon", H: "Infiltrator"}, + }, + drapion: { + inherit: true, + otherFormes: ["Drapion-Mega"], + formeOrder: ["Drapion", "Drapion-Mega"], + }, + drapionmega: { + num: 452, + name: "Drapion-Mega", + baseSpecies: "Drapion", + forme: "Mega", + types: ["Poison", "Dark"], + baseStats: {hp: 70, atk: 130, def: 130, spa: 60, spd: 110, spe: 110}, + abilities: {0: "Tough Claws"}, + weightkg: 62, + color: "Purple", + requiredItem: "Drapionite", + }, + toxicroak: { + inherit: true, + baseStats: {hp: 83, atk: 106, def: 65, spa: 86, spd: 65, spe: 95}, + }, + carnivine: { + inherit: true, + baseStats: {hp: 84, atk: 120, def: 82, spa: 90, spd: 82, spe: 46}, + }, + lumineon: { + inherit: true, + baseStats: {hp: 89, atk: 69, def: 89, spa: 89, spd: 89, spe: 109}, + }, + abomasnowmega: { + inherit: true, + baseStats: {hp: 90, atk: 122, def: 90, spa: 132, spd: 90, spe: 70}, + }, + weavile: { + inherit: true, + abilities: {0: "Pressure", 1: "Unnerve", H: "Pickpocket"}, + }, + electivire: { + inherit: true, + types: ["Electric", "Fighting"], + abilities: {0: "Motor Drive", 1: "Reckless", H: "Vital Spirit"}, + }, + magmortar: { + inherit: true, + types: ["Fire", "Dark"], + abilities: {0: "Flame Body", 1: "Mega Launcher", H: "Vital Spirit"}, + }, + yanmega: { + inherit: true, + types: ["Bug", "Dragon"], + }, + leafeon: { + inherit: true, + abilities: {0: "Chlorophyll", H: "Technician"}, + }, + glaceon: { + inherit: true, + abilities: {0: "Ice Body", H: "Magic Guard"}, + }, + gallade: { + inherit: true, + abilities: {0: "Steadfast", 1: "Inner Focus", H: "Justified"}, + }, + gallademega: { + inherit: true, + abilities: {0: "Knight's Blade"}, + }, + rotom: { + inherit: true, + abilities: {0: "Levitate", H: "Download"}, + }, + rotomheat: { + inherit: true, + abilities: {0: "Levitate", H: "Flame Body"}, + }, + rotomwash: { + inherit: true, + abilities: {0: "Levitate", H: "Water Absorb"}, + }, + rotomfrost: { + inherit: true, + abilities: {0: "Levitate", H: "Ice Body"}, + }, + rotommow: { + inherit: true, + abilities: {0: "Levitate", H: "Hyper Cutter"}, + }, + rotomfan: { + inherit: true, + types: ["Electric", "Steel"], + abilities: {0: "Levitate", H: "Light Metal"}, + }, + uxie: { + inherit: true, + abilities: {0: "Levitate", H: "Oblivious"}, + }, + mesprit: { + inherit: true, + abilities: {0: "Levitate", H: "Vital Spirit"}, + }, + azelf: { + inherit: true, + abilities: {0: "Levitate", H: "Sturdy"}, + }, + phione: { + inherit: true, + types: ["Water", "Fairy"], + abilities: {0: "Hydration", H: "Pixie Power"}, + }, + manaphy: { + inherit: true, + types: ["Water", "Fairy"], + abilities: {0: "Hydration", H: "Pixie Power"}, + }, + shayminsky: { + inherit: true, + baseStats: {hp: 100, atk: 100, def: 85, spa: 103, spd: 85, spe: 127}, + abilities: {0: "Cloud Nine"}, + }, + pignite: { + inherit: true, + types: ["Fire", "Rock"], + }, + emboar: { + inherit: true, + types: ["Fire", "Rock"], + }, + oshawott: { + inherit: true, + abilities: {0: "Torrent", H: "Knight's Blade"}, + }, + dewott: { + inherit: true, + types: ["Water", "Fighting"], + abilities: {0: "Torrent", H: "Knight's Blade"}, + }, + samurott: { + inherit: true, + types: ["Water", "Fighting"], + abilities: {0: "Torrent", H: "Knight's Blade"}, + }, + watchog: { + inherit: true, + types: ["Normal", "Psychic"], + baseStats: {hp: 60, atk: 105, def: 69, spa: 60, spd: 69, spe: 97}, + }, + simisage: { + inherit: true, + baseStats: {hp: 75, atk: 113, def: 63, spa: 113, spd: 63, spe: 101}, + abilities: {0: "Gluttony", 1: "Own Tempo", H: "Overgrow"}, + }, + simisear: { + inherit: true, + baseStats: {hp: 75, atk: 113, def: 63, spa: 113, spd: 63, spe: 101}, + abilities: {0: "Gluttony", 1: "Soundproof", H: "Blaze"}, + }, + simipour: { + inherit: true, + baseStats: {hp: 75, atk: 113, def: 63, spa: 113, spd: 63, spe: 101}, + abilities: {0: "Gluttony", 1: "Keen Eye", H: "Torrent"}, + }, + musharna: { + inherit: true, + types: ["Psychic", "Fairy"], + abilities: {0: "Telepathy", 1: "Synchronize", H: "Comatose"}, + }, + swoobat: { + inherit: true, + baseStats: {hp: 77, atk: 57, def: 65, spa: 77, spd: 65, spe: 114}, + }, + audinomega: { + inherit: true, + abilities: {0: "Regenerator"}, + }, + throh: { + inherit: true, + abilities: {0: "Guts", 1: "Sniper", H: "Mold Breaker"}, + }, + leavanny: { + inherit: true, + baseStats: {hp: 75, atk: 103, def: 80, spa: 70, spd: 80, spe: 102}, + abilities: {0: "Swarm", 1: "Chlorophyll", H: "Grass Pelt"}, + }, + darmanitangalarzen: { + inherit: true, + baseStats: {hp: 105, atk: 160, def: 85, spa: 30, spd: 85, spe: 75}, + }, + maractus: { + inherit: true, + baseStats: {hp: 125, atk: 86, def: 67, spa: 116, spd: 67, spe: 60}, + abilities: {0: "Water Absorb", 1: "Iron Barbs", H: "Storm Drain"}, + }, + garbodor: { + inherit: true, + types: ["Poison", "Steel"], + baseStats: {hp: 80, atk: 95, def: 92, spa: 60, spd: 92, spe: 81}, + }, + cinccino: { + inherit: true, + types: ["Normal", "Fairy"], + otherFormes: ["Cinccino-Mega"], + formeOrder: ["Cinccino", "Cinccino-Mega"], + }, + cinccinomega: { + num: 573, + name: "Cinccino-Mega", + baseSpecies: "Cinccino", + forme: "Mega", + types: ["Normal", "Fairy"], + baseStats: {hp: 75, atk: 126, def: 82, spa: 65, spd: 82, spe: 140}, + abilities: {0: "Fur Coat"}, + weightkg: 15, + color: "Gray", + requiredItem: "Cinccinite", + }, + gothita: { + inherit: true, + abilities: {0: "Mental Health", 1: "Competitive", H: "Shadow Tag"}, + }, + gothorita: { + inherit: true, + abilities: {0: "Mental Health", 1: "Competitive", H: "Shadow Tag"}, + }, + gothitelle: { + inherit: true, + abilities: {0: "Mental Health", 1: "Competitive", H: "Shadow Tag"}, + }, + swanna: { + inherit: true, + baseStats: {hp: 75, atk: 87, def: 73, spa: 87, spd: 73, spe: 108}, + }, + sawsbuck: { + inherit: true, + baseStats: {hp: 80, atk: 110, def: 70, spa: 60, spd: 70, spe: 95}, + }, + emolga: { + inherit: true, + baseStats: {hp: 55, atk: 75, def: 60, spa: 75, spd: 60, spe: 105}, + abilities: {0: "Static", 1: "Motor Drive", H: "Energy Beacon"}, + }, + eelektross: { + inherit: true, + baseStats: {hp: 85, atk: 125, def: 80, spa: 115, spd: 80, spe: 50}, + }, + beartic: { + inherit: true, + types: ["Ice", "Fighting"], + baseStats: {hp: 95, atk: 130, def: 80, spa: 65, spd: 80, spe: 55}, + }, + accelgor: { + inherit: true, + types: ["Bug", "Dark"], + }, + mienshao: { + inherit: true, + types: ["Fighting", "Fairy"], + }, + golett: { + inherit: true, + abilities: {0: "Iron Fist", 1: "Seal Away", H: "No Guard"}, + }, + golurk: { + inherit: true, + abilities: {0: "Iron Fist", 1: "Seal Away", H: "No Guard"}, + }, + bouffalant: { + inherit: true, + abilities: {0: "Reckless", 1: "Sap Sipper", H: "Rock Head"}, + }, + rufflet: { + inherit: true, + types: ["Fighting", "Flying"], + }, + braviary: { + inherit: true, + types: ["Fighting", "Flying"], + }, + heatmor: { + inherit: true, + baseStats: {hp: 85, atk: 117, def: 66, spa: 95, spd: 66, spe: 75}, + }, + durant: { + inherit: true, + baseStats: {hp: 58, atk: 109, def: 112, spa: 58, spd: 58, spe: 109}, + }, + hydreigon: { + inherit: true, + otherFormes: ["Hydreigon-Mega"], + formeOrder: ["Hydreigon", "Hydreigon-Mega"], + }, + hydreigonmega: { + num: 635, + name: "Hydreigon-Mega", + baseSpecies: "Hydreigon", + forme: "Mega", + types: ["Dark", "Dragon"], + baseStats: {hp: 92, atk: 130, def: 115, spa: 150, spd: 115, spe: 98}, + abilities: {0: "Intimidate"}, + weightkg: 160, + color: "Black", + requiredItem: "Hydreigonite", + }, + cobalion: { + inherit: true, + abilities: {0: "Justified", H: "Knight's Blade"}, + }, + terrakion: { + inherit: true, + abilities: {0: "Justified", H: "Knight's Blade"}, + }, + virizion: { + inherit: true, + abilities: {0: "Justified", H: "Knight's Blade"}, + }, + keldeo: { + inherit: true, + abilities: {0: "Justified", H: "Knight's Blade"}, + }, + talonflame: { + inherit: true, + otherFormes: ["Talonflame-Mega"], + formeOrder: ["Talonflame", "Talonflame-Mega"], + }, + talonflamemega: { + num: 663, + name: "Talonflame-Mega", + baseSpecies: "Talonflame", + forme: "Mega", + types: ["Fire", "Flying"], + baseStats: {hp: 78, atk: 132, def: 81, spa: 74, spd: 94, spe: 140}, + abilities: {0: "Reckless"}, + weightkg: 25, + color: "Red", + requiredItem: "Talonflite", + }, + pyroar: { + inherit: true, + abilities: {0: "Rivalry", 1: "Demotivate", H: "Cacophony"}, + }, + flabebe: { + inherit: true, + abilities: {0: "Pixie Power", 1: "Flower Veil", H: "Symbiosis"}, + }, + floette: { + inherit: true, + abilities: {0: "Pixie Power", 1: "Flower Veil", H: "Symbiosis"}, + }, + floetteeternal: { + inherit: true, + abilities: {0: "Pixie Power"}, + }, + florges: { + inherit: true, + abilities: {0: "Pixie Power", 1: "Flower Veil", H: "Symbiosis"}, + }, + furfrou: { + inherit: true, + baseStats: {hp: 83, atk: 80, def: 60, spa: 65, spd: 90, spe: 102}, + }, + meowstic: { + inherit: true, + baseStats: {hp: 74, atk: 68, def: 76, spa: 81, spd: 93, spe: 124}, + }, + meowsticf: { + inherit: true, + baseStats: {hp: 74, atk: 76, def: 68, spa: 93, spd: 81, spe: 124}, + }, + honedge: { + inherit: true, + abilities: {0: "No Guard", H: "Knight's Blade"}, + }, + doublade: { + inherit: true, + abilities: {0: "No Guard", H: "Knight's Blade"}, + }, + spritzee: { + inherit: true, + types: ["Fairy", "Poison"], + }, + aromatisse: { + inherit: true, + types: ["Fairy", "Poison"], + baseStats: {hp: 110, atk: 72, def: 79, spa: 99, spd: 89, spe: 29}, + }, + malamar: { + inherit: true, + baseStats: {hp: 86, atk: 92, def: 88, spa: 88, spd: 75, spe: 73}, + otherFormes: ["Malamar-Mega"], + formeOrder: ["Malamar", "Malamar-Mega"], + }, + malamarmega: { + num: 687, + name: "Malamar-Mega", + baseSpecies: "Malamar", + forme: "Mega", + types: ["Dark", "Psychic"], + baseStats: {hp: 86, atk: 122, def: 98, spa: 118, spd: 85, spe: 93}, + abilities: {0: "Download"}, + weightkg: 47, + color: "Black", + requiredItem: "Malamarite", + }, + aurorus: { + inherit: true, + baseStats: {hp: 123, atk: 62, def: 77, spa: 101, spd: 90, spe: 68}, + }, + goodra: { + inherit: true, + types: ["Dragon", "Water"], + }, + klefki: { + inherit: true, + abilities: {0: "Prankster", 1: "Seal Away", H: "Magician"}, + }, + trevenant: { + inherit: true, + baseStats: {hp: 105, atk: 116, def: 86, spa: 65, spd: 82, spe: 56}, + }, + gourgeist: { + inherit: true, + baseStats: {hp: 65, atk: 100, def: 122, spa: 58, spd: 75, spe: 90}, + abilities: {0: "Intimidate", 1: "Frisk", H: "Flare Boost"}, + }, + gourgeistsmall: { + inherit: true, + baseStats: {hp: 55, atk: 95, def: 122, spa: 58, spd: 75, spe: 105}, + abilities: {0: "Intimidate", 1: "Frisk", H: "Flare Boost"}, + }, + gourgeistlarge: { + inherit: true, + baseStats: {hp: 75, atk: 105, def: 122, spa: 58, spd: 75, spe: 75}, + abilities: {0: "Intimidate", 1: "Frisk", H: "Flare Boost"}, + }, + gourgeistsuper: { + inherit: true, + baseStats: {hp: 85, atk: 110, def: 122, spa: 58, spd: 75, spe: 60}, + abilities: {0: "Intimidate", 1: "Frisk", H: "Flare Boost"}, + }, + avalugg: { + inherit: true, + abilities: {0: "Anticipation", 1: "Sturdy", H: "Ice Body"}, + }, + noibat: { + inherit: true, + abilities: {0: "Frisk", 1: "Infiltrator", H: "Cacophony"}, + }, + noivern: { + inherit: true, + abilities: {0: "Frisk", 1: "Infiltrator", H: "Cacophony"}, + }, + hoopa: { + inherit: true, + abilities: {0: "Magician", H: "Seal Away"}, + }, + hoopaunbound: { + inherit: true, + abilities: {0: "Magician", H: "Cursed Body"}, + }, + volcanion: { + inherit: true, + abilities: {0: "Water Absorb", H: "Mega Launcher"}, + }, + rowlet: { + inherit: true, + baseStats: {hp: 48, atk: 65, def: 55, spa: 50, spd: 42, spe: 60}, + }, + dartrix: { + inherit: true, + baseStats: {hp: 58, atk: 85, def: 70, spa: 70, spd: 52, spe: 85}, + }, + decidueye: { + inherit: true, + baseStats: {hp: 78, atk: 107, def: 75, spa: 100, spd: 70, spe: 100}, + }, + pikipek: { + inherit: true, + abilities: {0: "Cacophony", 1: "Skill Link", H: "Sheer Force"}, + }, + trumbeak: { + inherit: true, + abilities: {0: "Cacophony", 1: "Skill Link", H: "Sheer Force"}, + }, + toucannon: { + inherit: true, + baseStats: {hp: 95, atk: 120, def: 75, spa: 75, spd: 75, spe: 60}, + abilities: {0: "Cacophony", 1: "Skill Link", H: "Sheer Force"}, + }, + gumshoos: { + inherit: true, + baseStats: {hp: 100, atk: 110, def: 75, spa: 55, spd: 75, spe: 45}, + }, + crabominable: { + inherit: true, + baseStats: {hp: 97, atk: 132, def: 97, spa: 62, spd: 87, spe: 43}, + }, + oricorio: { + inherit: true, + abilities: {0: "Dancer", H: "Serene Grace"}, + }, + oricoriopompom: { + inherit: true, + abilities: {0: "Dancer", H: "Serene Grace"}, + }, + oricoriopau: { + inherit: true, + abilities: {0: "Dancer", H: "Serene Grace"}, + }, + oricoriosensu: { + inherit: true, + abilities: {0: "Dancer", H: "Serene Grace"}, + }, + lycanroc: { + inherit: true, + types: ["Rock", "Normal"], + abilities: {0: "Keen Eye", 1: "Sand Rush", H: "No Guard"}, + }, + lycanrocmidnight: { + inherit: true, + types: ["Rock", "Dark"], + baseStats: {hp: 105, atk: 115, def: 65, spa: 55, spd: 65, spe: 82}, + abilities: {0: "Keen Eye", 1: "Sand Rush", H: "No Guard"}, + }, + lycanrocdusk: { + inherit: true, + types: ["Rock", "Fighting"], + }, + shiinotic: { + inherit: true, + otherFormes: ["Shiinotic-Mega"], + formeOrder: ["Shiinotic", "Shiinotic-Mega"], + }, + shiinoticmega: { + num: 756, + name: "Shiinotic-Mega", + baseSpecies: "Shiinotic", + forme: "Mega", + types: ["Grass", "Fairy"], + baseStats: {hp: 60, atk: 45, def: 110, spa: 130, spd: 140, spe: 20}, + abilities: {0: "Triage"}, + weightkg: 12, + color: "Purple", + requiredItem: "Shiinotite", + }, + bewear: { + inherit: true, + otherFormes: ["Bewear-Mega"], + formeOrder: ["Bewear", "Bewear-Mega"], + }, + bewearmega: { + num: 760, + name: "Bewear-Mega", + baseSpecies: "Bewear", + forme: "Mega", + types: ["Normal", "Fighting"], + baseStats: {hp: 120, atk: 155, def: 120, spa: 55, spd: 90, spe: 60}, + abilities: {0: "Prankster"}, + weightkg: 135, + color: "Pink", + requiredItem: "Bewearite", + }, + tsareena: { + inherit: true, + abilities: {0: "Leaf Guard", 1: "Royal Presence", H: "Sweet Veil"}, + }, + comfey: { + inherit: true, + baseStats: {hp: 52, atk: 51, def: 90, spa: 92, spd: 110, spe: 100}, + }, + sandygast: { + inherit: true, + abilities: {0: "Water Compaction", 1: "Sand Veil", H: "Regenerator"}, + }, + palossand: { + inherit: true, + abilities: {0: "Water Compaction", 1: "Sand Veil", H: "Regenerator"}, + }, + typenull: { + inherit: true, + abilities: {0: "Battle Armor", H: "Seal Away"}, + }, + nihilego: { + inherit: true, + abilities: {0: "Beast Boost", H: "Levitate"}, + }, + buzzwole: { + inherit: true, + abilities: {0: "Beast Boost", H: "Iron Fist"}, + }, + pheromosa: { + inherit: true, + abilities: {0: "Beast Boost", H: "Dazzling"}, + }, + xurkitree: { + inherit: true, + types: ["Electric", "Grass"], + abilities: {0: "Beast Boost", H: "Lightning Rod"}, + }, + celesteela: { + inherit: true, + abilities: {0: "Beast Boost", H: "Heavy Metal"}, + }, + kartana: { + inherit: true, + abilities: {0: "Beast Boost", H: "Knight's Blade"}, + }, + guzzlord: { + inherit: true, + abilities: {0: "Beast Boost", H: "Thick Fat"}, + }, + poipole: { + inherit: true, + abilities: {0: "Beast Boost", H: "Sniper"}, + }, + naganadel: { + inherit: true, + abilities: {0: "Beast Boost", H: "Sniper"}, + }, + stakataka: { + inherit: true, + abilities: {0: "Beast Boost", H: "Bulletproof"}, + }, + blacephalon: { + inherit: true, + abilities: {0: "Beast Boost", H: "Aftermath"}, + }, + rillaboom: { + inherit: true, + baseStats: {hp: 100, atk: 115, def: 90, spa: 70, spd: 70, spe: 85}, + }, + cinderace: { + inherit: true, + baseStats: {hp: 80, atk: 96, def: 85, spa: 75, spd: 85, spe: 109}, + }, + greedent: { + inherit: true, + baseStats: {hp: 120, atk: 100, def: 100, spa: 45, spd: 75, spe: 20}, + }, + thievul: { + inherit: true, + baseStats: {hp: 70, atk: 58, def: 58, spa: 107, spd: 92, spe: 110}, + otherFormes: ["Thievul-Mega"], + formeOrder: ["Thievul", "Thievul-Mega"], + }, + thievulmega: { + num: 828, + name: "Thievul-Mega", + baseSpecies: "Thievul", + forme: "Mega", + types: ["Dark"], + baseStats: {hp: 70, atk: 58, def: 88, spa: 137, spd: 122, spe: 120}, + abilities: {0: "Stakeout"}, + weightkg: 20, + color: "Brown", + requiredItem: "Thievulite", + }, + eldegoss: { + inherit: true, + baseStats: {hp: 80, atk: 50, def: 90, spa: 80, spd: 120, spe: 60}, + }, + dubwool: { + inherit: true, + baseStats: {hp: 72, atk: 100, def: 100, spa: 60, spd: 90, spe: 88}, + }, + yamper: { + inherit: true, + abilities: {0: "Ball Fetch", 1: "Cute Charm", H: "Rattled"}, + }, + boltund: { + inherit: true, + abilities: {0: "Strong Jaw", 1: "Energy Beacon", H: "Competitive"}, + }, + flapple: { + inherit: true, + baseStats: {hp: 80, atk: 110, def: 80, spa: 95, spd: 60, spe: 80}, + }, + appletun: { + inherit: true, + baseStats: {hp: 110, atk: 85, def: 85, spa: 110, spd: 85, spe: 30}, + }, + cramorant: { + inherit: true, + baseStats: {hp: 70, atk: 85, def: 85, spa: 85, spd: 95, spe: 85}, + }, + cramorantgulping: { + inherit: true, + baseStats: {hp: 70, atk: 85, def: 85, spa: 85, spd: 95, spe: 85}, + }, + cramorantgorging: { + inherit: true, + baseStats: {hp: 70, atk: 85, def: 85, spa: 85, spd: 95, spe: 85}, + }, + centiskorch: { + inherit: true, + baseStats: {hp: 100, atk: 115, def: 90, spa: 65, spd: 90, spe: 65}, + }, + clobbopus: { + inherit: true, + types: ["Fighting", "Water"], + }, + grapploct: { + inherit: true, + types: ["Fighting", "Dark"], + }, + perrserker: { + inherit: true, + baseStats: {hp: 70, atk: 110, def: 100, spa: 50, spd: 60, spe: 65}, + }, + cursola: { + inherit: true, + baseStats: {hp: 80, atk: 50, def: 95, spa: 145, spd: 120, spe: 30}, + abilities: {0: "Weak Armor", 1: "Cursed Body", H: "Perish Body"}, + }, + sirfetchd: { + inherit: true, + types: ["Fighting", "Flying"], + }, + mrrime: { + inherit: true, + baseStats: {hp: 80, atk: 75, def: 75, spa: 110, spd: 100, spe: 80}, + abilities: {0: "Quick Feet", 1: "Screen Cleaner", H: "Ice Body"}, + }, + milcery: { + inherit: true, + abilities: {0: "Sweet Veil", 1: "Aroma Veil", H: "Pixie Power"}, + }, + alcremie: { + inherit: true, + abilities: {0: "Sweet Veil", 1: "Aroma Veil", H: "Pixie Power"}, + }, + falinks: { + inherit: true, + types: ["Fighting", "Steel"], + abilities: {0: "Battle Armor", 1: "Skill Link", H: "Defiant"}, + }, + pincurchin: { + inherit: true, + baseStats: {hp: 78, atk: 91, def: 95, spa: 101, spd: 95, spe: 15}, + }, + frosmoth: { + inherit: true, + baseStats: {hp: 70, atk: 65, def: 60, spa: 125, spd: 90, spe: 85}, + }, + stonjourner: { + inherit: true, + baseStats: {hp: 100, atk: 125, def: 135, spa: 20, spd: 70, spe: 70}, + }, + eiscue: { + inherit: true, + baseStats: {hp: 110, atk: 80, def: 110, spa: 80, spd: 90, spe: 50}, + }, + eiscuenoice: { + inherit: true, + baseStats: {hp: 110, atk: 80, def: 70, spa: 80, spd: 50, spe: 130}, + }, + morpekohangry: { + inherit: true, + baseStats: {hp: 58, atk: 115, def: 53, spa: 60, spd: 53, spe: 97}, + }, + morpeko: { + inherit: true, + baseStats: {hp: 58, atk: 95, def: 63, spa: 60, spd: 63, spe: 97}, + }, + copperajah: { + inherit: true, + baseStats: {hp: 142, atk: 130, def: 69, spa: 80, spd: 69, spe: 30}, + }, + dracovish: { + inherit: true, + baseStats: {hp: 90, atk: 100, def: 90, spa: 80, spd: 90, spe: 55}, + }, + duraludon: { + inherit: true, + otherFormes: ["Duraludon-Mega"], + formeOrder: ["Duraludon", "Duraludon-Mega"], + }, + duraludonmega: { + num: 884, + name: "Duraludon-Mega", + baseSpecies: "Duraludon", + forme: "Mega", + types: ["Steel", "Dragon"], + baseStats: {hp: 70, atk: 105, def: 135, spa: 150, spd: 70, spe: 105}, + abilities: {0: "Clear Body"}, + weightkg: 86, + color: "White", + requiredItem: "Duraludite", + }, + eternatuseternamax: { + num: 890, + name: "Eternatus-Eternamax", + baseSpecies: "Eternatus", + forme: "Eternamax", + types: ["Poison", "Dragon"], + gender: "N", + baseStats: {hp: 140, atk: 85, def: 105, spa: 165, spd: 105, spe: 140}, + abilities: {0: "Maximum Potential"}, + heightm: 100, + weightkg: 999, + color: "Purple", + eggGroups: ["Undiscovered"], + cannotDynamax: true, + requiredItem: "Eternamax Candy", + }, + kubfu: { + inherit: true, + abilities: {0: "Scrappy"}, + baseStats: {hp: 70, atk: 90, def: 80, spa: 53, spd: 50, spe: 77}, + }, + urshifu: { + inherit: true, + baseStats: {hp: 100, atk: 130, def: 100, spa: 73, spd: 60, spe: 87}, + }, + regieleki: { + inherit: true, + abilities: {0: "Clear Body", H: "Transistor"}, + }, + regidrago: { + inherit: true, + abilities: {0: "Clear Body", H: "Dragon's Maw"}, + }, + calyrex: { + inherit: true, + baseStats: {hp: 100, atk: 80, def: 80, spa: 80, spd: 80, spe: 100}, + abilities: {0: "Harvester"}, + }, + + // New Mons + synthinobi: { + num: 9001, + name: "Synthinobi", + types: ["Grass", "Fighting"], + baseStats: {hp: 80, atk: 105, def: 70, spa: 75, spd: 80, spe: 120}, + abilities: {0: "Overgrow", H: "Super Luck"}, + weightkg: 50, + }, + chemicander: { + num: 9002, + name: "Chemicander", + types: ["Fire", "Poison"], + baseStats: {hp: 75, atk: 70, def: 105, spa: 120, spd: 80, spe: 80}, + abilities: {0: "Blaze", H: "Merciless"}, + weightkg: 100, + }, + primadillo: { + num: 9003, + name: "Primadillo", + types: ["Water", "Ground"], + baseStats: {hp: 105, atk: 120, def: 80, spa: 80, spd: 70, spe: 75}, + abilities: {0: "Torrent", H: "Rough Skin"}, + weightkg: 100, + }, + bersawk: { + num: 9004, + name: "Bersawk", + types: ["Normal", "Flying"], + baseStats: {hp: 85, atk: 130, def: 70, spa: 55, spd: 70, spe: 95}, + abilities: {0: "Sheer Force", 1: "Keen Eye", H: "Anger Point"}, + weightkg: 25, + }, + electzal: { + num: 9005, + name: "Electzal", + types: ["Electric", "Flying"], + baseStats: {hp: 105, atk: 60, def: 115, spa: 95, spd: 75, spe: 55}, + abilities: {0: "Big Pecks", 1: "Lightning Rod", H: "Serene Grace"}, + weightkg: 25, + }, + pyrogrine: { + num: 9006, + name: "Pyrogrine", + types: ["Fire", "Flying"], + baseStats: {hp: 75, atk: 105, def: 52, spa: 105, spd: 52, spe: 116}, + abilities: {0: "Flame Body", 1: "Anticipation", H: "Justified"}, + weightkg: 10, + }, + chompean: { + num: 9007, + name: "Chompean", + types: ["Normal"], + baseStats: {hp: 105, atk: 115, def: 65, spa: 45, spd: 75, spe: 85}, + abilities: {0: "Elemental Teething", H: "Pickup"}, + weightkg: 60, + }, + mothicoal: { + num: 9008, + name: "Mothicoal", + types: ["Bug", "Fire"], + baseStats: {hp: 60, atk: 45, def: 55, spa: 105, spd: 75, spe: 95}, + abilities: {0: "Compound Eyes", H: "Flash Fire"}, + weightkg: 9, + }, + neurowatt: { + num: 9009, + name: "Neurowatt", + types: ["Electric", "Psychic"], + baseStats: {hp: 60, atk: 51, def: 62, spa: 93, spd: 84, spe: 95}, + abilities: {0: "Motor Drive", 1: "Mental Health", H: "Demotivate"}, + weightkg: 10, + }, + menursa: { + num: 9010, + name: "Menursa", + types: ["Dark"], + baseStats: {hp: 110, atk: 125, def: 90, spa: 55, spd: 75, spe: 50}, + abilities: {0: "Oblivious", 1: "Honey Gather", H: "Tough Claws"}, + weightkg: 200, + }, + bloomivolt: { + num: 9011, + name: "Bloomivolt", + types: ["Grass", "Electric"], + baseStats: {hp: 73, atk: 56, def: 89, spa: 119, spd: 119, spe: 47}, + abilities: {0: "Flower Veil", 1: "Static", H: "Leaf Guard"}, + weightkg: 10, + }, + muaytiger: { + num: 9012, + name: "Muaytiger", + types: ["Fighting"], + baseStats: {hp: 80, atk: 110, def: 75, spa: 55, spd: 75, spe: 110}, + abilities: {0: "Strong Jaw", 1: "Unnerve", H: "Mold Breaker"}, + weightkg: 50, + }, + razorine: { + num: 9013, + name: "Razorine", + types: ["Normal", "Steel"], + baseStats: {hp: 50, atk: 90, def: 100, spa: 45, spd: 65, spe: 105}, + abilities: {0: "Iron Barbs", H: "Scrappy"}, + weightkg: 10, + }, + hareloom: { + num: 9014, + name: "Hareloom", + types: ["Fairy", "Fighting"], + baseStats: {hp: 55, atk: 85, def: 60, spa: 65, spd: 65, spe: 125}, + abilities: {0: "Simple", H: "Scrappy"}, + weightkg: 10, + }, + frospherous: { + num: 9015, + name: "Frospherous", + types: ["Normal", "Ice"], + baseStats: {hp: 90, atk: 40, def: 61, spa: 121, spd: 57, spe: 91}, + abilities: {0: "Cheek Pouch", 1: "Lightning Rod", H: "Battle Armor"}, + weightkg: 50, + }, + arbborry: { + num: 9016, + name: "Arbborry", + types: ["Grass", "Dark"], + baseStats: {hp: 105, atk: 120, def: 85, spa: 65, spd: 85, spe: 65}, + abilities: {0: "Sap Sipper", H: "Moxie"}, + weightkg: 100, + }, + mustellar: { + num: 9017, + name: "Mustellar", + types: ["Water", "Psychic"], + baseStats: {hp: 70, atk: 65, def: 65, spa: 110, spd: 95, spe: 120}, + abilities: {0: "Storm Drain", H: "Technician"}, + weightkg: 50, + }, + wolverflare: { + num: 9018, + name: "Wolverflare", + types: ["Fire", "Fighting"], + baseStats: {hp: 80, atk: 110, def: 70, spa: 110, spd: 70, spe: 85}, + abilities: {0: "Flash Fire", H: "Hustle"}, + weightkg: 50, + }, + photyrant: { + num: 9019, + name: "Photyrant", + types: ["Ghost", "Grass"], + baseStats: {hp: 90, atk: 100, def: 90, spa: 100, spd: 90, spe: 50}, + abilities: {0: "Cursed Body", 1: "Sheer Force", H: "Aftermath"}, + weightkg: 100, + }, + ghoulgoyle: { + num: 9020, + name: "Ghoulgoyle", + types: ["Rock", "Ghost"], + baseStats: {hp: 104, atk: 107, def: 94, spa: 53, spd: 82, spe: 46}, + abilities: {0: "Levitate", 1: "Solidify", H: "Unnerve"}, + weightkg: 200, + }, + cortefauna: { + num: 9021, + name: "Cortefauna", + types: ["Dragon", "Psychic"], + baseStats: {hp: 162, atk: 74, def: 48, spa: 122, spd: 48, spe: 46}, + abilities: {0: "Rough Skin", 1: "Mental Health", H: "Immunity"}, + weightkg: 200, + }, + gammaroo: { + num: 9022, + name: "Gammaroo", + types: ["Fighting", "Psychic"], + baseStats: {hp: 70, atk: 93, def: 68, spa: 112, spd: 75, spe: 112}, + abilities: {0: "No Guard", 1: "Filter", H: "Static"}, + weightkg: 50, + }, + serpentorch: { + num: 9023, + name: "Serpentorch", + types: ["Fire", "Poison"], + baseStats: {hp: 73, atk: 97, def: 60, spa: 69, spd: 78, spe: 105}, + abilities: {0: "Poison Point", 1: "Poison Touch", H: "Flame Body"}, + weightkg: 25, + }, + kaclash: { + num: 9024, + name: "Kaclash", + types: ["Fighting", "Flying"], + baseStats: {hp: 60, atk: 105, def: 80, spa: 105, spd: 80, spe: 95}, + abilities: {0: "Cacophony", 1: "Tough Claws", H: "Tinted Lens"}, + weightkg: 25, + }, + solinira: { + num: 9025, + name: "Solinira", + types: ["Water", "Rock"], + baseStats: {hp: 70, atk: 90, def: 150, spa: 40, spd: 60, spe: 70}, + abilities: {0: "Solidify", 1: "Sturdy", H: "Poison Point"}, + weightkg: 100, + }, + zapish: { + num: 9026, + name: "Zapish", + types: ["Water", "Electric"], + baseStats: {hp: 70, atk: 115, def: 70, spa: 90, spd: 75, spe: 115}, + abilities: {0: "Lightning Rod", 1: "Swift Swim", H: "Motor Drive"}, + weightkg: 100, + }, + sanatee: { + num: 9027, + name: "Sanatee", + types: ["Water"], + baseStats: {hp: 111, atk: 48, def: 84, spa: 84, spd: 111, spe: 48}, + abilities: {0: "Cute Charm", 1: "Regenerator", H: "Thick Fat"}, + weightkg: 100, + }, + glaciarch: { + num: 9028, + name: "Glaciarch", + types: ["Water", "Ice"], + baseStats: {hp: 97, atk: 63, def: 96, spa: 90, spd: 114, spe: 60}, + abilities: {0: "Water Absorb", 1: "Snow Warning", H: "Royal Presence"}, + weightkg: 50, + }, + creaviary: { + num: 9029, + name: "Creaviary", + types: ["Psychic", "Fairy"], + baseStats: {hp: 55, atk: 40, def: 70, spa: 85, spd: 80, spe: 95}, + abilities: {0: "Levitate", 1: "Serene Grace", H: "Dazzling"}, + weightkg: 10, + evos: ["Plummuse"], + }, + plummuse: { + num: 9030, + name: "Plummuse", + types: ["Psychic", "Fairy"], + baseStats: {hp: 85, atk: 60, def: 90, spa: 100, spd: 130, spe: 60}, + abilities: {0: "Cloud Nine", 1: "Serene Grace", H: "Dazzling"}, + weightkg: 50, + prevo: "Creaviary", + evoType: "levelFriendship", + }, + sparsqueak: { + num: 9031, + name: "Sparsqueak", + types: ["Electric"], + baseStats: {hp: 60, atk: 95, def: 70, spa: 65, spd: 65, spe: 110}, + abilities: {0: "Energy Beacon", H: "Unaware"}, + weightkg: 10, + }, + darsqueak: { + num: 9032, + name: "Darsqueak", + types: ["Dark"], + baseStats: {hp: 60, atk: 65, def: 65, spa: 95, spd: 70, spe: 110}, + abilities: {0: "Shadow Beacon", H: "Unaware"}, + weightkg: 10, + }, + giraflame: { + num: 9033, + name: "Giraflame", + types: ["Fire"], + baseStats: {hp: 80, atk: 110, def: 80, spa: 65, spd: 65, spe: 90}, + abilities: {0: "Long Reach", 1: "Flash Fire", H: "Magic Guard"}, + weightkg: 50, + }, + lycacia: { + num: 9034, + name: "Lycacia", + types: ["Fire", "Grass"], + baseStats: {hp: 65, atk: 110, def: 95, spa: 70, spd: 60, spe: 95}, + abilities: {0: "Flame Body", 1: "Pickpocket", H: "Adaptability"}, + weightkg: 50, + }, + remodile: { + num: 9035, + name: "Remodile", + types: ["Ground", "Fairy"], + baseStats: {hp: 120, atk: 95, def: 95, spa: 55, spd: 85, spe: 30}, + abilities: {0: "Comatose", H: "Insomnia"}, + weightkg: 100, + }, + petrasapien: { + num: 9036, + name: "Petrasapien", + types: ["Rock", "Normal"], + baseStats: {hp: 90, atk: 105, def: 72, spa: 50, spd: 68, spe: 110}, + abilities: {0: "Solid Rock", 1: "Stamina", H: "Mold Breaker"}, + weightkg: 50, + }, + petradvena: { + num: 9037, + name: "Petradvena", + types: ["Rock", "Psychic"], + baseStats: {hp: 75, atk: 45, def: 110, spa: 120, spd: 110, spe: 35}, + abilities: {0: "Solid Rock", 1: "Levitate", H: "Analytic"}, + weightkg: 200, + }, + fyrecho: { + num: 9038, + name: "Fyrecho", + types: ["Fire", "Flying"], + baseStats: {hp: 80, atk: 60, def: 75, spa: 101, spd: 75, spe: 100}, + abilities: {0: "Burning Echoes", 1: "Flash Fire", H: "Soundproof"}, + weightkg: 100, + }, + osprime: { + num: 9039, + name: "Osprime", + types: ["Flying", "Water"], + baseStats: {hp: 70, atk: 72, def: 107, spa: 117, spd: 68, spe: 96}, + abilities: {0: "Storm Drain", 1: "Own Tempo", H: "Swift Swim"}, + weightkg: 50, + }, + buffalocean: { + num: 9040, + name: "Buffalocean", + types: ["Water", "Fairy"], + baseStats: {hp: 115, atk: 90, def: 105, spa: 60, spd: 70, spe: 50}, + abilities: {0: "Thick Fat", 1: "Water Veil", H: "Rock Head"}, + weightkg: 200, + }, + ingarde: { + num: 9041, + name: "Ingarde", + types: ["Bug", "Steel"], + baseStats: {hp: 65, atk: 115, def: 95, spa: 35, spd: 70, spe: 110}, + abilities: {0: "Knight's Blade"}, + weightkg: 50, + }, + venometta: { + num: 9042, + name: "Venometta", + types: ["Poison"], + baseStats: {hp: 60, atk: 103, def: 55, spa: 95, spd: 55, spe: 122}, + abilities: {0: "Poison Touch", 1: "Liquid Ooze", H: "Unburden"}, + weightkg: 25, + }, + nimbless: { + num: 9043, + name: "Nimbless", + types: ["Electric", "Fairy"], + baseStats: {hp: 100, atk: 37, def: 113, spa: 84, spd: 96, spe: 60}, + abilities: {0: "Levitate", 1: "Cloud Nine", H: "Static"}, + weightkg: 200, + }, + frixen: { + num: 9044, + name: "Frixen", + types: ["Ice"], + baseStats: {hp: 61, atk: 126, def: 63, spa: 83, spd: 78, spe: 115}, + abilities: {0: "Justified", 1: "Snow Cloak", H: "Moxie"}, + weightkg: 50, + }, + necrice: { + num: 9045, + name: "Necrice", + types: ["Ice", "Poison"], + baseStats: {hp: 100, atk: 60, def: 105, spa: 130, spd: 105, spe: 25}, + abilities: {0: "Snow Warning", 1: "Ice Body", H: "Poison Point"}, + weightkg: 200, + }, + goblizz: { + num: 9046, + name: "Goblizz", + types: ["Ice", "Dragon"], + baseStats: {hp: 80, atk: 125, def: 85, spa: 55, spd: 70, spe: 95}, + abilities: {0: "Poison Touch", 1: "Bulletproof", H: "Slush Rush"}, + weightkg: 100, + }, + ptarabola: { + num: 9047, + name: "Ptarabola", + types: ["Dragon", "Flying"], + baseStats: {hp: 90, atk: 110, def: 90, spa: 110, spd: 90, spe: 110}, + abilities: {0: "Sniper", H: "Mega Launcher"}, + weightkg: 100, + }, + dominidon: { + num: 9048, + name: "Dominidon", + types: ["Dragon"], + baseStats: {hp: 123, atk: 137, def: 120, spa: 96, spd: 65, spe: 59}, + abilities: {0: "Solid Rock", H: "Sheer Force"}, + weightkg: 200, + }, + poufos: { + num: 9049, + name: "Poufos", + types: ["Fire", "Fairy"], + baseStats: {hp: 110, atk: 90, def: 110, spa: 100, spd: 140, spe: 130}, + abilities: {0: "Divine Light"}, + weightkg: 9, + }, + balatadi: { + num: 9050, + name: "Balatadi", + types: ["Dark", "Rock"], + baseStats: {hp: 110, atk: 110, def: 90, spa: 140, spd: 100, spe: 130}, + abilities: {0: "Matter Splitter"}, + weightkg: 200, + }, + ultratom: { + num: 9051, + name: "Ultratom", + types: ["Electric", "Psychic"], + baseStats: {hp: 100, atk: 50, def: 175, spa: 50, spd: 175, spe: 50}, + abilities: {0: "Atom Smasher"}, + weightkg: 200, + }, +}; diff --git a/data/mods/pkmnybv2/rulesets.ts b/data/mods/pkmnybv2/rulesets.ts new file mode 100644 index 0000000000..d50e183840 --- /dev/null +++ b/data/mods/pkmnybv2/rulesets.ts @@ -0,0 +1,43 @@ +export const Formats: {[k: string]: FormatData} = { + megadatamod: { + effectType: 'Rule', + name: 'Mega Data Mod', + desc: 'Gives data on stats, Ability and types when a Pokémon Mega Evolves or undergoes Ultra Burst.', + onSwitchIn(pokemon) { + if (pokemon.illusion) { + if (pokemon.illusion.species.forme.startsWith('Mega') || pokemon.illusion.species.forme.startsWith('Ultra')) { + this.add('-start', pokemon, 'typechange', pokemon.illusion.getTypes(true).join('/'), '[silent]'); + } + } else { + if (pokemon.species.forme.startsWith('Mega') || pokemon.species.forme.startsWith('Ultra')) { + this.add('-start', pokemon, 'typechange', pokemon.getTypes(true).join('/'), '[silent]'); + } + } + }, + onDamagingHit(damage, target, source, move) { + if (target.hasAbility('illusion')) { + if (target.species.forme.startsWith('Mega') || target.species.forme.startsWith('Ultra')) { + this.add('-start', target, 'typechange', target.getTypes(true).join('/'), '[silent]'); + } else { + const types = target.baseSpecies.types; + if (target.getTypes().join() === types.join()) { + this.add('-end', target, 'typechange', '[silent]'); + } + } + } + }, + onAfterMega(pokemon) { + this.add('-start', pokemon, 'typechange', pokemon.getTypes(true).join('/'), '[silent]'); + const species = this.dex.getSpecies(pokemon.species.name); + const abilities = species.abilities; + const baseStats = species.baseStats; + const type = species.types[0]; + if (species.types[1]) { + const type2 = species.types[1]; + this.add(`raw|`); + } else { + this.add(`raw|`); + } + }, + }, + }; diff --git a/data/mods/pkmnybv2/scripts.ts b/data/mods/pkmnybv2/scripts.ts new file mode 100644 index 0000000000..d14259f0ef --- /dev/null +++ b/data/mods/pkmnybv2/scripts.ts @@ -0,0 +1,2022 @@ +export const Scripts: {[k: string]: ModdedBattleScriptsData} = { + init: function () { +/* + for (const id in this.dataCache.Pokedex) { + const poke = this.dataCache.Pokedex[id]; + if (poke.restrictedLearnset) { + console.log(this.toID(poke.name)); + const thisPoke = this.toID(poke.name); + const learnset = this.dataCache.Learnsets[this.toID(poke.name)].learnset; + for (const move in learnset) { + console.log(thisPoke + " has " + move); + const moveid = this.dataCache.Moves[move]; + if (moveid.isNonstandard) { + console.log(moveid.isNonstandard); + delete this.modData('Learnsets', thisPoke).learnset.moveid; + } + } + } + } +*/ + + // Venusaur + this.modData("Learnsets", "venusaur").learnset.websling = ["8L1"]; + // Charizard + this.modData("Learnsets", "charizard").learnset.dracometeor = ["8L1"]; + // Butterfree + this.modData("Learnsets", "butterfree").learnset.psyshock = ["8L1"]; + this.modData("Learnsets", "butterfree").learnset.expandingforce = ["8L1"]; + this.modData("Learnsets", "butterfree").learnset.magicpowder = ["8L1"]; + this.modData("Learnsets", "butterfree").learnset.trick = ["8L1"]; + // Beedrill + this.modData("Learnsets", "beedrill").learnset.dualwingbeat = ["8L1"]; + // Pidgeot + this.modData("Learnsets", "pidgeot").learnset.aurasphere = ["8L1"]; + this.modData("Learnsets", "pidgeot").learnset.dualwingbeat = ["8L1"]; + this.modData("Learnsets", "pidgeot").learnset.weatherball = ["8L1"]; + // Raticate + this.modData("Learnsets", "raticate").learnset.burningjealousy = ["8L1"]; + this.modData("Learnsets", "raticate").learnset.lashout = ["8L1"]; + // Raticate-Alola + this.modData("Learnsets", "raticatealola").learnset.burningjealousy = ["8L1"]; + this.modData("Learnsets", "raticatealola").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "raticatealola").learnset.pluck = ["8L1"]; + this.modData("Learnsets", "raticatealola").learnset.flamewheel = ["8L1"]; + // Fearow + this.modData("Learnsets", "fearow").learnset.bravebird = ["8L1"]; + this.modData("Learnsets", "fearow").learnset.cloudcrush = ["8L1"]; + this.modData("Learnsets", "fearow").learnset.honeclaws = ["8L1"]; + this.modData("Learnsets", "fearow").learnset.dualwingbeat = ["8L1"]; + this.modData("Learnsets", "fearow").learnset.lashout = ["8L1"]; + // Ekans + this.modData("Learnsets", "ekans").learnset.dracometeor = ["8L1"]; + // Arbok + this.modData("Learnsets", "arbok").learnset.dracometeor = ["8L1"]; + this.modData("Learnsets", "arbok").learnset.chipaway = ["8L1"]; + this.modData("Learnsets", "arbok").learnset.psychicfangs = ["8L1"]; + this.modData("Learnsets", "arbok").learnset.corrosivegas = ["8L1"]; + this.modData("Learnsets", "arbok").learnset.scaleshot = ["8L1"]; + this.modData("Learnsets", "arbok").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "arbok").learnset.flamethrower = ["8L1"]; + this.modData("Learnsets", "arbok").learnset.fireblast = ["8L1"]; + this.modData("Learnsets", "arbok").learnset.morningsun = ["8L1"]; + this.modData("Learnsets", "arbok").learnset.dragonrush = ["8L1"]; + this.modData("Learnsets", "arbok").learnset.outrage = ["8L1"]; + // Sandslash + this.modData("Learnsets", "sandslash").learnset.ballup = ["8L1"]; + this.modData("Learnsets", "sandslash").learnset.skittersmack = ["8L1"]; + // Sandslash-Alola + this.modData("Learnsets", "sandslashalola").learnset.ballup = ["8L1"]; + this.modData("Learnsets", "sandslashalola").learnset.skittersmack = ["8L1"]; + this.modData("Learnsets", "sandslashalola").learnset.chillout = ["8L1"]; + // Nidoqueen + this.modData("Learnsets", "nidoqueen").learnset.rockclimb = ["8L1"]; + // Nidoking + this.modData("Learnsets", "nidoking").learnset.rockclimb = ["8L1"]; + // Clefable + this.modData("Learnsets", "clefable").learnset.dizzypunch = ["8L1"]; + // Ninetales-Alola + this.modData("Learnsets", "ninetalesalola").learnset.chillout = ["8L1"]; + // Wigglytuff + this.modData("Learnsets", "wigglytuff").learnset.closecombat = ["8L1"]; + this.modData("Learnsets", "wigglytuff").learnset.spitfire = ["8L1"]; + this.modData("Learnsets", "wigglytuff").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "wigglytuff").learnset.nastyplot = ["8L1"]; + this.modData("Learnsets", "wigglytuff").learnset.explosion = ["8L1"]; + this.modData("Learnsets", "wigglytuff").learnset.moonblast = ["8L1"]; + this.modData("Learnsets", "wigglytuff").learnset.dizzypunch = ["8L1"]; + // Parasect + this.modData("Learnsets", "parasect").learnset.poltergeist = ["8L1"]; + this.modData("Learnsets", "parasect").learnset.shadowclaw = ["8L1"]; + this.modData("Learnsets", "parasect").learnset.shadowsneak = ["8L1"]; + this.modData("Learnsets", "parasect").learnset.shadowball = ["8L1"]; + this.modData("Learnsets", "parasect").learnset.thunderwave = ["8L1"]; + this.modData("Learnsets", "parasect").learnset.hex = ["8L1"]; + this.modData("Learnsets", "parasect").learnset.spite = ["8L1"]; + this.modData("Learnsets", "parasect").learnset.skittersmack = ["8L1"]; + // Dugtrio + this.modData("Learnsets", "dugtrio").learnset.rockclimb = ["8L1"]; + // Dugtrio-Alola + this.modData("Learnsets", "dugtrioalola").learnset.rockclimb = ["8L1"]; + this.modData("Learnsets", "dugtrioalola").learnset.cobaltwave = ["8L1"]; + // Persian + this.modData("Learnsets", "persian").learnset.thunderwave = ["8L1"]; + // Persian-Alola + this.modData("Learnsets", "persianalola").learnset.thunderwave = ["8L1"]; + // Golduck + this.modData("Learnsets", "golduck").learnset.teleport = ["8L1"]; + this.modData("Learnsets", "golduck").learnset.expandingforce = ["8L1"]; + this.modData("Learnsets", "golduck").learnset.shadowball = ["8L1"]; + this.modData("Learnsets", "golduck").learnset.washaway = ["8L1"]; + // Primeape + this.modData("Learnsets", "primeape").learnset.flamewheel = ["8L1"]; + this.modData("Learnsets", "primeape").learnset.flareblitz = ["8L1"]; + // Growlithe + this.modData("Learnsets", "growlithe").learnset.growl = ["8L1"]; + // Arcanine + this.modData("Learnsets", "arcanine").learnset.growl = ["8L1"]; + this.modData("Learnsets", "arcanine").learnset.nobleroar = ["8L1"]; + // Poliwrath + this.modData("Learnsets", "poliwrath").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "poliwrath").learnset.washaway = ["8L1"]; + // Victreebel + this.modData("Learnsets", "victreebel").learnset.bellydrum = ["8L1"]; + this.modData("Learnsets", "victreebel").learnset.lashout = ["8L1"]; + // Tentacruel + this.modData("Learnsets", "tentacruel").learnset.poisonfang = ["8L1"]; + // Golem + this.modData("Learnsets", "golem").learnset.icepunch = ["8L1"]; + this.modData("Learnsets", "golem").learnset.meteorbeam = ["8L1"]; + this.modData("Learnsets", "golem").learnset.scorchingsands = ["8L1"]; + // Golem-Alola + this.modData("Learnsets", "golemalola").learnset.icepunch = ["8L1"]; + this.modData("Learnsets", "golemalola").learnset.meteorbeam = ["8L1"]; + this.modData("Learnsets", "golemalola").learnset.scorchingsands = ["8L1"]; + // Rapidash + this.modData("Learnsets", "rapidash").learnset.extremespeed = ["8L1"]; + this.modData("Learnsets", "rapidash").learnset.playrough = ["8L1"]; + this.modData("Learnsets", "rapidash").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "rapidash").learnset.dazzlinggleam = ["8L1"]; + this.modData("Learnsets", "rapidash").learnset.terrainpulse = ["8L1"]; + // Rapidash-Galar + this.modData("Learnsets", "rapidashgalar").learnset.moonblast = ["8L1"]; + this.modData("Learnsets", "rapidashgalar").learnset.extremespeed = ["8L1"]; + this.modData("Learnsets", "rapidashgalar").learnset.chillout = ["8L1"]; + this.modData("Learnsets", "rapidashgalar").learnset.disarmingvoice = ["8L1"]; + this.modData("Learnsets", "rapidashgalar").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "rapidashgalar").learnset.terrainpulse = ["8L1"]; + // Slowbro-Galar + this.modData("Learnsets", "slowbrogalar").learnset.toxic = ["8L1"]; + this.modData("Learnsets", "slowbrogalar").learnset.hiddenpower = ["8L1"]; + // Farfetchd-Galar + this.modData("Learnsets", "farfetchdgalar").learnset.roost = ["8L1"]; + // Dodrio + this.modData("Learnsets", "dodrio").learnset.doublekick = ["8L1"]; + // Dewgong + this.modData("Learnsets", "dewgong").learnset.bellydrum = ["8L1"]; + this.modData("Learnsets", "dewgong").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "dewgong").learnset.chillout = ["8L1"]; + this.modData("Learnsets", "dewgong").learnset.imprison = ["8L1"]; + // Muk + this.modData("Learnsets", "muk").learnset.corrosiveacid = ["8L1"]; + this.modData("Learnsets", "muk").learnset.corrosivegas = ["8L1"]; + this.modData("Learnsets", "muk").learnset.lashout = ["8L1"]; + // Muk-Alola + this.modData("Learnsets", "mukalola").learnset.corrosiveacid = ["8L1"]; + this.modData("Learnsets", "mukalola").learnset.corrosivegas = ["8L1"]; + this.modData("Learnsets", "mukalola").learnset.lashout = ["8L1"]; + // Cloyster + this.modData("Learnsets", "cloyster").learnset.chillout = ["8L1"]; + // Hypno + this.modData("Learnsets", "hypno").learnset.knockoff = ["8L1"]; + this.modData("Learnsets", "hypno").learnset.darkpulse = ["8L1"]; + this.modData("Learnsets", "hypno").learnset.eclipse = ["8L1"]; + this.modData("Learnsets", "hypno").learnset.suckerpunch = ["8L1"]; + this.modData("Learnsets", "hypno").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "hypno").learnset.expandingforce = ["8L1"]; + this.modData("Learnsets", "hypno").learnset.corrosivegas = ["8L1"]; + this.modData("Learnsets", "hypno").learnset.punishment = ["8L1"]; + this.modData("Learnsets", "hypno").learnset.payback = ["8L1"]; + // Kingler + this.modData("Learnsets", "kingler").learnset.wipeout = ["8L1"]; + // Electrode + this.modData("Learnsets", "electrode").learnset.energyball = ["8L1"]; + this.modData("Learnsets", "electrode").learnset.shadowball = ["8L1"]; + this.modData("Learnsets", "electrode").learnset.aurasphere = ["8L1"]; + this.modData("Learnsets", "electrode").learnset.focusblast = ["8L1"]; + this.modData("Learnsets", "electrode").learnset.ballup = ["8L1"]; + this.modData("Learnsets", "electrode").learnset.risingvoltage = ["8L1"]; + this.modData("Learnsets", "electrode").learnset.mistyexplosion = ["8L1"]; + // Cubone + this.modData("Learnsets", "cubone").learnset.rockclimb = ["8L1"]; + // Marowak + this.modData("Learnsets", "marowak").learnset.rockclimb = ["8L1"]; + this.modData("Learnsets", "marowak").learnset.closecombat = ["8L1"]; + this.modData("Learnsets", "marowak").learnset.drainpunch = ["8L1"]; + this.modData("Learnsets", "marowak").learnset.icepunch = ["8L1"]; + this.modData("Learnsets", "marowak").learnset.coaching = ["8L1"]; + this.modData("Learnsets", "marowak").learnset.bulkup = ["8L1"]; + // Marowak-Alola + this.modData("Learnsets", "marowakalola").learnset.rockclimb = ["8L1"]; + this.modData("Learnsets", "marowakalola").learnset.bulkup = ["8L1"]; + // Hitmonchan + this.modData("Learnsets", "hitmonchan").learnset.shadowpunch = ["8L1"]; + this.modData("Learnsets", "hitmonchan").learnset.slackoff = ["8L1"]; + this.modData("Learnsets", "hitmonchan").learnset.swordsdance = ["8L1"]; + // Weezing + this.modData("Learnsets", "weezing").learnset.gunkshot = ["8L1"]; + // Weezing-Galar + this.modData("Learnsets", "weezinggalar").learnset.terrainpulse = ["8L1"]; + // Seadra + this.modData("Learnsets", "seadra").learnset.sludgebomb = ["8L1"]; + // Seaking + this.modData("Learnsets", "seaking").learnset.quickattack = ["8L1"]; + this.modData("Learnsets", "seaking").learnset.fakeout = ["8L1"]; + // Mr. Mime + this.modData("Learnsets", "mrmime").learnset.disarmingvoice = ["8L1"]; + // Mr. Mime-Galar + this.modData("Learnsets", "mrmimegalar").learnset.chillout = ["8L1"]; + // Jynx + this.modData("Learnsets", "jynx").learnset.chillout = ["8L1"]; + // Eevee + this.modData("Learnsets", "eevee").learnset.adaptableattack = ["8L1"]; + // Vaporeon + this.modData("Learnsets", "vaporeon").learnset.adaptableattack = ["8L1"]; + this.modData("Learnsets", "vaporeon").learnset.chillout = ["8L1"]; + // Jolteon + this.modData("Learnsets", "jolteon").learnset.adaptableattack = ["8L1"]; + this.modData("Learnsets", "jolteon").learnset.spikes = ["8L1"]; + // Flareon + this.modData("Learnsets", "flareon").learnset.adaptableattack = ["8L1"]; + this.modData("Learnsets", "flareon").learnset.doublekick = ["8L1"]; + this.modData("Learnsets", "flareon").learnset.shadowclaw = ["8L1"]; + // Porygon + this.modData("Learnsets", "porygon").learnset.adaptableattack = ["8L1"]; + this.modData("Learnsets", "porygon").learnset.bittrip = ["8L1"]; + // Snorlax + this.modData("Learnsets", "snorlax").learnset.slackoff = ["8L1"]; + // Articuno + this.modData("Learnsets", "articuno").learnset.chillout = ["8L1"]; + // Articuno-Galar + this.modData("Learnsets", "articunogalar").learnset.synchronoise = ["8L1"]; + this.modData("Learnsets", "articunogalar").learnset.icebeam = ["8L1"]; + this.modData("Learnsets", "articunogalar").learnset.chillout = ["8L1"]; + this.modData("Learnsets", "articunogalar").learnset.haze = ["8L1"]; + this.modData("Learnsets", "articunogalar").learnset.roost = ["8L1"]; + this.modData("Learnsets", "articunogalar").learnset.defog = ["8L1"]; + // Zapdos-Galar + this.modData("Learnsets", "zapdosgalar").learnset.doublekick = ["8L1"]; + this.modData("Learnsets", "zapdosgalar").learnset.wildcharge = ["8L1"]; + this.modData("Learnsets", "zapdosgalar").learnset.zingzap = ["8L1"]; + this.modData("Learnsets", "zapdosgalar").learnset.thunderwave = ["8L1"]; + this.modData("Learnsets", "zapdosgalar").learnset.roost = ["8L1"]; + this.modData("Learnsets", "zapdosgalar").learnset.defog = ["8L1"]; + // Moltres-Galar + this.modData("Learnsets", "moltresgalar").learnset.eclipse = ["8L1"]; + this.modData("Learnsets", "moltresgalar").learnset.heatwave = ["8L1"]; + this.modData("Learnsets", "moltresgalar").learnset.mysticalfire = ["8L1"]; + this.modData("Learnsets", "moltresgalar").learnset.willowisp = ["8L1"]; + this.modData("Learnsets", "moltresgalar").learnset.roost = ["8L1"]; + this.modData("Learnsets", "moltresgalar").learnset.defog = ["8L1"]; + // Dragonite + this.modData("Learnsets", "dragonite").learnset.chillout = ["8L1"]; + // Mew + this.modData("Learnsets", "mew").learnset.adaptableattack = ["8L1"]; + + // Meganium + this.modData("Learnsets", "meganium").learnset.moonblast = ["8L1"]; + this.modData("Learnsets", "meganium").learnset.dragonpulse = ["8L1"]; + this.modData("Learnsets", "meganium").learnset.playrough = ["8L1"]; + this.modData("Learnsets", "meganium").learnset.zenheadbutt = ["8L1"]; + this.modData("Learnsets", "meganium").learnset.grassyglide = ["8L1"]; + // Cyndaquil + this.modData("Learnsets", "cyndaquil").learnset.nastyplot = ["8L1"]; + this.modData("Learnsets", "cyndaquil").learnset.scorchingsands = ["8L1"]; + this.modData("Learnsets", "cyndaquil").learnset.burningjealousy = ["8L1"]; + // Quilava + this.modData("Learnsets", "quilava").learnset.nastyplot = ["8L1"]; + this.modData("Learnsets", "quilava").learnset.scorchingsands = ["8L1"]; + this.modData("Learnsets", "quilava").learnset.burningjealousy = ["8L1"]; + // Typhlosion + this.modData("Learnsets", "typhlosion").learnset.nastyplot = ["8L1"]; + this.modData("Learnsets", "typhlosion").learnset.scorchingsands = ["8L1"]; + this.modData("Learnsets", "typhlosion").learnset.burningjealousy = ["8L1"]; + // Feraligatr + this.modData("Learnsets", "feraligatr").learnset.poisonfang = ["8L1"]; + this.modData("Learnsets", "feraligatr").learnset.scaleshot = ["8L1"]; + this.modData("Learnsets", "feraligatr").learnset.lashout = ["8L1"]; + // Furret + this.modData("Learnsets", "furret").learnset.playrough = ["8L1"]; + this.modData("Learnsets", "furret").learnset.dizzypunch = ["8L1"]; + this.modData("Learnsets", "furret").learnset.slackoff = ["8L1"]; + this.modData("Learnsets", "furret").learnset.healbell = ["8L1"]; + this.modData("Learnsets", "furret").learnset.bodypress = ["8L1"]; + // Noctowl + this.modData("Learnsets", "noctowl").learnset.uturn = ["8L1"]; + this.modData("Learnsets", "noctowl").learnset.teleport = ["8L1"]; + // Ledian + this.modData("Learnsets", "ledian").learnset.skittersmack = ["8L1"]; + this.modData("Learnsets", "ledian").learnset.closecombat = ["8L1"]; + this.modData("Learnsets", "ledian").learnset.bulletpunch = ["8L1"]; + this.modData("Learnsets", "ledian").learnset.shadowpunch = ["8L1"]; + this.modData("Learnsets", "ledian").learnset.meditate = ["8L1"]; + this.modData("Learnsets", "ledian").learnset.focusblast = ["8L1"]; + this.modData("Learnsets", "ledian").learnset.dualwingbeat = ["8L1"]; + // Ariados + this.modData("Learnsets", "ariados").learnset.poisonfang = ["8L1"]; + this.modData("Learnsets", "ariados").learnset.spikes = ["8L1"]; + this.modData("Learnsets", "ariados").learnset.moonlight = ["8L1"]; + this.modData("Learnsets", "ariados").learnset.taunt = ["8L1"]; + this.modData("Learnsets", "ariados").learnset.glare = ["8L1"]; + this.modData("Learnsets", "ariados").learnset.websling = ["8L1"]; + this.modData("Learnsets", "ariados").learnset.twineedle = ["8L1"]; + // Crobat + this.modData("Learnsets", "crobat").learnset.cloudcrush = ["8L1"]; + // Lanturn + this.modData("Learnsets", "lanturn").learnset.wish = ["8L1"]; + // Togetic + this.modData("Learnsets", "togetic").learnset.dizzypunch = ["8L1"]; + // Xatu + this.modData("Learnsets", "xatu").learnset.taunt = ["8L1"]; + // Ampharos + this.modData("Learnsets", "ampharos").learnset.dracometeor = ["8L1"]; + this.modData("Learnsets", "ampharos").learnset.tailglow = ["8L1"]; + this.modData("Learnsets", "ampharos").learnset.slackoff = ["8L1"]; + // Bellossom + this.modData("Learnsets", "bellossom").learnset.raindance = ["8L1"]; + this.modData("Learnsets", "bellossom").learnset.fierydance = ["8L1"]; + // Azumarill + this.modData("Learnsets", "azumarill").learnset.wipeout = ["8L1"]; + // Sudowoodo + this.modData("Learnsets", "sudowoodo").learnset.strengthsap = ["8L1"]; + // Politoed + this.modData("Learnsets", "politoed").learnset.flipturn = ["8L1"]; + // Jumpluff + this.modData("Learnsets", "jumpluff").learnset.cloudcrush = ["8L1"]; + this.modData("Learnsets", "jumpluff").learnset.oxidation = ["8L1"]; + this.modData("Learnsets", "jumpluff").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "jumpluff").learnset.pollenpuff = ["8L1"]; + // Quagsire + this.modData("Learnsets", "quagsire").learnset.wipeout = ["8L1"]; + // Espeon + this.modData("Learnsets", "espeon").learnset.aurasphere = ["8L1"]; + // Umbreon + this.modData("Learnsets", "umbreon").learnset.hex = ["8L1"]; + this.modData("Learnsets", "umbreon").learnset.venoshock = ["8L1"]; + this.modData("Learnsets", "umbreon").learnset.eclipse = ["8L1"]; + // Slowking-Galar + this.modData("Learnsets", "slowkinggalar").learnset.toxic = ["8L1"]; + this.modData("Learnsets", "slowkinggalar").learnset.hiddenpower = ["8L1"]; + // Misdreavus + this.modData("Learnsets", "misdreavus").learnset.moonblast = ["8L1"]; + this.modData("Learnsets", "misdreavus").learnset.moonlight = ["8L1"]; + // Wobbuffet + this.modData("Learnsets", "wobbuffet").learnset.torment = ["8L1"]; + this.modData("Learnsets", "wobbuffet").learnset.meanlook = ["8L1"]; + // Girafarig + this.modData("Learnsets", "girafarig").learnset.meditate = ["8L1"]; + this.modData("Learnsets", "girafarig").learnset.expandingforce = ["8L1"]; + this.modData("Learnsets", "girafarig").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "girafarig").learnset.skittersmack = ["8L1"]; + // Forretress + this.modData("Learnsets", "forretress").learnset.skittersmack = ["8L1"]; + this.modData("Learnsets", "forretress").learnset.steelroller = ["8L1"]; + this.modData("Learnsets", "forretress").learnset.ballup = ["8L1"]; + this.modData("Learnsets", "forretress").learnset.steelbeam = ["8L1"]; + // Dunsparce + this.modData("Learnsets", "dunsparce").learnset.dracometeor = ["8L1"]; + this.modData("Learnsets", "dunsparce").learnset.dragontail = ["8L1"]; + this.modData("Learnsets", "dunsparce").learnset.chipaway = ["8L1"]; + this.modData("Learnsets", "dunsparce").learnset.outrage = ["8L1"]; + this.modData("Learnsets", "dunsparce").learnset.scaleshot = ["8L1"]; + this.modData("Learnsets", "dunsparce").learnset.meditate = ["8L1"]; + // Granbull + this.modData("Learnsets", "granbull").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "granbull").learnset.suckerpunch = ["8L1"]; + this.modData("Learnsets", "granbull").learnset.dizzypunch = ["8L1"]; + this.modData("Learnsets", "granbull").learnset.stalagbite = ["8L1"]; + this.modData("Learnsets", "granbull").learnset.stealthrock = ["8L1"]; + this.modData("Learnsets", "granbull").learnset.agility = ["8L1"]; + this.modData("Learnsets", "granbull").learnset.sandstorm = ["8L1"]; + this.modData("Learnsets", "granbull").learnset.wideguard = ["8L1"]; + this.modData("Learnsets", "granbull").learnset.leechlife = ["8L1"]; + // Qwilfish + this.modData("Learnsets", "qwilfish").learnset.wipeout = ["8L1"]; + // Shuckle + this.modData("Learnsets", "shuckle").learnset.bodypress = ["8L1"]; + // Magcargo + this.modData("Learnsets", "magcargo").learnset.meteorbeam = ["8L1"]; + this.modData("Learnsets", "magcargo").learnset.burningjealousy = ["8L1"]; + this.modData("Learnsets", "magcargo").learnset.scorchingsands = ["8L1"]; + // Corsola + this.modData("Learnsets", "corsola").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "corsola").learnset.wipeout = ["8L1"]; + // Corsola-Galar + this.modData("Learnsets", "corsolagalar").learnset.infestation = ["8L1"]; + // Remoraid + this.modData("Learnsets", "remoraid").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "remoraid").learnset.aurasphere = ["8L1"]; + // Octillery + this.modData("Learnsets", "octillery").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "octillery").learnset.mysticalfire = ["8L1"]; + this.modData("Learnsets", "octillery").learnset.aurasphere = ["8L1"]; + this.modData("Learnsets", "octillery").learnset.darkpulse = ["8L1"]; + this.modData("Learnsets", "octillery").learnset.websling = ["8L1"]; + // Delibird + this.modData("Learnsets", "delibird").learnset.chillout = ["8L1"]; + this.modData("Learnsets", "delibird").learnset.healpulse = ["8L1"]; + // Houndoom + this.modData("Learnsets", "houndoom").learnset.spitfire = ["8L1"]; + this.modData("Learnsets", "houndoom").learnset.eclipse = ["8L1"]; + this.modData("Learnsets", "houndoom").learnset.burningjealousy = ["8L1"]; + this.modData("Learnsets", "houndoom").learnset.scorchingsands = ["8L1"]; + this.modData("Learnsets", "houndoom").learnset.lashout = ["8L1"]; + // Kingdra + this.modData("Learnsets", "kingdra").learnset.sludgebomb = ["8L1"]; + // Donphan + this.modData("Learnsets", "donphan").learnset.spikes = ["8L1"]; + this.modData("Learnsets", "donphan").learnset.scorchingsands = ["8L1"]; + this.modData("Learnsets", "donphan").learnset.hydropump = ["8L1"]; + this.modData("Learnsets", "donphan").learnset.surf = ["8L1"]; + // Porygon2 + this.modData("Learnsets", "porygon2").learnset.adaptableattack = ["8L1"]; + this.modData("Learnsets", "porygon2").learnset.bittrip = ["8L1"]; + this.modData("Learnsets", "porygon2").learnset.risingvoltage = ["8L1"]; + // Stantler + this.modData("Learnsets", "stantler").learnset.nastyplot = ["8L1"]; + this.modData("Learnsets", "stantler").learnset.icebeam = ["8L1"]; + this.modData("Learnsets", "stantler").learnset.hypervoice = ["8L1"]; + this.modData("Learnsets", "stantler").learnset.blizzard = ["8L1"]; + this.modData("Learnsets", "stantler").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "stantler").learnset.expandingforce = ["8L1"]; + this.modData("Learnsets", "stantler").learnset.synchronoise = ["8L1"]; + // Tyranitar + this.modData("Learnsets", "tyranitar").learnset.meteorbeam = ["8L1"]; + // Lugia + this.modData("Learnsets", "lugia").learnset.oxidation = ["8L1"]; + + // Sceptile + this.modData("Learnsets", "sceptile").learnset.dracometeor = ["8L1"]; + // Combusken + this.modData("Learnsets", "combusken").learnset.closecombat = ["8L1"]; + this.modData("Learnsets", "combusken").learnset.uturn = ["8L1"]; + this.modData("Learnsets", "combusken").learnset.aurasphere = ["8L1"]; + // Mightyena + this.modData("Learnsets", "mightyena").learnset.knockoff = ["8L1"]; + this.modData("Learnsets", "mightyena").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "mightyena").learnset.poisonfang = ["8L1"]; + this.modData("Learnsets", "mightyena").learnset.burningjealousy = ["8L1"]; + // Beautifly + this.modData("Learnsets", "beautifly").learnset.hurricane = ["8L1"]; + this.modData("Learnsets", "beautifly").learnset.strengthsap = ["8L1"]; + // Dustox + this.modData("Learnsets", "dustox").learnset.sleeppowder = ["8L1"]; + this.modData("Learnsets", "dustox").learnset.ragepowder = ["8L1"]; + // Ludicolo + this.modData("Learnsets", "ludicolo").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "ludicolo").learnset.wipeout = ["8L1"]; + // Shiftry + this.modData("Learnsets", "shiftry").learnset.closecombat = ["8L1"]; + // Pelipper + this.modData("Learnsets", "pelipper").learnset.washaway = ["8L1"]; + // Gardevoir + this.modData("Learnsets", "gardevoir").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "gardevoir").learnset.dizzypunch = ["8L1"]; + this.modData("Learnsets", "gardevoir").learnset.aurasphere = ["8L1"]; + this.modData("Learnsets", "gardevoir").learnset.chillout = ["8L1"]; + // Masquerain + this.modData("Learnsets", "masquerain").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "masquerain").learnset.skittersmack = ["8L1"]; + this.modData("Learnsets", "masquerain").learnset.tripleaxel = ["8L1"]; + this.modData("Learnsets", "masquerain").learnset.chillout = ["8L1"]; + // Breloom + this.modData("Learnsets", "breloom").learnset.grassyglide = ["8L1"]; + this.modData("Learnsets", "breloom").learnset.coaching = ["8L1"]; + this.modData("Learnsets", "breloom").learnset.skittersmack = ["8L1"]; + // Ninjask + this.modData("Learnsets", "ninjask").learnset.earthquake = ["8L1"]; + // Exploud + this.modData("Learnsets", "exploud").learnset.spitfire = ["8L1"]; + this.modData("Learnsets", "exploud").learnset.synchronoise = ["8L1"]; + this.modData("Learnsets", "exploud").learnset.heartbeat = ["8L1"]; + // Hariyama + this.modData("Learnsets", "hariyama").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "hariyama").learnset.coaching = ["8L1"]; + this.modData("Learnsets", "hariyama").learnset.drainpunch = ["8L1"]; + // Nosepass + this.modData("Learnsets", "nosepass").learnset.meteorbeam = ["8L1"]; + this.modData("Learnsets", "nosepass").learnset.bittrip = ["8L1"]; + this.modData("Learnsets", "nosepass").learnset.risingvoltage = ["8L1"]; + // Skitty + this.modData("Learnsets", "skitty").learnset.skittersmack = ["8L1"]; + // Delcatty + this.modData("Learnsets", "delcatty").learnset.moonlight = ["8L1"]; + this.modData("Learnsets", "delcatty").learnset.eclipse = ["8L1"]; + this.modData("Learnsets", "delcatty").learnset.chillout = ["8L1"]; + this.modData("Learnsets", "delcatty").learnset.moonblast = ["8L1"]; + this.modData("Learnsets", "delcatty").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "delcatty").learnset.skittersmack = ["8L1"]; + // Aggron + this.modData("Learnsets", "aggron").learnset.meteormash = ["8L1"]; + // Medicham + this.modData("Learnsets", "medicham").learnset.dizzypunch = ["8L1"]; + // Plusle + this.modData("Learnsets", "plusle").learnset.risingvoltage = ["8L1"]; + this.modData("Learnsets", "plusle").learnset.flamethrower = ["8L1"]; + this.modData("Learnsets", "plusle").learnset.fireblast = ["8L1"]; + this.modData("Learnsets", "plusle").learnset.willowisp = ["8L1"]; + this.modData("Learnsets", "plusle").learnset.solarbeam = ["8L1"]; + this.modData("Learnsets", "plusle").learnset.heatwave = ["8L1"]; + this.modData("Learnsets", "plusle").learnset.coaching = ["8L1"]; + this.modData("Learnsets", "plusle").learnset.mefirst = ["8L1"]; + this.modData("Learnsets", "plusle").learnset.spotlight = ["8L1"]; + // Minun + this.modData("Learnsets", "minun").learnset.risingvoltage = ["8L1"]; + this.modData("Learnsets", "minun").learnset.icebeam = ["8L1"]; + this.modData("Learnsets", "minun").learnset.blizzard = ["8L1"]; + this.modData("Learnsets", "minun").learnset.hail = ["8L1"]; + this.modData("Learnsets", "minun").learnset.waterpulse = ["8L1"]; + this.modData("Learnsets", "minun").learnset.auroraveil = ["8L1"]; + this.modData("Learnsets", "minun").learnset.coaching = ["8L1"]; + this.modData("Learnsets", "minun").learnset.afteryou = ["8L1"]; + this.modData("Learnsets", "minun").learnset.chillout = ["8L1"]; + this.modData("Learnsets", "minun").learnset.haze = ["8L1"]; + this.modData("Learnsets", "minun").learnset.followme = ["8L1"]; + // Volbeat + this.modData("Learnsets", "volbeat").learnset.swordsdance = ["8L1"]; + this.modData("Learnsets", "volbeat").learnset.partingshot = ["8L1"]; + this.modData("Learnsets", "volbeat").learnset.skittersmack = ["8L1"]; + this.modData("Learnsets", "volbeat").learnset.dualwingbeat = ["8L1"]; + this.modData("Learnsets", "volbeat").learnset.wildcharge = ["8L1"]; + this.modData("Learnsets", "volbeat").learnset.drainpunch = ["8L1"]; + this.modData("Learnsets", "volbeat").learnset.risingvoltage = ["8L1"]; + // Illumise + this.modData("Learnsets", "illumise").learnset.tailglow = ["8L1"]; + this.modData("Learnsets", "illumise").learnset.moonblast = ["8L1"]; + this.modData("Learnsets", "illumise").learnset.dizzypunch = ["8L1"]; + this.modData("Learnsets", "illumise").learnset.skittersmack = ["8L1"]; + this.modData("Learnsets", "illumise").learnset.dualwingbeat = ["8L1"]; + this.modData("Learnsets", "illumise").learnset.partingshot = ["8L1"]; + this.modData("Learnsets", "illumise").learnset.mistyexplosion = ["8L1"]; + // Swalot + this.modData("Learnsets", "swalot").learnset.flamethrower = ["8L1"]; + this.modData("Learnsets", "swalot").learnset.thunderbolt = ["8L1"]; + this.modData("Learnsets", "swalot").learnset.poisonjab = ["8L1"]; + this.modData("Learnsets", "swalot").learnset.corrosivegas = ["8L1"]; + // Sharpedo + this.modData("Learnsets", "sharpedo").learnset.wipeout = ["8L1"]; + // Wailmer + this.modData("Learnsets", "wailmer").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "wailmer").learnset.wipeout = ["8L1"]; + // Wailord + this.modData("Learnsets", "wailord").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "wailord").learnset.wipeout = ["8L1"]; + // Camerupt + this.modData("Learnsets", "camerupt").learnset.scorchingsands = ["8L1"]; + this.modData("Learnsets", "camerupt").learnset.burningjealousy = ["8L1"]; + this.modData("Learnsets", "camerupt").learnset.spitfire = ["8L1"]; + // Grumpig + this.modData("Learnsets", "grumpig").learnset.expandingforce = ["8L1"]; + this.modData("Learnsets", "grumpig").learnset.suckerpunch = ["8L1"]; + this.modData("Learnsets", "grumpig").learnset.slackoff = ["8L1"]; + this.modData("Learnsets", "grumpig").learnset.workup = ["8L1"]; + this.modData("Learnsets", "grumpig").learnset.meditate = ["8L1"]; + // Spinda + this.modData("Learnsets", "spinda").learnset.overheat = ["8L1"]; + this.modData("Learnsets", "spinda").learnset.slackoff = ["8L1"]; + this.modData("Learnsets", "spinda").learnset.expandingforce = ["8L1"]; + // Trapinch + this.modData("Learnsets", "trapinch").learnset.leechlife = ["8L1"]; + // Vibrava + this.modData("Learnsets", "vibrava").learnset.leechlife = ["8L1"]; + // Flygon + this.modData("Learnsets", "flygon").learnset.leechlife = ["8L1"]; + // Altaria + this.modData("Learnsets", "altaria").learnset.cloudcrush = ["8L1"]; + // Zangoose + this.modData("Learnsets", "zangoose").learnset.lashout = ["8L1"]; + // Seviper + this.modData("Learnsets", "seviper").learnset.nastyplot = ["8L1"]; + this.modData("Learnsets", "seviper").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "seviper").learnset.skittersmack = ["8L1"]; + this.modData("Learnsets", "seviper").learnset.scaleshot = ["8L1"]; + // Whiscash + this.modData("Learnsets", "whiscash").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "whiscash").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "whiscash").learnset.wildcharge = ["8L1"]; + this.modData("Learnsets", "whiscash").learnset.thunderbolt = ["8L1"]; + this.modData("Learnsets", "whiscash").learnset.thunderwave = ["8L1"]; + this.modData("Learnsets", "whiscash").learnset.thunder = ["8L1"]; + // Milotic + this.modData("Learnsets", "milotic").learnset.moonblast = ["8L1"]; + this.modData("Learnsets", "milotic").learnset.spiritbreak = ["8L1"]; + this.modData("Learnsets", "milotic").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "milotic").learnset.dazzlinggleam = ["8L1"]; + // Castform + this.modData("Learnsets", "castform").learnset.nastyplot = ["8L1"]; + this.modData("Learnsets", "castform").learnset.earthquake = ["8L1"]; + this.modData("Learnsets", "castform").learnset.earthpower = ["8L1"]; + this.modData("Learnsets", "castform").learnset.powergem = ["8L1"]; + this.modData("Learnsets", "castform").learnset.flashcannon = ["8L1"]; + this.modData("Learnsets", "castform").learnset.meteorbeam = ["8L1"]; + this.modData("Learnsets", "castform").learnset.terrainpulse = ["8L1"]; + this.modData("Learnsets", "castform").learnset.recover = ["8L1"]; + this.modData("Learnsets", "castform").learnset.stoneedge = ["8L1"]; + this.modData("Learnsets", "castform").learnset.rockslide = ["8L1"]; + this.modData("Learnsets", "castform").learnset.rocktomb = ["8L1"]; + // Kecleon + this.modData("Learnsets", "kecleon").learnset.dizzypunch = ["8L1"]; + // Banette + this.modData("Learnsets", "banette").learnset.copycat = ["8L1"]; + this.modData("Learnsets", "banette").learnset.revenge = ["8L1"]; + this.modData("Learnsets", "banette").learnset.drainpunch = ["8L1"]; + this.modData("Learnsets", "banette").learnset.brickbreak = ["8L1"]; + this.modData("Learnsets", "banette").learnset.poltergeist = ["8L1"]; + this.modData("Learnsets", "banette").learnset.shadowpunch = ["8L1"]; + this.modData("Learnsets", "banette").learnset.playrough = ["8L1"]; + this.modData("Learnsets", "banette").learnset.swordsdance = ["8L1"]; + // Dusclops + this.modData("Learnsets", "dusclops").learnset.circlethrow = ["8L1"]; + // Tropius + this.modData("Learnsets", "tropius").learnset.dracometeor = ["8L1"]; + this.modData("Learnsets", "tropius").learnset.dragontail = ["8L1"]; + this.modData("Learnsets", "tropius").learnset.scaleshot = ["8L1"]; + this.modData("Learnsets", "tropius").learnset.dualwingbeat = ["8L1"]; + this.modData("Learnsets", "tropius").learnset.calmmind = ["8L1"]; + this.modData("Learnsets", "tropius").learnset.breakingswipe = ["8L1"]; + // Chimecho + this.modData("Learnsets", "chimecho").learnset.cobaltwave = ["8L1"]; + this.modData("Learnsets", "chimecho").learnset.flashcannon = ["8L1"]; + this.modData("Learnsets", "chimecho").learnset.ironhead = ["8L1"]; + this.modData("Learnsets", "chimecho").learnset.irondefense = ["8L1"]; + this.modData("Learnsets", "chimecho").learnset.expandingforce = ["8L1"]; + this.modData("Learnsets", "chimecho").learnset.steelbeam = ["8L1"]; + // Absol + this.modData("Learnsets", "absol").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "absol").learnset.spiritbreak = ["8L1"]; + this.modData("Learnsets", "absol").learnset.eclipse = ["8L1"]; + // Wynaut + this.modData("Learnsets", "wynaut").learnset.meanlook = ["8L1"]; + this.modData("Learnsets", "wynaut").learnset.torment = ["8L1"]; + // Glalie + this.modData("Learnsets", "glalie").learnset.quickattack = ["8L1"]; + this.modData("Learnsets", "glalie").learnset.doublehit = ["8L1"]; + // Walrein + this.modData("Learnsets", "walrein").learnset.chillout = ["8L1"]; + this.modData("Learnsets", "walrein").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "walrein").learnset.flipturn = ["8L1"]; + this.modData("Learnsets", "walrein").learnset.wipeout = ["8L1"]; + // Clamperl + this.modData("Learnsets", "clamperl").learnset.recover = ["8L1"]; + this.modData("Learnsets", "clamperl").learnset.washaway = ["8L1"]; + // Huntail + this.modData("Learnsets", "huntail").learnset.recover = ["8L1"]; + this.modData("Learnsets", "huntail").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "huntail").learnset.scaleshot = ["8L1"]; + this.modData("Learnsets", "huntail").learnset.washaway = ["8L1"]; + // Gorebyss + this.modData("Learnsets", "gorebyss").learnset.recover = ["8L1"]; + this.modData("Learnsets", "gorebyss").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "gorebyss").learnset.drainingkiss = ["8L1"]; + this.modData("Learnsets", "gorebyss").learnset.expandingforce = ["8L1"]; + this.modData("Learnsets", "gorebyss").learnset.psyshock = ["8L1"]; + this.modData("Learnsets", "gorebyss").learnset.dazzlinggleam = ["8L1"]; + this.modData("Learnsets", "gorebyss").learnset.sparklingaria = ["8L1"]; + this.modData("Learnsets", "gorebyss").learnset.snarl = ["8L1"]; + // Relicanth + this.modData("Learnsets", "relicanth").learnset.flipturn = ["8L1"]; + this.modData("Learnsets", "relicanth").learnset.recover = ["8L1"]; + // Luvdisc + this.modData("Learnsets", "luvdisc").learnset.dazzlinggleam = ["8L1"]; + // Metagross + this.modData("Learnsets", "metagross").learnset.cobaltwave = ["8L1"]; + // Regice + this.modData("Learnsets", "regice").learnset.chillout = ["8L1"]; + // Registeel + this.modData("Learnsets", "registeel").learnset.cobaltwave = ["8L1"]; + // Deoxys + this.modData("Learnsets", "deoxys").learnset.sludgebomb = ["8L1"]; + this.modData("Learnsets", "deoxys").learnset.sludgewave = ["8L1"]; + this.modData("Learnsets", "deoxys").learnset.venoshock = ["8L1"]; + this.modData("Learnsets", "deoxys").learnset.clearsmog = ["8L1"]; + this.modData("Learnsets", "deoxys").learnset.expandingforce = ["8L1"]; + this.modData("Learnsets", "deoxys").learnset.terrainpulse = ["8L1"]; + + // Torterra + this.modData("Learnsets", "torterra").learnset.scorchingsands = ["8L1"]; + this.modData("Learnsets", "torterra").learnset.grassyglide = ["8L1"]; + this.modData("Learnsets", "torterra").learnset.bodypress = ["8L1"]; + this.modData("Learnsets", "torterra").learnset.rototiller = ["8L1"]; + // Infernape + this.modData("Learnsets", "infernape").learnset.coaching = ["8L1"]; + this.modData("Learnsets", "infernape").learnset.spitfire = ["8L1"]; + this.modData("Learnsets", "infernape").learnset.burningjealousy = ["8L1"]; + this.modData("Learnsets", "infernape").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "infernape").learnset.aurasphere = ["8L1"]; + this.modData("Learnsets", "infernape").learnset.dizzypunch = ["8L1"]; + this.modData("Learnsets", "infernape").learnset.shadowpunch = ["8L1"]; + // Empoleon + this.modData("Learnsets", "empoleon").learnset.cobaltwave = ["8L1"]; + this.modData("Learnsets", "empoleon").learnset.steelbeam = ["8L1"]; + this.modData("Learnsets", "empoleon").learnset.dualwingbeat = ["8L1"]; + this.modData("Learnsets", "empoleon").learnset.roost = ["8L1"]; + this.modData("Learnsets", "empoleon").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "empoleon").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "empoleon").learnset.oxidation = ["8L1"]; + // Staraptor + this.modData("Learnsets", "staraptor").learnset.wildcharge = ["8L1"]; + this.modData("Learnsets", "staraptor").learnset.dualwingbeat = ["8L1"]; + this.modData("Learnsets", "staraptor").learnset.lashout = ["8L1"]; + // Bibarel + this.modData("Learnsets", "bibarel").learnset.hypervoice = ["8L1"]; + this.modData("Learnsets", "bibarel").learnset.agility = ["8L1"]; + // Kricketune + this.modData("Learnsets", "kricketune").learnset.boomburst = ["8L1"]; + this.modData("Learnsets", "kricketune").learnset.disarmingvoice = ["8L1"]; + this.modData("Learnsets", "kricketune").learnset.websling = ["8L1"]; + // Luxray + this.modData("Learnsets", "luxray").learnset.suckerpunch = ["8L1"]; + this.modData("Learnsets", "luxray").learnset.pursuit = ["8L1"]; + this.modData("Learnsets", "luxray").learnset.darkpulse = ["8L1"]; + this.modData("Learnsets", "luxray").learnset.spotlight = ["8L1"]; + this.modData("Learnsets", "luxray").learnset.taunt = ["8L1"]; + this.modData("Learnsets", "luxray").learnset.bulkup = ["8L1"]; + // Roserade + this.modData("Learnsets", "roserade").learnset.disarmingvoice = ["8L1"]; + // Rampardos + this.modData("Learnsets", "rampardos").learnset.stalagbite = ["8L1"]; + this.modData("Learnsets", "rampardos").learnset.meteorbeam = ["8L1"]; + this.modData("Learnsets", "rampardos").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "rampardos").learnset.jumpkick = ["8L1"]; + this.modData("Learnsets", "rampardos").learnset.lowsweep = ["8L1"]; + this.modData("Learnsets", "rampardos").learnset.bulkup = ["8L1"]; + // Shieldon + this.modData("Learnsets", "shieldon").learnset.steelbeam = ["8L1"]; + // Bastiodon + this.modData("Learnsets", "bastiodon").learnset.stalagbite = ["8L1"]; + this.modData("Learnsets", "bastiodon").learnset.steelbeam = ["8L1"]; + this.modData("Learnsets", "bastiodon").learnset.cobaltwave = ["8L1"]; + this.modData("Learnsets", "bastiodon").learnset.scorchingsands = ["8L1"]; + this.modData("Learnsets", "bastiodon").learnset.meteorbeam = ["8L1"]; + // Wormadam + this.modData("Learnsets", "wormadam").learnset.skittersmack = ["8L1"]; + this.modData("Learnsets", "wormadam").learnset.stickyweb = ["8L1"]; + this.modData("Learnsets", "wormadam").learnset.grassyglide = ["8L1"]; + this.modData("Learnsets", "wormadam").learnset.morningsun = ["8L1"]; + this.modData("Learnsets", "wormadam").learnset.leechseed = ["8L1"]; + this.modData("Learnsets", "wormadam").learnset.uturn = ["8L1"]; + this.modData("Learnsets", "wormadam").learnset.rapidspin = ["8L1"]; + // Wormadam-Sandy + this.modData("Learnsets", "wormadamsandy").learnset.skittersmack = ["8L1"]; + this.modData("Learnsets", "wormadamsandy").learnset.spikes = ["8L1"]; + this.modData("Learnsets", "wormadamsandy").learnset.scorchingsands = ["8L1"]; + this.modData("Learnsets", "wormadamsandy").learnset.morningsun = ["8L1"]; + this.modData("Learnsets", "wormadamsandy").learnset.uturn = ["8L1"]; + this.modData("Learnsets", "wormadamsandy").learnset.rapidspin = ["8L1"]; + this.modData("Learnsets", "wormadamsandy").learnset.stoneedge = ["8L1"]; + this.modData("Learnsets", "wormadamsandy").learnset.rockslide = ["8L1"]; + // Wormadam-Trash + this.modData("Learnsets", "wormadamtrash").learnset.skittersmack = ["8L1"]; + this.modData("Learnsets", "wormadamtrash").learnset.steelroller = ["8L1"]; + this.modData("Learnsets", "wormadamtrash").learnset.morningsun = ["8L1"]; + this.modData("Learnsets", "wormadamtrash").learnset.cobaltwave = ["8L1"]; + this.modData("Learnsets", "wormadamtrash").learnset.steelbeam = ["8L1"]; + this.modData("Learnsets", "wormadamtrash").learnset.uturn = ["8L1"]; + this.modData("Learnsets", "wormadamtrash").learnset.rapidspin = ["8L1"]; + this.modData("Learnsets", "wormadamtrash").learnset.sludgebomb = ["8L1"]; + this.modData("Learnsets", "wormadamtrash").learnset.toxicspikes = ["8L1"]; + // Mothim + this.modData("Learnsets", "mothim").learnset.swordsdance = ["8L1"]; + this.modData("Learnsets", "mothim").learnset.seedbomb = ["8L1"]; + this.modData("Learnsets", "mothim").learnset.skittersmack = ["8L1"]; + this.modData("Learnsets", "mothim").learnset.dualwingbeat = ["8L1"]; + this.modData("Learnsets", "mothim").learnset.cloudcrush = ["8L1"]; + this.modData("Learnsets", "mothim").learnset.quickattack = ["8L1"]; + this.modData("Learnsets", "mothim").learnset.steelwing = ["8L1"]; + this.modData("Learnsets", "mothim").learnset.stickyweb = ["8L1"]; + // Vespiquen + this.modData("Learnsets", "vespiquen").learnset.poisonjab = ["8L1"]; + this.modData("Learnsets", "vespiquen").learnset.brickbreak = ["8L1"]; + // Pachirisu + this.modData("Learnsets", "pachirisu").learnset.wish = ["8L1"]; + this.modData("Learnsets", "pachirisu").learnset.bulletseed = ["8L1"]; + this.modData("Learnsets", "pachirisu").learnset.leechseed = ["8L1"]; + this.modData("Learnsets", "pachirisu").learnset.powerwhip = ["8L1"]; + this.modData("Learnsets", "pachirisu").learnset.wildcharge = ["8L1"]; + this.modData("Learnsets", "pachirisu").learnset.energyball = ["8L1"]; + this.modData("Learnsets", "pachirisu").learnset.rototiller = ["8L1"]; + // Floatzel + this.modData("Learnsets", "floatzel").learnset.assurance = ["8L1"]; + this.modData("Learnsets", "floatzel").learnset.bite = ["8L1"]; + this.modData("Learnsets", "floatzel").learnset.darkpulse = ["8L1"]; + this.modData("Learnsets", "floatzel").learnset.throatchop = ["8L1"]; + this.modData("Learnsets", "floatzel").learnset.foulplay = ["8L1"]; + this.modData("Learnsets", "floatzel").learnset.flipturn = ["8L1"]; + this.modData("Learnsets", "floatzel").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "floatzel").learnset.nightslash = ["8L1"]; + this.modData("Learnsets", "floatzel").learnset.thief = ["8L1"]; + this.modData("Learnsets", "floatzel").learnset.aerialace = ["8L1"]; + this.modData("Learnsets", "floatzel").learnset.doublekick = ["8L1"]; + this.modData("Learnsets", "floatzel").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "floatzel").learnset.wipeout = ["8L1"]; + // Cherrim + this.modData("Learnsets", "cherrim").learnset.shadowsneak = ["8L1"]; + this.modData("Learnsets", "cherrim").learnset.shadowpunch = ["8L1"]; + this.modData("Learnsets", "cherrim").learnset.shadowball = ["8L1"]; + this.modData("Learnsets", "cherrim").learnset.uturn = ["8L1"]; + this.modData("Learnsets", "cherrim").learnset.dizzypunch = ["8L1"]; + this.modData("Learnsets", "cherrim").learnset.spite = ["8L1"]; + this.modData("Learnsets", "cherrim").learnset.curse = ["8L1"]; + // Ambipom + this.modData("Learnsets", "ambipom").learnset.doublekick = ["8L1"]; + this.modData("Learnsets", "ambipom").learnset.tripleaxel = ["8L1"]; + // Drifblim + this.modData("Learnsets", "drifblim").learnset.oxidation = ["8L1"]; + this.modData("Learnsets", "drifblim").learnset.eclipse = ["8L1"]; + this.modData("Learnsets", "drifblim").learnset.mysticalfire = ["8L1"]; + this.modData("Learnsets", "drifblim").learnset.poltergeist = ["8L1"]; + // Mismagius + this.modData("Learnsets", "mismagius").learnset.moonblast = ["8L1"]; + this.modData("Learnsets", "mismagius").learnset.moonlight = ["8L1"]; + this.modData("Learnsets", "mismagius").learnset.healingwish = ["8L1"]; + // Honchkrow + this.modData("Learnsets", "honchkrow").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "honchkrow").learnset.eclipse = ["8L1"]; + this.modData("Learnsets", "honchkrow").learnset.throatchop = ["8L1"]; + this.modData("Learnsets", "honchkrow").learnset.dualwingbeat = ["8L1"]; + // Purugly + this.modData("Learnsets", "purugly").learnset.earthquake = ["8L1"]; + this.modData("Learnsets", "purugly").learnset.bulkup = ["8L1"]; + this.modData("Learnsets", "purugly").learnset.slackoff = ["8L1"]; + this.modData("Learnsets", "purugly").learnset.lashout = ["8L1"]; + // Skuntank + this.modData("Learnsets", "skuntank").learnset.knockoff = ["8L1"]; + this.modData("Learnsets", "skuntank").learnset.flamecharge = ["8L1"]; + // Chingling + this.modData("Learnsets", "chingling").learnset.steelbeam = ["8L1"]; + // Bronzong + this.modData("Learnsets", "bronzong").learnset.cobaltwave = ["8L1"]; + // Chatot + this.modData("Learnsets", "chatot").learnset.spitfire = ["8L1"]; + this.modData("Learnsets", "chatot").learnset.eclipse = ["8L1"]; + this.modData("Learnsets", "chatot").learnset.moonlight = ["8L1"]; + this.modData("Learnsets", "chatot").learnset.dualwingbeat = ["8L1"]; + // Lucario + this.modData("Learnsets", "lucario").learnset.cobaltwave = ["8L1"]; + // Toxicroak + this.modData("Learnsets", "toxicroak").learnset.doublekick = ["8L1"]; + // Carnivine + this.modData("Learnsets", "carnivine").learnset.strengthsap = ["8L1"]; + this.modData("Learnsets", "carnivine").learnset.grassyglide = ["8L1"]; + this.modData("Learnsets", "carnivine").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "carnivine").learnset.gunkshot = ["8L1"]; + this.modData("Learnsets", "carnivine").learnset.brickbreak = ["8L1"]; + // Lumineon + this.modData("Learnsets", "lumineon").learnset.flipturn = ["8L1"]; + this.modData("Learnsets", "lumineon").learnset.skittersmack = ["8L1"]; + this.modData("Learnsets", "lumineon").learnset.hurricane = ["8L1"]; + this.modData("Learnsets", "lumineon").learnset.encore = ["8L1"]; + this.modData("Learnsets", "lumineon").learnset.taunt = ["8L1"]; + this.modData("Learnsets", "lumineon").learnset.washaway = ["8L1"]; + // Abomasnow + this.modData("Learnsets", "abomasnow").learnset.chillout = ["8L1"]; + // Weavile + this.modData("Learnsets", "weavile").learnset.chillout = ["8L1"]; + // Lickilicky + this.modData("Learnsets", "lickilicky").learnset.slackoff = ["8L1"]; + this.modData("Learnsets", "lickilicky").learnset.drainpunch = ["8L1"]; + this.modData("Learnsets", "lickilicky").learnset.barrier = ["8L1"]; + this.modData("Learnsets", "lickilicky").learnset.gunkshot = ["8L1"]; + // Rhyperior + this.modData("Learnsets", "rhyperior").learnset.stalagbite = ["8L1"]; + // Electivire + this.modData("Learnsets", "electivire").learnset.closecombat = ["8L1"]; + this.modData("Learnsets", "electivire").learnset.jumpkick = ["8L1"]; + this.modData("Learnsets", "electivire").learnset.bulletpunch = ["8L1"]; + this.modData("Learnsets", "electivire").learnset.knockoff = ["8L1"]; + this.modData("Learnsets", "electivire").learnset.aurasphere = ["8L1"]; + this.modData("Learnsets", "electivire").learnset.dizzypunch = ["8L1"]; + this.modData("Learnsets", "electivire").learnset.terrainpulse = ["8L1"]; + // Magmortar + this.modData("Learnsets", "magmortar").learnset.darkpulse = ["8L1"]; + this.modData("Learnsets", "magmortar").learnset.aurasphere = ["8L1"]; + this.modData("Learnsets", "magmortar").learnset.dragonpulse = ["8L1"]; + this.modData("Learnsets", "magmortar").learnset.knockoff = ["8L1"]; + this.modData("Learnsets", "magmortar").learnset.calmmind = ["8L1"]; + this.modData("Learnsets", "magmortar").learnset.dizzypunch = ["8L1"]; + this.modData("Learnsets", "magmortar").learnset.terrainpulse = ["8L1"]; + // Togekiss + this.modData("Learnsets", "togekiss").learnset.dizzypunch = ["8L1"]; + this.modData("Learnsets", "togekiss").learnset.oxidation = ["8L1"]; + // Yanmega + this.modData("Learnsets", "yanmega").learnset.dracometeor = ["8L1"]; + this.modData("Learnsets", "yanmega").learnset.dragonpulse = ["8L1"]; + this.modData("Learnsets", "yanmega").learnset.chipaway = ["8L1"]; + this.modData("Learnsets", "yanmega").learnset.dragontail = ["8L1"]; + this.modData("Learnsets", "yanmega").learnset.breakingswipe = ["8L1"]; + this.modData("Learnsets", "yanmega").learnset.twister = ["8L1"]; + this.modData("Learnsets", "yanmega").learnset.scaleshot = ["8L1"]; + this.modData("Learnsets", "yanmega").learnset.skittersmack = ["8L1"]; + this.modData("Learnsets", "yanmega").learnset.dualwingbeat = ["8L1"]; + // Leafeon + this.modData("Learnsets", "leafeon").learnset.bulldoze = ["8L1"]; + this.modData("Learnsets", "leafeon").learnset.doublekick = ["8L1"]; + this.modData("Learnsets", "leafeon").learnset.dualchop = ["8L1"]; + // Glaceon + this.modData("Learnsets", "glaceon").learnset.psychic = ["8L1"]; + this.modData("Learnsets", "glaceon").learnset.chillout = ["8L1"]; + // Porygon-Z + this.modData("Learnsets", "porygonz").learnset.adaptableattack = ["8L1"]; + this.modData("Learnsets", "porygonz").learnset.bittrip = ["8L1"]; + this.modData("Learnsets", "porygonz").learnset.risingvoltage = ["8L1"]; + // Gallade + this.modData("Learnsets", "gallade").learnset.sacredsword = ["8L1"]; + this.modData("Learnsets", "gallade").learnset.smartstrike = ["8L1"]; + this.modData("Learnsets", "gallade").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "gallade").learnset.playrough = ["8L1"]; + this.modData("Learnsets", "gallade").learnset.chillout = ["8L1"]; + // Probopass + this.modData("Learnsets", "probopass").learnset.cobaltwave = ["8L1"]; + this.modData("Learnsets", "probopass").learnset.steelbeam = ["8L1"]; + this.modData("Learnsets", "probopass").learnset.meteorbeam = ["8L1"]; + this.modData("Learnsets", "probopass").learnset.bittrip = ["8L1"]; + this.modData("Learnsets", "probopass").learnset.risingvoltage = ["8L1"]; + this.modData("Learnsets", "probopass").learnset.electricterrain = ["8L1"]; + // Dusknoir + this.modData("Learnsets", "dusknoir").learnset.closecombat = ["8L1"]; + this.modData("Learnsets", "dusknoir").learnset.drainpunch = ["8L1"]; + this.modData("Learnsets", "dusknoir").learnset.poisonjab = ["8L1"]; + this.modData("Learnsets", "dusknoir").learnset.circlethrow = ["8L1"]; + // Rotom + this.modData("Learnsets", "rotom").learnset.bittrip = ["8L1"]; + // Dialga + this.modData("Learnsets", "dialga").learnset.cobaltwave = ["8L1"]; + // Regigigas + this.modData("Learnsets", "regigigas").learnset.lifedew = ["8L1"]; + // Phione + this.modData("Learnsets", "phione").learnset.playrough = ["8L1"]; + this.modData("Learnsets", "phione").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "phione").learnset.mistyexplosion = ["8L1"]; + this.modData("Learnsets", "phione").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "phione").learnset.wipeout = ["8L1"]; + // Manaphy + this.modData("Learnsets", "manaphy").learnset.playrough = ["8L1"]; + this.modData("Learnsets", "manaphy").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "manaphy").learnset.mistyexplosion = ["8L1"]; + this.modData("Learnsets", "manaphy").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "manaphy").learnset.wipeout = ["8L1"]; + // Shaymin + this.modData("Learnsets", "shaymin").learnset.cloudcrush = ["8L1"]; + this.modData("Learnsets", "shaymin").learnset.playrough = ["8L1"]; + this.modData("Learnsets", "shaymin").learnset.grassyglide = ["8L1"]; + this.modData("Learnsets", "shaymin").learnset.terrainpulse = ["8L1"]; + this.modData("Learnsets", "shaymin").learnset.oxidation = ["8L1"]; + // Arceus + this.modData("Learnsets", "arceus").learnset.steelbeam = ["8L1"]; + this.modData("Learnsets", "arceus").learnset.meteorbeam = ["8L1"]; + this.modData("Learnsets", "arceus").learnset.terrainpulse = ["8L1"]; + this.modData("Learnsets", "arceus").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "arceus").learnset.expandingforce = ["8L1"]; + this.modData("Learnsets", "arceus").learnset.adaptableattack = ["8L1"]; + + // Serperior + this.modData("Learnsets", "serperior").learnset.grassyglide = ["8L1"]; + this.modData("Learnsets", "serperior").learnset.scaleshot = ["8L1"]; + // Emboar + this.modData("Learnsets", "emboar").learnset.burningjealousy = ["8L1"]; + this.modData("Learnsets", "emboar").learnset.meteorbeam = ["8L1"]; + this.modData("Learnsets", "emboar").learnset.scorchingsands = ["8L1"]; + this.modData("Learnsets", "emboar").learnset.stealthrock = ["8L1"]; + this.modData("Learnsets", "emboar").learnset.sandstorm = ["8L1"]; + // Samurott + this.modData("Learnsets", "samurott").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "samurott").learnset.flipturn = ["8L1"]; + this.modData("Learnsets", "samurott").learnset.bulkup = ["8L1"]; + this.modData("Learnsets", "samurott").learnset.focusblast = ["8L1"]; + this.modData("Learnsets", "samurott").learnset.aurasphere = ["8L1"]; + this.modData("Learnsets", "samurott").learnset.calmmind = ["8L1"]; + this.modData("Learnsets", "samurott").learnset.bodypress = ["8L1"]; + this.modData("Learnsets", "samurott").learnset.counter = ["8L1"]; + // Watchog + this.modData("Learnsets", "watchog").learnset.psychicfangs = ["8L1"]; + this.modData("Learnsets", "watchog").learnset.suckerpunch = ["8L1"]; + this.modData("Learnsets", "watchog").learnset.expandingforce = ["8L1"]; + this.modData("Learnsets", "watchog").learnset.shadowpunch = ["8L1"]; + // Stoutland + this.modData("Learnsets", "stoutland").learnset.doubleedge = ["8L1"]; + this.modData("Learnsets", "stoutland").learnset.earthquake = ["8L1"]; + this.modData("Learnsets", "stoutland").learnset.bulkup = ["8L1"]; + // Liepard + this.modData("Learnsets", "liepard").learnset.partingshot = ["8L1"]; + // Simisage + this.modData("Learnsets", "simisage").learnset.petalblizzard = ["8L1"]; + this.modData("Learnsets", "simisage").learnset.hypervoice = ["8L1"]; + this.modData("Learnsets", "simisage").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "simisage").learnset.rototiller = ["8L1"]; + this.modData("Learnsets", "simisage").learnset.grassyglide = ["8L1"]; + this.modData("Learnsets", "simisage").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "simisage").learnset.fakeout = ["8L1"]; + this.modData("Learnsets", "simisage").learnset.suckerpunch = ["8L1"]; + this.modData("Learnsets", "simisage").learnset.thunderbolt = ["8L1"]; + this.modData("Learnsets", "simisage").learnset.thunder = ["8L1"]; + this.modData("Learnsets", "simisage").learnset.thunderpunch = ["8L1"]; + this.modData("Learnsets", "simisage").learnset.thunderwave = ["8L1"]; + this.modData("Learnsets", "simisage").learnset.triattack = ["8L1"]; + // Simisear + this.modData("Learnsets", "simisear").learnset.spitfire = ["8L1"]; + this.modData("Learnsets", "simisear").learnset.hypervoice = ["8L1"]; + this.modData("Learnsets", "simisear").learnset.snarl = ["8L1"]; + this.modData("Learnsets", "simisear").learnset.burningjealousy = ["8L1"]; + this.modData("Learnsets", "simisear").learnset.scorchingsands = ["8L1"]; + this.modData("Learnsets", "simisear").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "simisear").learnset.fakeout = ["8L1"]; + this.modData("Learnsets", "simisear").learnset.suckerpunch = ["8L1"]; + this.modData("Learnsets", "simisear").learnset.thunderbolt = ["8L1"]; + this.modData("Learnsets", "simisear").learnset.thunder = ["8L1"]; + this.modData("Learnsets", "simisear").learnset.thunderpunch = ["8L1"]; + this.modData("Learnsets", "simisear").learnset.thunderwave = ["8L1"]; + this.modData("Learnsets", "simisear").learnset.triattack = ["8L1"]; + // Simipour + this.modData("Learnsets", "simipour").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "simipour").learnset.laserfocus = ["8L1"]; + this.modData("Learnsets", "simipour").learnset.extrasensory = ["8L1"]; + this.modData("Learnsets", "simipour").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "simipour").learnset.chillout = ["8L1"]; + this.modData("Learnsets", "simipour").learnset.flipturn = ["8L1"]; + this.modData("Learnsets", "simipour").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "simipour").learnset.fakeout = ["8L1"]; + this.modData("Learnsets", "simipour").learnset.suckerpunch = ["8L1"]; + this.modData("Learnsets", "simipour").learnset.thunderbolt = ["8L1"]; + this.modData("Learnsets", "simipour").learnset.thunder = ["8L1"]; + this.modData("Learnsets", "simipour").learnset.thunderwave = ["8L1"]; + this.modData("Learnsets", "simipour").learnset.thunderpunch = ["8L1"]; + this.modData("Learnsets", "simipour").learnset.triattack = ["8L1"]; + // Musharna + this.modData("Learnsets", "musharna").learnset.teleport = ["8L1"]; + // Unfezant + this.modData("Learnsets", "unfezant").learnset.oxidation = ["8L1"]; + this.modData("Learnsets", "unfezant").learnset.slash = ["8L1"]; + this.modData("Learnsets", "unfezant").learnset.blazekick = ["8L1"]; + // Zebstrika + this.modData("Learnsets", "zebstrika").learnset.risingvoltage = ["8L1"]; + this.modData("Learnsets", "zebstrika").learnset.highhorsepower = ["8L1"]; + this.modData("Learnsets", "zebstrika").learnset.swordsdance = ["8L1"]; + this.modData("Learnsets", "zebstrika").learnset.blazekick = ["8L1"]; + // Gigalith + this.modData("Learnsets", "gigalith").learnset.stalagbite = ["8L1"]; + // Audino + this.modData("Learnsets", "audino").learnset.chillout = ["8L1"]; + // Seismitoad + this.modData("Learnsets", "seismitoad").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "seismitoad").learnset.waterfall = ["8L1"]; + this.modData("Learnsets", "seismitoad").learnset.chillout = ["8L1"]; + // Leavanny + this.modData("Learnsets", "leavanny").learnset.skittersmack = ["8L1"]; + this.modData("Learnsets", "leavanny").learnset.grassyglide = ["8L1"]; + this.modData("Learnsets", "leavanny").learnset.websling = ["8L1"]; + // Whimsicott + this.modData("Learnsets", "whimsicott").learnset.cloudcrush = ["8L1"]; + // Lilligant + this.modData("Learnsets", "lilligant").learnset.psychic = ["8L1"]; + this.modData("Learnsets", "lilligant").learnset.shadowball = ["8L1"]; + // Basculin + this.modData("Learnsets", "basculin").learnset.wipeout = ["8L1"]; + // Krookodile + this.modData("Learnsets", "krookodile").learnset.poisonfang = ["8L1"]; + // Maractus + this.modData("Learnsets", "maractus").learnset.rototiller = ["8L1"]; + this.modData("Learnsets", "maractus").learnset.focusblast = ["8L1"]; + this.modData("Learnsets", "maractus").learnset.eclipse = ["8L1"]; + this.modData("Learnsets", "maractus").learnset.sludgebomb = ["8L1"]; + this.modData("Learnsets", "maractus").learnset.toxicspikes = ["8L1"]; + this.modData("Learnsets", "maractus").learnset.disarmingvoice = ["8L1"]; + // Scrafty + this.modData("Learnsets", "scrafty").learnset.gunkshot = ["8L1"]; + this.modData("Learnsets", "scrafty").learnset.suckerpunch = ["8L1"]; + // Sigilyph + this.modData("Learnsets", "sigilyph").learnset.oxidation = ["8L1"]; + // Carracosta + this.modData("Learnsets", "carracosta").learnset.stalagbite = ["8L1"]; + // Archeops + this.modData("Learnsets", "archeops").learnset.bravebird = ["8L1"]; + this.modData("Learnsets", "archeops").learnset.powergem = ["8L1"]; + this.modData("Learnsets", "archeops").learnset.stalagbite = ["8L1"]; + // Trubbish + this.modData("Learnsets", "trubbish").learnset.powergem = ["8L1"]; + // Garbodor + this.modData("Learnsets", "garbodor").learnset.cobaltwave = ["8L1"]; + this.modData("Learnsets", "garbodor").learnset.steelbeam = ["8L1"]; + this.modData("Learnsets", "garbodor").learnset.gyroball = ["8L1"]; + this.modData("Learnsets", "garbodor").learnset.ironhead = ["8L1"]; + this.modData("Learnsets", "garbodor").learnset.flashcannon = ["8L1"]; + this.modData("Learnsets", "garbodor").learnset.poisonjab = ["8L1"]; + this.modData("Learnsets", "garbodor").learnset.stealthrock = ["8L1"]; + this.modData("Learnsets", "garbodor").learnset.irondefense = ["8L1"]; + this.modData("Learnsets", "garbodor").learnset.icepunch = ["8L1"]; + this.modData("Learnsets", "garbodor").learnset.thunderpunch = ["8L1"]; + this.modData("Learnsets", "garbodor").learnset.magnetrise = ["8L1"]; + // Zoroark + this.modData("Learnsets", "zoroark").learnset.eclipse = ["8L1"]; + // Cinccino + this.modData("Learnsets", "cinccino").learnset.wish = ["8L1"]; + this.modData("Learnsets", "cinccino").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "cinccino").learnset.encore = ["8L1"]; + this.modData("Learnsets", "cinccino").learnset.rapidspin = ["8L1"]; + // Gothitelle + this.modData("Learnsets", "gothitelle").learnset.eclipse = ["8L1"]; + this.modData("Learnsets", "gothitelle").learnset.agility = ["8L1"]; + this.modData("Learnsets", "gothitelle").learnset.chillout = ["8L1"]; + // Swanna + this.modData("Learnsets", "swanna").learnset.oxidation = ["8L1"]; + this.modData("Learnsets", "swanna").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "swanna").learnset.uturn = ["8L1"]; + this.modData("Learnsets", "swanna").learnset.dualwingbeat = ["8L1"]; + // Vanilluxe + this.modData("Learnsets", "vanilluxe").learnset.chillout = ["8L1"]; + // Sawsbuck + this.modData("Learnsets", "sawsbuck").learnset.earthquake = ["8L1"]; + this.modData("Learnsets", "sawsbuck").learnset.grassyglide = ["8L1"]; + this.modData("Learnsets", "sawsbuck").learnset.terrainpulse = ["8L1"]; + this.modData("Learnsets", "sawsbuck").learnset.solarblade = ["8L1"]; + // Emolga + this.modData("Learnsets", "emolga").learnset.aurasphere = ["8L1"]; + this.modData("Learnsets", "emolga").learnset.hurricane = ["8L1"]; + this.modData("Learnsets", "emolga").learnset.seedbomb = ["8L1"]; + this.modData("Learnsets", "emolga").learnset.brickbreak = ["8L1"]; + // Alomomola + this.modData("Learnsets", "alomomola").learnset.dazzlinggleam = ["8L1"]; + this.modData("Learnsets", "alomomola").learnset.playrough = ["8L1"]; + this.modData("Learnsets", "alomomola").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "alomomola").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "alomomola").learnset.chillout = ["8L1"]; + // Galvantula + this.modData("Learnsets", "galvantula").learnset.websling = ["8L1"]; + // Klinklang + this.modData("Learnsets", "klinklang").learnset.earthquake = ["8L1"]; + // Eelektross + this.modData("Learnsets", "eelektross").learnset.risingvoltage = ["8L1"]; + this.modData("Learnsets", "eelektross").learnset.liquidation = ["8L1"]; + this.modData("Learnsets", "eelektross").learnset.flipturn = ["8L1"]; + this.modData("Learnsets", "eelektross").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "eelektross").learnset.leechlife = ["8L1"]; + this.modData("Learnsets", "eelektross").learnset.surf = ["8L1"]; + // Haxorus + this.modData("Learnsets", "haxorus").learnset.chipaway = ["8L1"]; + // Beartic + this.modData("Learnsets", "beartic").learnset.closecombat = ["8L1"]; + this.modData("Learnsets", "beartic").learnset.drainpunch = ["8L1"]; + this.modData("Learnsets", "beartic").learnset.submission = ["8L1"]; + // Accelgor + this.modData("Learnsets", "accelgor").learnset.hiddenleafstrike = ["8L1"]; + this.modData("Learnsets", "accelgor").learnset.eclipse = ["8L1"]; + this.modData("Learnsets", "accelgor").learnset.embargo = ["8L1"]; + this.modData("Learnsets", "accelgor").learnset.nastyplot = ["8L1"]; + this.modData("Learnsets", "accelgor").learnset.suckerpunch = ["8L1"]; + this.modData("Learnsets", "accelgor").learnset.thief = ["8L1"]; + this.modData("Learnsets", "accelgor").learnset.taunt = ["8L1"]; + this.modData("Learnsets", "accelgor").learnset.throatchop = ["8L1"]; + // Stunfisk + this.modData("Learnsets", "stunfisk").learnset.voltswitch = ["8L1"]; + this.modData("Learnsets", "stunfisk").learnset.washaway = ["8L1"]; + // Stunfisk-Galar + this.modData("Learnsets", "stunfiskgalar").learnset.voltswitch = ["8L1"]; + this.modData("Learnsets", "stunfiskgalar").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "stunfiskgalar").learnset.ironhead = ["8L1"]; + this.modData("Learnsets", "stunfiskgalar").learnset.irontail = ["8L1"]; + // Mienshao + this.modData("Learnsets", "mienshao").learnset.playrough = ["8L1"]; + this.modData("Learnsets", "mienshao").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "mienshao").learnset.disarmingvoice = ["8L1"]; + this.modData("Learnsets", "mienshao").learnset.dazzlinggleam = ["8L1"]; + this.modData("Learnsets", "mienshao").learnset.dizzypunch = ["8L1"]; + // Druddigon + this.modData("Learnsets", "druddigon").learnset.morningsun = ["8L1"]; + // Bouffalant + this.modData("Learnsets", "bouffalant").learnset.headsmash = ["8L1"]; + this.modData("Learnsets", "bouffalant").learnset.bodypress = ["8L1"]; + // Braviary + this.modData("Learnsets", "braviary").learnset.finalgambit = ["8L1"]; + this.modData("Learnsets", "braviary").learnset.focusblast = ["8L1"]; + // Heatmor + this.modData("Learnsets", "heatmor").learnset.strengthsap = ["8L1"]; + this.modData("Learnsets", "heatmor").learnset.bulkup = ["8L1"]; + this.modData("Learnsets", "heatmor").learnset.earthquake = ["8L1"]; + // Zweilous + this.modData("Learnsets", "zweilous").learnset.chipaway = ["8L1"]; + // Hydreigon + this.modData("Learnsets", "hydreigon").learnset.chipaway = ["8L1"]; + // Cobalion + this.modData("Learnsets", "cobalion").learnset.cobaltwave = ["8L1"]; + // Terrakion + this.modData("Learnsets", "terrakion").learnset.meteorbeam = ["8L1"]; + // Tornadus + this.modData("Learnsets", "tornadus").learnset.cloudcrush = ["8L1"]; + // Thundurus + this.modData("Learnsets", "thundurus").learnset.cloudcrush = ["8L1"]; + // Genesect + this.modData("Learnsets", "genesect").learnset.adaptableattack = ["8L1"]; + this.modData("Learnsets", "genesect").learnset.bittrip = ["8L1"]; + + // Chesnaught + this.modData("Learnsets", "chesnaught").learnset.grassyglide = ["8L1"]; + this.modData("Learnsets", "chesnaught").learnset.coaching = ["8L1"]; + this.modData("Learnsets", "chesnaught").learnset.steelroller = ["8L1"]; + this.modData("Learnsets", "chesnaught").learnset.bodypress = ["8L1"]; + // Delphox + this.modData("Learnsets", "delphox").learnset.burningjealousy = ["8L1"]; + this.modData("Learnsets", "delphox").learnset.expandingforce = ["8L1"]; + this.modData("Learnsets", "delphox").learnset.scorchingsands = ["8L1"]; + this.modData("Learnsets", "delphox").learnset.speedswap = ["8L1"]; + // Greninja + this.modData("Learnsets", "greninja").learnset.hiddenleafstrike = ["8L1"]; + // Vivillon + this.modData("Learnsets", "vivillon").learnset.dualwingbeat = ["8L1"]; + this.modData("Learnsets", "vivillon").learnset.skittersmack = ["8L1"]; + this.modData("Learnsets", "vivillon").learnset.pollenpuff = ["8L1"]; + this.modData("Learnsets", "vivillon").learnset.steelwing = ["8L1"]; + // Pyroar + this.modData("Learnsets", "pyroar").learnset.spitfire = ["8L1"]; + this.modData("Learnsets", "pyroar").learnset.burningjealousy = ["8L1"]; + this.modData("Learnsets", "pyroar").learnset.scorchingsands = ["8L1"]; + this.modData("Learnsets", "pyroar").learnset.mysticalfire = ["8L1"]; + // Florges + this.modData("Learnsets", "florges").learnset.mistyexplosion = ["8L1"]; + this.modData("Learnsets", "florges").learnset.grassyglide = ["8L1"]; + this.modData("Learnsets", "florges").learnset.leechseed = ["8L1"]; + this.modData("Learnsets", "florges").learnset.pollenpuff = ["8L1"]; + // Gogoat + this.modData("Learnsets", "gogoat").learnset.grassyglide = ["8L1"]; + this.modData("Learnsets", "gogoat").learnset.rototiller = ["8L1"]; + this.modData("Learnsets", "gogoat").learnset.stoneedge = ["8L1"]; + // Pangoro + this.modData("Learnsets", "pangoro").learnset.machpunch = ["8L1"]; + // Furfrou + this.modData("Learnsets", "furfrou").learnset.slackoff = ["8L1"]; + this.modData("Learnsets", "furfrou").learnset.healbell = ["8L1"]; + this.modData("Learnsets", "furfrou").learnset.bodypress = ["8L1"]; + // Meowstic + this.modData("Learnsets", "meowstic").learnset.aurasphere = ["8L1"]; + // Meowstic-F + this.modData("Learnsets", "meowsticf").learnset.aurasphere = ["8L1"]; + // Doublade + this.modData("Learnsets", "doublade").learnset.smartstrike = ["8L1"]; + // Aromatisse + this.modData("Learnsets", "aromatisse").learnset.sludgebomb = ["8L1"]; + this.modData("Learnsets", "aromatisse").learnset.sludgewave = ["8L1"]; + this.modData("Learnsets", "aromatisse").learnset.venoshock = ["8L1"]; + this.modData("Learnsets", "aromatisse").learnset.corrosivegas = ["8L1"]; + this.modData("Learnsets", "aromatisse").learnset.poisongas = ["8L1"]; + this.modData("Learnsets", "aromatisse").learnset.clearsmog = ["8L1"]; + this.modData("Learnsets", "aromatisse").learnset.acidspray = ["8L1"]; + // Slurpuff + this.modData("Learnsets", "slurpuff").learnset.dizzypunch = ["8L1"]; + this.modData("Learnsets", "slurpuff").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "slurpuff").learnset.thunderpunch = ["8L1"]; + this.modData("Learnsets", "slurpuff").learnset.websling = ["8L1"]; + // Malamar + this.modData("Learnsets", "malamar").learnset.overheat = ["8L1"]; + this.modData("Learnsets", "malamar").learnset.eclipse = ["8L1"]; + // Barbaracle + this.modData("Learnsets", "barbaracle").learnset.stalagbite = ["8L1"]; + this.modData("Learnsets", "barbaracle").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "barbaracle").learnset.icepunch = ["8L1"]; + // Dragalge + this.modData("Learnsets", "dragalge").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "dragalge").learnset.synthesis = ["8L1"]; + // Clawitzer + this.modData("Learnsets", "clawitzer").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "clawitzer").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "clawitzer").learnset.chillout = ["8L1"]; + // Heliolisk + this.modData("Learnsets", "heliolisk").learnset.powergem = ["8L1"]; + // Tyrunt + this.modData("Learnsets", "tyrunt").learnset.stalagbite = ["8L1"]; + // Tyrantrum + this.modData("Learnsets", "tyrantrum").learnset.stalagbite = ["8L1"]; + // Aurorus + this.modData("Learnsets", "aurorus").learnset.chillout = ["8L1"]; + this.modData("Learnsets", "aurorus").learnset.wildcharge = ["8L1"]; + this.modData("Learnsets", "aurorus").learnset.iceshard = ["8L1"]; + // Sylveon + this.modData("Learnsets", "sylveon").learnset.feint = ["8L1"]; + // Dedenne + this.modData("Learnsets", "dedenne").learnset.stuffcheeks = ["8L1"]; + this.modData("Learnsets", "dedenne").learnset.nastyplot = ["8L1"]; + this.modData("Learnsets", "dedenne").learnset.disarmingvoice = ["8L1"]; + // Carbink + this.modData("Learnsets", "carbink").learnset.storedpower = ["8L1"]; + this.modData("Learnsets", "carbink").learnset.drainingkiss = ["8L1"]; + // Goodra + this.modData("Learnsets", "goodra").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "goodra").learnset.liquidation = ["8L1"]; + this.modData("Learnsets", "goodra").learnset.whirlpool = ["8L1"]; + // Trevenant + this.modData("Learnsets", "trevenant").learnset.shadowpunch = ["8L1"]; + this.modData("Learnsets", "trevenant").learnset.swordsdance = ["8L1"]; + this.modData("Learnsets", "trevenant").learnset.stoneedge = ["8L1"]; + // Gourgeist + this.modData("Learnsets", "gourgeist").learnset.firepunch = ["8L1"]; + this.modData("Learnsets", "gourgeist").learnset.shadowpunch = ["8L1"]; + // Avalugg + this.modData("Learnsets", "avalugg").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "avalugg").learnset.stealthrock = ["8L1"]; + this.modData("Learnsets", "avalugg").learnset.chillout = ["8L1"]; + this.modData("Learnsets", "avalugg").learnset.iciclecrash = ["8L1"]; + // Noivern + this.modData("Learnsets", "noivern").learnset.spitfire = ["8L1"]; + // Diancie + this.modData("Learnsets", "diancie").learnset.dizzypunch = ["8L1"]; + // Volcanion + this.modData("Learnsets", "volcanion").learnset.mysticalfire = ["8L1"]; + this.modData("Learnsets", "volcanion").learnset.darkpulse = ["8L1"]; + this.modData("Learnsets", "volcanion").learnset.aurasphere = ["8L1"]; + + // Toucannon + this.modData("Learnsets", "toucannon").learnset.spikecannon = ["8L1"]; + this.modData("Learnsets", "toucannon").learnset.heartbeat = ["8L1"]; + this.modData("Learnsets", "toucannon").learnset.quickattack = ["8L1"]; + this.modData("Learnsets", "toucannon").learnset.spitfire = ["8L1"]; + this.modData("Learnsets", "toucannon").learnset.flareblitz = ["8L1"]; + this.modData("Learnsets", "toucannon").learnset.dualwingbeat = ["8L1"]; + this.modData("Learnsets", "toucannon").learnset.cloudcrush = ["8L1"]; + this.modData("Learnsets", "toucannon").learnset.lashout = ["8L1"]; + // Gumshoos + this.modData("Learnsets", "gumshoos").learnset.trickroom = ["8L1"]; + this.modData("Learnsets", "gumshoos").learnset.lashout = ["8L1"]; + this.modData("Learnsets", "gumshoos").learnset.psychicfangs = ["8L1"]; + this.modData("Learnsets", "gumshoos").learnset.poisonfang = ["8L1"]; + // Vikavolt + this.modData("Learnsets", "vikavolt").learnset.calmmind = ["8L1"]; + // Crabominable + this.modData("Learnsets", "crabominable").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "crabominable").learnset.slackoff = ["8L1"]; + this.modData("Learnsets", "crabominable").learnset.bodypress = ["8L1"]; + this.modData("Learnsets", "crabominable").learnset.coaching = ["8L1"]; + // Oricorio + this.modData("Learnsets", "oricorio").learnset.quiverdance = ["8L1"]; + this.modData("Learnsets", "oricorio").learnset.fierydance = ["8L1"]; + this.modData("Learnsets", "oricorio").learnset.teeterdance = ["8L1"]; + this.modData("Learnsets", "oricorio").learnset.eclipse = ["8L1"]; + // Ribombee + this.modData("Learnsets", "ribombee").learnset.endeavor = ["8L1"]; + // Lycanroc + this.modData("Learnsets", "lycanroc").learnset.stalagbite = ["8L1"]; + this.modData("Learnsets", "lycanroc").learnset.extremespeed = ["8L1"]; + this.modData("Learnsets", "lycanroc").learnset.doubleedge = ["8L1"]; + this.modData("Learnsets", "lycanroc").learnset.icefang = ["8L1"]; + this.modData("Learnsets", "lycanroc").learnset.poisonfang = ["8L1"]; + this.modData("Learnsets", "lycanroc").learnset.meteorbeam = ["8L1"]; + this.modData("Learnsets", "lycanroc").learnset.morningsun = ["8L1"]; + this.modData("Learnsets", "lycanroc").learnset.solarblade = ["8L1"]; + // Lycanroc-Midnight + this.modData("Learnsets", "lycanrocmidnight").learnset.stalagbite = ["8L1"]; + this.modData("Learnsets", "lycanrocmidnight").learnset.knockoff = ["8L1"]; + this.modData("Learnsets", "lycanrocmidnight").learnset.icepunch = ["8L1"]; + this.modData("Learnsets", "lycanrocmidnight").learnset.icefang = ["8L1"]; + this.modData("Learnsets", "lycanrocmidnight").learnset.poisonfang = ["8L1"]; + this.modData("Learnsets", "lycanrocmidnight").learnset.meteorbeam = ["8L1"]; + this.modData("Learnsets", "lycanrocmidnight").learnset.eclipse = ["8L1"]; + this.modData("Learnsets", "lycanrocmidnight").learnset.moonlight = ["8L1"]; + // Lycanroc-Dusk + this.modData("Learnsets", "lycanrocdusk").learnset.stalagbite = ["8L1"]; + this.modData("Learnsets", "lycanrocdusk").learnset.poisonfang = ["8L1"]; + this.modData("Learnsets", "lycanrocdusk").learnset.meteorbeam = ["8L1"]; + this.modData("Learnsets", "lycanrocdusk").learnset.doublekick = ["8L1"]; + this.modData("Learnsets", "lycanrocdusk").learnset.lowkick = ["8L1"]; + this.modData("Learnsets", "lycanrocdusk").learnset.finalgambit = ["8L1"]; + this.modData("Learnsets", "lycanrocdusk").learnset.morningsun = ["8L1"]; + this.modData("Learnsets", "lycanrocdusk").learnset.moonlight = ["8L1"]; + this.modData("Learnsets", "lycanrocdusk").learnset.solarblade = ["8L1"]; + // Wishiwashi + this.modData("Learnsets", "wishiwashi").learnset.painsplit = ["8L1"]; + this.modData("Learnsets", "wishiwashi").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "wishiwashi").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "wishiwashi").learnset.lifedew = ["8L1"]; + // Araquanid + this.modData("Learnsets", "araquanid").learnset.washaway = ["8L1"]; + // Lurantis + this.modData("Learnsets", "lurantis").learnset.tailwind = ["8L1"]; + this.modData("Learnsets", "lurantis").learnset.curse = ["8L1"]; + // Shiinotic + this.modData("Learnsets", "shiinotic").learnset.thunderbolt = ["8L1"]; + this.modData("Learnsets", "shiinotic").learnset.thunder = ["8L1"]; + // Bewear + this.modData("Learnsets", "bewear").learnset.helpinghand = ["8L1"]; + this.modData("Learnsets", "bewear").learnset.thunderwave = ["8L1"]; + this.modData("Learnsets", "bewear").learnset.faketears = ["8L1"]; + this.modData("Learnsets", "bewear").learnset.nobleroar = ["8L1"]; + // Salazzle + this.modData("Learnsets", "salazzle").learnset.toxicspikes = ["8L1"]; + this.modData("Learnsets", "salazzle").learnset.spitfire = ["8L1"]; + this.modData("Learnsets", "salazzle").learnset.corrosiveacid = ["8L1"]; + // Tsareena + this.modData("Learnsets", "tsareena").learnset.bulkup = ["8L1"]; + this.modData("Learnsets", "tsareena").learnset.doublekick = ["8L1"]; + // Comfey + this.modData("Learnsets", "comfey").learnset.dreameater = ["8L1"]; + this.modData("Learnsets", "comfey").learnset.hypnosis = ["8L1"]; + this.modData("Learnsets", "comfey").learnset.healingwish = ["8L1"]; + // Oranguru + this.modData("Learnsets", "oranguru").learnset.fakeout = ["8L1"]; + this.modData("Learnsets", "oranguru").learnset.recover = ["8L1"]; + this.modData("Learnsets", "oranguru").learnset.powerswap = ["8L1"]; + this.modData("Learnsets", "oranguru").learnset.speedswap = ["8L1"]; + this.modData("Learnsets", "oranguru").learnset.guardswap = ["8L1"]; + this.modData("Learnsets", "oranguru").learnset.beatup = ["8L1"]; + // Passimian + this.modData("Learnsets", "passimian").learnset.batonpass = ["8L1"]; + this.modData("Learnsets", "passimian").learnset.psychup = ["8L1"]; + // Golisopod + this.modData("Learnsets", "golisopod").learnset.wipeout = ["8L1"]; + // Pyukumuku + this.modData("Learnsets", "pyukumuku").learnset.aquaring = ["8L1"]; + this.modData("Learnsets", "pyukumuku").learnset.charm = ["8L1"]; + this.modData("Learnsets", "pyukumuku").learnset.captivate = ["8L1"]; + this.modData("Learnsets", "pyukumuku").learnset.disable = ["8L1"]; + this.modData("Learnsets", "pyukumuku").learnset.refresh = ["8L1"]; + // Type: Null + this.modData("Learnsets", "typenull").learnset.adaptableattack = ["8L1"]; + this.modData("Learnsets", "typenull").learnset.cobaltwave = ["8L1"]; + // Silvally + this.modData("Learnsets", "silvally").learnset.adaptableattack = ["8L1"]; + this.modData("Learnsets", "silvally").learnset.cobaltwave = ["8L1"]; + this.modData("Learnsets", "silvally").learnset.earthquake = ["8L1"]; + this.modData("Learnsets", "silvally").learnset.recover = ["8L1"]; + this.modData("Learnsets", "silvally").learnset.dazzlinggleam = ["8L1"]; + this.modData("Learnsets", "silvally").learnset.earthpower = ["8L1"]; + this.modData("Learnsets", "silvally").learnset.aquatail = ["8L1"]; + this.modData("Learnsets", "silvally").learnset.waterpledge = ["8L1"]; + this.modData("Learnsets", "silvally").learnset.firepledge = ["8L1"]; + this.modData("Learnsets", "silvally").learnset.calmmind = ["8L1"]; + this.modData("Learnsets", "silvally").learnset.chillout = ["8L1"]; + this.modData("Learnsets", "silvally").learnset.bittrip = ["8L1"]; + // Minior + this.modData("Learnsets", "minior").learnset.scorchingsands = ["8L1"]; + this.modData("Learnsets", "minior").learnset.meteorbeam = ["8L1"]; + this.modData("Learnsets", "minior").learnset.expandingforce = ["8L1"]; + this.modData("Learnsets", "minior").learnset.meteormash = ["8L1"]; + this.modData("Learnsets", "minior").learnset.moonlight = ["8L1"]; + this.modData("Learnsets", "minior").learnset.steelroller = ["8L1"]; + this.modData("Learnsets", "minior").learnset.bodypress = ["8L1"]; + this.modData("Learnsets", "minior").learnset.cloudcrush = ["8L1"]; + // Komala + this.modData("Learnsets", "komala").learnset.slackoff = ["8L1"]; + this.modData("Learnsets", "komala").learnset.nightmare = ["8L1"]; + this.modData("Learnsets", "komala").learnset.doubleedge = ["8L1"]; + this.modData("Learnsets", "komala").learnset.amnesia = ["8L1"]; + // Togedemaru + this.modData("Learnsets", "togedemaru").learnset.spikes = ["8L1"]; + // Mimikyu + this.modData("Learnsets", "mimikyu").learnset.dizzypunch = ["8L1"]; + // Bruxish + this.modData("Learnsets", "bruxish").learnset.flipturn = ["8L1"]; + this.modData("Learnsets", "bruxish").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "bruxish").learnset.expandingforce = ["8L1"]; + // Xurkitree + this.modData("Learnsets", "xurkitree").learnset.gigadrain = ["8L1"]; + this.modData("Learnsets", "xurkitree").learnset.paraboliccharge = ["8L1"]; + // Necrozma + this.modData("Learnsets", "necrozma").learnset.dracometeor = ["8L1"]; + this.modData("Learnsets", "necrozma").learnset.steelbeam = ["8L1"]; + this.modData("Learnsets", "necrozma").learnset.adaptableattack = ["8L1"]; + // Meltan + this.modData("Learnsets", "meltan").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "meltan").learnset.return = ["8L1"]; + this.modData("Learnsets", "meltan").learnset.frustration = ["8L1"]; + // Melmetal + this.modData("Learnsets", "melmetal").learnset.meteormash = ["8L1"]; + this.modData("Learnsets", "melmetal").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "melmetal").learnset.return = ["8L1"]; + this.modData("Learnsets", "melmetal").learnset.frustration = ["8L1"]; + + // Grookey + this.modData("Learnsets", "grookey").learnset.terrainpulse = ["8L1"]; + this.modData("Learnsets", "grookey").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "grookey").learnset.return = ["8L1"]; + this.modData("Learnsets", "grookey").learnset.frustration = ["8L1"]; + // Thwackey + this.modData("Learnsets", "thwackey").learnset.terrainpulse = ["8L1"]; + this.modData("Learnsets", "thwackey").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "thwackey").learnset.return = ["8L1"]; + this.modData("Learnsets", "thwackey").learnset.frustration = ["8L1"]; + // Rillaboom + this.modData("Learnsets", "rillaboom").learnset.terrainpulse = ["8L1"]; + this.modData("Learnsets", "rillaboom").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "rillaboom").learnset.return = ["8L1"]; + this.modData("Learnsets", "rillaboom").learnset.frustration = ["8L1"]; + // Scorbunny + this.modData("Learnsets", "scorbunny").learnset.weatherball = ["8L1"]; + this.modData("Learnsets", "scorbunny").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "scorbunny").learnset.return = ["8L1"]; + this.modData("Learnsets", "scorbunny").learnset.frustration = ["8L1"]; + // Raboot + this.modData("Learnsets", "raboot").learnset.weatherball = ["8L1"]; + this.modData("Learnsets", "raboot").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "raboot").learnset.return = ["8L1"]; + this.modData("Learnsets", "raboot").learnset.frustration = ["8L1"]; + // Cinderace + this.modData("Learnsets", "cinderace").learnset.weatherball = ["8L1"]; + this.modData("Learnsets", "cinderace").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "cinderace").learnset.return = ["8L1"]; + this.modData("Learnsets", "cinderace").learnset.frustration = ["8L1"]; + // Sobble + this.modData("Learnsets", "sobble").learnset.shadowball = ["8L1"]; + this.modData("Learnsets", "sobble").learnset.laserfocus = ["8L1"]; + this.modData("Learnsets", "sobble").learnset.signalbeam = ["8L1"]; + this.modData("Learnsets", "sobble").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "sobble").learnset.return = ["8L1"]; + this.modData("Learnsets", "sobble").learnset.frustration = ["8L1"]; + // Drizzile + this.modData("Learnsets", "drizzile").learnset.shadowball = ["8L1"]; + this.modData("Learnsets", "drizzile").learnset.laserfocus = ["8L1"]; + this.modData("Learnsets", "drizzile").learnset.signalbeam = ["8L1"]; + this.modData("Learnsets", "drizzile").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "drizzile").learnset.return = ["8L1"]; + this.modData("Learnsets", "drizzile").learnset.frustration = ["8L1"]; + // Inteleon + this.modData("Learnsets", "inteleon").learnset.shadowball = ["8L1"]; + this.modData("Learnsets", "inteleon").learnset.laserfocus = ["8L1"]; + this.modData("Learnsets", "inteleon").learnset.signalbeam = ["8L1"]; + this.modData("Learnsets", "inteleon").learnset.focusblast = ["8L1"]; + this.modData("Learnsets", "inteleon").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "inteleon").learnset.return = ["8L1"]; + this.modData("Learnsets", "inteleon").learnset.frustration = ["8L1"]; + // Skwovet + this.modData("Learnsets", "skwovet").learnset.taunt = ["8L1"]; + this.modData("Learnsets", "skwovet").learnset.knockoff = ["8L1"]; + this.modData("Learnsets", "skwovet").learnset.toxic = ["8L1"]; + this.modData("Learnsets", "skwovet").learnset.curse = ["8L1"]; + this.modData("Learnsets", "skwovet").learnset.doubleedge = ["8L1"]; + this.modData("Learnsets", "skwovet").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "skwovet").learnset.return = ["8L1"]; + this.modData("Learnsets", "skwovet").learnset.frustration = ["8L1"]; + // Greedent + this.modData("Learnsets", "greedent").learnset.taunt = ["8L1"]; + this.modData("Learnsets", "greedent").learnset.knockoff = ["8L1"]; + this.modData("Learnsets", "greedent").learnset.toxic = ["8L1"]; + this.modData("Learnsets", "greedent").learnset.curse = ["8L1"]; + this.modData("Learnsets", "greedent").learnset.doubleedge = ["8L1"]; + this.modData("Learnsets", "greedent").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "greedent").learnset.return = ["8L1"]; + this.modData("Learnsets", "greedent").learnset.frustration = ["8L1"]; + // Rookidee + this.modData("Learnsets", "rookidee").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "rookidee").learnset.return = ["8L1"]; + this.modData("Learnsets", "rookidee").learnset.frustration = ["8L1"]; + // Corvisquire + this.modData("Learnsets", "corvisquire").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "corvisquire").learnset.return = ["8L1"]; + this.modData("Learnsets", "corvisquire").learnset.frustration = ["8L1"]; + // Corviknight + this.modData("Learnsets", "corviknight").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "corviknight").learnset.return = ["8L1"]; + this.modData("Learnsets", "corviknight").learnset.frustration = ["8L1"]; + // Blipbug + this.modData("Learnsets", "blipbug").learnset.hiddenpower = ["8L1"]; + // Dottler + this.modData("Learnsets", "dottler").learnset.gravity = ["8L1"]; + this.modData("Learnsets", "dottler").learnset.knockoff = ["8L1"]; + this.modData("Learnsets", "dottler").learnset.speedswap = ["8L1"]; + // Orbeetle + this.modData("Learnsets", "orbeetle").learnset.gravity = ["8L1"]; + this.modData("Learnsets", "orbeetle").learnset.knockoff = ["8L1"]; + this.modData("Learnsets", "orbeetle").learnset.speedswap = ["8L1"]; + this.modData("Learnsets", "orbeetle").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "orbeetle").learnset.return = ["8L1"]; + this.modData("Learnsets", "orbeetle").learnset.frustration = ["8L1"]; + // Nickit + this.modData("Learnsets", "nickit").learnset.knockoff = ["8L1"]; + this.modData("Learnsets", "nickit").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "nickit").learnset.return = ["8L1"]; + this.modData("Learnsets", "nickit").learnset.frustration = ["8L1"]; + // Thievul + this.modData("Learnsets", "thievul").learnset.knockoff = ["8L1"]; + this.modData("Learnsets", "thievul").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "thievul").learnset.return = ["8L1"]; + this.modData("Learnsets", "thievul").learnset.frustration = ["8L1"]; + // Gossifleur + this.modData("Learnsets", "gossifleur").learnset.uturn = ["8L1"]; + this.modData("Learnsets", "gossifleur").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "gossifleur").learnset.return = ["8L1"]; + this.modData("Learnsets", "gossifleur").learnset.frustration = ["8L1"]; + // Eldegoss + this.modData("Learnsets", "eldegoss").learnset.uturn = ["8L1"]; + this.modData("Learnsets", "eldegoss").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "eldegoss").learnset.return = ["8L1"]; + this.modData("Learnsets", "eldegoss").learnset.frustration = ["8L1"]; + // Wooloo + this.modData("Learnsets", "wooloo").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "wooloo").learnset.return = ["8L1"]; + this.modData("Learnsets", "wooloo").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "wooloo").learnset.earthquake = ["8L1"]; + // Dubwool + this.modData("Learnsets", "dubwool").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "dubwool").learnset.return = ["8L1"]; + this.modData("Learnsets", "dubwool").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "dubwool").learnset.earthquake = ["8L1"]; + // Chewtle + this.modData("Learnsets", "chewtle").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "chewtle").learnset.return = ["8L1"]; + this.modData("Learnsets", "chewtle").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "chewtle").learnset.stalagbite = ["8L1"]; + this.modData("Learnsets", "chewtle").learnset.wipeout = ["8L1"]; + // Drednaw + this.modData("Learnsets", "drednaw").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "drednaw").learnset.return = ["8L1"]; + this.modData("Learnsets", "drednaw").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "drednaw").learnset.stalagbite = ["8L1"]; + this.modData("Learnsets", "drednaw").learnset.wipeout = ["8L1"]; + // Yamper + this.modData("Learnsets", "yamper").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "yamper").learnset.return = ["8L1"]; + this.modData("Learnsets", "yamper").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "yamper").learnset.signalbeam = ["8L1"]; + this.modData("Learnsets", "yamper").learnset.disarmingvoice = ["8L1"]; + // Boltund + this.modData("Learnsets", "boltund").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "boltund").learnset.return = ["8L1"]; + this.modData("Learnsets", "boltund").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "boltund").learnset.doublekick = ["8L1"]; + this.modData("Learnsets", "boltund").learnset.icefang = ["8L1"]; + this.modData("Learnsets", "boltund").learnset.shadowball = ["8L1"]; + this.modData("Learnsets", "boltund").learnset.signalbeam = ["8L1"]; + this.modData("Learnsets", "boltund").learnset.disarmingvoice = ["8L1"]; + // Rolycoly + this.modData("Learnsets", "rolycoly").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "rolycoly").learnset.return = ["8L1"]; + this.modData("Learnsets", "rolycoly").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "rolycoly").learnset.lavapulme = ["8L1"]; + // Carkol + this.modData("Learnsets", "carkol").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "carkol").learnset.return = ["8L1"]; + this.modData("Learnsets", "carkol").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "carkol").learnset.lavapulme = ["8L1"]; + // Coalossal + this.modData("Learnsets", "coalossal").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "coalossal").learnset.return = ["8L1"]; + this.modData("Learnsets", "coalossal").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "coalossal").learnset.lavapulme = ["8L1"]; + // Applin + this.modData("Learnsets", "applin").learnset.toxic = ["8L1"]; + // Flapple + this.modData("Learnsets", "flapple").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "flapple").learnset.return = ["8L1"]; + this.modData("Learnsets", "flapple").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "flapple").learnset.toxic = ["8L1"]; + this.modData("Learnsets", "flapple").learnset.chipaway = ["8L1"]; + this.modData("Learnsets", "flapple").learnset.gravity = ["8L1"]; + this.modData("Learnsets", "flapple").learnset.rockslide = ["8L1"]; + // Appletun + this.modData("Learnsets", "appletun").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "appletun").learnset.return = ["8L1"]; + this.modData("Learnsets", "appletun").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "appletun").learnset.toxic = ["8L1"]; + this.modData("Learnsets", "appletun").learnset.chipaway = ["8L1"]; + this.modData("Learnsets", "appletun").learnset.earthpower = ["8L1"]; + // Silicobra + this.modData("Learnsets", "silicobra").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "silicobra").learnset.return = ["8L1"]; + this.modData("Learnsets", "silicobra").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "silicobra").learnset.slackoff = ["8L1"]; + // Sandaconda + this.modData("Learnsets", "sandaconda").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "sandaconda").learnset.return = ["8L1"]; + this.modData("Learnsets", "sandaconda").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "sandaconda").learnset.slackoff = ["8L1"]; + // Cramorant + this.modData("Learnsets", "cramorant").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "cramorant").learnset.return = ["8L1"]; + this.modData("Learnsets", "cramorant").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "cramorant").learnset.knockoff = ["8L1"]; + this.modData("Learnsets", "cramorant").learnset.uturn = ["8L1"]; + this.modData("Learnsets", "cramorant").learnset.washaway = ["8L1"]; + // Arrokuda + this.modData("Learnsets", "arrokuda").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "arrokuda").learnset.return = ["8L1"]; + this.modData("Learnsets", "arrokuda").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "arrokuda").learnset.aquatail = ["8L1"]; + // Barraskewda + this.modData("Learnsets", "barraskewda").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "barraskewda").learnset.return = ["8L1"]; + this.modData("Learnsets", "barraskewda").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "barraskewda").learnset.aquatail = ["8L1"]; + // Toxel + this.modData("Learnsets", "toxel").learnset.toxic = ["8L1"]; + // Toxtricity + this.modData("Learnsets", "toxtricity").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "toxtricity").learnset.return = ["8L1"]; + this.modData("Learnsets", "toxtricity").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "toxtricity").learnset.shadowball = ["8L1"]; + // Toxtricity-Lowkey + this.modData("Learnsets", "toxtricitylowkey").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "toxtricitylowkey").learnset.return = ["8L1"]; + this.modData("Learnsets", "toxtricitylowkey").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "toxtricitylowkey").learnset.shadowball = ["8L1"]; + // Sizzlipede + this.modData("Learnsets", "sizzlipede").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "sizzlipede").learnset.return = ["8L1"]; + this.modData("Learnsets", "sizzlipede").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "sizzlipede").learnset.suckerpunch = ["8L1"]; + this.modData("Learnsets", "sizzlipede").learnset.websling = ["8L1"]; + // Centiskorch + this.modData("Learnsets", "centiskorch").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "centiskorch").learnset.return = ["8L1"]; + this.modData("Learnsets", "centiskorch").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "centiskorch").learnset.suckerpunch = ["8L1"]; + this.modData("Learnsets", "centiskorch").learnset.websling = ["8L1"]; + // Clobbopus + this.modData("Learnsets", "clobbopus").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "clobbopus").learnset.return = ["8L1"]; + this.modData("Learnsets", "clobbopus").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "clobbopus").learnset.recover = ["8L1"]; + this.modData("Learnsets", "clobbopus").learnset.flipturn = ["8L1"]; + this.modData("Learnsets", "clobbopus").learnset.darkestlariat = ["8L1"]; + this.modData("Learnsets", "clobbopus").learnset.darkpulse = ["8L1"]; + this.modData("Learnsets", "clobbopus").learnset.throatchop = ["8L1"]; + this.modData("Learnsets", "clobbopus").learnset.foulplay = ["8L1"]; + this.modData("Learnsets", "clobbopus").learnset.memento = ["8L1"]; + this.modData("Learnsets", "clobbopus").learnset.powertrip = ["8L1"]; + this.modData("Learnsets", "clobbopus").learnset.scald = ["8L1"]; + this.modData("Learnsets", "clobbopus").learnset.toxic = ["8L1"]; + this.modData("Learnsets", "clobbopus").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "clobbopus").learnset.raindance = ["8L1"]; + this.modData("Learnsets", "clobbopus").learnset.aquajet = ["8L1"]; + // Grapploct + this.modData("Learnsets", "grapploct").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "grapploct").learnset.return = ["8L1"]; + this.modData("Learnsets", "grapploct").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "grapploct").learnset.recover = ["8L1"]; + this.modData("Learnsets", "grapploct").learnset.flipturn = ["8L1"]; + this.modData("Learnsets", "grapploct").learnset.scald = ["8L1"]; + this.modData("Learnsets", "grapploct").learnset.toxic = ["8L1"]; + this.modData("Learnsets", "grapploct").learnset.washaway = ["8L1"]; + this.modData("Learnsets", "grapploct").learnset.raindance = ["8L1"]; + this.modData("Learnsets", "grapploct").learnset.aquajet = ["8L1"]; + // Sinistea + this.modData("Learnsets", "sinistea").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "sinistea").learnset.return = ["8L1"]; + this.modData("Learnsets", "sinistea").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "sinistea").learnset.scald = ["8L1"]; + // Polteageist + this.modData("Learnsets", "polteageist").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "polteageist").learnset.return = ["8L1"]; + this.modData("Learnsets", "polteageist").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "polteageist").learnset.scald = ["8L1"]; + // Hatenna + this.modData("Learnsets", "hatenna").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "hatenna").learnset.return = ["8L1"]; + this.modData("Learnsets", "hatenna").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "hatenna").learnset.teleport = ["8L1"]; + this.modData("Learnsets", "hatenna").learnset.heartbeat = ["8L1"]; + // Hattrem + this.modData("Learnsets", "hattrem").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "hattrem").learnset.return = ["8L1"]; + this.modData("Learnsets", "hattrem").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "hattrem").learnset.teleport = ["8L1"]; + this.modData("Learnsets", "hattrem").learnset.heartbeat = ["8L1"]; + // Hatterene + this.modData("Learnsets", "hatterene").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "hatterene").learnset.return = ["8L1"]; + this.modData("Learnsets", "hatterene").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "hatterene").learnset.teleport = ["8L1"]; + this.modData("Learnsets", "hatterene").learnset.heartbeat = ["8L1"]; + // Impidimp + this.modData("Learnsets", "impidimp").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "impidimp").learnset.return = ["8L1"]; + this.modData("Learnsets", "impidimp").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "impidimp").learnset.dizzypunch = ["8L1"]; + // Morgrem + this.modData("Learnsets", "morgrem").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "morgrem").learnset.return = ["8L1"]; + this.modData("Learnsets", "morgrem").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "morgrem").learnset.dizzypunch = ["8L1"]; + // Grimmsnarl + this.modData("Learnsets", "grimmsnarl").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "grimmsnarl").learnset.return = ["8L1"]; + this.modData("Learnsets", "grimmsnarl").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "grimmsnarl").learnset.dizzypunch = ["8L1"]; + // Obstagoon + this.modData("Learnsets", "obstagoon").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "obstagoon").learnset.return = ["8L1"]; + this.modData("Learnsets", "obstagoon").learnset.frustration = ["8L1"]; + // Perrserker + this.modData("Learnsets", "perrserker").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "perrserker").learnset.return = ["8L1"]; + this.modData("Learnsets", "perrserker").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "perrserker").learnset.bulletpunch = ["8L1"]; + this.modData("Learnsets", "perrserker").learnset.colbaltwave = ["8L1"]; + this.modData("Learnsets", "perrserker").learnset.thunderwave = ["8L1"]; + // Cursola + this.modData("Learnsets", "cursola").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "cursola").learnset.return = ["8L1"]; + this.modData("Learnsets", "cursola").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "cursola").learnset.eclipse = ["8L1"]; + this.modData("Learnsets", "cursola").learnset.wipeout = ["8L1"]; + this.modData("Learnsets", "cursola").learnset.infestation = ["8L1"]; + this.modData("Learnsets", "cursola").learnset.block = ["8L1"]; + // Sirfetchd + this.modData("Learnsets", "sirfetchd").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "sirfetchd").learnset.return = ["8L1"]; + this.modData("Learnsets", "sirfetchd").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "sirfetchd").learnset.roost = ["8L1"]; + // Mr Rime + this.modData("Learnsets", "mrrime").learnset.chillout = ["8L1"]; + // Runerigus + this.modData("Learnsets", "runerigus").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "runerigus").learnset.return = ["8L1"]; + this.modData("Learnsets", "runerigus").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "runerigus").learnset.painsplit = ["8L1"]; + this.modData("Learnsets", "runerigus").learnset.drainpunch = ["8L1"]; + this.modData("Learnsets", "runerigus").learnset.shadowpunch = ["8L1"]; + this.modData("Learnsets", "runerigus").learnset.dizzypunch = ["8L1"]; + this.modData("Learnsets", "runerigus").learnset.bulkup = ["8L1"]; + // Milcery + this.modData("Learnsets", "milcery").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "milcery").learnset.return = ["8L1"]; + this.modData("Learnsets", "milcery").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "milcery").learnset.moonblast = ["8L1"]; + // Alcremie + this.modData("Learnsets", "alcremie").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "alcremie").learnset.return = ["8L1"]; + this.modData("Learnsets", "alcremie").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "alcremie").learnset.moonblast = ["8L1"]; + // Falinks + this.modData("Learnsets", "falinks").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "falinks").learnset.return = ["8L1"]; + this.modData("Learnsets", "falinks").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "falinks").learnset.rockblast = ["8L1"]; + this.modData("Learnsets", "falinks").learnset.steelbeam = ["8L1"]; + // Pincurchin + this.modData("Learnsets", "pincurchin").learnset.terrainpulse = ["8L1"]; + this.modData("Learnsets", "pincurchin").learnset.sludgebomb = ["8L1"]; + this.modData("Learnsets", "pincurchin").learnset.voltswitch = ["8L1"]; + this.modData("Learnsets", "pincurchin").learnset.acidspray = ["8L1"]; + this.modData("Learnsets", "pincurchin").learnset.toxicspikes = ["8L1"]; + this.modData("Learnsets", "pincurchin").learnset.spikyshield = ["8L1"]; + // Snom + this.modData("Learnsets", "snom").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "snom").learnset.return = ["8L1"]; + this.modData("Learnsets", "snom").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "snom").learnset.chillout = ["8L1"]; + // Frosmoth + this.modData("Learnsets", "frosmoth").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "frosmoth").learnset.return = ["8L1"]; + this.modData("Learnsets", "frosmoth").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "frosmoth").learnset.chillout = ["8L1"]; + this.modData("Learnsets", "frosmoth").learnset.roost = ["8L1"]; + // Stonjourner + this.modData("Learnsets", "stonjourner").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "stonjourner").learnset.return = ["8L1"]; + this.modData("Learnsets", "stonjourner").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "stonjourner").learnset.helpinghand = ["8L1"]; + this.modData("Learnsets", "stonjourner").learnset.followme = ["8L1"]; + this.modData("Learnsets", "stonjourner").learnset.trickroom = ["8L1"]; + // Eiscue + this.modData("Learnsets", "eiscue").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "eiscue").learnset.return = ["8L1"]; + this.modData("Learnsets", "eiscue").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "eiscue").learnset.chillout = ["8L1"]; + this.modData("Learnsets", "eiscue").learnset.nastyplot = ["8L1"]; + // Indeedee + this.modData("Learnsets", "indeedee").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "indeedee").learnset.return = ["8L1"]; + this.modData("Learnsets", "indeedee").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "indeedee").learnset.flamethrower = ["8L1"]; + this.modData("Learnsets", "indeedee").learnset.thunderbolt = ["8L1"]; + this.modData("Learnsets", "indeedee").learnset.nastyplot = ["8L1"]; + // Indeedee-F + this.modData("Learnsets", "indeedeef").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "indeedeef").learnset.return = ["8L1"]; + this.modData("Learnsets", "indeedeef").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "indeedeef").learnset.flamethrower = ["8L1"]; + this.modData("Learnsets", "indeedeef").learnset.thunderbolt = ["8L1"]; + this.modData("Learnsets", "indeedeef").learnset.nastyplot = ["8L1"]; + // Morpeko + this.modData("Learnsets", "morpeko").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "morpeko").learnset.return = ["8L1"]; + this.modData("Learnsets", "morpeko").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "morpeko").learnset.helpinghand = ["8L1"]; + // Cufant + this.modData("Learnsets", "cufant").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "cufant").learnset.return = ["8L1"]; + this.modData("Learnsets", "cufant").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "cufant").learnset.cobaltwave = ["8L1"]; + this.modData("Learnsets", "cufant").learnset.spikes = ["8L1"]; + // Copperajah + this.modData("Learnsets", "copperajah").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "copperajah").learnset.return = ["8L1"]; + this.modData("Learnsets", "copperajah").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "copperajah").learnset.cobaltwave = ["8L1"]; + this.modData("Learnsets", "copperajah").learnset.spikes = ["8L1"]; + // Dracozolt + this.modData("Learnsets", "dracozolt").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "dracozolt").learnset.return = ["8L1"]; + this.modData("Learnsets", "dracozolt").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "dracozolt").learnset.chipaway = ["8L1"]; + this.modData("Learnsets", "dracozolt").learnset.zingzap = ["8L1"]; + // Arctozolt + this.modData("Learnsets", "arctozolt").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "arctozolt").learnset.return = ["8L1"]; + this.modData("Learnsets", "arctozolt").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "arctozolt").learnset.chillout = ["8L1"]; + this.modData("Learnsets", "arctozolt").learnset.zingzap = ["8L1"]; + // Dracovish + this.modData("Learnsets", "dracovish").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "dracovish").learnset.return = ["8L1"]; + this.modData("Learnsets", "dracovish").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "dracovish").learnset.chipaway = ["8L1"]; + this.modData("Learnsets", "dracovish").learnset.stalagbite = ["8L1"]; + this.modData("Learnsets", "dracovish").learnset.washaway = ["8L1"]; + // Arctovish + this.modData("Learnsets", "arctovish").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "arctovish").learnset.return = ["8L1"]; + this.modData("Learnsets", "arctovish").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "arctovish").learnset.chillout = ["8L1"]; + this.modData("Learnsets", "arctovish").learnset.washaway = ["8L1"]; + // Duraludon + this.modData("Learnsets", "duraludon").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "duraludon").learnset.return = ["8L1"]; + this.modData("Learnsets", "duraludon").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "duraludon").learnset.cobaltwave = ["8L1"]; + // Dreepy + this.modData("Learnsets", "dreepy").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "dreepy").learnset.return = ["8L1"]; + this.modData("Learnsets", "dreepy").learnset.frustration = ["8L1"]; + // Drakloak + this.modData("Learnsets", "drakloak").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "drakloak").learnset.return = ["8L1"]; + this.modData("Learnsets", "drakloak").learnset.frustration = ["8L1"]; + // Dragapult + this.modData("Learnsets", "dragapult").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "dragapult").learnset.return = ["8L1"]; + this.modData("Learnsets", "dragapult").learnset.frustration = ["8L1"]; + // Zacian + this.modData("Learnsets", "zacian").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "zacian").learnset.return = ["8L1"]; + this.modData("Learnsets", "zacian").learnset.frustration = ["8L1"]; + // Zamazenta + this.modData("Learnsets", "zamazenta").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "zamazenta").learnset.return = ["8L1"]; + this.modData("Learnsets", "zamazenta").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "zamazenta").learnset.bodypress = ["8L1"]; + // Eternatus + this.modData("Learnsets", "eternatus").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "eternatus").learnset.return = ["8L1"]; + this.modData("Learnsets", "eternatus").learnset.frustration = ["8L1"]; + // Kubfu + this.modData("Learnsets", "kubfu").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "kubfu").learnset.return = ["8L1"]; + this.modData("Learnsets", "kubfu").learnset.frustration = ["8L1"]; + // Urshifu + this.modData("Learnsets", "urshifu").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "urshifu").learnset.return = ["8L1"]; + this.modData("Learnsets", "urshifu").learnset.frustration = ["8L1"]; + // Urshifu-Rapid-Strike + this.modData("Learnsets", "urshifurapidstrike").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "urshifurapidstrike").learnset.return = ["8L1"]; + this.modData("Learnsets", "urshifurapidstrike").learnset.frustration = ["8L1"]; + // Zarude + this.modData("Learnsets", "zarude").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "zarude").learnset.return = ["8L1"]; + this.modData("Learnsets", "zarude").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "zarude").learnset.knockoff = ["8L1"]; + // Regieleki + this.modData("Learnsets", "regieleki").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "regieleki").learnset.return = ["8L1"]; + this.modData("Learnsets", "regieleki").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "regieleki").learnset.superpower = ["8L1"]; + this.modData("Learnsets", "regieleki").learnset.earthquake = ["8L1"]; + this.modData("Learnsets", "regieleki").learnset.hammerarm = ["8L1"]; + this.modData("Learnsets", "regieleki").learnset.chargebeam = ["8L1"]; + this.modData("Learnsets", "regieleki").learnset.bulldoze = ["8L1"]; + this.modData("Learnsets", "regieleki").learnset.stomp = ["8L1"]; + this.modData("Learnsets", "regieleki").learnset.curse = ["8L1"]; + this.modData("Learnsets", "regieleki").learnset.amnesia = ["8L1"]; + this.modData("Learnsets", "regieleki").learnset.quickattack = ["8L1"]; + this.modData("Learnsets", "regieleki").learnset.flashcannon = ["8L1"]; + this.modData("Learnsets", "regieleki").learnset.shadowball = ["8L1"]; + this.modData("Learnsets", "regieleki").learnset.magnetbomb = ["8L1"]; + // Regidrago + this.modData("Learnsets", "regidrago").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.return = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.superpower = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.earthquake = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.lockon = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.chargebeam = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.bulldoze = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.stomp = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.curse = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.irondefense = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.zapcannon = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.bodypress = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.thunderbolt = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.flamethrower = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.fireblast = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.thunderwave = ["8L1"]; + this.modData("Learnsets", "regidrago").learnset.thunder = ["8L1"]; + // Glastrier + this.modData("Learnsets", "glastrier").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "glastrier").learnset.return = ["8L1"]; + this.modData("Learnsets", "glastrier").learnset.frustration = ["8L1"]; + // Spectrier + this.modData("Learnsets", "spectrier").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "spectrier").learnset.return = ["8L1"]; + this.modData("Learnsets", "spectrier").learnset.frustration = ["8L1"]; + // Calyrex + this.modData("Learnsets", "calyrex").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "calyrex").learnset.return = ["8L1"]; + this.modData("Learnsets", "calyrex").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "calyrex").learnset.rototiller = ["8L1"]; + // Calyrex-Shadow + this.modData("Learnsets", "calyrexshadow").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "calyrexshadow").learnset.return = ["8L1"]; + this.modData("Learnsets", "calyrexshadow").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "calyrexshadow").learnset.rototiller = ["8L1"]; + // Calyrex-Ice + this.modData("Learnsets", "calyrexice").learnset.hiddenpower = ["8L1"]; + this.modData("Learnsets", "calyrexice").learnset.return = ["8L1"]; + this.modData("Learnsets", "calyrexice").learnset.frustration = ["8L1"]; + this.modData("Learnsets", "calyrexice").learnset.rototiller = ["8L1"]; + }, +}; diff --git a/data/mods/pkmnybv2/typechart.ts b/data/mods/pkmnybv2/typechart.ts new file mode 100644 index 0000000000..1c7e2f247e --- /dev/null +++ b/data/mods/pkmnybv2/typechart.ts @@ -0,0 +1,446 @@ +export const TypeChart: {[k: string]: ModdedTypeData} = { + + "Bug": { + damageTaken: { + "Bug": 0, + "Dark": 0, + "Dragon": 0, + "Electric": 0, + "Fairy": 0, + "Fighting": 2, + "Fire": 1, + "Flying": 1, + "Ghost": 0, + "Grass": 2, + "Ground": 2, + "Ice": 0, + "Normal": 0, + "Poison": 0, + "Psychic": 0, + "Rock": 1, + "Steel": 0, + "Water": 0, + }, + HPivs: {"atk": 30, "def": 30, "spd": 30}, + HPdvs: {"atk": 13, "def": 13}, + }, + "Dark": { + damageTaken: { + prankster: 3, + "Bug": 1, + "Dark": 2, + "Dragon": 0, + "Electric": 0, + "Fairy": 1, + "Fighting": 1, + "Fire": 0, + "Flying": 0, + "Ghost": 2, + "Grass": 0, + "Ground": 0, + "Ice": 0, + "Normal": 0, + "Poison": 0, + "Psychic": 3, + "Rock": 0, + "Steel": 0, + "Water": 0, + }, + HPivs: {}, + }, + "Dragon": { + damageTaken: { + "Bug": 0, + "Dark": 0, + "Dragon": 1, + "Electric": 2, + "Fairy": 1, + "Fighting": 0, + "Fire": 2, + "Flying": 0, + "Ghost": 0, + "Grass": 2, + "Ground": 0, + "Ice": 1, + "Normal": 0, + "Poison": 0, + "Psychic": 0, + "Rock": 0, + "Steel": 0, + "Water": 2, + }, + HPivs: {"atk": 30}, + HPdvs: {"def": 14}, + }, + "Electric": { + damageTaken: { + par: 3, + "Bug": 0, + "Dark": 0, + "Dragon": 0, + "Electric": 2, + "Fairy": 0, + "Fighting": 0, + "Fire": 0, + "Flying": 2, + "Ghost": 0, + "Grass": 0, + "Ground": 1, + "Ice": 0, + "Normal": 0, + "Poison": 0, + "Psychic": 0, + "Rock": 0, + "Steel": 2, + "Water": 0, + }, + HPivs: {"spa": 30}, + HPdvs: {"atk": 14}, + }, + "Fairy": { + damageTaken: { + "Bug": 0, + "Dark": 2, + "Dragon": 3, + "Electric": 0, + "Fairy": 0, + "Fighting": 2, + "Fire": 0, + "Flying": 0, + "Ghost": 0, + "Grass": 0, + "Ground": 0, + "Ice": 0, + "Normal": 0, + "Poison": 1, + "Psychic": 0, + "Rock": 0, + "Steel": 1, + "Water": 0, + }, + }, + "Fighting": { + damageTaken: { + "Bug": 2, + "Dark": 2, + "Dragon": 0, + "Electric": 0, + "Fairy": 1, + "Fighting": 0, + "Fire": 0, + "Flying": 1, + "Ghost": 0, + "Grass": 0, + "Ground": 0, + "Ice": 0, + "Normal": 0, + "Poison": 0, + "Psychic": 1, + "Rock": 2, + "Steel": 0, + "Water": 0, + }, + HPivs: {"def": 30, "spa": 30, "spd": 30, "spe": 30}, + HPdvs: {"atk": 12, "def": 12}, + }, + "Fire": { + damageTaken: { + brn: 3, + hail: 3, + "Bug": 2, + "Dark": 0, + "Dragon": 0, + "Electric": 0, + "Fairy": 2, + "Fighting": 0, + "Fire": 2, + "Flying": 0, + "Ghost": 0, + "Grass": 2, + "Ground": 1, + "Ice": 2, + "Normal": 0, + "Poison": 0, + "Psychic": 0, + "Rock": 1, + "Steel": 2, + "Water": 1, + }, + HPivs: {"atk": 30, "spa": 30, "spe": 30}, + HPdvs: {"atk": 14, "def": 12}, + }, + "Flying": { + damageTaken: { + "Bug": 2, + "Dark": 0, + "Dragon": 0, + "Electric": 1, + "Fairy": 0, + "Fighting": 2, + "Fire": 0, + "Flying": 0, + "Ghost": 0, + "Grass": 2, + "Ground": 3, + "Ice": 1, + "Normal": 0, + "Poison": 0, + "Psychic": 0, + "Rock": 1, + "Steel": 0, + "Water": 0, + }, + HPivs: {"hp": 30, "atk": 30, "def": 30, "spa": 30, "spd": 30}, + HPdvs: {"atk": 12, "def": 13}, + }, + "Ghost": { + damageTaken: { + trapped: 3, + "Bug": 2, + "Dark": 1, + "Dragon": 0, + "Electric": 0, + "Fairy": 0, + "Fighting": 3, + "Fire": 0, + "Flying": 0, + "Ghost": 1, + "Grass": 0, + "Ground": 0, + "Ice": 0, + "Normal": 3, + "Poison": 2, + "Psychic": 0, + "Rock": 0, + "Steel": 0, + "Water": 0, + }, + HPivs: {"def": 30, "spd": 30}, + HPdvs: {"atk": 13, "def": 14}, + }, + "Grass": { + damageTaken: { + powder: 3, + "Bug": 1, + "Dark": 0, + "Dragon": 0, + "Electric": 2, + "Fairy": 0, + "Fighting": 0, + "Fire": 1, + "Flying": 1, + "Ghost": 0, + "Grass": 2, + "Ground": 2, + "Ice": 1, + "Normal": 0, + "Poison": 1, + "Psychic": 0, + "Rock": 0, + "Steel": 0, + "Water": 2, + }, + HPivs: {"atk": 30, "spa": 30}, + HPdvs: {"atk": 14, "def": 14}, + }, + "Ground": { + damageTaken: { + sandstorm: 3, + "Bug": 0, + "Dark": 0, + "Dragon": 0, + "Electric": 3, + "Fairy": 0, + "Fighting": 0, + "Fire": 0, + "Flying": 0, + "Ghost": 0, + "Grass": 1, + "Ground": 0, + "Ice": 1, + "Normal": 0, + "Poison": 2, + "Psychic": 0, + "Rock": 2, + "Steel": 0, + "Water": 1, + }, + HPivs: {"spa": 30, "spd": 30}, + HPdvs: {"atk": 12}, + }, + "Ice": { + damageTaken: { + hail: 3, + frz: 3, + "Bug": 0, + "Dark": 0, + "Dragon": 0, + "Electric": 0, + "Fairy": 0, + "Fighting": 1, + "Fire": 1, + "Flying": 2, + "Ghost": 0, + "Grass": 0, + "Ground": 2, + "Ice": 2, + "Normal": 0, + "Poison": 0, + "Psychic": 0, + "Rock": 1, + "Steel": 1, + "Water": 2, + }, + HPivs: {"atk": 30, "def": 30}, + HPdvs: {"def": 13}, + }, + "Normal": { + damageTaken: { + "Bug": 0, + "Dark": 0, + "Dragon": 0, + "Electric": 0, + "Fairy": 0, + "Fighting": 1, + "Fire": 0, + "Flying": 0, + "Ghost": 3, + "Grass": 0, + "Ground": 0, + "Ice": 0, + "Normal": 0, + "Poison": 0, + "Psychic": 0, + "Rock": 0, + "Steel": 0, + "Water": 0, + }, + }, + "Poison": { + damageTaken: { + psn: 3, + tox: 3, + "Bug": 2, + "Dark": 0, + "Dragon": 0, + "Electric": 0, + "Fairy": 2, + "Fighting": 2, + "Fire": 0, + "Flying": 0, + "Ghost": 0, + "Grass": 2, + "Ground": 1, + "Ice": 0, + "Normal": 0, + "Poison": 2, + "Psychic": 1, + "Rock": 0, + "Steel": 0, + "Water": 0, + }, + HPivs: {"def": 30, "spa": 30, "spd": 30}, + HPdvs: {"atk": 12, "def": 14}, + }, + "Psychic": { + damageTaken: { + "Bug": 1, + "Dark": 1, + "Dragon": 0, + "Electric": 0, + "Fairy": 0, + "Fighting": 2, + "Fire": 0, + "Flying": 0, + "Ghost": 1, + "Grass": 0, + "Ground": 0, + "Ice": 0, + "Normal": 0, + "Poison": 0, + "Psychic": 2, + "Rock": 0, + "Steel": 0, + "Water": 0, + }, + HPivs: {"atk": 30, "spe": 30}, + HPdvs: {"def": 12}, + }, + "Rock": { + damageTaken: { + sandstorm: 3, + "Bug": 0, + "Dark": 0, + "Dragon": 0, + "Electric": 0, + "Fairy": 0, + "Fighting": 1, + "Fire": 2, + "Flying": 2, + "Ghost": 0, + "Grass": 1, + "Ground": 1, + "Ice": 0, + "Normal": 2, + "Poison": 2, + "Psychic": 0, + "Rock": 0, + "Steel": 1, + "Water": 1, + }, + HPivs: {"def": 30, "spd": 30, "spe": 30}, + HPdvs: {"atk": 13, "def": 12}, + }, + "Steel": { + damageTaken: { + psn: 3, + tox: 3, + sandstorm: 3, + "Bug": 2, + "Dark": 0, + "Dragon": 2, + "Electric": 0, + "Fairy": 2, + "Fighting": 1, + "Fire": 1, + "Flying": 2, + "Ghost": 0, + "Grass": 2, + "Ground": 1, + "Ice": 2, + "Normal": 2, + "Poison": 3, + "Psychic": 2, + "Rock": 2, + "Steel": 2, + "Water": 0, + }, + HPivs: {"spd": 30}, + HPdvs: {"atk": 13}, + }, + "Water": { + damageTaken: { + hail: 3, + "Bug": 0, + "Dark": 0, + "Dragon": 0, + "Electric": 1, + "Fairy": 0, + "Fighting": 0, + "Fire": 2, + "Flying": 0, + "Ghost": 0, + "Grass": 1, + "Ground": 0, + "Ice": 2, + "Normal": 0, + "Poison": 0, + "Psychic": 0, + "Rock": 0, + "Steel": 2, + "Water": 2, + }, + HPivs: {"atk": 30, "def": 30, "spa": 30}, + HPdvs: {"atk": 14, "def": 13}, + }, +};