From d5e69b28f294ff148e7b197a8de617d6d364c524 Mon Sep 17 00:00:00 2001 From: aerinon Date: Fri, 14 Apr 2023 15:23:38 -0600 Subject: [PATCH] Fix for Non-ER Inverted Experimental (Aga and GT weren't logically swapped) Fix for customizer setting crystals to 0 for either GT/Ganon --- Main.py | 2 +- RELEASENOTES.md | 3 +++ source/classes/CustomSettings.py | 5 +++-- source/overworld/EntranceShuffle2.py | 4 ++-- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/Main.py b/Main.py index 62d519ed..107b0694 100644 --- a/Main.py +++ b/Main.py @@ -34,7 +34,7 @@ from source.overworld.EntranceShuffle2 import link_entrances_new from source.tools.BPS import create_bps_from_data from source.classes.CustomSettings import CustomSettings -version_number = '1.2.0.16' +version_number = '1.2.0.17' version_branch = '-u' __version__ = f'{version_number}{version_branch}' diff --git a/RELEASENOTES.md b/RELEASENOTES.md index a84d0551..4f622e60 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -109,6 +109,9 @@ These are now independent of retro mode and have three options: None, Random, an # Bug Fixes and Notes +* 1.2.0.17u + * Fix for Non-ER Inverted Experimental (Aga and GT weren't logically swapped) + * Fix for customizer setting crystals to 0 for either GT/Ganon * 1.2.0.16u * Fix for partial key logic on vanilla Mire * Fix for Kholdstare Shell collision when at Lanmo 2 diff --git a/source/classes/CustomSettings.py b/source/classes/CustomSettings.py index ba5bd705..deb9f4d2 100644 --- a/source/classes/CustomSettings.py +++ b/source/classes/CustomSettings.py @@ -2,6 +2,7 @@ import os import urllib.request import urllib.parse import yaml +from typing import Any from yaml.representer import Representer from collections import defaultdict from pathlib import Path @@ -46,8 +47,8 @@ class CustomSettings(object): return meta['players'] def adjust_args(self, args): - def get_setting(value, default): - if value: + def get_setting(value: Any, default): + if value or value == 0: if isinstance(value, dict): return random.choices(list(value.keys()), list(value.values()), k=1)[0] else: diff --git a/source/overworld/EntranceShuffle2.py b/source/overworld/EntranceShuffle2.py index 572f3bb3..61f0a80d 100644 --- a/source/overworld/EntranceShuffle2.py +++ b/source/overworld/EntranceShuffle2.py @@ -56,6 +56,8 @@ def link_entrances_new(world, player): one_way_map.update(drop_map) one_way_map.update(single_entrance_map) if avail_pool.inverted: + default_map['Ganons Tower'] = 'Agahnims Tower Exit' + default_map['Agahnims Tower'] = 'Ganons Tower Exit' default_map['Old Man Cave (West)'] = 'Bumper Cave Exit (Bottom)' default_map['Death Mountain Return Cave (West)'] = 'Bumper Cave Exit (Top)' default_map['Bumper Cave (Bottom)'] = 'Old Man Cave Exit (West)' @@ -64,8 +66,6 @@ def link_entrances_new(world, player): default_map['Old Man Cave (East)'] = 'Death Mountain Return Cave Exit (West)' one_way_map['Bumper Cave (Top)'] = 'Dark Death Mountain Healer Fairy' del default_map['Bumper Cave (Top)'] - del one_way_map['Big Bomb Shop'] - one_way_map['Inverted Big Bomb Shop'] = 'Inverted Big Bomb Shop' avail_pool.default_map = default_map avail_pool.one_way_map = one_way_map