diff --git a/BaseClasses.py b/BaseClasses.py index 358a40e0..f7fd2cc9 100644 --- a/BaseClasses.py +++ b/BaseClasses.py @@ -110,7 +110,8 @@ class World(object): set_player_attr('can_access_trock_front', None) set_player_attr('can_access_trock_big_chest', None) set_player_attr('can_access_trock_middle', None) - set_player_attr('fix_fake_world', logic[player] not in ['owglitches', 'nologic'] or shuffle[player] in ['crossed', 'insanity']) + set_player_attr('fix_fake_world', logic[player] not in ['owglitches', 'nologic'] + or shuffle[player] in ['lean', 'crossed', 'insanity']) set_player_attr('mapshuffle', False) set_player_attr('compassshuffle', False) set_player_attr('keyshuffle', 'none') @@ -1163,6 +1164,8 @@ class CollectionState(object): return self.has('Fire Rod', player) or self.has('Lamp', player) def can_flute(self, player): + if self.world.mode[player] == 'standard' and not self.has('Zelda Delivered', player): + return False # can't flute in rain state if any(map(lambda i: i.name in ['Ocarina', 'Ocarina (Activated)'], self.world.precollected_items)): return True lw = self.world.get_region('Light World', player) @@ -2619,7 +2622,6 @@ class Spoiler(object): outfile.write(f"GT/Ganon Shuffled: {yn(self.metadata['shuffleganon'])}\n") outfile.write(f"Overworld Map: {self.metadata['overworld_map'][player]}\n") outfile.write(f"Take Any Caves: {self.metadata['take_any'][player]}\n") - outfile.write(f"Overworld Map: {self.metadata['overworld_map'][player]}\n") if self.metadata['goal'][player] != 'trinity': outfile.write('Pyramid hole pre-opened: %s\n' % ('Yes' if self.metadata['open_pyramid'][player] else 'No')) outfile.write('Door Shuffle: %s\n' % self.metadata['door_shuffle'][player]) @@ -2920,7 +2922,7 @@ boss_mode = {"none": 0, "simple": 1, "full": 2, "chaos": 3, 'random': 3, 'unique flute_mode = {'normal': 0, 'active': 1} keyshuffle_mode = {'none': 0, 'wild': 1, 'universal': 2} # reserved 8 modes? take_any_mode = {'none': 0, 'random': 1, 'fixed': 2} -bow_mode = {'progressive': 0, 'silvers': 1, 'retro': 2, 'retro_silver': 3} +bow_mode = {'progressive': 0, 'silvers': 1, 'retro': 2, 'retro_silvers': 3} # additions # psuedoboots does not effect code diff --git a/mystery_example.yml b/mystery_example.yml index 93e882b4..275359fc 100644 --- a/mystery_example.yml +++ b/mystery_example.yml @@ -97,7 +97,7 @@ mcu: 1 # map, compass, universal smalls # for use when you aren't using the dungeon_items above # smallkey_shuffle: -# standard: 5 +# none: 5 # wild: 1 # universal: 1 dungeon_counters: diff --git a/source/tools/MysteryUtils.py b/source/tools/MysteryUtils.py index 88833fdd..b5fef26d 100644 --- a/source/tools/MysteryUtils.py +++ b/source/tools/MysteryUtils.py @@ -203,5 +203,6 @@ def roll_settings(weights): ret.ow_palettes = get_choice('ow_palettes', romweights) ret.uw_palettes = get_choice('uw_palettes', romweights) ret.shuffle_sfx = get_choice('shuffle_sfx', romweights) == 'on' + ret.msu_resume = get_choice('msu_resume', romweights) == 'on' return ret