Skip to content

Commit acbd913

Browse files
committed
Do not sample Legends ZA megas
Legends ZA petmod unsupported. Will fix this in gen10 / champions / whatever nonsense comes in 2026
1 parent 2ded51a commit acbd913

File tree

2 files changed

+19
-20
lines changed

2 files changed

+19
-20
lines changed

fp/battle.py

Lines changed: 16 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -611,30 +611,26 @@ def __init__(self, name: str, level: int, nature="serious", evs=(85,) * 6):
611611
self.impossible_abilities = set()
612612

613613
def get_mega_pkmn_info(self) -> list[tuple[str, str]]:
614+
# For avoiding Legends ZA megas: omit mega pokemon in the pokedex that have "gen": 9
615+
# Come back and undo this when Legends ZA megas are available in standard formats
614616
mega_names = []
615617
if self.name == "rayquaza":
616618
return [("rayquaza", "none")]
617-
if f"{self.name}mega" in pokedex:
618-
mega_names.append(
619-
(
620-
f"{self.name}mega",
621-
normalize_name(pokedex[f"{self.name}mega"]["requiredItem"]),
622-
)
623-
)
624-
if f"{self.name}megax" in pokedex:
625-
mega_names.append(
626-
(
627-
f"{self.name}megax",
628-
normalize_name(pokedex[f"{self.name}megax"]["requiredItem"]),
629-
)
630-
)
631-
if f"{self.name}megay" in pokedex:
632-
mega_names.append(
633-
(
634-
f"{self.name}megay",
635-
normalize_name(pokedex[f"{self.name}megay"]["requiredItem"]),
619+
620+
potential_megas = [
621+
f"{self.name}mega",
622+
f"{self.name}megax",
623+
f"{self.name}megay",
624+
]
625+
for mega_forme in potential_megas:
626+
if mega_forme in pokedex and pokedex[mega_forme].get("gen") != 9:
627+
mega_names.append(
628+
(
629+
mega_forme,
630+
normalize_name(pokedex[mega_forme]["requiredItem"]),
631+
)
636632
)
637-
)
633+
638634
return mega_names
639635

640636
def has_type(self, pkmn_type: str):

tests/test_battle.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,9 @@ def test_get_mega_formes_two_mega(self):
2626
def test_get_mega_formes_none(self):
2727
self.assertEqual(Pokemon("umbreon", 100).get_mega_pkmn_info(), [])
2828

29+
def test_does_not_get_legends_za_mega_forme(self):
30+
self.assertEqual(Pokemon("emboar", 100).get_mega_pkmn_info(), [])
31+
2932

3033
class TestBattlerActiveLockedIntoMove(unittest.TestCase):
3134
def setUp(self):

0 commit comments

Comments
 (0)