Fill: place items for players with no accessibility requirements first
This commit is contained in:
parent
c2530dce7d
commit
9175c22895
9
Fill.py
9
Fill.py
|
@ -171,10 +171,15 @@ def fill_restrictive(world, base_state, locations, itempool, single_player_place
|
|||
|
||||
unplaced_items = []
|
||||
|
||||
player_items = {}
|
||||
no_access_checks = {}
|
||||
reachable_items = {}
|
||||
for item in itempool:
|
||||
player_items.setdefault(item.player, []).append(item)
|
||||
if world.accessibility[item.player] == 'none':
|
||||
no_access_checks.setdefault(item.player, []).append(item)
|
||||
else:
|
||||
reachable_items.setdefault(item.player, []).append(item)
|
||||
|
||||
for player_items in [no_access_checks, reachable_items]:
|
||||
while any(player_items.values()) and locations:
|
||||
items_to_place = [[itempool.remove(items[-1]), items.pop()][-1] for items in player_items.values() if items]
|
||||
|
||||
|
|
Loading…
Reference in New Issue