AHIT: Fix Time Rift - Alpine Skyline entrance logic (#3851)
The `Time Rift - Alpine Skyline` region was incorrectly accessible from Alpine Free Roam without Hookshot Badge or Umbrella. One of the two regions that connects to the `Time Rift - Alpine Skyline` region is `Alpine Free Roam`. The problem here is that `Alpine Free Roam` corresponds to the intro section of Alpine Free Roam, but the Time Rift is actually found in-game in what equates to the `Alpine Skyline Area` region. The entrance connecting `Alpine Free Roam` to `Alpine Skyline Area` (`AFR -> Alpine Skyline Area`) requires the Hookshot Badge (and Umbrella if umbrella logic is enabled), but because the entrance to `Time Rift - Alpine Skyline` is placed in `Alpine Free Roam` instead, it was missing the hookshot/umbrella requirements. The missing Hookshot Badge and Umbrella requirements have been added to `Rules.set_rift_rules()` and `Rules.set_default_rift_rules()`. The entrances to the `Time Rift - Curly Tail Trail` and `Time Rift - The Twilight Bell` regions are also in the `Alpine Free Roam` region, but the logic for both of those entrances require event items that are only accessible from the `Alpine Skyline Area` region.
This commit is contained in:
parent
9a4e84efdc
commit
701a7faa71
|
@ -855,6 +855,9 @@ def set_rift_rules(world: "HatInTimeWorld", regions: Dict[str, Region]):
|
|||
|
||||
for entrance in regions["Time Rift - Alpine Skyline"].entrances:
|
||||
add_rule(entrance, lambda state: has_relic_combo(state, world, "Crayon"))
|
||||
if entrance.parent_region.name == "Alpine Free Roam":
|
||||
add_rule(entrance,
|
||||
lambda state: can_use_hookshot(state, world) and can_hit(state, world, umbrella_only=True))
|
||||
|
||||
if world.is_dlc1():
|
||||
for entrance in regions["Time Rift - Balcony"].entrances:
|
||||
|
@ -933,6 +936,9 @@ def set_default_rift_rules(world: "HatInTimeWorld"):
|
|||
|
||||
for entrance in world.multiworld.get_region("Time Rift - Alpine Skyline", world.player).entrances:
|
||||
add_rule(entrance, lambda state: has_relic_combo(state, world, "Crayon"))
|
||||
if entrance.parent_region.name == "Alpine Free Roam":
|
||||
add_rule(entrance,
|
||||
lambda state: can_use_hookshot(state, world) and can_hit(state, world, umbrella_only=True))
|
||||
|
||||
if world.is_dlc1():
|
||||
for entrance in world.multiworld.get_region("Time Rift - Balcony", world.player).entrances:
|
||||
|
|
Loading…
Reference in New Issue