diff --git a/Mystery.py b/Mystery.py index d43ef6c5..e19a5203 100644 --- a/Mystery.py +++ b/Mystery.py @@ -109,8 +109,8 @@ def get_weights(path): return parse_yaml(yaml) def roll_settings(weights): - def get_choice(option): - return random.choices(list(weights[option].keys()), weights=list(map(int,weights[option].values())))[0].replace('"','').replace("'",'') + def get_choice(option, root=weights): + return random.choices(list(root[option].keys()), weights=list(map(int,root[option].values())))[0].replace('"','').replace("'",'') ret = argparse.Namespace() @@ -202,6 +202,13 @@ def roll_settings(weights): ret.beemizer = int(get_choice('beemizer')) if 'beemizer' in weights.keys() else 1 # suck it :) + inventoryweights = weights.get('startinventory', {}) + startitems = [] + for item in inventoryweights.keys(): + if get_choice(item, inventoryweights) == 'on': + startitems.append(item) + ret.startinventory = ','.join(startitems) + return ret if __name__ == '__main__':