Merge branch 'Ambrosia' into DoorDevVolatile

# Conflicts:
#	BaseClasses.py
#	CLI.py
#	Main.py
This commit is contained in:
aerinon
2021-10-29 15:26:51 -06:00
15 changed files with 200 additions and 73 deletions

View File

@@ -72,7 +72,8 @@ SETTINGSTOPROCESS = {
"progressives": "progressive",
"accessibility": "accessibility",
"sortingalgo": "algorithm",
"beemizer": "beemizer"
"beemizer": "beemizer",
"restrict_boss_items": "restrict_boss_items"
},
"entrance": {
"openpyramid": "openpyramid",

26
source/item/FillUtil.py Normal file
View File

@@ -0,0 +1,26 @@
from collections import defaultdict
from Dungeons import dungeon_table
class ItemPoolConfig(object):
def __init__(self):
self.reserved_locations = defaultdict(set)
def create_item_pool_config(world):
world.item_pool_config = config = ItemPoolConfig()
player_set = set()
for player in range(1, world.players+1):
if world.restrict_boss_items[player] != 'none':
player_set.add(player)
if world.restrict_boss_items[player] == 'dungeon':
for dungeon, info in dungeon_table.items():
if info.prize:
d_name = "Thieves' Town" if dungeon.startswith('Thieves') else dungeon
config.reserved_locations[player].add(f'{d_name} - Boss')
for dungeon in world.dungeons:
if world.restrict_boss_items[dungeon.player] != 'none':
for item in dungeon.all_items:
if item.map or item.compass:
item.advancement = True