From d390047258225d6924f4f58d770332bb7655d066 Mon Sep 17 00:00:00 2001 From: codemann8 Date: Sun, 13 Nov 2022 16:29:20 -0600 Subject: [PATCH] Removing most entrance hints for Lite/Lean ER --- Rom.py | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/Rom.py b/Rom.py index 39b977b6..56656bf8 100644 --- a/Rom.py +++ b/Rom.py @@ -2183,8 +2183,9 @@ def write_strings(rom, world, player, team): entrances_to_hint = {} break # Now we write inconvenient locations for most shuffles and finish taking care of the less chaotic ones. - entrances_to_hint.update(InconvenientOtherEntrances) - if world.shuffle[player] in ['vanilla', 'dungeonssimple', 'dungeonsfull']: + if world.shuffle[player] not in ['lite', 'lean']: + entrances_to_hint.update(InconvenientOtherEntrances) + if world.shuffle[player] in ['vanilla', 'dungeonssimple', 'dungeonsfull', 'lite', 'lean']: hint_count = 0 elif world.shuffle[player] in ['simple', 'restricted', 'restricted_legacy']: hint_count = 2 @@ -2213,13 +2214,17 @@ def write_strings(rom, world, player, team): entrances_to_hint.update({'Agahnims Tower': 'The sealed castle door'}) elif world.shuffle[player] == 'restricted': entrances_to_hint.update(ConnectorEntrances) - entrances_to_hint.update(ItemEntrances) - if world.shuffle[player] not in ['lite', 'lean']: + if world.shuffle[player] in ['lite', 'lean']: + # all inconvenient dungeons + AT/GT stay in hint pool, but the remaining should exclude non-specific connector hints + for entrance in all_entrances: + if entrance.spot_type == 'Entrance' and entrance.connected_region \ + and entrance.connected_region.type != RegionType.Dungeon and entrance.name in list(ConnectorEntrances) + list(DungeonEntrances): + entrances_to_hint.pop(entrance.name) + else: + entrances_to_hint.update(ItemEntrances) entrances_to_hint.update(ShopEntrances) entrances_to_hint.update(OtherEntrances) - elif world.shopsanity[player]: - entrances_to_hint.update(ShopEntrances) - if world.shuffle[player] not in ['vanilla', 'dungeonssimple', 'dungeonsfull']: + if world.shuffle[player] not in ['vanilla', 'dungeonssimple', 'dungeonsfull', 'lite', 'lean']: if world.shufflelinks[player]: entrances_to_hint.update({'Big Bomb Shop': 'The old bomb shop'}) entrances_to_hint.update({'Links House': 'The hero\'s old residence'})