From 46b7c210ef6d93ea9b5d22d6664ff43e008f1f02 Mon Sep 17 00:00:00 2001 From: Alex Bates Date: Wed, 10 Feb 2021 22:38:37 +0000 Subject: [PATCH] bActorNames --- src/battle/battle.h | 58 ++++++------ src/code_190B20.c | 217 ++++++++++++++++++++++++++++++++++++++++++- tools/msg/combine.py | 13 +-- tools/splat.yaml | 132 ++++++++++++++++++++++++++ 4 files changed, 379 insertions(+), 41 deletions(-) diff --git a/src/battle/battle.h b/src/battle/battle.h index 5a95d5a6e5..157c2ecbbc 100644 --- a/src/battle/battle.h +++ b/src/battle/battle.h @@ -16,8 +16,8 @@ #define ACTOR_TYPE_fuzzy 0x0A #define ACTOR_TYPE_koopa_troopa 0x0B #define ACTOR_TYPE_paratroopa 0x0C -#define ACTOR_TYPE_bobomb 0x0D -#define ACTOR_TYPE_bobomb2 0x0E +#define ACTOR_TYPE_bob_omb 0x0D +#define ACTOR_TYPE_bob_omb_dup 0x0E #define ACTOR_TYPE_bullet_bill 0x0F #define ACTOR_TYPE_bill_blaster 0x10 #define ACTOR_TYPE_cleft 0x11 @@ -51,7 +51,7 @@ #define ACTOR_TYPE_putrid_piranha 0x2D #define ACTOR_TYPE_lakitu 0x2E #define ACTOR_TYPE_spiny 0x2F -#define ACTOR_TYPE_monty_mole 0x30 +#define ACTOR_TYPE_monty_mole_boss 0x30 #define ACTOR_TYPE_bzzap 0x31 #define ACTOR_TYPE_crazee_dayzee 0x32 #define ACTOR_TYPE_amazy_dayzee 0x33 @@ -84,17 +84,17 @@ #define ACTOR_TYPE_flying_magikoopa 0x4E #define ACTOR_TYPE_magiclone 0x4F #define ACTOR_TYPE_flying_magiclone 0x50 -#define ACTOR_TYPE_r_magikoopa 0x51 -#define ACTOR_TYPE_flying_r_magikoopa 0x52 -#define ACTOR_TYPE_grn_magikoopa 0x53 -#define ACTOR_TYPE_flying_grn_magikoopa 0x54 -#define ACTOR_TYPE_y_magikoopa 0x55 -#define ACTOR_TYPE_flying_y_magikoopa 0x56 -#define ACTOR_TYPE_gry_magikoopa 0x57 -#define ACTOR_TYPE_flying_gry_magikoopa 0x58 -#define ACTOR_TYPE_w_magikoopa 0x59 -#define ACTOR_TYPE_flying_w_magikoopa 0x5A -#define ACTOR_TYPE_empty_mole_hole 0x6B +#define ACTOR_TYPE_red_magikoopa 0x51 +#define ACTOR_TYPE_flying_red_magikoopa 0x52 +#define ACTOR_TYPE_green_magikoopa 0x53 +#define ACTOR_TYPE_flying_green_magikoopa 0x54 +#define ACTOR_TYPE_yellow_magikoopa 0x55 +#define ACTOR_TYPE_flying_yellow_magikoopa 0x56 +#define ACTOR_TYPE_gray_magikoopa 0x57 +#define ACTOR_TYPE_flying_gray_magikoopa 0x58 +#define ACTOR_TYPE_white_magikoopa 0x59 +#define ACTOR_TYPE_flying_white_magikoopa 0x5A +#define ACTOR_TYPE_monty_hole 0x6B #define ACTOR_TYPE_player 0x6E #define ACTOR_TYPE_goombario 0x6F #define ACTOR_TYPE_kooper 0x70 @@ -127,28 +127,28 @@ #define ACTOR_TYPE_jr_troopa6 0x8D #define ACTOR_TYPE_jr_troopa_dup1 0x8E #define ACTOR_TYPE_jr_troopa_dup2 0x8F -#define ACTOR_TYPE_blue_goomba 0x90 -#define ACTOR_TYPE_red_goomba 0x91 +#define ACTOR_TYPE_blue_goomba_boss 0x90 +#define ACTOR_TYPE_red_goomba_boss 0x91 #define ACTOR_TYPE_goomba_king 0x92 #define ACTOR_TYPE_goomnut_tree 0x93 #define ACTOR_TYPE_goombario_tutor1 0x94 -#define ACTOR_TYPE_magikoopa 0x95 -#define ACTOR_TYPE_flying_magikoopa 0x96 -#define ACTOR_TYPE_magikoopa 0x97 -#define ACTOR_TYPE_magikoopa 0x98 +#define ACTOR_TYPE_magikoopa_boss 0x95 +#define ACTOR_TYPE_flying_magikoopa_boss 0x96 +#define ACTOR_TYPE_magikoopa_dup1 0x97 +#define ACTOR_TYPE_magikoopa_dup2 0x98 #define ACTOR_TYPE_fake_bowser 0x99 #define ACTOR_TYPE_koopa_bros 0x9A -#define ACTOR_TYPE_g_ninjakoopa 0x9B -#define ACTOR_TYPE_r_ninjakoopa 0x9C -#define ACTOR_TYPE_b_ninjakoopa 0x9D -#define ACTOR_TYPE_y_ninjakoopa 0x9E +#define ACTOR_TYPE_green_ninjakoopa 0x9B +#define ACTOR_TYPE_red_ninjakoopa 0x9C +#define ACTOR_TYPE_blue_ninjakoopa 0x9D +#define ACTOR_TYPE_yellow_ninjakoopa 0x9E #define ACTOR_TYPE_goombario_tutor2 0x9F #define ACTOR_TYPE_buzzar 0xA0 #define ACTOR_TYPE_tutankoopa 0xA1 #define ACTOR_TYPE_chomp 0xA2 #define ACTOR_TYPE_tubba_blubba_invincible 0xA3 #define ACTOR_TYPE_tubba_blubba 0xA4 -#define ACTOR_TYPE_tubbas_heart 0xA5 +#define ACTOR_TYPE_tubba_heart 0xA5 #define ACTOR_TYPE_stilt_guy 0xA6 #define ACTOR_TYPE_shy_stack 0xA7 #define ACTOR_TYPE_shy_squad 0xA8 @@ -156,12 +156,12 @@ #define ACTOR_TYPE_toy_tank 0xAA #define ACTOR_TYPE_light_bulb 0xAB #define ACTOR_TYPE_signal_guy 0xAC -#define ACTOR_TYPE_shy_squad 0xAD -#define ACTOR_TYPE_shy_guy 0xAE +#define ACTOR_TYPE_shy_squad_dup 0xAD +#define ACTOR_TYPE_shy_guy_dup 0xAE #define ACTOR_TYPE_anti_guy 0xAF #define ACTOR_TYPE_anti_guy_dup 0xB0 #define ACTOR_TYPE_big_lantern_ghost 0xB1 -#define ACTOR_TYPE_goomba_king 0xB2 +#define ACTOR_TYPE_goomba_king_dup 0xB2 #define ACTOR_TYPE_lava_piranha_phase_1 0xB3 #define ACTOR_TYPE_lava_piranha_phase_2 0xB4 #define ACTOR_TYPE_lava_bud_phase_1 0xB5 @@ -188,7 +188,7 @@ #define ACTOR_TYPE_super_blooper1 0xCA #define ACTOR_TYPE_super_blooper2 0xCB #define ACTOR_TYPE_blooper_baby 0xCC -#define ACTOR_TYPE_lakilester 0xCD +#define ACTOR_TYPE_lakilester_dup 0xCD #define ACTOR_TYPE_slot_machine_start 0xCE #define ACTOR_TYPE_slot_machine_stop 0xCF #define ACTOR_TYPE_whacka 0xD0 diff --git a/src/code_190B20.c b/src/code_190B20.c index f60406af8c..7bc71ffadd 100644 --- a/src/code_190B20.c +++ b/src/code_190B20.c @@ -6,8 +6,219 @@ s32 D_80280FC0[] = { 0x000A005A, 0x00000032, 0x0003000B, 0x00000032, 0x0001002D, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000032, 0x00010031, 0x00000032, 0x00010031, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000032, 0x00010032, 0x00000032, 0x00010032, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000032, 0x0003000A, 0x00000032, 0x0003000A, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000050, 0x0003000A, 0x00000014, 0x0003000B, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, }; -MessageID bActorNames[] = { - 0x00290081, 0x00290082, 0x0029006B, 0x0029006C, 0x0029006D, 0x0029006E, 0x0029006F, 0x00290000, 0x00290002, 0x00290001, 0x00290009, 0x00290007, 0x00290008, 0x0029000A, 0x0029000A, 0x0029000B, 0x0029000C, 0x00290015, 0x00290014, 0x00290017, 0x00290016, 0x00290018, 0x0029001A, 0x00290019, 0x0029001E, 0x0029001F, 0x00290020, 0x00290021, 0x00290022, 0x00290023, 0x00290024, 0x00290027, 0x00290028, 0x0029002B, 0x0029002C, 0x0029002A, 0x00290029, 0x0029007C, 0x00290033, 0x00290034, 0x00290080, 0x00290035, 0x00290036, 0x00290038, 0x00290039, 0x00290037, 0x0029003D, 0x0029003E, 0x00290042, 0x0029003F, 0x00290040, 0x00290041, 0x00290044, 0x00290043, 0x00290047, 0x00290048, 0x0029004B, 0x0029004A, 0x00290056, 0x0029004C, 0x0029004F, 0x0029004E, 0x00290053, 0x00290052, 0x00290054, 0x0029004D, 0x00290050, 0x00290051, 0x00290055, 0x00290059, 0x0029005B, 0x0029005A, 0x0029005A, 0x00290060, 0x0029005F, 0x0029005E, 0x0029005D, 0x0029005C, 0x0029005C, 0x0029005C, 0x0029005C, 0x00290070, 0x00290070, 0x00290071, 0x00290071, 0x00290072, 0x00290072, 0x00290073, 0x00290073, 0x00290074, 0x00290074, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x001D0011, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290068, 0x00290069, 0x0029006A, 0x001D0007, 0x001D0008, 0x001D0009, 0x001D000A, 0x001D000F, 0x001D000C, 0x001D000D, 0x001D000E, 0x00290062, 0x00290013, 0x00290013, 0x00290013, 0x00290013, 0x00290013, 0x00290013, 0x00290013, 0x00290013, 0x00290004, 0x00290003, 0x00290005, 0x00290006, 0x001D0007, 0x0029005C, 0x0029005C, 0x0029005C, 0x0029005C, 0x0029000D, 0x00290012, 0x00290011, 0x0029000E, 0x0029000F, 0x00290010, 0x001D0007, 0x0029001B, 0x0029001C, 0x0029001D, 0x00290025, 0x00290025, 0x00290026, 0x00290032, 0x00290031, 0x00290030, 0x00290079, 0x0029002F, 0x0029007A, 0x00290027, 0x0029007B, 0x00290027, 0x0029002D, 0x0029002D, 0x0029002E, 0x00290005, 0x0029003A, 0x0029003A, 0x0029003B, 0x0029003B, 0x0029003C, 0x0029003A, 0x00290063, 0x00290045, 0x00290046, 0x00290049, 0x00290057, 0x00290057, 0x00290058, 0x00290061, 0x00290061, 0x00290061, 0x00290061, 0x00290061, 0x00290061, 0x00290061, 0x00290064, 0x00290065, 0x00290065, 0x00290066, 0x00290066, 0x00290067, 0x00290051, 0x00290076, 0x00290077, 0x00290078, 0x00290076, 0x00290076, 0x00290076, +MessageID bActorNames[ACTOR_TYPE_COUNT] = { + /* 0x00 */ MSG_actor_red_goomba, + /* 0x01 */ MSG_actor_red_paragoomba, + /* 0x02 */ MSG_actor_gloomba, + /* 0x03 */ MSG_actor_paragloomba, + /* 0x04 */ MSG_actor_spiked_gloomba, + /* 0x05 */ MSG_actor_dark_koopa, + /* 0x06 */ MSG_actor_dark_paratroopa, + /* 0x07 */ MSG_actor_goomba, + /* 0x08 */ MSG_actor_paragoomba, + /* 0x09 */ MSG_actor_spiked_goomba, + /* 0x0A */ MSG_actor_fuzzy, + /* 0x0B */ MSG_actor_koopa_troopa, + /* 0x0C */ MSG_actor_paratroopa, + /* 0x0D */ MSG_actor_bob_omb, + /* 0x0E */ MSG_actor_bob_omb, + /* 0x0F */ MSG_actor_bullet_bill, + /* 0x10 */ MSG_actor_bill_blaster, + /* 0x11 */ MSG_actor_cleft, + /* 0x12 */ MSG_actor_monty_mole, + /* 0x13 */ MSG_actor_bandit, + /* 0x14 */ MSG_actor_pokey, + /* 0x15 */ MSG_actor_pokey_mummy, + /* 0x16 */ MSG_actor_swooper, + /* 0x17 */ MSG_actor_buzzy_beetle, + /* 0x18 */ MSG_actor_stone_chomp, + /* 0x19 */ MSG_actor_piranha_plant, + /* 0x1A */ MSG_actor_forest_fuzzy, + /* 0x1B */ MSG_actor_hyper_goomba, + /* 0x1C */ MSG_actor_hyper_paragoomba, + /* 0x1D */ MSG_actor_hyper_cleft, + /* 0x1E */ MSG_actor_clubba, + /* 0x1F */ MSG_actor_shy_guy, + /* 0x20 */ MSG_actor_groove_guy, + /* 0x21 */ MSG_actor_sky_guy, + /* 0x22 */ MSG_actor_medi_guy, + /* 0x23 */ MSG_actor_pyro_guy, + /* 0x24 */ MSG_actor_spy_guy, + /* 0x25 */ MSG_actor_fuzzipede, + /* 0x26 */ MSG_actor_hurt_plant, + /* 0x27 */ MSG_actor_m_bush, + /* 0x28 */ MSG_actor_aqua_fuzzy, + /* 0x29 */ MSG_actor_jungle_fuzzy, + /* 0x2A */ MSG_actor_spear_guy, + /* 0x2B */ MSG_actor_lava_bubble, + /* 0x2C */ MSG_actor_spike_top, + /* 0x2D */ MSG_actor_putrid_piranha, + /* 0x2E */ MSG_actor_lakitu, + /* 0x2F */ MSG_actor_spiny, + /* 0x30 */ MSG_actor_monty_mole_boss, + /* 0x31 */ MSG_actor_bzzap, + /* 0x32 */ MSG_actor_crazee_dayzee, + /* 0x33 */ MSG_actor_amazy_dayzee, + /* 0x34 */ MSG_actor_ruff_puff, + /* 0x35 */ MSG_actor_spike, + /* 0x36 */ MSG_actor_gulpit, + /* 0x37 */ MSG_actor_gulpit_rocks, + /* 0x38 */ MSG_actor_white_clubba, + /* 0x39 */ MSG_actor_frost_piranha, + /* 0x3A */ MSG_actor_swoopula, + /* 0x3B */ MSG_actor_duplighost, + /* 0x3C */ MSG_actor_ghost_goombario, + /* 0x3D */ MSG_actor_ghost_kooper, + /* 0x3E */ MSG_actor_ghost_bombette, + /* 0x3F */ MSG_actor_ghost_parakarry, + /* 0x40 */ MSG_actor_ghost_bow, + /* 0x41 */ MSG_actor_ghost_watt, + /* 0x42 */ MSG_actor_ghost_sushie, + /* 0x43 */ MSG_actor_ghost_lakilester, + /* 0x44 */ MSG_actor_albino_dino, + /* 0x45 */ MSG_actor_ember, + /* 0x46 */ MSG_actor_bony_beetle, + /* 0x47 */ MSG_actor_dry_bones, + /* 0x48 */ MSG_actor_dry_bones, + /* 0x49 */ MSG_actor_bombshell_blaster, + /* 0x4A */ MSG_actor_bombshell_bill, + /* 0x4B */ MSG_actor_hammer_bros, + /* 0x4C */ MSG_actor_koopatrol, + /* 0x4D */ MSG_actor_magikoopa, + /* 0x4E */ MSG_actor_magikoopa, + /* 0x4F */ MSG_actor_magikoopa, + /* 0x50 */ MSG_actor_magikoopa, + /* 0x51 */ MSG_actor_red_magikoopa, + /* 0x52 */ MSG_actor_red_magikoopa, + /* 0x53 */ MSG_actor_green_magikoopa, + /* 0x54 */ MSG_actor_green_magikoopa, + /* 0x55 */ MSG_actor_yellow_magikoopa, + /* 0x56 */ MSG_actor_yellow_magikoopa, + /* 0x57 */ MSG_actor_gray_magikoopa, + /* 0x58 */ MSG_actor_gray_magikoopa, + /* 0x59 */ MSG_actor_white_magikoopa, + /* 0x5A */ MSG_actor_white_magikoopa, + /* 0x5B */ MSG_actor_the_master, + /* 0x5C */ MSG_actor_the_master, + /* 0x5D */ MSG_actor_the_master, + /* 0x5E */ MSG_actor_the_master, + /* 0x5F */ MSG_actor_the_master, + /* 0x60 */ MSG_actor_the_master, + /* 0x61 */ MSG_actor_the_master, + /* 0x62 */ MSG_actor_the_master, + /* 0x63 */ MSG_actor_the_master, + /* 0x64 */ MSG_actor_the_master, + /* 0x65 */ MSG_actor_the_master, + /* 0x66 */ MSG_actor_the_master, + /* 0x67 */ MSG_actor_the_master, + /* 0x68 */ MSG_actor_the_master, + /* 0x69 */ MSG_actor_the_master, + /* 0x6A */ MSG_actor_the_master, + /* 0x6B */ MSG_actor_the_master, + /* 0x6C */ MSG_actor_the_master, + /* 0x6D */ MSG_actor_the_master, + /* 0x6E */ MSG_actor_the_master, + /* 0x6F */ MSG_actor_the_master, + /* 0x70 */ MSG_actor_the_master, + /* 0x71 */ MSG_actor_the_master, + /* 0x72 */ MSG_actor_the_master, + /* 0x73 */ MSG_actor_the_master, + /* 0x74 */ MSG_actor_the_master, + /* 0x75 */ MSG_actor_the_master, + /* 0x76 */ MSG_actor_the_master, + /* 0x77 */ MSG_party_twink, + /* 0x78 */ MSG_actor_the_master, + /* 0x79 */ MSG_actor_the_master, + /* 0x7A */ MSG_actor_the_master, + /* 0x7B */ MSG_actor_the_master, + /* 0x7C */ MSG_actor_the_master, + /* 0x7D */ MSG_actor_chan, + /* 0x7E */ MSG_actor_lee, + /* 0x7F */ MSG_party_goombario, + /* 0x80 */ MSG_party_kooper, + /* 0x81 */ MSG_party_bombette, + /* 0x82 */ MSG_party_parakarry, + /* 0x83 */ MSG_party_bow, + /* 0x84 */ MSG_party_watt, + /* 0x85 */ MSG_party_sushie, + /* 0x86 */ MSG_party_lakilester, + /* 0x87 */ MSG_actor_kammy_koopa, + /* 0x88 */ MSG_actor_jr_troopa, + /* 0x89 */ MSG_actor_jr_troopa, + /* 0x8A */ MSG_actor_jr_troopa, + /* 0x8B */ MSG_actor_jr_troopa, + /* 0x8C */ MSG_actor_jr_troopa, + /* 0x8D */ MSG_actor_jr_troopa, + /* 0x8E */ MSG_actor_jr_troopa, + /* 0x8F */ MSG_actor_jr_troopa, + /* 0x90 */ MSG_actor_blue_goomba_boss, + /* 0x91 */ MSG_actor_red_goomba_boss, + /* 0x92 */ MSG_actor_goomba_king, + /* 0x93 */ MSG_actor_goomnut_tree, + /* 0x94 */ MSG_party_goombario, + /* 0x95 */ MSG_actor_magikoopa, + /* 0x96 */ MSG_actor_magikoopa, + /* 0x97 */ MSG_actor_magikoopa, + /* 0x98 */ MSG_actor_magikoopa, + /* 0x99 */ MSG_actor_fake_bowser, + /* 0x9A */ MSG_actor_koopa_bros, + /* 0x9B */ MSG_actor_green_ninjakoopa, + /* 0x9C */ MSG_actor_red_ninjakoopa, + /* 0x9D */ MSG_actor_blue_ninjakoopa, + /* 0x9E */ MSG_actor_yellow_ninjakoopa, + /* 0x9F */ MSG_party_goombario, + /* 0xA0 */ MSG_actor_buzzar, + /* 0xA1 */ MSG_actor_tutankoopa, + /* 0xA2 */ MSG_actor_chomp, + /* 0xA3 */ MSG_actor_tubba_blubba, + /* 0xA4 */ MSG_actor_tubba_blubba, + /* 0xA5 */ MSG_actor_tubba_heart, + /* 0xA6 */ MSG_actor_stilt_guy, + /* 0xA7 */ MSG_actor_shy_stack, + /* 0xA8 */ MSG_actor_shy_squad, + /* 0xA9 */ MSG_actor_general_guy_dup, + /* 0xAA */ MSG_actor_general_guy, + /* 0xAB */ MSG_actor_bulb, + /* 0xAC */ MSG_actor_shy_guy, + /* 0xAD */ MSG_actor_shy_squad_dup, + /* 0xAE */ MSG_actor_shy_guy, + /* 0xAF */ MSG_actor_anti_guy, + /* 0xB0 */ MSG_actor_anti_guy, + /* 0xB1 */ MSG_actor_big_lantern_ghost, + /* 0xB2 */ MSG_actor_goomba_king, + /* 0xB3 */ MSG_actor_lava_piranha, + /* 0xB4 */ MSG_actor_lava_piranha, + /* 0xB5 */ MSG_actor_lava_bud, + /* 0xB6 */ MSG_actor_lava_bud, + /* 0xB7 */ MSG_actor_petit_piranha, + /* 0xB8 */ MSG_actor_lava_piranha, + /* 0xB9 */ MSG_actor_kent_c_koopa, + /* 0xBA */ MSG_actor_huff_n_puff, + /* 0xBB */ MSG_actor_tuff_puff, + /* 0xBC */ MSG_actor_monstar, + /* 0xBD */ MSG_actor_crystal_king, + /* 0xBE */ MSG_actor_crystal_king, + /* 0xBF */ MSG_actor_crystal_bit, + /* 0xC0 */ MSG_actor_bowser, + /* 0xC1 */ MSG_actor_bowser, + /* 0xC2 */ MSG_actor_bowser, + /* 0xC3 */ MSG_actor_bowser, + /* 0xC4 */ MSG_actor_bowser, + /* 0xC5 */ MSG_actor_bowser, + /* 0xC6 */ MSG_actor_bowser, + /* 0xC7 */ MSG_actor_blooper, + /* 0xC8 */ MSG_actor_electro_blooper, + /* 0xC9 */ MSG_actor_electro_blooper, + /* 0xCA */ MSG_actor_super_blooper, + /* 0xCB */ MSG_actor_super_blooper, + /* 0xCC */ MSG_actor_blooper_baby, + /* 0xCD */ MSG_actor_ghost_lakilester, + /* 0xCE */ MSG_actor_slot_machine_start, + /* 0xCF */ MSG_actor_slot_machine_stop, + /* 0xD0 */ MSG_actor_whacka, + /* 0xD1 */ MSG_actor_slot_machine_start, + /* 0xD2 */ MSG_actor_slot_machine_start, + /* 0xD3 */ MSG_actor_slot_machine_start, }; s32 D_80281454[] = { 0x78, 0x93, 0x99, 0xB2, -1 }; @@ -227,7 +438,7 @@ ActorSounds bActorSoundTable[ACTOR_TYPE_COUNT] = { /* 0xD3 */ { .walk = { 0x0000, 0x0000 }, .fly = { 0x0000, 0x0000 }, .jump = 0x0000, .hurt = 0x0000, .delay = { 30, 30 } }, }; -MessageID bActorTattles[] = { +MessageID bActorTattles[ACTOR_TYPE_COUNT] = { 0x00000000, 0x00000000, 0x001C0079, 0x001C007A, 0x001C007B, 0x001C007C, 0x001C007D, 0x001C0000, 0x001C0002, 0x001C0001, 0x001C0009, 0x001C0007, 0x001C0008, 0x001C000A, 0x001C000A, 0x001C000B, 0x001C000C, 0x001C0015, 0x001C0014, 0x001C0017, 0x001C0016, 0x001C0018, 0x001C001A, 0x001C0019, diff --git a/tools/msg/combine.py b/tools/msg/combine.py index 57b1123e02..186547b9da 100755 --- a/tools/msg/combine.py +++ b/tools/msg/combine.py @@ -41,14 +41,6 @@ if __name__ == "__main__": sections = [] #messages_by_file = {} - # this logic could probably be a bit better (i.e. read ahead, so no overwriting happens) - def section_get_unused_id(section): - max_index = 0 - for index in section: - if index > max_index: - max_index = index - return max_index + 1 - for message in messages: if message.section is None: # allocate a section @@ -63,7 +55,7 @@ if __name__ == "__main__": section = sections[section_idx] if message.index is None: - message.index = section_get_unused_id(section) + message.index = len(section) # if message.name: # if message.name in names: @@ -80,6 +72,9 @@ if __name__ == "__main__": if message.index in section: print(f"warning: multiple messages allocated to id {section_idx:02X}:{message.index:03X}") + if section[message.index].name and message.name: + print(f"warning: message '{section[message.index].name}' and '{message.name}' conflict") + section[message.index] = message f.seek((len(sections) + 1) * 4) # skip past table of contents diff --git a/tools/splat.yaml b/tools/splat.yaml index 569e21e019..66c38569a0 100644 --- a/tools/splat.yaml +++ b/tools/splat.yaml @@ -9564,6 +9564,138 @@ segments: - [0x1D, 0x167, kmr_12_sign_trap] - [0x1D, 0x168, kmr_12_sign_to_fortress] + + - [0x29, 0x000, actor_goomba] + - [0x29, 0x001, actor_spiked_goomba] + - [0x29, 0x002, actor_paragoomba] + - [0x29, 0x003, actor_red_goomba_boss] + - [0x29, 0x004, actor_blue_goomba_boss] + - [0x29, 0x005, actor_goomba_king] + - [0x29, 0x006, actor_goomnut_tree] + - [0x29, 0x007, actor_koopa_troopa] + - [0x29, 0x008, actor_paratroopa] + - [0x29, 0x009, actor_fuzzy] + - [0x29, 0x00A, actor_bob_omb] + - [0x29, 0x00B, actor_bullet_bill] + - [0x29, 0x00C, actor_bill_blaster] + - [0x29, 0x00D, actor_fake_bowser] + - [0x29, 0x00E, actor_red_ninjakoopa] + - [0x29, 0x00F, actor_blue_ninjakoopa] + - [0x29, 0x010, actor_yellow_ninjakoopa] + - [0x29, 0x011, actor_green_ninjakoopa] + - [0x29, 0x012, actor_koopa_bros] + - [0x29, 0x013, actor_jr_troopa] + - [0x29, 0x014, actor_monty_mole] + - [0x29, 0x015, actor_cleft] + - [0x29, 0x016, actor_pokey] + - [0x29, 0x017, actor_bandit] + - [0x29, 0x018, actor_pokey_mummy] + - [0x29, 0x019, actor_buzzy_beetle] + - [0x29, 0x01A, actor_swooper] + - [0x29, 0x01B, actor_buzzar] + - [0x29, 0x01C, actor_tutankoopa] + - [0x29, 0x01D, actor_chomp] + - [0x29, 0x01E, actor_stone_chomp] + - [0x29, 0x01F, actor_piranha_plant] + - [0x29, 0x020, actor_forest_fuzzy] + - [0x29, 0x021, actor_hyper_goomba] + - [0x29, 0x022, actor_hyper_paragoomba] + - [0x29, 0x023, actor_hyper_cleft] + - [0x29, 0x024, actor_clubba] + - [0x29, 0x025, actor_tubba_blubba] + - [0x29, 0x026, actor_tubba_heart] + - [0x29, 0x027, actor_shy_guy] + - [0x29, 0x028, actor_groove_guy] + - [0x29, 0x029, actor_spy_guy] + - [0x29, 0x02A, actor_pyro_guy] + - [0x29, 0x02B, actor_sky_guy] + - [0x29, 0x02C, actor_medi_guy] + - [0x29, 0x02D, actor_anti_guy] + - [0x29, 0x02E, actor_big_lantern_ghost] + - [0x29, 0x02F, actor_general_guy] + - [0x29, 0x030, actor_shy_squad] + - [0x29, 0x031, actor_shy_stack] + - [0x29, 0x032, actor_stilt_guy] + - [0x29, 0x033, actor_hurt_plant] + - [0x29, 0x034, actor_m_bush] + - [0x29, 0x035, actor_jungle_fuzzy] + - [0x29, 0x036, actor_spear_guy] + - [0x29, 0x037, actor_putrid_piranha] + - [0x29, 0x038, actor_lava_bubble] + - [0x29, 0x039, actor_spike_top] + - [0x29, 0x03A, actor_lava_piranha] + - [0x29, 0x03B, actor_lava_bud] + - [0x29, 0x03C, actor_petit_piranha] + - [0x29, 0x03D, actor_lakitu] + - [0x29, 0x03E, actor_spiny] + - [0x29, 0x03F, actor_bzzap] + - [0x29, 0x040, actor_crazee_dayzee] + - [0x29, 0x041, actor_amazy_dayzee] + - [0x29, 0x042, actor_monty_mole_boss] + - [0x29, 0x043, actor_spike] + - [0x29, 0x044, actor_ruff_puff] + - [0x29, 0x045, actor_huff_n_puff] + - [0x29, 0x046, actor_tuff_puff] + - [0x29, 0x047, actor_gulpit] + - [0x29, 0x048, actor_gulpit_rocks] + - [0x29, 0x049, actor_monstar] + - [0x29, 0x04A, actor_frost_piranha] + - [0x29, 0x04B, actor_white_clubba] + - [0x29, 0x04C, actor_duplighost] + - [0x29, 0x04D, actor_ghost_watt] + - [0x29, 0x04E, actor_ghost_kooper] + - [0x29, 0x04F, actor_ghost_goombario] + - [0x29, 0x050, actor_ghost_sushie] + - [0x29, 0x051, actor_ghost_lakilester] + - [0x29, 0x052, actor_ghost_parakarry] + - [0x29, 0x053, actor_ghost_bombette] + - [0x29, 0x054, actor_ghost_bow] + - [0x29, 0x055, actor_albino_dino] + - [0x29, 0x056, actor_swoopula] + - [0x29, 0x057, actor_crystal_king] + - [0x29, 0x058, actor_crystal_bit] + - [0x29, 0x059, actor_ember] + - [0x29, 0x05A, actor_dry_bones] + - [0x29, 0x05B, actor_bony_beetle] + - [0x29, 0x05C, actor_magikoopa] + - [0x29, 0x05D, actor_koopatrol] + - [0x29, 0x05E, actor_hammer_bros] + - [0x29, 0x05F, actor_bombshell_bill] + - [0x29, 0x060, actor_bombshell_blaster] + - [0x29, 0x061, actor_bowser] + - [0x29, 0x062, actor_kammy_koopa] + - [0x29, 0x063, actor_kent_c_koopa] + - [0x29, 0x064, actor_blooper] + - [0x29, 0x065, actor_electro_blooper] + - [0x29, 0x066, actor_super_blooper] + - [0x29, 0x067, actor_blooper_baby] + - [0x29, 0x068, actor_the_master] + - [0x29, 0x069, actor_chan] + - [0x29, 0x06A, actor_lee] + - [0x29, 0x06B, actor_gloomba] + - [0x29, 0x06C, actor_paragloomba] + - [0x29, 0x06D, actor_spiked_gloomba] + - [0x29, 0x06E, actor_dark_koopa] + - [0x29, 0x06F, actor_dark_paratroopa] + - [0x29, 0x070, actor_red_magikoopa] + - [0x29, 0x071, actor_green_magikoopa] + - [0x29, 0x072, actor_yellow_magikoopa] + - [0x29, 0x073, actor_gray_magikoopa] + - [0x29, 0x074, actor_white_magikoopa] + - [0x29, 0x075, actor_mario] + - [0x29, 0x076, actor_slot_machine_start] + - [0x29, 0x077, actor_slot_machine_stop] + - [0x29, 0x078, actor_whacka] + - [0x29, 0x079, actor_general_guy_dup] + - [0x29, 0x07A, actor_bulb] + - [0x29, 0x07B, actor_shy_squad_dup] + - [0x29, 0x07C, actor_fuzzipede] + - [0x29, 0x07D, actor_monty_hole] + - [0x29, 0x07E, actor_balloon] + - [0x29, 0x07F, actor_lantern] + - [0x29, 0x080, actor_aqua_fuzzy] + - [0x29, 0x081, actor_red_goomba] + - [0x29, 0x082, actor_red_paragoomba] - [0x1C84D30, bin] # junk(?) - [0x1E00000, bin] # junk (player sprite data; can be zeroed out with no effect) - [0x1E40000, PaperMarioMapFS]