From ca03e1f59f57ca3938820f13288d27079475370c Mon Sep 17 00:00:00 2001 From: Fabian Dill Date: Thu, 21 May 2020 15:34:42 +0200 Subject: [PATCH] fix a retro - crossed TR keylogic crash --- Rules.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Rules.py b/Rules.py index 8456c828..561210c9 100644 --- a/Rules.py +++ b/Rules.py @@ -857,7 +857,7 @@ def set_trock_key_rules(world, player): 'Turtle Rock - Eye Bridge - Top Right'] # If TR is only accessible from the middle, the big key must be further restricted to prevent softlock potential - if not can_reach_front and not world.keyshuffle[player]: + if not can_reach_front and not world.keyshuffle[player] and not world.retro[player]: # Must not go in the Big Key Chest - only 1 other chest available and 2+ keys required for all other chests non_big_key_locations += ['Turtle Rock - Big Key Chest'] if not can_reach_big_chest: @@ -867,7 +867,7 @@ def set_trock_key_rules(world, player): if world.bigkeyshuffle[player] and can_reach_big_chest: # Must not go in the dungeon - all 3 available chests (Chomps, Big Chest, Crystaroller) must be keys to access laser bridge, and the big key is required first non_big_key_locations += ['Turtle Rock - Chain Chomps', 'Turtle Rock - Compass Chest', 'Turtle Rock - Roller Room - Left', 'Turtle Rock - Roller Room - Right'] - elif not world.retro[player]: + else: # A key is required in the Big Key Chest to prevent a possible softlock. Place an extra key to ensure 100% locations still works world.push_item(world.get_location('Turtle Rock - Big Key Chest', player), ItemFactory('Small Key (Turtle Rock)', player), False) world.get_location('Turtle Rock - Big Key Chest', player).event = True