Added song instrument shuffle

This commit is contained in:
codemann8
2023-12-02 05:46:33 -06:00
parent d9e515429a
commit a1b570da62
19 changed files with 804 additions and 12 deletions

9
Rom.py
View File

@@ -32,7 +32,7 @@ from EntranceShuffle import door_addresses, exit_ids, ow_prize_table
from OverworldShuffle import default_flute_connections, flute_data
from InitialSram import InitialSram
from source.classes.SFX import randomize_sfx
from source.classes.SFX import randomize_sfx, randomize_songinstruments
from source.item.FillUtil import valid_pot_items
from source.dungeon.RoomList import Room0127
@@ -109,6 +109,9 @@ class LocalRom(object):
self.patch_base_rom()
self.orig_buffer = self.buffer.copy()
def read_byte(self, address):
return self.buffer[address]
def write_byte(self, address, value):
self.buffer[address] = value
@@ -1826,7 +1829,7 @@ def hud_format_text(text):
def apply_rom_settings(rom, beep, color, quickswap, fastmenu, disable_music, sprite,
ow_palettes, uw_palettes, reduce_flashing, shuffle_sfx, msu_resume):
ow_palettes, uw_palettes, reduce_flashing, shuffle_sfx, shuffle_songinstruments, msu_resume):
if not os.path.exists("data/sprites/official/001.link.1.zspr") and rom.orig_buffer:
dump_zspr(rom.orig_buffer[0x80000:0x87000], rom.orig_buffer[0xdd308:0xdd380],
@@ -1932,6 +1935,8 @@ def apply_rom_settings(rom, beep, color, quickswap, fastmenu, disable_music, spr
if shuffle_sfx:
randomize_sfx(rom)
if shuffle_songinstruments:
randomize_songinstruments(rom)
if isinstance(rom, LocalRom):
rom.write_crc()