diff options
| author | fig02 <fig02srl@gmail.com> | 2022-12-24 13:55:17 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-12-24 13:55:17 -0500 |
| commit | 7927e7b33007eee68375ca2b940b8d2aa4063406 (patch) | |
| tree | 66c1c67b8c056b2abf00fb0fc4af138b84825e8b /tools | |
| parent | 92e03cf747933ea8dbdea0dd996c5d6ef7635ffe (diff) | |
z_demo documentation (#1327)
* commit old stuff
* progress
* progress
* progress
* progress
* more progress, renaming cues next
* small changes
* enum values added for all actions
* hardcoded values removed when possible
* commands renamed
* first pass of action -> cue
* fix some matches
* some more cleanup
* scriptPtr
* forgot one
* remove cue rot union
* more changes
* some more stuff
* more stuff
* fix matching issues
* some more things
* progress, starting to rename destinations
* small changes
* name some destinations
* more names
* need to switch branch
* progress
* first pass of destination names
* usages fixed
* use destination enum
* fix csdis
* format
* command descriptions
* revert accidental zap changes
* forgot some things
* use a single macro for CutsceneCameraPoint (idk why i didnt think of this sooner)
* typo
* review1
* clarify ruby/sapphire comment
* remove endframe for commands that dont use it
* some more review
* most review, but not all
* scriptPtr -> script, and another small change
* ocarina action
* remove +1 from light settings command, change comment
* actionIndex -> cueIdTemp (i guess)
* _SetCueX -> _SetXFromCue
* format
* tweak fade out seq arg names
* use spline terminology
* more dragorn and engineer review
* misc start/end frame note
* cleanup StartPosRotFromCue vs PosRotFromCue
* cleanup spline terminology
* sPrevCamId -> sReturnToCamId
* comment on debug cs data address
* Cutscene_Init -> Cutscene_InitContext
* single point types are not a list
* remove todo comment
* some more review
* rumble struct names
* some review
* more review
* missed one
* reword pointer comment
* even more review
* match transition terminology with z_play
* change condition and format
* frame count
* command specific structs with alignment
* anon review
* remove unneeded arg from time macro
* yeet `CsCmdGeneric`
* remove unused from single point types
* typo
* compromise attempt -- name endFrame everywhere
* fixes
* fix again
* copied the wrong note
* cutscene data note
* review, format
* compat defines
* idk whats going on man
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
Diffstat (limited to 'tools')
| -rwxr-xr-x | tools/csdis.py | 304 |
1 files changed, 152 insertions, 152 deletions
diff --git a/tools/csdis.py b/tools/csdis.py index b5aedb19c..ce0de398f 100755 --- a/tools/csdis.py +++ b/tools/csdis.py @@ -13,127 +13,127 @@ command_continue_stop = { 0xFF: "CS_CMD_STOP", } -cutscene_terminator_destinations = { - 0x00: "INVALID_DESTINATION_0", - 0x01: "CUTSCENE_MAP_GANON_HORSE", - 0x02: "CUTSCENE_MAP_THREE_GODESSES_POST_DEKU_TREE", - 0x03: "GERUDO_VALLEY_DIN", - 0x04: "DEATH_MOUNTAIN_TRAIL_NAYRU", - 0x05: "KOKIRI_FOREST_FARORE", - 0x06: "CUTSCENE_MAP_TRIFORCE_CREATION", - 0x07: "KOKIRI_FOREST_RECEIVE_KOKIRI_EMERALD", - 0x08: "TEMPLE_OF_TIME_AFTER_USE_MS", - 0x09: "GERUDO_VALLEY_DIN_2", - 0x0A: "LINKS_HOUSE_INTRO", - 0x0B: "KOKIRI_FOREST_INTRO", - 0x0C: "DEATH_MOUNTAIN_TRAIL_AFTER_GORON_RUBY", - 0x0D: "ZORAS_FOUNTAIN_AFTER_ZORAS_SAPPHIRE", - 0x0E: "KOKIRI_FOREST_AFTER_KOKIRI_EMERALD", - 0x0F: "TEMPLE_OF_TIME_KOKIRI_EMERALD", #unused - 0x10: "TEMPLE_OF_TIME_GORON_RUBY", #unused - 0x11: "TEMPLE_OF_TIME_ZORAS_SAPPHIRE", #unused - 0x12: "TEMPLE_OF_TIME_AFTER_USE_MS_FIRST", - 0x13: "DEATH_MOUNTAIN_TRAIL_AFTER_INTRO", - 0x14: "INVALID_DESTINATION_14", - 0x15: "LAKE_HYLIA_WATER_RISES", - 0x16: "DESERT_COLOSSUS_REQUIEM", - 0x17: "CUTSCENE_MAP_CURSE_YOU", - 0x18: "JABU_JABU_INTRO", - 0x19: "CHAMBER_OF_SAGES_LIGHT_MEDALLION", - 0x1A: "TEMPLE_OF_TIME_KOKIRI_EMERALD_2", #duplicate of 0x000F - 0x1B: "TEMPLE_OF_TIME_GORON_RUBY_2", #duplicate of 0x0010 - 0x1C: "TEMPLE_OF_TIME_ZORAS_SAPPHIRE_2", #duplicate of 0x0011 - 0x1D: "CHAMBER_OF_SAGES_FOREST_MEDALLION", - 0x1E: "CHAMBER_OF_SAGES_FIRE_MEDALLION", - 0x1F: "CHAMBER_OF_SAGES_WATER_MEDALLION", - 0x20: "HYRULE_FIELD_FLASHBACK", #lacs part 4 - 0x21: "HYRULE_FIELD_AFTER_LAKE_HYLIA_OWL", - 0x22: "CUTSCENE_MAP_GANON_AFTER_USE_MS", - 0x23: "HYRULE_FIELD_INTRO_ZELDA_ESCAPE", - 0x24: "INVALID_DESTINATION_24", - 0x25: "INVALID_DESTINATION_25", - 0x26: "CUTSCENE_MAP_SHEIKAH_LEGEND", #lacs part 2 - 0x27: "TEMPLE_OF_TIME_ZELDA_REVEAL", #lacs part 3 - 0x28: "TEMPLE_OF_TIME_GET_LIGHT_ARROWS", #lacs part 5 - 0x29: "LAKE_HYLIA_AFTER_BLUE_WARP", - 0x2A: "KAKARIKO_VILLAGE_DRAIN_WELL", - 0x2B: "WINDMILL_AFTER_DRAIN_WELL", - 0x2C: "TEMPLE_OF_TIME_AFTER_DOOR_OF_TIME_OPENS", - 0x2D: "INVALID_DESTINATION_2D", - 0x2E: "TEMPLE_OF_TIME_AFTER_USE_MS_FIRST_2", #duplicate of 0x0012 - 0x2F: "KAKARIKO_VILLAGE_NOCTURNE_PART_2", - 0x30: "DESERT_COLOSSUS_AFTER_REQUIEM", - 0x31: "TEMPLE_OF_TIME_AFTER_LIGHT_ARROWS", - 0x32: "KAKARIKO_VILLAGE_AFTER_NOCTURNE", - 0x33: "HYRULE_FIELD_IMPA_ESCORT_CS", - 0x34: "TEMPLE_OF_TIME_SONG_OF_TIME", - 0x35: "HYRULE_FIELD_AFTER_SONG_OF_TIME", - 0x36: "GERUDO_VALLEY_CREDITS", - 0x37: "GERUDO_FORTRESS_CREDITS", - 0x38: "KAKARIKO_VILLAGE_CREDITS", - 0x39: "DEATH_MOUNTAIN_TRAIL_CREDITS_1", - 0x3A: "GORON_CITY_CREDITS", #unused? - 0x3B: "LAKE_HYLIA_CREDITS", - 0x3C: "ZORAS_FOUNTAIN_CREDITS", #unused - 0x3D: "ZORAS_DOMAIN_CREDITS", - 0x3E: "KOKIRI_FOREST_CREDITS_1", - 0x3F: "KOKIRI_FOREST_CREDITS_2", - 0x40: "HYRULE_FIELD_CREDITS", - 0x41: "LON_LON_RANCH_CREDITS_1", - 0x42: "KAKARIKO_VILLAGE_AFTER_TRAIL_OWL", - 0x43: "HTRULE_FIELD_UNUSED_ENTRANCE", - 0x44: "CUTSCENE_MAP_FIRE", - 0x45: "KOKIRI_FOREST_POST_FOREST_MEDALLION", - 0x46: "DEATH_MOUNTAIN_TRAIL_CREDITS_2", - 0x47: "TEMPLE_OF_TIME_CREDITS", - 0x48: "ZELDAS_COURTYARD_CREDITS", - 0x49: "LON_LON_RANCH_CREDITS_1_2", #duplicate of 0x0041 - 0x4A: "LON_LON_RANCH_CREDITS_2", - 0x4B: "LON_LON_RANCH_CREDITS_3", - 0x4C: "LON_LON_RANCH_CREDITS_4", - 0x4D: "LON_LON_RANCH_CREDITS_5", - 0x4E: "LON_LON_RANCH_CREDITS_6", - 0x4F: "LON_LON_RANCH_NO_CS_1", - 0x50: "LON_LON_RANCH_NO_CS_2", - 0x51: "LON_LON_RANCH_NO_CS_3", - 0x52: "LON_LON_RANCH_NO_CS_4", - 0x53: "LON_LON_RANCH_NO_CS_5", - 0x54: "LON_LON_RANCH_NO_CS_6", - 0x55: "LON_LON_RANCH_NO_CS_7", - 0x56: "LON_LON_RANCH_NO_CS_8", - 0x57: "LON_LON_RANCH_NO_CS_9", - 0x58: "LON_LON_RANCH_NO_CS_10", - 0x59: "LON_LON_RANCH_NO_CS_11", - 0x5A: "LON_LON_RANCH_NO_CS_12", - 0x5B: "LON_LON_RANCH_NO_CS_13", - 0x5C: "LON_LON_RANCH_NO_CS_14", - 0x5D: "LON_LON_RANCH_NO_CS_15", - 0x5E: "LON_LON_RANCH_NO_CS_EPONAS_SONG", - 0x5F: "CONDITIONAL_DESTINATION", # more descriptive name? - 0x60: "DESERT_COLOSSUS_SPIRIT_BLUE_WARP", - 0x61: "GRAVEYARD_AFTER_SHADOW_BLUE_WARP", - 0x62: "DEATH_MOUNTAIN_CRATER_AFTER_FIRE_BLUE_WARP", - 0x63: "SACRED_FOREST_MEADOW_AFTER_FOREST_BLUE_WARP", - 0x64: "KOKIRI_FOREST_AFTER_FOREST_BLUE_WARP", - 0x65: "DESERT_COLOSSUS_AFTER_SILVER_GAUNTLETS", - 0x66: "TEMPLE_OF_TIME_FRONT_OF_PEDESTAL", - 0x67: "HYRULE_FIELD_TITLE_SCREEN", - 0x68: "SPIRIT_TEMPLE_BOSS_TITLE_SCREEN", - 0x69: "GRAVEYARD_SUNS_SONG", - 0x6A: "ROYAL_FAMILYS_TOMB_SUNS_SONG", - 0x6B: "GANONS_CASTLE_AFTER_FOREST_TRIAL", - 0x6C: "GANONS_CASTLE_AFTER_WATER_TRIAL", - 0x6D: "GANONS_CASTLE_AFTER_SHADOW_TRIAL", - 0x6E: "GANONS_CASTLE_AFTER_FIRE_TRIAL", - 0x6F: "GANONS_CASTLE_AFTER_LIGHT_TRIAL", - 0x70: "GANONS_CASTLE_AFTER_SPIRIT_TRIAL", - 0x71: "GANONS_CASTLE_DISPEL_BARRIER_IF_CONDITIONS", - 0x72: "HYRULE_FIELD_INTRO", - 0x73: "HYRULE_FIELD_AFTER_IMPA_ESCORT", - 0x74: "DESERT_COLOSSUS_SPIRIT_BLUE_WARP_2", - 0x75: "HYRULE_FIELD_SKY", - 0x76: "GANON_BATTLE_TOWER_COLLAPSE", - 0x77: "ZELDAS_COURTYARD_RECEIVE_LETTER", +cutscene_destinations = { + 0x00: "CS_DEST_UNIMPLEMENTED_0", + 0x01: "CS_DEST_CUTSCENE_MAP_GANON_HORSE", + 0x02: "CS_DEST_CUTSCENE_MAP_THREE_GODDESSES", + 0x03: "CS_DEST_GERUDO_VALLEY_DIN_PART_1", + 0x04: "CS_DEST_DEATH_MOUNTAIN_TRAIL_NAYRU", + 0x05: "CS_DEST_KOKIRI_FOREST_FARORE", + 0x06: "CS_DEST_CUTSCENE_MAP_TRIFORCE_CREATION", + 0x07: "CS_DEST_KOKIRI_FOREST_RECEIVE_KOKIRI_EMERALD", + 0x08: "CS_DEST_TEMPLE_OF_TIME_FROM_MASTER_SWORD", + 0x09: "CS_DEST_GERUDO_VALLEY_DIN_PART_2", + 0x0A: "CS_DEST_LINKS_HOUSE_INTRO", + 0x0B: "CS_DEST_KOKIRI_FOREST_INTRO", + 0x0C: "CS_DEST_DEATH_MOUNTAIN_TRAIL_FROM_GORON_RUBY", + 0x0D: "CS_DEST_ZORAS_FOUNTAIN_FROM_ZORAS_SAPPHIRE", + 0x0E: "CS_DEST_KOKIRI_FOREST_FROM_KOKIRI_EMERALD", + 0x0F: "CS_DEST_TEMPLE_OF_TIME_KOKIRI_EMERALD_RESTORED", + 0x10: "CS_DEST_TEMPLE_OF_TIME_GORON_RUBY_RESTORED", + 0x11: "CS_DEST_TEMPLE_OF_TIME_ZORAS_SAPPHIRE_RESTORED", + 0x12: "CS_DEST_TEMPLE_OF_TIME_AFTER_LIGHT_MEDALLION", + 0x13: "CS_DEST_DEATH_MOUNTAIN_TRAIL", + 0x14: "CS_DEST_UNIMPLEMENTED_14", + 0x15: "CS_DEST_LAKE_HYLIA_WATER_RESTORED", + 0x16: "CS_DEST_DESERT_COLOSSUS_REQUIEM", + 0x17: "CS_DEST_CUTSCENE_MAP_GANONDORF_DEFEATED_CREDITS", + 0x18: "CS_DEST_JABU_JABU", + 0x19: "CS_DEST_CHAMBER_OF_SAGES_LIGHT_MEDALLION", + 0x1A: "CS_DEST_TEMPLE_OF_TIME_KOKIRI_EMERALD_RESTORED_2", + 0x1B: "CS_DEST_TEMPLE_OF_TIME_GORON_RUBY_RESTORED_2", + 0x1C: "CS_DEST_TEMPLE_OF_TIME_ZORAS_SAPPHIRE_RESTORED_2", + 0x1D: "CS_DEST_CHAMBER_OF_SAGES_FOREST_MEDALLION", + 0x1E: "CS_DEST_CHAMBER_OF_SAGES_FIRE_MEDALLION", + 0x1F: "CS_DEST_CHAMBER_OF_SAGES_WATER_MEDALLION", + 0x20: "CS_DEST_HYRULE_FIELD_FLASHBACK", + 0x21: "CS_DEST_HYRULE_FIELD_FROM_ZELDA_ESCAPE", + 0x22: "CS_DEST_CUTSCENE_MAP_GANONDORF_FROM_MASTER_SWORD", + 0x23: "CS_DEST_HYRULE_FIELD_INTRO_DREAM", + 0x24: "CS_DEST_UNIMPLEMENTED_24", + 0x25: "CS_DEST_UNIMPLEMENTED_25", + 0x26: "CS_DEST_CUTSCENE_MAP_SHEIKAH_LEGEND", + 0x27: "CS_DEST_TEMPLE_OF_TIME_ZELDA_REVEAL", + 0x28: "CS_DEST_TEMPLE_OF_TIME_GET_LIGHT_ARROWS", + 0x29: "CS_DEST_LAKE_HYLIA_FROM_LAKE_RESTORED", + 0x2A: "CS_DEST_KAKARIKO_VILLAGE_DRAIN_WELL", + 0x2B: "CS_DEST_WINDMILL_FROM_WELL_DRAINED", + 0x2C: "CS_DEST_TEMPLE_OF_TIME_FROM_ALL_STONES_RESTORED", + 0x2D: "CS_DEST_UNIMPLEMENTED_2D", + 0x2E: "CS_DEST_TEMPLE_OF_TIME_AFTER_LIGHT_MEDALLION_ALT", + 0x2F: "CS_DEST_KAKARIKO_VILLAGE_NOCTURNE_PART_2", + 0x30: "CS_DEST_DESERT_COLOSSUS_FROM_REQUIEM", + 0x31: "CS_DEST_TEMPLE_OF_TIME_FROM_LIGHT_ARROWS", + 0x32: "CS_DEST_KAKARIKO_VILLAGE_FROM_NOCTURNE", + 0x33: "CS_DEST_HYRULE_FIELD_FROM_ZELDAS_COURTYARD", + 0x34: "CS_DEST_TEMPLE_OF_TIME_SONG_OF_TIME", + 0x35: "CS_DEST_HYRULE_FIELD_FROM_SONG_OF_TIME", + 0x36: "CS_DEST_GERUDO_VALLEY_CREDITS", + 0x37: "CS_DEST_GERUDO_FORTRESS_CREDITS", + 0x38: "CS_DEST_KAKARIKO_VILLAGE_CREDITS", + 0x39: "CS_DEST_DEATH_MOUNTAIN_TRAIL_CREDITS_PART_1", + 0x3A: "CS_DEST_GORON_CITY_CREDITS", + 0x3B: "CS_DEST_LAKE_HYLIA_CREDITS", + 0x3C: "CS_DEST_ZORAS_FOUNTAIN_CREDITS", + 0x3D: "CS_DEST_ZORAS_DOMAIN_CREDITS", + 0x3E: "CS_DEST_KOKIRI_FOREST_CREDITS_PART_1", + 0x3F: "CS_DEST_KOKIRI_FOREST_CREDITS_PART_2", + 0x40: "CS_DEST_HYRULE_FIELD_CREDITS", + 0x41: "CS_DEST_LON_LON_RANCH_CREDITS_PART_1_ALT", + 0x42: "CS_DEST_KAKARIKO_VILLAGE_FROM_TRAIL_OWL", + 0x43: "CS_DEST_HYRULE_FIELD_FROM_LAKE_HYLIA_OWL", + 0x44: "CS_DEST_CUTSCENE_MAP_DEKU_SPROUT_PART_2", + 0x45: "CS_DEST_KOKIRI_FOREST_DEKU_SPROUT_PART_3", + 0x46: "CS_DEST_DEATH_MOUNTAIN_TRAIL_CREDITS_PART_2", + 0x47: "CS_DEST_TEMPLE_OF_TIME_CREDITS", + 0x48: "CS_DEST_ZELDAS_COURTYARD_CREDITS", + 0x49: "CS_DEST_LON_LON_RANCH_CREDITS_PART_1", + 0x4A: "CS_DEST_LON_LON_RANCH_CREDITS_PART_2", + 0x4B: "CS_DEST_LON_LON_RANCH_CREDITS_PART_3", + 0x4C: "CS_DEST_LON_LON_RANCH_CREDITS_PART_4", + 0x4D: "CS_DEST_LON_LON_RANCH_CREDITS_PART_5", + 0x4E: "CS_DEST_LON_LON_RANCH_CREDITS_PART_6", + 0x4F: "CS_DEST_LON_LON_RANCH_1", + 0x50: "CS_DEST_LON_LON_RANCH_2", + 0x51: "CS_DEST_LON_LON_RANCH_3", + 0x52: "CS_DEST_LON_LON_RANCH_4", + 0x53: "CS_DEST_LON_LON_RANCH_5", + 0x54: "CS_DEST_LON_LON_RANCH_6", + 0x55: "CS_DEST_LON_LON_RANCH_7", + 0x56: "CS_DEST_LON_LON_RANCH_8", + 0x57: "CS_DEST_LON_LON_RANCH_9", + 0x58: "CS_DEST_LON_LON_RANCH_10", + 0x59: "CS_DEST_LON_LON_RANCH_11", + 0x5A: "CS_DEST_LON_LON_RANCH_12", + 0x5B: "CS_DEST_LON_LON_RANCH_13", + 0x5C: "CS_DEST_LON_LON_RANCH_14", + 0x5D: "CS_DEST_LON_LON_RANCH_15", + 0x5E: "CS_DEST_LON_LON_RANCH_FROM_EPONAS_SONG", + 0x5F: "CS_DEST_STONES_RESTORED_CONDITIONAL", + 0x60: "CS_DEST_DESERT_COLOSSUS_FROM_CHAMBER_OF_SAGES", + 0x61: "CS_DEST_GRAVEYARD_FROM_CHAMBER_OF_SAGES", + 0x62: "CS_DEST_DEATH_MOUNTAIN_CRATER_FROM_CHAMBER_OF_SAGES", + 0x63: "CS_DEST_SACRED_FOREST_MEADOW_WARP_PAD", + 0x64: "CS_DEST_KOKIRI_FOREST_FROM_CHAMBER_OF_SAGES", + 0x65: "CS_DEST_DESERT_COLOSSUS_FROM_NABOORU_CAPTURE", + 0x66: "CS_DEST_TEMPLE_OF_TIME_FRONT_OF_PEDESTAL", + 0x67: "CS_DEST_HYRULE_FIELD_TITLE_SCREEN", + 0x68: "CS_DEST_TITLE_SCREEN_DEMO", + 0x69: "CS_DEST_GRAVEYARD_SUNS_SONG_PART_2", + 0x6A: "CS_DEST_ROYAL_FAMILYS_TOMB_SUNS_SONG_PART_3", + 0x6B: "CS_DEST_GANONS_CASTLE_DISPEL_FOREST_BEAM", + 0x6C: "CS_DEST_GANONS_CASTLE_DISPEL_WATER_BEAM", + 0x6D: "CS_DEST_GANONS_CASTLE_DISPEL_SHADOW_BEAM", + 0x6E: "CS_DEST_GANONS_CASTLE_DISPEL_FIRE_BEAM", + 0x6F: "CS_DEST_GANONS_CASTLE_DISPEL_LIGHT_BEAM", + 0x70: "CS_DEST_GANONS_CASTLE_DISPEL_SPIRIT_BEAM", + 0x71: "CS_DEST_GANONS_CASTLE_DISPEL_BARRIER_CONDITONAL", + 0x72: "CS_DEST_HYRULE_FIELD_FROM_FAIRY_OCARINA", + 0x73: "CS_DEST_HYRULE_FIELD_FROM_IMPA_ESCORT", + 0x74: "CS_DEST_FROM_RAURU_FINAL_MESSAGE_CONDITIONAL", + 0x75: "CS_DEST_HYRULE_FIELD_CREDITS_SKY", + 0x76: "CS_DEST_GANON_BATTLE_TOWER_COLLAPSE", + 0x77: "CS_DEST_ZELDAS_COURTYARD_RECEIVE_LETTER", } ocarina_action_ids = { @@ -228,26 +228,26 @@ cutscene_command_macros = { ("CS_MISC_LIST(%w1:1:s)", 2, None, 0, "CS_MISC(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x, %w1:3:x, %w1:4:x, %w1:5:x, %w1:6:x, %w1:7:x, %w1:8:x, %w1:9:x, %w1:10:x, %w1:11:x, %w1:12:x)", 12), 4: - ("CS_LIGHTING_LIST(%w1:1:s)", 2, None, 0, - "CS_LIGHTING(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x, %w1:3:x, %w1:4:x, %w1:5:x, %w1:6:x, %w1:7:x, %w1:8:x, %w1:9:x)", 12), + ("CS_LIGHT_SETTING_LIST(%w1:1:s)", 2, None, 0, + "CS_LIGHT_SETTING(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x, %w1:3:x, %w1:4:x, %w1:5:x, %w1:6:x, %w1:7:x, %w1:8:x, %w1:9:x)", 12), 86: - ("CS_PLAY_BGM_LIST(%w1:1:s)", 2, None, 0, - "CS_PLAY_BGM(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x, %w1:3:x, %w1:4:x, %w1:5:x, %w1:6:x, %w1:7:x, %w1:8:x, %w1:9:x)", 12), + ("CS_START_SEQ_LIST(%w1:1:s)", 2, None, 0, + "CS_START_SEQ(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x, %w1:3:x, %w1:4:x, %w1:5:x, %w1:6:x, %w1:7:x, %w1:8:x, %w1:9:x)", 12), 87: - ("CS_STOP_BGM_LIST(%w1:1:s)", 2, None, 0, - "CS_STOP_BGM(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x, %w1:3:x, %w1:4:x, %w1:5:x, %w1:6:x, %w1:7:x, %w1:8:x, %w1:9:x)", 12), + ("CS_STOP_SEQ_LIST(%w1:1:s)", 2, None, 0, + "CS_STOP_SEQ(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x, %w1:3:x, %w1:4:x, %w1:5:x, %w1:6:x, %w1:7:x, %w1:8:x, %w1:9:x)", 12), 124: - ("CS_FADE_BGM_LIST(%w1:1:s)", 2, None, 0, - "CS_FADE_BGM(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x, %w1:3:x, %w1:4:x, %w1:5:x, %w1:6:x, %w1:7:x, %w1:8:x, %w1:9:x)", 12), + ("CS_FADE_OUT_SEQ_LIST(%w1:1:s)", 2, None, 0, + "CS_FADE_OUT_SEQ(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x, %w1:3:x, %w1:4:x, %w1:5:x, %w1:6:x, %w1:7:x, %w1:8:x, %w1:9:x)", 12), 9: - ("CS_CMD_09_LIST(%w1:1:s)", 2, None, 0, - "CS_CMD_09(%h2:1:x, %h1:1:s, %h2:2:s, %b2:2:x, %b1:2:x, %b4:3:x, %b3:3:x, %h1:3:x)", 3), + ("CS_RUMBLE_CONTROLLER_LIST(%w1:1:s)", 2, None, 0, + "CS_RUMBLE_CONTROLLER(%h2:1:x, %h1:1:s, %h2:2:s, %b2:2:x, %b1:2:x, %b4:3:x, %b3:3:x, %h1:3:x)", 3), 140: ("CS_TIME_LIST(%w1:1:s)", 2, None, 0, "CS_TIME(%h2:1:x, %h1:1:s, %h2:2:s, %b2:2:x, %b1:2:x, %w1:3:x)", 3), 10: - ("CS_PLAYER_ACTION_LIST(%w1:1:s)", 2, None, 0, - "CS_PLAYER_ACTION(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x, %h2:3:x, %h1:3:x, %w1:4:s, %w1:5:s, %w1:6:s, %w1:7:s, %w1:8:s, %w1:9:s, %w1:10:f, %w1:11:f, %w1:12:f)", 12), + ("CS_PLAYER_CUE_LIST(%w1:1:s)", 2, None, 0, + "CS_PLAYER_CUE(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x, %h2:3:x, %h1:3:x, %w1:4:s, %w1:5:s, %w1:6:s, %w1:7:s, %w1:8:s, %w1:9:s, %w1:10:f, %w1:11:f, %w1:12:f)", 12), (15,17,18,23,34,39,46,76,85,93,105,107,110,119,123,138,139,144, # npc action 1 14,16,24,35,40,48,64,68,70,78,80,94,116,118,120,125,131,141, # npc action 2 25,36,41,50,67,69,72,74,81,106,117,121,126,132, # npc action 3 @@ -258,34 +258,34 @@ cutscene_command_macros = { 49,60,89,111,114,134,142, # npc action 8 62, # npc action 9 143): # npc action 10 - ("CS_NPC_ACTION_LIST(%w1:0:s, %w1:1:s)", 2, None, 0, - "CS_NPC_ACTION(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x, %h2:3:x, %h1:3:x, %w1:4:s, %w1:5:s, %w1:6:s, %w1:7:s, %w1:8:s, %w1:9:s, %w1:10:f, %w1:11:f, %w1:12:f)", 12), + ("CS_ACTOR_CUE_LIST(%w1:0:s, %w1:1:s)", 2, None, 0, + "CS_ACTOR_CUE(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x, %h2:3:x, %h1:3:x, %w1:4:s, %w1:5:s, %w1:6:s, %w1:7:s, %w1:8:s, %w1:9:s, %w1:10:f, %w1:11:f, %w1:12:f)", 12), 1: - ("CS_CAM_EYE_LIST(%h1:1:s, %h2:2:s)", 3, 0, None, - "CS_CAM_EYE(%b4:1:e0, %b3:1:x, %h1:1:s, %w1:2:f, %h2:3:s, %h1:3:s, %h2:4:s, %h1:4:x)", 4), + ("CS_CAM_EYE_SPLINE(%h1:1:s, %h2:2:s)", 3, 0, None, + "CS_CAM_POINT(%b4:1:e0, %b3:1:x, %h1:1:s, %w1:2:f, %h2:3:s, %h1:3:s, %h2:4:s, %h1:4:x)", 4), 5: - ("CS_CAM_EYE_REL_TO_PLAYER_LIST(%h1:1:s, %h2:2:s)", 3, 0, None, - "CS_CAM_EYE_REL_TO_PLAYER(%b4:1:e0, %b3:1:x, %h1:1:s, %w1:2:f, %h2:3:s, %h1:3:s, %h2:4:s, %h1:4:x)", 4), + ("CS_CAM_EYE_SPLINE_REL_TO_PLAYER(%h1:1:s, %h2:2:s)", 3, 0, None, + "CS_CAM_POINT(%b4:1:e0, %b3:1:x, %h1:1:s, %w1:2:f, %h2:3:s, %h1:3:s, %h2:4:s, %h1:4:x)", 4), 2: - ("CS_CAM_AT_LIST(%h1:1:s, %h2:2:s)", 3, 0, None, - "CS_CAM_AT(%b4:1:e0, %b3:1:x, %h1:1:s, %w1:2:f, %h2:3:s, %h1:3:s, %h2:4:s, %h1:4:x)", 4), + ("CS_CAM_AT_SPLINE(%h1:1:s, %h2:2:s)", 3, 0, None, + "CS_CAM_POINT(%b4:1:e0, %b3:1:x, %h1:1:s, %w1:2:f, %h2:3:s, %h1:3:s, %h2:4:s, %h1:4:x)", 4), 6: - ("CS_CAM_AT_REL_TO_PLAYER_LIST(%h1:1:s, %h2:2:s)", 3, 0, None, - "CS_CAM_AT_REL_TO_PLAYER(%b4:1:e0, %b3:1:x, %h1:1:s, %w1:2:f, %h2:3:s, %h1:3:s, %h2:4:s, %h1:4:x)", 4), + ("CS_CAM_AT_SPLINE_REL_TO_PLAYER(%h1:1:s, %h2:2:s)", 3, 0, None, + "CS_CAM_POINT(%b4:1:e0, %b3:1:x, %h1:1:s, %w1:2:f, %h2:3:s, %h1:3:s, %h2:4:s, %h1:4:x)", 4), 7: - ("CS_CMD_07_LIST(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x)", 3, None, -1, - "CS_CMD_07(%b4:1:e0, %b3:1:x, %h1:1:s, %w1:2:f, %h2:3:s, %h1:3:s, %h2:4:s, %h1:4:x)", 4), + ("CS_CAM_EYE_LIST(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x)", 3, None, -1, + "CS_CAM_POINT(%b4:1:e0, %b3:1:x, %h1:1:s, %w1:2:f, %h2:3:s, %h1:3:s, %h2:4:s, %h1:4:x)", 4), 8: - ("CS_CMD_08_LIST(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x)", 3, None, -1, - "CS_CMD_08(%b4:1:e0, %b3:1:x, %h1:1:s, %w1:2:f, %h2:3:s, %h1:3:s, %h2:4:s, %h1:4:x)", 4), + ("CS_CAM_AT_LIST(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x)", 3, None, -1, + "CS_CAM_POINT(%b4:1:e0, %b3:1:x, %h1:1:s, %w1:2:f, %h2:3:s, %h1:3:s, %h2:4:s, %h1:4:x)", 4), 1000: - ("CS_TERMINATOR(%h2:2:e1, %h1:2:s, %h2:3:s)", 4, None, None, + ("CS_DESTINATION(%h2:2:e1, %h1:2:s, %h2:3:s)", 4, None, None, None, None), 19: ("CS_TEXT_LIST(%w1:1:s)", 2, None, 0, "__SPECIAL(CS_TEXT_LIST)", 3), 45: - ("CS_SCENE_TRANS_FX(%h2:2:x, %h1:2:s, %h2:3:s)", 4, None, None, + ("CS_TRANSITION(%h2:2:x, %h1:2:s, %h2:3:s)", 4, None, None, None, None), } @@ -389,7 +389,7 @@ def format_arg(arg, words): if enum_no == 0: result = command_continue_stop[unsigned_value] elif enum_no == 1: - result = cutscene_terminator_destinations[unsigned_value] + result = cutscene_destinations[unsigned_value] elif enum_no == 2: result = ocarina_action_ids[unsigned_value] elif format_type == "u": @@ -412,9 +412,9 @@ def format_cmd(cmd, words): if get_short_unsigned(words[1], 0) == 0xFFFF: cmd = "CS_TEXT_NONE(%h1:1:s, %h2:2:s)" elif get_short(words[2], 1) == 2: - cmd = "CS_TEXT_LEARN_SONG(%h2:1:e2, %h1:1:s, %h2:2:s, %h2:3:x)" + cmd = "CS_TEXT_OCARINA_ACTION(%h2:1:e2, %h1:1:s, %h2:2:s, %h2:3:x)" else: - cmd = "CS_TEXT_DISPLAY_TEXTBOX(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x, %h2:3:x, %h1:3:x)" + cmd = "CS_TEXT(%h2:1:x, %h1:1:s, %h2:2:s, %h1:2:x, %h2:3:x, %h1:3:x)" for arg in args_list(cmd): cmd = cmd.replace(arg, format_arg(arg, words)) return cmd |
