diff --git a/logic/main.py b/logic/main.py index 93d9d2c2..e112c4ea 100644 --- a/logic/main.py +++ b/logic/main.py @@ -102,9 +102,11 @@ def __init__(self, configuration_options, *, world_setup, requirements_settings= else: se.location.connect(te.location, te.requirement, back=False) if se.enterIsSet(): - se.location.connect(te.location, se.one_way_enter_requirement, back=False) + exitRequirement = te.one_way_exit_requirement if te.exitIsSet() else te.requirement + se.location.connect(te.location, AND(exitRequirement, se.one_way_enter_requirement), back=False) if te.exitIsSet(): - se.location.connect(te.location, te.one_way_exit_requirement, back=False) + entranceRequirement = se.one_way_enter_requirement if se.enterIsSet() else se.requirement + se.location.connect(te.location, AND(entranceRequirement, te.one_way_exit_requirement), back=False) egg_trigger = AND(OCARINA, SONG1) if configuration_options.logic == 'glitched' or configuration_options.logic == 'hell':