Bonk fairy (light) standard er restriction
This commit is contained in:
@@ -215,6 +215,13 @@ def link_entrances(world, player):
|
||||
if bomb_shop in dw_entrances:
|
||||
dw_entrances.remove(bomb_shop)
|
||||
|
||||
# standard mode cannot have Bonk Fairy Light be a connector in case of starting boots
|
||||
# or boots are in links house, etc.
|
||||
removed = False
|
||||
if world.mode[player] == 'standard' and 'Bonk Fairy (Light)' in lw_entrances:
|
||||
lw_entrances.remove('Bonk Fairy (Light)')
|
||||
removed = True
|
||||
|
||||
# place the old man cave's entrance somewhere in the light world
|
||||
random.shuffle(lw_entrances)
|
||||
old_man_entrance = lw_entrances.pop()
|
||||
@@ -226,6 +233,8 @@ def link_entrances(world, player):
|
||||
|
||||
# now scramble the rest
|
||||
connect_caves(world, lw_entrances, dw_entrances, caves, player)
|
||||
if removed:
|
||||
lw_entrances.append('Bonk Fairy (Light)')
|
||||
|
||||
# scramble holes
|
||||
scramble_holes(world, player)
|
||||
@@ -395,14 +404,23 @@ def link_entrances(world, player):
|
||||
if bomb_shop in dw_entrances:
|
||||
dw_entrances.remove(bomb_shop)
|
||||
|
||||
# standard mode cannot have Bonk Fairy Light be a connector in case of
|
||||
# starting boots or boots are in links house, etc.
|
||||
removed = False
|
||||
if world.mode[player] == 'standard' and 'Bonk Fairy (Light)' in lw_entrances:
|
||||
lw_entrances.remove('Bonk Fairy (Light)')
|
||||
removed = True
|
||||
|
||||
# place the old man cave's entrance somewhere in the light world
|
||||
old_man_entrance = lw_entrances.pop()
|
||||
connect_two_way(world, old_man_entrance, 'Old Man Cave Exit (West)', player)
|
||||
|
||||
|
||||
# now scramble the rest
|
||||
connect_caves(world, lw_entrances, dw_entrances, caves, player)
|
||||
|
||||
if removed:
|
||||
lw_entrances.append('Bonk Fairy (Light)')
|
||||
|
||||
# scramble holes
|
||||
scramble_holes(world, player)
|
||||
|
||||
@@ -487,16 +505,24 @@ def link_entrances(world, player):
|
||||
connect_entrance(world, bomb_shop, 'Big Bomb Shop', player)
|
||||
entrances.remove(bomb_shop)
|
||||
|
||||
# standard mode cannot have Bonk Fairy Light be a connector in case of
|
||||
# starting boots or boots are in links house, etc.
|
||||
removed = False
|
||||
if world.mode[player] == 'standard' and 'Bonk Fairy (Light)' in entrances:
|
||||
entrances.remove('Bonk Fairy (Light)')
|
||||
removed = True
|
||||
|
||||
# place the old man cave's entrance somewhere
|
||||
random.shuffle(entrances)
|
||||
old_man_entrance = entrances.pop()
|
||||
connect_two_way(world, old_man_entrance, 'Old Man Cave Exit (West)', player)
|
||||
|
||||
|
||||
# now scramble the rest
|
||||
connect_caves(world, entrances, [], caves, player)
|
||||
|
||||
if removed:
|
||||
entrances.append('Bonk Fairy (Light)')
|
||||
|
||||
# scramble holes
|
||||
scramble_holes(world, player)
|
||||
|
||||
@@ -971,6 +997,13 @@ def link_entrances(world, player):
|
||||
connect_entrance(world, bomb_shop, 'Big Bomb Shop', player)
|
||||
doors.remove(bomb_shop)
|
||||
|
||||
# standard mode cannot have Bonk Fairy Light be a connector in case of
|
||||
# starting boots or boots are in links house, etc.
|
||||
removed = False
|
||||
if world.mode[player] == 'standard' and 'Bonk Fairy (Light)' in doors:
|
||||
doors.remove('Bonk Fairy (Light)')
|
||||
removed = True
|
||||
|
||||
# handle remaining caves
|
||||
for cave in caves:
|
||||
if isinstance(cave, str):
|
||||
@@ -980,6 +1013,9 @@ def link_entrances(world, player):
|
||||
connect_exit(world, exit, exit_pool.pop(), player)
|
||||
connect_entrance(world, doors.pop(), exit, player)
|
||||
|
||||
if removed:
|
||||
doors.append('Bonk Fairy (Light)')
|
||||
|
||||
# place remaining doors
|
||||
connect_doors(world, doors, door_targets, player)
|
||||
elif world.shuffle[player] == 'insanity_legacy':
|
||||
|
||||
@@ -15,6 +15,9 @@ CLI: ```--bombbag```
|
||||
|
||||
# Bug Fixes and Notes.
|
||||
|
||||
* 0.5.1.5
|
||||
* Fix for hard pool capacity upgrades missing
|
||||
* Bonk Fairy (Light) is no longer in logic for ER Standard and is forbidden to be a connector, so rain state isn't exitable
|
||||
* 0.5.1.4
|
||||
* Revert quadrant glitch fix for baserom
|
||||
* Fix for inverted
|
||||
|
||||
2
Rules.py
2
Rules.py
@@ -1212,7 +1212,7 @@ def standard_rules(world, player):
|
||||
'North Fairy Cave', 'North Fairy Cave Drop', 'Lost Woods Gamble', 'Snitch Lady (East)',
|
||||
'Snitch Lady (West)', 'Tavern (Front)', 'Bush Covered House', 'Light World Bomb Hut',
|
||||
'Kakariko Shop', 'Long Fairy Cave', 'Good Bee Cave', '20 Rupee Cave', 'Cave Shop (Lake Hylia)',
|
||||
'Waterfall of Wishing', 'Hyrule Castle Main Gate', '50 Rupee Cave',
|
||||
'Waterfall of Wishing', 'Hyrule Castle Main Gate', '50 Rupee Cave', 'Bonk Fairy (Light)',
|
||||
'Fortune Teller (Light)', 'Lake Hylia Fairy', 'Light Hype Fairy', 'Desert Fairy',
|
||||
'Lumberjack House', 'Lake Hylia Fortune Teller', 'Kakariko Gamble Game', 'Top of Pyramid']:
|
||||
add_rule(world.get_entrance(entrance, player), lambda state: state.has('Zelda Delivered', player))
|
||||
|
||||
Reference in New Issue
Block a user