fix(ER): Links house on Dm won't allow a cave to be used twice anymore

This commit is contained in:
aerinon
2023-11-15 13:25:13 -07:00
parent 71eadd051c
commit 7030ff01be
2 changed files with 9 additions and 3 deletions

View File

@@ -109,7 +109,9 @@ These are now independent of retro mode and have three options: None, Random, an
# Bug Fixes and Notes
* * 1.2.0.22u
* 1.2.0.22u
* ?
* ER: Minor fix for Link's House on DM in Insanity (escape cave should not be re-used)
* Fixed logic issues:
* Self-locking key not allowed in Sanctuary in standard (typo fixed)
* More advanced bunny-walking logic in dungeons (multiple paths considred)

View File

@@ -497,10 +497,14 @@ def do_links_house(entrances, exits, avail, cross_world):
entrances.remove(chosen_dm_escape)
entrances.remove(chosen_landing)
else:
connect_entrance(chosen_dm_escape, chosen_cave.pop(0), avail)
chosen_cave_first = chosen_cave.pop(0)
connect_entrance(chosen_dm_escape, chosen_cave_first, avail)
connect_exit(chosen_cave.pop(), chosen_landing, avail)
entrances.remove(chosen_dm_escape)
avail.decoupled_exits.remove(chosen_cave_first)
avail.decoupled_entrances.remove(chosen_landing)
# chosen cave has already been removed from exits
exits.add(chosen_cave_first) # this needs to be added back in
if len(chosen_cave):
exits.update([x for x in chosen_cave])
exits.update([x for item in multi_exit_caves for x in item])
@@ -1094,7 +1098,7 @@ def connect_entrance(entrancename, exit_name, avail):
def connect_exit(exit_name, entrancename, avail):
world, player = avail.world, avail. player
world, player = avail.world, avail.player
entrance = world.get_entrance(entrancename, player)
exit = world.get_entrance(exit_name, player)