export const Rulesets: {[k: string]: ModdedFormatData} = { standard: { effectType: 'ValidatorRule', name: 'Standard', ruleset: ['Obtainable', 'Desync Clause Mod', 'Sleep Clause Mod', 'Freeze Clause Mod', 'Species Clause', 'OHKO Clause', 'Evasion Moves Clause', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod'], banlist: ['Dig', 'Fly'], }, nintendocup1997movelegality: { effectType: 'ValidatorRule', name: 'Nintendo Cup 1997 Move Legality', desc: "Bans move combinations on Pok\u00e9mon that would only be obtainable in Pok\u00e9mon Yellow.", onValidateSet(set) { const rgb97Legality: {[speciesid: string]: {[moveid: string]: 'illegal' | number}} = { charizard: {fly: 'illegal'}, butterfree: { confusion: 12, poisonpowder: 15, stunspore: 16, sleeppowder: 17, supersonic: 21, psybeam: 34, flash: 'illegal', gust: 'illegal', }, fearow: {payday: 'illegal'}, pikachu: {quickattack: 16, tailwhip: 'illegal', slam: 'illegal', lightscreen: 'illegal'}, raichu: {quickattack: 16, tailwhip: 'illegal', slam: 'illegal', lightscreen: 'illegal'}, nidoranf: {doublekick: 43}, nidorina: {doublekick: 43}, nidoqueen: {doublekick: 43}, nidoranm: {doublekick: 43}, nidorino: {doublekick: 43}, nidoking: {doublekick: 43}, venonat: {poisonpowder: 24, supersonic: 'illegal', confusion: 'illegal'}, venomoth: {poisonpowder: 24, supersonic: 'illegal'}, diglett: {cut: 'illegal'}, dugtrio: {cut: 'illegal'}, psyduck: {amnesia: 'illegal'}, golduck: {amnesia: 'illegal'}, mankey: {lowkick: 'illegal', screech: 'illegal'}, primeape: {lowkick: 'illegal', screech: 'illegal'}, kadabra: {kinesis: 'illegal'}, alakazam: {kinesis: 'illegal'}, rapidash: {payday: 'illegal'}, cubone: {tailwhip: 'illegal', headbutt: 'illegal'}, marowak: {tailwhip: 'illegal', headbutt: 'illegal'}, chansey: {tailwhip: 'illegal'}, tangela: {absorb: 29, growth: 49, vinewhip: 'illegal'}, scyther: {wingattack: 'illegal'}, pinsir: {bind: 'illegal'}, magikarp: {dragonrage: 'illegal'}, eevee: {quickattack: 27, tailwhip: 31, bite: 37, growl: 'illegal', focusenergy: 'illegal'}, vaporeon: { quickattack: 27, tailwhip: 31, watergun: 31, bite: 37, acidarmor: 42, haze: 44, mist: 48, hydropump: 54, growl: 'illegal', focusenergy: 'illegal', aurorabeam: 'illegal', }, jolteon: { quickattack: 27, tailwhip: 31, thundershock: 31, bite: 37, doublekick: 42, agility: 44, pinmissile: 48, growl: 'illegal', focusenergy: 'illegal', }, flareon: { quickattack: 27, tailwhip: 31, ember: 31, bite: 37, leer: 42, firespin: 44, flamethrower: 54, growl: 'illegal', focusenergy: 'illegal', smog: 'illegal', }, }; const species = this.dex.species.get(set.species || set.name); const legalityList = rgb97Legality[species.id]; if (!legalityList) return; const problems = []; if (set.moves) { for (const moveid of set.moves.map(this.toID)) { if (legalityList[moveid]) { if (legalityList[moveid] === 'illegal') { problems.push(`${set.species} can't learn ${this.dex.moves.get(moveid).name} in 1997.`); } else if (set.level < legalityList[moveid]) { problems.push(`${set.species} can't learn ${this.dex.moves.get(moveid).name} before level ${legalityList[moveid]} in 1997.`); } } } } return problems; }, }, };