OoT Entrance Randomizer (#125)

Add options:
    "shuffle_grotto_entrances": GrottoEntrances,
    "shuffle_dungeon_entrances": DungeonEntrances,
    "owl_drops": OwlDrops,
    "warp_songs": WarpSongs,
    "spawn_positions": SpawnPositions,
Add Logic Trick:
    "Skip King Zora as Adult with Nothing"
This commit is contained in:
espeon65536
2021-11-11 04:42:08 -05:00
committed by GitHub
parent 80c86f34a4
commit 8eb1f0258c
9 changed files with 949 additions and 34 deletions

View File

@@ -94,12 +94,37 @@ class StartingAge(Choice):
option_adult = 1
# TODO: document and name ER options
class InteriorEntrances(Choice):
"""Shuffles interior entrances. "Simple" shuffles houses and Great Fairies; "All" includes Windmill, Link's House, Temple of Time, and Kak potion shop."""
option_off = 0
option_simple = 1
option_all = 2
alias_false = 0
alias_true = 2
class GrottoEntrances(Toggle):
"""Shuffles grotto and grave entrances."""
class DungeonEntrances(Toggle):
"""Shuffles dungeon entrances, excluding Ganon's Castle. Opens Deku, Fire and BotW to both ages."""
class OverworldEntrances(Toggle):
"""Shuffles overworld loading zones."""
class OwlDrops(Toggle):
"""Randomizes owl drops from Lake Hylia or Death Mountain Trail as child."""
class WarpSongs(Toggle):
"""Randomizes warp song destinations."""
class SpawnPositions(Toggle):
"""Randomizes the starting position on loading a save. Consistent between savewarps."""
class TriforceHunt(Toggle):
@@ -139,12 +164,12 @@ class MQDungeons(Range):
world_options: typing.Dict[str, type(Option)] = {
"starting_age": StartingAge,
# "shuffle_interior_entrances": InteriorEntrances,
# "shuffle_grotto_entrances": Toggle,
# "shuffle_dungeon_entrances": Toggle,
# "shuffle_overworld_entrances": Toggle,
# "owl_drops": Toggle,
# "warp_songs": Toggle,
# "spawn_positions": Toggle,
"shuffle_grotto_entrances": GrottoEntrances,
"shuffle_dungeon_entrances": DungeonEntrances,
# "shuffle_overworld_entrances": OverworldEntrances,
"owl_drops": OwlDrops,
"warp_songs": WarpSongs,
"spawn_positions": SpawnPositions,
"triforce_hunt": TriforceHunt,
"triforce_goal": TriforceGoal,
"extra_triforce_percentage": ExtraTriforces,