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:
|
if bomb_shop in dw_entrances:
|
||||||
dw_entrances.remove(bomb_shop)
|
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
|
# place the old man cave's entrance somewhere in the light world
|
||||||
random.shuffle(lw_entrances)
|
random.shuffle(lw_entrances)
|
||||||
old_man_entrance = lw_entrances.pop()
|
old_man_entrance = lw_entrances.pop()
|
||||||
@@ -226,6 +233,8 @@ def link_entrances(world, player):
|
|||||||
|
|
||||||
# now scramble the rest
|
# now scramble the rest
|
||||||
connect_caves(world, lw_entrances, dw_entrances, caves, player)
|
connect_caves(world, lw_entrances, dw_entrances, caves, player)
|
||||||
|
if removed:
|
||||||
|
lw_entrances.append('Bonk Fairy (Light)')
|
||||||
|
|
||||||
# scramble holes
|
# scramble holes
|
||||||
scramble_holes(world, player)
|
scramble_holes(world, player)
|
||||||
@@ -395,14 +404,23 @@ def link_entrances(world, player):
|
|||||||
if bomb_shop in dw_entrances:
|
if bomb_shop in dw_entrances:
|
||||||
dw_entrances.remove(bomb_shop)
|
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
|
# place the old man cave's entrance somewhere in the light world
|
||||||
old_man_entrance = lw_entrances.pop()
|
old_man_entrance = lw_entrances.pop()
|
||||||
connect_two_way(world, old_man_entrance, 'Old Man Cave Exit (West)', player)
|
connect_two_way(world, old_man_entrance, 'Old Man Cave Exit (West)', player)
|
||||||
|
|
||||||
|
|
||||||
# now scramble the rest
|
# now scramble the rest
|
||||||
connect_caves(world, lw_entrances, dw_entrances, caves, player)
|
connect_caves(world, lw_entrances, dw_entrances, caves, player)
|
||||||
|
|
||||||
|
if removed:
|
||||||
|
lw_entrances.append('Bonk Fairy (Light)')
|
||||||
|
|
||||||
# scramble holes
|
# scramble holes
|
||||||
scramble_holes(world, player)
|
scramble_holes(world, player)
|
||||||
|
|
||||||
@@ -487,16 +505,24 @@ def link_entrances(world, player):
|
|||||||
connect_entrance(world, bomb_shop, 'Big Bomb Shop', player)
|
connect_entrance(world, bomb_shop, 'Big Bomb Shop', player)
|
||||||
entrances.remove(bomb_shop)
|
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
|
# place the old man cave's entrance somewhere
|
||||||
random.shuffle(entrances)
|
random.shuffle(entrances)
|
||||||
old_man_entrance = entrances.pop()
|
old_man_entrance = entrances.pop()
|
||||||
connect_two_way(world, old_man_entrance, 'Old Man Cave Exit (West)', player)
|
connect_two_way(world, old_man_entrance, 'Old Man Cave Exit (West)', player)
|
||||||
|
|
||||||
|
|
||||||
# now scramble the rest
|
# now scramble the rest
|
||||||
connect_caves(world, entrances, [], caves, player)
|
connect_caves(world, entrances, [], caves, player)
|
||||||
|
|
||||||
|
if removed:
|
||||||
|
entrances.append('Bonk Fairy (Light)')
|
||||||
|
|
||||||
# scramble holes
|
# scramble holes
|
||||||
scramble_holes(world, player)
|
scramble_holes(world, player)
|
||||||
|
|
||||||
@@ -971,6 +997,13 @@ def link_entrances(world, player):
|
|||||||
connect_entrance(world, bomb_shop, 'Big Bomb Shop', player)
|
connect_entrance(world, bomb_shop, 'Big Bomb Shop', player)
|
||||||
doors.remove(bomb_shop)
|
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
|
# handle remaining caves
|
||||||
for cave in caves:
|
for cave in caves:
|
||||||
if isinstance(cave, str):
|
if isinstance(cave, str):
|
||||||
@@ -980,6 +1013,9 @@ def link_entrances(world, player):
|
|||||||
connect_exit(world, exit, exit_pool.pop(), player)
|
connect_exit(world, exit, exit_pool.pop(), player)
|
||||||
connect_entrance(world, doors.pop(), exit, player)
|
connect_entrance(world, doors.pop(), exit, player)
|
||||||
|
|
||||||
|
if removed:
|
||||||
|
doors.append('Bonk Fairy (Light)')
|
||||||
|
|
||||||
# place remaining doors
|
# place remaining doors
|
||||||
connect_doors(world, doors, door_targets, player)
|
connect_doors(world, doors, door_targets, player)
|
||||||
elif world.shuffle[player] == 'insanity_legacy':
|
elif world.shuffle[player] == 'insanity_legacy':
|
||||||
|
|||||||
@@ -15,6 +15,9 @@ CLI: ```--bombbag```
|
|||||||
|
|
||||||
# Bug Fixes and Notes.
|
# 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
|
* 0.5.1.4
|
||||||
* Revert quadrant glitch fix for baserom
|
* Revert quadrant glitch fix for baserom
|
||||||
* Fix for inverted
|
* 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)',
|
'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',
|
'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)',
|
'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',
|
'Fortune Teller (Light)', 'Lake Hylia Fairy', 'Light Hype Fairy', 'Desert Fairy',
|
||||||
'Lumberjack House', 'Lake Hylia Fortune Teller', 'Kakariko Gamble Game', 'Top of Pyramid']:
|
'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))
|
add_rule(world.get_entrance(entrance, player), lambda state: state.has('Zelda Delivered', player))
|
||||||
|
|||||||
Reference in New Issue
Block a user