Fix swordless checks not checking for swordless_b

This commit is contained in:
2023-10-24 13:06:47 -05:00
parent bf6c05d7a9
commit f5f0cebe26
4 changed files with 6 additions and 6 deletions

View File

@@ -242,7 +242,7 @@ class InitialSram:
self._initial_sram_bytes[0x422] = self._initial_sram_bytes[0x35A] self._initial_sram_bytes[0x422] = self._initial_sram_bytes[0x35A]
self._initial_sram_bytes[0x46E] = self._initial_sram_bytes[0x35B] self._initial_sram_bytes[0x46E] = self._initial_sram_bytes[0x35B]
if world.swords[player] == "swordless": if world.swords[player] in ["swordless", "swordless_b"]:
self._initial_sram_bytes[0x359] = 0xFF self._initial_sram_bytes[0x359] = 0xFF
self._initial_sram_bytes[0x417] = 0x00 self._initial_sram_bytes[0x417] = 0x00

View File

@@ -357,7 +357,7 @@ def generate_itempool(world, player):
possible_weapons = [] possible_weapons = []
for item in pool: for item in pool:
if item in ['Progressive Sword', 'Fighter Sword', 'Master Sword', 'Tempered Sword', 'Golden Sword']: if item in ['Progressive Sword', 'Fighter Sword', 'Master Sword', 'Tempered Sword', 'Golden Sword']:
if not found_sword and world.swords[player] != 'swordless': if not found_sword and world.swords[player] not in ['swordless', 'swordless_b']:
found_sword = True found_sword = True
possible_weapons.append(item) possible_weapons.append(item)
if item in ['Progressive Cane', 'Progressive Net']: if item in ['Progressive Cane', 'Progressive Net']:
@@ -1162,7 +1162,7 @@ def get_pool_core(world, player, progressive, shuffle, difficulty, treasure_hunt
else: else:
pool.extend(['Bow', 'Silver Arrows']) pool.extend(['Bow', 'Silver Arrows'])
if swords == 'swordless': if swords in ['swordless', 'swordless_b']:
pool.extend(diff.swordless) pool.extend(diff.swordless)
elif swords == 'bombs': elif swords == 'bombs':
pool.extend(diff.bombs_only) pool.extend(diff.bombs_only)
@@ -1572,7 +1572,7 @@ def make_customizer_pool(world, player):
if 'Bomb Upgrade (+10)' not in pool: if 'Bomb Upgrade (+10)' not in pool:
missing_items.append('Bomb Upgrade (+10)') missing_items.append('Bomb Upgrade (+10)')
if world.swords[player] != 'swordless': if world.swords[player] not in ['swordless', 'swordless_b']:
beam_swords = {'Master Sword', 'Tempered Sword', 'Golden Sword'} beam_swords = {'Master Sword', 'Tempered Sword', 'Golden Sword'}
sword_count = sum(1 for i in pool if i in 'Progressive Sword') sword_count = sum(1 for i in pool if i in 'Progressive Sword')
sword_count = 2 if next((i for i in pool if i in beam_swords), None) is not None else sword_count sword_count = 2 if next((i for i in pool if i in beam_swords), None) is not None else sword_count

View File

@@ -65,7 +65,7 @@ def get_random_ganon_item(swordmode):
"somaria", "somaria",
"byrna", "byrna",
] ]
if swordmode == "swordless": if swordmode in ["swordless", "swordless_b"]:
options.remove("bombos") options.remove("bombos")
options.remove("ether") options.remove("ether")
options.remove("quake") options.remove("quake")

2
Rom.py
View File

@@ -2635,7 +2635,7 @@ def write_strings(rom, world, player, team):
prog_bow_locs = world.find_items('Progressive Bow', player) prog_bow_locs = world.find_items('Progressive Bow', player)
distinguished_prog_bow_loc = next((location for location in prog_bow_locs if location.item.code == 0x65), None) distinguished_prog_bow_loc = next((location for location in prog_bow_locs if location.item.code == 0x65), None)
progressive_silvers = world.difficulty_requirements[player].progressive_bow_limit >= 2 or world.swords[player] in ['swordless', 'pseudo', 'assured_pseudo'] progressive_silvers = world.difficulty_requirements[player].progressive_bow_limit >= 2 or world.swords[player] in ['swordless', 'swordless_b', 'pseudo', 'assured_pseudo']
if distinguished_prog_bow_loc: if distinguished_prog_bow_loc:
prog_bow_locs.remove(distinguished_prog_bow_loc) prog_bow_locs.remove(distinguished_prog_bow_loc)
hint_phrase = hint_text(distinguished_prog_bow_loc).replace("Ganon's", "my") hint_phrase = hint_text(distinguished_prog_bow_loc).replace("Ganon's", "my")