from typing import Tuple from BaseClasses import MultiWorld from .Options import is_option_enabled def get_pyramid_keys_unlock(world: MultiWorld, player: int) -> str: present_teleportation_gates: Tuple[str, ...] = ( "GateKittyBoss", "GateLeftLibrary", "GateMilitairyGate", "GateSealedCaves", "GateSealedSirensCave", "GateLakeDesolation" ) past_teleportation_gates: Tuple[str, ...] = ( "GateLakeSirineRight", "GateAccessToPast", "GateCastleRamparts", "GateCastleKeep", "GateRoyalTowers", "GateMaw", "GateCavesOfBanishment" ) if is_option_enabled(world, player, "Inverted"): gates = present_teleportation_gates else: gates = (*past_teleportation_gates, *present_teleportation_gates) if not world: return gates[0] return world.random.choice(gates)