@pkmn/sim 0.5.9 → 0.5.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -0
- package/build/config/formats.js +364 -296
- package/build/config/formats.js.map +1 -1
- package/build/data/abilities.js +7 -7
- package/build/data/abilities.js.map +1 -1
- package/build/data/aliases.js +3 -0
- package/build/data/aliases.js.map +1 -1
- package/build/data/conditions.js +8 -12
- package/build/data/conditions.js.map +1 -1
- package/build/data/formats-data.js +36 -35
- package/build/data/formats-data.js.map +1 -1
- package/build/data/items.js +1 -1
- package/build/data/items.js.map +1 -1
- package/build/data/learnsets.js +5 -4
- package/build/data/learnsets.js.map +1 -1
- package/build/data/mods/gen1/moves.js +2 -4
- package/build/data/mods/gen1/moves.js.map +1 -1
- package/build/data/mods/gen3/formats-data.js +2 -2
- package/build/data/mods/gen3/formats-data.js.map +1 -1
- package/build/data/mods/gen7/formats-data.js +1 -1
- package/build/data/mods/gen7/formats-data.js.map +1 -1
- package/build/data/moves.js +14 -12
- package/build/data/moves.js.map +1 -1
- package/build/data/pokedex.js +2 -2
- package/build/data/pokedex.js.map +1 -1
- package/build/data/tags.js +4 -4
- package/build/data/tags.js.map +1 -1
- package/build/data/text/moves.js +1 -0
- package/build/data/text/moves.js.map +1 -1
- package/build/lib/index.js +5 -1
- package/build/lib/index.js.map +1 -1
- package/build/lib/streams.js +5 -1
- package/build/lib/streams.js.map +1 -1
- package/build/sim/battle-actions.js +0 -6
- package/build/sim/battle-actions.js.map +1 -1
- package/build/sim/battle-queue.js +1 -3
- package/build/sim/battle-queue.js.map +1 -1
- package/build/sim/battle.js +13 -11
- package/build/sim/battle.js.map +1 -1
- package/build/sim/dex-conditions.js +10 -3
- package/build/sim/dex-conditions.js.map +1 -1
- package/build/sim/dex.js +5 -1
- package/build/sim/dex.js.map +1 -1
- package/build/sim/index.js +5 -1
- package/build/sim/index.js.map +1 -1
- package/build/sim/team-validator.js +1 -1
- package/build/sim/team-validator.js.map +1 -1
- package/build/sim/teams.js +5 -1
- package/build/sim/teams.js.map +1 -1
- package/build/sim/tools/index.js +5 -1
- package/build/sim/tools/index.js.map +1 -1
- package/build/sim/tools/runner.js +5 -1
- package/build/sim/tools/runner.js.map +1 -1
- package/config/formats.ts +350 -280
- package/data/abilities.ts +7 -7
- package/data/aliases.ts +3 -0
- package/data/conditions.ts +8 -10
- package/data/formats-data.ts +36 -35
- package/data/items.ts +1 -1
- package/data/learnsets.ts +5 -4
- package/data/mods/gen1/moves.ts +2 -4
- package/data/mods/gen3/formats-data.ts +2 -2
- package/data/mods/gen7/formats-data.ts +1 -1
- package/data/moves.ts +13 -12
- package/data/pokedex.ts +2 -2
- package/data/tags.ts +4 -4
- package/data/text/moves.ts +2 -0
- package/package.json +2 -2
- package/sim/battle-actions.ts +0 -7
- package/sim/battle-queue.ts +1 -3
- package/sim/battle.ts +4 -1
- package/sim/dex-conditions.ts +9 -3
- package/sim/team-validator.ts +1 -1
package/data/abilities.ts
CHANGED
|
@@ -615,7 +615,7 @@ export const Abilities: {[abilityid: string]: AbilityData} = {
|
|
|
615
615
|
}
|
|
616
616
|
},
|
|
617
617
|
onAnyDamage(damage, target, source, effect) {
|
|
618
|
-
if (effect && effect.
|
|
618
|
+
if (effect && effect.name === 'Aftermath') {
|
|
619
619
|
return false;
|
|
620
620
|
}
|
|
621
621
|
},
|
|
@@ -1695,7 +1695,7 @@ export const Abilities: {[abilityid: string]: AbilityData} = {
|
|
|
1695
1695
|
if (status.id === 'flinch') return null;
|
|
1696
1696
|
},
|
|
1697
1697
|
onBoost(boost, target, source, effect) {
|
|
1698
|
-
if (effect.
|
|
1698
|
+
if (effect.name === 'Intimidate') {
|
|
1699
1699
|
delete boost.atk;
|
|
1700
1700
|
this.add('-fail', target, 'unboost', 'Attack', '[from] ability: Inner Focus', '[of] ' + target);
|
|
1701
1701
|
}
|
|
@@ -2124,7 +2124,7 @@ export const Abilities: {[abilityid: string]: AbilityData} = {
|
|
|
2124
2124
|
mirrorarmor: {
|
|
2125
2125
|
onBoost(boost, target, source, effect) {
|
|
2126
2126
|
// Don't bounce self stat changes, or boosts that have already bounced
|
|
2127
|
-
if (target === source || !boost || effect.
|
|
2127
|
+
if (target === source || !boost || effect.name === 'Mirror Armor') return;
|
|
2128
2128
|
let b: BoostID;
|
|
2129
2129
|
for (b in boost) {
|
|
2130
2130
|
if (boost[b]! < 0) {
|
|
@@ -2451,7 +2451,7 @@ export const Abilities: {[abilityid: string]: AbilityData} = {
|
|
|
2451
2451
|
}
|
|
2452
2452
|
},
|
|
2453
2453
|
onBoost(boost, target, source, effect) {
|
|
2454
|
-
if (effect.
|
|
2454
|
+
if (effect.name === 'Intimidate') {
|
|
2455
2455
|
delete boost.atk;
|
|
2456
2456
|
this.add('-fail', target, 'unboost', 'Attack', '[from] ability: Oblivious', '[of] ' + target);
|
|
2457
2457
|
}
|
|
@@ -2512,7 +2512,7 @@ export const Abilities: {[abilityid: string]: AbilityData} = {
|
|
|
2512
2512
|
}
|
|
2513
2513
|
},
|
|
2514
2514
|
onBoost(boost, target, source, effect) {
|
|
2515
|
-
if (effect.
|
|
2515
|
+
if (effect.name === 'Intimidate') {
|
|
2516
2516
|
delete boost.atk;
|
|
2517
2517
|
this.add('-fail', target, 'unboost', 'Attack', '[from] ability: Own Tempo', '[of] ' + target);
|
|
2518
2518
|
}
|
|
@@ -3002,7 +3002,7 @@ export const Abilities: {[abilityid: string]: AbilityData} = {
|
|
|
3002
3002
|
ripen: {
|
|
3003
3003
|
onTryHeal(damage, target, source, effect) {
|
|
3004
3004
|
if (!effect) return;
|
|
3005
|
-
if (effect.
|
|
3005
|
+
if (effect.name === 'Berry Juice' || effect.name === 'Leftovers') {
|
|
3006
3006
|
this.add('-activate', target, 'ability: Ripen');
|
|
3007
3007
|
}
|
|
3008
3008
|
if ((effect as Item).isBerry) return this.chainModify(2);
|
|
@@ -3218,7 +3218,7 @@ export const Abilities: {[abilityid: string]: AbilityData} = {
|
|
|
3218
3218
|
}
|
|
3219
3219
|
},
|
|
3220
3220
|
onBoost(boost, target, source, effect) {
|
|
3221
|
-
if (effect.
|
|
3221
|
+
if (effect.name === 'Intimidate') {
|
|
3222
3222
|
delete boost.atk;
|
|
3223
3223
|
this.add('-fail', target, 'unboost', 'Attack', '[from] ability: Scrappy', '[of] ' + target);
|
|
3224
3224
|
}
|
package/data/aliases.ts
CHANGED
|
@@ -67,6 +67,9 @@ export const Aliases: {[alias: string]: string} = {
|
|
|
67
67
|
gen6mono: "[Gen 6] Monotype",
|
|
68
68
|
gen6ag: "[Gen 6] Anything Goes",
|
|
69
69
|
crossevo: "[Gen 8] Cross Evolution",
|
|
70
|
+
mayhem: "[Gen 8] Random Battle Mayhem",
|
|
71
|
+
omotm: "[Gen 8] Sketchmons",
|
|
72
|
+
lcotm: "[Gen 8] Flipped",
|
|
70
73
|
|
|
71
74
|
// mega evos
|
|
72
75
|
fabio: "Ampharos-Mega",
|
package/data/conditions.ts
CHANGED
|
@@ -478,7 +478,7 @@ export const Conditions: {[k: string]: ConditionData} = {
|
|
|
478
478
|
onFieldStart(field, source, effect) {
|
|
479
479
|
if (effect?.effectType === 'Ability') {
|
|
480
480
|
if (this.gen <= 5) this.effectState.duration = 0;
|
|
481
|
-
this.add('-weather', 'RainDance', '[from] ability: ' + effect, '[of] ' + source);
|
|
481
|
+
this.add('-weather', 'RainDance', '[from] ability: ' + effect.name, '[of] ' + source);
|
|
482
482
|
} else {
|
|
483
483
|
this.add('-weather', 'RainDance');
|
|
484
484
|
}
|
|
@@ -513,7 +513,7 @@ export const Conditions: {[k: string]: ConditionData} = {
|
|
|
513
513
|
}
|
|
514
514
|
},
|
|
515
515
|
onFieldStart(field, source, effect) {
|
|
516
|
-
this.add('-weather', 'PrimordialSea', '[from] ability: ' + effect, '[of] ' + source);
|
|
516
|
+
this.add('-weather', 'PrimordialSea', '[from] ability: ' + effect.name, '[of] ' + source);
|
|
517
517
|
},
|
|
518
518
|
onFieldResidualOrder: 1,
|
|
519
519
|
onFieldResidual() {
|
|
@@ -548,7 +548,7 @@ export const Conditions: {[k: string]: ConditionData} = {
|
|
|
548
548
|
onFieldStart(battle, source, effect) {
|
|
549
549
|
if (effect?.effectType === 'Ability') {
|
|
550
550
|
if (this.gen <= 5) this.effectState.duration = 0;
|
|
551
|
-
this.add('-weather', 'SunnyDay', '[from] ability: ' + effect, '[of] ' + source);
|
|
551
|
+
this.add('-weather', 'SunnyDay', '[from] ability: ' + effect.name, '[of] ' + source);
|
|
552
552
|
} else {
|
|
553
553
|
this.add('-weather', 'SunnyDay');
|
|
554
554
|
}
|
|
@@ -587,7 +587,7 @@ export const Conditions: {[k: string]: ConditionData} = {
|
|
|
587
587
|
}
|
|
588
588
|
},
|
|
589
589
|
onFieldStart(field, source, effect) {
|
|
590
|
-
this.add('-weather', 'DesolateLand', '[from] ability: ' + effect, '[of] ' + source);
|
|
590
|
+
this.add('-weather', 'DesolateLand', '[from] ability: ' + effect.name, '[of] ' + source);
|
|
591
591
|
},
|
|
592
592
|
onImmunity(type, pokemon) {
|
|
593
593
|
if (pokemon.hasItem('utilityumbrella')) return;
|
|
@@ -623,7 +623,7 @@ export const Conditions: {[k: string]: ConditionData} = {
|
|
|
623
623
|
onFieldStart(field, source, effect) {
|
|
624
624
|
if (effect?.effectType === 'Ability') {
|
|
625
625
|
if (this.gen <= 5) this.effectState.duration = 0;
|
|
626
|
-
this.add('-weather', 'Sandstorm', '[from] ability: ' + effect, '[of] ' + source);
|
|
626
|
+
this.add('-weather', 'Sandstorm', '[from] ability: ' + effect.name, '[of] ' + source);
|
|
627
627
|
} else {
|
|
628
628
|
this.add('-weather', 'Sandstorm');
|
|
629
629
|
}
|
|
@@ -653,7 +653,7 @@ export const Conditions: {[k: string]: ConditionData} = {
|
|
|
653
653
|
onFieldStart(field, source, effect) {
|
|
654
654
|
if (effect?.effectType === 'Ability') {
|
|
655
655
|
if (this.gen <= 5) this.effectState.duration = 0;
|
|
656
|
-
this.add('-weather', 'Hail', '[from] ability: ' + effect, '[of] ' + source);
|
|
656
|
+
this.add('-weather', 'Hail', '[from] ability: ' + effect.name, '[of] ' + source);
|
|
657
657
|
} else {
|
|
658
658
|
this.add('-weather', 'Hail');
|
|
659
659
|
}
|
|
@@ -682,7 +682,7 @@ export const Conditions: {[k: string]: ConditionData} = {
|
|
|
682
682
|
}
|
|
683
683
|
},
|
|
684
684
|
onFieldStart(field, source, effect) {
|
|
685
|
-
this.add('-weather', 'DeltaStream', '[from] ability: ' + effect, '[of] ' + source);
|
|
685
|
+
this.add('-weather', 'DeltaStream', '[from] ability: ' + effect.name, '[of] ' + source);
|
|
686
686
|
},
|
|
687
687
|
onFieldResidualOrder: 1,
|
|
688
688
|
onFieldResidual() {
|
|
@@ -708,8 +708,7 @@ export const Conditions: {[k: string]: ConditionData} = {
|
|
|
708
708
|
if (['cramorantgulping', 'cramorantgorging'].includes(pokemon.species.id) && !pokemon.transformed) {
|
|
709
709
|
pokemon.formeChange('cramorant');
|
|
710
710
|
}
|
|
711
|
-
this.add('-start', pokemon, 'Dynamax');
|
|
712
|
-
if (pokemon.gigantamax) this.add('-formechange', pokemon, pokemon.species.name + '-Gmax');
|
|
711
|
+
this.add('-start', pokemon, 'Dynamax', pokemon.gigantamax ? 'Gmax' : '');
|
|
713
712
|
if (pokemon.baseSpecies.name === 'Shedinja') return;
|
|
714
713
|
|
|
715
714
|
// Changes based on dynamax level, 2 is max (at LVL 10)
|
|
@@ -739,7 +738,6 @@ export const Conditions: {[k: string]: ConditionData} = {
|
|
|
739
738
|
onResidualPriority: -100,
|
|
740
739
|
onEnd(pokemon) {
|
|
741
740
|
this.add('-end', pokemon, 'Dynamax');
|
|
742
|
-
if (pokemon.gigantamax) this.add('-formechange', pokemon, pokemon.species.name);
|
|
743
741
|
if (pokemon.baseSpecies.name === 'Shedinja') return;
|
|
744
742
|
pokemon.hp = pokemon.getUndynamaxedHP();
|
|
745
743
|
pokemon.maxhp = pokemon.baseMaxhp;
|
package/data/formats-data.ts
CHANGED
|
@@ -64,7 +64,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
64
64
|
randomDoubleBattleMoves: ["icebeam", "muddywater", "protect", "shellsmash"],
|
|
65
65
|
randomDoubleBattleLevel: 80,
|
|
66
66
|
tier: "NU",
|
|
67
|
-
doublesTier: "
|
|
67
|
+
doublesTier: "DUU",
|
|
68
68
|
},
|
|
69
69
|
blastoisemega: {
|
|
70
70
|
isNonstandard: "Past",
|
|
@@ -479,7 +479,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
479
479
|
randomBattleLevel: 86,
|
|
480
480
|
randomDoubleBattleMoves: ["closecombat", "fakeout", "ironhead", "lashout", "protect", "uturn"],
|
|
481
481
|
randomDoubleBattleLevel: 88,
|
|
482
|
-
tier: "
|
|
482
|
+
tier: "PU",
|
|
483
483
|
doublesTier: "(DUU)",
|
|
484
484
|
},
|
|
485
485
|
psyduck: {
|
|
@@ -491,7 +491,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
491
491
|
randomDoubleBattleMoves: ["calmmind", "encore", "icebeam", "muddywater", "protect"],
|
|
492
492
|
randomDoubleBattleLevel: 88,
|
|
493
493
|
tier: "(PU)",
|
|
494
|
-
doublesTier: "DUU",
|
|
494
|
+
doublesTier: "(DUU)",
|
|
495
495
|
},
|
|
496
496
|
mankey: {
|
|
497
497
|
isNonstandard: "Past",
|
|
@@ -571,7 +571,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
571
571
|
randomBattleLevel: 82,
|
|
572
572
|
randomDoubleBattleMoves: ["bulletpunch", "closecombat", "facade", "knockoff", "protect"],
|
|
573
573
|
randomDoubleBattleLevel: 88,
|
|
574
|
-
tier: "
|
|
574
|
+
tier: "NU",
|
|
575
575
|
doublesTier: "(DUU)",
|
|
576
576
|
},
|
|
577
577
|
machampgmax: {
|
|
@@ -694,7 +694,8 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
694
694
|
tier: "LC",
|
|
695
695
|
},
|
|
696
696
|
magneton: {
|
|
697
|
-
tier: "
|
|
697
|
+
tier: "PU",
|
|
698
|
+
doublesTier: "NFE",
|
|
698
699
|
},
|
|
699
700
|
magnezone: {
|
|
700
701
|
randomBattleMoves: ["bodypress", "flashcannon", "mirrorcoat", "thunderbolt", "voltswitch"],
|
|
@@ -917,7 +918,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
917
918
|
randomBattleLevel: 85,
|
|
918
919
|
randomDoubleBattleMoves: ["closecombat", "coaching", "fakeout", "helpinghand", "rapidspin", "suckerpunch", "tripleaxel"],
|
|
919
920
|
randomDoubleBattleLevel: 88,
|
|
920
|
-
tier: "
|
|
921
|
+
tier: "NU",
|
|
921
922
|
doublesTier: "DUU",
|
|
922
923
|
},
|
|
923
924
|
lickitung: {
|
|
@@ -1083,7 +1084,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
1083
1084
|
randomDoubleBattleMoves: ["bugbite", "bulletpunch", "dualwingbeat", "feint", "protect", "superpower", "swordsdance", "uturn"],
|
|
1084
1085
|
randomDoubleBattleLevel: 80,
|
|
1085
1086
|
randomBattleNoDynamaxMoves: ["bulletpunch", "knockoff", "roost", "superpower", "swordsdance", "uturn"],
|
|
1086
|
-
tier: "
|
|
1087
|
+
tier: "UU",
|
|
1087
1088
|
doublesTier: "DUU",
|
|
1088
1089
|
},
|
|
1089
1090
|
scizormega: {
|
|
@@ -1211,7 +1212,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
1211
1212
|
randomDoubleBattleMoves: ["faketears", "protect", "shadowball", "thunderbolt", "thunderwave"],
|
|
1212
1213
|
randomDoubleBattleLevel: 86,
|
|
1213
1214
|
tier: "PU",
|
|
1214
|
-
doublesTier: "
|
|
1215
|
+
doublesTier: "DUU",
|
|
1215
1216
|
},
|
|
1216
1217
|
flareon: {
|
|
1217
1218
|
randomBattleMoves: ["facade", "flamecharge", "flareblitz", "quickattack", "superpower"],
|
|
@@ -1226,7 +1227,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
1226
1227
|
randomBattleLevel: 82,
|
|
1227
1228
|
randomDoubleBattleMoves: ["calmmind", "dazzlinggleam", "morningsun", "protect", "psychic", "shadowball"],
|
|
1228
1229
|
randomDoubleBattleLevel: 84,
|
|
1229
|
-
tier: "
|
|
1230
|
+
tier: "PUBL",
|
|
1230
1231
|
doublesTier: "(DUU)",
|
|
1231
1232
|
},
|
|
1232
1233
|
umbreon: {
|
|
@@ -1259,7 +1260,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
1259
1260
|
randomDoubleBattleMoves: ["calmmind", "hypervoice", "mysticalfire", "protect", "psyshock"],
|
|
1260
1261
|
randomDoubleBattleLevel: 80,
|
|
1261
1262
|
tier: "NU",
|
|
1262
|
-
doublesTier: "
|
|
1263
|
+
doublesTier: "DUU",
|
|
1263
1264
|
},
|
|
1264
1265
|
porygon: {
|
|
1265
1266
|
tier: "LC",
|
|
@@ -1364,7 +1365,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
1364
1365
|
randomDoubleBattleMoves: ["bravebird", "bulkup", "closecombat", "throatchop", "thunderouskick", "uturn"],
|
|
1365
1366
|
randomDoubleBattleLevel: 76,
|
|
1366
1367
|
tier: "OU",
|
|
1367
|
-
doublesTier: "
|
|
1368
|
+
doublesTier: "DUU",
|
|
1368
1369
|
},
|
|
1369
1370
|
moltres: {
|
|
1370
1371
|
randomBattleMoves: ["airslash", "defog", "fireblast", "roost", "uturn"],
|
|
@@ -1564,7 +1565,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
1564
1565
|
randomDoubleBattleMoves: ["aquajet", "knockoff", "liquidation", "playrough", "protect"],
|
|
1565
1566
|
randomDoubleBattleLevel: 87,
|
|
1566
1567
|
tier: "UU",
|
|
1567
|
-
doublesTier: "DUU",
|
|
1568
|
+
doublesTier: "(DUU)",
|
|
1568
1569
|
},
|
|
1569
1570
|
bonsly: {
|
|
1570
1571
|
tier: "LC",
|
|
@@ -2352,7 +2353,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
2352
2353
|
randomBattleLevel: 86,
|
|
2353
2354
|
randomDoubleBattleMoves: ["bodypress", "earthpower", "fireblast", "heatwave", "protect", "solarbeam", "willowisp"],
|
|
2354
2355
|
randomDoubleBattleLevel: 84,
|
|
2355
|
-
tier: "
|
|
2356
|
+
tier: "UU",
|
|
2356
2357
|
doublesTier: "DOU",
|
|
2357
2358
|
},
|
|
2358
2359
|
spoink: {
|
|
@@ -2493,7 +2494,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
2493
2494
|
randomDoubleBattleMoves: ["coil", "hypnosis", "muddywater", "recover"],
|
|
2494
2495
|
randomDoubleBattleLevel: 80,
|
|
2495
2496
|
tier: "RU",
|
|
2496
|
-
doublesTier: "
|
|
2497
|
+
doublesTier: "DOU",
|
|
2497
2498
|
},
|
|
2498
2499
|
castform: {
|
|
2499
2500
|
isNonstandard: "Past",
|
|
@@ -2584,7 +2585,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
2584
2585
|
randomBattleLevel: 84,
|
|
2585
2586
|
randomDoubleBattleMoves: ["destinybond", "icebeam", "icywind", "protect", "shadowball", "willowisp"],
|
|
2586
2587
|
randomDoubleBattleLevel: 88,
|
|
2587
|
-
tier: "PU",
|
|
2588
|
+
tier: "(PU)",
|
|
2588
2589
|
doublesTier: "(DUU)",
|
|
2589
2590
|
},
|
|
2590
2591
|
spheal: {
|
|
@@ -2932,7 +2933,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
2932
2933
|
randomDoubleBattleMoves: ["clearsmog", "earthpower", "icywind", "protect", "recover", "scald", "yawn"],
|
|
2933
2934
|
randomDoubleBattleLevel: 80,
|
|
2934
2935
|
tier: "RU",
|
|
2935
|
-
doublesTier: "
|
|
2936
|
+
doublesTier: "DOU",
|
|
2936
2937
|
},
|
|
2937
2938
|
drifloon: {
|
|
2938
2939
|
tier: "NFE",
|
|
@@ -3043,7 +3044,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
3043
3044
|
randomBattleLevel: 80,
|
|
3044
3045
|
randomDoubleBattleMoves: ["highhorsepower", "protect", "rockslide", "slackoff", "stealthrock", "whirlwind", "yawn"],
|
|
3045
3046
|
randomDoubleBattleLevel: 88,
|
|
3046
|
-
tier: "
|
|
3047
|
+
tier: "UU",
|
|
3047
3048
|
doublesTier: "(DUU)",
|
|
3048
3049
|
},
|
|
3049
3050
|
skorupi: {
|
|
@@ -3205,7 +3206,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
3205
3206
|
randomDoubleBattleMoves: ["bodyslam", "knockoff", "protect", "thunderwave"],
|
|
3206
3207
|
randomDoubleBattleLevel: 86,
|
|
3207
3208
|
tier: "(PU)",
|
|
3208
|
-
doublesTier: "DUU",
|
|
3209
|
+
doublesTier: "(DUU)",
|
|
3209
3210
|
},
|
|
3210
3211
|
giratina: {
|
|
3211
3212
|
randomBattleMoves: ["hex", "rest", "sleeptalk", "toxic", "willowisp"],
|
|
@@ -3637,7 +3638,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
3637
3638
|
randomBattleLevel: 80,
|
|
3638
3639
|
randomDoubleBattleMoves: ["earthquake", "flareblitz", "rockslide", "superpower", "uturn"],
|
|
3639
3640
|
randomDoubleBattleLevel: 82,
|
|
3640
|
-
tier: "
|
|
3641
|
+
tier: "UU",
|
|
3641
3642
|
doublesTier: "(DUU)",
|
|
3642
3643
|
},
|
|
3643
3644
|
darmanitangalar: {
|
|
@@ -3738,7 +3739,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
3738
3739
|
tier: "LC",
|
|
3739
3740
|
},
|
|
3740
3741
|
garbodor: {
|
|
3741
|
-
tier: "
|
|
3742
|
+
tier: "PU",
|
|
3742
3743
|
doublesTier: "(DUU)",
|
|
3743
3744
|
},
|
|
3744
3745
|
garbodorgmax: {
|
|
@@ -3775,7 +3776,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
3775
3776
|
randomBattleLevel: 84,
|
|
3776
3777
|
randomDoubleBattleMoves: ["bulletseed", "knockoff", "protect", "rockblast", "tailslap", "tripleaxel", "uturn"],
|
|
3777
3778
|
randomDoubleBattleLevel: 86,
|
|
3778
|
-
tier: "
|
|
3779
|
+
tier: "PU",
|
|
3779
3780
|
doublesTier: "(DUU)",
|
|
3780
3781
|
},
|
|
3781
3782
|
gothita: {
|
|
@@ -4137,7 +4138,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
4137
4138
|
randomBattleLevel: 78,
|
|
4138
4139
|
randomDoubleBattleMoves: ["closecombat", "ironhead", "protect", "stoneedge", "swordsdance", "thunderwave"],
|
|
4139
4140
|
randomDoubleBattleLevel: 84,
|
|
4140
|
-
tier: "
|
|
4141
|
+
tier: "UU",
|
|
4141
4142
|
doublesTier: "(DUU)",
|
|
4142
4143
|
},
|
|
4143
4144
|
terrakion: {
|
|
@@ -4612,7 +4613,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
4612
4613
|
randomDoubleBattleMoves: ["dazzlinggleam", "foulplay", "spikes", "thunderwave"],
|
|
4613
4614
|
randomDoubleBattleLevel: 84,
|
|
4614
4615
|
tier: "RU",
|
|
4615
|
-
doublesTier: "DUU",
|
|
4616
|
+
doublesTier: "(DUU)",
|
|
4616
4617
|
},
|
|
4617
4618
|
phantump: {
|
|
4618
4619
|
tier: "LC",
|
|
@@ -4708,7 +4709,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
4708
4709
|
tier: "Illegal",
|
|
4709
4710
|
},
|
|
4710
4711
|
yveltal: {
|
|
4711
|
-
randomBattleMoves: ["
|
|
4712
|
+
randomBattleMoves: ["defog", "heatwave", "knockoff", "oblivionwing", "roost", "suckerpunch", "taunt"],
|
|
4712
4713
|
randomBattleLevel: 69,
|
|
4713
4714
|
randomDoubleBattleMoves: ["darkpulse", "heatwave", "knockoff", "oblivionwing", "roost", "suckerpunch", "tailwind", "uturn"],
|
|
4714
4715
|
randomDoubleBattleLevel: 71,
|
|
@@ -4760,7 +4761,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
4760
4761
|
randomBattleLevel: 80,
|
|
4761
4762
|
randomDoubleBattleMoves: ["earthpower", "heatwave", "protect", "sludgebomb", "steameruption"],
|
|
4762
4763
|
randomDoubleBattleLevel: 80,
|
|
4763
|
-
tier: "
|
|
4764
|
+
tier: "OU",
|
|
4764
4765
|
doublesTier: "DOU",
|
|
4765
4766
|
},
|
|
4766
4767
|
rowlet: {
|
|
@@ -4922,7 +4923,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
4922
4923
|
doublesTier: "(DUU)",
|
|
4923
4924
|
},
|
|
4924
4925
|
wishiwashi: {
|
|
4925
|
-
tier: "
|
|
4926
|
+
tier: "PU",
|
|
4926
4927
|
doublesTier: "(DUU)",
|
|
4927
4928
|
},
|
|
4928
4929
|
wishiwashischool: {
|
|
@@ -4962,7 +4963,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
4962
4963
|
randomDoubleBattleMoves: ["leechlife", "liquidation", "lunge", "protect", "stickyweb", "wideguard"],
|
|
4963
4964
|
randomDoubleBattleLevel: 84,
|
|
4964
4965
|
tier: "NU",
|
|
4965
|
-
doublesTier: "
|
|
4966
|
+
doublesTier: "DUU",
|
|
4966
4967
|
},
|
|
4967
4968
|
araquanidtotem: {
|
|
4968
4969
|
isNonstandard: "Past",
|
|
@@ -5039,7 +5040,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
5039
5040
|
randomBattleLevel: 86,
|
|
5040
5041
|
randomDoubleBattleMoves: ["defog", "drainingkiss", "floralhealing", "gigadrain", "helpinghand", "protect"],
|
|
5041
5042
|
randomDoubleBattleLevel: 89,
|
|
5042
|
-
tier: "
|
|
5043
|
+
tier: "PU",
|
|
5043
5044
|
doublesTier: "DUU",
|
|
5044
5045
|
},
|
|
5045
5046
|
oranguru: {
|
|
@@ -5383,7 +5384,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
5383
5384
|
randomDoubleBattleMoves: ["grassknot", "meteorbeam", "protect", "sludgebomb", "thunderbolt"],
|
|
5384
5385
|
randomDoubleBattleLevel: 81,
|
|
5385
5386
|
tier: "UU",
|
|
5386
|
-
doublesTier: "DUU",
|
|
5387
|
+
doublesTier: "(DUU)",
|
|
5387
5388
|
},
|
|
5388
5389
|
buzzwole: {
|
|
5389
5390
|
randomBattleMoves: ["closecombat", "darkestlariat", "dualwingbeat", "ironhead", "leechlife", "stoneedge"],
|
|
@@ -5408,7 +5409,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
5408
5409
|
randomDoubleBattleMoves: ["dazzlinggleam", "energyball", "thunderbolt", "voltswitch"],
|
|
5409
5410
|
randomDoubleBattleLevel: 79,
|
|
5410
5411
|
tier: "RU",
|
|
5411
|
-
doublesTier: "DUU",
|
|
5412
|
+
doublesTier: "(DUU)",
|
|
5412
5413
|
},
|
|
5413
5414
|
celesteela: {
|
|
5414
5415
|
randomBattleMoves: ["airslash", "earthquake", "fireblast", "flashcannon", "leechseed", "protect"],
|
|
@@ -5465,7 +5466,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
5465
5466
|
},
|
|
5466
5467
|
magearna: {
|
|
5467
5468
|
randomBattleMoves: ["agility", "calmmind", "flashcannon", "fleurcannon"],
|
|
5468
|
-
randomBattleLevel:
|
|
5469
|
+
randomBattleLevel: 76,
|
|
5469
5470
|
randomDoubleBattleMoves: ["agility", "aurasphere", "dazzlinggleam", "flashcannon", "fleurcannon", "protect", "trick"],
|
|
5470
5471
|
randomDoubleBattleLevel: 72,
|
|
5471
5472
|
tier: "Uber",
|
|
@@ -5504,7 +5505,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
5504
5505
|
randomBattleLevel: 80,
|
|
5505
5506
|
randomDoubleBattleMoves: ["bodypress", "gyroball", "highhorsepower", "rockslide", "trickroom"],
|
|
5506
5507
|
randomDoubleBattleLevel: 82,
|
|
5507
|
-
tier: "
|
|
5508
|
+
tier: "NU",
|
|
5508
5509
|
doublesTier: "DOU",
|
|
5509
5510
|
},
|
|
5510
5511
|
blacephalon: {
|
|
@@ -5673,7 +5674,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
5673
5674
|
randomBattleLevel: 90,
|
|
5674
5675
|
randomDoubleBattleMoves: ["charm", "energyball", "helpinghand", "pollenpuff", "protect", "sleeppowder"],
|
|
5675
5676
|
randomDoubleBattleLevel: 90,
|
|
5676
|
-
tier: "
|
|
5677
|
+
tier: "PU",
|
|
5677
5678
|
doublesTier: "(DUU)",
|
|
5678
5679
|
},
|
|
5679
5680
|
wooloo: {
|
|
@@ -5897,7 +5898,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
5897
5898
|
grimmsnarl: {
|
|
5898
5899
|
randomBattleMoves: ["lightscreen", "reflect", "spiritbreak", "taunt", "thunderwave"],
|
|
5899
5900
|
randomBattleLevel: 82,
|
|
5900
|
-
tier: "
|
|
5901
|
+
tier: "NU",
|
|
5901
5902
|
doublesTier: "DUU",
|
|
5902
5903
|
},
|
|
5903
5904
|
grimmsnarlgmax: {
|
|
@@ -5949,7 +5950,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
|
|
|
5949
5950
|
randomBattleLevel: 82,
|
|
5950
5951
|
randomDoubleBattleMoves: ["bugbuzz", "gigadrain", "hurricane", "icebeam", "protect", "quiverdance", "wideguard"],
|
|
5951
5952
|
randomDoubleBattleLevel: 88,
|
|
5952
|
-
tier: "
|
|
5953
|
+
tier: "PU",
|
|
5953
5954
|
doublesTier: "(DUU)",
|
|
5954
5955
|
},
|
|
5955
5956
|
stonjourner: {
|
package/data/items.ts
CHANGED
package/data/learnsets.ts
CHANGED
|
@@ -20325,12 +20325,12 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
|
|
|
20325
20325
|
coaching: ["8T"],
|
|
20326
20326
|
counter: ["8L55"],
|
|
20327
20327
|
detect: ["8L60"],
|
|
20328
|
-
drillpeck: ["8L35", "8S0"],
|
|
20328
|
+
drillpeck: ["8L35", "8S0", "8S1"],
|
|
20329
20329
|
dualwingbeat: ["8T"],
|
|
20330
20330
|
endure: ["8M"],
|
|
20331
20331
|
facade: ["8M"],
|
|
20332
20332
|
fly: ["8M"],
|
|
20333
|
-
focusenergy: ["8M", "8L1", "8S0"],
|
|
20333
|
+
focusenergy: ["8M", "8L1", "8S0", "8S1"],
|
|
20334
20334
|
gigaimpact: ["8M"],
|
|
20335
20335
|
hurricane: ["8M"],
|
|
20336
20336
|
hyperbeam: ["8M"],
|
|
@@ -20346,7 +20346,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
|
|
|
20346
20346
|
rest: ["8M"],
|
|
20347
20347
|
retaliate: ["8M"],
|
|
20348
20348
|
revenge: ["8M"],
|
|
20349
|
-
reversal: ["8M", "8L70", "8S0"],
|
|
20349
|
+
reversal: ["8M", "8L70", "8S0", "8S1"],
|
|
20350
20350
|
rocksmash: ["8L5"],
|
|
20351
20351
|
round: ["8M"],
|
|
20352
20352
|
scaryface: ["8M"],
|
|
@@ -20360,11 +20360,12 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
|
|
|
20360
20360
|
swift: ["8M"],
|
|
20361
20361
|
taunt: ["8M"],
|
|
20362
20362
|
throatchop: ["8M"],
|
|
20363
|
-
thunderouskick: ["8L45", "8S0"],
|
|
20363
|
+
thunderouskick: ["8L45", "8S0", "8S1"],
|
|
20364
20364
|
uturn: ["8M"],
|
|
20365
20365
|
},
|
|
20366
20366
|
eventData: [
|
|
20367
20367
|
{generation: 8, level: 70, moves: ["thunderouskick", "drillpeck", "reversal", "focusenergy"]},
|
|
20368
|
+
{generation: 8, level: 70, shiny: true, moves: ["thunderouskick", "drillpeck", "reversal", "focusenergy"], pokeball: "cherishball"},
|
|
20368
20369
|
],
|
|
20369
20370
|
eventOnly: true,
|
|
20370
20371
|
},
|
package/data/mods/gen1/moves.ts
CHANGED
|
@@ -196,12 +196,10 @@ export const Moves: {[k: string]: ModdedMoveData} = {
|
|
|
196
196
|
},
|
|
197
197
|
conversion: {
|
|
198
198
|
inherit: true,
|
|
199
|
-
volatileStatus: 'conversion',
|
|
200
|
-
accuracy: true,
|
|
201
199
|
target: "normal",
|
|
202
200
|
onHit(target, source) {
|
|
203
|
-
source.
|
|
204
|
-
this.add('-start', source, 'typechange', source.types.join('
|
|
201
|
+
source.setType(target.getTypes(true));
|
|
202
|
+
this.add('-start', source, 'typechange', source.types.join('/'), '[from] move: Conversion', '[of] ' + target);
|
|
205
203
|
},
|
|
206
204
|
},
|
|
207
205
|
counter: {
|
|
@@ -694,7 +694,7 @@ export const FormatsData: {[k: string]: ModdedSpeciesFormatsData} = {
|
|
|
694
694
|
tier: "NFE",
|
|
695
695
|
},
|
|
696
696
|
azumarill: {
|
|
697
|
-
randomBattleMoves: ["
|
|
697
|
+
randomBattleMoves: ["brickbreak", "encore", "hiddenpowerghost", "hydropump", "return"],
|
|
698
698
|
tier: "UU",
|
|
699
699
|
},
|
|
700
700
|
sudowoodo: {
|
|
@@ -835,7 +835,7 @@ export const FormatsData: {[k: string]: ModdedSpeciesFormatsData} = {
|
|
|
835
835
|
tier: "UU",
|
|
836
836
|
},
|
|
837
837
|
skarmory: {
|
|
838
|
-
randomBattleMoves: ["drillpeck", "protect", "rest", "roar", "sleeptalk", "spikes", "toxic"],
|
|
838
|
+
randomBattleMoves: ["doubleedge", "drillpeck", "protect", "rest", "roar", "sleeptalk", "spikes", "toxic"],
|
|
839
839
|
tier: "OU",
|
|
840
840
|
},
|
|
841
841
|
houndour: {
|
|
@@ -405,7 +405,7 @@ export const FormatsData: {[k: string]: ModdedSpeciesFormatsData} = {
|
|
|
405
405
|
doublesTier: "(DUU)",
|
|
406
406
|
},
|
|
407
407
|
politoed: {
|
|
408
|
-
randomBattleMoves: ["encore", "
|
|
408
|
+
randomBattleMoves: ["encore", "icebeam", "protect", "rest", "scald", "toxic"],
|
|
409
409
|
randomDoubleBattleMoves: ["encore", "helpinghand", "hypnosis", "icywind", "protect", "scald"],
|
|
410
410
|
tier: "(PU)",
|
|
411
411
|
doublesTier: "DOU",
|
package/data/moves.ts
CHANGED
|
@@ -664,9 +664,9 @@ export const Moves: {[moveid: string]: MoveData} = {
|
|
|
664
664
|
return false;
|
|
665
665
|
}
|
|
666
666
|
|
|
667
|
-
if (effect.
|
|
667
|
+
if (effect.name === 'Cute Charm') {
|
|
668
668
|
this.add('-start', pokemon, 'Attract', '[from] ability: Cute Charm', '[of] ' + source);
|
|
669
|
-
} else if (effect.
|
|
669
|
+
} else if (effect.name === 'Destiny Knot') {
|
|
670
670
|
this.add('-start', pokemon, 'Attract', '[from] item: Destiny Knot', '[of] ' + source);
|
|
671
671
|
} else {
|
|
672
672
|
this.add('-start', pokemon, 'Attract');
|
|
@@ -4103,7 +4103,7 @@ export const Moves: {[moveid: string]: MoveData} = {
|
|
|
4103
4103
|
},
|
|
4104
4104
|
onFieldStart(field, source, effect) {
|
|
4105
4105
|
if (effect?.effectType === 'Ability') {
|
|
4106
|
-
this.add('-fieldstart', 'move: Electric Terrain', '[from] ability: ' + effect, '[of] ' + source);
|
|
4106
|
+
this.add('-fieldstart', 'move: Electric Terrain', '[from] ability: ' + effect.name, '[of] ' + source);
|
|
4107
4107
|
} else {
|
|
4108
4108
|
this.add('-fieldstart', 'move: Electric Terrain');
|
|
4109
4109
|
}
|
|
@@ -7196,7 +7196,7 @@ export const Moves: {[moveid: string]: MoveData} = {
|
|
|
7196
7196
|
},
|
|
7197
7197
|
onFieldStart(field, source, effect) {
|
|
7198
7198
|
if (effect?.effectType === 'Ability') {
|
|
7199
|
-
this.add('-fieldstart', 'move: Grassy Terrain', '[from] ability: ' + effect, '[of] ' + source);
|
|
7199
|
+
this.add('-fieldstart', 'move: Grassy Terrain', '[from] ability: ' + effect.name, '[of] ' + source);
|
|
7200
7200
|
} else {
|
|
7201
7201
|
this.add('-fieldstart', 'move: Grassy Terrain');
|
|
7202
7202
|
}
|
|
@@ -11449,7 +11449,7 @@ export const Moves: {[moveid: string]: MoveData} = {
|
|
|
11449
11449
|
},
|
|
11450
11450
|
onFieldStart(field, source, effect) {
|
|
11451
11451
|
if (effect?.effectType === 'Ability') {
|
|
11452
|
-
this.add('-fieldstart', 'move: Misty Terrain', '[from] ability: ' + effect, '[of] ' + source);
|
|
11452
|
+
this.add('-fieldstart', 'move: Misty Terrain', '[from] ability: ' + effect.name, '[of] ' + source);
|
|
11453
11453
|
} else {
|
|
11454
11454
|
this.add('-fieldstart', 'move: Misty Terrain');
|
|
11455
11455
|
}
|
|
@@ -13244,7 +13244,7 @@ export const Moves: {[moveid: string]: MoveData} = {
|
|
|
13244
13244
|
},
|
|
13245
13245
|
onFieldStart(field, source, effect) {
|
|
13246
13246
|
if (effect?.effectType === 'Ability') {
|
|
13247
|
-
this.add('-fieldstart', 'move: Psychic Terrain', '[from] ability: ' + effect, '[of] ' + source);
|
|
13247
|
+
this.add('-fieldstart', 'move: Psychic Terrain', '[from] ability: ' + effect.name, '[of] ' + source);
|
|
13248
13248
|
} else {
|
|
13249
13249
|
this.add('-fieldstart', 'move: Psychic Terrain');
|
|
13250
13250
|
}
|
|
@@ -14122,17 +14122,18 @@ export const Moves: {[moveid: string]: MoveData} = {
|
|
|
14122
14122
|
num: 804,
|
|
14123
14123
|
accuracy: 100,
|
|
14124
14124
|
basePower: 70,
|
|
14125
|
+
basePowerCallback(source, target, move) {
|
|
14126
|
+
if (this.field.isTerrain('electricterrain') && target.isGrounded()) {
|
|
14127
|
+
if (!source.isAlly(target)) this.hint(`${move.name}'s BP doubled on grounded target.`);
|
|
14128
|
+
return move.basePower * 2;
|
|
14129
|
+
}
|
|
14130
|
+
return move.basePower;
|
|
14131
|
+
},
|
|
14125
14132
|
category: "Special",
|
|
14126
14133
|
name: "Rising Voltage",
|
|
14127
14134
|
pp: 20,
|
|
14128
14135
|
priority: 0,
|
|
14129
14136
|
flags: {protect: 1, mirror: 1},
|
|
14130
|
-
onBasePower(basePower, pokemon, target) {
|
|
14131
|
-
if (this.field.isTerrain('electricterrain') && target.isGrounded()) {
|
|
14132
|
-
this.debug('terrain buff');
|
|
14133
|
-
return this.chainModify(2);
|
|
14134
|
-
}
|
|
14135
|
-
},
|
|
14136
14137
|
secondary: null,
|
|
14137
14138
|
target: "normal",
|
|
14138
14139
|
type: "Electric",
|
package/data/pokedex.ts
CHANGED
|
@@ -16366,7 +16366,7 @@ export const Pokedex: {[speciesid: string]: SpeciesData} = {
|
|
|
16366
16366
|
color: "Green",
|
|
16367
16367
|
prevo: "Basculin-White-Striped",
|
|
16368
16368
|
evoType: "other",
|
|
16369
|
-
evoCondition: "Receive 294+ recoil
|
|
16369
|
+
evoCondition: "Receive 294+ recoil without fainting",
|
|
16370
16370
|
eggGroups: ["Water 2"],
|
|
16371
16371
|
otherFormes: ["Basculegion-F"],
|
|
16372
16372
|
formeOrder: ["Basculegion", "Basculegion-F"],
|
|
@@ -16385,7 +16385,7 @@ export const Pokedex: {[speciesid: string]: SpeciesData} = {
|
|
|
16385
16385
|
color: "Green",
|
|
16386
16386
|
prevo: "Basculin-White-Striped",
|
|
16387
16387
|
evoType: "other",
|
|
16388
|
-
evoCondition: "Receive 294+ recoil
|
|
16388
|
+
evoCondition: "Receive 294+ recoil without fainting",
|
|
16389
16389
|
eggGroups: ["Water 2"],
|
|
16390
16390
|
},
|
|
16391
16391
|
sneasler: {
|
package/data/tags.ts
CHANGED
|
@@ -197,10 +197,10 @@ export const Tags: {[id: string]: TagData} = {
|
|
|
197
197
|
nduubl: {
|
|
198
198
|
name: "ND UUBL",
|
|
199
199
|
speciesFilter: species => [
|
|
200
|
-
'Aerodactyl-Mega', 'Blacephalon', 'Diancie-Mega', 'Gallade-Mega', 'Gardevoir-Mega', 'Gengar', 'Gyarados',
|
|
201
|
-
'Hawlucha', 'Heracross-Mega', 'Hoopa-Unbound', 'Hydreigon', 'Jirachi', 'Latias', 'Latias-Mega', 'Latios', 'Latios-Mega',
|
|
202
|
-
'Medicham-Mega', 'Mew', 'Pinsir-Mega', 'Sableye-Mega', 'Slowbro-Mega', 'Slowking-Galar', 'Thundurus', 'Thundurus-Therian',
|
|
203
|
-
'Xurkitree', 'Zapdos-Galar',
|
|
200
|
+
'Aerodactyl-Mega', 'Alakazam', 'Blacephalon', 'Blaziken', 'Diancie-Mega', 'Gallade-Mega', 'Gardevoir-Mega', 'Gengar', 'Gyarados',
|
|
201
|
+
'Gyarados-Mega', 'Hawlucha', 'Heracross-Mega', 'Hoopa-Unbound', 'Hydreigon', 'Jirachi', 'Latias', 'Latias-Mega', 'Latios', 'Latios-Mega',
|
|
202
|
+
'Manaphy', 'Medicham-Mega', 'Mew', 'Pinsir-Mega', 'Sableye-Mega', 'Slowbro-Mega', 'Slowking-Galar', 'Thundurus', 'Thundurus-Therian',
|
|
203
|
+
'Venusaur-Mega', 'Xurkitree', 'Zapdos-Galar',
|
|
204
204
|
].includes(species.name),
|
|
205
205
|
},
|
|
206
206
|
|