Skip to content

Commit ac21e2a

Browse files
AlchavJouramie
authored andcommitted
Pokémon R/B: Fix incompatible option combination (ArchipelagoMW#2356)
1 parent 55184c3 commit ac21e2a

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

worlds/pokemon_rb/__init__.py

+8-4
Original file line numberDiff line numberDiff line change
@@ -463,13 +463,17 @@ def number_of_zones(mon):
463463
locs = {self.multiworld.get_location("Fossil - Choice A", self.player),
464464
self.multiworld.get_location("Fossil - Choice B", self.player)}
465465

466-
for loc in locs:
466+
if not self.multiworld.key_items_only[self.player]:
467+
rule = None
467468
if self.multiworld.fossil_check_item_types[self.player] == "key_items":
468-
add_item_rule(loc, lambda i: i.advancement)
469+
rule = lambda i: i.advancement
469470
elif self.multiworld.fossil_check_item_types[self.player] == "unique_items":
470-
add_item_rule(loc, lambda i: i.name in item_groups["Unique"])
471+
rule = lambda i: i.name in item_groups["Unique"]
471472
elif self.multiworld.fossil_check_item_types[self.player] == "no_key_items":
472-
add_item_rule(loc, lambda i: not i.advancement)
473+
rule = lambda i: not i.advancement
474+
if rule:
475+
for loc in locs:
476+
add_item_rule(loc, rule)
473477

474478
for mon in ([" ".join(self.multiworld.get_location(
475479
f"Oak's Lab - Starter {i}", self.player).item.name.split(" ")[1:]) for i in range(1, 4)]

0 commit comments

Comments
 (0)