mirror of
https://github.com/smogon/pokemon-showdown.git
synced 2026-03-21 17:25:10 -05:00
Bio Mech Mons: Fix duped item exploit
This commit is contained in:
parent
1a18b3dd55
commit
acdbd55ee5
|
|
@ -546,12 +546,12 @@ export const Formats: import('../sim/dex-formats').FormatList = [
|
|||
// searchShow: false,
|
||||
ruleset: ['Standard OMs', 'Sleep Moves Clause'],
|
||||
banlist: [
|
||||
'Annihilape', 'Arceus', 'Archaludon', 'Baxcalibur', 'Calyrex-Ice', 'Calyrex-Shadow', 'Chien-Pao', 'Chi-Yu', 'Deoxys-Normal', 'Deoxys-Attack', 'Dialga', 'Dialga-Origin',
|
||||
'Espathra', 'Eternatus', 'Flutter Mane', 'Giratina', 'Giratina-Origin', 'Gouging Fire', 'Groudon', 'Ho-Oh', 'Iron Bundle', 'Koraidon', 'Kyogre', 'Kyurem-Black', 'Kyurem-White',
|
||||
'Landorus-Incarnate', 'Lugia', 'Lunala', 'Magearna', 'Mewtwo', 'Miraidon', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Ogerpon-Hearthflame', 'Palafin', 'Palkia', 'Palkia-Origin',
|
||||
'Rayquaza', 'Regieleki', 'Regigigas', 'Reshiram', 'Roaring Moon', 'Slaking', 'Shaymin-Sky', 'Sneasler', 'Solgaleo', 'Spectrier', 'Terapagos', 'Ursaluna-Bloodmoon', 'Urshifu',
|
||||
'Urshifu-Rapid-Strike', 'Volcarona', 'Zacian', 'Zacian-Crowned', 'Zamazenta-Crowned', 'Zekrom', 'Arena Trap', 'Moody', 'Sand Veil', 'Shadow Tag', 'Snow Cloak', 'Bright Powder',
|
||||
'Choice Band', 'Choice Specs', 'King\'s Rock', 'Razor Fang', 'Baton Pass', 'Last Respects', 'Shed Tail',
|
||||
'Annihilape', 'Arceus', 'Archaludon', 'Baxcalibur', 'Calyrex-Ice', 'Calyrex-Shadow', 'Chien-Pao', 'Chi-Yu', 'Deoxys-Normal', 'Deoxys-Attack', 'Dialga', 'Dialga-Origin',
|
||||
'Espathra', 'Eternatus', 'Flutter Mane', 'Giratina', 'Giratina-Origin', 'Gouging Fire', 'Groudon', 'Ho-Oh', 'Iron Bundle', 'Koraidon', 'Kyogre', 'Kyurem-Black', 'Kyurem-White',
|
||||
'Landorus-Incarnate', 'Lugia', 'Lunala', 'Magearna', 'Mewtwo', 'Miraidon', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Ogerpon-Hearthflame', 'Palafin', 'Palkia', 'Palkia-Origin',
|
||||
'Rayquaza', 'Regieleki', 'Regigigas', 'Reshiram', 'Roaring Moon', 'Slaking', 'Shaymin-Sky', 'Sneasler', 'Solgaleo', 'Spectrier', 'Terapagos', 'Ursaluna-Bloodmoon', 'Urshifu',
|
||||
'Urshifu-Rapid-Strike', 'Volcarona', 'Zacian', 'Zacian-Crowned', 'Zamazenta-Crowned', 'Zekrom', 'Arena Trap', 'Moody', 'Sand Veil', 'Shadow Tag', 'Snow Cloak', 'Bright Powder',
|
||||
'Choice Band', 'Choice Specs', 'King\'s Rock', 'Razor Fang', 'Baton Pass', 'Last Respects', 'Shed Tail',
|
||||
],
|
||||
validateSet(set, teamHas) {
|
||||
const dex = this.dex;
|
||||
|
|
@ -605,8 +605,11 @@ export const Formats: import('../sim/dex-formats').FormatList = [
|
|||
}
|
||||
const setHas: { [k: string]: true } = {};
|
||||
for (const thing of allThings) {
|
||||
if (setHas[this.toID(thing)]) return [`${set.species} has multiple copies of ${thing}.`];
|
||||
setHas[this.toID(thing)] = true;
|
||||
let sanitizedThing: Item | Move | Ability = this.dex.items.get(thing);
|
||||
if (!sanitizedThing.exists) sanitizedThing = this.dex.abilities.get(thing);
|
||||
if (!sanitizedThing.exists) sanitizedThing = this.dex.moves.get(thing);
|
||||
if (setHas[sanitizedThing.id]) return [`${set.species} has multiple copies of ${sanitizedThing.name}.`];
|
||||
setHas[sanitizedThing.id] = true;
|
||||
}
|
||||
const normalAbility = set.ability;
|
||||
if (!abilities.length) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user