From 28e56583326559fa9fdd273b96fb20d4b7e454c9 Mon Sep 17 00:00:00 2001 From: Garrett Cox Date: Mon, 16 Oct 2023 13:11:52 -0500 Subject: [PATCH] Add readable names to level defines table --- include/course_table.h | 4 +- include/level_table.h | 4 +- levels/course_defines.h | 56 ++++++++++++++------------- levels/level_defines.h | 79 ++++++++++++++++++++------------------- levels/level_headers.h.in | 4 +- levels/level_rules.mk | 4 +- levels/scripts.c | 14 +++---- src/audio/external.c | 12 +++--- src/game/camera.c | 8 ++-- src/game/save_file.c | 4 +- src/menu/title_screen.c | 48 ++++-------------------- 11 files changed, 106 insertions(+), 131 deletions(-) diff --git a/include/course_table.h b/include/course_table.h index c8963274..6ed26678 100644 --- a/include/course_table.h +++ b/include/course_table.h @@ -4,13 +4,13 @@ // Start of the 3 cap courses in a row. #define COURSE_CAP_COURSES COURSE_COTMC -#define DEFINE_COURSE(courseenum, _1) courseenum, +#define DEFINE_COURSE(courseenum, _1, _2) courseenum, #define DEFINE_COURSES_END() \ COURSE_BONUS_STAGES, \ COURSE_STAGES_MAX = COURSE_BONUS_STAGES - 1, \ COURSE_STAGES_COUNT = COURSE_STAGES_MAX, -#define DEFINE_BONUS_COURSE(courseenum, _1) courseenum, +#define DEFINE_BONUS_COURSE(courseenum, _1, _2) courseenum, enum CourseNum { #include "levels/course_defines.h" diff --git a/include/level_table.h b/include/level_table.h index b0c2c633..c486b246 100644 --- a/include/level_table.h +++ b/include/level_table.h @@ -4,8 +4,8 @@ // For LEVEL_NAME defines, see level_defines.h. // Please include this file if you want to use them. -#define STUB_LEVEL(_0, levelenum, _2, _3, _4, _5, _6, _7, _8) levelenum, -#define DEFINE_LEVEL(_0, levelenum, _2, _3, _4, _5, _6, _7, _8, _9, _10) levelenum, +#define STUB_LEVEL(_0, levelenum, _2, _3, _4, _5, _6, _7, _8, _9) levelenum, +#define DEFINE_LEVEL(_0, levelenum, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11) levelenum, enum LevelNum { LEVEL_NONE, diff --git a/levels/course_defines.h b/levels/course_defines.h index 600cead4..e2fbdfa8 100644 --- a/levels/course_defines.h +++ b/levels/course_defines.h @@ -9,31 +9,35 @@ * 2: The camera goes to a closeup of mario * 3: Bowser keys and the grand star * 4: Default, used for 100 coin stars, 8 red coin stars in bowser levels, and secret stars + * + * #region [PU] Added info for each course + * Argument 3: Human readable name of the course. + * #endregion */ -DEFINE_COURSE(COURSE_NONE, 0x44444440) // (0) Course Hub (Castle Grounds) -DEFINE_COURSE(COURSE_BOB, 0x00022240) // (1) Bob Omb Battlefield -DEFINE_COURSE(COURSE_WF, 0x00002040) // (2) Whomp's Fortress -DEFINE_COURSE(COURSE_JRB, 0x22222240) // (3) Jolly Rodger's Bay -DEFINE_COURSE(COURSE_CCM, 0x00220040) // (4) Cool Cool Mountain -DEFINE_COURSE(COURSE_BBH, 0x22222240) // (5) Big Boo's Haunt -DEFINE_COURSE(COURSE_HMC, 0x22222240) // (6) Hazy Maze Cave -DEFINE_COURSE(COURSE_LLL, 0x21212140) // (7) Lethal Lava Land -DEFINE_COURSE(COURSE_SSL, 0x20222240) // (8) Shifting Sand Land -DEFINE_COURSE(COURSE_DDD, 0x22222240) // (9) Dire Dire Docks -DEFINE_COURSE(COURSE_SL, 0x02020240) // (10) Snowman's Land -DEFINE_COURSE(COURSE_WDW, 0x22102240) // (11) Wet Dry World -DEFINE_COURSE(COURSE_TTM, 0x00000040) // (12) Tall Tall Mountain -DEFINE_COURSE(COURSE_THI, 0x11112140) // (13) Tiny Huge Island -DEFINE_COURSE(COURSE_TTC, 0x22222240) // (14) Tick Tock Clock -DEFINE_COURSE(COURSE_RR, 0x00000040) // (15) Rainbow Ride +DEFINE_COURSE( COURSE_NONE, 0x44444440, "Course Hub (Castle Grounds)") // (0) +DEFINE_COURSE( COURSE_BOB, 0x00022240, "Bob Omb Battlefield") // (1) +DEFINE_COURSE( COURSE_WF, 0x00002040, "Whomp's Fortress") // (2) +DEFINE_COURSE( COURSE_JRB, 0x22222240, "Jolly Rodger's Bay") // (3) +DEFINE_COURSE( COURSE_CCM, 0x00220040, "Cool Cool Mountain") // (4) +DEFINE_COURSE( COURSE_BBH, 0x22222240, "Big Boo's Haunt") // (5) +DEFINE_COURSE( COURSE_HMC, 0x22222240, "Hazy Maze Cave") // (6) +DEFINE_COURSE( COURSE_LLL, 0x21212140, "Lethal Lava Land") // (7) +DEFINE_COURSE( COURSE_SSL, 0x20222240, "Shifting Sand Land") // (8) +DEFINE_COURSE( COURSE_DDD, 0x22222240, "Dire Dire Docks") // (9) +DEFINE_COURSE( COURSE_SL, 0x02020240, "Snowman's Land") // (10) +DEFINE_COURSE( COURSE_WDW, 0x22102240, "Wet Dry World") // (11) +DEFINE_COURSE( COURSE_TTM, 0x00000040, "Tall Tall Mountain") // (12) +DEFINE_COURSE( COURSE_THI, 0x11112140, "Tiny Huge Island") // (13) +DEFINE_COURSE( COURSE_TTC, 0x22222240, "Tick Tock Clock") // (14) +DEFINE_COURSE( COURSE_RR, 0x00000040, "Rainbow Ride") // (15) DEFINE_COURSES_END() -DEFINE_BONUS_COURSE(COURSE_BITDW, 0x34444440) // (16) Bowser in the Dark World -DEFINE_BONUS_COURSE(COURSE_BITFS, 0x34444440) // (17) Bowser in the Fire Sea -DEFINE_BONUS_COURSE(COURSE_BITS, 0x34444440) // (18) Bowser in the Sky -DEFINE_BONUS_COURSE(COURSE_PSS, 0x24444440) // (19) Princess's Secret Slide -DEFINE_BONUS_COURSE(COURSE_COTMC, 0x44444440) // (20) Cavern of the Metal Cap -DEFINE_BONUS_COURSE(COURSE_TOTWC, 0x04444440) // (21) Tower of the Wing Cap -DEFINE_BONUS_COURSE(COURSE_VCUTM, 0x24444440) // (22) Vanish Cap Under the Moat -DEFINE_BONUS_COURSE(COURSE_WMOTR, 0x04444440) // (23) Winged Mario over the Rainbow -DEFINE_BONUS_COURSE(COURSE_SA, 0x24444440) // (24) Secret Aquarium -DEFINE_BONUS_COURSE(COURSE_CAKE_END, 0x44444440) // (25) The End (Cake Scene) +DEFINE_BONUS_COURSE(COURSE_BITDW, 0x34444440, "Bowser in the Dark World") // (16) +DEFINE_BONUS_COURSE(COURSE_BITFS, 0x34444440, "Bowser in the Fire Sea") // (17) +DEFINE_BONUS_COURSE(COURSE_BITS, 0x34444440, "Bowser in the Sky") // (18) +DEFINE_BONUS_COURSE(COURSE_PSS, 0x24444440, "Princess's Secret Slide") // (19) +DEFINE_BONUS_COURSE(COURSE_COTMC, 0x44444440, "Cavern of the Metal Cap") // (20) +DEFINE_BONUS_COURSE(COURSE_TOTWC, 0x04444440, "Tower of the Wing Cap") // (21) +DEFINE_BONUS_COURSE(COURSE_VCUTM, 0x24444440, "Vanish Cap Under the Moat") // (22) +DEFINE_BONUS_COURSE(COURSE_WMOTR, 0x04444440, "Winged Mario over the Rainbow") // (23) +DEFINE_BONUS_COURSE(COURSE_SA, 0x24444440, "Secret Aquarium") // (24) +DEFINE_BONUS_COURSE(COURSE_CAKE_END, 0x44444440, "The End (Cake Scene)") // (25) diff --git a/levels/level_defines.h b/levels/level_defines.h index c14f2523..a46d3696 100644 --- a/levels/level_defines.h +++ b/levels/level_defines.h @@ -14,44 +14,47 @@ // Argument 7, 8, 9: Echo levels for individual areas. // Argument 10: Specify dynamic music tables for levels, if specified. _ for none. // Argument 11: Specify level camera table, if specified. _ for none. +// #region [PU] Added info for each level +// Argument 12: Human readable name of the level. +// #endregion // NOTE: Be sure to edit sZoomOutAreaMasks in camera.c, as there isnt a good way to macro those right now. // TODO: Figure something out for sZoomOutAreaMasks? -STUB_LEVEL( "", LEVEL_UNKNOWN_1, COURSE_NONE, 20000, 0x00, 0x00, 0x00, _, _) -STUB_LEVEL( "", LEVEL_UNKNOWN_2, COURSE_NONE, 20000, 0x00, 0x00, 0x00, _, _) -STUB_LEVEL( "", LEVEL_UNKNOWN_3, COURSE_NONE, 20000, 0x00, 0x00, 0x00, _, _) -DEFINE_LEVEL("TERESA OBAKE", LEVEL_BBH, COURSE_BBH, bbh, spooky, 28000, 0x28, 0x28, 0x28, sDynBbh, sCamBBH) -DEFINE_LEVEL("YYAMA1 % YSLD1", LEVEL_CCM, COURSE_CCM, ccm, snow, 17000, 0x10, 0x38, 0x38, _, sCamCCM) -DEFINE_LEVEL("SELECT ROOM", LEVEL_CASTLE, COURSE_NONE, castle_inside, inside, 20000, 0x20, 0x20, 0x30, _, sCamCastle) -DEFINE_LEVEL("HORROR DUNGEON", LEVEL_HMC, COURSE_HMC, hmc, cave, 16000, 0x28, 0x28, 0x28, sDynHmc, sCamHMC) -DEFINE_LEVEL("SABAKU % PYRMD", LEVEL_SSL, COURSE_SSL, ssl, generic, 15000, 0x08, 0x30, 0x30, _, sCamSSL) -DEFINE_LEVEL("BATTLE FIELD", LEVEL_BOB, COURSE_BOB, bob, generic, 15000, 0x08, 0x08, 0x08, _, _) -DEFINE_LEVEL("YUKIYAMA2", LEVEL_SL, COURSE_SL, sl, snow, 14000, 0x10, 0x28, 0x28, _, sCamSL) -DEFINE_LEVEL("POOL KAI", LEVEL_WDW, COURSE_WDW, wdw, grass, 17000, 0x10, 0x18, 0x18, sDynWdw, _) -DEFINE_LEVEL("WTDG % TINBOTU", LEVEL_JRB, COURSE_JRB, jrb, water, 20000, 0x10, 0x18, 0x18, sDynJrb, _) -DEFINE_LEVEL("BIG WORLD", LEVEL_THI, COURSE_THI, thi, grass, 20000, 0x0c, 0x0c, 0x20, _, sCamTHI) -DEFINE_LEVEL("CLOCK TOWER", LEVEL_TTC, COURSE_TTC, ttc, machine, 18000, 0x18, 0x18, 0x18, _, _) -DEFINE_LEVEL("RAINBOW CRUISE", LEVEL_RR, COURSE_RR, rr, sky, 20000, 0x20, 0x20, 0x20, _, sCamRR) -DEFINE_LEVEL("MAIN MAP", LEVEL_CASTLE_GROUNDS, COURSE_NONE, castle_grounds, outside, 25000, 0x08, 0x08, 0x08, _, _) -DEFINE_LEVEL("EXT1 YOKO SCRL", LEVEL_BITDW, COURSE_BITDW, bitdw, sky, 16000, 0x28, 0x28, 0x28, _, _) -DEFINE_LEVEL("EXT7 HORI MINI", LEVEL_VCUTM, COURSE_VCUTM, vcutm, outside, 30000, 0x28, 0x28, 0x28, _, _) -DEFINE_LEVEL("EXT2 TIKA LAVA", LEVEL_BITFS, COURSE_BITFS, bitfs, sky, 16000, 0x28, 0x28, 0x28, _, _) -DEFINE_LEVEL("EXT9 SUISOU", LEVEL_SA, COURSE_SA, sa, inside, 20000, 0x10, 0x10, 0x10, _, _) -DEFINE_LEVEL("EXT3 HEAVEN", LEVEL_BITS, COURSE_BITS, bits, sky, 16000, 0x28, 0x28, 0x28, _, _) -DEFINE_LEVEL("FIREB1 % INVLC", LEVEL_LLL, COURSE_LLL, lll, fire, 22000, 0x08, 0x30, 0x30, _, _) -DEFINE_LEVEL("WATER LAND", LEVEL_DDD, COURSE_DDD, ddd, water, 17000, 0x10, 0x20, 0x20, sDynDdd, _) -DEFINE_LEVEL("MOUNTAIN", LEVEL_WF, COURSE_WF, wf, grass, 13000, 0x08, 0x08, 0x08, _, _) -DEFINE_LEVEL("ENDING", LEVEL_ENDING, COURSE_CAKE_END, ending, generic, 20000, 0x00, 0x00, 0x00, _, _) -DEFINE_LEVEL("URANIWA", LEVEL_CASTLE_COURTYARD, COURSE_NONE, castle_courtyard, outside, 20000, 0x08, 0x08, 0x08, _, _) -DEFINE_LEVEL("EXT4 MINI SLID", LEVEL_PSS, COURSE_PSS, pss, mountain, 20000, 0x28, 0x28, 0x28, _, _) -DEFINE_LEVEL("IN THE FALL", LEVEL_COTMC, COURSE_COTMC, cotmc, cave, 18000, 0x28, 0x28, 0x28, _, sCamCotMC) -DEFINE_LEVEL("EXT6 MARIO FLY", LEVEL_TOTWC, COURSE_TOTWC, totwc, sky, 20000, 0x20, 0x20, 0x20, _, _) -DEFINE_LEVEL("KUPPA1", LEVEL_BOWSER_1, COURSE_BITDW, bowser_1, generic, VAL_DIFF, 0x40, 0x40, 0x40, _, _) -DEFINE_LEVEL("EXT8 BLUE SKY", LEVEL_WMOTR, COURSE_WMOTR, wmotr, generic, 20000, 0x28, 0x28, 0x28, _, _) -STUB_LEVEL( "", LEVEL_UNKNOWN_32, COURSE_NONE, 20000, 0x70, 0x00, 0x00, _, _) -DEFINE_LEVEL("KUPPA2", LEVEL_BOWSER_2, COURSE_BITFS, bowser_2, fire, VAL_DIFF, 0x40, 0x40, 0x40, _, _) -DEFINE_LEVEL("KUPPA3", LEVEL_BOWSER_3, COURSE_BITS, bowser_3, generic, VAL_DIFF, 0x40, 0x40, 0x40, _, _) -STUB_LEVEL( "", LEVEL_UNKNOWN_35, COURSE_NONE, 20000, 0x00, 0x00, 0x00, _, _) -DEFINE_LEVEL("DONKEY % SLID2", LEVEL_TTM, COURSE_TTM, ttm, mountain, 15000, 0x08, 0x08, 0x08, _, _) -STUB_LEVEL( "", LEVEL_UNKNOWN_37, COURSE_NONE, 20000, 0x00, 0x00, 0x00, _, _) -STUB_LEVEL( "", LEVEL_UNKNOWN_38, COURSE_NONE, 20000, 0x00, 0x00, 0x00, sDynUnk38, _) +STUB_LEVEL( "", LEVEL_UNKNOWN_1, COURSE_NONE, 20000, 0x00, 0x00, 0x00, _, _, "") +STUB_LEVEL( "", LEVEL_UNKNOWN_2, COURSE_NONE, 20000, 0x00, 0x00, 0x00, _, _, "") +STUB_LEVEL( "", LEVEL_UNKNOWN_3, COURSE_NONE, 20000, 0x00, 0x00, 0x00, _, _, "") +DEFINE_LEVEL("TERESA OBAKE", LEVEL_BBH, COURSE_BBH, bbh, spooky, 28000, 0x28, 0x28, 0x28, sDynBbh, sCamBBH, "Big Boos Haunt") +DEFINE_LEVEL("YYAMA1 % YSLD1", LEVEL_CCM, COURSE_CCM, ccm, snow, 17000, 0x10, 0x38, 0x38, _, sCamCCM, "Cool Cool Mountain") +DEFINE_LEVEL("SELECT ROOM", LEVEL_CASTLE, COURSE_NONE, castle_inside, inside, 20000, 0x20, 0x20, 0x30, _, sCamCastle, "Inside Peachs Castle") +DEFINE_LEVEL("HORROR DUNGEON", LEVEL_HMC, COURSE_HMC, hmc, cave, 16000, 0x28, 0x28, 0x28, sDynHmc, sCamHMC, "Hazy Maze Cave") +DEFINE_LEVEL("SABAKU % PYRMD", LEVEL_SSL, COURSE_SSL, ssl, generic, 15000, 0x08, 0x30, 0x30, _, sCamSSL, "Shifting Sand Land") +DEFINE_LEVEL("BATTLE FIELD", LEVEL_BOB, COURSE_BOB, bob, generic, 15000, 0x08, 0x08, 0x08, _, _, "Bobomb Battlefield") +DEFINE_LEVEL("YUKIYAMA2", LEVEL_SL, COURSE_SL, sl, snow, 14000, 0x10, 0x28, 0x28, _, sCamSL, "Snowmans Land") +DEFINE_LEVEL("POOL KAI", LEVEL_WDW, COURSE_WDW, wdw, grass, 17000, 0x10, 0x18, 0x18, sDynWdw, _, "Wet Dry World") +DEFINE_LEVEL("WTDG % TINBOTU", LEVEL_JRB, COURSE_JRB, jrb, water, 20000, 0x10, 0x18, 0x18, sDynJrb, _, "Jolly Roger Bay") +DEFINE_LEVEL("BIG WORLD", LEVEL_THI, COURSE_THI, thi, grass, 20000, 0x0c, 0x0c, 0x20, _, sCamTHI, "Tiny Huge Island") +DEFINE_LEVEL("CLOCK TOWER", LEVEL_TTC, COURSE_TTC, ttc, machine, 18000, 0x18, 0x18, 0x18, _, _, "Tick Tock Clock") +DEFINE_LEVEL("RAINBOW CRUISE", LEVEL_RR, COURSE_RR, rr, sky, 20000, 0x20, 0x20, 0x20, _, sCamRR, "Rainbow Ride") +DEFINE_LEVEL("MAIN MAP", LEVEL_CASTLE_GROUNDS, COURSE_NONE, castle_grounds, outside, 25000, 0x08, 0x08, 0x08, _, _, "Outside the Castle") +DEFINE_LEVEL("EXT1 YOKO SCRL", LEVEL_BITDW, COURSE_BITDW, bitdw, sky, 16000, 0x28, 0x28, 0x28, _, _, "Bowser in the Dark World") +DEFINE_LEVEL("EXT7 HORI MINI", LEVEL_VCUTM, COURSE_VCUTM, vcutm, outside, 30000, 0x28, 0x28, 0x28, _, _, "Vanish Cap Under the Moat") +DEFINE_LEVEL("EXT2 TIKA LAVA", LEVEL_BITFS, COURSE_BITFS, bitfs, sky, 16000, 0x28, 0x28, 0x28, _, _, "Bowser in the Fire Sea") +DEFINE_LEVEL("EXT9 SUISOU", LEVEL_SA, COURSE_SA, sa, inside, 20000, 0x10, 0x10, 0x10, _, _, "The Secret Aquarium") +DEFINE_LEVEL("EXT3 HEAVEN", LEVEL_BITS, COURSE_BITS, bits, sky, 16000, 0x28, 0x28, 0x28, _, _, "Bowser in the Sky") +DEFINE_LEVEL("FIREB1 % INVLC", LEVEL_LLL, COURSE_LLL, lll, fire, 22000, 0x08, 0x30, 0x30, _, _, "Lethal Lava Land") +DEFINE_LEVEL("WATER LAND", LEVEL_DDD, COURSE_DDD, ddd, water, 17000, 0x10, 0x20, 0x20, sDynDdd, _, "Dire Dire Docks") +DEFINE_LEVEL("MOUNTAIN", LEVEL_WF, COURSE_WF, wf, grass, 13000, 0x08, 0x08, 0x08, _, _, "Whomps Fortress") +DEFINE_LEVEL("ENDING", LEVEL_ENDING, COURSE_CAKE_END, ending, generic, 20000, 0x00, 0x00, 0x00, _, _, "The End") +DEFINE_LEVEL("URANIWA", LEVEL_CASTLE_COURTYARD, COURSE_NONE, castle_courtyard, outside, 20000, 0x08, 0x08, 0x08, _, _, "Castle Courtyard") +DEFINE_LEVEL("EXT4 MINI SLID", LEVEL_PSS, COURSE_PSS, pss, mountain, 20000, 0x28, 0x28, 0x28, _, _, "Secret Slide") +DEFINE_LEVEL("IN THE FALL", LEVEL_COTMC, COURSE_COTMC, cotmc, cave, 18000, 0x28, 0x28, 0x28, _, sCamCotMC, "Cavern of the Metal Cap") +DEFINE_LEVEL("EXT6 MARIO FLY", LEVEL_TOTWC, COURSE_TOTWC, totwc, sky, 20000, 0x20, 0x20, 0x20, _, _, "Tower of the Wing Cap") +DEFINE_LEVEL("KUPPA1", LEVEL_BOWSER_1, COURSE_BITDW, bowser_1, generic, VAL_DIFF, 0x40, 0x40, 0x40, _, _, "Bowser in the Dark World Boss") +DEFINE_LEVEL("EXT8 BLUE SKY", LEVEL_WMOTR, COURSE_WMOTR, wmotr, generic, 20000, 0x28, 0x28, 0x28, _, _, "Wing Mario Over the Rainbow") +STUB_LEVEL( "", LEVEL_UNKNOWN_32, COURSE_NONE, 20000, 0x70, 0x00, 0x00, _, _, "") +DEFINE_LEVEL("KUPPA2", LEVEL_BOWSER_2, COURSE_BITFS, bowser_2, fire, VAL_DIFF, 0x40, 0x40, 0x40, _, _, "Bowser in the Fire Sea Boss") +DEFINE_LEVEL("KUPPA3", LEVEL_BOWSER_3, COURSE_BITS, bowser_3, generic, VAL_DIFF, 0x40, 0x40, 0x40, _, _, "Bowser in the Sky Boss") +STUB_LEVEL( "", LEVEL_UNKNOWN_35, COURSE_NONE, 20000, 0x00, 0x00, 0x00, _, _, "") +DEFINE_LEVEL("DONKEY % SLID2", LEVEL_TTM, COURSE_TTM, ttm, mountain, 15000, 0x08, 0x08, 0x08, _, _, "Tall Tall Mountain") +STUB_LEVEL( "", LEVEL_UNKNOWN_37, COURSE_NONE, 20000, 0x00, 0x00, 0x00, _, _, "") +STUB_LEVEL( "", LEVEL_UNKNOWN_38, COURSE_NONE, 20000, 0x00, 0x00, 0x00, sDynUnk38, _, "") diff --git a/levels/level_headers.h.in b/levels/level_headers.h.in index 038608e7..b401ee68 100644 --- a/levels/level_headers.h.in +++ b/levels/level_headers.h.in @@ -1,7 +1,7 @@ // This file is to be processed by the Makefile to add #include "" before being included in build. -#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8) -#define DEFINE_LEVEL(_0, _1, _2, folder, _4, _5, _6, _7, _8, _9, _10) levels/folder/header.h +#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9) +#define DEFINE_LEVEL(_0, _1, _2, folder, _4, _5, _6, _7, _8, _9, _10, _11) levels/folder/header.h #include "levels/level_defines.h" diff --git a/levels/level_rules.mk b/levels/level_rules.mk index 28ef92a9..db21b827 100644 --- a/levels/level_rules.mk +++ b/levels/level_rules.mk @@ -1,5 +1,5 @@ -#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8) -#define DEFINE_LEVEL(_0, _1, _2, folder, texturebin, _5, _6, _7, _8, _9, _10) $(eval $(call level_rules,folder,texturebin)) +#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9) +#define DEFINE_LEVEL(_0, _1, _2, folder, texturebin, _5, _6, _7, _8, _9, _10, _11) $(eval $(call level_rules,folder,texturebin)) #include "levels/level_defines.h" diff --git a/levels/scripts.c b/levels/scripts.c index 2e2edeee..2775ec26 100644 --- a/levels/scripts.c +++ b/levels/scripts.c @@ -36,8 +36,8 @@ #include "level_table.h" -#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8) -#define DEFINE_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) + 3 +#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9) +#define DEFINE_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11) + 3 static const LevelScript script_exec_level_table[2 #include "levels/level_defines.h" ]; @@ -50,8 +50,8 @@ static const LevelScript goto_mario_head_regular[4]; static const LevelScript goto_mario_head_dizzy[4]; static const LevelScript script_L5[4]; -#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8) -#define DEFINE_LEVEL(_0, _1, _2, folder, _4, _5, _6, _7, _8, _9, _10) static const LevelScript script_exec_ ## folder [4 + 1]; +#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9) +#define DEFINE_LEVEL(_0, _1, _2, folder, _4, _5, _6, _7, _8, _9, _10, _11) static const LevelScript script_exec_ ## folder [4 + 1]; #include "level_defines.h" @@ -148,9 +148,9 @@ static const LevelScript script_L5[] = { // Include the level jumptable. -#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8) +#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9) -#define DEFINE_LEVEL(_0, levelenum, _2, folder, _4, _5, _6, _7, _8, _9, _10) JUMP_IF(OP_EQ, levelenum, script_exec_ ## folder), +#define DEFINE_LEVEL(_0, levelenum, _2, folder, _4, _5, _6, _7, _8, _9, _10, _11) JUMP_IF(OP_EQ, levelenum, script_exec_ ## folder), static const LevelScript script_exec_level_table[] = { GET_OR_SET(/*op*/ OP_GET, /*var*/ VAR_CURR_LEVEL_NUM), @@ -159,7 +159,7 @@ static const LevelScript script_exec_level_table[] = { }; #undef DEFINE_LEVEL -#define DEFINE_LEVEL(_0, _1, _2, folder, _4, _5, _6, _7, _8, _9, _10) \ +#define DEFINE_LEVEL(_0, _1, _2, folder, _4, _5, _6, _7, _8, _9, _10, _11) \ static const LevelScript script_exec_ ## folder [] = { \ EXECUTE(0x0E, _ ## folder ## SegmentRomStart, _ ## folder ## SegmentRomEnd, level_ ## folder ## _entry), \ RETURN(), \ diff --git a/src/audio/external.c b/src/audio/external.c index 0fc561ae..c165f4cc 100644 --- a/src/audio/external.c +++ b/src/audio/external.c @@ -207,8 +207,8 @@ s16 sDynNone[] = { SEQ_SOUND_PLAYER, 0 }; u8 sCurrentMusicDynamic = 0xff; u8 sBackgroundMusicForDynamics = SEQUENCE_NONE; -#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, leveldyn, _8) leveldyn, -#define DEFINE_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8, leveldyn, _10) leveldyn, +#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, leveldyn, _8, _9) leveldyn, +#define DEFINE_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8, leveldyn, _10, _11) leveldyn, #define _ sDynNone s16 *sLevelDynamics[LEVEL_COUNT] = { @@ -239,8 +239,8 @@ struct MusicDynamic sMusicDynamics[8] = { { 0xffff, 127, 100, 0x0000, 0, 100 }, // any (unused) }; -#define STUB_LEVEL(_0, _1, _2, _3, echo1, echo2, echo3, _7, _8) { echo1, echo2, echo3 }, -#define DEFINE_LEVEL(_0, _1, _2, _3, _4, _5, echo1, echo2, echo3, _9, _10) { echo1, echo2, echo3 }, +#define STUB_LEVEL(_0, _1, _2, _3, echo1, echo2, echo3, _7, _8, _9) { echo1, echo2, echo3 }, +#define DEFINE_LEVEL(_0, _1, _2, _3, _4, _5, echo1, echo2, echo3, _9, _10, _11) { echo1, echo2, echo3 }, u8 sLevelAreaReverbs[LEVEL_COUNT][3] = { { 0x00, 0x00, 0x00 }, // LEVEL_NONE @@ -249,8 +249,8 @@ u8 sLevelAreaReverbs[LEVEL_COUNT][3] = { #undef STUB_LEVEL #undef DEFINE_LEVEL -#define STUB_LEVEL(_0, _1, _2, volume, _4, _5, _6, _7, _8) volume, -#define DEFINE_LEVEL(_0, _1, _2, _3, _4, volume, _6, _7, _8, _9, _10) volume, +#define STUB_LEVEL(_0, _1, _2, volume, _4, _5, _6, _7, _8, _9) volume, +#define DEFINE_LEVEL(_0, _1, _2, _3, _4, volume, _6, _7, _8, _9, _10, _11) volume, u16 sLevelAcousticReaches[LEVEL_COUNT] = { 20000, // LEVEL_NONE diff --git a/src/game/camera.c b/src/game/camera.c index f99290f6..229913ae 100644 --- a/src/game/camera.c +++ b/src/game/camera.c @@ -6362,8 +6362,8 @@ struct CameraTrigger sCamBBH[] = { }; #define _ NULL -#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, cameratable) cameratable, -#define DEFINE_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, cameratable) cameratable, +#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, cameratable, _9) cameratable, +#define DEFINE_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, cameratable, _11) cameratable, /* * This table has an extra 2 levels after the last unknown_38 stub level. What I think @@ -10777,9 +10777,9 @@ struct Cutscene sCutsceneReadMessage[] = { #define DANCE_ENTRY(c) { DROT(c, 0), DROT(c, 1), DROT(c, 2), DROT(c, 3) }, -#define DEFINE_COURSE(_0, cutscenes) DANCE_ENTRY(cutscenes) +#define DEFINE_COURSE(_0, cutscenes, _2) DANCE_ENTRY(cutscenes) #define DEFINE_COURSES_END() -#define DEFINE_BONUS_COURSE(_0, cutscenes) DANCE_ENTRY(cutscenes) +#define DEFINE_BONUS_COURSE(_0, cutscenes, _2) DANCE_ENTRY(cutscenes) /** * Each hex digit is an index into sDanceCutsceneTable. diff --git a/src/game/save_file.c b/src/game/save_file.c index 732f756e..fdc9162f 100644 --- a/src/game/save_file.c +++ b/src/game/save_file.c @@ -32,8 +32,8 @@ u8 gCurrCourseStarFlags = 0; u8 gSpecialTripleJump = FALSE; -#define STUB_LEVEL(_0, _1, courseenum, _3, _4, _5, _6, _7, _8) courseenum, -#define DEFINE_LEVEL(_0, _1, courseenum, _3, _4, _5, _6, _7, _8, _9, _10) courseenum, +#define STUB_LEVEL(_0, _1, courseenum, _3, _4, _5, _6, _7, _8, _9) courseenum, +#define DEFINE_LEVEL(_0, _1, courseenum, _3, _4, _5, _6, _7, _8, _9, _10, _11) courseenum, s8 gLevelToCourseNumTable[] = { #include "levels/level_defines.h" diff --git a/src/menu/title_screen.c b/src/menu/title_screen.c index e8767110..12c0147c 100644 --- a/src/menu/title_screen.c +++ b/src/menu/title_screen.c @@ -24,8 +24,8 @@ * and a level select used for testing purposes. */ -#define STUB_LEVEL(textname, _1, _2, _3, _4, _5, _6, _7, _8) textname, -#define DEFINE_LEVEL(textname, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) textname, +#define STUB_LEVEL(textname, _1, _2, _3, _4, _5, _6, _7, _8, _9) textname, +#define DEFINE_LEVEL(textname, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11) textname, static char sLevelSelectStageNames[64][16] = { #include "levels/level_defines.h" @@ -33,46 +33,14 @@ static char sLevelSelectStageNames[64][16] = { #undef STUB_LEVEL #undef DEFINE_LEVEL +#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8, textname) textname, +#define DEFINE_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, textname) textname, + static char sBetterLevelSelectStageNames[38][31] = { - "", - "", - "", - "Big Boos Haunt", - "Cool Cool Mountain", - "Inside Peachs Castle", - "Hazy Maze Cave", - "Shifting Sand Land", - "Bobomb Battlefield", - "Snowmans Land", - "Wet Dry World", - "Jolly Roger Bay", - "Tiny Huge Island", - "Tick Tock Clock", - "Rainbow Ride", - "Outside the Castle", - "Bowser in the Dark World", - "Vanish Cap Under the Moat", - "Bowser in the Fire Sea", - "The Secret Aquarium", - "Bowser in the Sky", - "Lethal Lava Land", - "Dire Dire Docks", - "Whomps Fortress", - "The End", - "Castle Courtyard", - "Secret Slide", - "Cavern of the Metal Cap", - "Tower of the Wing Cap", - "Bowser in the Dark World Boss", - "Wing Mario Over the Rainbow", - "", - "Bowser in the Fire Sea Boss", - "Bowser in the Sky Boss", - "", - "Tall Tall Mountain", - "", - "", + #include "levels/level_defines.h" }; +#undef STUB_LEVEL +#undef DEFINE_LEVEL static u16 sDemoCountdown = 0; static s16 sPlayMarioGreeting = TRUE;